@platformatic/composer 3.4.1 → 3.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/LICENSE +1 -1
  2. package/config.d.ts +482 -131
  3. package/eslint.config.js +4 -2
  4. package/index.d.ts +1 -17
  5. package/index.js +9 -210
  6. package/package.json +18 -59
  7. package/schema.json +2121 -843
  8. package/scripts/schema.js +12 -0
  9. package/.c8rc +0 -6
  10. package/composer.mjs +0 -54
  11. package/help/create.txt +0 -11
  12. package/help/help.txt +0 -7
  13. package/help/openapi schemas fetch.txt +0 -9
  14. package/help/start.txt +0 -54
  15. package/index.test-d.ts +0 -23
  16. package/lib/composer-hook.js +0 -60
  17. package/lib/create.mjs +0 -84
  18. package/lib/errors.js +0 -13
  19. package/lib/generator/README.md +0 -30
  20. package/lib/generator/composer-generator.d.ts +0 -11
  21. package/lib/generator/composer-generator.js +0 -128
  22. package/lib/graphql-fetch.js +0 -85
  23. package/lib/graphql-generator.js +0 -31
  24. package/lib/graphql.js +0 -20
  25. package/lib/openapi-composer.js +0 -81
  26. package/lib/openapi-config-schema.js +0 -93
  27. package/lib/openapi-fetch-schemas.mjs +0 -61
  28. package/lib/openapi-generator.js +0 -167
  29. package/lib/openapi-load-config.js +0 -31
  30. package/lib/openapi-modifier.js +0 -137
  31. package/lib/openapi.js +0 -49
  32. package/lib/proxy.js +0 -161
  33. package/lib/root-endpoint/index.js +0 -28
  34. package/lib/root-endpoint/public/images/dark_mode.svg +0 -3
  35. package/lib/root-endpoint/public/images/favicon.ico +0 -0
  36. package/lib/root-endpoint/public/images/light_mode.svg +0 -11
  37. package/lib/root-endpoint/public/images/platformatic-logo-dark.svg +0 -30
  38. package/lib/root-endpoint/public/images/platformatic-logo-light.svg +0 -30
  39. package/lib/root-endpoint/public/images/triangle_dark.svg +0 -3
  40. package/lib/root-endpoint/public/images/triangle_light.svg +0 -3
  41. package/lib/root-endpoint/public/index.html +0 -237
  42. package/lib/schema.js +0 -210
  43. package/lib/stackable.js +0 -59
  44. package/lib/upgrade.js +0 -22
  45. package/lib/utils.js +0 -27
  46. package/lib/versions/2.0.0.js +0 -11
package/schema.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
- "$id": "https://schemas.platformatic.dev/@platformatic/composer/3.4.1.json",
2
+ "$id": "https://schemas.platformatic.dev/@platformatic/composer/3.5.1.json",
3
3
  "$schema": "http://json-schema.org/draft-07/schema#",
4
- "title": "Platformatic Composer",
4
+ "title": "Platformatic Composer Config",
5
5
  "type": "object",
6
6
  "properties": {
7
7
  "basePath": {
@@ -139,17 +139,25 @@
139
139
  "type": "object",
140
140
  "properties": {
141
141
  "target": {
142
- "type": "string",
143
- "resolveModule": true
142
+ "anyOf": [
143
+ {
144
+ "type": "string",
145
+ "resolveModule": true
146
+ },
147
+ {
148
+ "type": "string",
149
+ "resolvePath": true
150
+ }
151
+ ]
144
152
  },
145
153
  "options": {
146
154
  "type": "object"
147
155
  },
148
156
  "level": {
149
157
  "type": "string"
150
- },
151
- "additionalProperties": false
152
- }
158
+ }
159
+ },
160
+ "additionalProperties": false
153
161
  }
154
162
  },
155
163
  "options": {
@@ -172,6 +180,64 @@
172
180
  }
173
181
  },
174
182
  "additionalProperties": false
183
+ },
184
+ "formatters": {
185
+ "type": "object",
186
+ "properties": {
187
+ "path": {
188
+ "type": "string",
189
+ "resolvePath": true
190
+ }
191
+ },
192
+ "required": [
193
+ "path"
194
+ ],
195
+ "additionalProperties": false
196
+ },
197
+ "timestamp": {
198
+ "enum": [
199
+ "epochTime",
200
+ "unixTime",
201
+ "nullTime",
202
+ "isoTime"
203
+ ]
204
+ },
205
+ "redact": {
206
+ "type": "object",
207
+ "properties": {
208
+ "paths": {
209
+ "type": "array",
210
+ "items": {
211
+ "type": "string"
212
+ }
213
+ },
214
+ "censor": {
215
+ "type": "string",
216
+ "default": "[redacted]"
217
+ }
218
+ },
219
+ "required": [
220
+ "paths"
221
+ ],
222
+ "additionalProperties": false
223
+ },
224
+ "base": {
225
+ "anyOf": [
226
+ {
227
+ "type": "object",
228
+ "additionalProperties": true
229
+ },
230
+ {
231
+ "type": "null"
232
+ }
233
+ ]
234
+ },
235
+ "messageKey": {
236
+ "type": "string"
237
+ },
238
+ "customLevels": {
239
+ "type": "object",
240
+ "additionalProperties": true
175
241
  }
176
242
  },
177
243
  "required": [
@@ -472,968 +538,2180 @@
472
538
  },
473
539
  "additionalProperties": false
474
540
  },
475
- "composer": {
541
+ "types": {
476
542
  "type": "object",
477
543
  "properties": {
478
- "services": {
544
+ "autogenerate": {
545
+ "type": "boolean"
546
+ },
547
+ "dir": {
548
+ "description": "The path to the directory the types should be generated in.",
549
+ "type": "string",
550
+ "default": "types",
551
+ "resolvePath": true
552
+ }
553
+ },
554
+ "additionalProperties": false
555
+ },
556
+ "plugins": {
557
+ "type": "object",
558
+ "properties": {
559
+ "packages": {
479
560
  "type": "array",
480
561
  "items": {
481
- "type": "object",
482
- "properties": {
483
- "id": {
484
- "type": "string"
485
- },
486
- "origin": {
562
+ "anyOf": [
563
+ {
487
564
  "type": "string"
488
565
  },
489
- "openapi": {
566
+ {
490
567
  "type": "object",
491
568
  "properties": {
492
- "url": {
569
+ "name": {
493
570
  "type": "string"
494
571
  },
495
- "file": {
572
+ "options": {
573
+ "type": "object",
574
+ "additionalProperties": true
575
+ }
576
+ },
577
+ "required": [
578
+ "name"
579
+ ]
580
+ }
581
+ ]
582
+ }
583
+ },
584
+ "paths": {
585
+ "type": "array",
586
+ "items": {
587
+ "anyOf": [
588
+ {
589
+ "type": "string",
590
+ "resolvePath": true
591
+ },
592
+ {
593
+ "type": "object",
594
+ "properties": {
595
+ "path": {
496
596
  "type": "string",
497
597
  "resolvePath": true
498
598
  },
499
- "prefix": {
599
+ "encapsulate": {
600
+ "type": "boolean",
601
+ "default": true
602
+ },
603
+ "maxDepth": {
604
+ "type": "integer"
605
+ },
606
+ "autoHooks": {
607
+ "type": "boolean"
608
+ },
609
+ "autoHooksPattern": {
500
610
  "type": "string"
501
611
  },
502
- "config": {
503
- "type": "string",
504
- "resolvePath": true
505
- }
506
- },
507
- "anyOf": [
508
- {
509
- "required": [
510
- "url"
511
- ]
612
+ "cascadeHooks": {
613
+ "type": "boolean"
512
614
  },
513
- {
514
- "required": [
515
- "file"
516
- ]
615
+ "overwriteHooks": {
616
+ "type": "boolean"
617
+ },
618
+ "routeParams": {
619
+ "type": "boolean"
620
+ },
621
+ "forceESM": {
622
+ "type": "boolean"
623
+ },
624
+ "ignoreFilter": {
625
+ "type": "string"
626
+ },
627
+ "matchFilter": {
628
+ "type": "string"
629
+ },
630
+ "ignorePattern": {
631
+ "type": "string"
632
+ },
633
+ "scriptPattern": {
634
+ "type": "string"
635
+ },
636
+ "indexPattern": {
637
+ "type": "string"
638
+ },
639
+ "options": {
640
+ "type": "object",
641
+ "additionalProperties": true
517
642
  }
518
- ],
519
- "additionalProperties": false
643
+ }
644
+ }
645
+ ]
646
+ }
647
+ }
648
+ },
649
+ "additionalProperties": false,
650
+ "anyOf": [
651
+ {
652
+ "required": [
653
+ "paths"
654
+ ]
655
+ },
656
+ {
657
+ "required": [
658
+ "packages"
659
+ ]
660
+ }
661
+ ]
662
+ },
663
+ "application": {
664
+ "type": "object",
665
+ "properties": {},
666
+ "additionalProperties": false,
667
+ "required": [],
668
+ "default": {}
669
+ },
670
+ "runtime": {
671
+ "type": "object",
672
+ "properties": {
673
+ "preload": {
674
+ "anyOf": [
675
+ {
676
+ "type": "string",
677
+ "resolvePath": true
678
+ },
679
+ {
680
+ "type": "array",
681
+ "items": {
682
+ "type": "string",
683
+ "resolvePath": true
684
+ }
685
+ }
686
+ ]
687
+ },
688
+ "basePath": {
689
+ "type": "string"
690
+ },
691
+ "services": {
692
+ "type": "array",
693
+ "items": {
694
+ "type": "object",
695
+ "anyOf": [
696
+ {
697
+ "required": [
698
+ "id",
699
+ "path"
700
+ ]
520
701
  },
521
- "graphql": {
702
+ {
703
+ "required": [
704
+ "id",
705
+ "url"
706
+ ]
707
+ }
708
+ ],
709
+ "properties": {
710
+ "id": {
711
+ "type": "string"
712
+ },
713
+ "path": {
714
+ "type": "string",
715
+ "allowEmptyPaths": true,
716
+ "resolvePath": true
717
+ },
718
+ "config": {
719
+ "type": "string"
720
+ },
721
+ "url": {
722
+ "type": "string"
723
+ },
724
+ "gitBranch": {
725
+ "type": "string",
726
+ "default": "main"
727
+ },
728
+ "useHttp": {
729
+ "type": "boolean"
730
+ },
731
+ "workers": {
522
732
  "anyOf": [
523
733
  {
524
- "type": "boolean"
734
+ "type": "number",
735
+ "minimum": 1
525
736
  },
526
737
  {
527
- "type": "object",
528
- "properties": {
529
- "host": {
530
- "type": "string"
738
+ "type": "string"
739
+ }
740
+ ]
741
+ },
742
+ "health": {
743
+ "type": "object",
744
+ "default": {},
745
+ "properties": {
746
+ "enabled": {
747
+ "anyOf": [
748
+ {
749
+ "type": "boolean"
531
750
  },
532
- "name": {
751
+ {
752
+ "type": "string"
753
+ }
754
+ ]
755
+ },
756
+ "interval": {
757
+ "anyOf": [
758
+ {
759
+ "type": "number",
760
+ "minimum": 0
761
+ },
762
+ {
763
+ "type": "string"
764
+ }
765
+ ]
766
+ },
767
+ "gracePeriod": {
768
+ "anyOf": [
769
+ {
770
+ "type": "number",
771
+ "minimum": 0
772
+ },
773
+ {
774
+ "type": "string"
775
+ }
776
+ ]
777
+ },
778
+ "maxUnhealthyChecks": {
779
+ "anyOf": [
780
+ {
781
+ "type": "number",
782
+ "minimum": 1
783
+ },
784
+ {
785
+ "type": "string"
786
+ }
787
+ ]
788
+ },
789
+ "maxELU": {
790
+ "anyOf": [
791
+ {
792
+ "type": "number",
793
+ "minimum": 0,
794
+ "maximum": 1
795
+ },
796
+ {
797
+ "type": "string"
798
+ }
799
+ ]
800
+ },
801
+ "maxHeapUsed": {
802
+ "anyOf": [
803
+ {
804
+ "type": "number",
805
+ "minimum": 0,
806
+ "maximum": 1
807
+ },
808
+ {
809
+ "type": "string"
810
+ }
811
+ ]
812
+ },
813
+ "maxHeapTotal": {
814
+ "anyOf": [
815
+ {
816
+ "type": "number",
817
+ "minimum": 0
818
+ },
819
+ {
820
+ "type": "string"
821
+ }
822
+ ]
823
+ },
824
+ "maxYoungGeneration": {
825
+ "anyOf": [
826
+ {
827
+ "type": "number",
828
+ "minimum": 0
829
+ },
830
+ {
831
+ "type": "string"
832
+ }
833
+ ]
834
+ }
835
+ },
836
+ "additionalProperties": false
837
+ },
838
+ "dependencies": {
839
+ "type": "array",
840
+ "items": {
841
+ "type": "string"
842
+ },
843
+ "default": []
844
+ },
845
+ "arguments": {
846
+ "type": "array",
847
+ "items": {
848
+ "type": "string"
849
+ }
850
+ },
851
+ "env": {
852
+ "type": "object",
853
+ "additionalProperties": {
854
+ "type": "string"
855
+ }
856
+ },
857
+ "envfile": {
858
+ "type": "string"
859
+ },
860
+ "sourceMaps": {
861
+ "type": "boolean",
862
+ "default": false
863
+ },
864
+ "packageManager": {
865
+ "type": "string",
866
+ "enum": [
867
+ "npm",
868
+ "pnpm",
869
+ "yarn"
870
+ ]
871
+ },
872
+ "preload": {
873
+ "anyOf": [
874
+ {
875
+ "type": "string",
876
+ "resolvePath": true
877
+ },
878
+ {
879
+ "type": "array",
880
+ "items": {
881
+ "type": "string",
882
+ "resolvePath": true
883
+ }
884
+ }
885
+ ]
886
+ },
887
+ "nodeOptions": {
888
+ "type": "string"
889
+ },
890
+ "telemetry": {
891
+ "type": "object",
892
+ "properties": {
893
+ "instrumentations": {
894
+ "type": "array",
895
+ "description": "An array of instrumentations loaded if telemetry is enabled",
896
+ "items": {
897
+ "oneOf": [
898
+ {
899
+ "type": "string"
900
+ },
901
+ {
902
+ "type": "object",
903
+ "properties": {
904
+ "package": {
905
+ "type": "string"
906
+ },
907
+ "exportName": {
908
+ "type": "string"
909
+ },
910
+ "options": {
911
+ "type": "object",
912
+ "additionalProperties": true
913
+ }
914
+ },
915
+ "required": [
916
+ "package"
917
+ ]
918
+ }
919
+ ]
920
+ }
921
+ }
922
+ }
923
+ }
924
+ }
925
+ }
926
+ },
927
+ "workers": {
928
+ "anyOf": [
929
+ {
930
+ "type": "number",
931
+ "minimum": 1
932
+ },
933
+ {
934
+ "type": "string"
935
+ }
936
+ ],
937
+ "default": 1
938
+ },
939
+ "logger": {
940
+ "type": "object",
941
+ "properties": {
942
+ "level": {
943
+ "type": "string",
944
+ "default": "info",
945
+ "oneOf": [
946
+ {
947
+ "enum": [
948
+ "fatal",
949
+ "error",
950
+ "warn",
951
+ "info",
952
+ "debug",
953
+ "trace",
954
+ "silent"
955
+ ]
956
+ },
957
+ {
958
+ "pattern": "^\\{.+\\}$"
959
+ }
960
+ ]
961
+ },
962
+ "transport": {
963
+ "anyOf": [
964
+ {
965
+ "type": "object",
966
+ "properties": {
967
+ "target": {
968
+ "type": "string",
969
+ "resolveModule": true
970
+ },
971
+ "options": {
972
+ "type": "object"
973
+ }
974
+ },
975
+ "additionalProperties": false
976
+ },
977
+ {
978
+ "type": "object",
979
+ "properties": {
980
+ "targets": {
981
+ "type": "array",
982
+ "items": {
983
+ "type": "object",
984
+ "properties": {
985
+ "target": {
986
+ "anyOf": [
987
+ {
988
+ "type": "string",
989
+ "resolveModule": true
990
+ },
991
+ {
992
+ "type": "string",
993
+ "resolvePath": true
994
+ }
995
+ ]
996
+ },
997
+ "options": {
998
+ "type": "object"
999
+ },
1000
+ "level": {
1001
+ "type": "string"
1002
+ }
1003
+ },
1004
+ "additionalProperties": false
1005
+ }
1006
+ },
1007
+ "options": {
1008
+ "type": "object"
1009
+ }
1010
+ },
1011
+ "additionalProperties": false
1012
+ }
1013
+ ]
1014
+ },
1015
+ "pipeline": {
1016
+ "type": "object",
1017
+ "properties": {
1018
+ "target": {
1019
+ "type": "string",
1020
+ "resolveModule": true
1021
+ },
1022
+ "options": {
1023
+ "type": "object"
1024
+ }
1025
+ },
1026
+ "additionalProperties": false
1027
+ },
1028
+ "formatters": {
1029
+ "type": "object",
1030
+ "properties": {
1031
+ "path": {
1032
+ "type": "string",
1033
+ "resolvePath": true
1034
+ }
1035
+ },
1036
+ "required": [
1037
+ "path"
1038
+ ],
1039
+ "additionalProperties": false
1040
+ },
1041
+ "timestamp": {
1042
+ "enum": [
1043
+ "epochTime",
1044
+ "unixTime",
1045
+ "nullTime",
1046
+ "isoTime"
1047
+ ]
1048
+ },
1049
+ "redact": {
1050
+ "type": "object",
1051
+ "properties": {
1052
+ "paths": {
1053
+ "type": "array",
1054
+ "items": {
1055
+ "type": "string"
1056
+ }
1057
+ },
1058
+ "censor": {
1059
+ "type": "string",
1060
+ "default": "[redacted]"
1061
+ }
1062
+ },
1063
+ "required": [
1064
+ "paths"
1065
+ ],
1066
+ "additionalProperties": false
1067
+ },
1068
+ "base": {
1069
+ "anyOf": [
1070
+ {
1071
+ "type": "object",
1072
+ "additionalProperties": true
1073
+ },
1074
+ {
1075
+ "type": "null"
1076
+ }
1077
+ ]
1078
+ },
1079
+ "messageKey": {
1080
+ "type": "string"
1081
+ },
1082
+ "customLevels": {
1083
+ "type": "object",
1084
+ "additionalProperties": true
1085
+ }
1086
+ },
1087
+ "required": [
1088
+ "level"
1089
+ ],
1090
+ "default": {},
1091
+ "additionalProperties": true
1092
+ },
1093
+ "server": {
1094
+ "type": "object",
1095
+ "properties": {
1096
+ "hostname": {
1097
+ "type": "string",
1098
+ "default": "127.0.0.1"
1099
+ },
1100
+ "port": {
1101
+ "anyOf": [
1102
+ {
1103
+ "type": "integer"
1104
+ },
1105
+ {
1106
+ "type": "string"
1107
+ }
1108
+ ]
1109
+ },
1110
+ "http2": {
1111
+ "type": "boolean"
1112
+ },
1113
+ "https": {
1114
+ "type": "object",
1115
+ "properties": {
1116
+ "allowHTTP1": {
1117
+ "type": "boolean"
1118
+ },
1119
+ "key": {
1120
+ "anyOf": [
1121
+ {
1122
+ "type": "string"
1123
+ },
1124
+ {
1125
+ "type": "object",
1126
+ "properties": {
1127
+ "path": {
1128
+ "type": "string",
1129
+ "resolvePath": true
1130
+ }
1131
+ },
1132
+ "additionalProperties": false
1133
+ },
1134
+ {
1135
+ "type": "array",
1136
+ "items": {
1137
+ "anyOf": [
1138
+ {
1139
+ "type": "string"
1140
+ },
1141
+ {
1142
+ "type": "object",
1143
+ "properties": {
1144
+ "path": {
1145
+ "type": "string",
1146
+ "resolvePath": true
1147
+ }
1148
+ },
1149
+ "additionalProperties": false
1150
+ }
1151
+ ]
1152
+ }
1153
+ }
1154
+ ]
1155
+ },
1156
+ "cert": {
1157
+ "anyOf": [
1158
+ {
1159
+ "type": "string"
1160
+ },
1161
+ {
1162
+ "type": "object",
1163
+ "properties": {
1164
+ "path": {
1165
+ "type": "string",
1166
+ "resolvePath": true
1167
+ }
1168
+ },
1169
+ "additionalProperties": false
1170
+ },
1171
+ {
1172
+ "type": "array",
1173
+ "items": {
1174
+ "anyOf": [
1175
+ {
1176
+ "type": "string"
1177
+ },
1178
+ {
1179
+ "type": "object",
1180
+ "properties": {
1181
+ "path": {
1182
+ "type": "string",
1183
+ "resolvePath": true
1184
+ }
1185
+ },
1186
+ "additionalProperties": false
1187
+ }
1188
+ ]
1189
+ }
1190
+ }
1191
+ ]
1192
+ },
1193
+ "requestCert": {
1194
+ "type": "boolean"
1195
+ },
1196
+ "rejectUnauthorized": {
1197
+ "type": "boolean"
1198
+ }
1199
+ },
1200
+ "additionalProperties": false,
1201
+ "required": [
1202
+ "key",
1203
+ "cert"
1204
+ ]
1205
+ }
1206
+ },
1207
+ "additionalProperties": false
1208
+ },
1209
+ "startTimeout": {
1210
+ "default": 30000,
1211
+ "type": "number",
1212
+ "minimum": 0
1213
+ },
1214
+ "restartOnError": {
1215
+ "default": true,
1216
+ "anyOf": [
1217
+ {
1218
+ "type": "boolean"
1219
+ },
1220
+ {
1221
+ "type": "number",
1222
+ "minimum": 0
1223
+ }
1224
+ ]
1225
+ },
1226
+ "exitOnUnhandledErrors": {
1227
+ "default": true,
1228
+ "type": "boolean"
1229
+ },
1230
+ "gracefulShutdown": {
1231
+ "type": "object",
1232
+ "properties": {
1233
+ "runtime": {
1234
+ "anyOf": [
1235
+ {
1236
+ "type": "number",
1237
+ "minimum": 1
1238
+ },
1239
+ {
1240
+ "type": "string"
1241
+ }
1242
+ ],
1243
+ "default": 10000
1244
+ },
1245
+ "application": {
1246
+ "anyOf": [
1247
+ {
1248
+ "type": "number",
1249
+ "minimum": 1
1250
+ },
1251
+ {
1252
+ "type": "string"
1253
+ }
1254
+ ],
1255
+ "default": 10000
1256
+ }
1257
+ },
1258
+ "default": {},
1259
+ "required": [
1260
+ "runtime",
1261
+ "application"
1262
+ ],
1263
+ "additionalProperties": false
1264
+ },
1265
+ "health": {
1266
+ "type": "object",
1267
+ "default": {},
1268
+ "properties": {
1269
+ "enabled": {
1270
+ "anyOf": [
1271
+ {
1272
+ "type": "boolean"
1273
+ },
1274
+ {
1275
+ "type": "string"
1276
+ }
1277
+ ],
1278
+ "default": true
1279
+ },
1280
+ "interval": {
1281
+ "anyOf": [
1282
+ {
1283
+ "type": "number",
1284
+ "minimum": 0
1285
+ },
1286
+ {
1287
+ "type": "string"
1288
+ }
1289
+ ],
1290
+ "default": 30000
1291
+ },
1292
+ "gracePeriod": {
1293
+ "anyOf": [
1294
+ {
1295
+ "type": "number",
1296
+ "minimum": 0
1297
+ },
1298
+ {
1299
+ "type": "string"
1300
+ }
1301
+ ],
1302
+ "default": 30000
1303
+ },
1304
+ "maxUnhealthyChecks": {
1305
+ "anyOf": [
1306
+ {
1307
+ "type": "number",
1308
+ "minimum": 1
1309
+ },
1310
+ {
1311
+ "type": "string"
1312
+ }
1313
+ ],
1314
+ "default": 10
1315
+ },
1316
+ "maxELU": {
1317
+ "anyOf": [
1318
+ {
1319
+ "type": "number",
1320
+ "minimum": 0,
1321
+ "maximum": 1
1322
+ },
1323
+ {
1324
+ "type": "string"
1325
+ }
1326
+ ],
1327
+ "default": 0.99
1328
+ },
1329
+ "maxHeapUsed": {
1330
+ "anyOf": [
1331
+ {
1332
+ "type": "number",
1333
+ "minimum": 0,
1334
+ "maximum": 1
1335
+ },
1336
+ {
1337
+ "type": "string"
1338
+ }
1339
+ ],
1340
+ "default": 0.99
1341
+ },
1342
+ "maxHeapTotal": {
1343
+ "anyOf": [
1344
+ {
1345
+ "type": "number",
1346
+ "minimum": 0
1347
+ },
1348
+ {
1349
+ "type": "string"
1350
+ }
1351
+ ],
1352
+ "default": 4294967296
1353
+ },
1354
+ "maxYoungGeneration": {
1355
+ "anyOf": [
1356
+ {
1357
+ "type": "number",
1358
+ "minimum": 0
1359
+ },
1360
+ {
1361
+ "type": "string"
1362
+ }
1363
+ ]
1364
+ }
1365
+ },
1366
+ "additionalProperties": false
1367
+ },
1368
+ "undici": {
1369
+ "type": "object",
1370
+ "properties": {
1371
+ "agentOptions": {
1372
+ "type": "object",
1373
+ "additionalProperties": true
1374
+ },
1375
+ "interceptors": {
1376
+ "anyOf": [
1377
+ {
1378
+ "type": "array",
1379
+ "items": {
1380
+ "type": "object",
1381
+ "properties": {
1382
+ "module": {
533
1383
  "type": "string"
534
1384
  },
535
- "graphqlEndpoint": {
536
- "type": "string",
537
- "default": "/graphql"
538
- },
539
- "composeEndpoint": {
1385
+ "options": {
1386
+ "type": "object",
1387
+ "additionalProperties": true
1388
+ }
1389
+ },
1390
+ "required": [
1391
+ "module",
1392
+ "options"
1393
+ ]
1394
+ }
1395
+ },
1396
+ {
1397
+ "type": "object",
1398
+ "properties": {
1399
+ "Client": {
1400
+ "type": "array",
1401
+ "items": {
1402
+ "type": "object",
1403
+ "properties": {
1404
+ "module": {
1405
+ "type": "string"
1406
+ },
1407
+ "options": {
1408
+ "type": "object",
1409
+ "additionalProperties": true
1410
+ }
1411
+ },
1412
+ "required": [
1413
+ "module",
1414
+ "options"
1415
+ ]
1416
+ }
1417
+ },
1418
+ "Pool": {
1419
+ "type": "array",
1420
+ "items": {
1421
+ "type": "object",
1422
+ "properties": {
1423
+ "module": {
1424
+ "type": "string"
1425
+ },
1426
+ "options": {
1427
+ "type": "object",
1428
+ "additionalProperties": true
1429
+ }
1430
+ },
1431
+ "required": [
1432
+ "module",
1433
+ "options"
1434
+ ]
1435
+ }
1436
+ },
1437
+ "Agent": {
1438
+ "type": "array",
1439
+ "items": {
1440
+ "type": "object",
1441
+ "properties": {
1442
+ "module": {
1443
+ "type": "string"
1444
+ },
1445
+ "options": {
1446
+ "type": "object",
1447
+ "additionalProperties": true
1448
+ }
1449
+ },
1450
+ "required": [
1451
+ "module",
1452
+ "options"
1453
+ ]
1454
+ }
1455
+ }
1456
+ }
1457
+ }
1458
+ ]
1459
+ }
1460
+ }
1461
+ },
1462
+ "httpCache": {
1463
+ "oneOf": [
1464
+ {
1465
+ "type": "boolean"
1466
+ },
1467
+ {
1468
+ "type": "object",
1469
+ "properties": {
1470
+ "store": {
1471
+ "type": "string"
1472
+ },
1473
+ "methods": {
1474
+ "type": "array",
1475
+ "items": {
1476
+ "type": "string"
1477
+ },
1478
+ "default": [
1479
+ "GET",
1480
+ "HEAD"
1481
+ ],
1482
+ "minItems": 1
1483
+ },
1484
+ "cacheTagsHeader": {
1485
+ "type": "string"
1486
+ },
1487
+ "maxSize": {
1488
+ "type": "integer"
1489
+ },
1490
+ "maxEntrySize": {
1491
+ "type": "integer"
1492
+ },
1493
+ "maxCount": {
1494
+ "type": "integer"
1495
+ }
1496
+ }
1497
+ }
1498
+ ]
1499
+ },
1500
+ "watch": {
1501
+ "anyOf": [
1502
+ {
1503
+ "type": "boolean"
1504
+ },
1505
+ {
1506
+ "type": "string"
1507
+ }
1508
+ ]
1509
+ },
1510
+ "managementApi": {
1511
+ "anyOf": [
1512
+ {
1513
+ "type": "boolean"
1514
+ },
1515
+ {
1516
+ "type": "string"
1517
+ },
1518
+ {
1519
+ "type": "object",
1520
+ "properties": {
1521
+ "logs": {
1522
+ "type": "object",
1523
+ "properties": {
1524
+ "maxSize": {
1525
+ "type": "number",
1526
+ "minimum": 5,
1527
+ "default": 200
1528
+ }
1529
+ },
1530
+ "additionalProperties": false
1531
+ }
1532
+ },
1533
+ "additionalProperties": false
1534
+ }
1535
+ ],
1536
+ "default": true
1537
+ },
1538
+ "metrics": {
1539
+ "anyOf": [
1540
+ {
1541
+ "type": "boolean"
1542
+ },
1543
+ {
1544
+ "type": "object",
1545
+ "properties": {
1546
+ "port": {
1547
+ "anyOf": [
1548
+ {
1549
+ "type": "integer"
1550
+ },
1551
+ {
1552
+ "type": "string"
1553
+ }
1554
+ ]
1555
+ },
1556
+ "enabled": {
1557
+ "anyOf": [
1558
+ {
1559
+ "type": "boolean"
1560
+ },
1561
+ {
1562
+ "type": "string"
1563
+ }
1564
+ ]
1565
+ },
1566
+ "hostname": {
1567
+ "type": "string"
1568
+ },
1569
+ "endpoint": {
1570
+ "type": "string"
1571
+ },
1572
+ "auth": {
1573
+ "type": "object",
1574
+ "properties": {
1575
+ "username": {
1576
+ "type": "string"
1577
+ },
1578
+ "password": {
1579
+ "type": "string"
1580
+ }
1581
+ },
1582
+ "additionalProperties": false,
1583
+ "required": [
1584
+ "username",
1585
+ "password"
1586
+ ]
1587
+ },
1588
+ "labels": {
1589
+ "type": "object",
1590
+ "additionalProperties": {
1591
+ "type": "string"
1592
+ }
1593
+ },
1594
+ "applicationLabel": {
1595
+ "type": "string",
1596
+ "default": "applicationId",
1597
+ "description": "The label name to use for the application identifier in metrics (e.g., applicationId, serviceId)"
1598
+ },
1599
+ "readiness": {
1600
+ "anyOf": [
1601
+ {
1602
+ "type": "boolean"
1603
+ },
1604
+ {
1605
+ "type": "object",
1606
+ "properties": {
1607
+ "endpoint": {
1608
+ "type": "string"
1609
+ },
1610
+ "success": {
1611
+ "type": "object",
1612
+ "properties": {
1613
+ "statusCode": {
1614
+ "type": "number"
1615
+ },
1616
+ "body": {
1617
+ "type": "string"
1618
+ }
1619
+ },
1620
+ "additionalProperties": false
1621
+ },
1622
+ "fail": {
1623
+ "type": "object",
1624
+ "properties": {
1625
+ "statusCode": {
1626
+ "type": "number"
1627
+ },
1628
+ "body": {
1629
+ "type": "string"
1630
+ }
1631
+ },
1632
+ "additionalProperties": false
1633
+ }
1634
+ },
1635
+ "additionalProperties": false
1636
+ }
1637
+ ]
1638
+ },
1639
+ "liveness": {
1640
+ "anyOf": [
1641
+ {
1642
+ "type": "boolean"
1643
+ },
1644
+ {
1645
+ "type": "object",
1646
+ "properties": {
1647
+ "endpoint": {
1648
+ "type": "string"
1649
+ },
1650
+ "success": {
1651
+ "type": "object",
1652
+ "properties": {
1653
+ "statusCode": {
1654
+ "type": "number"
1655
+ },
1656
+ "body": {
1657
+ "type": "string"
1658
+ }
1659
+ },
1660
+ "additionalProperties": false
1661
+ },
1662
+ "fail": {
1663
+ "type": "object",
1664
+ "properties": {
1665
+ "statusCode": {
1666
+ "type": "number"
1667
+ },
1668
+ "body": {
1669
+ "type": "string"
1670
+ }
1671
+ },
1672
+ "additionalProperties": false
1673
+ }
1674
+ },
1675
+ "additionalProperties": false
1676
+ }
1677
+ ]
1678
+ },
1679
+ "plugins": {
1680
+ "type": "array",
1681
+ "items": {
1682
+ "anyOf": [
1683
+ {
1684
+ "type": "string",
1685
+ "resolvePath": true
1686
+ }
1687
+ ]
1688
+ }
1689
+ }
1690
+ },
1691
+ "additionalProperties": false
1692
+ }
1693
+ ]
1694
+ },
1695
+ "telemetry": {
1696
+ "type": "object",
1697
+ "properties": {
1698
+ "enabled": {
1699
+ "anyOf": [
1700
+ {
1701
+ "type": "boolean"
1702
+ },
1703
+ {
1704
+ "type": "string"
1705
+ }
1706
+ ]
1707
+ },
1708
+ "applicationName": {
1709
+ "type": "string",
1710
+ "description": "The name of the application. Defaults to the folder name if not specified."
1711
+ },
1712
+ "version": {
1713
+ "type": "string",
1714
+ "description": "The version of the application (optional)"
1715
+ },
1716
+ "skip": {
1717
+ "type": "array",
1718
+ "description": "An array of paths to skip when creating spans. Useful for health checks and other endpoints that do not need to be traced.",
1719
+ "items": {
1720
+ "type": "object",
1721
+ "properties": {
1722
+ "path": {
1723
+ "type": "string",
1724
+ "description": "The path to skip. Can be a string or a regex."
1725
+ },
1726
+ "method": {
1727
+ "description": "HTTP method to skip",
1728
+ "type": "string",
1729
+ "enum": [
1730
+ "GET",
1731
+ "POST",
1732
+ "PUT",
1733
+ "DELETE",
1734
+ "PATCH",
1735
+ "HEAD",
1736
+ "OPTIONS"
1737
+ ]
1738
+ }
1739
+ }
1740
+ }
1741
+ },
1742
+ "exporter": {
1743
+ "anyOf": [
1744
+ {
1745
+ "type": "array",
1746
+ "items": {
1747
+ "type": "object",
1748
+ "properties": {
1749
+ "type": {
540
1750
  "type": "string",
541
- "default": "/.well-known/graphql-composition"
1751
+ "enum": [
1752
+ "console",
1753
+ "otlp",
1754
+ "zipkin",
1755
+ "memory",
1756
+ "file"
1757
+ ],
1758
+ "default": "console"
542
1759
  },
543
- "entities": {
1760
+ "options": {
544
1761
  "type": "object",
545
- "patternProperties": {
546
- "^.*$": {
1762
+ "description": "Options for the exporter. These are passed directly to the exporter.",
1763
+ "properties": {
1764
+ "url": {
1765
+ "type": "string",
1766
+ "description": "The URL to send the traces to. Not used for console or memory exporters."
1767
+ },
1768
+ "headers": {
547
1769
  "type": "object",
548
- "properties": {
549
- "pkey": {
550
- "type": "string"
551
- },
552
- "resolver": {
553
- "type": "object",
554
- "properties": {
555
- "name": {
556
- "type": "string"
557
- },
558
- "argsAdapter": {
559
- "anyOf": [
560
- {
561
- "typeof": "function"
562
- },
563
- {
564
- "type": "string"
565
- }
566
- ]
567
- },
568
- "partialResults": {
569
- "anyOf": [
570
- {
571
- "typeof": "function"
572
- },
573
- {
574
- "type": "string"
575
- }
576
- ]
577
- }
578
- },
579
- "required": [
580
- "name"
581
- ],
582
- "additionalProperties": false
583
- },
584
- "fkeys": {
585
- "type": "array",
586
- "items": {
587
- "type": "object",
588
- "properties": {
589
- "type": {
590
- "type": "string"
591
- },
592
- "field": {
593
- "type": "string"
594
- },
595
- "as": {
596
- "type": "string"
597
- },
598
- "pkey": {
599
- "type": "string"
600
- },
601
- "subgraph": {
602
- "type": "string"
603
- },
604
- "resolver": {
605
- "type": "object",
606
- "properties": {
607
- "name": {
608
- "type": "string"
609
- },
610
- "argsAdapter": {
611
- "anyOf": [
612
- {
613
- "typeof": "function"
614
- },
615
- {
616
- "type": "string"
617
- }
618
- ]
619
- },
620
- "partialResults": {
621
- "anyOf": [
622
- {
623
- "typeof": "function"
624
- },
625
- {
626
- "type": "string"
627
- }
628
- ]
629
- }
630
- },
631
- "required": [
632
- "name"
633
- ],
634
- "additionalProperties": false
635
- }
636
- },
637
- "required": [
638
- "type"
639
- ]
640
- }
641
- },
642
- "many": {
643
- "type": "array",
644
- "items": {
645
- "type": "object",
646
- "properties": {
647
- "type": {
648
- "type": "string"
649
- },
650
- "fkey": {
651
- "type": "string"
652
- },
653
- "as": {
654
- "type": "string"
655
- },
656
- "pkey": {
657
- "type": "string"
658
- },
659
- "subgraph": {
660
- "type": "string"
661
- },
662
- "resolver": {
663
- "type": "object",
664
- "properties": {
665
- "name": {
666
- "type": "string"
667
- },
668
- "argsAdapter": {
669
- "anyOf": [
670
- {
671
- "typeof": "function"
672
- },
673
- {
674
- "type": "string"
675
- }
676
- ]
677
- },
678
- "partialResults": {
679
- "anyOf": [
680
- {
681
- "typeof": "function"
682
- },
683
- {
684
- "type": "string"
685
- }
686
- ]
687
- }
688
- },
689
- "required": [
690
- "name"
691
- ],
692
- "additionalProperties": false
693
- }
694
- },
695
- "required": [
696
- "type",
697
- "fkey",
698
- "resolver"
699
- ]
700
- }
701
- }
702
- }
1770
+ "description": "Headers to send to the exporter. Not used for console or memory exporters."
1771
+ },
1772
+ "path": {
1773
+ "type": "string",
1774
+ "description": "The path to write the traces to. Only for file exporter."
703
1775
  }
704
1776
  }
1777
+ },
1778
+ "additionalProperties": false
1779
+ }
1780
+ }
1781
+ },
1782
+ {
1783
+ "type": "object",
1784
+ "properties": {
1785
+ "type": {
1786
+ "type": "string",
1787
+ "enum": [
1788
+ "console",
1789
+ "otlp",
1790
+ "zipkin",
1791
+ "memory",
1792
+ "file"
1793
+ ],
1794
+ "default": "console"
1795
+ },
1796
+ "options": {
1797
+ "type": "object",
1798
+ "description": "Options for the exporter. These are passed directly to the exporter.",
1799
+ "properties": {
1800
+ "url": {
1801
+ "type": "string",
1802
+ "description": "The URL to send the traces to. Not used for console or memory exporters."
1803
+ },
1804
+ "headers": {
1805
+ "type": "object",
1806
+ "description": "Headers to send to the exporter. Not used for console or memory exporters."
1807
+ },
1808
+ "path": {
1809
+ "type": "string",
1810
+ "description": "The path to write the traces to. Only for file exporter."
1811
+ }
705
1812
  }
706
1813
  },
707
1814
  "additionalProperties": false
708
1815
  }
709
- ]
1816
+ }
1817
+ ]
1818
+ }
1819
+ },
1820
+ "required": [
1821
+ "applicationName"
1822
+ ],
1823
+ "additionalProperties": false
1824
+ },
1825
+ "inspectorOptions": {
1826
+ "type": "object",
1827
+ "properties": {
1828
+ "host": {
1829
+ "type": "string"
1830
+ },
1831
+ "port": {
1832
+ "type": "number"
1833
+ },
1834
+ "breakFirstLine": {
1835
+ "type": "boolean"
1836
+ },
1837
+ "watchDisabled": {
1838
+ "type": "boolean"
1839
+ }
1840
+ }
1841
+ },
1842
+ "applicationTimeout": {
1843
+ "anyOf": [
1844
+ {
1845
+ "type": "number",
1846
+ "minimum": 1
1847
+ },
1848
+ {
1849
+ "type": "string"
1850
+ }
1851
+ ],
1852
+ "default": 300000
1853
+ },
1854
+ "messagingTimeout": {
1855
+ "anyOf": [
1856
+ {
1857
+ "type": "number",
1858
+ "minimum": 1
1859
+ },
1860
+ {
1861
+ "type": "string"
1862
+ }
1863
+ ],
1864
+ "default": 30000
1865
+ },
1866
+ "env": {
1867
+ "type": "object",
1868
+ "additionalProperties": {
1869
+ "type": "string"
1870
+ }
1871
+ },
1872
+ "sourceMaps": {
1873
+ "type": "boolean",
1874
+ "default": false
1875
+ },
1876
+ "scheduler": {
1877
+ "type": "array",
1878
+ "items": {
1879
+ "type": "object",
1880
+ "properties": {
1881
+ "enabled": {
1882
+ "anyOf": [
1883
+ {
1884
+ "type": "boolean"
1885
+ },
1886
+ {
1887
+ "type": "string"
1888
+ }
1889
+ ],
1890
+ "default": true
710
1891
  },
711
- "proxy": {
712
- "oneOf": [
1892
+ "name": {
1893
+ "type": "string"
1894
+ },
1895
+ "cron": {
1896
+ "type": "string"
1897
+ },
1898
+ "callbackUrl": {
1899
+ "type": "string"
1900
+ },
1901
+ "method": {
1902
+ "type": "string",
1903
+ "enum": [
1904
+ "GET",
1905
+ "POST",
1906
+ "PUT",
1907
+ "PATCH",
1908
+ "DELETE"
1909
+ ],
1910
+ "default": "GET"
1911
+ },
1912
+ "headers": {
1913
+ "type": "object",
1914
+ "additionalProperties": {
1915
+ "type": "string"
1916
+ }
1917
+ },
1918
+ "body": {
1919
+ "anyOf": [
713
1920
  {
714
- "type": "boolean",
715
- "const": false
1921
+ "type": "string"
716
1922
  },
717
1923
  {
718
1924
  "type": "object",
719
- "properties": {
720
- "prefix": {
721
- "type": "string"
722
- }
723
- },
724
- "required": [],
725
- "additionalProperties": false
1925
+ "additionalProperties": true
726
1926
  }
727
1927
  ]
1928
+ },
1929
+ "maxRetries": {
1930
+ "type": "number",
1931
+ "minimum": 0,
1932
+ "default": 3
728
1933
  }
729
1934
  },
730
1935
  "required": [
731
- "id"
732
- ],
733
- "additionalProperties": false
1936
+ "name",
1937
+ "cron",
1938
+ "callbackUrl"
1939
+ ]
734
1940
  }
735
- },
736
- "openapi": {
737
- "type": "object",
738
- "properties": {
739
- "info": {
740
- "$ref": "#/$defs/info"
741
- },
742
- "jsonSchemaDialect": {
743
- "type": "string",
744
- "default": "https://spec.openapis.org/oas/3.1/dialect/base"
745
- },
746
- "servers": {
747
- "type": "array",
748
- "items": {
749
- "$ref": "#/$defs/server"
750
- },
751
- "default": [
752
- {
753
- "url": "/"
754
- }
755
- ]
756
- },
757
- "paths": {
758
- "$ref": "#/$defs/paths"
759
- },
760
- "webhooks": {
761
- "type": "object",
762
- "additionalProperties": {
763
- "$ref": "#/$defs/path-item-or-reference"
764
- }
765
- },
766
- "components": {
767
- "$ref": "#/$defs/components"
768
- },
769
- "security": {
770
- "type": "array",
771
- "items": {
772
- "$ref": "#/$defs/security-requirement"
773
- }
774
- },
775
- "tags": {
776
- "type": "array",
777
- "items": {
778
- "$ref": "#/$defs/tag"
779
- }
780
- },
781
- "externalDocs": {
782
- "$ref": "#/$defs/external-documentation"
783
- },
784
- "swaggerPrefix": {
785
- "type": "string",
786
- "description": "Base URL for the OpenAPI Swagger Documentation"
1941
+ }
1942
+ },
1943
+ "additionalProperties": false
1944
+ },
1945
+ "telemetry": {
1946
+ "type": "object",
1947
+ "properties": {
1948
+ "enabled": {
1949
+ "anyOf": [
1950
+ {
1951
+ "type": "boolean"
787
1952
  },
788
- "path": {
789
- "type": "string",
790
- "description": "Path to an OpenAPI spec file",
791
- "resolvePath": true
1953
+ {
1954
+ "type": "string"
792
1955
  }
793
- }
1956
+ ]
794
1957
  },
795
- "graphql": {
796
- "type": "object",
797
- "properties": {
798
- "graphiql": {
799
- "type": "boolean"
800
- },
801
- "onSubgraphError": {
802
- "typeof": "function"
803
- },
804
- "defaultArgsAdapter": {
805
- "oneOf": [
806
- {
807
- "typeof": "function"
808
- },
809
- {
810
- "type": "string"
811
- }
812
- ]
813
- },
814
- "entities": {
815
- "type": "object",
816
- "patternProperties": {
817
- "^.*$": {
818
- "type": "object",
819
- "properties": {
820
- "pkey": {
821
- "type": "string"
822
- },
823
- "resolver": {
824
- "type": "object",
825
- "properties": {
826
- "name": {
827
- "type": "string"
828
- },
829
- "argsAdapter": {
830
- "anyOf": [
831
- {
832
- "typeof": "function"
833
- },
834
- {
835
- "type": "string"
836
- }
837
- ]
838
- },
839
- "partialResults": {
840
- "anyOf": [
841
- {
842
- "typeof": "function"
843
- },
844
- {
845
- "type": "string"
846
- }
847
- ]
848
- }
849
- },
850
- "required": [
851
- "name"
852
- ],
853
- "additionalProperties": false
854
- },
855
- "fkeys": {
856
- "type": "array",
857
- "items": {
858
- "type": "object",
859
- "properties": {
860
- "type": {
861
- "type": "string"
862
- },
863
- "field": {
864
- "type": "string"
865
- },
866
- "as": {
867
- "type": "string"
868
- },
869
- "pkey": {
870
- "type": "string"
871
- },
872
- "subgraph": {
873
- "type": "string"
874
- },
875
- "resolver": {
876
- "type": "object",
877
- "properties": {
878
- "name": {
879
- "type": "string"
880
- },
881
- "argsAdapter": {
882
- "anyOf": [
883
- {
884
- "typeof": "function"
885
- },
886
- {
887
- "type": "string"
888
- }
889
- ]
890
- },
891
- "partialResults": {
892
- "anyOf": [
893
- {
894
- "typeof": "function"
895
- },
896
- {
897
- "type": "string"
898
- }
899
- ]
900
- }
901
- },
902
- "required": [
903
- "name"
904
- ],
905
- "additionalProperties": false
906
- }
907
- },
908
- "required": [
909
- "type"
910
- ]
911
- }
912
- },
913
- "many": {
914
- "type": "array",
915
- "items": {
1958
+ "applicationName": {
1959
+ "type": "string",
1960
+ "description": "The name of the application. Defaults to the folder name if not specified."
1961
+ },
1962
+ "version": {
1963
+ "type": "string",
1964
+ "description": "The version of the application (optional)"
1965
+ },
1966
+ "skip": {
1967
+ "type": "array",
1968
+ "description": "An array of paths to skip when creating spans. Useful for health checks and other endpoints that do not need to be traced.",
1969
+ "items": {
1970
+ "type": "object",
1971
+ "properties": {
1972
+ "path": {
1973
+ "type": "string",
1974
+ "description": "The path to skip. Can be a string or a regex."
1975
+ },
1976
+ "method": {
1977
+ "description": "HTTP method to skip",
1978
+ "type": "string",
1979
+ "enum": [
1980
+ "GET",
1981
+ "POST",
1982
+ "PUT",
1983
+ "DELETE",
1984
+ "PATCH",
1985
+ "HEAD",
1986
+ "OPTIONS"
1987
+ ]
1988
+ }
1989
+ }
1990
+ }
1991
+ },
1992
+ "exporter": {
1993
+ "anyOf": [
1994
+ {
1995
+ "type": "array",
1996
+ "items": {
1997
+ "type": "object",
1998
+ "properties": {
1999
+ "type": {
2000
+ "type": "string",
2001
+ "enum": [
2002
+ "console",
2003
+ "otlp",
2004
+ "zipkin",
2005
+ "memory",
2006
+ "file"
2007
+ ],
2008
+ "default": "console"
2009
+ },
2010
+ "options": {
2011
+ "type": "object",
2012
+ "description": "Options for the exporter. These are passed directly to the exporter.",
2013
+ "properties": {
2014
+ "url": {
2015
+ "type": "string",
2016
+ "description": "The URL to send the traces to. Not used for console or memory exporters."
2017
+ },
2018
+ "headers": {
916
2019
  "type": "object",
917
- "properties": {
918
- "type": {
919
- "type": "string"
920
- },
921
- "fkey": {
922
- "type": "string"
923
- },
924
- "as": {
925
- "type": "string"
926
- },
927
- "pkey": {
928
- "type": "string"
929
- },
930
- "subgraph": {
931
- "type": "string"
932
- },
933
- "resolver": {
934
- "type": "object",
935
- "properties": {
936
- "name": {
937
- "type": "string"
938
- },
939
- "argsAdapter": {
940
- "anyOf": [
941
- {
942
- "typeof": "function"
943
- },
944
- {
945
- "type": "string"
946
- }
947
- ]
948
- },
949
- "partialResults": {
950
- "anyOf": [
951
- {
952
- "typeof": "function"
953
- },
954
- {
955
- "type": "string"
956
- }
957
- ]
958
- }
959
- },
960
- "required": [
961
- "name"
962
- ],
963
- "additionalProperties": false
964
- }
965
- },
966
- "required": [
967
- "type",
968
- "fkey",
969
- "resolver"
970
- ]
2020
+ "description": "Headers to send to the exporter. Not used for console or memory exporters."
2021
+ },
2022
+ "path": {
2023
+ "type": "string",
2024
+ "description": "The path to write the traces to. Only for file exporter."
971
2025
  }
972
2026
  }
973
- }
2027
+ },
2028
+ "additionalProperties": false
974
2029
  }
975
2030
  }
976
2031
  },
977
- "addEntitiesResolvers": {
978
- "type": "boolean",
979
- "default": false
2032
+ {
2033
+ "type": "object",
2034
+ "properties": {
2035
+ "type": {
2036
+ "type": "string",
2037
+ "enum": [
2038
+ "console",
2039
+ "otlp",
2040
+ "zipkin",
2041
+ "memory",
2042
+ "file"
2043
+ ],
2044
+ "default": "console"
2045
+ },
2046
+ "options": {
2047
+ "type": "object",
2048
+ "description": "Options for the exporter. These are passed directly to the exporter.",
2049
+ "properties": {
2050
+ "url": {
2051
+ "type": "string",
2052
+ "description": "The URL to send the traces to. Not used for console or memory exporters."
2053
+ },
2054
+ "headers": {
2055
+ "type": "object",
2056
+ "description": "Headers to send to the exporter. Not used for console or memory exporters."
2057
+ },
2058
+ "path": {
2059
+ "type": "string",
2060
+ "description": "The path to write the traces to. Only for file exporter."
2061
+ }
2062
+ }
2063
+ },
2064
+ "additionalProperties": false
2065
+ }
980
2066
  }
981
- },
982
- "additionalProperties": false
983
- },
984
- "addEmptySchema": {
985
- "type": "boolean",
986
- "default": false
987
- },
988
- "refreshTimeout": {
989
- "type": "integer",
990
- "minimum": 0,
991
- "default": 1000
2067
+ ]
992
2068
  }
993
2069
  },
994
- "required": [],
2070
+ "required": [
2071
+ "applicationName"
2072
+ ],
995
2073
  "additionalProperties": false
996
2074
  },
997
- "metrics": {
2075
+ "watch": {
998
2076
  "anyOf": [
999
- {
1000
- "type": "boolean"
1001
- },
1002
2077
  {
1003
2078
  "type": "object",
1004
2079
  "properties": {
1005
- "port": {
2080
+ "enabled": {
2081
+ "default": true,
1006
2082
  "anyOf": [
1007
2083
  {
1008
- "type": "integer"
2084
+ "type": "boolean"
1009
2085
  },
1010
2086
  {
1011
2087
  "type": "string"
1012
2088
  }
1013
2089
  ]
1014
2090
  },
1015
- "hostname": {
1016
- "type": "string"
1017
- },
1018
- "endpoint": {
1019
- "type": "string"
1020
- },
1021
- "server": {
1022
- "type": "string",
1023
- "enum": [
1024
- "own",
1025
- "parent",
1026
- "hide"
1027
- ]
1028
- },
1029
- "defaultMetrics": {
1030
- "type": "object",
1031
- "properties": {
1032
- "enabled": {
1033
- "type": "boolean"
1034
- }
1035
- },
1036
- "required": [
1037
- "enabled"
1038
- ],
1039
- "additionalProperties": false
1040
- },
1041
- "auth": {
1042
- "type": "object",
1043
- "properties": {
1044
- "username": {
1045
- "type": "string"
1046
- },
1047
- "password": {
1048
- "type": "string"
1049
- }
2091
+ "allow": {
2092
+ "type": "array",
2093
+ "items": {
2094
+ "type": "string"
1050
2095
  },
1051
- "additionalProperties": false,
1052
- "required": [
1053
- "username",
1054
- "password"
1055
- ]
2096
+ "minItems": 1,
2097
+ "nullable": true,
2098
+ "default": null
1056
2099
  },
1057
- "labels": {
1058
- "type": "object",
1059
- "additionalProperties": {
2100
+ "ignore": {
2101
+ "type": "array",
2102
+ "items": {
1060
2103
  "type": "string"
1061
- }
2104
+ },
2105
+ "nullable": true,
2106
+ "default": null
1062
2107
  }
1063
2108
  },
1064
2109
  "additionalProperties": false
1065
- }
1066
- ]
1067
- },
1068
- "types": {
1069
- "type": "object",
1070
- "properties": {
1071
- "autogenerate": {
1072
- "type": "boolean"
1073
2110
  },
1074
- "dir": {
1075
- "description": "The path to the directory the types should be generated in.",
1076
- "type": "string",
1077
- "default": "types",
1078
- "resolvePath": true
1079
- }
1080
- },
1081
- "additionalProperties": false
1082
- },
1083
- "plugins": {
1084
- "type": "object",
1085
- "properties": {
1086
- "packages": {
1087
- "type": "array",
1088
- "items": {
1089
- "anyOf": [
1090
- {
1091
- "type": "string"
1092
- },
1093
- {
1094
- "type": "object",
1095
- "properties": {
1096
- "name": {
1097
- "type": "string"
1098
- },
1099
- "options": {
1100
- "type": "object",
1101
- "additionalProperties": true
1102
- }
1103
- },
1104
- "required": [
1105
- "name"
1106
- ]
1107
- }
1108
- ]
1109
- }
2111
+ {
2112
+ "type": "boolean"
1110
2113
  },
1111
- "paths": {
2114
+ {
2115
+ "type": "string"
2116
+ }
2117
+ ]
2118
+ },
2119
+ "$schema": {
2120
+ "type": "string"
2121
+ },
2122
+ "module": {
2123
+ "type": "string"
2124
+ },
2125
+ "composer": {
2126
+ "type": "object",
2127
+ "properties": {
2128
+ "applications": {
1112
2129
  "type": "array",
1113
2130
  "items": {
1114
- "anyOf": [
1115
- {
1116
- "type": "string",
1117
- "resolvePath": true
2131
+ "type": "object",
2132
+ "properties": {
2133
+ "id": {
2134
+ "type": "string"
1118
2135
  },
1119
- {
2136
+ "origin": {
2137
+ "type": "string"
2138
+ },
2139
+ "openapi": {
1120
2140
  "type": "object",
1121
2141
  "properties": {
1122
- "path": {
2142
+ "url": {
2143
+ "type": "string"
2144
+ },
2145
+ "file": {
1123
2146
  "type": "string",
1124
2147
  "resolvePath": true
1125
2148
  },
1126
- "encapsulate": {
1127
- "type": "boolean",
1128
- "default": true
1129
- },
1130
- "maxDepth": {
1131
- "type": "integer"
1132
- },
1133
- "autoHooks": {
1134
- "type": "boolean"
1135
- },
1136
- "autoHooksPattern": {
2149
+ "prefix": {
1137
2150
  "type": "string"
1138
2151
  },
1139
- "cascadeHooks": {
1140
- "type": "boolean"
1141
- },
1142
- "overwriteHooks": {
1143
- "type": "boolean"
1144
- },
1145
- "routeParams": {
1146
- "type": "boolean"
2152
+ "config": {
2153
+ "type": "string",
2154
+ "resolvePath": true
2155
+ }
2156
+ },
2157
+ "anyOf": [
2158
+ {
2159
+ "required": [
2160
+ "url"
2161
+ ]
1147
2162
  },
1148
- "forceESM": {
2163
+ {
2164
+ "required": [
2165
+ "file"
2166
+ ]
2167
+ }
2168
+ ],
2169
+ "additionalProperties": false
2170
+ },
2171
+ "graphql": {
2172
+ "anyOf": [
2173
+ {
1149
2174
  "type": "boolean"
1150
2175
  },
1151
- "ignoreFilter": {
1152
- "type": "string"
1153
- },
1154
- "matchFilter": {
1155
- "type": "string"
1156
- },
1157
- "ignorePattern": {
1158
- "type": "string"
1159
- },
1160
- "scriptPattern": {
1161
- "type": "string"
1162
- },
1163
- "indexPattern": {
1164
- "type": "string"
2176
+ {
2177
+ "type": "object",
2178
+ "properties": {
2179
+ "host": {
2180
+ "type": "string"
2181
+ },
2182
+ "name": {
2183
+ "type": "string"
2184
+ },
2185
+ "graphqlEndpoint": {
2186
+ "type": "string",
2187
+ "default": "/graphql"
2188
+ },
2189
+ "composeEndpoint": {
2190
+ "type": "string",
2191
+ "default": "/.well-known/graphql-composition"
2192
+ },
2193
+ "entities": {
2194
+ "type": "object",
2195
+ "patternProperties": {
2196
+ "^.*$": {
2197
+ "type": "object",
2198
+ "properties": {
2199
+ "pkey": {
2200
+ "type": "string"
2201
+ },
2202
+ "resolver": {
2203
+ "type": "object",
2204
+ "properties": {
2205
+ "name": {
2206
+ "type": "string"
2207
+ },
2208
+ "argsAdapter": {
2209
+ "anyOf": [
2210
+ {
2211
+ "typeof": "function"
2212
+ },
2213
+ {
2214
+ "type": "string"
2215
+ }
2216
+ ]
2217
+ },
2218
+ "partialResults": {
2219
+ "anyOf": [
2220
+ {
2221
+ "typeof": "function"
2222
+ },
2223
+ {
2224
+ "type": "string"
2225
+ }
2226
+ ]
2227
+ }
2228
+ },
2229
+ "required": [
2230
+ "name"
2231
+ ],
2232
+ "additionalProperties": false
2233
+ },
2234
+ "fkeys": {
2235
+ "type": "array",
2236
+ "items": {
2237
+ "type": "object",
2238
+ "properties": {
2239
+ "type": {
2240
+ "type": "string"
2241
+ },
2242
+ "field": {
2243
+ "type": "string"
2244
+ },
2245
+ "as": {
2246
+ "type": "string"
2247
+ },
2248
+ "pkey": {
2249
+ "type": "string"
2250
+ },
2251
+ "subgraph": {
2252
+ "type": "string"
2253
+ },
2254
+ "resolver": {
2255
+ "type": "object",
2256
+ "properties": {
2257
+ "name": {
2258
+ "type": "string"
2259
+ },
2260
+ "argsAdapter": {
2261
+ "anyOf": [
2262
+ {
2263
+ "typeof": "function"
2264
+ },
2265
+ {
2266
+ "type": "string"
2267
+ }
2268
+ ]
2269
+ },
2270
+ "partialResults": {
2271
+ "anyOf": [
2272
+ {
2273
+ "typeof": "function"
2274
+ },
2275
+ {
2276
+ "type": "string"
2277
+ }
2278
+ ]
2279
+ }
2280
+ },
2281
+ "required": [
2282
+ "name"
2283
+ ],
2284
+ "additionalProperties": false
2285
+ }
2286
+ },
2287
+ "required": [
2288
+ "type"
2289
+ ]
2290
+ }
2291
+ },
2292
+ "many": {
2293
+ "type": "array",
2294
+ "items": {
2295
+ "type": "object",
2296
+ "properties": {
2297
+ "type": {
2298
+ "type": "string"
2299
+ },
2300
+ "fkey": {
2301
+ "type": "string"
2302
+ },
2303
+ "as": {
2304
+ "type": "string"
2305
+ },
2306
+ "pkey": {
2307
+ "type": "string"
2308
+ },
2309
+ "subgraph": {
2310
+ "type": "string"
2311
+ },
2312
+ "resolver": {
2313
+ "type": "object",
2314
+ "properties": {
2315
+ "name": {
2316
+ "type": "string"
2317
+ },
2318
+ "argsAdapter": {
2319
+ "anyOf": [
2320
+ {
2321
+ "typeof": "function"
2322
+ },
2323
+ {
2324
+ "type": "string"
2325
+ }
2326
+ ]
2327
+ },
2328
+ "partialResults": {
2329
+ "anyOf": [
2330
+ {
2331
+ "typeof": "function"
2332
+ },
2333
+ {
2334
+ "type": "string"
2335
+ }
2336
+ ]
2337
+ }
2338
+ },
2339
+ "required": [
2340
+ "name"
2341
+ ],
2342
+ "additionalProperties": false
2343
+ }
2344
+ },
2345
+ "required": [
2346
+ "type",
2347
+ "fkey",
2348
+ "resolver"
2349
+ ]
2350
+ }
2351
+ }
2352
+ }
2353
+ }
2354
+ }
2355
+ }
2356
+ },
2357
+ "additionalProperties": false
2358
+ }
2359
+ ]
2360
+ },
2361
+ "proxy": {
2362
+ "anyOf": [
2363
+ {
2364
+ "type": "boolean",
2365
+ "const": false
1165
2366
  },
1166
- "options": {
2367
+ {
1167
2368
  "type": "object",
1168
- "additionalProperties": true
1169
- }
1170
- }
1171
- }
1172
- ]
1173
- }
1174
- },
1175
- "typescript": {
1176
- "anyOf": [
1177
- {
1178
- "type": "object",
1179
- "properties": {
1180
- "enabled": {
1181
- "anyOf": [
1182
- {
1183
- "type": "boolean"
2369
+ "properties": {
2370
+ "upstream": {
2371
+ "type": "string"
2372
+ },
2373
+ "prefix": {
2374
+ "type": "string"
2375
+ },
2376
+ "hostname": {
2377
+ "type": "string"
2378
+ },
2379
+ "ws": {
2380
+ "type": "object",
2381
+ "properties": {
2382
+ "upstream": {
2383
+ "type": "string"
2384
+ },
2385
+ "reconnect": {
2386
+ "type": "object",
2387
+ "properties": {
2388
+ "pingInterval": {
2389
+ "type": "number"
2390
+ },
2391
+ "maxReconnectionRetries": {
2392
+ "type": "number"
2393
+ },
2394
+ "reconnectInterval": {
2395
+ "type": "number"
2396
+ },
2397
+ "reconnectDecay": {
2398
+ "type": "number"
2399
+ },
2400
+ "connectionTimeout": {
2401
+ "type": "number"
2402
+ },
2403
+ "reconnectOnClose": {
2404
+ "type": "boolean"
2405
+ },
2406
+ "logs": {
2407
+ "type": "boolean"
2408
+ }
2409
+ }
2410
+ },
2411
+ "hooks": {
2412
+ "type": "object",
2413
+ "properties": {
2414
+ "path": {
2415
+ "type": "string"
2416
+ }
2417
+ },
2418
+ "required": [
2419
+ "path"
2420
+ ],
2421
+ "additionalProperties": false
2422
+ }
2423
+ },
2424
+ "required": [],
2425
+ "additionalProperties": false
2426
+ }
1184
2427
  },
1185
- {
1186
- "type": "string"
1187
- }
1188
- ]
1189
- },
1190
- "tsConfig": {
1191
- "type": "string",
1192
- "resolvePath": true
1193
- },
1194
- "outDir": {
1195
- "type": "string",
1196
- "resolvePath": true
1197
- },
1198
- "flags": {
1199
- "type": "array",
1200
- "items": {
1201
- "type": "string"
2428
+ "required": [],
2429
+ "additionalProperties": false
1202
2430
  }
1203
- }
1204
- }
1205
- },
1206
- {
1207
- "type": "boolean"
1208
- },
1209
- {
1210
- "type": "string"
1211
- }
1212
- ]
1213
- }
1214
- },
1215
- "additionalProperties": false,
1216
- "anyOf": [
1217
- {
1218
- "required": [
1219
- "paths"
1220
- ]
1221
- },
1222
- {
1223
- "required": [
1224
- "packages"
1225
- ]
1226
- }
1227
- ]
1228
- },
1229
- "clients": {
1230
- "type": "array",
1231
- "items": {
1232
- "type": "object",
1233
- "properties": {
1234
- "serviceId": {
1235
- "type": "string"
1236
- },
1237
- "name": {
1238
- "type": "string"
1239
- },
1240
- "type": {
1241
- "type": "string",
1242
- "enum": [
1243
- "openapi",
1244
- "graphql"
1245
- ]
1246
- },
1247
- "path": {
1248
- "type": "string",
1249
- "resolvePath": true
1250
- },
1251
- "schema": {
1252
- "type": "string",
1253
- "resolvePath": true
1254
- },
1255
- "url": {
1256
- "type": "string"
1257
- },
1258
- "fullResponse": {
1259
- "type": "boolean"
1260
- },
1261
- "fullRequest": {
1262
- "type": "boolean"
1263
- },
1264
- "validateResponse": {
1265
- "type": "boolean"
1266
- }
1267
- },
1268
- "additionalProperties": false
1269
- }
1270
- },
1271
- "telemetry": {
1272
- "$id": "/OpenTelemetry",
1273
- "type": "object",
1274
- "properties": {
1275
- "serviceName": {
1276
- "type": "string",
1277
- "description": "The name of the service. Defaults to the folder name if not specified."
1278
- },
1279
- "version": {
1280
- "type": "string",
1281
- "description": "The version of the service (optional)"
1282
- },
1283
- "skip": {
1284
- "type": "array",
1285
- "description": "An array of paths to skip when creating spans. Useful for health checks and other endpoints that do not need to be traced.",
1286
- "items": {
1287
- "type": "object",
1288
- "properties": {
1289
- "path": {
1290
- "type": "string",
1291
- "description": "The path to skip. Can be a string or a regex."
1292
- },
1293
- "method": {
1294
- "description": "HTTP method to skip",
1295
- "type": "string",
1296
- "enum": [
1297
- "GET",
1298
- "POST",
1299
- "PUT",
1300
- "DELETE",
1301
- "PATCH",
1302
- "HEAD",
1303
- "OPTIONS"
1304
2431
  ]
1305
2432
  }
1306
- }
2433
+ },
2434
+ "required": [
2435
+ "id"
2436
+ ],
2437
+ "additionalProperties": false
1307
2438
  }
1308
2439
  },
1309
- "exporter": {
1310
- "anyOf": [
1311
- {
2440
+ "openapi": {
2441
+ "type": "object",
2442
+ "properties": {
2443
+ "info": {
2444
+ "$ref": "#/$defs/info"
2445
+ },
2446
+ "jsonSchemaDialect": {
2447
+ "type": "string",
2448
+ "default": "https://spec.openapis.org/oas/3.1/dialect/base"
2449
+ },
2450
+ "servers": {
1312
2451
  "type": "array",
1313
2452
  "items": {
1314
- "type": "object",
1315
- "properties": {
1316
- "type": {
1317
- "type": "string",
1318
- "enum": [
1319
- "console",
1320
- "otlp",
1321
- "zipkin",
1322
- "memory"
1323
- ],
1324
- "default": "console"
1325
- },
1326
- "options": {
1327
- "type": "object",
1328
- "description": "Options for the exporter. These are passed directly to the exporter.",
1329
- "properties": {
1330
- "url": {
1331
- "type": "string",
1332
- "description": "The URL to send the traces to. Not used for console or memory exporters."
1333
- },
1334
- "headers": {
1335
- "type": "object",
1336
- "description": "Headers to send to the exporter. Not used for console or memory exporters."
1337
- }
1338
- }
1339
- },
1340
- "additionalProperties": false
2453
+ "$ref": "#/$defs/server"
2454
+ },
2455
+ "default": [
2456
+ {
2457
+ "url": "/"
1341
2458
  }
1342
- }
2459
+ ]
1343
2460
  },
1344
- {
2461
+ "paths": {
2462
+ "$ref": "#/$defs/paths"
2463
+ },
2464
+ "webhooks": {
1345
2465
  "type": "object",
1346
- "properties": {
1347
- "type": {
1348
- "type": "string",
1349
- "enum": [
1350
- "console",
1351
- "otlp",
1352
- "zipkin",
1353
- "memory"
1354
- ],
1355
- "default": "console"
1356
- },
1357
- "options": {
1358
- "type": "object",
1359
- "description": "Options for the exporter. These are passed directly to the exporter.",
1360
- "properties": {
1361
- "url": {
1362
- "type": "string",
1363
- "description": "The URL to send the traces to. Not used for console or memory exporters."
1364
- },
1365
- "headers": {
1366
- "type": "object",
1367
- "description": "Headers to send to the exporter. Not used for console or memory exporters."
1368
- }
1369
- }
1370
- },
1371
- "additionalProperties": false
2466
+ "additionalProperties": {
2467
+ "$ref": "#/$defs/path-item-or-reference"
2468
+ }
2469
+ },
2470
+ "components": {
2471
+ "$ref": "#/$defs/components"
2472
+ },
2473
+ "security": {
2474
+ "type": "array",
2475
+ "items": {
2476
+ "$ref": "#/$defs/security-requirement"
2477
+ }
2478
+ },
2479
+ "tags": {
2480
+ "type": "array",
2481
+ "items": {
2482
+ "$ref": "#/$defs/tag"
1372
2483
  }
2484
+ },
2485
+ "externalDocs": {
2486
+ "$ref": "#/$defs/external-documentation"
2487
+ },
2488
+ "swaggerPrefix": {
2489
+ "type": "string",
2490
+ "description": "Base URL for the OpenAPI Swagger Documentation"
2491
+ },
2492
+ "path": {
2493
+ "type": "string",
2494
+ "description": "Path to an OpenAPI spec file",
2495
+ "resolvePath": true
1373
2496
  }
1374
- ]
1375
- }
1376
- },
1377
- "required": [
1378
- "serviceName"
1379
- ],
1380
- "additionalProperties": false
1381
- },
1382
- "watch": {
1383
- "anyOf": [
1384
- {
2497
+ }
2498
+ },
2499
+ "graphql": {
1385
2500
  "type": "object",
1386
2501
  "properties": {
1387
- "enabled": {
1388
- "default": true,
1389
- "anyOf": [
2502
+ "graphiql": {
2503
+ "type": "boolean"
2504
+ },
2505
+ "onSubgraphError": {
2506
+ "typeof": "function"
2507
+ },
2508
+ "defaultArgsAdapter": {
2509
+ "oneOf": [
1390
2510
  {
1391
- "type": "boolean"
2511
+ "typeof": "function"
1392
2512
  },
1393
2513
  {
1394
2514
  "type": "string"
1395
2515
  }
1396
2516
  ]
1397
2517
  },
1398
- "allow": {
1399
- "type": "array",
1400
- "items": {
1401
- "type": "string"
1402
- },
1403
- "minItems": 1,
1404
- "nullable": true,
1405
- "default": null
2518
+ "entities": {
2519
+ "type": "object",
2520
+ "patternProperties": {
2521
+ "^.*$": {
2522
+ "type": "object",
2523
+ "properties": {
2524
+ "pkey": {
2525
+ "type": "string"
2526
+ },
2527
+ "resolver": {
2528
+ "type": "object",
2529
+ "properties": {
2530
+ "name": {
2531
+ "type": "string"
2532
+ },
2533
+ "argsAdapter": {
2534
+ "anyOf": [
2535
+ {
2536
+ "typeof": "function"
2537
+ },
2538
+ {
2539
+ "type": "string"
2540
+ }
2541
+ ]
2542
+ },
2543
+ "partialResults": {
2544
+ "anyOf": [
2545
+ {
2546
+ "typeof": "function"
2547
+ },
2548
+ {
2549
+ "type": "string"
2550
+ }
2551
+ ]
2552
+ }
2553
+ },
2554
+ "required": [
2555
+ "name"
2556
+ ],
2557
+ "additionalProperties": false
2558
+ },
2559
+ "fkeys": {
2560
+ "type": "array",
2561
+ "items": {
2562
+ "type": "object",
2563
+ "properties": {
2564
+ "type": {
2565
+ "type": "string"
2566
+ },
2567
+ "field": {
2568
+ "type": "string"
2569
+ },
2570
+ "as": {
2571
+ "type": "string"
2572
+ },
2573
+ "pkey": {
2574
+ "type": "string"
2575
+ },
2576
+ "subgraph": {
2577
+ "type": "string"
2578
+ },
2579
+ "resolver": {
2580
+ "type": "object",
2581
+ "properties": {
2582
+ "name": {
2583
+ "type": "string"
2584
+ },
2585
+ "argsAdapter": {
2586
+ "anyOf": [
2587
+ {
2588
+ "typeof": "function"
2589
+ },
2590
+ {
2591
+ "type": "string"
2592
+ }
2593
+ ]
2594
+ },
2595
+ "partialResults": {
2596
+ "anyOf": [
2597
+ {
2598
+ "typeof": "function"
2599
+ },
2600
+ {
2601
+ "type": "string"
2602
+ }
2603
+ ]
2604
+ }
2605
+ },
2606
+ "required": [
2607
+ "name"
2608
+ ],
2609
+ "additionalProperties": false
2610
+ }
2611
+ },
2612
+ "required": [
2613
+ "type"
2614
+ ]
2615
+ }
2616
+ },
2617
+ "many": {
2618
+ "type": "array",
2619
+ "items": {
2620
+ "type": "object",
2621
+ "properties": {
2622
+ "type": {
2623
+ "type": "string"
2624
+ },
2625
+ "fkey": {
2626
+ "type": "string"
2627
+ },
2628
+ "as": {
2629
+ "type": "string"
2630
+ },
2631
+ "pkey": {
2632
+ "type": "string"
2633
+ },
2634
+ "subgraph": {
2635
+ "type": "string"
2636
+ },
2637
+ "resolver": {
2638
+ "type": "object",
2639
+ "properties": {
2640
+ "name": {
2641
+ "type": "string"
2642
+ },
2643
+ "argsAdapter": {
2644
+ "anyOf": [
2645
+ {
2646
+ "typeof": "function"
2647
+ },
2648
+ {
2649
+ "type": "string"
2650
+ }
2651
+ ]
2652
+ },
2653
+ "partialResults": {
2654
+ "anyOf": [
2655
+ {
2656
+ "typeof": "function"
2657
+ },
2658
+ {
2659
+ "type": "string"
2660
+ }
2661
+ ]
2662
+ }
2663
+ },
2664
+ "required": [
2665
+ "name"
2666
+ ],
2667
+ "additionalProperties": false
2668
+ }
2669
+ },
2670
+ "required": [
2671
+ "type",
2672
+ "fkey",
2673
+ "resolver"
2674
+ ]
2675
+ }
2676
+ }
2677
+ }
2678
+ }
2679
+ }
1406
2680
  },
1407
- "ignore": {
1408
- "type": "array",
1409
- "items": {
1410
- "type": "string"
1411
- },
1412
- "nullable": true,
1413
- "default": null
2681
+ "addEntitiesResolvers": {
2682
+ "type": "boolean",
2683
+ "default": false
1414
2684
  }
1415
2685
  },
1416
2686
  "additionalProperties": false
1417
2687
  },
1418
- {
1419
- "type": "boolean"
2688
+ "addEmptySchema": {
2689
+ "type": "boolean",
2690
+ "default": false
1420
2691
  },
1421
- {
1422
- "type": "string"
2692
+ "refreshTimeout": {
2693
+ "type": "integer",
2694
+ "minimum": 0,
2695
+ "default": 1000
2696
+ },
2697
+ "passthroughContentTypes": {
2698
+ "type": "array",
2699
+ "items": {
2700
+ "type": "string"
2701
+ },
2702
+ "default": [
2703
+ "multipart/form-data",
2704
+ "application/octet-stream"
2705
+ ],
2706
+ "description": "Content types that should be passed through without parsing to enable proxying"
1423
2707
  }
1424
- ]
1425
- },
1426
- "$schema": {
1427
- "type": "string"
1428
- },
1429
- "module": {
1430
- "type": "string"
2708
+ },
2709
+ "required": [],
2710
+ "default": {},
2711
+ "additionalProperties": false
1431
2712
  }
1432
2713
  },
1433
2714
  "additionalProperties": false,
1434
- "required": [
1435
- "composer"
1436
- ],
1437
2715
  "$defs": {
1438
2716
  "info": {
1439
2717
  "$comment": "https://spec.openapis.org/oas/v3.1.0#info-object",
@@ -2536,4 +3814,4 @@
2536
3814
  }
2537
3815
  }
2538
3816
  }
2539
- }
3817
+ }