@takeshape/schema 8.144.4 → 8.146.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 (125) hide show
  1. package/dist/builtin-schema.d.ts.map +1 -1
  2. package/dist/builtin-schema.js +17 -0
  3. package/dist/get-is-leaf.d.ts +1 -1
  4. package/dist/get-is-leaf.d.ts.map +1 -1
  5. package/dist/get-is-leaf.js +3 -1
  6. package/dist/migration/index.d.ts +1 -0
  7. package/dist/migration/index.d.ts.map +1 -1
  8. package/dist/migration/index.js +4 -1
  9. package/dist/migration/to/v3.0.0.d.ts.map +1 -1
  10. package/dist/migration/to/v3.18.0.d.ts +5 -0
  11. package/dist/migration/to/v3.18.0.d.ts.map +1 -0
  12. package/dist/migration/to/v3.18.0.js +85 -0
  13. package/dist/mocks.d.ts.map +1 -1
  14. package/dist/mocks.js +4 -2
  15. package/dist/project-schema/index.d.ts +4 -1
  16. package/dist/project-schema/index.d.ts.map +1 -1
  17. package/dist/project-schema/index.js +20 -3
  18. package/dist/project-schema/latest.d.ts +4 -139
  19. package/dist/project-schema/latest.d.ts.map +1 -1
  20. package/dist/project-schema/migrate.d.ts.map +1 -1
  21. package/dist/project-schema/migrate.js +4 -0
  22. package/dist/project-schema/v3.18.0.d.ts +1334 -0
  23. package/dist/project-schema/v3.18.0.d.ts.map +1 -0
  24. package/dist/project-schema/v3.18.0.js +5 -0
  25. package/dist/refs.d.ts +14 -2
  26. package/dist/refs.d.ts.map +1 -1
  27. package/dist/refs.js +26 -0
  28. package/dist/relationships.d.ts +28 -2
  29. package/dist/relationships.d.ts.map +1 -1
  30. package/dist/relationships.js +234 -19
  31. package/dist/rewrite.d.ts.map +1 -1
  32. package/dist/rewrite.js +10 -2
  33. package/dist/schema-util.d.ts +1 -18
  34. package/dist/schema-util.d.ts.map +1 -1
  35. package/dist/schema-util.js +36 -120
  36. package/dist/schemas/index.d.ts +2 -2
  37. package/dist/schemas/index.d.ts.map +1 -1
  38. package/dist/schemas/index.js +6 -4
  39. package/dist/schemas/index.ts +4 -2
  40. package/dist/schemas/project-schema/latest.json +2175 -2195
  41. package/dist/schemas/project-schema/v3.18.0.json +2350 -0
  42. package/dist/schemas/project-schema.json +3 -0
  43. package/dist/template-shapes/templates.d.ts +5 -0
  44. package/dist/template-shapes/templates.d.ts.map +1 -1
  45. package/dist/template-shapes/templates.js +59 -28
  46. package/dist/template-shapes/where.d.ts +3 -4
  47. package/dist/template-shapes/where.d.ts.map +1 -1
  48. package/dist/template-shapes/where.js +32 -26
  49. package/dist/types/types.d.ts +42 -2
  50. package/dist/types/types.d.ts.map +1 -1
  51. package/dist/types/utils.d.ts +2 -0
  52. package/dist/types/utils.d.ts.map +1 -1
  53. package/dist/types/utils.js +9 -1
  54. package/dist/unions.d.ts.map +1 -1
  55. package/dist/unions.js +3 -1
  56. package/dist/util/detect-cycles.d.ts +3 -1
  57. package/dist/util/detect-cycles.d.ts.map +1 -1
  58. package/dist/util/detect-cycles.js +37 -28
  59. package/dist/util/form-config.d.ts +9 -0
  60. package/dist/util/form-config.d.ts.map +1 -0
  61. package/dist/util/form-config.js +97 -0
  62. package/dist/util/index.d.ts +1 -0
  63. package/dist/util/index.d.ts.map +1 -1
  64. package/dist/util/index.js +13 -0
  65. package/dist/validate.d.ts.map +1 -1
  66. package/dist/validate.js +75 -45
  67. package/es/builtin-schema.js +17 -0
  68. package/es/get-is-leaf.js +2 -1
  69. package/es/migration/index.js +3 -1
  70. package/es/migration/to/v3.18.0.js +72 -0
  71. package/es/mocks.js +4 -2
  72. package/es/project-schema/index.js +3 -1
  73. package/es/project-schema/migrate.js +5 -1
  74. package/es/project-schema/v3.18.0.js +1 -0
  75. package/es/refs.js +22 -1
  76. package/es/relationships.js +215 -19
  77. package/es/rewrite.js +10 -2
  78. package/es/schema-util.js +38 -119
  79. package/es/schemas/index.js +4 -3
  80. package/es/schemas/index.ts +4 -2
  81. package/es/schemas/project-schema/latest.json +2175 -2195
  82. package/es/schemas/project-schema/v3.18.0.json +2350 -0
  83. package/es/schemas/project-schema.json +3 -0
  84. package/es/template-shapes/templates.js +55 -29
  85. package/es/template-shapes/where.js +29 -23
  86. package/es/types/utils.js +8 -2
  87. package/es/unions.js +2 -1
  88. package/es/util/detect-cycles.js +36 -28
  89. package/es/util/form-config.js +85 -0
  90. package/es/util/index.js +2 -1
  91. package/es/validate.js +74 -46
  92. package/examples/latest/betzino.json +12383 -6066
  93. package/examples/latest/blog-schema.json +46 -25
  94. package/examples/latest/brewery-schema.json +14 -9
  95. package/examples/latest/complex-project-schema.json +442 -244
  96. package/examples/latest/complex-schema.json +17205 -0
  97. package/examples/latest/fabric-ecommerce.json +2 -2
  98. package/examples/latest/frank-and-fred-schema.json +5141 -2391
  99. package/examples/latest/klirr-schema.json +35445 -0
  100. package/examples/latest/massive-schema.json +1205 -640
  101. package/examples/latest/mill-components-schema.json +241 -113
  102. package/examples/latest/one-earth.json +14429 -0
  103. package/examples/latest/pet-oneof-array.json +2 -2
  104. package/examples/latest/post-schema.json +18 -11
  105. package/examples/latest/pruned-shopify-product-schema.json +2 -2
  106. package/examples/latest/real-world-schema.json +81 -41
  107. package/examples/latest/recursive-repeater-schema.json +14 -9
  108. package/examples/latest/recursive-schema.json +14 -9
  109. package/examples/latest/rick-and-morty-ast.json +138 -80
  110. package/examples/latest/rick-and-morty-graphql.json +78 -45
  111. package/examples/latest/rick-and-morty-rest.json +2 -2
  112. package/examples/latest/schema-with-repeater-draftjs.json +38 -23
  113. package/examples/latest/shape-books-v3_2_0.json +138 -80
  114. package/examples/latest/shape-books.json +138 -80
  115. package/examples/latest/shopify-lookbook.json +30 -16
  116. package/examples/latest/shopify-namespace-schema.json +364 -0
  117. package/examples/latest/shopify-store-with-widget.json +2 -2
  118. package/examples/latest/stripe-starter-resolved.json +14 -8
  119. package/examples/latest/user-schema-no-required.json +2 -2
  120. package/examples/latest/user-schema-with-defaults.json +2 -2
  121. package/examples/source/complex-schema.json +12760 -0
  122. package/examples/source/klirr-schema.json +27716 -0
  123. package/examples/source/one-earth.json +11897 -0
  124. package/examples/source/post-schema.json +0 -1
  125. package/package.json +5 -4
@@ -1478,30 +1478,40 @@
1478
1478
  "image": {
1479
1479
  "title": "Image",
1480
1480
  "@mapping": "takeshape:local:HomepageHero.H1vBnAv8-",
1481
- "$ref": "#/shapes/TSRelationship/schema",
1482
- "@relationship": {
1483
- "shapeIds": [
1484
- "ASSET"
1485
- ],
1486
- "type": "single"
1487
- },
1488
1481
  "@backreference": {
1489
1482
  "enabled": true
1483
+ },
1484
+ "@ref": "local:Asset",
1485
+ "@input": {
1486
+ "@ref": "local:TSRelationship"
1487
+ },
1488
+ "@args": "TSRelationshipArgs",
1489
+ "@resolver": {
1490
+ "name": "takeshape:getRelated",
1491
+ "service": "takeshape:local",
1492
+ "options": {
1493
+ "nullable": true
1494
+ }
1490
1495
  }
1491
1496
  },
1492
1497
  "featuredPost": {
1493
1498
  "title": "Featured Post",
1494
1499
  "@mapping": "takeshape:local:HomepageHero.SJ1Xo0v8b",
1495
- "$ref": "#/shapes/TSRelationship/schema",
1496
- "@relationship": {
1497
- "shapeIds": [
1498
- "rJoobhv8W"
1499
- ],
1500
- "type": "single"
1501
- },
1502
1500
  "@backreference": {
1503
1501
  "enabled": true,
1504
1502
  "name": "heroFeaturedPost"
1503
+ },
1504
+ "@ref": "local:Post",
1505
+ "@input": {
1506
+ "@ref": "local:TSRelationship"
1507
+ },
1508
+ "@args": "TSRelationshipArgs",
1509
+ "@resolver": {
1510
+ "name": "takeshape:getRelated",
1511
+ "service": "takeshape:local",
1512
+ "options": {
1513
+ "nullable": true
1514
+ }
1505
1515
  }
1506
1516
  }
1507
1517
  }
@@ -1735,20 +1745,28 @@
1735
1745
  "@ref": "local:NestedA"
1736
1746
  },
1737
1747
  "tags": {
1738
- "type": "array",
1739
1748
  "items": {
1740
- "$ref": "#/shapes/TSRelationship/schema"
1741
- },
1742
- "@relationship": {
1743
- "shapeIds": [
1744
- "HJMNZ41OQ"
1745
- ],
1746
- "type": "multiple"
1749
+ "@ref": "local:Tags"
1747
1750
  },
1748
1751
  "title": "Tags",
1749
1752
  "@mapping": "takeshape:local:Post.S1yO-EJdX",
1750
1753
  "@backreference": {
1751
1754
  "enabled": true
1755
+ },
1756
+ "type": "array",
1757
+ "@input": {
1758
+ "type": "array",
1759
+ "items": {
1760
+ "@ref": "local:TSRelationship"
1761
+ }
1762
+ },
1763
+ "@args": "TSRelationshipArgs",
1764
+ "@resolver": {
1765
+ "name": "takeshape:getRelated",
1766
+ "service": "takeshape:local",
1767
+ "options": {
1768
+ "nullable": true
1769
+ }
1752
1770
  }
1753
1771
  },
1754
1772
  "deck": {
@@ -1758,31 +1776,41 @@
1758
1776
  "@mapping": "takeshape:local:Post.HkJzKRDUb"
1759
1777
  },
1760
1778
  "author": {
1761
- "$ref": "#/shapes/TSRelationship/schema",
1762
- "@relationship": {
1763
- "shapeIds": [
1764
- "SJDIicDUZ"
1765
- ],
1766
- "type": "single"
1767
- },
1768
1779
  "title": "Author",
1769
1780
  "@mapping": "takeshape:local:Post.rJgad7TLZ",
1770
1781
  "@backreference": {
1771
1782
  "enabled": true
1783
+ },
1784
+ "@ref": "local:Author",
1785
+ "@input": {
1786
+ "@ref": "local:TSRelationship"
1787
+ },
1788
+ "@args": "TSRelationshipArgs",
1789
+ "@resolver": {
1790
+ "name": "takeshape:getRelated",
1791
+ "service": "takeshape:local",
1792
+ "options": {
1793
+ "nullable": true
1794
+ }
1772
1795
  }
1773
1796
  },
1774
1797
  "featureImage": {
1775
- "$ref": "#/shapes/TSRelationship/schema",
1776
- "@relationship": {
1777
- "shapeIds": [
1778
- "ASSET"
1779
- ],
1780
- "type": "single"
1781
- },
1782
1798
  "title": "Feature Image",
1783
1799
  "@mapping": "takeshape:local:Post.BybUznPIW",
1784
1800
  "@backreference": {
1785
1801
  "enabled": true
1802
+ },
1803
+ "@ref": "local:Asset",
1804
+ "@input": {
1805
+ "@ref": "local:TSRelationship"
1806
+ },
1807
+ "@args": "TSRelationshipArgs",
1808
+ "@resolver": {
1809
+ "name": "takeshape:getRelated",
1810
+ "service": "takeshape:local",
1811
+ "options": {
1812
+ "nullable": true
1813
+ }
1786
1814
  }
1787
1815
  },
1788
1816
  "body": {
@@ -1886,15 +1914,20 @@
1886
1914
  "photo": {
1887
1915
  "title": "Photo",
1888
1916
  "@mapping": "takeshape:local:Author.BkyFrpUcb",
1889
- "$ref": "#/shapes/TSRelationship/schema",
1890
- "@relationship": {
1891
- "shapeIds": [
1892
- "ASSET"
1893
- ],
1894
- "type": "single"
1895
- },
1896
1917
  "@backreference": {
1897
1918
  "enabled": true
1919
+ },
1920
+ "@ref": "local:Asset",
1921
+ "@input": {
1922
+ "@ref": "local:TSRelationship"
1923
+ },
1924
+ "@args": "TSRelationshipArgs",
1925
+ "@resolver": {
1926
+ "name": "takeshape:getRelated",
1927
+ "service": "takeshape:local",
1928
+ "options": {
1929
+ "nullable": true
1930
+ }
1898
1931
  }
1899
1932
  },
1900
1933
  "biography": {
@@ -2300,5 +2333,5 @@
2300
2333
  }
2301
2334
  }
2302
2335
  },
2303
- "schemaVersion": "3.17.1"
2304
- }
2336
+ "schemaVersion": "3.18.0"
2337
+ }
@@ -96,5 +96,5 @@
96
96
  }
97
97
  }
98
98
  },
99
- "schemaVersion": "3.17.1"
100
- }
99
+ "schemaVersion": "3.18.0"
100
+ }
@@ -109,15 +109,20 @@
109
109
  "introductionImage": {
110
110
  "title": "Introduction Image",
111
111
  "@mapping": "takeshape:local:Post.Skl-AZomb",
112
- "$ref": "#/shapes/TSRelationship/schema",
113
- "@relationship": {
114
- "shapeIds": [
115
- "ASSET"
116
- ],
117
- "type": "single"
118
- },
119
112
  "@backreference": {
120
113
  "enabled": true
114
+ },
115
+ "@ref": "local:Asset",
116
+ "@input": {
117
+ "@ref": "local:TSRelationship"
118
+ },
119
+ "@args": "TSRelationshipArgs",
120
+ "@resolver": {
121
+ "name": "takeshape:getRelated",
122
+ "service": "takeshape:local",
123
+ "options": {
124
+ "nullable": true
125
+ }
121
126
  }
122
127
  },
123
128
  "featuredLinks": {
@@ -138,15 +143,20 @@
138
143
  "resourcesBackground": {
139
144
  "title": "Resources Background",
140
145
  "@mapping": "takeshape:local:Post.S1fKBMjmW",
141
- "$ref": "#/shapes/TSRelationship/schema",
142
- "@relationship": {
143
- "shapeIds": [
144
- "ASSET"
145
- ],
146
- "type": "single"
147
- },
148
146
  "@backreference": {
149
147
  "enabled": true
148
+ },
149
+ "@ref": "local:Asset",
150
+ "@input": {
151
+ "@ref": "local:TSRelationship"
152
+ },
153
+ "@args": "TSRelationshipArgs",
154
+ "@resolver": {
155
+ "name": "takeshape:getRelated",
156
+ "service": "takeshape:local",
157
+ "options": {
158
+ "nullable": true
159
+ }
150
160
  }
151
161
  },
152
162
  "introduction": {
@@ -190,15 +200,20 @@
190
200
  "image": {
191
201
  "title": "Image",
192
202
  "@mapping": "takeshape:local:PostFeatures.rJyNm1iQb",
193
- "$ref": "#/shapes/TSRelationship/schema",
194
- "@relationship": {
195
- "shapeIds": [
196
- "ASSET"
197
- ],
198
- "type": "single"
199
- },
200
203
  "@backreference": {
201
204
  "enabled": true
205
+ },
206
+ "@ref": "local:Asset",
207
+ "@input": {
208
+ "@ref": "local:TSRelationship"
209
+ },
210
+ "@args": "TSRelationshipArgs",
211
+ "@resolver": {
212
+ "name": "takeshape:getRelated",
213
+ "service": "takeshape:local",
214
+ "options": {
215
+ "nullable": true
216
+ }
202
217
  }
203
218
  },
204
219
  "copy": {
@@ -386,6 +401,6 @@
386
401
  }
387
402
  }
388
403
  },
389
- "schemaVersion": "3.17.1",
404
+ "schemaVersion": "3.18.0",
390
405
  "services": {}
391
- }
406
+ }
@@ -729,15 +729,20 @@
729
729
  "featureImage": {
730
730
  "title": "Feature Image",
731
731
  "@mapping": "takeshape:local:Post.BybUznPIW",
732
- "$ref": "#/shapes/TSRelationship/schema",
733
- "@relationship": {
734
- "shapeIds": [
735
- "ASSET"
736
- ],
737
- "type": "single"
738
- },
739
732
  "@backreference": {
740
733
  "enabled": true
734
+ },
735
+ "@ref": "local:Asset",
736
+ "@input": {
737
+ "@ref": "local:TSRelationship"
738
+ },
739
+ "@args": "TSRelationshipArgs",
740
+ "@resolver": {
741
+ "name": "takeshape:getRelated",
742
+ "service": "takeshape:local",
743
+ "options": {
744
+ "nullable": true
745
+ }
741
746
  }
742
747
  },
743
748
  "title": {
@@ -749,15 +754,20 @@
749
754
  "author": {
750
755
  "title": "Author",
751
756
  "@mapping": "takeshape:local:Post.rJgad7TLZ",
752
- "$ref": "#/shapes/TSRelationship/schema",
753
- "@relationship": {
754
- "shapeIds": [
755
- "SJDIicDUZ"
756
- ],
757
- "type": "single"
758
- },
759
757
  "@backreference": {
760
758
  "enabled": true
759
+ },
760
+ "@ref": "local:Author",
761
+ "@input": {
762
+ "@ref": "local:TSRelationship"
763
+ },
764
+ "@args": "TSRelationshipArgs",
765
+ "@resolver": {
766
+ "name": "takeshape:getRelated",
767
+ "service": "takeshape:local",
768
+ "options": {
769
+ "nullable": true
770
+ }
761
771
  }
762
772
  },
763
773
  "deck": {
@@ -769,18 +779,26 @@
769
779
  "tags": {
770
780
  "title": "Tags",
771
781
  "@mapping": "takeshape:local:Post.Hkb57EkOQ",
772
- "type": "array",
773
782
  "items": {
774
- "$ref": "#/shapes/TSRelationship/schema"
775
- },
776
- "@relationship": {
777
- "shapeIds": [
778
- "rJBYXVyuQ"
779
- ],
780
- "type": "multiple"
783
+ "@ref": "local:Tag"
781
784
  },
782
785
  "@backreference": {
783
786
  "enabled": true
787
+ },
788
+ "type": "array",
789
+ "@input": {
790
+ "type": "array",
791
+ "items": {
792
+ "@ref": "local:TSRelationship"
793
+ }
794
+ },
795
+ "@args": "TSRelationshipArgs",
796
+ "@resolver": {
797
+ "name": "takeshape:getRelated",
798
+ "service": "takeshape:local",
799
+ "options": {
800
+ "nullable": true
801
+ }
784
802
  }
785
803
  }
786
804
  },
@@ -809,15 +827,20 @@
809
827
  "photo": {
810
828
  "title": "Photo",
811
829
  "@mapping": "takeshape:local:Author.BkyFrpUcb",
812
- "$ref": "#/shapes/TSRelationship/schema",
813
- "@relationship": {
814
- "shapeIds": [
815
- "ASSET"
816
- ],
817
- "type": "single"
818
- },
819
830
  "@backreference": {
820
831
  "enabled": true
832
+ },
833
+ "@ref": "local:Asset",
834
+ "@input": {
835
+ "@ref": "local:TSRelationship"
836
+ },
837
+ "@args": "TSRelationshipArgs",
838
+ "@resolver": {
839
+ "name": "takeshape:getRelated",
840
+ "service": "takeshape:local",
841
+ "options": {
842
+ "nullable": true
843
+ }
821
844
  }
822
845
  },
823
846
  "biography": {
@@ -853,15 +876,20 @@
853
876
  "featuredBook": {
854
877
  "title": "Featured Book",
855
878
  "@mapping": "takeshape:local:Homepage.r1xPx1OUW",
856
- "$ref": "#/shapes/TSRelationship/schema",
857
- "@relationship": {
858
- "shapeIds": [
859
- "r166qcP8Z"
860
- ],
861
- "type": "single"
862
- },
863
879
  "@backreference": {
864
880
  "enabled": true
881
+ },
882
+ "@ref": "local:Book",
883
+ "@input": {
884
+ "@ref": "local:TSRelationship"
885
+ },
886
+ "@args": "TSRelationshipArgs",
887
+ "@resolver": {
888
+ "name": "takeshape:getRelated",
889
+ "service": "takeshape:local",
890
+ "options": {
891
+ "nullable": true
892
+ }
865
893
  }
866
894
  },
867
895
  "hero": {
@@ -882,30 +910,40 @@
882
910
  "image": {
883
911
  "title": "Image",
884
912
  "@mapping": "takeshape:local:HomepageHero.H1vBnAv8-",
885
- "$ref": "#/shapes/TSRelationship/schema",
886
- "@relationship": {
887
- "shapeIds": [
888
- "ASSET"
889
- ],
890
- "type": "single"
891
- },
892
913
  "@backreference": {
893
914
  "enabled": true
915
+ },
916
+ "@ref": "local:Asset",
917
+ "@input": {
918
+ "@ref": "local:TSRelationship"
919
+ },
920
+ "@args": "TSRelationshipArgs",
921
+ "@resolver": {
922
+ "name": "takeshape:getRelated",
923
+ "service": "takeshape:local",
924
+ "options": {
925
+ "nullable": true
926
+ }
894
927
  }
895
928
  },
896
929
  "featuredPost": {
897
930
  "title": "Featured Post",
898
931
  "@mapping": "takeshape:local:HomepageHero.SJ1Xo0v8b",
899
- "$ref": "#/shapes/TSRelationship/schema",
900
- "@relationship": {
901
- "shapeIds": [
902
- "rJoobhv8W"
903
- ],
904
- "type": "single"
905
- },
906
932
  "@backreference": {
907
933
  "enabled": true,
908
934
  "name": "heroFeaturedPost"
935
+ },
936
+ "@ref": "local:Post",
937
+ "@input": {
938
+ "@ref": "local:TSRelationship"
939
+ },
940
+ "@args": "TSRelationshipArgs",
941
+ "@resolver": {
942
+ "name": "takeshape:getRelated",
943
+ "service": "takeshape:local",
944
+ "options": {
945
+ "nullable": true
946
+ }
909
947
  }
910
948
  }
911
949
  }
@@ -981,15 +1019,20 @@
981
1019
  "authorTag": {
982
1020
  "title": "Author Tag",
983
1021
  "@mapping": "takeshape:local:Asset.SyQiZrgdX",
984
- "$ref": "#/shapes/TSRelationship/schema",
985
- "@relationship": {
986
- "shapeIds": [
987
- "SJDIicDUZ"
988
- ],
989
- "type": "single"
990
- },
991
1022
  "@backreference": {
992
1023
  "enabled": true
1024
+ },
1025
+ "@ref": "local:Author",
1026
+ "@input": {
1027
+ "@ref": "local:TSRelationship"
1028
+ },
1029
+ "@args": "TSRelationshipArgs",
1030
+ "@resolver": {
1031
+ "name": "takeshape:getRelated",
1032
+ "service": "takeshape:local",
1033
+ "options": {
1034
+ "nullable": true
1035
+ }
993
1036
  }
994
1037
  },
995
1038
  "credit": {
@@ -1018,45 +1061,60 @@
1018
1061
  "author": {
1019
1062
  "title": "Author",
1020
1063
  "@mapping": "takeshape:local:Book.BJ7Xn5vLW",
1021
- "$ref": "#/shapes/TSRelationship/schema",
1022
- "@relationship": {
1023
- "shapeIds": [
1024
- "SJDIicDUZ"
1025
- ],
1026
- "type": "single"
1027
- },
1028
1064
  "@backreference": {
1029
1065
  "enabled": true,
1030
1066
  "name": "authored"
1067
+ },
1068
+ "@ref": "local:Author",
1069
+ "@input": {
1070
+ "@ref": "local:TSRelationship"
1071
+ },
1072
+ "@args": "TSRelationshipArgs",
1073
+ "@resolver": {
1074
+ "name": "takeshape:getRelated",
1075
+ "service": "takeshape:local",
1076
+ "options": {
1077
+ "nullable": true
1078
+ }
1031
1079
  }
1032
1080
  },
1033
1081
  "coverImage": {
1034
1082
  "title": "Cover Image",
1035
1083
  "@mapping": "takeshape:local:Book.SymsKiD8W",
1036
- "$ref": "#/shapes/TSRelationship/schema",
1037
- "@relationship": {
1038
- "shapeIds": [
1039
- "ASSET"
1040
- ],
1041
- "type": "single"
1042
- },
1043
1084
  "@backreference": {
1044
1085
  "enabled": true
1086
+ },
1087
+ "@ref": "local:Asset",
1088
+ "@input": {
1089
+ "@ref": "local:TSRelationship"
1090
+ },
1091
+ "@args": "TSRelationshipArgs",
1092
+ "@resolver": {
1093
+ "name": "takeshape:getRelated",
1094
+ "service": "takeshape:local",
1095
+ "options": {
1096
+ "nullable": true
1097
+ }
1045
1098
  }
1046
1099
  },
1047
1100
  "genre": {
1048
1101
  "title": "Genre",
1049
1102
  "@mapping": "takeshape:local:Book.B1E4ZMkW7",
1050
- "$ref": "#/shapes/TSRelationship/schema",
1051
- "@relationship": {
1052
- "shapeIds": [
1053
- "rJ9bZzk-m"
1054
- ],
1055
- "type": "single"
1056
- },
1057
1103
  "@backreference": {
1058
1104
  "enabled": true,
1059
1105
  "name": "books"
1106
+ },
1107
+ "@ref": "local:Genre",
1108
+ "@input": {
1109
+ "@ref": "local:TSRelationship"
1110
+ },
1111
+ "@args": "TSRelationshipArgs",
1112
+ "@resolver": {
1113
+ "name": "takeshape:getRelated",
1114
+ "service": "takeshape:local",
1115
+ "options": {
1116
+ "nullable": true
1117
+ }
1060
1118
  }
1061
1119
  },
1062
1120
  "publishDate": {
@@ -1110,6 +1168,6 @@
1110
1168
  }
1111
1169
  }
1112
1170
  },
1113
- "schemaVersion": "3.17.1",
1171
+ "schemaVersion": "3.18.0",
1114
1172
  "services": {}
1115
- }
1173
+ }