@takeshape/schema 11.40.0 → 11.41.0

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 (1418) hide show
  1. package/dist/cjs/package.json +1 -0
  2. package/dist/cjs/src/agents.js +58 -0
  3. package/dist/cjs/src/api-version.js +24 -0
  4. package/dist/cjs/src/auth-schemas.js +8 -0
  5. package/dist/cjs/src/builtin-schema.js +616 -0
  6. package/dist/cjs/src/constants.js +4 -0
  7. package/dist/cjs/src/content-schema-transform.js +175 -0
  8. package/dist/cjs/src/create-input-schema.js +67 -0
  9. package/dist/cjs/src/enum.js +13 -0
  10. package/dist/cjs/src/flatten-templates.js +27 -0
  11. package/dist/cjs/src/get-is-leaf.js +60 -0
  12. package/dist/cjs/src/index.js +60 -0
  13. package/dist/cjs/src/interfaces.js +97 -0
  14. package/dist/cjs/src/layers/layers.js +308 -0
  15. package/dist/cjs/src/layers/refs.js +243 -0
  16. package/dist/cjs/src/layers/type-utils.js +146 -0
  17. package/dist/cjs/src/layers/visitor.js +43 -0
  18. package/dist/cjs/src/migration/index.js +140 -0
  19. package/dist/cjs/src/migration/to/v3.0.0.js +205 -0
  20. package/dist/cjs/src/migration/to/v3.1.0.js +197 -0
  21. package/dist/cjs/src/migration/to/v3.10.0.js +72 -0
  22. package/dist/cjs/src/migration/to/v3.11.0.js +90 -0
  23. package/dist/cjs/src/migration/to/v3.12.0.js +12 -0
  24. package/dist/cjs/src/migration/to/v3.12.1.js +12 -0
  25. package/dist/cjs/src/migration/to/v3.12.2.js +12 -0
  26. package/dist/cjs/src/migration/to/v3.12.3.js +92 -0
  27. package/dist/cjs/src/migration/to/v3.13.0.js +22 -0
  28. package/dist/cjs/src/migration/to/v3.14.0.js +12 -0
  29. package/dist/cjs/src/migration/to/v3.15.0.js +12 -0
  30. package/dist/cjs/src/migration/to/v3.16.0.js +12 -0
  31. package/dist/cjs/src/migration/to/v3.17.0.js +27 -0
  32. package/dist/cjs/src/migration/to/v3.17.1.js +12 -0
  33. package/dist/cjs/src/migration/to/v3.18.0.js +69 -0
  34. package/dist/cjs/src/migration/to/v3.18.1.js +20 -0
  35. package/dist/cjs/src/migration/to/v3.18.2.js +24 -0
  36. package/dist/cjs/src/migration/to/v3.19.0.js +12 -0
  37. package/dist/cjs/src/migration/to/v3.2.0.js +12 -0
  38. package/dist/cjs/src/migration/to/v3.20.0.js +26 -0
  39. package/dist/cjs/src/migration/to/v3.21.0.js +12 -0
  40. package/dist/cjs/src/migration/to/v3.22.0.js +30 -0
  41. package/dist/cjs/src/migration/to/v3.23.0.js +12 -0
  42. package/dist/cjs/src/migration/to/v3.24.0.js +13 -0
  43. package/dist/cjs/src/migration/to/v3.25.0.js +13 -0
  44. package/dist/cjs/src/migration/to/v3.26.0.js +12 -0
  45. package/dist/cjs/src/migration/to/v3.27.0.js +12 -0
  46. package/dist/cjs/src/migration/to/v3.28.0.js +12 -0
  47. package/dist/cjs/src/migration/to/v3.29.0.js +12 -0
  48. package/dist/cjs/src/migration/to/v3.3.0.js +15 -0
  49. package/dist/cjs/src/migration/to/v3.30.0.js +12 -0
  50. package/dist/cjs/src/migration/to/v3.31.0.js +43 -0
  51. package/dist/cjs/src/migration/to/v3.32.0.js +59 -0
  52. package/dist/cjs/src/migration/to/v3.33.0.js +12 -0
  53. package/dist/cjs/src/migration/to/v3.34.0.js +127 -0
  54. package/dist/cjs/src/migration/to/v3.35.0.js +12 -0
  55. package/dist/cjs/src/migration/to/v3.36.0.js +27 -0
  56. package/dist/cjs/src/migration/to/v3.37.0.js +12 -0
  57. package/dist/cjs/src/migration/to/v3.38.0.js +12 -0
  58. package/dist/cjs/src/migration/to/v3.39.0.js +47 -0
  59. package/dist/cjs/src/migration/to/v3.4.0.js +12 -0
  60. package/dist/cjs/src/migration/to/v3.40.0.js +31 -0
  61. package/dist/cjs/src/migration/to/v3.41.0.js +12 -0
  62. package/dist/cjs/src/migration/to/v3.42.0.js +12 -0
  63. package/dist/cjs/src/migration/to/v3.43.0.js +12 -0
  64. package/dist/cjs/src/migration/to/v3.44.0.js +12 -0
  65. package/dist/cjs/src/migration/to/v3.45.0.js +12 -0
  66. package/dist/cjs/src/migration/to/v3.46.0.js +37 -0
  67. package/dist/cjs/src/migration/to/v3.47.0.js +12 -0
  68. package/dist/cjs/src/migration/to/v3.48.0.js +12 -0
  69. package/dist/cjs/src/migration/to/v3.49.0.js +12 -0
  70. package/dist/cjs/src/migration/to/v3.5.0.js +12 -0
  71. package/dist/cjs/src/migration/to/v3.5.1.js +12 -0
  72. package/dist/cjs/src/migration/to/v3.50.0.js +12 -0
  73. package/dist/cjs/src/migration/to/v3.6.0.js +12 -0
  74. package/dist/cjs/src/migration/to/v3.7.0.js +12 -0
  75. package/dist/cjs/src/migration/to/v3.8.0.js +12 -0
  76. package/dist/cjs/src/migration/to/v3.9.0.js +84 -0
  77. package/dist/cjs/src/migration/types.js +2 -0
  78. package/dist/cjs/src/migration/utils.js +11 -0
  79. package/dist/cjs/src/mocks.js +66 -0
  80. package/dist/cjs/src/models/project-schema.js +99 -0
  81. package/dist/cjs/src/models/query.js +35 -0
  82. package/dist/cjs/src/models/service.js +24 -0
  83. package/dist/cjs/src/models/shape.js +89 -0
  84. package/dist/cjs/src/patterns.js +2 -0
  85. package/dist/cjs/src/project-schema/index.js +154 -0
  86. package/dist/cjs/src/project-schema/latest.js +8 -0
  87. package/dist/cjs/src/project-schema/migrate.js +197 -0
  88. package/dist/cjs/src/project-schema/v1.0.0.js +8 -0
  89. package/dist/cjs/src/project-schema/v3.0.0.js +8 -0
  90. package/dist/cjs/src/project-schema/v3.1.0.js +8 -0
  91. package/dist/cjs/src/project-schema/v3.10.0.js +8 -0
  92. package/dist/cjs/src/project-schema/v3.11.0.js +8 -0
  93. package/dist/cjs/src/project-schema/v3.12.0.js +8 -0
  94. package/dist/cjs/src/project-schema/v3.12.1.js +8 -0
  95. package/dist/cjs/src/project-schema/v3.12.2.js +8 -0
  96. package/dist/cjs/src/project-schema/v3.12.3.js +8 -0
  97. package/dist/cjs/src/project-schema/v3.13.0.js +8 -0
  98. package/dist/cjs/src/project-schema/v3.13.1.js +8 -0
  99. package/dist/cjs/src/project-schema/v3.14.0.js +8 -0
  100. package/dist/cjs/src/project-schema/v3.15.0.js +8 -0
  101. package/dist/cjs/src/project-schema/v3.16.0.js +8 -0
  102. package/dist/cjs/src/project-schema/v3.17.0.js +8 -0
  103. package/dist/cjs/src/project-schema/v3.17.1.js +8 -0
  104. package/dist/cjs/src/project-schema/v3.18.0.js +8 -0
  105. package/dist/cjs/src/project-schema/v3.18.1.js +8 -0
  106. package/dist/cjs/src/project-schema/v3.18.2.js +8 -0
  107. package/dist/cjs/src/project-schema/v3.19.0.js +8 -0
  108. package/dist/cjs/src/project-schema/v3.2.0.js +8 -0
  109. package/dist/cjs/src/project-schema/v3.20.0.js +8 -0
  110. package/dist/cjs/src/project-schema/v3.21.0.js +8 -0
  111. package/dist/cjs/src/project-schema/v3.22.0.js +8 -0
  112. package/dist/cjs/src/project-schema/v3.23.0.js +8 -0
  113. package/dist/cjs/src/project-schema/v3.24.0.js +8 -0
  114. package/dist/cjs/src/project-schema/v3.25.0.js +8 -0
  115. package/dist/cjs/src/project-schema/v3.26.0.js +8 -0
  116. package/dist/cjs/src/project-schema/v3.27.0.js +8 -0
  117. package/dist/cjs/src/project-schema/v3.28.0.js +8 -0
  118. package/dist/cjs/src/project-schema/v3.29.0.js +8 -0
  119. package/dist/cjs/src/project-schema/v3.3.0.js +8 -0
  120. package/dist/cjs/src/project-schema/v3.30.0.js +8 -0
  121. package/dist/cjs/src/project-schema/v3.31.0.js +8 -0
  122. package/dist/cjs/src/project-schema/v3.32.0.js +8 -0
  123. package/dist/cjs/src/project-schema/v3.33.0.js +8 -0
  124. package/dist/cjs/src/project-schema/v3.34.0.js +8 -0
  125. package/dist/cjs/src/project-schema/v3.35.0.js +8 -0
  126. package/dist/cjs/src/project-schema/v3.36.0.js +8 -0
  127. package/dist/cjs/src/project-schema/v3.37.0.js +8 -0
  128. package/dist/cjs/src/project-schema/v3.38.0.js +8 -0
  129. package/dist/cjs/src/project-schema/v3.39.0.js +8 -0
  130. package/dist/cjs/src/project-schema/v3.4.0.js +8 -0
  131. package/dist/cjs/src/project-schema/v3.40.0.js +8 -0
  132. package/dist/cjs/src/project-schema/v3.41.0.js +8 -0
  133. package/dist/cjs/src/project-schema/v3.42.0.js +8 -0
  134. package/dist/cjs/src/project-schema/v3.43.0.js +8 -0
  135. package/dist/cjs/src/project-schema/v3.44.0.js +8 -0
  136. package/dist/cjs/src/project-schema/v3.45.0.js +8 -0
  137. package/dist/cjs/src/project-schema/v3.46.0.js +8 -0
  138. package/dist/cjs/src/project-schema/v3.47.0.js +8 -0
  139. package/dist/cjs/src/project-schema/v3.48.0.js +8 -0
  140. package/dist/cjs/src/project-schema/v3.49.0.js +8 -0
  141. package/dist/cjs/src/project-schema/v3.5.0.js +8 -0
  142. package/dist/cjs/src/project-schema/v3.5.1.js +8 -0
  143. package/dist/cjs/src/project-schema/v3.50.0.js +8 -0
  144. package/dist/cjs/src/project-schema/v3.6.0.js +8 -0
  145. package/dist/cjs/src/project-schema/v3.7.0.js +8 -0
  146. package/dist/cjs/src/project-schema/v3.8.0.js +8 -0
  147. package/dist/cjs/src/project-schema/v3.9.0.js +8 -0
  148. package/dist/cjs/src/project-schema/v4.0.0.js +8 -0
  149. package/dist/cjs/src/refs.js +662 -0
  150. package/dist/cjs/src/relationships.js +237 -0
  151. package/dist/cjs/src/scalars.js +8 -0
  152. package/dist/cjs/src/schema-transform.js +83 -0
  153. package/dist/cjs/src/schema-util.js +1133 -0
  154. package/dist/cjs/src/schemas/index.js +164 -0
  155. package/dist/cjs/src/services/services.js +156 -0
  156. package/dist/cjs/src/services/types.js +2 -0
  157. package/dist/cjs/src/services/util.js +46 -0
  158. package/dist/cjs/src/taxonomies.js +28 -0
  159. package/dist/cjs/src/template-shapes/index.js +38 -0
  160. package/dist/cjs/src/template-shapes/names.js +27 -0
  161. package/dist/cjs/src/template-shapes/templates.js +325 -0
  162. package/dist/cjs/src/template-shapes/types.js +10 -0
  163. package/dist/cjs/src/template-shapes/where.js +403 -0
  164. package/dist/cjs/src/types/index.js +19 -0
  165. package/dist/cjs/src/types/transforms.js +2 -0
  166. package/dist/cjs/src/types/types.js +21 -0
  167. package/dist/cjs/src/types/utils.js +345 -0
  168. package/dist/cjs/src/unions.js +90 -0
  169. package/dist/cjs/src/user-schema.js +8 -0
  170. package/dist/cjs/src/util/ai-tools.js +11 -0
  171. package/dist/cjs/src/util/api-indexing.js +62 -0
  172. package/dist/cjs/src/util/detect-cycles.js +49 -0
  173. package/dist/cjs/src/util/find-shape-at-path.js +58 -0
  174. package/dist/cjs/src/util/form-config.js +68 -0
  175. package/dist/cjs/src/util/get-conflicting-properties.js +59 -0
  176. package/dist/cjs/src/util/get-return-shape.js +35 -0
  177. package/dist/cjs/src/util/has-arg.js +18 -0
  178. package/dist/cjs/src/util/merge.js +261 -0
  179. package/dist/cjs/src/util/patch-schema.js +50 -0
  180. package/dist/cjs/src/util/shapes.js +32 -0
  181. package/dist/cjs/src/validate.js +1087 -0
  182. package/dist/cjs/src/versions.js +8 -0
  183. package/dist/cjs/src/workflows.js +76 -0
  184. package/dist/esm/package.json +1 -0
  185. package/dist/esm/src/agents.js +49 -0
  186. package/dist/esm/src/api-version.js +17 -0
  187. package/dist/esm/src/auth-schemas.js +7 -0
  188. package/dist/esm/src/builtin-schema.js +610 -0
  189. package/dist/esm/src/constants.js +1 -0
  190. package/dist/esm/src/content-schema-transform.js +162 -0
  191. package/dist/esm/src/create-input-schema.js +60 -0
  192. package/dist/esm/src/enum.js +9 -0
  193. package/dist/esm/src/flatten-templates.js +20 -0
  194. package/dist/esm/src/get-is-leaf.js +56 -0
  195. package/dist/esm/src/index.js +44 -0
  196. package/dist/esm/src/interfaces.js +83 -0
  197. package/dist/esm/src/layers/layers.js +295 -0
  198. package/dist/esm/src/layers/refs.js +220 -0
  199. package/dist/esm/src/layers/type-utils.js +118 -0
  200. package/dist/esm/src/layers/visitor.js +38 -0
  201. package/dist/esm/src/migration/index.js +120 -0
  202. package/dist/esm/src/migration/to/v3.0.0.js +200 -0
  203. package/dist/esm/src/migration/to/v3.1.0.js +192 -0
  204. package/dist/esm/src/migration/to/v3.10.0.js +67 -0
  205. package/dist/esm/src/migration/to/v3.11.0.js +85 -0
  206. package/dist/esm/src/migration/to/v3.12.0.js +10 -0
  207. package/dist/esm/src/migration/to/v3.12.1.js +10 -0
  208. package/dist/esm/src/migration/to/v3.12.2.js +10 -0
  209. package/dist/esm/src/migration/to/v3.12.3.js +87 -0
  210. package/dist/esm/src/migration/to/v3.13.0.js +17 -0
  211. package/dist/esm/src/migration/to/v3.14.0.js +10 -0
  212. package/dist/esm/src/migration/to/v3.15.0.js +10 -0
  213. package/dist/esm/src/migration/to/v3.16.0.js +10 -0
  214. package/dist/esm/src/migration/to/v3.17.0.js +22 -0
  215. package/dist/esm/src/migration/to/v3.17.1.js +10 -0
  216. package/dist/esm/src/migration/to/v3.18.0.js +64 -0
  217. package/dist/esm/src/migration/to/v3.18.1.js +15 -0
  218. package/dist/esm/src/migration/to/v3.18.2.js +19 -0
  219. package/dist/esm/src/migration/to/v3.19.0.js +10 -0
  220. package/dist/esm/src/migration/to/v3.2.0.js +10 -0
  221. package/dist/esm/src/migration/to/v3.20.0.js +21 -0
  222. package/dist/esm/src/migration/to/v3.21.0.js +10 -0
  223. package/dist/esm/src/migration/to/v3.22.0.js +25 -0
  224. package/dist/esm/src/migration/to/v3.23.0.js +10 -0
  225. package/dist/esm/src/migration/to/v3.24.0.js +11 -0
  226. package/dist/esm/src/migration/to/v3.25.0.js +11 -0
  227. package/dist/esm/src/migration/to/v3.26.0.js +10 -0
  228. package/dist/esm/src/migration/to/v3.27.0.js +10 -0
  229. package/dist/esm/src/migration/to/v3.28.0.js +10 -0
  230. package/dist/esm/src/migration/to/v3.29.0.js +10 -0
  231. package/dist/esm/src/migration/to/v3.3.0.js +13 -0
  232. package/dist/esm/src/migration/to/v3.30.0.js +10 -0
  233. package/dist/esm/src/migration/to/v3.31.0.js +38 -0
  234. package/dist/esm/src/migration/to/v3.32.0.js +57 -0
  235. package/dist/esm/src/migration/to/v3.33.0.js +10 -0
  236. package/dist/esm/src/migration/to/v3.34.0.js +119 -0
  237. package/dist/esm/src/migration/to/v3.35.0.js +10 -0
  238. package/dist/esm/src/migration/to/v3.36.0.js +22 -0
  239. package/dist/esm/src/migration/to/v3.37.0.js +10 -0
  240. package/dist/esm/src/migration/to/v3.38.0.js +10 -0
  241. package/dist/esm/src/migration/to/v3.39.0.js +45 -0
  242. package/dist/esm/src/migration/to/v3.4.0.js +10 -0
  243. package/dist/esm/src/migration/to/v3.40.0.js +26 -0
  244. package/dist/esm/src/migration/to/v3.41.0.js +10 -0
  245. package/dist/esm/src/migration/to/v3.42.0.js +10 -0
  246. package/dist/esm/src/migration/to/v3.43.0.js +10 -0
  247. package/dist/esm/src/migration/to/v3.44.0.js +10 -0
  248. package/dist/esm/src/migration/to/v3.45.0.js +10 -0
  249. package/dist/esm/src/migration/to/v3.46.0.js +35 -0
  250. package/dist/esm/src/migration/to/v3.47.0.js +10 -0
  251. package/dist/esm/src/migration/to/v3.48.0.js +10 -0
  252. package/dist/esm/src/migration/to/v3.49.0.js +10 -0
  253. package/dist/esm/src/migration/to/v3.5.0.js +10 -0
  254. package/dist/esm/src/migration/to/v3.5.1.js +10 -0
  255. package/dist/esm/src/migration/to/v3.50.0.js +10 -0
  256. package/dist/esm/src/migration/to/v3.6.0.js +10 -0
  257. package/dist/esm/src/migration/to/v3.7.0.js +10 -0
  258. package/dist/esm/src/migration/to/v3.8.0.js +10 -0
  259. package/dist/esm/src/migration/to/v3.9.0.js +79 -0
  260. package/dist/esm/src/migration/types.js +1 -0
  261. package/dist/esm/src/migration/utils.js +6 -0
  262. package/dist/esm/src/mocks.js +58 -0
  263. package/dist/esm/src/models/project-schema.js +92 -0
  264. package/dist/esm/src/models/query.js +31 -0
  265. package/dist/esm/src/models/service.js +20 -0
  266. package/dist/esm/src/models/shape.js +85 -0
  267. package/dist/esm/src/patterns.js +1 -0
  268. package/dist/esm/src/project-schema/index.js +136 -0
  269. package/dist/esm/src/project-schema/latest.js +7 -0
  270. package/dist/esm/src/project-schema/migrate.js +192 -0
  271. package/dist/esm/src/project-schema/v1.0.0.js +7 -0
  272. package/dist/esm/src/project-schema/v3.0.0.js +7 -0
  273. package/dist/esm/src/project-schema/v3.1.0.js +7 -0
  274. package/dist/esm/src/project-schema/v3.10.0.js +7 -0
  275. package/dist/esm/src/project-schema/v3.11.0.js +7 -0
  276. package/dist/esm/src/project-schema/v3.12.0.js +7 -0
  277. package/dist/esm/src/project-schema/v3.12.1.js +7 -0
  278. package/dist/esm/src/project-schema/v3.12.2.js +7 -0
  279. package/dist/esm/src/project-schema/v3.12.3.js +7 -0
  280. package/dist/esm/src/project-schema/v3.13.0.js +7 -0
  281. package/dist/esm/src/project-schema/v3.13.1.js +7 -0
  282. package/dist/esm/src/project-schema/v3.14.0.js +7 -0
  283. package/dist/esm/src/project-schema/v3.15.0.js +7 -0
  284. package/dist/esm/src/project-schema/v3.16.0.js +7 -0
  285. package/dist/esm/src/project-schema/v3.17.0.js +7 -0
  286. package/dist/esm/src/project-schema/v3.17.1.js +7 -0
  287. package/dist/esm/src/project-schema/v3.18.0.js +7 -0
  288. package/dist/esm/src/project-schema/v3.18.1.js +7 -0
  289. package/dist/esm/src/project-schema/v3.18.2.js +7 -0
  290. package/dist/esm/src/project-schema/v3.19.0.js +7 -0
  291. package/dist/esm/src/project-schema/v3.2.0.js +7 -0
  292. package/dist/esm/src/project-schema/v3.20.0.js +7 -0
  293. package/dist/esm/src/project-schema/v3.21.0.js +7 -0
  294. package/dist/esm/src/project-schema/v3.22.0.js +7 -0
  295. package/dist/esm/src/project-schema/v3.23.0.js +7 -0
  296. package/dist/esm/src/project-schema/v3.24.0.js +7 -0
  297. package/dist/esm/src/project-schema/v3.25.0.js +7 -0
  298. package/dist/esm/src/project-schema/v3.26.0.js +7 -0
  299. package/dist/esm/src/project-schema/v3.27.0.js +7 -0
  300. package/dist/esm/src/project-schema/v3.28.0.js +7 -0
  301. package/dist/esm/src/project-schema/v3.29.0.js +7 -0
  302. package/dist/esm/src/project-schema/v3.3.0.js +7 -0
  303. package/dist/esm/src/project-schema/v3.30.0.js +7 -0
  304. package/dist/esm/src/project-schema/v3.31.0.js +7 -0
  305. package/dist/esm/src/project-schema/v3.32.0.js +7 -0
  306. package/dist/esm/src/project-schema/v3.33.0.js +7 -0
  307. package/dist/esm/src/project-schema/v3.34.0.js +7 -0
  308. package/dist/esm/src/project-schema/v3.35.0.js +7 -0
  309. package/dist/esm/src/project-schema/v3.36.0.js +7 -0
  310. package/dist/esm/src/project-schema/v3.37.0.js +7 -0
  311. package/dist/esm/src/project-schema/v3.38.0.js +7 -0
  312. package/dist/esm/src/project-schema/v3.39.0.js +7 -0
  313. package/dist/esm/src/project-schema/v3.4.0.js +7 -0
  314. package/dist/esm/src/project-schema/v3.40.0.js +7 -0
  315. package/dist/esm/src/project-schema/v3.41.0.js +7 -0
  316. package/dist/esm/src/project-schema/v3.42.0.js +7 -0
  317. package/dist/esm/src/project-schema/v3.43.0.js +7 -0
  318. package/dist/esm/src/project-schema/v3.44.0.js +7 -0
  319. package/dist/esm/src/project-schema/v3.45.0.js +7 -0
  320. package/dist/esm/src/project-schema/v3.46.0.js +7 -0
  321. package/dist/esm/src/project-schema/v3.47.0.js +7 -0
  322. package/dist/esm/src/project-schema/v3.48.0.js +7 -0
  323. package/dist/esm/src/project-schema/v3.49.0.js +7 -0
  324. package/dist/esm/src/project-schema/v3.5.0.js +7 -0
  325. package/dist/esm/src/project-schema/v3.5.1.js +7 -0
  326. package/dist/esm/src/project-schema/v3.50.0.js +7 -0
  327. package/dist/esm/src/project-schema/v3.6.0.js +7 -0
  328. package/dist/esm/src/project-schema/v3.7.0.js +7 -0
  329. package/dist/esm/src/project-schema/v3.8.0.js +7 -0
  330. package/dist/esm/src/project-schema/v3.9.0.js +7 -0
  331. package/dist/esm/src/project-schema/v4.0.0.js +7 -0
  332. package/dist/esm/src/refs.js +598 -0
  333. package/dist/esm/src/relationships.js +222 -0
  334. package/dist/esm/src/scalars.js +4 -0
  335. package/dist/esm/src/schema-transform.js +74 -0
  336. package/dist/esm/src/schema-util.js +1069 -0
  337. package/dist/esm/src/schemas/index.js +154 -0
  338. package/dist/esm/src/services/services.js +144 -0
  339. package/dist/esm/src/services/types.js +1 -0
  340. package/dist/esm/src/services/util.js +36 -0
  341. package/dist/esm/src/taxonomies.js +24 -0
  342. package/dist/esm/src/template-shapes/index.js +33 -0
  343. package/dist/esm/src/template-shapes/names.js +21 -0
  344. package/dist/esm/src/template-shapes/templates.js +313 -0
  345. package/dist/esm/src/template-shapes/types.js +7 -0
  346. package/dist/esm/src/template-shapes/where.js +391 -0
  347. package/dist/esm/src/types/index.js +3 -0
  348. package/dist/esm/src/types/transforms.js +1 -0
  349. package/dist/esm/src/types/types.js +18 -0
  350. package/dist/esm/src/types/utils.js +279 -0
  351. package/dist/esm/src/unions.js +79 -0
  352. package/dist/esm/src/user-schema.js +7 -0
  353. package/dist/esm/src/util/ai-tools.js +6 -0
  354. package/dist/esm/src/util/api-indexing.js +57 -0
  355. package/dist/esm/src/util/detect-cycles.js +45 -0
  356. package/dist/esm/src/util/find-shape-at-path.js +53 -0
  357. package/dist/esm/src/util/form-config.js +63 -0
  358. package/dist/esm/src/util/get-conflicting-properties.js +55 -0
  359. package/dist/esm/src/util/get-return-shape.js +30 -0
  360. package/dist/esm/src/util/has-arg.js +13 -0
  361. package/dist/esm/src/util/merge.js +247 -0
  362. package/dist/esm/src/util/patch-schema.js +42 -0
  363. package/dist/esm/src/util/shapes.js +22 -0
  364. package/dist/esm/src/validate.js +1073 -0
  365. package/dist/esm/src/versions.js +4 -0
  366. package/dist/esm/src/workflows.js +66 -0
  367. package/dist/types/src/agents.d.ts +11 -0
  368. package/dist/types/src/api-version.d.ts +5 -0
  369. package/dist/types/src/auth-schemas.d.ts +104 -0
  370. package/dist/types/src/builtin-schema.d.ts +8 -0
  371. package/dist/types/src/constants.d.ts +1 -0
  372. package/dist/types/src/content-schema-transform.d.ts +35 -0
  373. package/dist/types/src/create-input-schema.d.ts +9 -0
  374. package/dist/types/src/enum.d.ts +2 -0
  375. package/dist/types/src/flatten-templates.d.ts +2 -0
  376. package/dist/types/src/get-is-leaf.d.ts +3 -0
  377. package/dist/types/src/index.d.ts +46 -0
  378. package/dist/types/src/interfaces.d.ts +12 -0
  379. package/dist/types/src/layers/layers.d.ts +26 -0
  380. package/dist/types/src/layers/refs.d.ts +103 -0
  381. package/dist/types/src/layers/type-utils.d.ts +59 -0
  382. package/dist/types/src/layers/visitor.d.ts +5 -0
  383. package/dist/types/src/migration/index.d.ts +63 -0
  384. package/dist/types/src/migration/to/v3.0.0.d.ts +4 -0
  385. package/dist/types/src/migration/to/v3.1.0.d.ts +4 -0
  386. package/dist/types/src/migration/to/v3.10.0.d.ts +4 -0
  387. package/dist/types/src/migration/to/v3.11.0.d.ts +4 -0
  388. package/dist/types/src/migration/to/v3.12.0.d.ts +4 -0
  389. package/dist/types/src/migration/to/v3.12.1.d.ts +4 -0
  390. package/dist/types/src/migration/to/v3.12.2.d.ts +4 -0
  391. package/dist/types/src/migration/to/v3.12.3.d.ts +4 -0
  392. package/dist/types/src/migration/to/v3.13.0.d.ts +4 -0
  393. package/dist/types/src/migration/to/v3.14.0.d.ts +4 -0
  394. package/dist/types/src/migration/to/v3.15.0.d.ts +4 -0
  395. package/dist/types/src/migration/to/v3.16.0.d.ts +4 -0
  396. package/dist/types/src/migration/to/v3.17.0.d.ts +4 -0
  397. package/dist/types/src/migration/to/v3.17.1.d.ts +4 -0
  398. package/dist/types/src/migration/to/v3.18.0.d.ts +4 -0
  399. package/dist/types/src/migration/to/v3.18.1.d.ts +4 -0
  400. package/dist/types/src/migration/to/v3.18.2.d.ts +4 -0
  401. package/dist/types/src/migration/to/v3.19.0.d.ts +4 -0
  402. package/dist/types/src/migration/to/v3.2.0.d.ts +4 -0
  403. package/dist/types/src/migration/to/v3.20.0.d.ts +4 -0
  404. package/dist/types/src/migration/to/v3.21.0.d.ts +4 -0
  405. package/dist/types/src/migration/to/v3.22.0.d.ts +4 -0
  406. package/dist/types/src/migration/to/v3.23.0.d.ts +4 -0
  407. package/dist/types/src/migration/to/v3.24.0.d.ts +4 -0
  408. package/dist/types/src/migration/to/v3.25.0.d.ts +4 -0
  409. package/dist/types/src/migration/to/v3.26.0.d.ts +4 -0
  410. package/dist/types/src/migration/to/v3.27.0.d.ts +4 -0
  411. package/dist/types/src/migration/to/v3.28.0.d.ts +4 -0
  412. package/dist/types/src/migration/to/v3.29.0.d.ts +4 -0
  413. package/dist/types/src/migration/to/v3.3.0.d.ts +4 -0
  414. package/dist/types/src/migration/to/v3.30.0.d.ts +4 -0
  415. package/dist/types/src/migration/to/v3.31.0.d.ts +4 -0
  416. package/dist/types/src/migration/to/v3.32.0.d.ts +4 -0
  417. package/dist/types/src/migration/to/v3.33.0.d.ts +4 -0
  418. package/dist/types/src/migration/to/v3.34.0.d.ts +6 -0
  419. package/dist/types/src/migration/to/v3.35.0.d.ts +4 -0
  420. package/dist/types/src/migration/to/v3.36.0.d.ts +4 -0
  421. package/dist/types/src/migration/to/v3.37.0.d.ts +4 -0
  422. package/dist/types/src/migration/to/v3.38.0.d.ts +4 -0
  423. package/dist/types/src/migration/to/v3.39.0.d.ts +4 -0
  424. package/dist/types/src/migration/to/v3.4.0.d.ts +4 -0
  425. package/dist/types/src/migration/to/v3.40.0.d.ts +4 -0
  426. package/dist/types/src/migration/to/v3.41.0.d.ts +4 -0
  427. package/dist/types/src/migration/to/v3.42.0.d.ts +4 -0
  428. package/dist/types/src/migration/to/v3.43.0.d.ts +4 -0
  429. package/dist/types/src/migration/to/v3.44.0.d.ts +4 -0
  430. package/dist/types/src/migration/to/v3.45.0.d.ts +4 -0
  431. package/dist/types/src/migration/to/v3.46.0.d.ts +4 -0
  432. package/dist/types/src/migration/to/v3.47.0.d.ts +4 -0
  433. package/dist/types/src/migration/to/v3.48.0.d.ts +4 -0
  434. package/dist/types/src/migration/to/v3.49.0.d.ts +4 -0
  435. package/dist/types/src/migration/to/v3.5.0.d.ts +4 -0
  436. package/dist/types/src/migration/to/v3.5.1.d.ts +4 -0
  437. package/dist/types/src/migration/to/v3.50.0.d.ts +4 -0
  438. package/dist/types/src/migration/to/v3.6.0.d.ts +4 -0
  439. package/dist/types/src/migration/to/v3.7.0.d.ts +4 -0
  440. package/dist/types/src/migration/to/v3.8.0.d.ts +4 -0
  441. package/dist/types/src/migration/to/v3.9.0.d.ts +4 -0
  442. package/dist/types/src/migration/types.d.ts +20 -0
  443. package/dist/types/src/migration/utils.d.ts +2 -0
  444. package/dist/types/src/mocks.d.ts +13 -0
  445. package/dist/types/src/models/project-schema.d.ts +35 -0
  446. package/dist/types/src/models/query.d.ts +17 -0
  447. package/dist/types/src/models/service.d.ts +12 -0
  448. package/dist/types/src/models/shape.d.ts +41 -0
  449. package/dist/types/src/patterns.d.ts +12 -0
  450. package/dist/types/src/project-schema/index.d.ts +184 -0
  451. package/dist/types/src/project-schema/latest.d.ts +2032 -0
  452. package/dist/types/src/project-schema/migrate.d.ts +4 -0
  453. package/dist/types/src/project-schema/v1.0.0.d.ts +299 -0
  454. package/dist/types/src/project-schema/v3.0.0.d.ts +478 -0
  455. package/dist/types/src/project-schema/v3.1.0.d.ts +621 -0
  456. package/dist/types/src/project-schema/v3.10.0.d.ts +1201 -0
  457. package/dist/types/src/project-schema/v3.11.0.d.ts +1210 -0
  458. package/dist/types/src/project-schema/v3.12.0.d.ts +1214 -0
  459. package/dist/types/src/project-schema/v3.12.1.d.ts +1273 -0
  460. package/dist/types/src/project-schema/v3.12.2.d.ts +1283 -0
  461. package/dist/types/src/project-schema/v3.12.3.d.ts +1306 -0
  462. package/dist/types/src/project-schema/v3.13.0.d.ts +1317 -0
  463. package/dist/types/src/project-schema/v3.13.1.d.ts +1412 -0
  464. package/dist/types/src/project-schema/v3.14.0.d.ts +1436 -0
  465. package/dist/types/src/project-schema/v3.15.0.d.ts +1458 -0
  466. package/dist/types/src/project-schema/v3.16.0.d.ts +1470 -0
  467. package/dist/types/src/project-schema/v3.17.0.d.ts +1467 -0
  468. package/dist/types/src/project-schema/v3.17.1.d.ts +1468 -0
  469. package/dist/types/src/project-schema/v3.18.0.d.ts +1333 -0
  470. package/dist/types/src/project-schema/v3.18.1.d.ts +1332 -0
  471. package/dist/types/src/project-schema/v3.18.2.d.ts +1332 -0
  472. package/dist/types/src/project-schema/v3.19.0.d.ts +1336 -0
  473. package/dist/types/src/project-schema/v3.2.0.d.ts +632 -0
  474. package/dist/types/src/project-schema/v3.20.0.d.ts +1336 -0
  475. package/dist/types/src/project-schema/v3.21.0.d.ts +1338 -0
  476. package/dist/types/src/project-schema/v3.22.0.d.ts +1344 -0
  477. package/dist/types/src/project-schema/v3.23.0.d.ts +1376 -0
  478. package/dist/types/src/project-schema/v3.24.0.d.ts +1364 -0
  479. package/dist/types/src/project-schema/v3.25.0.d.ts +1363 -0
  480. package/dist/types/src/project-schema/v3.26.0.d.ts +1388 -0
  481. package/dist/types/src/project-schema/v3.27.0.d.ts +1397 -0
  482. package/dist/types/src/project-schema/v3.28.0.d.ts +1416 -0
  483. package/dist/types/src/project-schema/v3.29.0.d.ts +1423 -0
  484. package/dist/types/src/project-schema/v3.3.0.d.ts +632 -0
  485. package/dist/types/src/project-schema/v3.30.0.d.ts +1416 -0
  486. package/dist/types/src/project-schema/v3.31.0.d.ts +1448 -0
  487. package/dist/types/src/project-schema/v3.32.0.d.ts +1439 -0
  488. package/dist/types/src/project-schema/v3.33.0.d.ts +1445 -0
  489. package/dist/types/src/project-schema/v3.34.0.d.ts +1445 -0
  490. package/dist/types/src/project-schema/v3.35.0.d.ts +1464 -0
  491. package/dist/types/src/project-schema/v3.36.0.d.ts +1470 -0
  492. package/dist/types/src/project-schema/v3.37.0.d.ts +1522 -0
  493. package/dist/types/src/project-schema/v3.38.0.d.ts +1522 -0
  494. package/dist/types/src/project-schema/v3.39.0.d.ts +1529 -0
  495. package/dist/types/src/project-schema/v3.4.0.d.ts +624 -0
  496. package/dist/types/src/project-schema/v3.40.0.d.ts +1530 -0
  497. package/dist/types/src/project-schema/v3.41.0.d.ts +1530 -0
  498. package/dist/types/src/project-schema/v3.42.0.d.ts +1534 -0
  499. package/dist/types/src/project-schema/v3.43.0.d.ts +1536 -0
  500. package/dist/types/src/project-schema/v3.44.0.d.ts +1621 -0
  501. package/dist/types/src/project-schema/v3.45.0.d.ts +1650 -0
  502. package/dist/types/src/project-schema/v3.46.0.d.ts +1703 -0
  503. package/dist/types/src/project-schema/v3.47.0.d.ts +1736 -0
  504. package/dist/types/src/project-schema/v3.48.0.d.ts +1989 -0
  505. package/dist/types/src/project-schema/v3.49.0.d.ts +1998 -0
  506. package/dist/types/src/project-schema/v3.5.0.d.ts +649 -0
  507. package/dist/types/src/project-schema/v3.5.1.d.ts +649 -0
  508. package/dist/types/src/project-schema/v3.50.0.d.ts +2032 -0
  509. package/dist/types/src/project-schema/v3.6.0.d.ts +658 -0
  510. package/dist/types/src/project-schema/v3.7.0.d.ts +961 -0
  511. package/dist/types/src/project-schema/v3.8.0.d.ts +979 -0
  512. package/dist/types/src/project-schema/v3.9.0.d.ts +1178 -0
  513. package/dist/types/src/project-schema/v4.0.0.d.ts +1328 -0
  514. package/dist/types/src/refs.d.ts +227 -0
  515. package/dist/types/src/relationships.d.ts +36 -0
  516. package/dist/types/src/scalars.d.ts +2 -0
  517. package/dist/types/src/schema-transform.d.ts +19 -0
  518. package/dist/types/src/schema-util.d.ts +211 -0
  519. package/dist/types/src/schemas/index.d.ts +6 -0
  520. package/dist/types/src/services/services.d.ts +31 -0
  521. package/dist/types/src/services/types.d.ts +11 -0
  522. package/dist/types/src/services/util.d.ts +16 -0
  523. package/dist/types/src/taxonomies.d.ts +15 -0
  524. package/dist/types/src/template-shapes/index.d.ts +7 -0
  525. package/dist/types/src/template-shapes/names.d.ts +10 -0
  526. package/dist/types/src/template-shapes/templates.d.ts +32 -0
  527. package/dist/types/src/template-shapes/types.d.ts +15 -0
  528. package/dist/types/src/template-shapes/where.d.ts +37 -0
  529. package/dist/types/src/types/index.d.ts +3 -0
  530. package/dist/types/src/types/transforms.d.ts +13 -0
  531. package/dist/types/src/types/types.d.ts +210 -0
  532. package/dist/types/src/types/utils.d.ts +117 -0
  533. package/dist/types/src/unions.d.ts +14 -0
  534. package/dist/types/src/user-schema.d.ts +38 -0
  535. package/dist/types/src/util/ai-tools.d.ts +3 -0
  536. package/dist/types/src/util/api-indexing.d.ts +9 -0
  537. package/dist/types/src/util/detect-cycles.d.ts +7 -0
  538. package/dist/types/src/util/find-shape-at-path.d.ts +21 -0
  539. package/dist/types/src/util/form-config.d.ts +11 -0
  540. package/dist/types/src/util/get-conflicting-properties.d.ts +6 -0
  541. package/dist/types/src/util/get-return-shape.d.ts +4 -0
  542. package/dist/types/src/util/has-arg.d.ts +4 -0
  543. package/dist/types/src/util/merge.d.ts +15 -0
  544. package/dist/types/src/util/patch-schema.d.ts +8 -0
  545. package/dist/types/src/util/shapes.d.ts +5 -0
  546. package/dist/types/src/validate.d.ts +70 -0
  547. package/dist/types/src/versions.d.ts +4 -0
  548. package/dist/types/src/workflows.d.ts +14 -0
  549. package/dist/types/tsconfig.types.tsbuildinfo +1 -0
  550. package/package.json +47 -23
  551. package/dist/agents.d.ts +0 -12
  552. package/dist/agents.d.ts.map +0 -1
  553. package/dist/agents.js +0 -61
  554. package/dist/api-version.d.ts +0 -6
  555. package/dist/api-version.d.ts.map +0 -1
  556. package/dist/api-version.js +0 -25
  557. package/dist/auth-schemas.d.ts +0 -105
  558. package/dist/auth-schemas.d.ts.map +0 -1
  559. package/dist/auth-schemas.js +0 -5
  560. package/dist/builtin-schema.d.ts +0 -9
  561. package/dist/builtin-schema.d.ts.map +0 -1
  562. package/dist/builtin-schema.js +0 -681
  563. package/dist/content-schema-transform.d.ts +0 -48
  564. package/dist/content-schema-transform.d.ts.map +0 -1
  565. package/dist/content-schema-transform.js +0 -207
  566. package/dist/create-input-schema.d.ts +0 -10
  567. package/dist/create-input-schema.d.ts.map +0 -1
  568. package/dist/create-input-schema.js +0 -74
  569. package/dist/enum.d.ts +0 -3
  570. package/dist/enum.d.ts.map +0 -1
  571. package/dist/enum.js +0 -15
  572. package/dist/flatten-templates.d.ts +0 -3
  573. package/dist/flatten-templates.d.ts.map +0 -1
  574. package/dist/flatten-templates.js +0 -30
  575. package/dist/get-is-leaf.d.ts +0 -4
  576. package/dist/get-is-leaf.d.ts.map +0 -1
  577. package/dist/get-is-leaf.js +0 -58
  578. package/dist/index.d.ts +0 -33
  579. package/dist/index.d.ts.map +0 -1
  580. package/dist/index.js +0 -335
  581. package/dist/interfaces.d.ts +0 -13
  582. package/dist/interfaces.d.ts.map +0 -1
  583. package/dist/interfaces.js +0 -99
  584. package/dist/layers/layers.d.ts +0 -27
  585. package/dist/layers/layers.d.ts.map +0 -1
  586. package/dist/layers/layers.js +0 -324
  587. package/dist/layers/refs.d.ts +0 -104
  588. package/dist/layers/refs.d.ts.map +0 -1
  589. package/dist/layers/refs.js +0 -279
  590. package/dist/layers/type-utils.d.ts +0 -60
  591. package/dist/layers/type-utils.d.ts.map +0 -1
  592. package/dist/layers/type-utils.js +0 -166
  593. package/dist/layers/visitor.d.ts +0 -6
  594. package/dist/layers/visitor.d.ts.map +0 -1
  595. package/dist/layers/visitor.js +0 -42
  596. package/dist/migration/index.d.ts +0 -64
  597. package/dist/migration/index.d.ts.map +0 -1
  598. package/dist/migration/index.js +0 -142
  599. package/dist/migration/to/utils/v3.34.0-utils.d.ts +0 -1
  600. package/dist/migration/to/utils/v3.34.0-utils.d.ts.map +0 -1
  601. package/dist/migration/to/utils/v3.34.0-utils.js +0 -1
  602. package/dist/migration/to/v3.0.0.d.ts +0 -5
  603. package/dist/migration/to/v3.0.0.d.ts.map +0 -1
  604. package/dist/migration/to/v3.0.0.js +0 -263
  605. package/dist/migration/to/v3.1.0.d.ts +0 -5
  606. package/dist/migration/to/v3.1.0.d.ts.map +0 -1
  607. package/dist/migration/to/v3.1.0.js +0 -206
  608. package/dist/migration/to/v3.10.0.d.ts +0 -5
  609. package/dist/migration/to/v3.10.0.d.ts.map +0 -1
  610. package/dist/migration/to/v3.10.0.js +0 -91
  611. package/dist/migration/to/v3.11.0.d.ts +0 -5
  612. package/dist/migration/to/v3.11.0.d.ts.map +0 -1
  613. package/dist/migration/to/v3.11.0.js +0 -97
  614. package/dist/migration/to/v3.12.0.d.ts +0 -5
  615. package/dist/migration/to/v3.12.0.d.ts.map +0 -1
  616. package/dist/migration/to/v3.12.0.js +0 -16
  617. package/dist/migration/to/v3.12.1.d.ts +0 -5
  618. package/dist/migration/to/v3.12.1.d.ts.map +0 -1
  619. package/dist/migration/to/v3.12.1.js +0 -16
  620. package/dist/migration/to/v3.12.2.d.ts +0 -5
  621. package/dist/migration/to/v3.12.2.d.ts.map +0 -1
  622. package/dist/migration/to/v3.12.2.js +0 -16
  623. package/dist/migration/to/v3.12.3.d.ts +0 -5
  624. package/dist/migration/to/v3.12.3.d.ts.map +0 -1
  625. package/dist/migration/to/v3.12.3.js +0 -83
  626. package/dist/migration/to/v3.13.0.d.ts +0 -5
  627. package/dist/migration/to/v3.13.0.d.ts.map +0 -1
  628. package/dist/migration/to/v3.13.0.js +0 -26
  629. package/dist/migration/to/v3.14.0.d.ts +0 -5
  630. package/dist/migration/to/v3.14.0.d.ts.map +0 -1
  631. package/dist/migration/to/v3.14.0.js +0 -16
  632. package/dist/migration/to/v3.15.0.d.ts +0 -5
  633. package/dist/migration/to/v3.15.0.d.ts.map +0 -1
  634. package/dist/migration/to/v3.15.0.js +0 -16
  635. package/dist/migration/to/v3.16.0.d.ts +0 -5
  636. package/dist/migration/to/v3.16.0.d.ts.map +0 -1
  637. package/dist/migration/to/v3.16.0.js +0 -16
  638. package/dist/migration/to/v3.17.0.d.ts +0 -5
  639. package/dist/migration/to/v3.17.0.d.ts.map +0 -1
  640. package/dist/migration/to/v3.17.0.js +0 -34
  641. package/dist/migration/to/v3.17.1.d.ts +0 -5
  642. package/dist/migration/to/v3.17.1.d.ts.map +0 -1
  643. package/dist/migration/to/v3.17.1.js +0 -16
  644. package/dist/migration/to/v3.18.0.d.ts +0 -5
  645. package/dist/migration/to/v3.18.0.d.ts.map +0 -1
  646. package/dist/migration/to/v3.18.0.js +0 -71
  647. package/dist/migration/to/v3.18.1.d.ts +0 -5
  648. package/dist/migration/to/v3.18.1.d.ts.map +0 -1
  649. package/dist/migration/to/v3.18.1.js +0 -22
  650. package/dist/migration/to/v3.18.2.d.ts +0 -5
  651. package/dist/migration/to/v3.18.2.d.ts.map +0 -1
  652. package/dist/migration/to/v3.18.2.js +0 -29
  653. package/dist/migration/to/v3.19.0.d.ts +0 -5
  654. package/dist/migration/to/v3.19.0.d.ts.map +0 -1
  655. package/dist/migration/to/v3.19.0.js +0 -16
  656. package/dist/migration/to/v3.2.0.d.ts +0 -5
  657. package/dist/migration/to/v3.2.0.d.ts.map +0 -1
  658. package/dist/migration/to/v3.2.0.js +0 -16
  659. package/dist/migration/to/v3.20.0.d.ts +0 -5
  660. package/dist/migration/to/v3.20.0.d.ts.map +0 -1
  661. package/dist/migration/to/v3.20.0.js +0 -32
  662. package/dist/migration/to/v3.21.0.d.ts +0 -5
  663. package/dist/migration/to/v3.21.0.d.ts.map +0 -1
  664. package/dist/migration/to/v3.21.0.js +0 -16
  665. package/dist/migration/to/v3.22.0.d.ts +0 -5
  666. package/dist/migration/to/v3.22.0.d.ts.map +0 -1
  667. package/dist/migration/to/v3.22.0.js +0 -38
  668. package/dist/migration/to/v3.23.0.d.ts +0 -5
  669. package/dist/migration/to/v3.23.0.d.ts.map +0 -1
  670. package/dist/migration/to/v3.23.0.js +0 -16
  671. package/dist/migration/to/v3.24.0.d.ts +0 -5
  672. package/dist/migration/to/v3.24.0.d.ts.map +0 -1
  673. package/dist/migration/to/v3.24.0.js +0 -22
  674. package/dist/migration/to/v3.25.0.d.ts +0 -5
  675. package/dist/migration/to/v3.25.0.d.ts.map +0 -1
  676. package/dist/migration/to/v3.25.0.js +0 -20
  677. package/dist/migration/to/v3.26.0.d.ts +0 -5
  678. package/dist/migration/to/v3.26.0.d.ts.map +0 -1
  679. package/dist/migration/to/v3.26.0.js +0 -16
  680. package/dist/migration/to/v3.27.0.d.ts +0 -5
  681. package/dist/migration/to/v3.27.0.d.ts.map +0 -1
  682. package/dist/migration/to/v3.27.0.js +0 -16
  683. package/dist/migration/to/v3.28.0.d.ts +0 -5
  684. package/dist/migration/to/v3.28.0.d.ts.map +0 -1
  685. package/dist/migration/to/v3.28.0.js +0 -16
  686. package/dist/migration/to/v3.29.0.d.ts +0 -5
  687. package/dist/migration/to/v3.29.0.d.ts.map +0 -1
  688. package/dist/migration/to/v3.29.0.js +0 -16
  689. package/dist/migration/to/v3.3.0.d.ts +0 -5
  690. package/dist/migration/to/v3.3.0.d.ts.map +0 -1
  691. package/dist/migration/to/v3.3.0.js +0 -22
  692. package/dist/migration/to/v3.30.0.d.ts +0 -5
  693. package/dist/migration/to/v3.30.0.d.ts.map +0 -1
  694. package/dist/migration/to/v3.30.0.js +0 -16
  695. package/dist/migration/to/v3.31.0.d.ts +0 -5
  696. package/dist/migration/to/v3.31.0.d.ts.map +0 -1
  697. package/dist/migration/to/v3.31.0.js +0 -42
  698. package/dist/migration/to/v3.32.0.d.ts +0 -5
  699. package/dist/migration/to/v3.32.0.d.ts.map +0 -1
  700. package/dist/migration/to/v3.32.0.js +0 -97
  701. package/dist/migration/to/v3.33.0.d.ts +0 -5
  702. package/dist/migration/to/v3.33.0.d.ts.map +0 -1
  703. package/dist/migration/to/v3.33.0.js +0 -16
  704. package/dist/migration/to/v3.34.0.d.ts +0 -7
  705. package/dist/migration/to/v3.34.0.d.ts.map +0 -1
  706. package/dist/migration/to/v3.34.0.js +0 -150
  707. package/dist/migration/to/v3.35.0.d.ts +0 -5
  708. package/dist/migration/to/v3.35.0.d.ts.map +0 -1
  709. package/dist/migration/to/v3.35.0.js +0 -16
  710. package/dist/migration/to/v3.36.0.d.ts +0 -5
  711. package/dist/migration/to/v3.36.0.d.ts.map +0 -1
  712. package/dist/migration/to/v3.36.0.js +0 -29
  713. package/dist/migration/to/v3.37.0.d.ts +0 -5
  714. package/dist/migration/to/v3.37.0.d.ts.map +0 -1
  715. package/dist/migration/to/v3.37.0.js +0 -16
  716. package/dist/migration/to/v3.38.0.d.ts +0 -5
  717. package/dist/migration/to/v3.38.0.d.ts.map +0 -1
  718. package/dist/migration/to/v3.38.0.js +0 -16
  719. package/dist/migration/to/v3.39.0.d.ts +0 -5
  720. package/dist/migration/to/v3.39.0.d.ts.map +0 -1
  721. package/dist/migration/to/v3.39.0.js +0 -54
  722. package/dist/migration/to/v3.4.0.d.ts +0 -5
  723. package/dist/migration/to/v3.4.0.d.ts.map +0 -1
  724. package/dist/migration/to/v3.4.0.js +0 -16
  725. package/dist/migration/to/v3.40.0.d.ts +0 -5
  726. package/dist/migration/to/v3.40.0.d.ts.map +0 -1
  727. package/dist/migration/to/v3.40.0.js +0 -33
  728. package/dist/migration/to/v3.41.0.d.ts +0 -5
  729. package/dist/migration/to/v3.41.0.d.ts.map +0 -1
  730. package/dist/migration/to/v3.41.0.js +0 -16
  731. package/dist/migration/to/v3.42.0.d.ts +0 -5
  732. package/dist/migration/to/v3.42.0.d.ts.map +0 -1
  733. package/dist/migration/to/v3.42.0.js +0 -16
  734. package/dist/migration/to/v3.43.0.d.ts +0 -5
  735. package/dist/migration/to/v3.43.0.d.ts.map +0 -1
  736. package/dist/migration/to/v3.43.0.js +0 -16
  737. package/dist/migration/to/v3.44.0.d.ts +0 -5
  738. package/dist/migration/to/v3.44.0.d.ts.map +0 -1
  739. package/dist/migration/to/v3.44.0.js +0 -16
  740. package/dist/migration/to/v3.45.0.d.ts +0 -5
  741. package/dist/migration/to/v3.45.0.d.ts.map +0 -1
  742. package/dist/migration/to/v3.45.0.js +0 -16
  743. package/dist/migration/to/v3.46.0.d.ts +0 -5
  744. package/dist/migration/to/v3.46.0.d.ts.map +0 -1
  745. package/dist/migration/to/v3.46.0.js +0 -37
  746. package/dist/migration/to/v3.47.0.d.ts +0 -5
  747. package/dist/migration/to/v3.47.0.d.ts.map +0 -1
  748. package/dist/migration/to/v3.47.0.js +0 -16
  749. package/dist/migration/to/v3.48.0.d.ts +0 -5
  750. package/dist/migration/to/v3.48.0.d.ts.map +0 -1
  751. package/dist/migration/to/v3.48.0.js +0 -16
  752. package/dist/migration/to/v3.49.0.d.ts +0 -5
  753. package/dist/migration/to/v3.49.0.d.ts.map +0 -1
  754. package/dist/migration/to/v3.49.0.js +0 -16
  755. package/dist/migration/to/v3.5.0.d.ts +0 -5
  756. package/dist/migration/to/v3.5.0.d.ts.map +0 -1
  757. package/dist/migration/to/v3.5.0.js +0 -16
  758. package/dist/migration/to/v3.5.1.d.ts +0 -5
  759. package/dist/migration/to/v3.5.1.d.ts.map +0 -1
  760. package/dist/migration/to/v3.5.1.js +0 -16
  761. package/dist/migration/to/v3.50.0.d.ts +0 -5
  762. package/dist/migration/to/v3.50.0.d.ts.map +0 -1
  763. package/dist/migration/to/v3.50.0.js +0 -16
  764. package/dist/migration/to/v3.6.0.d.ts +0 -5
  765. package/dist/migration/to/v3.6.0.d.ts.map +0 -1
  766. package/dist/migration/to/v3.6.0.js +0 -16
  767. package/dist/migration/to/v3.7.0.d.ts +0 -5
  768. package/dist/migration/to/v3.7.0.d.ts.map +0 -1
  769. package/dist/migration/to/v3.7.0.js +0 -16
  770. package/dist/migration/to/v3.8.0.d.ts +0 -5
  771. package/dist/migration/to/v3.8.0.d.ts.map +0 -1
  772. package/dist/migration/to/v3.8.0.js +0 -16
  773. package/dist/migration/to/v3.9.0.d.ts +0 -5
  774. package/dist/migration/to/v3.9.0.d.ts.map +0 -1
  775. package/dist/migration/to/v3.9.0.js +0 -84
  776. package/dist/migration/types.d.ts +0 -21
  777. package/dist/migration/types.d.ts.map +0 -1
  778. package/dist/migration/types.js +0 -5
  779. package/dist/migration/utils.d.ts +0 -3
  780. package/dist/migration/utils.d.ts.map +0 -1
  781. package/dist/migration/utils.js +0 -13
  782. package/dist/mocks.d.ts +0 -14
  783. package/dist/mocks.d.ts.map +0 -1
  784. package/dist/mocks.js +0 -71
  785. package/dist/models/project-schema.d.ts +0 -36
  786. package/dist/models/project-schema.d.ts.map +0 -1
  787. package/dist/models/project-schema.js +0 -98
  788. package/dist/models/query.d.ts +0 -18
  789. package/dist/models/query.d.ts.map +0 -1
  790. package/dist/models/query.js +0 -35
  791. package/dist/models/service.d.ts +0 -13
  792. package/dist/models/service.d.ts.map +0 -1
  793. package/dist/models/service.js +0 -25
  794. package/dist/models/shape.d.ts +0 -42
  795. package/dist/models/shape.d.ts.map +0 -1
  796. package/dist/models/shape.js +0 -86
  797. package/dist/patterns.d.ts +0 -13
  798. package/dist/patterns.d.ts.map +0 -1
  799. package/dist/patterns.js +0 -5
  800. package/dist/project-schema/index.d.ts +0 -185
  801. package/dist/project-schema/index.d.ts.map +0 -1
  802. package/dist/project-schema/index.js +0 -879
  803. package/dist/project-schema/latest.d.ts +0 -2033
  804. package/dist/project-schema/latest.d.ts.map +0 -1
  805. package/dist/project-schema/latest.js +0 -5
  806. package/dist/project-schema/migrate.d.ts +0 -5
  807. package/dist/project-schema/migrate.d.ts.map +0 -1
  808. package/dist/project-schema/migrate.js +0 -201
  809. package/dist/project-schema/v1.0.0.d.ts +0 -300
  810. package/dist/project-schema/v1.0.0.d.ts.map +0 -1
  811. package/dist/project-schema/v1.0.0.js +0 -5
  812. package/dist/project-schema/v3.0.0.d.ts +0 -479
  813. package/dist/project-schema/v3.0.0.d.ts.map +0 -1
  814. package/dist/project-schema/v3.0.0.js +0 -5
  815. package/dist/project-schema/v3.1.0.d.ts +0 -622
  816. package/dist/project-schema/v3.1.0.d.ts.map +0 -1
  817. package/dist/project-schema/v3.1.0.js +0 -5
  818. package/dist/project-schema/v3.10.0.d.ts +0 -1202
  819. package/dist/project-schema/v3.10.0.d.ts.map +0 -1
  820. package/dist/project-schema/v3.10.0.js +0 -5
  821. package/dist/project-schema/v3.11.0.d.ts +0 -1211
  822. package/dist/project-schema/v3.11.0.d.ts.map +0 -1
  823. package/dist/project-schema/v3.11.0.js +0 -5
  824. package/dist/project-schema/v3.12.0.d.ts +0 -1215
  825. package/dist/project-schema/v3.12.0.d.ts.map +0 -1
  826. package/dist/project-schema/v3.12.0.js +0 -5
  827. package/dist/project-schema/v3.12.1.d.ts +0 -1274
  828. package/dist/project-schema/v3.12.1.d.ts.map +0 -1
  829. package/dist/project-schema/v3.12.1.js +0 -5
  830. package/dist/project-schema/v3.12.2.d.ts +0 -1284
  831. package/dist/project-schema/v3.12.2.d.ts.map +0 -1
  832. package/dist/project-schema/v3.12.2.js +0 -5
  833. package/dist/project-schema/v3.12.3.d.ts +0 -1307
  834. package/dist/project-schema/v3.12.3.d.ts.map +0 -1
  835. package/dist/project-schema/v3.12.3.js +0 -5
  836. package/dist/project-schema/v3.13.0.d.ts +0 -1318
  837. package/dist/project-schema/v3.13.0.d.ts.map +0 -1
  838. package/dist/project-schema/v3.13.0.js +0 -5
  839. package/dist/project-schema/v3.13.1.d.ts +0 -1413
  840. package/dist/project-schema/v3.13.1.d.ts.map +0 -1
  841. package/dist/project-schema/v3.13.1.js +0 -5
  842. package/dist/project-schema/v3.14.0.d.ts +0 -1437
  843. package/dist/project-schema/v3.14.0.d.ts.map +0 -1
  844. package/dist/project-schema/v3.14.0.js +0 -5
  845. package/dist/project-schema/v3.15.0.d.ts +0 -1459
  846. package/dist/project-schema/v3.15.0.d.ts.map +0 -1
  847. package/dist/project-schema/v3.15.0.js +0 -5
  848. package/dist/project-schema/v3.16.0.d.ts +0 -1471
  849. package/dist/project-schema/v3.16.0.d.ts.map +0 -1
  850. package/dist/project-schema/v3.16.0.js +0 -5
  851. package/dist/project-schema/v3.17.0.d.ts +0 -1468
  852. package/dist/project-schema/v3.17.0.d.ts.map +0 -1
  853. package/dist/project-schema/v3.17.0.js +0 -5
  854. package/dist/project-schema/v3.17.1.d.ts +0 -1469
  855. package/dist/project-schema/v3.17.1.d.ts.map +0 -1
  856. package/dist/project-schema/v3.17.1.js +0 -5
  857. package/dist/project-schema/v3.18.0.d.ts +0 -1334
  858. package/dist/project-schema/v3.18.0.d.ts.map +0 -1
  859. package/dist/project-schema/v3.18.0.js +0 -5
  860. package/dist/project-schema/v3.18.1.d.ts +0 -1333
  861. package/dist/project-schema/v3.18.1.d.ts.map +0 -1
  862. package/dist/project-schema/v3.18.1.js +0 -5
  863. package/dist/project-schema/v3.18.2.d.ts +0 -1333
  864. package/dist/project-schema/v3.18.2.d.ts.map +0 -1
  865. package/dist/project-schema/v3.18.2.js +0 -5
  866. package/dist/project-schema/v3.19.0.d.ts +0 -1337
  867. package/dist/project-schema/v3.19.0.d.ts.map +0 -1
  868. package/dist/project-schema/v3.19.0.js +0 -5
  869. package/dist/project-schema/v3.2.0.d.ts +0 -633
  870. package/dist/project-schema/v3.2.0.d.ts.map +0 -1
  871. package/dist/project-schema/v3.2.0.js +0 -5
  872. package/dist/project-schema/v3.20.0.d.ts +0 -1337
  873. package/dist/project-schema/v3.20.0.d.ts.map +0 -1
  874. package/dist/project-schema/v3.20.0.js +0 -5
  875. package/dist/project-schema/v3.21.0.d.ts +0 -1339
  876. package/dist/project-schema/v3.21.0.d.ts.map +0 -1
  877. package/dist/project-schema/v3.21.0.js +0 -5
  878. package/dist/project-schema/v3.22.0.d.ts +0 -1345
  879. package/dist/project-schema/v3.22.0.d.ts.map +0 -1
  880. package/dist/project-schema/v3.22.0.js +0 -5
  881. package/dist/project-schema/v3.23.0.d.ts +0 -1377
  882. package/dist/project-schema/v3.23.0.d.ts.map +0 -1
  883. package/dist/project-schema/v3.23.0.js +0 -5
  884. package/dist/project-schema/v3.24.0.d.ts +0 -1365
  885. package/dist/project-schema/v3.24.0.d.ts.map +0 -1
  886. package/dist/project-schema/v3.24.0.js +0 -5
  887. package/dist/project-schema/v3.25.0.d.ts +0 -1364
  888. package/dist/project-schema/v3.25.0.d.ts.map +0 -1
  889. package/dist/project-schema/v3.25.0.js +0 -5
  890. package/dist/project-schema/v3.26.0.d.ts +0 -1389
  891. package/dist/project-schema/v3.26.0.d.ts.map +0 -1
  892. package/dist/project-schema/v3.26.0.js +0 -5
  893. package/dist/project-schema/v3.27.0.d.ts +0 -1398
  894. package/dist/project-schema/v3.27.0.d.ts.map +0 -1
  895. package/dist/project-schema/v3.27.0.js +0 -5
  896. package/dist/project-schema/v3.28.0.d.ts +0 -1417
  897. package/dist/project-schema/v3.28.0.d.ts.map +0 -1
  898. package/dist/project-schema/v3.28.0.js +0 -5
  899. package/dist/project-schema/v3.29.0.d.ts +0 -1424
  900. package/dist/project-schema/v3.29.0.d.ts.map +0 -1
  901. package/dist/project-schema/v3.29.0.js +0 -5
  902. package/dist/project-schema/v3.3.0.d.ts +0 -633
  903. package/dist/project-schema/v3.3.0.d.ts.map +0 -1
  904. package/dist/project-schema/v3.3.0.js +0 -5
  905. package/dist/project-schema/v3.30.0.d.ts +0 -1417
  906. package/dist/project-schema/v3.30.0.d.ts.map +0 -1
  907. package/dist/project-schema/v3.30.0.js +0 -5
  908. package/dist/project-schema/v3.31.0.d.ts +0 -1449
  909. package/dist/project-schema/v3.31.0.d.ts.map +0 -1
  910. package/dist/project-schema/v3.31.0.js +0 -5
  911. package/dist/project-schema/v3.32.0.d.ts +0 -1440
  912. package/dist/project-schema/v3.32.0.d.ts.map +0 -1
  913. package/dist/project-schema/v3.32.0.js +0 -5
  914. package/dist/project-schema/v3.33.0.d.ts +0 -1446
  915. package/dist/project-schema/v3.33.0.d.ts.map +0 -1
  916. package/dist/project-schema/v3.33.0.js +0 -5
  917. package/dist/project-schema/v3.34.0.d.ts +0 -1446
  918. package/dist/project-schema/v3.34.0.d.ts.map +0 -1
  919. package/dist/project-schema/v3.34.0.js +0 -5
  920. package/dist/project-schema/v3.35.0.d.ts +0 -1465
  921. package/dist/project-schema/v3.35.0.d.ts.map +0 -1
  922. package/dist/project-schema/v3.35.0.js +0 -5
  923. package/dist/project-schema/v3.36.0.d.ts +0 -1471
  924. package/dist/project-schema/v3.36.0.d.ts.map +0 -1
  925. package/dist/project-schema/v3.36.0.js +0 -5
  926. package/dist/project-schema/v3.37.0.d.ts +0 -1523
  927. package/dist/project-schema/v3.37.0.d.ts.map +0 -1
  928. package/dist/project-schema/v3.37.0.js +0 -5
  929. package/dist/project-schema/v3.38.0.d.ts +0 -1523
  930. package/dist/project-schema/v3.38.0.d.ts.map +0 -1
  931. package/dist/project-schema/v3.38.0.js +0 -5
  932. package/dist/project-schema/v3.39.0.d.ts +0 -1530
  933. package/dist/project-schema/v3.39.0.d.ts.map +0 -1
  934. package/dist/project-schema/v3.39.0.js +0 -5
  935. package/dist/project-schema/v3.4.0.d.ts +0 -625
  936. package/dist/project-schema/v3.4.0.d.ts.map +0 -1
  937. package/dist/project-schema/v3.4.0.js +0 -5
  938. package/dist/project-schema/v3.40.0.d.ts +0 -1531
  939. package/dist/project-schema/v3.40.0.d.ts.map +0 -1
  940. package/dist/project-schema/v3.40.0.js +0 -5
  941. package/dist/project-schema/v3.41.0.d.ts +0 -1531
  942. package/dist/project-schema/v3.41.0.d.ts.map +0 -1
  943. package/dist/project-schema/v3.41.0.js +0 -5
  944. package/dist/project-schema/v3.42.0.d.ts +0 -1535
  945. package/dist/project-schema/v3.42.0.d.ts.map +0 -1
  946. package/dist/project-schema/v3.42.0.js +0 -5
  947. package/dist/project-schema/v3.43.0.d.ts +0 -1537
  948. package/dist/project-schema/v3.43.0.d.ts.map +0 -1
  949. package/dist/project-schema/v3.43.0.js +0 -5
  950. package/dist/project-schema/v3.44.0.d.ts +0 -1622
  951. package/dist/project-schema/v3.44.0.d.ts.map +0 -1
  952. package/dist/project-schema/v3.44.0.js +0 -5
  953. package/dist/project-schema/v3.45.0.d.ts +0 -1651
  954. package/dist/project-schema/v3.45.0.d.ts.map +0 -1
  955. package/dist/project-schema/v3.45.0.js +0 -5
  956. package/dist/project-schema/v3.46.0.d.ts +0 -1704
  957. package/dist/project-schema/v3.46.0.d.ts.map +0 -1
  958. package/dist/project-schema/v3.46.0.js +0 -5
  959. package/dist/project-schema/v3.47.0.d.ts +0 -1737
  960. package/dist/project-schema/v3.47.0.d.ts.map +0 -1
  961. package/dist/project-schema/v3.47.0.js +0 -5
  962. package/dist/project-schema/v3.48.0.d.ts +0 -1990
  963. package/dist/project-schema/v3.48.0.d.ts.map +0 -1
  964. package/dist/project-schema/v3.48.0.js +0 -5
  965. package/dist/project-schema/v3.49.0.d.ts +0 -1999
  966. package/dist/project-schema/v3.49.0.d.ts.map +0 -1
  967. package/dist/project-schema/v3.49.0.js +0 -5
  968. package/dist/project-schema/v3.5.0.d.ts +0 -650
  969. package/dist/project-schema/v3.5.0.d.ts.map +0 -1
  970. package/dist/project-schema/v3.5.0.js +0 -5
  971. package/dist/project-schema/v3.5.1.d.ts +0 -650
  972. package/dist/project-schema/v3.5.1.d.ts.map +0 -1
  973. package/dist/project-schema/v3.5.1.js +0 -5
  974. package/dist/project-schema/v3.50.0.d.ts +0 -2033
  975. package/dist/project-schema/v3.50.0.d.ts.map +0 -1
  976. package/dist/project-schema/v3.50.0.js +0 -5
  977. package/dist/project-schema/v3.6.0.d.ts +0 -659
  978. package/dist/project-schema/v3.6.0.d.ts.map +0 -1
  979. package/dist/project-schema/v3.6.0.js +0 -5
  980. package/dist/project-schema/v3.7.0.d.ts +0 -962
  981. package/dist/project-schema/v3.7.0.d.ts.map +0 -1
  982. package/dist/project-schema/v3.7.0.js +0 -5
  983. package/dist/project-schema/v3.8.0.d.ts +0 -980
  984. package/dist/project-schema/v3.8.0.d.ts.map +0 -1
  985. package/dist/project-schema/v3.8.0.js +0 -5
  986. package/dist/project-schema/v3.9.0.d.ts +0 -1179
  987. package/dist/project-schema/v3.9.0.d.ts.map +0 -1
  988. package/dist/project-schema/v3.9.0.js +0 -5
  989. package/dist/project-schema/v4.0.0.d.ts +0 -1329
  990. package/dist/project-schema/v4.0.0.d.ts.map +0 -1
  991. package/dist/project-schema/v4.0.0.js +0 -5
  992. package/dist/refs.d.ts +0 -228
  993. package/dist/refs.d.ts.map +0 -1
  994. package/dist/refs.js +0 -754
  995. package/dist/relationships.d.ts +0 -37
  996. package/dist/relationships.d.ts.map +0 -1
  997. package/dist/relationships.js +0 -243
  998. package/dist/scalars.d.ts +0 -3
  999. package/dist/scalars.d.ts.map +0 -1
  1000. package/dist/scalars.js +0 -11
  1001. package/dist/schema-transform.d.ts +0 -4
  1002. package/dist/schema-transform.d.ts.map +0 -1
  1003. package/dist/schema-transform.js +0 -47
  1004. package/dist/schema-util.d.ts +0 -220
  1005. package/dist/schema-util.d.ts.map +0 -1
  1006. package/dist/schema-util.js +0 -1247
  1007. package/dist/schemas/index.d.ts +0 -5
  1008. package/dist/schemas/index.d.ts.map +0 -1
  1009. package/dist/schemas/index.js +0 -96
  1010. package/dist/schemas/index.ts +0 -152
  1011. package/dist/services.d.ts +0 -55
  1012. package/dist/services.d.ts.map +0 -1
  1013. package/dist/services.js +0 -168
  1014. package/dist/taxonomies.d.ts +0 -16
  1015. package/dist/taxonomies.d.ts.map +0 -1
  1016. package/dist/taxonomies.js +0 -41
  1017. package/dist/template-shapes/index.d.ts +0 -8
  1018. package/dist/template-shapes/index.d.ts.map +0 -1
  1019. package/dist/template-shapes/index.js +0 -43
  1020. package/dist/template-shapes/templates.d.ts +0 -42
  1021. package/dist/template-shapes/templates.d.ts.map +0 -1
  1022. package/dist/template-shapes/templates.js +0 -423
  1023. package/dist/template-shapes/types.d.ts +0 -16
  1024. package/dist/template-shapes/types.d.ts.map +0 -1
  1025. package/dist/template-shapes/types.js +0 -13
  1026. package/dist/template-shapes/where.d.ts +0 -38
  1027. package/dist/template-shapes/where.d.ts.map +0 -1
  1028. package/dist/template-shapes/where.js +0 -472
  1029. package/dist/types/index.d.ts +0 -3
  1030. package/dist/types/index.d.ts.map +0 -1
  1031. package/dist/types/index.js +0 -27
  1032. package/dist/types/types.d.ts +0 -211
  1033. package/dist/types/types.d.ts.map +0 -1
  1034. package/dist/types/types.js +0 -60
  1035. package/dist/types/utils.d.ts +0 -116
  1036. package/dist/types/utils.d.ts.map +0 -1
  1037. package/dist/types/utils.js +0 -364
  1038. package/dist/unions.d.ts +0 -28
  1039. package/dist/unions.d.ts.map +0 -1
  1040. package/dist/unions.js +0 -137
  1041. package/dist/user-schema.d.ts +0 -39
  1042. package/dist/user-schema.d.ts.map +0 -1
  1043. package/dist/user-schema.js +0 -5
  1044. package/dist/util/ai-tools.d.ts +0 -4
  1045. package/dist/util/ai-tools.d.ts.map +0 -1
  1046. package/dist/util/ai-tools.js +0 -15
  1047. package/dist/util/api-indexing.d.ts +0 -10
  1048. package/dist/util/api-indexing.d.ts.map +0 -1
  1049. package/dist/util/api-indexing.js +0 -75
  1050. package/dist/util/detect-cycles.d.ts +0 -8
  1051. package/dist/util/detect-cycles.d.ts.map +0 -1
  1052. package/dist/util/detect-cycles.js +0 -54
  1053. package/dist/util/find-shape-at-path.d.ts +0 -22
  1054. package/dist/util/find-shape-at-path.d.ts.map +0 -1
  1055. package/dist/util/find-shape-at-path.js +0 -61
  1056. package/dist/util/form-config.d.ts +0 -12
  1057. package/dist/util/form-config.d.ts.map +0 -1
  1058. package/dist/util/form-config.js +0 -79
  1059. package/dist/util/get-conflicting-properties.d.ts +0 -7
  1060. package/dist/util/get-conflicting-properties.d.ts.map +0 -1
  1061. package/dist/util/get-conflicting-properties.js +0 -59
  1062. package/dist/util/get-return-shape.d.ts +0 -5
  1063. package/dist/util/get-return-shape.d.ts.map +0 -1
  1064. package/dist/util/get-return-shape.js +0 -38
  1065. package/dist/util/has-arg.d.ts +0 -5
  1066. package/dist/util/has-arg.d.ts.map +0 -1
  1067. package/dist/util/has-arg.js +0 -20
  1068. package/dist/util/index.d.ts +0 -11
  1069. package/dist/util/index.d.ts.map +0 -1
  1070. package/dist/util/index.js +0 -115
  1071. package/dist/util/merge.d.ts +0 -16
  1072. package/dist/util/merge.d.ts.map +0 -1
  1073. package/dist/util/merge.js +0 -307
  1074. package/dist/util/patch-schema.d.ts +0 -9
  1075. package/dist/util/patch-schema.d.ts.map +0 -1
  1076. package/dist/util/patch-schema.js +0 -52
  1077. package/dist/validate.d.ts +0 -71
  1078. package/dist/validate.d.ts.map +0 -1
  1079. package/dist/validate.js +0 -1117
  1080. package/dist/versions.d.ts +0 -5
  1081. package/dist/versions.d.ts.map +0 -1
  1082. package/dist/versions.js +0 -17
  1083. package/dist/workflows.d.ts +0 -15
  1084. package/dist/workflows.d.ts.map +0 -1
  1085. package/dist/workflows.js +0 -81
  1086. package/es/agents.js +0 -51
  1087. package/es/api-version.js +0 -17
  1088. package/es/auth-schemas.js +0 -1
  1089. package/es/builtin-schema.js +0 -671
  1090. package/es/content-schema-transform.js +0 -192
  1091. package/es/create-input-schema.js +0 -67
  1092. package/es/enum.js +0 -9
  1093. package/es/flatten-templates.js +0 -23
  1094. package/es/get-is-leaf.js +0 -52
  1095. package/es/index.js +0 -33
  1096. package/es/interfaces.js +0 -85
  1097. package/es/layers/layers.js +0 -311
  1098. package/es/layers/refs.js +0 -256
  1099. package/es/layers/type-utils.js +0 -138
  1100. package/es/layers/visitor.js +0 -35
  1101. package/es/migration/index.js +0 -120
  1102. package/es/migration/to/utils/v3.34.0-utils.js +0 -0
  1103. package/es/migration/to/v3.0.0.js +0 -256
  1104. package/es/migration/to/v3.1.0.js +0 -200
  1105. package/es/migration/to/v3.10.0.js +0 -84
  1106. package/es/migration/to/v3.11.0.js +0 -90
  1107. package/es/migration/to/v3.12.0.js +0 -10
  1108. package/es/migration/to/v3.12.1.js +0 -10
  1109. package/es/migration/to/v3.12.2.js +0 -10
  1110. package/es/migration/to/v3.12.3.js +0 -76
  1111. package/es/migration/to/v3.13.0.js +0 -19
  1112. package/es/migration/to/v3.14.0.js +0 -10
  1113. package/es/migration/to/v3.15.0.js +0 -10
  1114. package/es/migration/to/v3.16.0.js +0 -10
  1115. package/es/migration/to/v3.17.0.js +0 -27
  1116. package/es/migration/to/v3.17.1.js +0 -10
  1117. package/es/migration/to/v3.18.0.js +0 -64
  1118. package/es/migration/to/v3.18.1.js +0 -15
  1119. package/es/migration/to/v3.18.2.js +0 -22
  1120. package/es/migration/to/v3.19.0.js +0 -10
  1121. package/es/migration/to/v3.2.0.js +0 -10
  1122. package/es/migration/to/v3.20.0.js +0 -25
  1123. package/es/migration/to/v3.21.0.js +0 -10
  1124. package/es/migration/to/v3.22.0.js +0 -31
  1125. package/es/migration/to/v3.23.0.js +0 -10
  1126. package/es/migration/to/v3.24.0.js +0 -16
  1127. package/es/migration/to/v3.25.0.js +0 -14
  1128. package/es/migration/to/v3.26.0.js +0 -10
  1129. package/es/migration/to/v3.27.0.js +0 -10
  1130. package/es/migration/to/v3.28.0.js +0 -10
  1131. package/es/migration/to/v3.29.0.js +0 -10
  1132. package/es/migration/to/v3.3.0.js +0 -16
  1133. package/es/migration/to/v3.30.0.js +0 -10
  1134. package/es/migration/to/v3.31.0.js +0 -35
  1135. package/es/migration/to/v3.32.0.js +0 -91
  1136. package/es/migration/to/v3.33.0.js +0 -10
  1137. package/es/migration/to/v3.34.0.js +0 -142
  1138. package/es/migration/to/v3.35.0.js +0 -10
  1139. package/es/migration/to/v3.36.0.js +0 -22
  1140. package/es/migration/to/v3.37.0.js +0 -10
  1141. package/es/migration/to/v3.38.0.js +0 -10
  1142. package/es/migration/to/v3.39.0.js +0 -48
  1143. package/es/migration/to/v3.4.0.js +0 -10
  1144. package/es/migration/to/v3.40.0.js +0 -26
  1145. package/es/migration/to/v3.41.0.js +0 -10
  1146. package/es/migration/to/v3.42.0.js +0 -10
  1147. package/es/migration/to/v3.43.0.js +0 -10
  1148. package/es/migration/to/v3.44.0.js +0 -10
  1149. package/es/migration/to/v3.45.0.js +0 -10
  1150. package/es/migration/to/v3.46.0.js +0 -31
  1151. package/es/migration/to/v3.47.0.js +0 -10
  1152. package/es/migration/to/v3.48.0.js +0 -10
  1153. package/es/migration/to/v3.49.0.js +0 -10
  1154. package/es/migration/to/v3.5.0.js +0 -10
  1155. package/es/migration/to/v3.5.1.js +0 -10
  1156. package/es/migration/to/v3.50.0.js +0 -10
  1157. package/es/migration/to/v3.6.0.js +0 -10
  1158. package/es/migration/to/v3.7.0.js +0 -10
  1159. package/es/migration/to/v3.8.0.js +0 -10
  1160. package/es/migration/to/v3.9.0.js +0 -77
  1161. package/es/migration/types.js +0 -1
  1162. package/es/migration/utils.js +0 -6
  1163. package/es/mocks.js +0 -62
  1164. package/es/models/project-schema.js +0 -90
  1165. package/es/models/query.js +0 -28
  1166. package/es/models/service.js +0 -18
  1167. package/es/models/shape.js +0 -79
  1168. package/es/patterns.js +0 -1
  1169. package/es/project-schema/index.js +0 -138
  1170. package/es/project-schema/latest.js +0 -1
  1171. package/es/project-schema/migrate.js +0 -195
  1172. package/es/project-schema/v1.0.0.js +0 -1
  1173. package/es/project-schema/v3.0.0.js +0 -1
  1174. package/es/project-schema/v3.1.0.js +0 -1
  1175. package/es/project-schema/v3.10.0.js +0 -1
  1176. package/es/project-schema/v3.11.0.js +0 -1
  1177. package/es/project-schema/v3.12.0.js +0 -1
  1178. package/es/project-schema/v3.12.1.js +0 -1
  1179. package/es/project-schema/v3.12.2.js +0 -1
  1180. package/es/project-schema/v3.12.3.js +0 -1
  1181. package/es/project-schema/v3.13.0.js +0 -1
  1182. package/es/project-schema/v3.13.1.js +0 -1
  1183. package/es/project-schema/v3.14.0.js +0 -1
  1184. package/es/project-schema/v3.15.0.js +0 -1
  1185. package/es/project-schema/v3.16.0.js +0 -1
  1186. package/es/project-schema/v3.17.0.js +0 -1
  1187. package/es/project-schema/v3.17.1.js +0 -1
  1188. package/es/project-schema/v3.18.0.js +0 -1
  1189. package/es/project-schema/v3.18.1.js +0 -1
  1190. package/es/project-schema/v3.18.2.js +0 -1
  1191. package/es/project-schema/v3.19.0.js +0 -1
  1192. package/es/project-schema/v3.2.0.js +0 -1
  1193. package/es/project-schema/v3.20.0.js +0 -1
  1194. package/es/project-schema/v3.21.0.js +0 -1
  1195. package/es/project-schema/v3.22.0.js +0 -1
  1196. package/es/project-schema/v3.23.0.js +0 -1
  1197. package/es/project-schema/v3.24.0.js +0 -1
  1198. package/es/project-schema/v3.25.0.js +0 -1
  1199. package/es/project-schema/v3.26.0.js +0 -1
  1200. package/es/project-schema/v3.27.0.js +0 -1
  1201. package/es/project-schema/v3.28.0.js +0 -1
  1202. package/es/project-schema/v3.29.0.js +0 -1
  1203. package/es/project-schema/v3.3.0.js +0 -1
  1204. package/es/project-schema/v3.30.0.js +0 -1
  1205. package/es/project-schema/v3.31.0.js +0 -1
  1206. package/es/project-schema/v3.32.0.js +0 -1
  1207. package/es/project-schema/v3.33.0.js +0 -1
  1208. package/es/project-schema/v3.34.0.js +0 -1
  1209. package/es/project-schema/v3.35.0.js +0 -1
  1210. package/es/project-schema/v3.36.0.js +0 -1
  1211. package/es/project-schema/v3.37.0.js +0 -1
  1212. package/es/project-schema/v3.38.0.js +0 -1
  1213. package/es/project-schema/v3.39.0.js +0 -1
  1214. package/es/project-schema/v3.4.0.js +0 -1
  1215. package/es/project-schema/v3.40.0.js +0 -1
  1216. package/es/project-schema/v3.41.0.js +0 -1
  1217. package/es/project-schema/v3.42.0.js +0 -1
  1218. package/es/project-schema/v3.43.0.js +0 -1
  1219. package/es/project-schema/v3.44.0.js +0 -1
  1220. package/es/project-schema/v3.45.0.js +0 -1
  1221. package/es/project-schema/v3.46.0.js +0 -1
  1222. package/es/project-schema/v3.47.0.js +0 -1
  1223. package/es/project-schema/v3.48.0.js +0 -1
  1224. package/es/project-schema/v3.49.0.js +0 -1
  1225. package/es/project-schema/v3.5.0.js +0 -1
  1226. package/es/project-schema/v3.5.1.js +0 -1
  1227. package/es/project-schema/v3.50.0.js +0 -1
  1228. package/es/project-schema/v3.6.0.js +0 -1
  1229. package/es/project-schema/v3.7.0.js +0 -1
  1230. package/es/project-schema/v3.8.0.js +0 -1
  1231. package/es/project-schema/v3.9.0.js +0 -1
  1232. package/es/project-schema/v4.0.0.js +0 -1
  1233. package/es/refs.js +0 -690
  1234. package/es/relationships.js +0 -229
  1235. package/es/scalars.js +0 -4
  1236. package/es/schema-transform.js +0 -40
  1237. package/es/schema-util.js +0 -1166
  1238. package/es/schemas/index.js +0 -78
  1239. package/es/schemas/index.ts +0 -152
  1240. package/es/services.js +0 -154
  1241. package/es/taxonomies.js +0 -34
  1242. package/es/template-shapes/index.js +0 -36
  1243. package/es/template-shapes/templates.js +0 -406
  1244. package/es/template-shapes/types.js +0 -7
  1245. package/es/template-shapes/where.js +0 -459
  1246. package/es/types/index.js +0 -2
  1247. package/es/types/types.js +0 -62
  1248. package/es/types/utils.js +0 -298
  1249. package/es/unions.js +0 -123
  1250. package/es/user-schema.js +0 -1
  1251. package/es/util/ai-tools.js +0 -8
  1252. package/es/util/api-indexing.js +0 -66
  1253. package/es/util/detect-cycles.js +0 -48
  1254. package/es/util/find-shape-at-path.js +0 -55
  1255. package/es/util/form-config.js +0 -73
  1256. package/es/util/get-conflicting-properties.js +0 -54
  1257. package/es/util/get-return-shape.js +0 -31
  1258. package/es/util/has-arg.js +0 -13
  1259. package/es/util/index.js +0 -10
  1260. package/es/util/merge.js +0 -293
  1261. package/es/util/patch-schema.js +0 -44
  1262. package/es/validate.js +0 -1102
  1263. package/es/versions.js +0 -4
  1264. package/es/workflows.js +0 -68
  1265. /package/dist/{schemas → cjs/src/schemas}/auth-schemas.json +0 -0
  1266. /package/dist/{schemas → cjs/src/schemas}/project-schema/experimental.json +0 -0
  1267. /package/dist/{schemas → cjs/src/schemas}/project-schema/latest.json +0 -0
  1268. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v1.0.0.json +0 -0
  1269. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v3.0.0.json +0 -0
  1270. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v3.1.0.json +0 -0
  1271. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v3.2.0.json +0 -0
  1272. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v3.3.0.json +0 -0
  1273. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v3.4.0.json +0 -0
  1274. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v3.5.0.json +0 -0
  1275. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v3.5.1.json +0 -0
  1276. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v3.6.0.json +0 -0
  1277. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v3.7.0.json +0 -0
  1278. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v3.8.0.json +0 -0
  1279. /package/dist/{schemas → cjs/src/schemas}/project-schema/meta-schema-v3.9.0.json +0 -0
  1280. /package/dist/{schemas → cjs/src/schemas}/project-schema/v1.0.0.json +0 -0
  1281. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.0.0.json +0 -0
  1282. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.1.0.json +0 -0
  1283. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.10.0.json +0 -0
  1284. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.11.0.json +0 -0
  1285. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.12.0.json +0 -0
  1286. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.12.1.json +0 -0
  1287. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.12.2.json +0 -0
  1288. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.12.3.json +0 -0
  1289. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.13.0.json +0 -0
  1290. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.14.0.json +0 -0
  1291. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.15.0.json +0 -0
  1292. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.16.0.json +0 -0
  1293. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.17.0.json +0 -0
  1294. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.17.1.json +0 -0
  1295. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.18.0.json +0 -0
  1296. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.18.1.json +0 -0
  1297. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.18.2.json +0 -0
  1298. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.19.0.json +0 -0
  1299. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.2.0.json +0 -0
  1300. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.20.0.json +0 -0
  1301. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.21.0.json +0 -0
  1302. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.22.0.json +0 -0
  1303. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.23.0.json +0 -0
  1304. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.24.0.json +0 -0
  1305. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.25.0.json +0 -0
  1306. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.26.0.json +0 -0
  1307. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.27.0.json +0 -0
  1308. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.28.0.json +0 -0
  1309. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.29.0.json +0 -0
  1310. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.3.0.json +0 -0
  1311. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.30.0.json +0 -0
  1312. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.31.0.json +0 -0
  1313. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.32.0.json +0 -0
  1314. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.33.0.json +0 -0
  1315. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.34.0.json +0 -0
  1316. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.35.0.json +0 -0
  1317. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.36.0.json +0 -0
  1318. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.37.0.json +0 -0
  1319. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.38.0.json +0 -0
  1320. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.39.0.json +0 -0
  1321. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.4.0.json +0 -0
  1322. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.40.0.json +0 -0
  1323. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.41.0.json +0 -0
  1324. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.42.0.json +0 -0
  1325. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.43.0.json +0 -0
  1326. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.44.0.json +0 -0
  1327. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.45.0.json +0 -0
  1328. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.46.0.json +0 -0
  1329. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.47.0.json +0 -0
  1330. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.48.0.json +0 -0
  1331. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.49.0.json +0 -0
  1332. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.5.0.json +0 -0
  1333. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.5.1.json +0 -0
  1334. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.50.0.json +0 -0
  1335. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.6.0.json +0 -0
  1336. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.7.0.json +0 -0
  1337. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.8.0.json +0 -0
  1338. /package/dist/{schemas → cjs/src/schemas}/project-schema/v3.9.0.json +0 -0
  1339. /package/dist/{schemas → cjs/src/schemas}/project-schema/v4.0.0.json +0 -0
  1340. /package/dist/{schemas → cjs/src/schemas}/project-schema.json +0 -0
  1341. /package/dist/{schemas → cjs/src/schemas}/user-schema.json +0 -0
  1342. /package/{es → dist/esm/src}/schemas/auth-schemas.json +0 -0
  1343. /package/{es → dist/esm/src}/schemas/project-schema/experimental.json +0 -0
  1344. /package/{es → dist/esm/src}/schemas/project-schema/latest.json +0 -0
  1345. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v1.0.0.json +0 -0
  1346. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v3.0.0.json +0 -0
  1347. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v3.1.0.json +0 -0
  1348. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v3.2.0.json +0 -0
  1349. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v3.3.0.json +0 -0
  1350. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v3.4.0.json +0 -0
  1351. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v3.5.0.json +0 -0
  1352. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v3.5.1.json +0 -0
  1353. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v3.6.0.json +0 -0
  1354. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v3.7.0.json +0 -0
  1355. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v3.8.0.json +0 -0
  1356. /package/{es → dist/esm/src}/schemas/project-schema/meta-schema-v3.9.0.json +0 -0
  1357. /package/{es → dist/esm/src}/schemas/project-schema/v1.0.0.json +0 -0
  1358. /package/{es → dist/esm/src}/schemas/project-schema/v3.0.0.json +0 -0
  1359. /package/{es → dist/esm/src}/schemas/project-schema/v3.1.0.json +0 -0
  1360. /package/{es → dist/esm/src}/schemas/project-schema/v3.10.0.json +0 -0
  1361. /package/{es → dist/esm/src}/schemas/project-schema/v3.11.0.json +0 -0
  1362. /package/{es → dist/esm/src}/schemas/project-schema/v3.12.0.json +0 -0
  1363. /package/{es → dist/esm/src}/schemas/project-schema/v3.12.1.json +0 -0
  1364. /package/{es → dist/esm/src}/schemas/project-schema/v3.12.2.json +0 -0
  1365. /package/{es → dist/esm/src}/schemas/project-schema/v3.12.3.json +0 -0
  1366. /package/{es → dist/esm/src}/schemas/project-schema/v3.13.0.json +0 -0
  1367. /package/{es → dist/esm/src}/schemas/project-schema/v3.14.0.json +0 -0
  1368. /package/{es → dist/esm/src}/schemas/project-schema/v3.15.0.json +0 -0
  1369. /package/{es → dist/esm/src}/schemas/project-schema/v3.16.0.json +0 -0
  1370. /package/{es → dist/esm/src}/schemas/project-schema/v3.17.0.json +0 -0
  1371. /package/{es → dist/esm/src}/schemas/project-schema/v3.17.1.json +0 -0
  1372. /package/{es → dist/esm/src}/schemas/project-schema/v3.18.0.json +0 -0
  1373. /package/{es → dist/esm/src}/schemas/project-schema/v3.18.1.json +0 -0
  1374. /package/{es → dist/esm/src}/schemas/project-schema/v3.18.2.json +0 -0
  1375. /package/{es → dist/esm/src}/schemas/project-schema/v3.19.0.json +0 -0
  1376. /package/{es → dist/esm/src}/schemas/project-schema/v3.2.0.json +0 -0
  1377. /package/{es → dist/esm/src}/schemas/project-schema/v3.20.0.json +0 -0
  1378. /package/{es → dist/esm/src}/schemas/project-schema/v3.21.0.json +0 -0
  1379. /package/{es → dist/esm/src}/schemas/project-schema/v3.22.0.json +0 -0
  1380. /package/{es → dist/esm/src}/schemas/project-schema/v3.23.0.json +0 -0
  1381. /package/{es → dist/esm/src}/schemas/project-schema/v3.24.0.json +0 -0
  1382. /package/{es → dist/esm/src}/schemas/project-schema/v3.25.0.json +0 -0
  1383. /package/{es → dist/esm/src}/schemas/project-schema/v3.26.0.json +0 -0
  1384. /package/{es → dist/esm/src}/schemas/project-schema/v3.27.0.json +0 -0
  1385. /package/{es → dist/esm/src}/schemas/project-schema/v3.28.0.json +0 -0
  1386. /package/{es → dist/esm/src}/schemas/project-schema/v3.29.0.json +0 -0
  1387. /package/{es → dist/esm/src}/schemas/project-schema/v3.3.0.json +0 -0
  1388. /package/{es → dist/esm/src}/schemas/project-schema/v3.30.0.json +0 -0
  1389. /package/{es → dist/esm/src}/schemas/project-schema/v3.31.0.json +0 -0
  1390. /package/{es → dist/esm/src}/schemas/project-schema/v3.32.0.json +0 -0
  1391. /package/{es → dist/esm/src}/schemas/project-schema/v3.33.0.json +0 -0
  1392. /package/{es → dist/esm/src}/schemas/project-schema/v3.34.0.json +0 -0
  1393. /package/{es → dist/esm/src}/schemas/project-schema/v3.35.0.json +0 -0
  1394. /package/{es → dist/esm/src}/schemas/project-schema/v3.36.0.json +0 -0
  1395. /package/{es → dist/esm/src}/schemas/project-schema/v3.37.0.json +0 -0
  1396. /package/{es → dist/esm/src}/schemas/project-schema/v3.38.0.json +0 -0
  1397. /package/{es → dist/esm/src}/schemas/project-schema/v3.39.0.json +0 -0
  1398. /package/{es → dist/esm/src}/schemas/project-schema/v3.4.0.json +0 -0
  1399. /package/{es → dist/esm/src}/schemas/project-schema/v3.40.0.json +0 -0
  1400. /package/{es → dist/esm/src}/schemas/project-schema/v3.41.0.json +0 -0
  1401. /package/{es → dist/esm/src}/schemas/project-schema/v3.42.0.json +0 -0
  1402. /package/{es → dist/esm/src}/schemas/project-schema/v3.43.0.json +0 -0
  1403. /package/{es → dist/esm/src}/schemas/project-schema/v3.44.0.json +0 -0
  1404. /package/{es → dist/esm/src}/schemas/project-schema/v3.45.0.json +0 -0
  1405. /package/{es → dist/esm/src}/schemas/project-schema/v3.46.0.json +0 -0
  1406. /package/{es → dist/esm/src}/schemas/project-schema/v3.47.0.json +0 -0
  1407. /package/{es → dist/esm/src}/schemas/project-schema/v3.48.0.json +0 -0
  1408. /package/{es → dist/esm/src}/schemas/project-schema/v3.49.0.json +0 -0
  1409. /package/{es → dist/esm/src}/schemas/project-schema/v3.5.0.json +0 -0
  1410. /package/{es → dist/esm/src}/schemas/project-schema/v3.5.1.json +0 -0
  1411. /package/{es → dist/esm/src}/schemas/project-schema/v3.50.0.json +0 -0
  1412. /package/{es → dist/esm/src}/schemas/project-schema/v3.6.0.json +0 -0
  1413. /package/{es → dist/esm/src}/schemas/project-schema/v3.7.0.json +0 -0
  1414. /package/{es → dist/esm/src}/schemas/project-schema/v3.8.0.json +0 -0
  1415. /package/{es → dist/esm/src}/schemas/project-schema/v3.9.0.json +0 -0
  1416. /package/{es → dist/esm/src}/schemas/project-schema/v4.0.0.json +0 -0
  1417. /package/{es → dist/esm/src}/schemas/project-schema.json +0 -0
  1418. /package/{es → dist/esm/src}/schemas/user-schema.json +0 -0
@@ -0,0 +1,1073 @@
1
+ import { JSONPath } from "jsonpath-plus";
2
+ import { createAjv } from "@takeshape/json-schema";
3
+ import { SchemaValidationError } from "@takeshape/errors";
4
+ import coerce from "semver/functions/coerce.js";
5
+ import neq from "semver/functions/neq.js";
6
+ import lt from "semver/functions/lt.js";
7
+ import gte from "semver/functions/gte.js";
8
+ import isUndefined from "lodash/isUndefined.js";
9
+ import { DEFAULT_MIN_SCHEDULE_TRIGGER_INTERVAL, ensureArray, isIntegerLike, isRecord, value } from "@takeshape/util";
10
+ import uniqBy from "lodash/uniqBy.js";
11
+ import initial from "lodash/initial.js";
12
+ import last from "lodash/last.js";
13
+ import get from "lodash/get.js";
14
+ import size from "lodash/size.js";
15
+ import isEqual from "lodash/isEqual.js";
16
+ import pick from "lodash/pick.js";
17
+ import pMap from "p-map";
18
+ import { flatten } from "lodash";
19
+ import { CURRENT_SCHEMA_VERSION, LEGACY_SCHEMA_VERSION, LEGACY_API_VERSION } from "./versions.js";
20
+ import { defaultWorkflow } from "./workflows.js";
21
+ import { allProjectSchemas } from "./schemas/index.js";
22
+ import authSchemas from "./schemas/auth-schemas.json";
23
+ import { getAllRefs } from "./schema-util.js";
24
+ import { builtInShapes } from "./builtin-schema.js";
25
+ import { isValidTemplate } from "./template-shapes/index.js";
26
+ import { isAIResolver, isBasicResolver, isComposeResolver, isExtendsSchema, isObjectSchema } from "./types/utils.js";
27
+ import { refItemToNamespacedShapeName, getRefShapeName, parsePropertyRef, propertyRefItemToResolverPath, createGetNamespace, propertyRefItemToPath, atRefToRefItem, refItemToShape, refItemToAtRef } from "./refs.js";
28
+ import { scalars } from "./scalars.js";
29
+ import { isUnionSchema } from "./unions.js";
30
+ import { isEnumLikeSchema } from "./enum.js";
31
+ import { getRelationship } from "./relationships.js";
32
+ import { legacyProjectSchemaImportOptionalProps, projectSchemaImportOptionalProps } from "./types/types.js";
33
+ import { isLatestProjectSchemaJSON } from "./project-schema/index.js";
34
+ import { getShape } from "./util/shapes.js";
35
+ import { getToolRef } from "./util/ai-tools.js";
36
+ export const builtInShapeNames = new Set([...Object.keys(builtInShapes), ...scalars, "object"]);
37
+ function findDuplicates(items) {
38
+ const seen = {};
39
+ for (const item of items) {
40
+ if (seen[item.value]) {
41
+ seen[item.value].push(item.path);
42
+ }
43
+ else {
44
+ seen[item.value] = [item.path];
45
+ }
46
+ }
47
+ return Object.entries(seen)
48
+ .filter(entry => entry[1].length > 1)
49
+ .flatMap(entry => ({ value: entry[0], paths: entry[1] }));
50
+ }
51
+ function checkShapeIds(shapes) {
52
+ const items = Object.entries(shapes).map(entry => ({ path: ["shapes", entry[0], "id"], value: entry[1].id }));
53
+ return findDuplicates(items).flatMap(dupe => dupe.paths.map(path => ({
54
+ path,
55
+ type: "conflict",
56
+ message: `Shapes must have unique ids. "${dupe.value}" is not unique.`
57
+ })));
58
+ }
59
+ function checkShapeNames(shapes) {
60
+ Object.entries(shapes).map(entry => ({ path: ["shapes", entry[0], "id"], value: entry[1].id }));
61
+ return Object.entries(shapes)
62
+ .filter(([name, shape]) => name !== shape.name)
63
+ .map(([name, shape]) => ({
64
+ path: ["shapes", name, "name"],
65
+ type: "conflict",
66
+ message: `Shape.name "${shape.name}" must match key "${name}".`
67
+ }));
68
+ }
69
+ function checkWorkflowStepNames(workflows) {
70
+ return Object.entries(workflows).flatMap(([name, workflow]) => {
71
+ const items = workflow.steps.map((step, i) => ({
72
+ path: ["workflows", name, "steps", i, "name"],
73
+ value: step.name.toLowerCase()
74
+ }));
75
+ return findDuplicates(items).flatMap(dupe => dupe.paths.map(path => ({
76
+ path,
77
+ type: "conflict",
78
+ message: `Workflow steps must have unique names. "${dupe.value}" is not unique in workflow "${workflow.name}."`
79
+ })));
80
+ });
81
+ }
82
+ function checkWorkflowStepKeys(workflows) {
83
+ const items = Object.entries(workflows).flatMap(([name, workflow]) => workflow.steps.map((step, i) => ({ path: ["workflows", name, "steps", i, "key"], value: step.key })));
84
+ return findDuplicates(items).flatMap(dupe => dupe.paths.map(path => ({
85
+ path,
86
+ type: "conflict",
87
+ message: `Workflow keys must be unique at the schema level. Key "${dupe.value}" is not unique.`
88
+ })));
89
+ }
90
+ function validateWorkflowVersion(projectSchema) {
91
+ const errors = [];
92
+ if (projectSchema.apiVersion === LEGACY_API_VERSION && Object.keys(projectSchema.workflows).length) {
93
+ errors.push({
94
+ path: ["workflows"],
95
+ type: "invalidVersion",
96
+ message: `apiVersion ${projectSchema.apiVersion} does not support workflows`
97
+ });
98
+ }
99
+ return errors;
100
+ }
101
+ function validateWorkflows(projectSchema) {
102
+ const errors = validateWorkflowVersion(projectSchema);
103
+ for (const name of Object.keys(projectSchema.shapes)) {
104
+ const shape = projectSchema.shapes[name];
105
+ if (shape.workflow && shape.workflow !== defaultWorkflow.name && !projectSchema.workflows[shape.workflow]) {
106
+ errors.push({
107
+ type: "notFound",
108
+ path: ["shapes", name, "workflow"],
109
+ message: `Invalid Workflow "${shape.workflow}" for shape "${shape.name}"`
110
+ });
111
+ }
112
+ }
113
+ return errors;
114
+ }
115
+ function getSemver(schemaVersion) {
116
+ return coerce(schemaVersion) ?? LEGACY_SCHEMA_VERSION;
117
+ }
118
+ function pushErrors(errors, error) {
119
+ if (error) {
120
+ errors.push(error);
121
+ }
122
+ }
123
+ function enumerateBasicResolvers(resolver, path) {
124
+ const results = [];
125
+ const visit = (resolver, path) => {
126
+ if (isComposeResolver(resolver)) {
127
+ resolver.compose.forEach((resolver, i) => {
128
+ visit(resolver, [...path, "compose", i]);
129
+ });
130
+ }
131
+ else {
132
+ results.push([resolver, path]);
133
+ }
134
+ };
135
+ visit(resolver, path);
136
+ return results;
137
+ }
138
+ const validateAIToolConfig = (projectSchema, getNamespace, tool, basePath) => {
139
+ const toolRef = getToolRef(tool);
140
+ const path = typeof tool === "string" ? basePath : basePath.concat("ref");
141
+ const parsed = parsePropertyRef(toolRef);
142
+ if (!parsed) {
143
+ return {
144
+ type: "conflict",
145
+ path,
146
+ message: `Unable to parse property ref "${toolRef}"`
147
+ };
148
+ }
149
+ if (parsed.serviceId !== "local") {
150
+ return;
151
+ }
152
+ const propertyPath = propertyRefItemToPath(getNamespace, parsed);
153
+ if (propertyPath[0] !== "queries" && propertyPath[0] !== "mutations") {
154
+ return {
155
+ type: "conflict",
156
+ path,
157
+ message: `Tools must be a query or mutation`
158
+ };
159
+ }
160
+ const property = get(projectSchema, propertyPath);
161
+ if (!property) {
162
+ return {
163
+ type: "notFound",
164
+ path,
165
+ message: `Missing tool ${propertyPath[0] === "queries" ? "query" : "mutation"} "${toolRef}"`
166
+ };
167
+ }
168
+ };
169
+ function validateResolver(projectSchema, basePath, baseResolver) {
170
+ const errors = [];
171
+ const isValidShapeName = (shapeName) => {
172
+ if (!shapeName) {
173
+ return false;
174
+ }
175
+ const shape = getShape(projectSchema, shapeName) ?? getShape({ shapes: builtInShapes }, shapeName);
176
+ if (shape?.model) {
177
+ return true;
178
+ }
179
+ return Boolean(shape?.cache?.enabled && shape.loaders);
180
+ };
181
+ const validateDeletgateResolver = (resolver, path) => {
182
+ const parsed = parsePropertyRef(resolver.to);
183
+ if (!parsed) {
184
+ return {
185
+ type: "conflict",
186
+ path: path.concat("to"),
187
+ message: `Unable to parse property ref "${resolver.to}"`
188
+ };
189
+ }
190
+ if (parsed.serviceId !== "local") {
191
+ return;
192
+ }
193
+ const targetResolver = get(projectSchema, propertyRefItemToResolverPath(getNamespace, parsed));
194
+ if (!isBasicResolver(targetResolver) && !isComposeResolver(targetResolver)) {
195
+ return {
196
+ type: "notFound",
197
+ path: basePath.concat("to"),
198
+ message: `Missing resolver config at property ref "${resolver.to}"`
199
+ };
200
+ }
201
+ };
202
+ const validateAITGuardrail = (guardrail, basePath) => {
203
+ if (guardrail.name === "similarity") {
204
+ if (!isValidShapeName(guardrail.shape)) {
205
+ return {
206
+ type: "notFound",
207
+ path: basePath.concat("shape"),
208
+ message: `Invalid shape "${guardrail.shape}" for ${guardrail.shape}, must use an indexed shape`
209
+ };
210
+ }
211
+ }
212
+ };
213
+ const validateAIGenerateTextResolver = (resolver, path) => {
214
+ if (resolver.tools) {
215
+ for (let i = 0, n = resolver.tools.length; i < n; i++) {
216
+ pushErrors(errors, validateAIToolConfig(projectSchema, getNamespace, resolver.tools[i], path.concat(["tools", i])));
217
+ }
218
+ }
219
+ if (resolver.guardrails) {
220
+ for (let i = 0, n = resolver.guardrails.length; i < n; i++) {
221
+ pushErrors(errors, validateAITGuardrail(resolver.guardrails[i], path.concat(["guardrails", i])));
222
+ }
223
+ }
224
+ const { toolChoice } = resolver.options ?? {};
225
+ if (toolChoice === "required") {
226
+ if (!resolver.tools?.length) {
227
+ errors.push({
228
+ type: "notFound",
229
+ path: path.concat(["options", "toolChoice"]),
230
+ message: `Must have at least one tool configured to specify "required"`
231
+ });
232
+ }
233
+ }
234
+ else if (toolChoice && toolChoice !== "auto" && toolChoice !== "none") {
235
+ const parsed = parsePropertyRef(toolChoice);
236
+ if (parsed) {
237
+ const matchingTool = resolver.tools?.find(tool => isEqual(parsed, parsePropertyRef(getToolRef(tool))));
238
+ if (!matchingTool) {
239
+ errors.push({
240
+ type: "notFound",
241
+ path: path.concat(["options", "toolChoice"]),
242
+ message: `Missing tool "${toolChoice}" must be specified in "tools" array`
243
+ });
244
+ }
245
+ }
246
+ else {
247
+ errors.push({
248
+ type: "conflict",
249
+ path: path.concat(["options", "toolChoice"]),
250
+ message: `Unable to parse property ref "${toolChoice}"`
251
+ });
252
+ }
253
+ }
254
+ };
255
+ const getNamespace = createGetNamespace(projectSchema);
256
+ for (const [resolver, path] of enumerateBasicResolvers(baseResolver, basePath)) {
257
+ if (isBasicResolver(resolver)) {
258
+ if ("service" in resolver &&
259
+ resolver.service !== "shapedb" &&
260
+ resolver.service !== "takeshape" &&
261
+ !projectSchema.services?.[resolver.service]) {
262
+ errors.push({
263
+ type: "notFound",
264
+ path: path.concat(["service"]),
265
+ message: `Invalid service "${resolver.service}"`
266
+ });
267
+ }
268
+ if (resolver.shapeName) {
269
+ const { shapeName } = resolver;
270
+ if (!isValidShapeName(shapeName)) {
271
+ errors.push({
272
+ type: "notFound",
273
+ path: path.concat(["shapeName"]),
274
+ message: `Invalid Model Shape "${shapeName ?? ""}"`
275
+ });
276
+ }
277
+ }
278
+ if (resolver.name === "delegate") {
279
+ pushErrors(errors, validateDeletgateResolver(resolver, path));
280
+ }
281
+ else if (isAIResolver(resolver)) {
282
+ validateAIGenerateTextResolver(resolver, path);
283
+ }
284
+ }
285
+ else {
286
+ errors.push({
287
+ type: "notFound",
288
+ path,
289
+ message: `Invalid resolver`
290
+ });
291
+ }
292
+ }
293
+ return errors;
294
+ }
295
+ function validateLocalQueryConfig(projectSchema, query, operation, name) {
296
+ const location = operation === "query" ? "queries" : "mutations";
297
+ return validateResolver(projectSchema, [location, name, "resolver"], query.resolver);
298
+ }
299
+ const operationProps = [["query", "queries"], ["mutation", "mutations"]];
300
+ function validateLocalQueryConfigs(projectSchema) {
301
+ const errors = [];
302
+ for (const [operation, prop] of operationProps) {
303
+ for (const name of Object.keys(projectSchema[prop])) {
304
+ errors.push(...validateLocalQueryConfig(projectSchema, projectSchema[prop][name], operation, name));
305
+ }
306
+ }
307
+ return errors;
308
+ }
309
+ function allowDisconnected(context, status) {
310
+ return Boolean(context.allowDisconnectedLayers) && status !== "notAvailable";
311
+ }
312
+ function isValidShapeReference(context, layerState, shapeName) {
313
+ if (layerState.status !== "ok") {
314
+ return allowDisconnected(context, layerState.status);
315
+ }
316
+ return Boolean(layerState.schema.shapes[shapeName]);
317
+ }
318
+ async function validateResolverReferences(context, projectSchema, basePath, baseResolver) {
319
+ const errors = [];
320
+ const isInvalidPropertyRef = async (refStr) => {
321
+ const ref = parsePropertyRef(refStr);
322
+ // ref string format and local refs are validated in validateResolver()
323
+ if (!ref || ref.serviceId === "local") {
324
+ return false;
325
+ }
326
+ const layerState = await context.resolveLayer(ref.serviceId);
327
+ return layerState.status === "ok"
328
+ ? !get(layerState.schema, propertyRefItemToPath(value(""), ref))
329
+ : !allowDisconnected(context, layerState.status);
330
+ };
331
+ await pMap(enumerateBasicResolvers(baseResolver, basePath), async ([resolver, path]) => {
332
+ if (resolver.name === "graphql:query" || resolver.name === "graphql:mutation") {
333
+ const { service, fieldName } = resolver;
334
+ const prop = resolver.name === "graphql:query" ? "queries" : "mutations";
335
+ const layerState = await context.resolveLayer(service);
336
+ const valid = layerState.status === "ok"
337
+ ? Boolean(layerState.schema[prop][fieldName])
338
+ : allowDisconnected(context, layerState.status);
339
+ if (!valid) {
340
+ const operation = resolver.name === "graphql:query" ? "query" : "mutation";
341
+ errors.push({
342
+ type: "notFound",
343
+ path: path.concat("fieldName"),
344
+ message: `Missing ${operation} "${resolver.fieldName}" in service layer "${service}"`
345
+ });
346
+ }
347
+ }
348
+ else if (resolver.name === "delegate") {
349
+ if (await isInvalidPropertyRef(resolver.to)) {
350
+ errors.push({
351
+ type: "notFound",
352
+ path: path.concat("to"),
353
+ message: `Missing resolver config at property ref "${resolver.to}"`
354
+ });
355
+ }
356
+ }
357
+ else if (isAIResolver(resolver)) {
358
+ if (resolver.tools) {
359
+ await pMap(resolver.tools, async (tool, i) => {
360
+ const toolRef = getToolRef(tool);
361
+ if (await isInvalidPropertyRef(toolRef)) {
362
+ errors.push({
363
+ type: "notFound",
364
+ path: path.concat(typeof tool === "string" ? ["tools", i] : ["tools", i, "ref"]),
365
+ message: `Invalid ref "${toolRef}"`
366
+ });
367
+ }
368
+ });
369
+ }
370
+ }
371
+ });
372
+ return errors;
373
+ }
374
+ async function validateQueryConfig(context, projectSchema, { query, name, operation }) {
375
+ const location = operation === "query" ? "queries" : "mutations";
376
+ return validateResolverReferences(context, projectSchema, [location, name, "resolver"], query.resolver);
377
+ }
378
+ async function validateQueryConfigs(context, projectSchema) {
379
+ const isLessThanV3_9_0 = lt(getSemver(projectSchema.schemaVersion), "3.9.0");
380
+ if (isLessThanV3_9_0) {
381
+ return [];
382
+ }
383
+ const promises = [];
384
+ for (const [operation, prop] of operationProps) {
385
+ for (const name of Object.keys(projectSchema[prop])) {
386
+ promises.push(validateQueryConfig(context, projectSchema, {
387
+ query: projectSchema[prop][name],
388
+ operation,
389
+ name
390
+ }));
391
+ }
392
+ }
393
+ return flatten(await Promise.all(promises));
394
+ }
395
+ function listShapeJoins(projectSchema) {
396
+ const joins = [];
397
+ for (const shapeKey of Object.keys(projectSchema.shapes)) {
398
+ const shape = projectSchema.shapes[shapeKey];
399
+ if (shape.joins) {
400
+ for (const joinRef of Object.keys(shape.joins)) {
401
+ const join = shape.joins[joinRef];
402
+ joins.push({ ref: joinRef, path: ["shapes", shapeKey, "joins", joinRef], join });
403
+ }
404
+ }
405
+ }
406
+ return joins;
407
+ }
408
+ function validateLocalShapeJoinRef(projectSchema, item) {
409
+ const refItem = atRefToRefItem(projectSchema, item.ref);
410
+ if (refItem.serviceKey === "local") {
411
+ const shape = refItemToShape(projectSchema, refItem);
412
+ if (!shape) {
413
+ return [
414
+ {
415
+ type: "notFound",
416
+ path: item.path,
417
+ message: `Invalid join "${item.ref}" not found`
418
+ }
419
+ ];
420
+ }
421
+ }
422
+ return [];
423
+ }
424
+ function validateLocalShapeJoins(projectSchema) {
425
+ return listShapeJoins(projectSchema).flatMap(item => validateLocalShapeJoinRef(projectSchema, item).concat(validateResolver(projectSchema, item.path.concat("resolver"), item.join.resolver)));
426
+ }
427
+ async function validateShapeJoinRef(context, projectSchema, item) {
428
+ const refItem = atRefToRefItem(projectSchema, item.ref);
429
+ if (refItem) {
430
+ const layer = await context.resolveLayer(refItem.serviceKey);
431
+ const valid = isValidRef(context, projectSchema, layer, refItem);
432
+ if (!valid) {
433
+ return [
434
+ {
435
+ type: "notFound",
436
+ path: item.path,
437
+ message: `Invalid join "${item.ref}" not found`
438
+ }
439
+ ];
440
+ }
441
+ }
442
+ return [];
443
+ }
444
+ async function validateShapeJoins(context, projectSchema) {
445
+ const promises = [];
446
+ for (const item of listShapeJoins(projectSchema)) {
447
+ promises.push(validateShapeJoinRef(context, projectSchema, item), validateResolverReferences(context, projectSchema, item.path, item.join.resolver));
448
+ }
449
+ return flatten(await Promise.all(promises));
450
+ }
451
+ function validateShapeLoaders(context, projectSchema, shape) {
452
+ const errors = [];
453
+ if (shape.loaders) {
454
+ const getNamespace = createGetNamespace(projectSchema);
455
+ const listLoader = shape.loaders.list;
456
+ if (listLoader) {
457
+ ensureArray(listLoader).forEach((config, i) => {
458
+ const ref = parsePropertyRef(config.query);
459
+ const query = ref && get(projectSchema, propertyRefItemToPath(getNamespace, ref));
460
+ if (!query) {
461
+ errors.push({
462
+ path: Array.isArray(listLoader)
463
+ ? ["shapes", shape.name, "loaders", "list", i, "query"]
464
+ : ["shapes", shape.name, "loaders", "list", "query"],
465
+ type: "notFound",
466
+ message: `Invalid query "${config.query}"`
467
+ });
468
+ }
469
+ });
470
+ }
471
+ const getLoader = shape.loaders.get;
472
+ if (getLoader) {
473
+ const ref = parsePropertyRef(getLoader.query);
474
+ const query = ref && get(projectSchema, propertyRefItemToPath(getNamespace, ref));
475
+ if (!query) {
476
+ errors.push({
477
+ path: ["shapes", shape.name, "loaders", "get", "query"],
478
+ type: "notFound",
479
+ message: `Invalid query "${getLoader.query}"`
480
+ });
481
+ }
482
+ }
483
+ }
484
+ if (shape.cache?.triggers) {
485
+ const min = context.entitlements?.minScheduleTriggerInterval ?? DEFAULT_MIN_SCHEDULE_TRIGGER_INTERVAL;
486
+ for (let i = 0; i < shape.cache.triggers.length; i++) {
487
+ const trigger = shape.cache.triggers[i];
488
+ if (trigger.type === "schedule" && trigger.interval < min) {
489
+ errors.push({
490
+ path: ["shapes", shape.name, "cache", "triggers", i, "interval"],
491
+ type: "entitlement",
492
+ message: `Trigger interval ${trigger.interval} is below minimum ${min}`
493
+ });
494
+ }
495
+ }
496
+ }
497
+ return errors;
498
+ }
499
+ function visitProperties(projectSchema, callback) {
500
+ JSONPath("$..properties.*", projectSchema, (property, _type, { path: propertyPath }) => {
501
+ callback(property, propertyPath.slice(3, -2).split(`']['`));
502
+ }, undefined);
503
+ }
504
+ function validateIndexedShapes(context, projectSchema) {
505
+ const errors = [];
506
+ const { shapes } = projectSchema;
507
+ for (const shape of Object.values(shapes)) {
508
+ const newErrors = validateShapeLoaders(context, projectSchema, shape);
509
+ if (newErrors.length) {
510
+ errors.push(...newErrors);
511
+ }
512
+ }
513
+ let nestedCount = 0;
514
+ visitProperties(projectSchema, (property, propertyPath) => {
515
+ const indexed = property["@indexed"];
516
+ if (isRecord(indexed) && indexed.nested) {
517
+ nestedCount += 1;
518
+ if (property.type !== "array") {
519
+ errors.push({
520
+ path: propertyPath,
521
+ type: "location",
522
+ message: "Nested indexes may only appear next to fields of type: \"array\""
523
+ });
524
+ }
525
+ }
526
+ });
527
+ if (nestedCount > 50) {
528
+ errors.push({
529
+ path: ["shapes"],
530
+ type: "tooMany",
531
+ message: `${nestedCount} nested indexes found`
532
+ });
533
+ }
534
+ return errors;
535
+ }
536
+ /**
537
+ * Verify the path has an allOf schema and not just prop named "allOf"
538
+ */
539
+ function isAllOfPath(path) {
540
+ const index = path.indexOf("allOf");
541
+ return index !== -1 && isIntegerLike(path[index + 1]);
542
+ }
543
+ function validateLocalRefs(projectSchema) {
544
+ const errors = [];
545
+ const shapeNames = new Set([...builtInShapeNames, ...Object.keys(projectSchema.shapes)]);
546
+ const refs = getAllRefs(projectSchema).filter(item => !item.isForeign);
547
+ for (const item of refs) {
548
+ if (item.template && !isValidTemplate(item.template)) {
549
+ errors.push({
550
+ type: "notFound",
551
+ path: item.path,
552
+ message: `Invalid template "${item.template}"`
553
+ });
554
+ }
555
+ const shapeName = refItemToNamespacedShapeName(item);
556
+ if (!shapeNames.has(shapeName)) {
557
+ const invalidRef = get(projectSchema, item.path);
558
+ const path = invalidRef.items ? [...item.path, "items", "@ref"] : item.path;
559
+ const ref = get(projectSchema, path);
560
+ errors.push({
561
+ type: "notFound",
562
+ path,
563
+ message: `Invalid ref "${ref}"`
564
+ });
565
+ }
566
+ // Make sure refs inside allOf don't refer to their own Shape
567
+ if (item.path[1] === shapeName && isAllOfPath(item.path)) {
568
+ errors.push({
569
+ type: "conflict",
570
+ path: item.path,
571
+ message: `allOf cannot be self-referential`
572
+ });
573
+ }
574
+ const parentPath = initial(item.path);
575
+ const parentSchema = get(projectSchema, parentPath);
576
+ const propName = last(item.path);
577
+ if (propName === "@ref" && parentSchema.$ref) {
578
+ errors.push({
579
+ type: "conflict",
580
+ path: parentPath,
581
+ message: `Ref cannot have both @ref and $ref`
582
+ });
583
+ }
584
+ }
585
+ return errors;
586
+ }
587
+ function isValidRef(context, projectSchema, layer, item) {
588
+ const { serviceKey: layerId } = item;
589
+ const shapeName = refItemToNamespacedShapeName(item);
590
+ const localShapeExists = Boolean(projectSchema.shapes[shapeName]) || builtInShapeNames.has(shapeName);
591
+ return (item.isValidService &&
592
+ (layerId === "local" ? localShapeExists : localShapeExists || isValidShapeReference(context, layer, shapeName)));
593
+ }
594
+ function mustBeInterface({ path }) {
595
+ return path[0] === "shapes" && path[2] === "interfaces";
596
+ }
597
+ async function validateRefs(context, projectSchema) {
598
+ const { resolveLayer } = context;
599
+ const errors = [];
600
+ const refs = getAllRefs(projectSchema);
601
+ const layerIds = new Set();
602
+ for (const item of refs) {
603
+ if (item.serviceKey !== "local") {
604
+ layerIds.add(item.serviceKey);
605
+ }
606
+ }
607
+ const layersById = Object.fromEntries(await pMap(layerIds, async (layerId) => [layerId, await resolveLayer(layerId)]));
608
+ for (const item of refs) {
609
+ if (item.template && !isValidTemplate(item.template)) {
610
+ errors.push({
611
+ type: "notFound",
612
+ path: item.path,
613
+ message: `Invalid template "${item.path}"`
614
+ });
615
+ }
616
+ const { serviceKey: layerId } = item;
617
+ const layer = layersById[layerId];
618
+ const valid = isValidRef(context, projectSchema, layer, item);
619
+ if (!valid) {
620
+ errors.push({
621
+ type: "notFound",
622
+ path: item.path,
623
+ message: `Invalid ref "${get(projectSchema, item.path)}"`
624
+ });
625
+ }
626
+ else if (mustBeInterface(item) && (layerId === "local" || layer?.status === "ok")) {
627
+ // only validate interfaces with connected layers isValidRef above handles when allowDisconnectedLayers false
628
+ const context = layer?.schema ?? projectSchema;
629
+ const shape = get(context, item.path.slice(0, 2));
630
+ errors.push(...validateShapeImplementsInterface(context, shape, item, item.path));
631
+ }
632
+ }
633
+ return errors;
634
+ }
635
+ function visitShapePropertiesJson(projectSchema, callback) {
636
+ JSONPath("shapes.*.schema.properties.*", projectSchema, (property, _type, { path: propertyPath }) => {
637
+ callback(property, propertyPath.slice(3, -2).split(`']['`));
638
+ }, undefined);
639
+ }
640
+ function validateDirectives(projectSchema) {
641
+ const errors = [];
642
+ visitShapePropertiesJson(projectSchema, (property, propertyPath) => {
643
+ const resolver = property["@resolver"];
644
+ if (resolver) {
645
+ const propPath = propertyPath.concat("@resolver");
646
+ const resolverErrors = validateResolver(projectSchema, propPath, resolver);
647
+ if (resolverErrors) {
648
+ errors.push(...resolverErrors);
649
+ }
650
+ }
651
+ });
652
+ return errors;
653
+ }
654
+ function validateOneOfs(projectSchema) {
655
+ const errors = [];
656
+ visitShapePropertiesJson(projectSchema, (property, propertyPath) => {
657
+ const oneOfPath = property.items ? ["items", "oneOf"] : ["oneOf"];
658
+ const relationship = getRelationship(property);
659
+ const schema = (property.items ? property.items : property);
660
+ const isUnion = isUnionSchema(schema);
661
+ if (schema.oneOf && !relationship && !isUnion && !isEnumLikeSchema(schema)) {
662
+ errors.push({
663
+ type: "conflict",
664
+ path: propertyPath.concat(oneOfPath),
665
+ message: `Invalid oneOf must contain only @ref or title + enum/const schemas`
666
+ });
667
+ }
668
+ if (isUnion &&
669
+ schema.oneOf.length !== uniqBy(schema.oneOf, refSchema => getRefShapeName(projectSchema, refSchema)).length) {
670
+ errors.push({
671
+ type: "conflict",
672
+ path: propertyPath.concat(oneOfPath),
673
+ message: `Invalid oneOf must not contain duplicate references`
674
+ });
675
+ }
676
+ });
677
+ return errors;
678
+ }
679
+ function validateLocales(projectSchema) {
680
+ const { locales, defaultLocale } = projectSchema;
681
+ const errors = [];
682
+ if (locales && !locales.includes(defaultLocale)) {
683
+ errors.push({
684
+ type: "notFound",
685
+ path: ["locales"],
686
+ message: `Default locale "${defaultLocale}" missing from locales`
687
+ });
688
+ }
689
+ return errors;
690
+ }
691
+ const importantFields = ["type", "@ref", "allOf", "oneOf", "anyOf", "extends", "items", "@tag"];
692
+ function isSchemaEqual(a, b) {
693
+ return isEqual(pick(a, importantFields), pick(b, importantFields));
694
+ }
695
+ function matchesInterface(shape, interfaceShape, path) {
696
+ const errors = [];
697
+ const { schema } = shape;
698
+ const interfaceSchema = interfaceShape.schema;
699
+ for (const name of Object.keys(interfaceSchema.properties)) {
700
+ const propSchema = schema.properties[name];
701
+ const interfacePropSchema = interfaceSchema.properties[name];
702
+ if (!propSchema) {
703
+ errors.push({
704
+ type: "notFound",
705
+ path,
706
+ message: `"${shape.name}" is missing property "${name}" required by interface "${interfaceShape.name}"`
707
+ });
708
+ }
709
+ else if (!isSchemaEqual(propSchema, interfacePropSchema)) {
710
+ errors.push({
711
+ type: "conflict",
712
+ path: [...path, name],
713
+ message: `"${shape.name}.${name}" must match "${interfaceShape.name}.${name}"`
714
+ });
715
+ }
716
+ else {
717
+ const propRequired = Boolean(schema.required?.includes(name));
718
+ const interfacePropRequired = Boolean(interfaceSchema.required?.includes(name));
719
+ if (interfacePropRequired !== propRequired) {
720
+ errors.push({
721
+ type: "conflict",
722
+ path: [...path, name],
723
+ message: `"${shape.name}.${name}" must ${interfacePropRequired ? "" : "not "}be required to match "${interfaceShape.name}.${name}"`
724
+ });
725
+ }
726
+ }
727
+ }
728
+ return errors;
729
+ }
730
+ function validateShapeImplementsInterface(projectSchema, shape, interfaceRefItem, path) {
731
+ const errors = [];
732
+ const interfaceShape = refItemToShape(projectSchema, interfaceRefItem);
733
+ if (!interfaceShape) {
734
+ errors.push({
735
+ type: "notFound",
736
+ path,
737
+ message: `Invalid interface "${refItemToAtRef(interfaceRefItem)}" not found`
738
+ });
739
+ }
740
+ else if (interfaceShape.type !== "interface") {
741
+ errors.push({
742
+ type: "conflict",
743
+ path,
744
+ message: `"${shape.name}" cannot implement non-interface "${interfaceShape.name}"`
745
+ });
746
+ }
747
+ else if (isExtendsSchema(shape.schema)) {
748
+ // TODO stricter extends validation needs https://app.shortcut.com/takeshape/story/9783/use-service-schemas-during-schema-validation
749
+ }
750
+ else if (isObjectSchema(shape.schema) && isObjectSchema(interfaceShape.schema)) {
751
+ const matchErrors = matchesInterface(shape, interfaceShape, [
752
+ "shapes",
753
+ shape.name,
754
+ "schema",
755
+ "properties"
756
+ ]);
757
+ if (matchErrors.length) {
758
+ errors.push(...matchErrors);
759
+ }
760
+ }
761
+ return errors;
762
+ }
763
+ function validateInterfaceImplementations(projectSchema) {
764
+ const errors = [];
765
+ for (const shape of Object.values(projectSchema.shapes)) {
766
+ if (shape.interfaces?.length) {
767
+ if (!isObjectSchema(shape.schema) && !isExtendsSchema(shape.schema)) {
768
+ return [
769
+ {
770
+ path: ["shapes", shape.name, "schema"],
771
+ type: "conflict",
772
+ message: `"${shape.name}" must have an object or extends schema to implement interfaces`
773
+ }
774
+ ];
775
+ }
776
+ }
777
+ }
778
+ return errors;
779
+ }
780
+ function validateAgents(projectSchema) {
781
+ const getNamespace = createGetNamespace(projectSchema);
782
+ const errors = [];
783
+ const agents = projectSchema["ai-experimental"]?.agents;
784
+ if (!agents) {
785
+ return errors;
786
+ }
787
+ for (const [agentName, agent] of Object.entries(agents)) {
788
+ const stateNames = new Set();
789
+ for (const [stateId, state] of Object.entries(agent.states)) {
790
+ const statePath = ["ai-experimental", "agents", agentName, "states", stateId];
791
+ if (stateNames.has(state.name)) {
792
+ errors.push({
793
+ path: [...statePath, "name"],
794
+ type: "conflict",
795
+ message: `Duplicate state name "${state.name}"`
796
+ });
797
+ }
798
+ else {
799
+ stateNames.add(state.name);
800
+ }
801
+ if (state.execution.type === "generate" || state.execution.type === "chat") {
802
+ if (!state.execution.tools) {
803
+ continue;
804
+ }
805
+ state.execution.tools.forEach((tool, toolIndex) => {
806
+ pushErrors(errors, validateAIToolConfig(projectSchema, getNamespace, tool, [
807
+ ...statePath,
808
+ "execution",
809
+ "tools",
810
+ toolIndex,
811
+ "ref"
812
+ ]));
813
+ });
814
+ }
815
+ }
816
+ }
817
+ return errors;
818
+ }
819
+ function validateInterfaces(projectSchema) {
820
+ const errors = [];
821
+ // Validate interface shapes must be an object schema with at least one property
822
+ for (const shape of Object.values(projectSchema.shapes)) {
823
+ if (shape.type === "interface") {
824
+ if (shape.model) {
825
+ errors.push({
826
+ path: ["shapes", shape.name, "model"],
827
+ type: "conflict",
828
+ message: `"${shape.name}" may not be both an interface and model. Create a separate model shape which implements this interface.`
829
+ });
830
+ }
831
+ else if (isObjectSchema(shape.schema)) {
832
+ if (size(shape.schema.properties) === 0) {
833
+ errors.push({
834
+ path: ["shapes", shape.name, "schema", "properties"],
835
+ type: "conflict",
836
+ message: `Interface "${shape.name}" must define at least one property`
837
+ });
838
+ }
839
+ }
840
+ else {
841
+ errors.push({
842
+ path: ["shapes", shape.name, "schema"],
843
+ type: "conflict",
844
+ message: `Interface "${shape.name}" must define an object schema`
845
+ });
846
+ }
847
+ }
848
+ }
849
+ return errors;
850
+ }
851
+ export function formatError(error) {
852
+ let pathStr = error.instancePath;
853
+ let message = error.message ?? "";
854
+ if ("missingProperty" in error.params) {
855
+ pathStr = `${pathStr}.${error.params.missingProperty}`;
856
+ }
857
+ if ("additionalProperty" in error.params) {
858
+ pathStr = `${pathStr}.${error.params.additionalProperty}`;
859
+ message = `${message} "${error.params.additionalProperty}"`;
860
+ }
861
+ if ("allowedValues" in error.params) {
862
+ message = `${message} "${error.params.allowedValues.join("\", \"")}"`;
863
+ }
864
+ const path = pathStr === "" ? [] : pathStr.substr(1).split(/\.|\/|\['|']\./);
865
+ return {
866
+ type: "json",
867
+ message,
868
+ path
869
+ };
870
+ }
871
+ function isValidateReferencesContext(context) {
872
+ return Boolean(context.resolveLayer);
873
+ }
874
+ const ajv = createAjv();
875
+ function validateStructure(schemaVersion, context, schema, ref) {
876
+ const coerced = coerce(schemaVersion);
877
+ const versionStr = coerced?.format();
878
+ const hasExperimental = Boolean(coerced && gte(coerced, "3.48.0"));
879
+ const relevantSchemas = allProjectSchemas.filter(metaSchema => (hasExperimental && metaSchema.$id.endsWith("experimental#")) || metaSchema.$id.endsWith(`v${versionStr}#`));
880
+ for (const relevantSchema of relevantSchemas) {
881
+ if (!ajv.getSchema(relevantSchema.$id)) {
882
+ ajv.addSchema(relevantSchema);
883
+ }
884
+ }
885
+ ajv.validate(`https://schema.takeshape.io/project-schema/v${versionStr}#${ref ?? ""}`, schema);
886
+ let errors = ajv.errors?.map(formatError) ?? [];
887
+ const { suppressErrorPaths } = context;
888
+ if (errors.length && suppressErrorPaths) {
889
+ errors = errors.filter(error => {
890
+ return !suppressErrorPaths.includes(error.path.join("."));
891
+ });
892
+ }
893
+ if (errors.length) {
894
+ return {
895
+ valid: false,
896
+ schema: undefined,
897
+ errors
898
+ };
899
+ }
900
+ return { valid: true, schema: schema, errors: undefined };
901
+ }
902
+ function formatValidationResult(context, errors, schema) {
903
+ const { suppressErrorPaths } = context;
904
+ if (suppressErrorPaths) {
905
+ errors = errors.filter(error => {
906
+ return !suppressErrorPaths.includes(error.path.join("."));
907
+ });
908
+ }
909
+ return errors.length ? { valid: false, schema: undefined, errors } : { valid: true, schema, errors: undefined };
910
+ }
911
+ function validateSyntax(context, schema) {
912
+ let errors = [];
913
+ errors = errors
914
+ .concat(checkShapeNames(schema.shapes))
915
+ .concat(checkShapeIds(schema.shapes))
916
+ .concat(validateWorkflows(schema))
917
+ .concat(validateLocalQueryConfigs(schema))
918
+ .concat(validateLocalRefs(schema))
919
+ .concat(validateLocalShapeJoins(schema))
920
+ .concat(validateDirectives(schema))
921
+ .concat(validateLocales(schema))
922
+ .concat(checkWorkflowStepNames(schema.workflows))
923
+ .concat(checkWorkflowStepKeys(schema.workflows))
924
+ .concat(validateOneOfs(schema))
925
+ .concat(validateIndexedShapes(context, schema))
926
+ .concat(validateInterfaces(schema))
927
+ .concat(validateInterfaceImplementations(schema))
928
+ .concat(validateAgents(schema));
929
+ return formatValidationResult(context, errors, schema);
930
+ }
931
+ async function validateReferences(context, schema) {
932
+ const errors = flatten(await Promise.all([
933
+ validateRefs(context, schema),
934
+ validateQueryConfigs(context, schema),
935
+ validateShapeJoins(context, schema)
936
+ ]));
937
+ return formatValidationResult(context, errors, schema);
938
+ }
939
+ const schemaUndefinedResult = {
940
+ valid: false,
941
+ schema: undefined,
942
+ errors: [{ path: [], type: "undefined", message: "Schema is undefined" }]
943
+ };
944
+ const invalidVersionResult = {
945
+ valid: false,
946
+ schema: undefined,
947
+ errors: [{ path: [], type: "invalidVersion", message: "Unknown schema version" }]
948
+ };
949
+ function normalizeSchemaVersion(obj) {
950
+ if (isRecord(obj)) {
951
+ return typeof obj.schemaVersion === "string" ? obj.schemaVersion : "1";
952
+ }
953
+ }
954
+ export function validateSchemaSyntax(obj, options = {}) {
955
+ if (isUndefined(obj)) {
956
+ return schemaUndefinedResult;
957
+ }
958
+ const schemaVersion = normalizeSchemaVersion(obj);
959
+ if (!schemaVersion) {
960
+ return invalidVersionResult;
961
+ }
962
+ return validateStructure(schemaVersion, options, obj);
963
+ }
964
+ /**
965
+ * Validates a schema using a matching validation based on the `schemaVersion` property.
966
+ */
967
+ export async function validateSchema(context, obj) {
968
+ if (isUndefined(obj)) {
969
+ return schemaUndefinedResult;
970
+ }
971
+ const contextWithDefaults = {
972
+ allowDisconnectedLayers: true,
973
+ ...context
974
+ };
975
+ const schemaVersion = normalizeSchemaVersion(obj);
976
+ if (!schemaVersion) {
977
+ return invalidVersionResult;
978
+ }
979
+ const structuralValidation = validateStructure(schemaVersion, contextWithDefaults, obj);
980
+ if (!structuralValidation.valid) {
981
+ return structuralValidation;
982
+ }
983
+ const { schema } = structuralValidation;
984
+ if (!isLatestProjectSchemaJSON(schema)) {
985
+ return invalidVersionResult;
986
+ }
987
+ const syntaxValidation = validateSyntax(contextWithDefaults, schema);
988
+ if (!syntaxValidation.valid || !isValidateReferencesContext(contextWithDefaults)) {
989
+ return syntaxValidation;
990
+ }
991
+ return validateReferences(contextWithDefaults, schema);
992
+ }
993
+ export function ensureValidLatestSchemaSyntax(obj) {
994
+ const { valid, schema, errors } = validateSchemaSyntax(obj);
995
+ if (!valid && errors) {
996
+ throw new Error(`Invalid Schema "${errors[0].path.join(",")}": "${errors[0].message}"`);
997
+ }
998
+ if (isUndefined(schema)) {
999
+ throw new Error(`Invalid schema: schema is undefined`);
1000
+ }
1001
+ if (neq(CURRENT_SCHEMA_VERSION, coerce(schema.schemaVersion) ?? LEGACY_SCHEMA_VERSION)) {
1002
+ throw new Error(`Expected schemaVersion: "${CURRENT_SCHEMA_VERSION}", got "${schema.schemaVersion}"`);
1003
+ }
1004
+ return schema;
1005
+ }
1006
+ /**
1007
+ * The roles import validator ensures required properties, and strips several
1008
+ * which might exist in an export but wouldn't apply to an import operation.
1009
+ */
1010
+ function createRoleInputValidator() {
1011
+ const validator = createAjv({ useDefaults: true, removeAdditional: true });
1012
+ const { RoleInput, ...definitions } = authSchemas.definitions;
1013
+ return validator.compile({
1014
+ $id: "RoleInput",
1015
+ definitions,
1016
+ ...RoleInput
1017
+ });
1018
+ }
1019
+ /**
1020
+ * Validates and returns a `RoleInput`, which is a subset of the `Role`
1021
+ * type's properties suitable for importing.
1022
+ */
1023
+ export function validateRoleInput(maybeRoleInput) {
1024
+ const validate = createRoleInputValidator();
1025
+ if (validate(maybeRoleInput)) {
1026
+ return maybeRoleInput;
1027
+ }
1028
+ throw new SchemaValidationError("RoleInput was invalid", validate.errors?.map(formatError));
1029
+ }
1030
+ /**
1031
+ * The roles import validator ensures required properties, and strips several
1032
+ * which might exist in an export but wouldn't apply to an import operation.
1033
+ */
1034
+ function createRoleImportValidator() {
1035
+ const validator = createAjv({ useDefaults: true, removeAdditional: true });
1036
+ const { RoleImport, ...definitions } = authSchemas.definitions;
1037
+ return validator.compile({
1038
+ $id: "RoleImport",
1039
+ definitions,
1040
+ ...RoleImport
1041
+ });
1042
+ }
1043
+ /**
1044
+ * Validates and returns a `RoleImport` array, which is a collection of `RoleInput`s.
1045
+ */
1046
+ export function ensureValidRoleImport(maybeRoles) {
1047
+ const validate = createRoleImportValidator();
1048
+ if (validate(maybeRoles)) {
1049
+ return maybeRoles;
1050
+ }
1051
+ throw new SchemaValidationError("Roles were invalid", validate.errors?.map(formatError));
1052
+ }
1053
+ /**
1054
+ * Only use when validating an imported schema! ignore fields optional when importing
1055
+ */
1056
+ export function validateProjectSchemaImport(maybeSchema) {
1057
+ return validateSchemaSyntax(maybeSchema, {
1058
+ suppressErrorPaths: [...projectSchemaImportOptionalProps, ...legacyProjectSchemaImportOptionalProps]
1059
+ });
1060
+ }
1061
+ /**
1062
+ * Only use when validating an imported schema!
1063
+ *
1064
+ * New style validation for parity with the `validateRoleImport` fn. Returns
1065
+ * a valid, clean `ImportProjectSchema` or throws a `SchemaValidationError`.
1066
+ */
1067
+ export function ensureValidProjectSchemaImport(maybeSchema) {
1068
+ const validateResult = validateProjectSchemaImport(maybeSchema);
1069
+ if (validateResult.valid) {
1070
+ return validateResult.schema;
1071
+ }
1072
+ throw new SchemaValidationError("ProjectSchema could not be validated", validateResult.errors);
1073
+ }