@takeshape/schema 9.47.0 → 9.49.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 (448) hide show
  1. package/dist/content-schema-transform.d.ts +6 -6
  2. package/dist/content-schema-transform.d.ts.map +1 -1
  3. package/dist/create-input-schema.d.ts +2 -2
  4. package/dist/create-input-schema.d.ts.map +1 -1
  5. package/dist/flatten-templates.d.ts +2 -2
  6. package/dist/flatten-templates.d.ts.map +1 -1
  7. package/dist/get-is-leaf.d.ts +2 -2
  8. package/dist/get-is-leaf.d.ts.map +1 -1
  9. package/dist/interfaces.d.ts +6 -6
  10. package/dist/interfaces.d.ts.map +1 -1
  11. package/dist/layers/layers.d.ts +3 -3
  12. package/dist/layers/layers.d.ts.map +1 -1
  13. package/dist/layers/refs.d.ts +4 -4
  14. package/dist/layers/refs.d.ts.map +1 -1
  15. package/dist/migration/index.d.ts +43 -42
  16. package/dist/migration/index.d.ts.map +1 -1
  17. package/dist/migration/index.js +4 -1
  18. package/dist/migration/to/utils/v3.34.0-utils.d.ts +1 -0
  19. package/dist/migration/to/utils/v3.34.0-utils.d.ts.map +1 -0
  20. package/dist/migration/to/utils/v3.34.0-utils.js +1 -0
  21. package/dist/migration/to/v3.0.0.d.ts +2 -2
  22. package/dist/migration/to/v3.0.0.d.ts.map +1 -1
  23. package/dist/migration/to/v3.1.0.d.ts +2 -2
  24. package/dist/migration/to/v3.1.0.d.ts.map +1 -1
  25. package/dist/migration/to/v3.10.0.d.ts +2 -2
  26. package/dist/migration/to/v3.10.0.d.ts.map +1 -1
  27. package/dist/migration/to/v3.11.0.d.ts +2 -2
  28. package/dist/migration/to/v3.11.0.d.ts.map +1 -1
  29. package/dist/migration/to/v3.12.0.d.ts +2 -2
  30. package/dist/migration/to/v3.12.0.d.ts.map +1 -1
  31. package/dist/migration/to/v3.12.1.d.ts +2 -2
  32. package/dist/migration/to/v3.12.1.d.ts.map +1 -1
  33. package/dist/migration/to/v3.12.2.d.ts +2 -2
  34. package/dist/migration/to/v3.12.2.d.ts.map +1 -1
  35. package/dist/migration/to/v3.12.3.d.ts +2 -2
  36. package/dist/migration/to/v3.12.3.d.ts.map +1 -1
  37. package/dist/migration/to/v3.13.0.d.ts +2 -2
  38. package/dist/migration/to/v3.13.0.d.ts.map +1 -1
  39. package/dist/migration/to/v3.14.0.d.ts +2 -2
  40. package/dist/migration/to/v3.14.0.d.ts.map +1 -1
  41. package/dist/migration/to/v3.15.0.d.ts +2 -2
  42. package/dist/migration/to/v3.15.0.d.ts.map +1 -1
  43. package/dist/migration/to/v3.16.0.d.ts +2 -2
  44. package/dist/migration/to/v3.16.0.d.ts.map +1 -1
  45. package/dist/migration/to/v3.17.0.d.ts +2 -2
  46. package/dist/migration/to/v3.17.0.d.ts.map +1 -1
  47. package/dist/migration/to/v3.17.1.d.ts +2 -2
  48. package/dist/migration/to/v3.17.1.d.ts.map +1 -1
  49. package/dist/migration/to/v3.18.0.d.ts +2 -2
  50. package/dist/migration/to/v3.18.0.d.ts.map +1 -1
  51. package/dist/migration/to/v3.18.1.d.ts +2 -2
  52. package/dist/migration/to/v3.18.1.d.ts.map +1 -1
  53. package/dist/migration/to/v3.18.2.d.ts +2 -2
  54. package/dist/migration/to/v3.18.2.d.ts.map +1 -1
  55. package/dist/migration/to/v3.19.0.d.ts +2 -2
  56. package/dist/migration/to/v3.19.0.d.ts.map +1 -1
  57. package/dist/migration/to/v3.2.0.d.ts +2 -2
  58. package/dist/migration/to/v3.2.0.d.ts.map +1 -1
  59. package/dist/migration/to/v3.20.0.d.ts +2 -2
  60. package/dist/migration/to/v3.20.0.d.ts.map +1 -1
  61. package/dist/migration/to/v3.21.0.d.ts +2 -2
  62. package/dist/migration/to/v3.21.0.d.ts.map +1 -1
  63. package/dist/migration/to/v3.22.0.d.ts +2 -2
  64. package/dist/migration/to/v3.22.0.d.ts.map +1 -1
  65. package/dist/migration/to/v3.23.0.d.ts +2 -2
  66. package/dist/migration/to/v3.23.0.d.ts.map +1 -1
  67. package/dist/migration/to/v3.24.0.d.ts +2 -2
  68. package/dist/migration/to/v3.24.0.d.ts.map +1 -1
  69. package/dist/migration/to/v3.25.0.d.ts +2 -2
  70. package/dist/migration/to/v3.25.0.d.ts.map +1 -1
  71. package/dist/migration/to/v3.26.0.d.ts +2 -2
  72. package/dist/migration/to/v3.26.0.d.ts.map +1 -1
  73. package/dist/migration/to/v3.27.0.d.ts +2 -2
  74. package/dist/migration/to/v3.27.0.d.ts.map +1 -1
  75. package/dist/migration/to/v3.28.0.d.ts +2 -2
  76. package/dist/migration/to/v3.28.0.d.ts.map +1 -1
  77. package/dist/migration/to/v3.29.0.d.ts +2 -2
  78. package/dist/migration/to/v3.29.0.d.ts.map +1 -1
  79. package/dist/migration/to/v3.3.0.d.ts +2 -2
  80. package/dist/migration/to/v3.3.0.d.ts.map +1 -1
  81. package/dist/migration/to/v3.30.0.d.ts +2 -2
  82. package/dist/migration/to/v3.30.0.d.ts.map +1 -1
  83. package/dist/migration/to/v3.31.0.d.ts +2 -2
  84. package/dist/migration/to/v3.31.0.d.ts.map +1 -1
  85. package/dist/migration/to/v3.32.0.d.ts +2 -2
  86. package/dist/migration/to/v3.32.0.d.ts.map +1 -1
  87. package/dist/migration/to/v3.33.0.d.ts +2 -2
  88. package/dist/migration/to/v3.33.0.d.ts.map +1 -1
  89. package/dist/migration/to/v3.34.0.d.ts +4 -4
  90. package/dist/migration/to/v3.34.0.d.ts.map +1 -1
  91. package/dist/migration/to/v3.34.0.js +28 -6
  92. package/dist/migration/to/v3.35.0.d.ts +5 -0
  93. package/dist/migration/to/v3.35.0.d.ts.map +1 -0
  94. package/dist/migration/to/v3.35.0.js +18 -0
  95. package/dist/migration/to/v3.4.0.d.ts +2 -2
  96. package/dist/migration/to/v3.4.0.d.ts.map +1 -1
  97. package/dist/migration/to/v3.5.0.d.ts +2 -2
  98. package/dist/migration/to/v3.5.0.d.ts.map +1 -1
  99. package/dist/migration/to/v3.5.1.d.ts +2 -2
  100. package/dist/migration/to/v3.5.1.d.ts.map +1 -1
  101. package/dist/migration/to/v3.6.0.d.ts +2 -2
  102. package/dist/migration/to/v3.6.0.d.ts.map +1 -1
  103. package/dist/migration/to/v3.7.0.d.ts +2 -2
  104. package/dist/migration/to/v3.7.0.d.ts.map +1 -1
  105. package/dist/migration/to/v3.8.0.d.ts +2 -2
  106. package/dist/migration/to/v3.8.0.d.ts.map +1 -1
  107. package/dist/migration/to/v3.9.0.d.ts +2 -2
  108. package/dist/migration/to/v3.9.0.d.ts.map +1 -1
  109. package/dist/migration/types.d.ts +6 -6
  110. package/dist/migration/types.d.ts.map +1 -1
  111. package/dist/mocks.d.ts +5 -5
  112. package/dist/mocks.d.ts.map +1 -1
  113. package/dist/models/project-schema.d.ts +36 -0
  114. package/dist/models/project-schema.d.ts.map +1 -0
  115. package/dist/models/project-schema.js +132 -0
  116. package/dist/models/query.d.ts +18 -0
  117. package/dist/models/query.d.ts.map +1 -0
  118. package/dist/models/query.js +44 -0
  119. package/dist/models/service.d.ts +13 -0
  120. package/dist/models/service.d.ts.map +1 -0
  121. package/dist/models/service.js +34 -0
  122. package/dist/models/shape.d.ts +42 -0
  123. package/dist/models/shape.d.ts.map +1 -0
  124. package/dist/models/shape.js +116 -0
  125. package/dist/project-schema/index.d.ts +94 -91
  126. package/dist/project-schema/index.d.ts.map +1 -1
  127. package/dist/project-schema/index.js +154 -137
  128. package/dist/project-schema/latest.d.ts +145 -126
  129. package/dist/project-schema/latest.d.ts.map +1 -1
  130. package/dist/project-schema/migrate.d.ts +3 -3
  131. package/dist/project-schema/migrate.d.ts.map +1 -1
  132. package/dist/project-schema/migrate.js +49 -45
  133. package/dist/project-schema/v1.0.0.d.ts +13 -13
  134. package/dist/project-schema/v1.0.0.d.ts.map +1 -1
  135. package/dist/project-schema/v3.0.0.d.ts +23 -23
  136. package/dist/project-schema/v3.0.0.d.ts.map +1 -1
  137. package/dist/project-schema/v3.1.0.d.ts +35 -35
  138. package/dist/project-schema/v3.1.0.d.ts.map +1 -1
  139. package/dist/project-schema/v3.10.0.d.ts +104 -104
  140. package/dist/project-schema/v3.10.0.d.ts.map +1 -1
  141. package/dist/project-schema/v3.11.0.d.ts +104 -104
  142. package/dist/project-schema/v3.11.0.d.ts.map +1 -1
  143. package/dist/project-schema/v3.12.0.d.ts +104 -104
  144. package/dist/project-schema/v3.12.0.d.ts.map +1 -1
  145. package/dist/project-schema/v3.12.1.d.ts +110 -110
  146. package/dist/project-schema/v3.12.1.d.ts.map +1 -1
  147. package/dist/project-schema/v3.12.2.d.ts +111 -111
  148. package/dist/project-schema/v3.12.2.d.ts.map +1 -1
  149. package/dist/project-schema/v3.12.3.d.ts +114 -114
  150. package/dist/project-schema/v3.12.3.d.ts.map +1 -1
  151. package/dist/project-schema/v3.13.0.d.ts +115 -115
  152. package/dist/project-schema/v3.13.0.d.ts.map +1 -1
  153. package/dist/project-schema/v3.14.0.d.ts +116 -116
  154. package/dist/project-schema/v3.14.0.d.ts.map +1 -1
  155. package/dist/project-schema/v3.15.0.d.ts +119 -119
  156. package/dist/project-schema/v3.15.0.d.ts.map +1 -1
  157. package/dist/project-schema/v3.16.0.d.ts +119 -119
  158. package/dist/project-schema/v3.16.0.d.ts.map +1 -1
  159. package/dist/project-schema/v3.17.0.d.ts +119 -119
  160. package/dist/project-schema/v3.17.0.d.ts.map +1 -1
  161. package/dist/project-schema/v3.17.1.d.ts +119 -119
  162. package/dist/project-schema/v3.17.1.d.ts.map +1 -1
  163. package/dist/project-schema/v3.18.0.d.ts +117 -117
  164. package/dist/project-schema/v3.18.0.d.ts.map +1 -1
  165. package/dist/project-schema/v3.18.1.d.ts +117 -117
  166. package/dist/project-schema/v3.18.1.d.ts.map +1 -1
  167. package/dist/project-schema/v3.18.2.d.ts +117 -117
  168. package/dist/project-schema/v3.18.2.d.ts.map +1 -1
  169. package/dist/project-schema/v3.19.0.d.ts +117 -117
  170. package/dist/project-schema/v3.19.0.d.ts.map +1 -1
  171. package/dist/project-schema/v3.2.0.d.ts +36 -36
  172. package/dist/project-schema/v3.2.0.d.ts.map +1 -1
  173. package/dist/project-schema/v3.20.0.d.ts +117 -117
  174. package/dist/project-schema/v3.20.0.d.ts.map +1 -1
  175. package/dist/project-schema/v3.21.0.d.ts +117 -117
  176. package/dist/project-schema/v3.21.0.d.ts.map +1 -1
  177. package/dist/project-schema/v3.22.0.d.ts +118 -118
  178. package/dist/project-schema/v3.22.0.d.ts.map +1 -1
  179. package/dist/project-schema/v3.23.0.d.ts +120 -120
  180. package/dist/project-schema/v3.23.0.d.ts.map +1 -1
  181. package/dist/project-schema/v3.24.0.d.ts +120 -120
  182. package/dist/project-schema/v3.24.0.d.ts.map +1 -1
  183. package/dist/project-schema/v3.25.0.d.ts +120 -120
  184. package/dist/project-schema/v3.25.0.d.ts.map +1 -1
  185. package/dist/project-schema/v3.26.0.d.ts +121 -121
  186. package/dist/project-schema/v3.26.0.d.ts.map +1 -1
  187. package/dist/project-schema/v3.27.0.d.ts +122 -122
  188. package/dist/project-schema/v3.27.0.d.ts.map +1 -1
  189. package/dist/project-schema/v3.28.0.d.ts +123 -123
  190. package/dist/project-schema/v3.28.0.d.ts.map +1 -1
  191. package/dist/project-schema/v3.29.0.d.ts +124 -124
  192. package/dist/project-schema/v3.29.0.d.ts.map +1 -1
  193. package/dist/project-schema/v3.3.0.d.ts +36 -36
  194. package/dist/project-schema/v3.3.0.d.ts.map +1 -1
  195. package/dist/project-schema/v3.30.0.d.ts +123 -123
  196. package/dist/project-schema/v3.30.0.d.ts.map +1 -1
  197. package/dist/project-schema/v3.31.0.d.ts +125 -125
  198. package/dist/project-schema/v3.31.0.d.ts.map +1 -1
  199. package/dist/project-schema/v3.32.0.d.ts +124 -124
  200. package/dist/project-schema/v3.32.0.d.ts.map +1 -1
  201. package/dist/project-schema/v3.33.0.d.ts +125 -125
  202. package/dist/project-schema/v3.33.0.d.ts.map +1 -1
  203. package/dist/project-schema/v3.34.0.d.ts +125 -125
  204. package/dist/project-schema/v3.34.0.d.ts.map +1 -1
  205. package/dist/project-schema/v3.35.0.d.ts +1465 -0
  206. package/dist/project-schema/v3.35.0.d.ts.map +1 -0
  207. package/dist/project-schema/v3.35.0.js +5 -0
  208. package/dist/project-schema/v3.4.0.d.ts +36 -36
  209. package/dist/project-schema/v3.4.0.d.ts.map +1 -1
  210. package/dist/project-schema/v3.5.0.d.ts +36 -36
  211. package/dist/project-schema/v3.5.0.d.ts.map +1 -1
  212. package/dist/project-schema/v3.5.1.d.ts +36 -36
  213. package/dist/project-schema/v3.5.1.d.ts.map +1 -1
  214. package/dist/project-schema/v3.6.0.d.ts +37 -37
  215. package/dist/project-schema/v3.6.0.d.ts.map +1 -1
  216. package/dist/project-schema/v3.7.0.d.ts +37 -37
  217. package/dist/project-schema/v3.7.0.d.ts.map +1 -1
  218. package/dist/project-schema/v3.8.0.d.ts +39 -39
  219. package/dist/project-schema/v3.8.0.d.ts.map +1 -1
  220. package/dist/project-schema/v3.9.0.d.ts +39 -39
  221. package/dist/project-schema/v3.9.0.d.ts.map +1 -1
  222. package/dist/project-schema/v4.0.0.d.ts +113 -113
  223. package/dist/project-schema/v4.0.0.d.ts.map +1 -1
  224. package/dist/refs.d.ts +16 -13
  225. package/dist/refs.d.ts.map +1 -1
  226. package/dist/refs.js +21 -0
  227. package/dist/relationships.d.ts +5 -5
  228. package/dist/relationships.d.ts.map +1 -1
  229. package/dist/schema-util.d.ts +46 -40
  230. package/dist/schema-util.d.ts.map +1 -1
  231. package/dist/schema-util.js +34 -29
  232. package/dist/schemas/index.d.ts +2 -2
  233. package/dist/schemas/index.d.ts.map +1 -1
  234. package/dist/schemas/index.js +6 -4
  235. package/dist/schemas/index.ts +4 -2
  236. package/dist/schemas/project-schema/latest.json +42 -7
  237. package/dist/schemas/project-schema/meta-schema-v3.0.0.json +1 -1
  238. package/dist/schemas/project-schema/meta-schema-v3.1.0.json +1 -1
  239. package/dist/schemas/project-schema/meta-schema-v3.2.0.json +1 -1
  240. package/dist/schemas/project-schema/meta-schema-v3.3.0.json +1 -1
  241. package/dist/schemas/project-schema/meta-schema-v3.4.0.json +1 -1
  242. package/dist/schemas/project-schema/meta-schema-v3.5.0.json +1 -1
  243. package/dist/schemas/project-schema/meta-schema-v3.5.1.json +1 -1
  244. package/dist/schemas/project-schema/meta-schema-v3.6.0.json +1 -1
  245. package/dist/schemas/project-schema/meta-schema-v3.7.0.json +1 -1
  246. package/dist/schemas/project-schema/meta-schema-v3.8.0.json +1 -1
  247. package/dist/schemas/project-schema/meta-schema-v3.9.0.json +1 -1
  248. package/dist/schemas/project-schema/v1.0.0.json +1 -1
  249. package/dist/schemas/project-schema/v3.0.0.json +2 -2
  250. package/dist/schemas/project-schema/v3.1.0.json +4 -4
  251. package/dist/schemas/project-schema/v3.10.0.json +5 -5
  252. package/dist/schemas/project-schema/v3.11.0.json +5 -5
  253. package/dist/schemas/project-schema/v3.12.0.json +5 -5
  254. package/dist/schemas/project-schema/v3.12.1.json +5 -5
  255. package/dist/schemas/project-schema/v3.12.2.json +5 -5
  256. package/dist/schemas/project-schema/v3.12.3.json +5 -5
  257. package/dist/schemas/project-schema/v3.13.0.json +5 -5
  258. package/dist/schemas/project-schema/v3.14.0.json +5 -5
  259. package/dist/schemas/project-schema/v3.15.0.json +5 -5
  260. package/dist/schemas/project-schema/v3.16.0.json +5 -5
  261. package/dist/schemas/project-schema/v3.17.0.json +5 -5
  262. package/dist/schemas/project-schema/v3.17.1.json +5 -5
  263. package/dist/schemas/project-schema/v3.18.0.json +5 -5
  264. package/dist/schemas/project-schema/v3.18.1.json +5 -5
  265. package/dist/schemas/project-schema/v3.18.2.json +5 -5
  266. package/dist/schemas/project-schema/v3.19.0.json +5 -5
  267. package/dist/schemas/project-schema/v3.2.0.json +4 -4
  268. package/dist/schemas/project-schema/v3.20.0.json +5 -5
  269. package/dist/schemas/project-schema/v3.21.0.json +5 -5
  270. package/dist/schemas/project-schema/v3.22.0.json +5 -5
  271. package/dist/schemas/project-schema/v3.23.0.json +5 -5
  272. package/dist/schemas/project-schema/v3.24.0.json +5 -5
  273. package/dist/schemas/project-schema/v3.25.0.json +5 -5
  274. package/dist/schemas/project-schema/v3.26.0.json +6 -6
  275. package/dist/schemas/project-schema/v3.27.0.json +6 -6
  276. package/dist/schemas/project-schema/v3.28.0.json +5 -5
  277. package/dist/schemas/project-schema/v3.29.0.json +5 -5
  278. package/dist/schemas/project-schema/v3.3.0.json +4 -4
  279. package/dist/schemas/project-schema/v3.30.0.json +5 -5
  280. package/dist/schemas/project-schema/v3.31.0.json +6 -6
  281. package/dist/schemas/project-schema/v3.32.0.json +6 -6
  282. package/dist/schemas/project-schema/v3.33.0.json +6 -6
  283. package/dist/schemas/project-schema/v3.34.0.json +5 -5
  284. package/dist/schemas/project-schema/v3.35.0.json +3123 -0
  285. package/dist/schemas/project-schema/v3.4.0.json +4 -4
  286. package/dist/schemas/project-schema/v3.5.0.json +4 -4
  287. package/dist/schemas/project-schema/v3.5.1.json +4 -4
  288. package/dist/schemas/project-schema/v3.6.0.json +4 -4
  289. package/dist/schemas/project-schema/v3.7.0.json +4 -4
  290. package/dist/schemas/project-schema/v3.8.0.json +4 -4
  291. package/dist/schemas/project-schema/v3.9.0.json +4 -4
  292. package/dist/schemas/project-schema/v4.0.0.json +5 -5
  293. package/dist/schemas/project-schema.json +3 -0
  294. package/dist/services.d.ts +12 -12
  295. package/dist/services.d.ts.map +1 -1
  296. package/dist/services.js +3 -3
  297. package/dist/taxonomies.d.ts +4 -4
  298. package/dist/taxonomies.d.ts.map +1 -1
  299. package/dist/template-shapes/index.d.ts +2 -2
  300. package/dist/template-shapes/index.d.ts.map +1 -1
  301. package/dist/template-shapes/templates.d.ts +21 -21
  302. package/dist/template-shapes/templates.d.ts.map +1 -1
  303. package/dist/template-shapes/types.d.ts +3 -3
  304. package/dist/template-shapes/types.d.ts.map +1 -1
  305. package/dist/template-shapes/where.d.ts +6 -6
  306. package/dist/template-shapes/where.d.ts.map +1 -1
  307. package/dist/types/types.d.ts +10 -9
  308. package/dist/types/types.d.ts.map +1 -1
  309. package/dist/types/utils.d.ts +5 -4
  310. package/dist/types/utils.d.ts.map +1 -1
  311. package/dist/types/utils.js +5 -0
  312. package/dist/unions.d.ts +8 -8
  313. package/dist/unions.d.ts.map +1 -1
  314. package/dist/util/api-indexing.d.ts +4 -4
  315. package/dist/util/api-indexing.d.ts.map +1 -1
  316. package/dist/util/detect-cycles.d.ts +3 -3
  317. package/dist/util/detect-cycles.d.ts.map +1 -1
  318. package/dist/util/find-shape-at-path.d.ts +3 -3
  319. package/dist/util/find-shape-at-path.d.ts.map +1 -1
  320. package/dist/util/form-config.d.ts +3 -3
  321. package/dist/util/form-config.d.ts.map +1 -1
  322. package/dist/util/get-conflicting-properties.d.ts +2 -2
  323. package/dist/util/get-conflicting-properties.d.ts.map +1 -1
  324. package/dist/util/get-return-shape.d.ts +4 -2
  325. package/dist/util/get-return-shape.d.ts.map +1 -1
  326. package/dist/util/get-return-shape.js +5 -0
  327. package/dist/util/has-arg.d.ts +2 -2
  328. package/dist/util/has-arg.d.ts.map +1 -1
  329. package/dist/util/merge.d.ts +3 -3
  330. package/dist/util/merge.d.ts.map +1 -1
  331. package/dist/util/patch-schema.d.ts +2 -2
  332. package/dist/util/patch-schema.d.ts.map +1 -1
  333. package/dist/validate.d.ts +3 -3
  334. package/dist/validate.d.ts.map +1 -1
  335. package/dist/validate.js +84 -5
  336. package/dist/workflows.d.ts +3 -3
  337. package/dist/workflows.d.ts.map +1 -1
  338. package/es/migration/index.js +3 -1
  339. package/es/migration/to/utils/v3.34.0-utils.js +0 -0
  340. package/es/migration/to/v3.34.0.js +28 -7
  341. package/es/migration/to/v3.35.0.js +10 -0
  342. package/es/models/project-schema.js +116 -0
  343. package/es/models/query.js +35 -0
  344. package/es/models/service.js +25 -0
  345. package/es/models/shape.js +105 -0
  346. package/es/project-schema/index.js +47 -45
  347. package/es/project-schema/migrate.js +50 -46
  348. package/es/project-schema/v3.35.0.js +1 -0
  349. package/es/refs.js +15 -0
  350. package/es/schema-util.js +32 -29
  351. package/es/schemas/index.js +4 -3
  352. package/es/schemas/index.ts +4 -2
  353. package/es/schemas/project-schema/latest.json +42 -7
  354. package/es/schemas/project-schema/meta-schema-v3.0.0.json +1 -1
  355. package/es/schemas/project-schema/meta-schema-v3.1.0.json +1 -1
  356. package/es/schemas/project-schema/meta-schema-v3.2.0.json +1 -1
  357. package/es/schemas/project-schema/meta-schema-v3.3.0.json +1 -1
  358. package/es/schemas/project-schema/meta-schema-v3.4.0.json +1 -1
  359. package/es/schemas/project-schema/meta-schema-v3.5.0.json +1 -1
  360. package/es/schemas/project-schema/meta-schema-v3.5.1.json +1 -1
  361. package/es/schemas/project-schema/meta-schema-v3.6.0.json +1 -1
  362. package/es/schemas/project-schema/meta-schema-v3.7.0.json +1 -1
  363. package/es/schemas/project-schema/meta-schema-v3.8.0.json +1 -1
  364. package/es/schemas/project-schema/meta-schema-v3.9.0.json +1 -1
  365. package/es/schemas/project-schema/v1.0.0.json +1 -1
  366. package/es/schemas/project-schema/v3.0.0.json +2 -2
  367. package/es/schemas/project-schema/v3.1.0.json +4 -4
  368. package/es/schemas/project-schema/v3.10.0.json +5 -5
  369. package/es/schemas/project-schema/v3.11.0.json +5 -5
  370. package/es/schemas/project-schema/v3.12.0.json +5 -5
  371. package/es/schemas/project-schema/v3.12.1.json +5 -5
  372. package/es/schemas/project-schema/v3.12.2.json +5 -5
  373. package/es/schemas/project-schema/v3.12.3.json +5 -5
  374. package/es/schemas/project-schema/v3.13.0.json +5 -5
  375. package/es/schemas/project-schema/v3.14.0.json +5 -5
  376. package/es/schemas/project-schema/v3.15.0.json +5 -5
  377. package/es/schemas/project-schema/v3.16.0.json +5 -5
  378. package/es/schemas/project-schema/v3.17.0.json +5 -5
  379. package/es/schemas/project-schema/v3.17.1.json +5 -5
  380. package/es/schemas/project-schema/v3.18.0.json +5 -5
  381. package/es/schemas/project-schema/v3.18.1.json +5 -5
  382. package/es/schemas/project-schema/v3.18.2.json +5 -5
  383. package/es/schemas/project-schema/v3.19.0.json +5 -5
  384. package/es/schemas/project-schema/v3.2.0.json +4 -4
  385. package/es/schemas/project-schema/v3.20.0.json +5 -5
  386. package/es/schemas/project-schema/v3.21.0.json +5 -5
  387. package/es/schemas/project-schema/v3.22.0.json +5 -5
  388. package/es/schemas/project-schema/v3.23.0.json +5 -5
  389. package/es/schemas/project-schema/v3.24.0.json +5 -5
  390. package/es/schemas/project-schema/v3.25.0.json +5 -5
  391. package/es/schemas/project-schema/v3.26.0.json +6 -6
  392. package/es/schemas/project-schema/v3.27.0.json +6 -6
  393. package/es/schemas/project-schema/v3.28.0.json +5 -5
  394. package/es/schemas/project-schema/v3.29.0.json +5 -5
  395. package/es/schemas/project-schema/v3.3.0.json +4 -4
  396. package/es/schemas/project-schema/v3.30.0.json +5 -5
  397. package/es/schemas/project-schema/v3.31.0.json +6 -6
  398. package/es/schemas/project-schema/v3.32.0.json +6 -6
  399. package/es/schemas/project-schema/v3.33.0.json +6 -6
  400. package/es/schemas/project-schema/v3.34.0.json +5 -5
  401. package/es/schemas/project-schema/v3.35.0.json +3123 -0
  402. package/es/schemas/project-schema/v3.4.0.json +4 -4
  403. package/es/schemas/project-schema/v3.5.0.json +4 -4
  404. package/es/schemas/project-schema/v3.5.1.json +4 -4
  405. package/es/schemas/project-schema/v3.6.0.json +4 -4
  406. package/es/schemas/project-schema/v3.7.0.json +4 -4
  407. package/es/schemas/project-schema/v3.8.0.json +4 -4
  408. package/es/schemas/project-schema/v3.9.0.json +4 -4
  409. package/es/schemas/project-schema/v4.0.0.json +5 -5
  410. package/es/schemas/project-schema.json +3 -0
  411. package/es/services.js +3 -3
  412. package/es/types/utils.js +3 -0
  413. package/es/util/get-return-shape.js +3 -0
  414. package/es/validate.js +85 -6
  415. package/examples/latest/betzino.json +1 -1
  416. package/examples/latest/blog-schema.json +1 -1
  417. package/examples/latest/brewery-schema.json +1 -1
  418. package/examples/latest/complex-project-schema.json +1 -1
  419. package/examples/latest/complex-schema.json +1 -1
  420. package/examples/latest/fabric-ecommerce.json +1 -1
  421. package/examples/latest/frank-and-fred-schema.json +1 -1
  422. package/examples/latest/klirr-schema.json +1 -1
  423. package/examples/latest/massive-schema.json +1 -1
  424. package/examples/latest/mill-components-schema.json +1 -1
  425. package/examples/latest/one-earth.json +1 -1
  426. package/examples/latest/pet-oneof-array.json +1 -1
  427. package/examples/latest/post-schema.json +1 -1
  428. package/examples/latest/pruned-shopify-product-schema.json +1 -1
  429. package/examples/latest/real-world-schema.json +1 -1
  430. package/examples/latest/recursive-repeater-schema.json +1 -1
  431. package/examples/latest/recursive-schema.json +1 -1
  432. package/examples/latest/rick-and-morty-ast.json +1 -1
  433. package/examples/latest/rick-and-morty-graphql.json +1 -1
  434. package/examples/latest/rick-and-morty-rest.json +1 -1
  435. package/examples/latest/schema-with-repeater-draftjs.json +1 -1
  436. package/examples/latest/shape-books-v3_2_0.json +1 -1
  437. package/examples/latest/shape-books.json +1 -1
  438. package/examples/latest/shape-editor-schema-edited.json +2 -2
  439. package/examples/latest/shape-editor-schema-initial.json +1 -1
  440. package/examples/latest/shopify-lookbook.json +1 -1
  441. package/examples/latest/shopify-product-2022-07.json +1 -1
  442. package/examples/latest/shopify-product-2023-04.json +1 -1
  443. package/examples/latest/shopify-store-with-widget.json +1 -1
  444. package/examples/latest/stripe-product-runtime-schema.json +1 -1
  445. package/examples/latest/stripe-starter-resolved.json +1 -1
  446. package/examples/latest/user-schema-no-required.json +1 -1
  447. package/examples/latest/user-schema-with-defaults.json +1 -1
  448. package/package.json +5 -5
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "$id": "https://schema.takeshape.io/project-schema/v3.4.0#",
4
- "title": "Project Schema",
4
+ "title": "Project Schema JSON",
5
5
  "definitions": {
6
6
  "shape": {
7
- "title": "Shape",
7
+ "title": "Shape JSON",
8
8
  "description": "A Shape is a schema object for structuring and storing data from one or more sources, including the TakeShape data store and connected services",
9
9
  "type": "object",
10
10
  "properties": {
@@ -317,7 +317,7 @@
317
317
  "additionalProperties": false
318
318
  },
319
319
  "storedServiceConfig": {
320
- "title": "Stored Service Config",
320
+ "title": "Service Config JSON",
321
321
  "type": "object",
322
322
  "properties": {
323
323
  "id": {
@@ -369,7 +369,7 @@
369
369
  ]
370
370
  },
371
371
  "storedServiceMap": {
372
- "title": "Stored Service Map",
372
+ "title": "Service Map JSON",
373
373
  "type": "object",
374
374
  "patternProperties": {
375
375
  "[0-9A-Za-z_-]+": {
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "$id": "https://schema.takeshape.io/project-schema/v3.5.0#",
4
- "title": "Project Schema",
4
+ "title": "Project Schema JSON",
5
5
  "definitions": {
6
6
  "shape": {
7
- "title": "Shape",
7
+ "title": "Shape JSON",
8
8
  "description": "A Shape is a schema object for structuring and storing data from one or more sources, including the TakeShape data store and connected services",
9
9
  "type": "object",
10
10
  "properties": {
@@ -317,7 +317,7 @@
317
317
  "additionalProperties": false
318
318
  },
319
319
  "storedServiceConfig": {
320
- "title": "Stored Service Config",
320
+ "title": "Service Config JSON",
321
321
  "type": "object",
322
322
  "properties": {
323
323
  "id": {
@@ -369,7 +369,7 @@
369
369
  ]
370
370
  },
371
371
  "storedServiceMap": {
372
- "title": "Stored Service Map",
372
+ "title": "Service Map JSON",
373
373
  "type": "object",
374
374
  "patternProperties": {
375
375
  "[0-9A-Za-z_-]+": {
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "$id": "https://schema.takeshape.io/project-schema/v3.5.1#",
4
- "title": "Project Schema",
4
+ "title": "Project Schema JSON",
5
5
  "definitions": {
6
6
  "shape": {
7
- "title": "Shape",
7
+ "title": "Shape JSON",
8
8
  "description": "A Shape is a schema object for structuring and storing data from one or more sources, including the TakeShape data store and connected services",
9
9
  "type": "object",
10
10
  "properties": {
@@ -317,7 +317,7 @@
317
317
  "additionalProperties": false
318
318
  },
319
319
  "storedServiceConfig": {
320
- "title": "Stored Service Config",
320
+ "title": "Service Config JSON",
321
321
  "type": "object",
322
322
  "properties": {
323
323
  "id": {
@@ -369,7 +369,7 @@
369
369
  ]
370
370
  },
371
371
  "storedServiceMap": {
372
- "title": "Stored Service Map",
372
+ "title": "Service Map JSON",
373
373
  "type": "object",
374
374
  "patternProperties": {
375
375
  "[0-9A-Za-z_-]+": {
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "$id": "https://schema.takeshape.io/project-schema/v3.6.0#",
4
- "title": "Project Schema",
4
+ "title": "Project Schema JSON",
5
5
  "definitions": {
6
6
  "shape": {
7
- "title": "Shape",
7
+ "title": "Shape JSON",
8
8
  "description": "A Shape is a schema object for structuring and storing data from one or more sources, including the TakeShape data store and connected services",
9
9
  "type": "object",
10
10
  "properties": {
@@ -333,7 +333,7 @@
333
333
  "additionalProperties": false
334
334
  },
335
335
  "storedServiceConfig": {
336
- "title": "Stored Service Config",
336
+ "title": "Service Config JSON",
337
337
  "type": "object",
338
338
  "properties": {
339
339
  "id": {
@@ -385,7 +385,7 @@
385
385
  ]
386
386
  },
387
387
  "storedServiceMap": {
388
- "title": "Stored Service Map",
388
+ "title": "Service Map JSON",
389
389
  "type": "object",
390
390
  "patternProperties": {
391
391
  "[0-9A-Za-z_-]+": {
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "$id": "https://schema.takeshape.io/project-schema/v3.7.0#",
4
- "title": "Project Schema",
4
+ "title": "Project Schema JSON",
5
5
  "definitions": {
6
6
  "shape": {
7
- "title": "Shape",
7
+ "title": "Shape JSON",
8
8
  "description": "A Shape is a schema object for structuring and storing data from one or more sources, including the TakeShape data store and connected services",
9
9
  "type": "object",
10
10
  "properties": {
@@ -333,7 +333,7 @@
333
333
  "additionalProperties": false
334
334
  },
335
335
  "storedServiceConfig": {
336
- "title": "Stored Service Config",
336
+ "title": "Service Config JSON",
337
337
  "type": "object",
338
338
  "properties": {
339
339
  "id": {
@@ -385,7 +385,7 @@
385
385
  ]
386
386
  },
387
387
  "storedServiceMap": {
388
- "title": "Stored Service Map",
388
+ "title": "Service Map JSON",
389
389
  "type": "object",
390
390
  "patternProperties": {
391
391
  "[0-9A-Za-z_-]+": {
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "$id": "https://schema.takeshape.io/project-schema/v3.8.0#",
4
- "title": "Project Schema",
4
+ "title": "Project Schema JSON",
5
5
  "definitions": {
6
6
  "shape": {
7
- "title": "Shape",
7
+ "title": "Shape JSON",
8
8
  "description": "A Shape is a schema object for structuring and storing data from one or more sources, including the TakeShape data store and connected services",
9
9
  "type": "object",
10
10
  "properties": {
@@ -346,7 +346,7 @@
346
346
  "additionalProperties": false
347
347
  },
348
348
  "storedServiceConfig": {
349
- "title": "Stored Service Config",
349
+ "title": "Service Config JSON",
350
350
  "type": "object",
351
351
  "properties": {
352
352
  "id": {
@@ -398,7 +398,7 @@
398
398
  ]
399
399
  },
400
400
  "storedServiceMap": {
401
- "title": "Stored Service Map",
401
+ "title": "Service Map JSON",
402
402
  "type": "object",
403
403
  "patternProperties": {
404
404
  "[0-9A-Za-z_-]+": {
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
3
  "$id": "https://schema.takeshape.io/project-schema/v3.9.0#",
4
- "title": "Project Schema",
4
+ "title": "Project Schema JSON",
5
5
  "definitions": {
6
6
  "shape": {
7
- "title": "Shape",
7
+ "title": "Shape JSON",
8
8
  "description": "A Shape is a schema object for structuring and storing data from one or more sources, including the TakeShape data store and connected services",
9
9
  "type": "object",
10
10
  "properties": {
@@ -346,7 +346,7 @@
346
346
  "additionalProperties": false
347
347
  },
348
348
  "storedServiceConfig": {
349
- "title": "Stored Service Config",
349
+ "title": "Service Config JSON",
350
350
  "type": "object",
351
351
  "properties": {
352
352
  "id": {
@@ -398,7 +398,7 @@
398
398
  ]
399
399
  },
400
400
  "storedServiceMap": {
401
- "title": "Stored Service Map",
401
+ "title": "Service Map JSON",
402
402
  "type": "object",
403
403
  "patternProperties": {
404
404
  "[0-9A-Za-z_-]+": {
@@ -1284,7 +1284,7 @@
1284
1284
  "oneOf": [{"$ref": "#/definitions/basicResolver"}, {"$ref": "#/definitions/composeResolver"}]
1285
1285
  },
1286
1286
  "query": {
1287
- "title": "Query",
1287
+ "title": "Query JSON",
1288
1288
  "type": "object",
1289
1289
  "properties": {
1290
1290
  "args": {
@@ -1457,7 +1457,7 @@
1457
1457
  "additionalProperties": false
1458
1458
  },
1459
1459
  "shape": {
1460
- "title": "Shape",
1460
+ "title": "Shape JSON",
1461
1461
  "description": "A Shape is a schema object for structuring and storing data from one or more sources, including the TakeShape data store and connected services",
1462
1462
  "type": "object",
1463
1463
  "properties": {
@@ -1800,7 +1800,7 @@
1800
1800
  "additionalProperties": false
1801
1801
  },
1802
1802
  "storedServiceConfig": {
1803
- "title": "Stored Service Config",
1803
+ "title": "Service Config JSON",
1804
1804
  "type": "object",
1805
1805
  "properties": {
1806
1806
  "title": {
@@ -1848,7 +1848,7 @@
1848
1848
  ]
1849
1849
  },
1850
1850
  "storedServiceMap": {
1851
- "title": "Stored Service Map",
1851
+ "title": "Service Map JSON",
1852
1852
  "type": "object",
1853
1853
  "patternProperties": {
1854
1854
  "[0-9A-Za-z_-]+": {
@@ -2227,7 +2227,7 @@
2227
2227
  ]
2228
2228
  }
2229
2229
  },
2230
- "title": "Project Schema",
2230
+ "title": "Project Schema JSON",
2231
2231
  "type": "object",
2232
2232
  "properties": {
2233
2233
  "$schema": {
@@ -132,6 +132,9 @@
132
132
  {
133
133
  "$ref": "https://schema.takeshape.io/project-schema/v3.34.0#"
134
134
  },
135
+ {
136
+ "$ref": "https://schema.takeshape.io/project-schema/v3.35.0#"
137
+ },
135
138
  {
136
139
  "$ref": "https://schema.takeshape.io/project-schema/v4.0.0#"
137
140
  }
package/es/services.js CHANGED
@@ -34,12 +34,12 @@ export function decryptServiceConfig(decryptFn, storedServiceConfig) {
34
34
  };
35
35
  }
36
36
  /**
37
- * Given a `StoredServiceMap` returns a usable `ServiceMap` with all the
37
+ * Given a `ServiceMapJSON` returns a usable `ServiceMap` with all the
38
38
  * authentication objects decrypted.
39
39
  */
40
40
 
41
- export async function decryptServiceMap(decryptFn, storedServiceMap) {
42
- return Object.entries(storedServiceMap).reduce((result, [serviceKey, serviceConfig]) => {
41
+ export async function decryptServiceMap(decryptFn, ServiceMapJSON) {
42
+ return Object.entries(ServiceMapJSON).reduce((result, [serviceKey, serviceConfig]) => {
43
43
  return result.set(serviceKey, decryptServiceConfig(decryptFn, serviceConfig));
44
44
  }, new Map());
45
45
  }
package/es/types/utils.js CHANGED
@@ -294,4 +294,7 @@ export function getCachedShapeMap(shapes) {
294
294
  }
295
295
 
296
296
  return results;
297
+ }
298
+ export function isMeshShape(shape) {
299
+ return Boolean(shape.joins);
297
300
  }
@@ -23,6 +23,9 @@ function getReturnShapeHelper(projectSchema, propOrQuery) {
23
23
  return shape;
24
24
  }
25
25
 
26
+ export function getReturnShapeRef(context, propOrQuery) {
27
+ return isQuery(propOrQuery) ? parseReturnShape(context, propOrQuery.shape).ref : getRef(context, propOrQuery);
28
+ }
26
29
  const cache = new WeakMap();
27
30
  export function getReturnShape(projectSchema, propOrQuery) {
28
31
  let result = cache.get(propOrQuery);
package/es/validate.js CHANGED
@@ -16,7 +16,7 @@ import { getAllRefs } from './schema-util';
16
16
  import { builtInShapes } from './builtin-schema';
17
17
  import { isValidTemplate } from './template-shapes';
18
18
  import { isBasicResolver, isComposeResolver, isExtendsSchema, isObjectSchema } from './types/utils';
19
- import { refItemToShapeName, getRefShapeName, parsePropertyRef, propertyRefItemToResolverPath, createGetNamespace, propertyRefItemToPath } from './refs';
19
+ import { refItemToShapeName, getRefShapeName, parsePropertyRef, propertyRefItemToResolverPath, createGetNamespace, propertyRefItemToPath, atRefToRefItem, refItemToShape } from './refs';
20
20
  import { scalars } from './scalars';
21
21
  import { isUnionSchema } from './unions';
22
22
  import { isEnumLikeSchema } from './enum';
@@ -438,6 +438,78 @@ async function validateQueryConfigs(context, projectSchema) {
438
438
  return flatten(await Promise.all(promises));
439
439
  }
440
440
 
441
+ function listShapeJoins(projectSchema) {
442
+ const joins = [];
443
+
444
+ for (const shapeKey of Object.keys(projectSchema.shapes)) {
445
+ const shape = projectSchema.shapes[shapeKey];
446
+
447
+ if ('joins' in shape) {
448
+ for (const joinRef of Object.keys(shape.joins)) {
449
+ const join = shape.joins[joinRef];
450
+ joins.push({
451
+ ref: joinRef,
452
+ path: ['shapes', shapeKey, 'joins', joinRef],
453
+ join
454
+ });
455
+ }
456
+ }
457
+ }
458
+
459
+ return joins;
460
+ }
461
+
462
+ function validateLocalShapeJoinRef(projectSchema, item) {
463
+ const refItem = atRefToRefItem(projectSchema, item.ref);
464
+
465
+ if (refItem.serviceKey === 'local') {
466
+ const shape = refItemToShape(projectSchema, refItem);
467
+
468
+ if (!shape) {
469
+ return [{
470
+ type: 'notFound',
471
+ path: item.path,
472
+ message: `Invalid join "${item.ref}" not found`
473
+ }];
474
+ }
475
+ }
476
+
477
+ return [];
478
+ }
479
+
480
+ function validateLocalShapeJoins(projectSchema) {
481
+ return listShapeJoins(projectSchema).flatMap(item => validateLocalShapeJoinRef(projectSchema, item).concat(validateResolver(projectSchema, item.path.concat('resolver'), item.join.resolver)));
482
+ }
483
+
484
+ async function validateShapeJoinRef(context, projectSchema, item) {
485
+ const refItem = atRefToRefItem(projectSchema, item.ref);
486
+
487
+ if (refItem) {
488
+ const layer = await context.resolveLayer(refItem.serviceKey);
489
+ const valid = isValidRef(context, projectSchema, layer, refItem);
490
+
491
+ if (!valid) {
492
+ return [{
493
+ type: 'notFound',
494
+ path: item.path,
495
+ message: `Invalid join "${item.ref}" not found`
496
+ }];
497
+ }
498
+ }
499
+
500
+ return [];
501
+ }
502
+
503
+ async function validateShapeJoins(context, projectSchema) {
504
+ const promises = [];
505
+
506
+ for (const item of listShapeJoins(projectSchema)) {
507
+ promises.push(validateShapeJoinRef(context, projectSchema, item), validateResolverReferences(context, projectSchema, item.path, item.join.resolver));
508
+ }
509
+
510
+ return flatten(await Promise.all(promises));
511
+ }
512
+
441
513
  function validateIndexedShapeConfig(projectSchema, shapeName, config) {
442
514
  var _config$queries;
443
515
 
@@ -633,6 +705,15 @@ function validateLocalRefs(projectSchema) {
633
705
  return errors;
634
706
  }
635
707
 
708
+ function isValidRef(context, projectSchema, layer, item) {
709
+ const {
710
+ serviceKey: layerId
711
+ } = item;
712
+ const shapeName = refItemToShapeName(item);
713
+ const localShapeExists = Boolean(projectSchema.shapes[shapeName]) || builtInShapeNames.has(shapeName);
714
+ return layerId === 'local' ? localShapeExists : localShapeExists || isValidShapeReference(context, layer, shapeName);
715
+ }
716
+
636
717
  async function validateRefs(context, projectSchema) {
637
718
  const {
638
719
  resolveLayer
@@ -661,9 +742,7 @@ async function validateRefs(context, projectSchema) {
661
742
  const {
662
743
  serviceKey: layerId
663
744
  } = item;
664
- const shapeName = refItemToShapeName(item);
665
- const localShapeExists = Boolean(projectSchema.shapes[shapeName]) || builtInShapeNames.has(shapeName);
666
- const valid = layerId === 'local' ? localShapeExists : localShapeExists || isValidShapeReference(context, layersById[layerId], shapeName);
745
+ const valid = isValidRef(context, projectSchema, layersById[layerId], item);
667
746
 
668
747
  if (!valid) {
669
748
  errors.push({
@@ -1022,13 +1101,13 @@ const validators = [{
1022
1101
  validateSyntax(schemaVersion, context, obj) {
1023
1102
  const schema = obj;
1024
1103
  let errors = [];
1025
- errors = errors.concat(checkShapeNames(schema.shapes)).concat(checkShapeIds(schema.shapes)).concat(validateWorkflowsV3(schema)).concat(validateLocalQueryConfigs(schema)).concat(validateLocalRefs(schema)).concat(validateDirectives(schema)).concat(validateLocales(schema)).concat(checkWorkflowStepNames(schema.workflows)).concat(checkWorkflowStepKeys(schema.workflows)).concat(validateOneOfs(schema)).concat(validateIndexedShapes(schema)).concat(validateInterfaces(schema)).concat(validateInterfaceImplementations(schema));
1104
+ errors = errors.concat(checkShapeNames(schema.shapes)).concat(checkShapeIds(schema.shapes)).concat(validateWorkflowsV3(schema)).concat(validateLocalQueryConfigs(schema)).concat(validateLocalRefs(schema)).concat(validateLocalShapeJoins(schema)).concat(validateDirectives(schema)).concat(validateLocales(schema)).concat(checkWorkflowStepNames(schema.workflows)).concat(checkWorkflowStepKeys(schema.workflows)).concat(validateOneOfs(schema)).concat(validateIndexedShapes(schema)).concat(validateInterfaces(schema)).concat(validateInterfaceImplementations(schema));
1026
1105
  return formatValidationResult(context, errors, schema);
1027
1106
  },
1028
1107
 
1029
1108
  async validateReferences(schemaVersion, context, obj) {
1030
1109
  const schema = obj;
1031
- const errors = flatten(await Promise.all([validateRefs(context, schema), validateQueryConfigs(context, schema)]));
1110
+ const errors = flatten(await Promise.all([validateRefs(context, schema), validateQueryConfigs(context, schema), validateShapeJoins(context, schema)]));
1032
1111
  return formatValidationResult(context, errors, schema);
1033
1112
  }
1034
1113
 
@@ -52781,6 +52781,6 @@
52781
52781
  }
52782
52782
  }
52783
52783
  },
52784
- "schemaVersion": "3.34.0",
52784
+ "schemaVersion": "3.35.0",
52785
52785
  "services": {}
52786
52786
  }
@@ -399,6 +399,6 @@
399
399
  }
400
400
  }
401
401
  },
402
- "schemaVersion": "3.34.0",
402
+ "schemaVersion": "3.35.0",
403
403
  "services": {}
404
404
  }
@@ -387,6 +387,6 @@
387
387
  }
388
388
  }
389
389
  },
390
- "schemaVersion": "3.34.0",
390
+ "schemaVersion": "3.35.0",
391
391
  "services": {}
392
392
  }
@@ -4350,6 +4350,6 @@
4350
4350
  }
4351
4351
  }
4352
4352
  },
4353
- "schemaVersion": "3.34.0",
4353
+ "schemaVersion": "3.35.0",
4354
4354
  "services": {}
4355
4355
  }
@@ -15,7 +15,7 @@
15
15
  "apiVersion": "1",
16
16
  "queries": {},
17
17
  "mutations": {},
18
- "schemaVersion": "3.34.0",
18
+ "schemaVersion": "3.35.0",
19
19
  "shapes": {
20
20
  "DocumentUploadForm": {
21
21
  "id": "HJPFlRKkr",
@@ -10474,5 +10474,5 @@
10474
10474
  }
10475
10475
  }
10476
10476
  },
10477
- "schemaVersion": "3.34.0"
10477
+ "schemaVersion": "3.35.0"
10478
10478
  }
@@ -23446,6 +23446,6 @@
23446
23446
  }
23447
23447
  }
23448
23448
  },
23449
- "schemaVersion": "3.34.0",
23449
+ "schemaVersion": "3.35.0",
23450
23450
  "services": {}
23451
23451
  }
@@ -35163,6 +35163,6 @@
35163
35163
  }
35164
35164
  }
35165
35165
  },
35166
- "schemaVersion": "3.34.0",
35166
+ "schemaVersion": "3.35.0",
35167
35167
  "services": {}
35168
35168
  }
@@ -8053,6 +8053,6 @@
8053
8053
  }
8054
8054
  }
8055
8055
  },
8056
- "schemaVersion": "3.34.0",
8056
+ "schemaVersion": "3.35.0",
8057
8057
  "services": {}
8058
8058
  }
@@ -1884,6 +1884,6 @@
1884
1884
  }
1885
1885
  }
1886
1886
  },
1887
- "schemaVersion": "3.34.0",
1887
+ "schemaVersion": "3.35.0",
1888
1888
  "services": {}
1889
1889
  }
@@ -14766,6 +14766,6 @@
14766
14766
  }
14767
14767
  }
14768
14768
  },
14769
- "schemaVersion": "3.34.0",
14769
+ "schemaVersion": "3.35.0",
14770
14770
  "services": {}
14771
14771
  }
@@ -388,6 +388,6 @@
388
388
  }
389
389
  }
390
390
  },
391
- "schemaVersion": "3.34.0",
391
+ "schemaVersion": "3.35.0",
392
392
  "services": {}
393
393
  }
@@ -226,6 +226,6 @@
226
226
  }
227
227
  }
228
228
  },
229
- "schemaVersion": "3.34.0",
229
+ "schemaVersion": "3.35.0",
230
230
  "services": {}
231
231
  }
@@ -9756,5 +9756,5 @@
9756
9756
  }
9757
9757
  }
9758
9758
  },
9759
- "schemaVersion": "3.34.0"
9759
+ "schemaVersion": "3.35.0"
9760
9760
  }
@@ -806,6 +806,6 @@
806
806
  }
807
807
  }
808
808
  },
809
- "schemaVersion": "3.34.0",
809
+ "schemaVersion": "3.35.0",
810
810
  "services": {}
811
811
  }
@@ -142,6 +142,6 @@
142
142
  }
143
143
  }
144
144
  },
145
- "schemaVersion": "3.34.0",
145
+ "schemaVersion": "3.35.0",
146
146
  "services": {}
147
147
  }
@@ -149,6 +149,6 @@
149
149
  }
150
150
  }
151
151
  },
152
- "schemaVersion": "3.34.0",
152
+ "schemaVersion": "3.35.0",
153
153
  "services": {}
154
154
  }
@@ -2633,5 +2633,5 @@
2633
2633
  }
2634
2634
  }
2635
2635
  },
2636
- "schemaVersion": "3.34.0"
2636
+ "schemaVersion": "3.35.0"
2637
2637
  }
@@ -2105,5 +2105,5 @@
2105
2105
  }
2106
2106
  }
2107
2107
  },
2108
- "schemaVersion": "3.34.0"
2108
+ "schemaVersion": "3.35.0"
2109
2109
  }
@@ -91,5 +91,5 @@
91
91
  }
92
92
  }
93
93
  },
94
- "schemaVersion": "3.34.0"
94
+ "schemaVersion": "3.35.0"
95
95
  }
@@ -397,6 +397,6 @@
397
397
  }
398
398
  }
399
399
  },
400
- "schemaVersion": "3.34.0",
400
+ "schemaVersion": "3.35.0",
401
401
  "services": {}
402
402
  }
@@ -1129,6 +1129,6 @@
1129
1129
  }
1130
1130
  }
1131
1131
  },
1132
- "schemaVersion": "3.34.0",
1132
+ "schemaVersion": "3.35.0",
1133
1133
  "services": {}
1134
1134
  }
@@ -1129,6 +1129,6 @@
1129
1129
  }
1130
1130
  }
1131
1131
  },
1132
- "schemaVersion": "3.34.0",
1132
+ "schemaVersion": "3.35.0",
1133
1133
  "services": {}
1134
1134
  }
@@ -1004,6 +1004,6 @@
1004
1004
  }
1005
1005
  }
1006
1006
  },
1007
- "schemaVersion": "3.34.0",
1007
+ "schemaVersion": "3.35.0",
1008
1008
  "apiVersion": "2"
1009
- }
1009
+ }