polyapi 0.23.18 → 0.23.19

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 (77) hide show
  1. package/build/api.d.ts.map +1 -1
  2. package/build/api.js +18 -16
  3. package/build/api.js.map +1 -1
  4. package/build/cli.js +38 -25
  5. package/build/cli.js.map +1 -1
  6. package/build/commands/function.d.ts.map +1 -1
  7. package/build/commands/function.js +6 -4
  8. package/build/commands/function.js.map +1 -1
  9. package/build/commands/generate/index.d.ts.map +1 -1
  10. package/build/commands/generate/index.js +25 -25
  11. package/build/commands/generate/index.js.map +1 -1
  12. package/build/commands/generate/schemaTypes.d.ts +4 -5
  13. package/build/commands/generate/schemaTypes.d.ts.map +1 -1
  14. package/build/commands/generate/schemaTypes.js +173 -88
  15. package/build/commands/generate/schemaTypes.js.map +1 -1
  16. package/build/commands/generate/types.d.ts.map +1 -1
  17. package/build/commands/generate/types.js +70 -31
  18. package/build/commands/generate/types.js.map +1 -1
  19. package/build/commands/model/generate.d.ts.map +1 -1
  20. package/build/commands/model/generate.js +26 -9
  21. package/build/commands/model/generate.js.map +1 -1
  22. package/build/commands/model/train.d.ts.map +1 -1
  23. package/build/commands/model/train.js +9 -3
  24. package/build/commands/model/train.js.map +1 -1
  25. package/build/commands/model/validate.d.ts.map +1 -1
  26. package/build/commands/model/validate.js +9 -3
  27. package/build/commands/model/validate.js.map +1 -1
  28. package/build/commands/prepare.d.ts.map +1 -1
  29. package/build/commands/prepare.js +11 -8
  30. package/build/commands/prepare.js.map +1 -1
  31. package/build/commands/setup.d.ts.map +1 -1
  32. package/build/commands/setup.js +10 -5
  33. package/build/commands/setup.js.map +1 -1
  34. package/build/commands/snippet.d.ts.map +1 -1
  35. package/build/commands/snippet.js +3 -1
  36. package/build/commands/snippet.js.map +1 -1
  37. package/build/commands/sync.d.ts.map +1 -1
  38. package/build/commands/sync.js +5 -3
  39. package/build/commands/sync.js.map +1 -1
  40. package/build/commands/tenant.d.ts.map +1 -1
  41. package/build/commands/tenant.js +6 -6
  42. package/build/commands/tenant.js.map +1 -1
  43. package/build/config.d.ts.map +1 -1
  44. package/build/config.js.map +1 -1
  45. package/build/dependencies.d.ts.map +1 -1
  46. package/build/dependencies.js +3 -1
  47. package/build/dependencies.js.map +1 -1
  48. package/build/deployables.d.ts.map +1 -1
  49. package/build/deployables.js +45 -22
  50. package/build/deployables.js.map +1 -1
  51. package/build/templates/api-functions.js.hbs +18 -0
  52. package/build/templates/api-index.js +153 -0
  53. package/build/templates/auth-function.js.hbs +2 -2
  54. package/build/templates/auth-index.js.hbs +9 -2
  55. package/build/templates/{axios.js.hbs → axios.js} +15 -3
  56. package/build/templates/constants.js.hbs +5 -0
  57. package/build/templates/{index.js.hbs → index.js} +8 -9
  58. package/build/templates/server-functions.js.hbs +7 -0
  59. package/build/templates/server-index.js +19 -0
  60. package/build/templates/vari/index.js.hbs +5 -5
  61. package/build/templates/webhook-handles.js.hbs +11 -0
  62. package/build/templates/{webhooks-index.js.hbs → webhooks-index.js} +4 -17
  63. package/build/transpiler.d.ts.map +1 -1
  64. package/build/transpiler.js +62 -40
  65. package/build/transpiler.js.map +1 -1
  66. package/build/tsconfig.build.tsbuildinfo +1 -1
  67. package/build/types/functions.d.ts.map +1 -1
  68. package/build/types/specifications.d.ts.map +1 -1
  69. package/build/types/templates.d.ts.map +1 -1
  70. package/build/utils.d.ts +1 -0
  71. package/build/utils.d.ts.map +1 -1
  72. package/build/utils.js +13 -7
  73. package/build/utils.js.map +1 -1
  74. package/package.json +2 -2
  75. package/build/templates/api-index.js.hbs +0 -148
  76. package/build/templates/server-index.js.hbs +0 -30
  77. /package/build/templates/{error-handler.js.hbs → error-handler.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/generate/index.ts"],"names":[],"mappings":";;;;;;AAAA,4CAA8C;AAC9C,4DAAoC;AACpC,kDAA0B;AAC1B,sDAA4B;AAC5B,+BAAoC;AAWpC,mCAAqC;AACrC,yCAA6D;AAC7D,uCAYqB;AACrB,+CAAoD;AACpD,mCAA2I;AAC3I,+CAAiE;AAGjE,oBAAU,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAEnD,MAAM,YAAY,GAAG,CAAC,IAA0B,EAAE,IAAY,EAAE,EAAE,CAChE,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IACpC,YAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AACnE,CAAC,CAAC,CAAC;AAEL,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,uBAAuB,CAAC;AAErF,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;AAEjD,MAAM,UAAU,GAAG,KAAK,EAAE,QAAgB,EAAE,EAAE;IAC5C,MAAM,OAAO,GAAG,IAAA,sBAAc,EAAC,QAAQ,CAAC,CAAC;IAEzC,YAAE,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,YAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,YAAE,CAAC,SAAS,CAAC,GAAG,OAAO,MAAM,CAAC,CAAC;IAC/B,YAAE,CAAC,SAAS,CAAC,GAAG,OAAO,SAAS,CAAC,CAAC;IAClC,YAAE,CAAC,SAAS,CAAC,GAAG,OAAO,OAAO,CAAC,CAAC;IAChC,YAAE,CAAC,SAAS,CAAC,GAAG,OAAO,WAAW,CAAC,CAAC;IACpC,YAAE,CAAC,SAAS,CAAC,GAAG,OAAO,SAAS,CAAC,CAAC;IAClC,YAAE,CAAC,SAAS,CAAC,GAAG,OAAO,OAAO,CAAC,CAAC;IAChC,YAAE,CAAC,SAAS,CAAC,GAAG,OAAO,UAAU,CAAC,CAAC;IAEnC,IAAI,QAAQ,KAAK,6BAAiB,EAAE;QAClC,IAAI;YACF,MAAM,0BAA0B,CAAC,QAAQ,CAAC,CAAC;SAC5C;QAAC,OAAO,GAAG,EAAE;YACZ,iBAAK,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,4CAA4C,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC;SACjG;KACF;AACH,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,CAAC;IAChC,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,KAAK,MAAM;IACjE,IAAI,EAAE;QACJ,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;QACpC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;QAClC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY;QAChC,kBAAkB,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;KAC3D;CACF,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,KAAK,EAAE,QAAgB,EAAE,EAAE;IAC5D,MAAM,cAAc,GAAG,IAAA,sBAAc,EAAC,6BAAiB,CAAC,CAAC;IAEzD,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,QAAQ,EAAE,CAAC;IAExE,YAAE,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,YAAE,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAElD,MAAM,uBAAuB,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,uBAAuB,CAAC,CAAC,CAAC;IAC1F,MAAM,yBAAyB,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,yBAAyB,CAAC,CAAC,CAAC;IAE9F,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,YAAY,CAAC,GAAG,cAAc,WAAW,EAAE,uBAAuB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QACjF,YAAY,CAAC,GAAG,cAAc,aAAa,EAAE,yBAAyB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;KACtF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,KAAK,EAAE,OAAe,EAAE,KAAsB,EAA8B,EAAE;IACpG,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAA+B,CAAC;IACvG,MAAM,eAAe,GAAG,KAAK;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB,CAAC;SAChD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAE,IAAoC,CAAC,QAAQ,KAAK,YAAY,CAAkC,CAAC;IACtH,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,CAAiC,CAAC;IAC7G,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,CAAgC,CAAC;IAC1G,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB,CAAkC,CAAC;IAChH,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB,CAAkC,CAAC;IAEhH,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,QAAQ,CAAC,0BAA0B,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,eAAe,CAAC,CAAC;IACnF,MAAM,4BAA4B,GAAG,MAAM,QAAQ,CAAC,6BAA6B,CAAC,OAAO,EAAE,eAAe,CAAC,EAAE,kBAAkB,CAAC,CAAC;IACjI,MAAM,QAAQ,CAAC,uBAAuB,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,UAAU,CAAC,CAAC;IAC7E,MAAM,QAAQ,CAAC,2BAA2B,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACtF,MAAM,QAAQ,CAAC,6BAA6B,CAAC,OAAO,EAAE,eAAe,CAAC,EAAE,kBAAkB,CAAC,CAAC;IAC5F,MAAM,QAAQ,CAAC,6BAA6B,CAAC,OAAO,EAAE,eAAe,CAAC,EAAE,WAAW,CAAC,CAAC;IAErF,OAAO,4BAA4B,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IACpD,MAAM,eAAe,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,cAAc,CAAC,CAAC,CAAC;IACzE,YAAE,CAAC,aAAa,CACd,GAAG,OAAO,WAAW,EACrB,eAAe,CAAC;QACd,QAAQ,EAAE,IAAA,SAAM,GAAE;QAClB,UAAU,EAAE,aAAa,EAAE;QAC3B,MAAM,EAAE,SAAS,EAAE;KACpB,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IACzD,MAAM,oBAAoB,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,oBAAoB,CAAC,CAAC,CAAC;IACpF,YAAE,CAAC,aAAa,CACd,GAAG,OAAO,iBAAiB,EAC3B,oBAAoB,CAAC;QACnB,UAAU,EAAE,aAAa,EAAE;QAC3B,MAAM,EAAE,SAAS,EAAE;KACpB,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IACpD,MAAM,eAAe,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,cAAc,CAAC,CAAC,CAAC;IACzE,YAAE,CAAC,aAAa,CACd,GAAG,OAAO,WAAW,EACrB,eAAe,CAAC;QACd,UAAU,EAAE,aAAa,EAAE;QAC3B,MAAM,EAAE,SAAS,EAAE;KACpB,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IACzD,MAAM,sBAAsB,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,sBAAsB,CAAC,CAAC,CAAC;IACxF,YAAE,CAAC,aAAa,CACd,GAAG,OAAO,mBAAmB,EAC7B,sBAAsB,CAAC,EACtB,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,KAAK,EAAE,OAAe,EAAE,cAA0C,EAAE,EAAE;IACvG,MAAM,QAAQ,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,kBAAkB,CAAC,CAAC,CAAC;IACtE,YAAE,CAAC,aAAa,CACd,GAAG,OAAO,eAAe,EACzB,QAAQ,CAAC;QACP,cAAc;QACd,eAAe,EAAE,kBAAkB,EAAE;KACtC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,6BAA6B,GAAG,KAAK,EAAE,OAAe,EAAE,cAA6C,EAA8B,EAAE;IACzI,MAAM,oBAAoB,GAAoC,EAAE,CAAC;IAEjE,IAAI,cAAc,CAAC,MAAM,EAAE;QACzB,MAAM,wBAAwB,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,wBAAwB,CAAC,CAAC,CAAC;QAE5F,MAAM,OAAO,CAAC,GAAG,CACf,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC1B,YAAY,CAAC,GAAG,OAAO,WAAW,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,KAAK,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;aACvH,KAAK,CAAC,KAAK,CAAC,EAAE;YACb,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG;gBAC9B,KAAK,EAAG,KAAe,CAAC,KAAK;gBAC7B,aAAa,EAAE,IAAI;aACpB,CAAC;QACJ,CAAC,CAAC,CACL,CACF,CAAC;KACH;IACD,MAAM,qBAAqB,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,qBAAqB,CAAC,CAAC,CAAC;IACtF,YAAE,CAAC,aAAa,CACd,GAAG,OAAO,kBAAkB,EAC5B,qBAAqB,CAAC;QACpB,cAAc,EAAE,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAC9E,CAAC,CACH,CAAC;IAEF,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,KAAK,EAAE,OAAe,EAAE,cAA4C,EAAE,EAAE;IACtG,MAAM,QAAQ,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,uBAAuB,CAAC,CAAC,CAAC;IAC3E,YAAE,CAAC,aAAa,CACd,GAAG,OAAO,oBAAoB,EAC9B,QAAQ,CAAC;QACP,cAAc;QACd,MAAM,EAAE,SAAS,EAAE;KACpB,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,6BAA6B,GAAG,KAAK,EAAE,OAAe,EAAE,cAA6C,EAAE,EAAE;IAC7G,MAAM,qBAAqB,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,qBAAqB,CAAC,CAAC,CAAC;IACtF,YAAE,CAAC,aAAa,CACd,GAAG,OAAO,kBAAkB,EAC5B,qBAAqB,CAAC;QACpB,cAAc;KACf,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,6BAA6B,GAAG,KAAK,EAAE,OAAe,EAAE,cAA6C,EAAE,EAAE;IAC7G,MAAM,WAAW,GAAG,IAAA,sBAAc,EAAC,cAAc,CAAC,CAAC;IACnD,MAAM,YAAY,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,mBAAmB,CAAC,CAAC,CAAC;IAEvE,MAAM,QAAQ,GAAG,EAAE,CAAC;IAEpB,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE;QAC1C,IAAI,IAAA,8BAAsB,EAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACvG,QAAQ,CAAC,IAAI,CAAC;gBACZ,OAAO,EAAE,aAAa,CAAC,OAAO,IAAI,EAAE;gBACpC,KAAK,EAAE,IAAA,sBAAc,EAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC;aACpD,CAAC,CAAC;SACJ;KACF;IAED,YAAE,CAAC,aAAa,CACd,GAAG,OAAO,gBAAgB,EAC1B,QAAQ,CAAC;QACP,cAAc;QACd,YAAY;QACZ,MAAM,EAAE,SAAS,EAAE;QACnB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;KACnC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,2BAA2B,GAAG,KAAK,EAAE,OAAe,EAAE,cAA2C,EAA8B,EAAE;IACrI,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,MAAM,mBAAmB,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,mBAAmB,CAAC,CAAC,CAAC;IAClF,YAAE,CAAC,aAAa,CACd,GAAG,OAAO,gBAAgB,EAC1B,mBAAmB,CAAC;QAClB,iBAAiB,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC;QAC5E,oBAAoB,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC;QACvE,UAAU;QACV,MAAM;KACP,CAAC,CACH,CAAC;IAEF,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3E,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAE5C,MAAM,sBAAsB,GAAG,oBAAU,CAAC,OAAO,CAAC,IAAA,oBAAY,EAAC,sBAAsB,CAAC,CAAC,CAAC;IAExF,MAAM,oBAAoB,GAAoC,EAAE,CAAC;IAEjE,MAAM,OAAO,CAAC,GAAG,CACf,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC1B,YAAY,CAAC,GAAG,OAAO,SAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,KAAK,EAAE,sBAAsB,CAAC;QAC9G,GAAG,IAAI;QACP,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC;QAChF,UAAU;QACV,MAAM;KACP,CAAC,CAAC;SACA,KAAK,CAAC,KAAK,CAAC,EAAE;QACb,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG;YAC9B,KAAK,EAAG,KAAe,CAAC,KAAK;YAC7B,aAAa,EAAE,IAAI;SACpB,CAAC;IACJ,CAAC,CAAC,CACL,CACF,CAAC;IAEF,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,WAAgC,EAAE,EAAE;IAC3D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,EAAE;QAC7C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACnC,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK,QAAQ,EAAE;gBACzC,SAAS;aACV;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;YAClD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxB,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC;SAC5C;IACH,CAAC,CAAC;IAEF,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAEhC,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,KAAU,EAAE,EAAE;IAC5C,iBAAK,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/B,iBAAK,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAAC;IACxG,iBAAK,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACrC,iBAAK,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACnC,iBAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,4BAA4B,GAAG,KAAK,EAAE,QAAgB,EAAE,UAAkB,EAAE,OAAgB,EAAE,OAAO,GAAG,KAAK,EAAE,EAAE;IACrH,iBAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC;IAE9F,MAAM,OAAO,GAAG,IAAA,sBAAc,EAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,WAAW,GAAwB,EAAE,CAAC;IAE1C,IAAI;QACF,WAAW,GAAG,IAAA,iCAAyB,EAAC,OAAO,CAAC,CAAC;KAClD;IAAC,OAAO,KAAK,EAAE;QACd,iBAAK,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/B,iBAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QACvD,iBAAK,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACrC,iBAAK,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QACnC,OAAO;KACR;IAED,MAAM,SAAS,GAAG,IAAA,+BAAuB,EAAC,WAAW,CAAC,CAAC;IAEvD,IAAI,KAAK,GAAoB,EAAE,CAAC;IAEhC,IAAI;QACF,KAAK,GAAG,MAAM,IAAA,cAAQ,EAAC,EAAE,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;KACvD;IAAC,OAAO,KAAK,EAAE;QACd,IAAA,2BAAmB,EAAC,KAAK,CAAC,CAAC;QAC3B,OAAO;KACR;IAED,MAAM,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC;IAE/B,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,cAAc,CAAC,EAAE,CAAC,EAAE;QACnE,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YACjC,IAAI,QAAQ,CAAC,EAAE,KAAK,cAAc,CAAC,EAAE,EAAE;gBACrC,OAAO,cAAc,CAAC;aACvB;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;KACJ;SAAM;QACL,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC/B,KAAK,GAAG,SAAS,CAAC;KACnB;IAED,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;IAE3B,IAAA,2BAAmB,EAAC,KAAK,CAAC,CAAC;IAE3B,MAAM,IAAA,qBAAa,EAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAE7C,IAAI,IAAA,2BAAmB,GAAE,EAAE;QACzB,iBAAK,CAAC,IAAI,CAAC,eAAK,CAAC,MAAM,CAAC,yGAAyG,CAAC,CAAC,CAAC;KACrI;SAAM;QACL,iBAAK,CAAC,IAAI,CAAC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;KACjC;AACH,CAAC,CAAC;AAgGiB,oEAA4B;AA9F/C,MAAM,iBAAiB,GAAG,CAAC,QAAgB,EAAE,QAAmB,EAAE,KAAgB,EAAE,WAAsB,EAAE,OAAiB,EAAE,EAAE;IAC/H,IAAA,0BAAiB,EAAC,QAAQ,EAAE,6BAA6B,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE/F,IAAA,0BAAiB,EAAC,QAAQ,EAAE,0BAA0B,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEtF,IAAA,0BAAiB,EAAC,QAAQ,EAAE,iCAAiC,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEzG,IAAA,0BAAiB,EAAC,QAAQ,EAAE,6BAA6B,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACrF,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,KAAK,EAAE,EACtB,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,WAAW,EACX,OAAO,GAOR,EAAE,EAAE;IACH,IAAI,KAAK,GAAoB,EAAE,CAAC;IAEhC,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,gDAAgD,QAAQ,MAAM,CAAC,CAAC,CAAC,mCAAmC,CAAC;IACpI,iBAAK,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAE9B,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC3B,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC;IAErB,IAAI;QACF,KAAK,GAAG,MAAM,IAAA,cAAQ,EAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAE9D,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;KACpE;IAAC,OAAO,KAAK,EAAE;QACd,IAAA,2BAAmB,EAAC,KAAK,CAAC,CAAC;QAC3B,OAAO;KACR;IAED,IAAA,2BAAmB,EAAC,KAAK,CAAC,CAAC;IAC3B,MAAM,IAAA,qBAAa,EAAC,IAAA,sBAAc,EAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAE9D,IAAI,IAAA,2BAAmB,GAAE,EAAE;QACzB,iBAAK,CAAC,IAAI,CAAC,eAAK,CAAC,MAAM,CAAC,yGAAyG,CAAC,CAAC,CAAC;KACrI;SAAM;QACL,iBAAK,CAAC,IAAI,CAAC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;KACjC;AACH,CAAC,CAAC;AA8CO,4BAAQ;AA5CjB,MAAM,QAAQ,GAAG,KAAK,EAAe,OAAmB,EAAE,cAAsB,EAAc,EAAE;IAC9F,IAAI;QACF,OAAO,MAAM,OAAO,CAAC;KACtB;IAAC,OAAO,GAAG,EAAE;QACZ,iBAAK,CAAC,IAAI,CACR,eAAK,CAAC,GAAG,CAAC,mDAAmD,cAAc,KAAK,GAAG,EAAE,CAAC,CACvF,CAAC;KACH;AACH,CAAC,CAAC;AAEK,MAAM,aAAa,GAAG,KAAK,EAAE,OAAe,EAAE,KAAsB,EAAE,OAAgB,EAAE,EAAE;IAC/F,IAAI;QACF,IAAI,YAAY,GAAoB,EAAE,CAAC;QACvC,CAAC,YAAY,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YAC9C,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACnC,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACb,MAAM,2BAA2B,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAE1E,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,2BAA2B,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,mBAAmB,CAAC,aAAa,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAEvJ,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,QAAQ,CAAC,IAAA,0CAAkC,EAAC,OAAO,EAAE,aAAa,CAAC,EAAE,gBAAgB,CAAC,CAAC;YAC7F,MAAM,QAAQ,CAAC,IAAA,0CAAkC,EAAC,OAAO,EAAE,aAAa,CAAC,EAAE,gBAAgB,CAAC,CAAC;YAC7F,MAAM,QAAQ,CAAC,IAAA,8CAAgC,EAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAU,CAAC,EAAE,SAAS,CAAC,CAAC;SAC/H;QAED,IAAA,+BAAuB,EAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAEhD,IAAI,YAAY,CAAC,MAAM,EAAE;YACvB,IAAA,2BAAmB,EAAC,IAAI,CAAC,CAAC;YAC1B,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,2BAAmB,EAAC,CAAC,CAAC,CAAC,CAAC;SACjD;QACD,IAAI,2BAA2B,CAAC,MAAM,EAAE;YACtC,IAAA,2BAAmB,EAAC,IAAI,CAAC,CAAC;YAC1B,2BAA2B,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC5C,IAAA,2BAAmB,EAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;SACJ;KACF;IAAC,OAAO,KAAK,EAAE;QACd,sBAAsB,CAAC,KAAK,CAAC,CAAC;KAC/B;AACH,CAAC,CAAC;AAhCW,QAAA,aAAa,iBAgCxB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/generate/index.ts"],"names":[],"mappings":"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"}
@@ -20,14 +20,15 @@ export type JsonSchema = {
20
20
  propertyName: string;
21
21
  mapping: Record<string, string>;
22
22
  };
23
- '$id'?: string;
24
- '$ref'?: string;
25
- '$schema'?: string;
23
+ $id?: string;
24
+ $ref?: string;
25
+ $schema?: string;
26
26
  'x-poly-ref'?: SchemaRef;
27
27
  deprecated?: boolean;
28
28
  nullable?: boolean;
29
29
  enum?: ConstValueT[];
30
30
  const?: ConstValueT;
31
+ definitions?: Record<string, JsonSchema>;
31
32
  [k: string]: unknown;
32
33
  };
33
34
  export type SchemaSpec = Omit<SchemaSpecification, 'definition'> & {
@@ -39,9 +40,7 @@ type PrintSchemaFn = (schema: JsonSchema, key: string, depth: number, nested?: N
39
40
  type SchemaRoot = {
40
41
  path: string;
41
42
  interfaceName: string;
42
- interfaces: Record<string, string>;
43
43
  namespaces: SchemaTree;
44
- hasTypes: boolean;
45
44
  };
46
45
  export declare const generateSchemaTSDeclarationFiles: (libPath: string, specs: SchemaSpec[]) => Promise<void>;
47
46
  export declare const __test: {
@@ -1 +1 @@
1
- {"version":3,"file":"schemaTypes.d.ts","sourceRoot":"","sources":["../../../src/commands/generate/schemaTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schemaTypes.d.ts","sourceRoot":"","sources":["../../../src/commands/generate/schemaTypes.ts"],"names":[],"mappings":"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"}
@@ -15,16 +15,16 @@ const unescapedSingleQuote = /\b'\b/gi;
15
15
  const wrapUnsafeNames = (name) => {
16
16
  if (!name.match(unsafeCharacters))
17
17
  return name;
18
- if (name.includes('\''))
19
- name = name.replaceAll(unescapedSingleQuote, '\'');
18
+ if (name.includes("'"))
19
+ name = name.replaceAll(unescapedSingleQuote, "'");
20
20
  return `'${name}'`;
21
21
  };
22
- const formatName = (name, nested = false) => wrapUnsafeNames(nested ? name : (0, helper_string_1.toPascalCase)(name));
22
+ const formatName = (name, nested = false) => name === '[k: string]'
23
+ ? name
24
+ : wrapUnsafeNames(nested ? name : (0, helper_string_1.toPascalCase)(name));
23
25
  const ws = (0, lodash_1.memoize)((depth = 1) => depth < 0 ? '' : new Array(depth).fill(' ').join(''));
24
26
  const end = (0, lodash_1.memoize)((nested) => !nested || nested === 'object' ? ';' : '');
25
- const wrapParens = (v) => v.includes('| ') || v.includes('& ')
26
- ? `(${v})`
27
- : v;
27
+ const wrapParens = (v) => v.includes('| ') || v.includes('& ') ? `(${v})` : v;
28
28
  const printComment = (comment = '', depth = 0, deprecated = false) => {
29
29
  if (!comment && !deprecated)
30
30
  return '';
@@ -54,7 +54,9 @@ const printEnumSchema = (schema, key, depth, nested, optional = false) => {
54
54
  }
55
55
  if (schema.nullable && !values.includes(null))
56
56
  values.unshift(null);
57
- return `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}${values.map(v => `${node_os_1.EOL}${ws(depth + 1)}| ${typeof v === 'string' ? `'${v}'` : v}`).join('')}${end(nested)}`;
57
+ return `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}${values
58
+ .map((v) => `${node_os_1.EOL}${ws(depth + 1)}| ${typeof v === 'string' ? `'${v}'` : v}`)
59
+ .join('')}${end(nested)}`;
58
60
  };
59
61
  const printStringSchema = (schema, key, depth, nested, optional = false) => {
60
62
  return `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}${schema.nullable ? 'null | ' : ''}string${end(nested)}`;
@@ -70,7 +72,9 @@ const printNullSchema = (schema, key, depth, nested, optional = false) => {
70
72
  };
71
73
  const printObjectSchema = (schema, key, depth, nested, optional = false) => {
72
74
  let result = `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}{`;
73
- if (schema.properties || schema.patternProperties || schema.additionalProperties) {
75
+ if (schema.properties ||
76
+ schema.patternProperties ||
77
+ schema.additionalProperties) {
74
78
  if (schema.properties) {
75
79
  Object.entries(schema.properties).forEach(([k, v]) => {
76
80
  result = `${result}${node_os_1.EOL}${printSchemaAsType(v, k, depth + 1, 'object', !schema.required?.includes(k))}`;
@@ -78,7 +82,7 @@ const printObjectSchema = (schema, key, depth, nested, optional = false) => {
78
82
  }
79
83
  if (schema.patternProperties) {
80
84
  const subschemas = Array.from(Object.values(schema.patternProperties));
81
- const types = new Set(subschemas.map(s => JSON.stringify(s)));
85
+ const types = new Set(subschemas.map((s) => JSON.stringify(s)));
82
86
  let subschema;
83
87
  if (typeof schema.additionalProperties === 'object') {
84
88
  subschema = { anyOf: subschemas.concat(schema.additionalProperties) };
@@ -107,14 +111,17 @@ const printObjectSchema = (schema, key, depth, nested, optional = false) => {
107
111
  return result;
108
112
  };
109
113
  const printTupleSchema = (schema, key, depth, nested, optional = false) => {
110
- if (!Array.isArray(schema.items))
114
+ if (!Array.isArray(schema.items)) {
111
115
  throw new Error('schema.items should be an array to use this function');
116
+ }
112
117
  let result = `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}`;
113
118
  if (!schema.items.length) {
114
119
  result = `${result}void[]${end(nested)}`;
115
120
  }
116
121
  else {
117
- result = `${result}[${node_os_1.EOL}${schema.items.map(item => printSchemaAsType(item, '', depth + 1, 'array')).join(`,${node_os_1.EOL}`)}`;
122
+ result = `${result}[${node_os_1.EOL}${schema.items
123
+ .map((item) => printSchemaAsType(item, '', depth + 1, 'array'))
124
+ .join(`,${node_os_1.EOL}`)}`;
118
125
  if (schema.additionalItems) {
119
126
  if (typeof schema.additionalItems === 'object') {
120
127
  const child = printSchemaAsType(schema.additionalItems, '', depth + 1, 'array').trim();
@@ -134,8 +141,9 @@ const printTupleSchema = (schema, key, depth, nested, optional = false) => {
134
141
  return result;
135
142
  };
136
143
  const printArraySchema = (schema, key, depth, nested, optional = false) => {
137
- if (Array.isArray(schema.items))
144
+ if (Array.isArray(schema.items)) {
138
145
  return printTupleSchema(schema, key, depth, nested, optional);
146
+ }
139
147
  let result = `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}`;
140
148
  if (schema.items) {
141
149
  const child = printSchemaAsType(schema.items, '', depth + 1, 'array');
@@ -152,18 +160,20 @@ const printArraySchema = (schema, key, depth, nested, optional = false) => {
152
160
  return result;
153
161
  };
154
162
  const printMultiTypeSchema = (schema, key, depth, nested, optional = false) => {
155
- if (!Array.isArray(schema.type) || !schema.type.length)
163
+ if (!Array.isArray(schema.type) || !schema.type.length) {
156
164
  throw new Error('schema.type should be a non-empty array to use this function');
165
+ }
157
166
  return `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}${schema.type.join(' | ')}${end(nested)}`;
158
167
  };
159
168
  const printIntersectionSchema = (schema, key, depth, nested, optional = false) => {
160
- if (!Array.isArray(schema.allOf) || !schema.allOf.length)
169
+ if (!Array.isArray(schema.allOf) || !schema.allOf.length) {
161
170
  throw new Error('schema.allOf should be a non-empty array to use this function');
171
+ }
162
172
  if (schema.allOf.length === 1) {
163
173
  return printSchemaAsType({ ...schema, ...schema.allOf[0], allOf: undefined }, key, depth, nested, optional);
164
174
  }
165
175
  let subtypes = schema.allOf
166
- .map(s => printSchemaAsType(s, '', depth, 'intersection'))
176
+ .map((s) => printSchemaAsType(s, '', depth, 'intersection'))
167
177
  .map((v) => wrapParens(v.trim()))
168
178
  .join(' & ');
169
179
  if (schema.nullable) {
@@ -172,19 +182,24 @@ const printIntersectionSchema = (schema, key, depth, nested, optional = false) =
172
182
  return `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}${subtypes}${end(nested)}`;
173
183
  };
174
184
  const printUnionSchema = (schema, key, depth, nested, optional = false) => {
175
- if (!Array.isArray(schema.anyOf) || !schema.anyOf.length)
185
+ if (!Array.isArray(schema.anyOf) || !schema.anyOf.length) {
176
186
  throw new Error('schema.anyOf should be a non-empty array to use this function');
187
+ }
177
188
  if (schema.anyOf.length === 1) {
178
189
  return printSchemaAsType({ ...schema, ...schema.anyOf[0], anyOf: undefined }, key, depth, nested, optional);
179
190
  }
180
191
  const subtypes = schema.anyOf
181
- .map(s => printSchemaAsType(s, '', depth + 1, 'union'))
192
+ .map((s) => printSchemaAsType(s, '', depth + 1, 'union'))
182
193
  .map((v, i) => `${node_os_1.EOL}${ws(depth + 1)}${i || !nested || nested === 'object' ? '| ' : ''}${wrapParens(v.trim())}`)
183
194
  .join('');
184
195
  return `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}${schema.nullable ? `${node_os_1.EOL}${ws(depth + 1)}| null` : ''}${subtypes}${end(nested)}`;
185
196
  };
186
197
  const printPolyRefSchema = (schema, key, depth, nested, optional = false) => {
187
- return `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}${schema['x-poly-ref'].publicNamespace ? `${schema['x-poly-ref'].publicNamespace}.` : ''}${schema['x-poly-ref'].path.split('.').map(v => formatName(v)).join('.')}${end(nested)}`;
198
+ const ref = schema['x-poly-ref'];
199
+ return `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}${ref.publicNamespace ? `${formatName(ref.publicNamespace)}.` : ''}${ref.path
200
+ .split('.')
201
+ .map((v) => formatName(v))
202
+ .join('.')}${end(nested)}`;
188
203
  };
189
204
  const printAnySchema = (schema, key, depth, nested, optional = false) => {
190
205
  return `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}unknown${end(nested)}`;
@@ -196,28 +211,40 @@ const printConstSchema = (schema, key, depth, nested, optional = false) => {
196
211
  return `${printComment(schema.description, depth, schema.deprecated)}${ws(depth)}${printTypeName(schema.title, key, nested, optional)}${schema.nullable && schema.const !== null ? 'null | ' : ''}${typeof schema.const === 'string' ? `'${schema.const}'` : schema.const}${end(nested)}`;
197
212
  };
198
213
  const printSchemaAsType = (schema, key, depth = 0, nested, optional = false) => {
199
- if (schema['x-poly-ref'])
214
+ if (schema['x-poly-ref']) {
200
215
  return printPolyRefSchema(schema, key, depth, nested, optional);
201
- if (schema.const !== undefined)
216
+ }
217
+ if (schema.const !== undefined) {
202
218
  return printConstSchema(schema, key, depth, nested, optional);
203
- if (Array.isArray(schema.enum) && schema.enum.length)
219
+ }
220
+ if (Array.isArray(schema.enum) && schema.enum.length) {
204
221
  return printEnumSchema(schema, key, depth, nested, optional);
205
- if (Array.isArray(schema.type) && schema.type.length)
222
+ }
223
+ if (Array.isArray(schema.type) && schema.type.length) {
206
224
  return printMultiTypeSchema(schema, key, depth, nested, optional);
207
- if (Array.isArray(schema.anyOf) && schema.anyOf.length)
225
+ }
226
+ if (Array.isArray(schema.anyOf) && schema.anyOf.length) {
208
227
  return printUnionSchema(schema, key, depth, nested, optional);
209
- if (Array.isArray(schema.allOf) && schema.allOf.length)
228
+ }
229
+ if (Array.isArray(schema.allOf) && schema.allOf.length) {
210
230
  return printIntersectionSchema(schema, key, depth, nested, optional);
231
+ }
211
232
  switch (schema.type) {
212
- case 'object': return printObjectSchema(schema, key, depth, nested, optional);
213
- case 'array': return printArraySchema(schema, key, depth, nested, optional);
214
- case 'string': return printStringSchema(schema, key, depth, nested, optional);
233
+ case 'object':
234
+ return printObjectSchema(schema, key, depth, nested, optional);
235
+ case 'array':
236
+ return printArraySchema(schema, key, depth, nested, optional);
237
+ case 'string':
238
+ return printStringSchema(schema, key, depth, nested, optional);
215
239
  case 'integer':
216
240
  case 'number':
217
241
  return printNumberSchema(schema, key, depth, nested, optional);
218
- case 'boolean': return printBooleanSchema(schema, key, depth, nested, optional);
219
- case 'null': return printNullSchema(schema, key, depth, nested, optional);
220
- case 'unresolved': return printUnresolvedSchema(schema, key, depth, nested, optional);
242
+ case 'boolean':
243
+ return printBooleanSchema(schema, key, depth, nested, optional);
244
+ case 'null':
245
+ return printNullSchema(schema, key, depth, nested, optional);
246
+ case 'unresolved':
247
+ return printUnresolvedSchema(schema, key, depth, nested, optional);
221
248
  }
222
249
  return printAnySchema(schema, key, depth, nested, optional);
223
250
  };
@@ -248,7 +275,8 @@ const printSchemaTreeAsTypes = (schema, name, depth = 0) => {
248
275
  const normalizeSchema = (schema) => {
249
276
  if (schema.type === 'schema') {
250
277
  schema.definition.title = schema.name;
251
- schema.definition.description = schema.definition.description || schema.description;
278
+ schema.definition.description =
279
+ schema.definition.description || schema.description;
252
280
  schema.definition = normalizeSchema(schema.definition);
253
281
  return schema;
254
282
  }
@@ -264,21 +292,25 @@ const normalizeSchema = (schema) => {
264
292
  }
265
293
  }
266
294
  if (Array.isArray(schema.anyOf)) {
267
- schema.anyOf = schema.anyOf.map(s => normalizeSchema(s));
295
+ schema.anyOf = schema.anyOf.map((s) => normalizeSchema(s));
268
296
  }
269
297
  if (Array.isArray(schema.allOf)) {
270
- schema.allOf = schema.allOf.map(s => normalizeSchema(s));
298
+ schema.allOf = schema.allOf.map((s) => normalizeSchema(s));
271
299
  }
272
- if (schema.type === 'object' || (Array.isArray(schema.type) && schema.type.includes('object'))) {
300
+ if (schema.type === 'object' ||
301
+ (Array.isArray(schema.type) && schema.type.includes('object'))) {
273
302
  if (schema.additionalProperties == null) {
274
- schema.additionalProperties = {};
303
+ schema.additionalProperties = false;
275
304
  }
276
305
  if (!Array.isArray(schema.required)) {
277
306
  schema.required = [];
278
307
  }
279
308
  }
280
- else if (schema.type === 'array' || (Array.isArray(schema.type) && schema.type.includes('array'))) {
281
- if (schema.items && !Array.isArray(schema.items) && schema.additionalItems) {
309
+ else if (schema.type === 'array' ||
310
+ (Array.isArray(schema.type) && schema.type.includes('array'))) {
311
+ if (schema.items &&
312
+ !Array.isArray(schema.items) &&
313
+ schema.additionalItems) {
282
314
  schema.items = [schema.items];
283
315
  }
284
316
  if (!schema.items) {
@@ -300,10 +332,12 @@ const getPolySchemaRefs = (schema) => {
300
332
  let toSearch = [];
301
333
  if (schema.schemas)
302
334
  toSearch = toSearch.concat(Object.values(schema.schemas));
303
- if (schema.properties)
335
+ if (schema.properties) {
304
336
  toSearch = toSearch.concat(Object.values(schema.properties));
305
- if (schema.patternProperties)
337
+ }
338
+ if (schema.patternProperties) {
306
339
  toSearch = toSearch.concat(Object.values(schema.patternProperties));
340
+ }
307
341
  if (schema.items) {
308
342
  if (Array.isArray(schema.items)) {
309
343
  toSearch = toSearch.concat(schema.items);
@@ -314,13 +348,14 @@ const getPolySchemaRefs = (schema) => {
314
348
  }
315
349
  if (typeof schema.additionalItems === 'object')
316
350
  toSearch.push(schema.items);
317
- if (typeof schema.additionalProperties === 'object')
351
+ if (typeof schema.additionalProperties === 'object') {
318
352
  toSearch.push(schema.additionalProperties);
353
+ }
319
354
  if (Array.isArray(schema.allOf))
320
355
  toSearch = toSearch.concat(schema.allOf);
321
356
  if (Array.isArray(schema.anyOf))
322
357
  toSearch = toSearch.concat(schema.anyOf);
323
- return toSearch.flatMap(s => getPolySchemaRefs(s));
358
+ return toSearch.flatMap((s) => getPolySchemaRefs(s));
324
359
  };
325
360
  const fillInUnresolvedSchemas = (specs) => {
326
361
  const schemas = new Map();
@@ -338,7 +373,11 @@ const fillInUnresolvedSchemas = (specs) => {
338
373
  name,
339
374
  context: parts.join('.'),
340
375
  contextName: unresolved.path,
341
- definition: { type: 'unresolved', title: name, description: `Unresolved schema, please add schema \`${unresolved.path}\` to complete it.` },
376
+ definition: {
377
+ type: 'unresolved',
378
+ title: name,
379
+ description: `Unresolved schema, please add schema \`${unresolved.path}\` to complete it.`,
380
+ },
342
381
  visibilityMetadata: {
343
382
  visibility: 'ENVIRONMENT',
344
383
  },
@@ -359,7 +398,11 @@ const fillInUnresolvedSchemas = (specs) => {
359
398
  name,
360
399
  context,
361
400
  contextName,
362
- definition: { type: 'unresolved', title: name, description: `Missing schema, as context \`${context}\` was not generated.` },
401
+ definition: {
402
+ type: 'unresolved',
403
+ title: name,
404
+ description: `Missing schema, as context \`${context}\` was not generated.`,
405
+ },
363
406
  visibilityMetadata: {
364
407
  visibility: 'ENVIRONMENT',
365
408
  },
@@ -369,11 +412,81 @@ const fillInUnresolvedSchemas = (specs) => {
369
412
  }
370
413
  return Array.from(schemas.values());
371
414
  };
415
+ const replaceJsonSchemasWithPolyAPISchemas = (schema, mapping) => {
416
+ if (schema['$ref'] && mapping.has(schema['$ref'])) {
417
+ schema['x-poly-ref'] = {
418
+ path: mapping.get(schema['$ref']),
419
+ };
420
+ delete schema['$ref'];
421
+ }
422
+ let toSearch = [];
423
+ if (schema.schemas)
424
+ toSearch = toSearch.concat(Object.values(schema.schemas));
425
+ if (schema.properties) {
426
+ toSearch = toSearch.concat(Object.values(schema.properties));
427
+ }
428
+ if (schema.patternProperties) {
429
+ toSearch = toSearch.concat(Object.values(schema.patternProperties));
430
+ }
431
+ if (schema.items) {
432
+ if (Array.isArray(schema.items)) {
433
+ toSearch = toSearch.concat(schema.items);
434
+ }
435
+ else {
436
+ toSearch.push(schema.items);
437
+ }
438
+ }
439
+ if (typeof schema.additionalItems === 'object')
440
+ toSearch.push(schema.items);
441
+ if (typeof schema.additionalProperties === 'object') {
442
+ toSearch.push(schema.additionalProperties);
443
+ }
444
+ if (Array.isArray(schema.allOf))
445
+ toSearch = toSearch.concat(schema.allOf);
446
+ if (Array.isArray(schema.anyOf))
447
+ toSearch = toSearch.concat(schema.anyOf);
448
+ for (const s of toSearch)
449
+ replaceJsonSchemasWithPolyAPISchemas(s, mapping);
450
+ };
451
+ const flattenDefinitions = (specs) => {
452
+ const flattened = [];
453
+ const names = new Set();
454
+ for (const spec of specs) {
455
+ flattened.push(spec);
456
+ names.add(spec.contextName);
457
+ if (!spec.definition.definitions)
458
+ continue;
459
+ const mapping = new Map();
460
+ for (const [name, definition] of Object.entries(spec.definition.definitions)) {
461
+ let contextName = '';
462
+ let i = -1;
463
+ do {
464
+ i++;
465
+ contextName = `${spec.context}${spec.context ? '.' : ''}${name}${i || ''}`;
466
+ } while (names.has(contextName));
467
+ mapping.set(`#/definitions/${name}`, contextName);
468
+ flattened.push({
469
+ id: '',
470
+ type: 'schema',
471
+ name: `${name}${i || ''}`,
472
+ context: spec.context,
473
+ contextName,
474
+ definition,
475
+ visibilityMetadata: {
476
+ visibility: 'ENVIRONMENT',
477
+ },
478
+ });
479
+ }
480
+ delete spec.definition.definitions;
481
+ replaceJsonSchemasWithPolyAPISchemas(spec.definition, mapping);
482
+ }
483
+ return flattened;
484
+ };
372
485
  const printSchemaRoot = (root) => {
373
- let result = `declare namespace schemas {${node_os_1.EOL}${ws(1)}interface ${root.interfaceName} {${Object.entries(root.interfaces).map(([k, v]) => `${node_os_1.EOL}${ws(2)}${k}: ${v};`).join('')}${node_os_1.EOL}${ws(1)}}`;
486
+ let result = 'declare namespace schemas {';
374
487
  for (const [key, tree] of Object.entries(root.namespaces)) {
375
488
  const types = 'type' in tree && tree.type === 'schema'
376
- ? printSchemaAsType(tree, key, 1)
489
+ ? printSchemaAsType(tree.definition, key, 1)
377
490
  : printSchemaTreeAsTypes(tree, (0, helper_string_1.toPascalCase)(key), 1);
378
491
  result = `${result}${node_os_1.EOL}${types}`;
379
492
  }
@@ -381,59 +494,31 @@ const printSchemaRoot = (root) => {
381
494
  return result;
382
495
  };
383
496
  const buildSchemaTree = (specs) => {
384
- const schemas = {
385
- default: {
386
- path: 'default',
387
- interfaceName: 'Schemas',
388
- interfaces: {},
389
- namespaces: {},
390
- hasTypes: false,
391
- },
392
- };
497
+ const schemas = {};
393
498
  for (const spec of specs) {
394
- if (!spec.context) {
395
- schemas.default.interfaces[spec.name] = spec.name;
396
- schemas.default.namespaces[spec.name] = spec;
397
- schemas.default.hasTypes = true;
398
- continue;
399
- }
400
- const specInterfaceName = (0, helper_string_1.toPascalCase)(spec.context);
401
- const contextParts = spec.context.split('.');
402
- const last = contextParts.length - 1;
403
- for (let i = 0; i <= last; i++) {
404
- const name = contextParts[i];
405
- const interfaceName = i === last ? specInterfaceName : (0, helper_string_1.toPascalCase)(contextParts[i]);
406
- const path = contextParts.slice(0, i + 1).join('.');
407
- const parent = i ? contextParts.slice(0, i).join('.') : 'default';
408
- if (schemas[path])
409
- continue;
410
- schemas[path] = {
411
- path,
412
- interfaceName,
413
- interfaces: {},
414
- namespaces: {},
415
- hasTypes: false,
416
- };
417
- schemas[parent].interfaces[name] = interfaceName;
418
- (0, lodash_1.set)(schemas[parent].namespaces, path, {});
419
- }
420
- (0, lodash_1.set)(schemas[spec.context].namespaces, spec.contextName, spec);
421
- schemas[spec.context].interfaces[spec.name] = spec.contextName.split('.').map(v => (0, helper_string_1.toPascalCase)(v)).join('.');
422
- schemas[spec.context].hasTypes = true;
499
+ const context = spec.context || 'default';
500
+ const interfaceName = spec.context ? (0, helper_string_1.toPascalCase)(spec.context) : 'Schemas';
501
+ schemas[context] = schemas[context] || {
502
+ path: context,
503
+ interfaceName,
504
+ namespaces: {},
505
+ };
506
+ (0, lodash_1.set)(schemas[context].namespaces, spec.contextName, spec);
423
507
  }
424
508
  return Array.from(Object.values(schemas));
425
509
  };
426
510
  const printSchemaSpecs = (specs) => {
427
- const normalized = fillInUnresolvedSchemas(specs.map(schema => normalizeSchema(schema)));
511
+ const normalized = fillInUnresolvedSchemas(flattenDefinitions(specs.map((schema) => normalizeSchema(schema))));
428
512
  const trees = buildSchemaTree(normalized);
429
- const fileMap = Object.fromEntries(trees.map(tree => [`${tree.path}.d.ts`, printSchemaRoot(tree)]));
430
- fileMap['index.d.ts'] = Object.keys(fileMap).map(file => `/// <reference path="./${file}" />`).join(node_os_1.EOL);
513
+ const fileMap = Object.fromEntries(trees.map((tree) => [`${tree.path}.d.ts`, printSchemaRoot(tree)]));
514
+ fileMap['index.d.ts'] = Object.keys(fileMap)
515
+ .map((file) => `/// <reference path="./${file}" />`)
516
+ .join(node_os_1.EOL);
431
517
  return fileMap;
432
518
  };
433
519
  const generateSchemaTSDeclarationFiles = async (libPath, specs) => {
434
520
  const files = printSchemaSpecs(specs);
435
- await Promise.all(Object.entries(files)
436
- .map(([file, contents]) => new Promise((resolve, reject) => fs_1.default.writeFile(`${libPath}/schemas/${file}`, contents, (err) => err ? reject(err) : resolve()))));
521
+ await Promise.all(Object.entries(files).map(([file, contents]) => new Promise((resolve, reject) => fs_1.default.writeFile(`${libPath}/schemas/${file}`, contents, (err) => err ? reject(err) : resolve()))));
437
522
  };
438
523
  exports.generateSchemaTSDeclarationFiles = generateSchemaTSDeclarationFiles;
439
524
  exports.__test = {