strapi-typed-client 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +83 -0
  3. package/dist/cli/commands/check.d.ts +27 -0
  4. package/dist/cli/commands/check.d.ts.map +1 -0
  5. package/dist/cli/commands/check.js +91 -0
  6. package/dist/cli/commands/check.js.map +1 -0
  7. package/dist/cli/commands/generate.d.ts +28 -0
  8. package/dist/cli/commands/generate.d.ts.map +1 -0
  9. package/dist/cli/commands/generate.js +129 -0
  10. package/dist/cli/commands/generate.js.map +1 -0
  11. package/dist/cli/commands/watch.d.ts +21 -0
  12. package/dist/cli/commands/watch.d.ts.map +1 -0
  13. package/dist/cli/commands/watch.js +113 -0
  14. package/dist/cli/commands/watch.js.map +1 -0
  15. package/dist/cli/index.d.ts +14 -0
  16. package/dist/cli/index.d.ts.map +1 -0
  17. package/dist/cli/index.js +40 -0
  18. package/dist/cli/index.js.map +1 -0
  19. package/dist/cli/utils/api-client.d.ts +41 -0
  20. package/dist/cli/utils/api-client.d.ts.map +1 -0
  21. package/dist/cli/utils/api-client.js +81 -0
  22. package/dist/cli/utils/api-client.js.map +1 -0
  23. package/dist/cli/utils/file-writer.d.ts +44 -0
  24. package/dist/cli/utils/file-writer.d.ts.map +1 -0
  25. package/dist/cli/utils/file-writer.js +89 -0
  26. package/dist/cli/utils/file-writer.js.map +1 -0
  27. package/dist/cli.d.ts +3 -0
  28. package/dist/cli.d.ts.map +1 -0
  29. package/dist/cli.js +37 -0
  30. package/dist/cli.js.map +1 -0
  31. package/dist/client.d.ts +622 -0
  32. package/dist/client.js +688 -0
  33. package/dist/core/endpoint-converter.d.ts +26 -0
  34. package/dist/core/endpoint-converter.d.ts.map +1 -0
  35. package/dist/core/endpoint-converter.js +161 -0
  36. package/dist/core/endpoint-converter.js.map +1 -0
  37. package/dist/core/generator/filters-generator.d.ts +22 -0
  38. package/dist/core/generator/filters-generator.d.ts.map +1 -0
  39. package/dist/core/generator/filters-generator.js +236 -0
  40. package/dist/core/generator/filters-generator.js.map +1 -0
  41. package/dist/core/index.d.ts +8 -0
  42. package/dist/core/index.d.ts.map +1 -0
  43. package/dist/core/index.js +11 -0
  44. package/dist/core/index.js.map +1 -0
  45. package/dist/core/schema-transformer.d.ts +19 -0
  46. package/dist/core/schema-transformer.d.ts.map +1 -0
  47. package/dist/core/schema-transformer.js +306 -0
  48. package/dist/core/schema-transformer.js.map +1 -0
  49. package/dist/generator/auth-api-generator.d.ts +14 -0
  50. package/dist/generator/auth-api-generator.d.ts.map +1 -0
  51. package/dist/generator/auth-api-generator.js +518 -0
  52. package/dist/generator/auth-api-generator.js.map +1 -0
  53. package/dist/generator/blocks-types-template.d.ts +134 -0
  54. package/dist/generator/blocks-types-template.d.ts.map +1 -0
  55. package/dist/generator/blocks-types-template.js +4 -0
  56. package/dist/generator/blocks-types-template.js.map +1 -0
  57. package/dist/generator/client-generator.d.ts +19 -0
  58. package/dist/generator/client-generator.d.ts.map +1 -0
  59. package/dist/generator/client-generator.js +707 -0
  60. package/dist/generator/client-generator.js.map +1 -0
  61. package/dist/generator/custom-api-generator.d.ts +26 -0
  62. package/dist/generator/custom-api-generator.d.ts.map +1 -0
  63. package/dist/generator/custom-api-generator.js +145 -0
  64. package/dist/generator/custom-api-generator.js.map +1 -0
  65. package/dist/generator/index-generator.d.ts +4 -0
  66. package/dist/generator/index-generator.d.ts.map +1 -0
  67. package/dist/generator/index-generator.js +11 -0
  68. package/dist/generator/index-generator.js.map +1 -0
  69. package/dist/generator/index.d.ts +14 -0
  70. package/dist/generator/index.d.ts.map +1 -0
  71. package/dist/generator/index.js +94 -0
  72. package/dist/generator/index.js.map +1 -0
  73. package/dist/generator/types-generator.d.ts +35 -0
  74. package/dist/generator/types-generator.d.ts.map +1 -0
  75. package/dist/generator/types-generator.js +641 -0
  76. package/dist/generator/types-generator.js.map +1 -0
  77. package/dist/index.d.ts +2 -0
  78. package/dist/index.js +4 -0
  79. package/dist/next/index.d.ts +16 -0
  80. package/dist/next/index.d.ts.map +1 -0
  81. package/dist/next/index.js +224 -0
  82. package/dist/next/index.js.map +1 -0
  83. package/dist/parser/custom-types-parser.d.ts +39 -0
  84. package/dist/parser/custom-types-parser.d.ts.map +1 -0
  85. package/dist/parser/custom-types-parser.js +206 -0
  86. package/dist/parser/custom-types-parser.js.map +1 -0
  87. package/dist/parser/index.d.ts +23 -0
  88. package/dist/parser/index.d.ts.map +1 -0
  89. package/dist/parser/index.js +457 -0
  90. package/dist/parser/index.js.map +1 -0
  91. package/dist/parser/routes-parser.d.ts +21 -0
  92. package/dist/parser/routes-parser.d.ts.map +1 -0
  93. package/dist/parser/routes-parser.js +184 -0
  94. package/dist/parser/routes-parser.js.map +1 -0
  95. package/dist/plugin/admin/src/index.d.ts +16 -0
  96. package/dist/plugin/admin/src/index.d.ts.map +1 -0
  97. package/dist/plugin/admin/src/index.js +30 -0
  98. package/dist/plugin/admin/src/index.js.map +1 -0
  99. package/dist/plugin/admin/src/pages/HomePage.d.ts +2 -0
  100. package/dist/plugin/admin/src/pages/HomePage.d.ts.map +1 -0
  101. package/dist/plugin/admin/src/pages/HomePage.js +273 -0
  102. package/dist/plugin/admin/src/pages/HomePage.js.map +1 -0
  103. package/dist/plugin/admin/src/pluginId.d.ts +2 -0
  104. package/dist/plugin/admin/src/pluginId.d.ts.map +1 -0
  105. package/dist/plugin/admin/src/pluginId.js +2 -0
  106. package/dist/plugin/admin/src/pluginId.js.map +1 -0
  107. package/dist/plugin/index.d.ts +22 -0
  108. package/dist/plugin/index.d.ts.map +1 -0
  109. package/dist/plugin/index.js +22 -0
  110. package/dist/plugin/index.js.map +1 -0
  111. package/dist/plugin/server/src/config/index.d.ts +31 -0
  112. package/dist/plugin/server/src/config/index.d.ts.map +1 -0
  113. package/dist/plugin/server/src/config/index.js +35 -0
  114. package/dist/plugin/server/src/config/index.js.map +1 -0
  115. package/dist/plugin/server/src/controllers/schema.d.ts +41 -0
  116. package/dist/plugin/server/src/controllers/schema.d.ts.map +1 -0
  117. package/dist/plugin/server/src/controllers/schema.js +51 -0
  118. package/dist/plugin/server/src/controllers/schema.js.map +1 -0
  119. package/dist/plugin/server/src/index.d.ts +114 -0
  120. package/dist/plugin/server/src/index.d.ts.map +1 -0
  121. package/dist/plugin/server/src/index.js +76 -0
  122. package/dist/plugin/server/src/index.js.map +1 -0
  123. package/dist/plugin/server/src/routes/index.d.ts +14 -0
  124. package/dist/plugin/server/src/routes/index.d.ts.map +1 -0
  125. package/dist/plugin/server/src/routes/index.js +23 -0
  126. package/dist/plugin/server/src/routes/index.js.map +1 -0
  127. package/dist/plugin/server/src/services/endpoints.d.ts +36 -0
  128. package/dist/plugin/server/src/services/endpoints.d.ts.map +1 -0
  129. package/dist/plugin/server/src/services/endpoints.js +523 -0
  130. package/dist/plugin/server/src/services/endpoints.js.map +1 -0
  131. package/dist/plugin/server/src/services/schema.d.ts +25 -0
  132. package/dist/plugin/server/src/services/schema.d.ts.map +1 -0
  133. package/dist/plugin/server/src/services/schema.js +164 -0
  134. package/dist/plugin/server/src/services/schema.js.map +1 -0
  135. package/dist/schema-meta.ts +7 -0
  136. package/dist/schema-types.d.ts +104 -0
  137. package/dist/schema-types.d.ts.map +1 -0
  138. package/dist/schema-types.js +3 -0
  139. package/dist/schema-types.js.map +1 -0
  140. package/dist/shared/constants.d.ts +99 -0
  141. package/dist/shared/constants.d.ts.map +1 -0
  142. package/dist/shared/constants.js +89 -0
  143. package/dist/shared/constants.js.map +1 -0
  144. package/dist/shared/endpoint-types.d.ts +42 -0
  145. package/dist/shared/endpoint-types.d.ts.map +1 -0
  146. package/dist/shared/endpoint-types.js +6 -0
  147. package/dist/shared/endpoint-types.js.map +1 -0
  148. package/dist/shared/index.d.ts +12 -0
  149. package/dist/shared/index.d.ts.map +1 -0
  150. package/dist/shared/index.js +13 -0
  151. package/dist/shared/index.js.map +1 -0
  152. package/dist/shared/naming-utils.d.ts +55 -0
  153. package/dist/shared/naming-utils.d.ts.map +1 -0
  154. package/dist/shared/naming-utils.js +106 -0
  155. package/dist/shared/naming-utils.js.map +1 -0
  156. package/dist/shared/schema-hash.d.ts +39 -0
  157. package/dist/shared/schema-hash.d.ts.map +1 -0
  158. package/dist/shared/schema-hash.js +67 -0
  159. package/dist/shared/schema-hash.js.map +1 -0
  160. package/dist/shared/strapi-schema-types.d.ts +77 -0
  161. package/dist/shared/strapi-schema-types.d.ts.map +1 -0
  162. package/dist/shared/strapi-schema-types.js +10 -0
  163. package/dist/shared/strapi-schema-types.js.map +1 -0
  164. package/dist/shared/string-utils.d.ts +68 -0
  165. package/dist/shared/string-utils.d.ts.map +1 -0
  166. package/dist/shared/string-utils.js +124 -0
  167. package/dist/shared/string-utils.js.map +1 -0
  168. package/dist/transformer/index.d.ts +17 -0
  169. package/dist/transformer/index.d.ts.map +1 -0
  170. package/dist/transformer/index.js +83 -0
  171. package/dist/transformer/index.js.map +1 -0
  172. package/dist/types.d.ts +3430 -0
  173. package/dist/types.js +3 -0
  174. package/package.json +152 -0
  175. package/strapi-admin.js +2 -0
  176. package/strapi-server.js +2 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types-generator.js","sourceRoot":"","sources":["../../src/generator/types-generator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EACH,0BAA0B,EAC1B,qBAAqB,EACrB,wBAAwB,GAC3B,MAAM,wCAAwC,CAAA;AAE/C,MAAM,OAAO,cAAc;IACf,WAAW,CAAiB;IAC5B,MAAM,CAAe;IAE7B;QACI,IAAI,CAAC,WAAW,GAAG,IAAI,eAAe,EAAE,CAAA;IAC5C,CAAC;IAED,QAAQ,CAAC,MAAoB;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,MAAM,KAAK,GAAa,EAAE,CAAA;QAE1B,qBAAqB;QACrB,KAAK,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAA;QACnE,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;QACrC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEd,sBAAsB;QACtB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAA;QACpC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEd,4CAA4C;QAC5C,KAAK,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAA;QACpE,KAAK,CAAC,IAAI,CACN,gEAAgE,CACnE,CAAA;QACD,KAAK,CAAC,IAAI,CACN,+EAA+E,CAClF,CAAA;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACd,KAAK,CAAC,IAAI,CACN,gGAAgG,CACnG,CAAA;QACD,KAAK,CAAC,IAAI,CACN,oPAAoP,CACvP,CAAA;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEd,2BAA2B;QAC3B,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACxC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAA;YAC7C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAClB,CAAC;QAED,iCAAiC;QACjC,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACxC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAA;YAClD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAClB,CAAC;QAED,mCAAmC;QACnC,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAA;YACjD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAClB,CAAC;QAED,oDAAoD;QACpD,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAA;YAC/C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAClB,CAAC;QAED,sDAAsD;QACtD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAA;QAC/C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEd,iCAAiC;QACjC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC,CAAA;QACpD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEd,gCAAgC;QAChC,KAAK,CAAC,IAAI,CAAC,0BAA0B,EAAE,CAAC,CAAA;QACxC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEd,8BAA8B;QAC9B,KAAK,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAA;QACtC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEd,mCAAmC;QACnC,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAA;YAC9C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAClB,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAEO,iBAAiB;QACrB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6Ib,CAAA;IACE,CAAC;IAEO,iBAAiB,CAAC,SAAoB;QAC1C,MAAM,KAAK,GAAa,EAAE,CAAA;QAE1B,KAAK,CAAC,IAAI,CAAC,oBAAoB,SAAS,CAAC,SAAS,IAAI,CAAC,CAAA;QAEvD,mDAAmD;QACnD,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAE1B,wBAAwB;QACxB,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CACxC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,QAAQ,CAChB,CAAA;YACD,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC,CAAA;QAC3C,CAAC;QAED,mBAAmB;QACnB,KAAK,MAAM,UAAU,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAA;YACnE,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;YACnD,KAAK,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,IAAI,KAAK,SAAS,GAAG,MAAM,EAAE,CAAC,CAAA;QAC7D,CAAC;QAED,kCAAkC;QAClC,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;YACpC,MAAM,OAAO,GACT,GAAG,CAAC,YAAY,KAAK,WAAW;gBAChC,GAAG,CAAC,YAAY,KAAK,YAAY,CAAA;YACrC,MAAM,OAAO,GAAG,OAAO;gBACnB,CAAC,CAAC,sCAAsC;gBACxC,CAAC,CAAC,2CAA2C,CAAA;YACjD,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC,CAAA;QAC3C,CAAC;QAED,iBAAiB;QACjB,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU;gBACjC,CAAC,CAAC,GAAG,SAAS,CAAC,aAAa,IAAI;gBAChC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAA;YAC7B,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;YAClD,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,IAAI,KAAK,QAAQ,GAAG,MAAM,EAAE,CAAC,CAAA;QAC3D,CAAC;QAED,oBAAoB;QACpB,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;YAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;YAChD,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,KAAK,MAAM,GAAG,MAAM,EAAE,CAAC,CAAA;QACvD,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAEO,sBAAsB,CAAC,SAAoB;QAC/C,MAAM,KAAK,GAAa,EAAE,CAAA;QAE1B,KAAK,CAAC,IAAI,CAAC,uCAAuC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAA;QACxE,KAAK,CAAC,IAAI,CAAC,oBAAoB,SAAS,CAAC,SAAS,SAAS,CAAC,CAAA;QAE5D,gFAAgF;QAChF,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QAE3B,uCAAuC;QACvC,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA,CAAC,kBAAkB;YACjF,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,MAAM,MAAM,EAAE,CAAC,CAAA;QAC5C,CAAC;QAED,qCAAqC;QACrC,KAAK,MAAM,UAAU,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAA;YAC7D,KAAK,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,IAAI,MAAM,SAAS,SAAS,CAAC,CAAA;QAC5D,CAAC;QAED,kCAAkC;QAClC,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;YACpC,MAAM,OAAO,GACT,GAAG,CAAC,YAAY,KAAK,WAAW;gBAChC,GAAG,CAAC,YAAY,KAAK,YAAY,CAAA;YACrC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAA;YAC/C,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,MAAM,OAAO,SAAS,CAAC,CAAA;QACnD,CAAC;QAED,wBAAwB;QACxB,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU;gBACjC,CAAC,CAAC,GAAG,SAAS,CAAC,aAAa,SAAS;gBACrC,CAAC,CAAC,GAAG,SAAS,CAAC,aAAa,OAAO,CAAA;YACvC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,IAAI,MAAM,QAAQ,SAAS,CAAC,CAAA;QAC1D,CAAC;QAED,oBAAoB;QACpB,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;YAClF,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,MAAM,MAAM,SAAS,CAAC,CAAA;QACtD,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAEO,mBAAmB,CAAC,WAAwB;QAChD,MAAM,KAAK,GAAa,EAAE,CAAA;QAE1B,KAAK,CAAC,IAAI,CAAC,oBAAoB,WAAW,CAAC,SAAS,IAAI,CAAC,CAAA;QAEzD,6DAA6D;QAC7D,KAAK,CAAC,IAAI,CAAC,4BAA4B,WAAW,CAAC,SAAS,GAAG,CAAC,CAAA;QAEhE,kBAAkB;QAClB,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAC1B,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;QAClC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;QACjC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;QAEjC,wBAAwB;QACxB,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CACxC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,QAAQ,CAChB,CAAA;YACD,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC,CAAA;QAC3C,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAEO,iBAAiB,CAAC,WAAwB;QAC9C,MAAM,KAAK,GAAa,EAAE,CAAA;QAE1B,KAAK,CAAC,IAAI,CACN,uCAAuC,WAAW,CAAC,SAAS,EAAE,CACjE,CAAA;QACD,KAAK,CAAC,IAAI,CAAC,oBAAoB,WAAW,CAAC,SAAS,SAAS,CAAC,CAAA;QAE9D,2DAA2D;QAC3D,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA,CAAC,kBAAkB;YACjF,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,MAAM,MAAM,EAAE,CAAC,CAAA;QAC5C,CAAC;QAED,qCAAqC;QACrC,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;YACzC,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAA;YAC7D,KAAK,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,IAAI,MAAM,SAAS,SAAS,CAAC,CAAA;QAC5D,CAAC;QAED,kCAAkC;QAClC,KAAK,MAAM,GAAG,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;YACtC,MAAM,OAAO,GACT,GAAG,CAAC,YAAY,KAAK,WAAW;gBAChC,GAAG,CAAC,YAAY,KAAK,YAAY,CAAA;YACrC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAA;YAC/C,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,MAAM,OAAO,SAAS,CAAC,CAAA;QACnD,CAAC;QAED,6EAA6E;QAC7E,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU;gBACjC,CAAC,CAAC,GAAG,SAAS,CAAC,aAAa,SAAS;gBACrC,CAAC,CAAC,GAAG,SAAS,CAAC,aAAa,OAAO,CAAA;YACvC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,IAAI,MAAM,QAAQ,SAAS,CAAC,CAAA;QAC1D,CAAC;QAED,oBAAoB;QACpB,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;YAClF,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,MAAM,MAAM,SAAS,CAAC,CAAA;QACtD,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAEO,sBAAsB,CAAC,MAAoB;QAC/C,MAAM,KAAK,GAAa,EAAE,CAAA;QAE1B,KAAK,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAA;QAC7D,KAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAA;QAC3D,KAAK,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAA;QAC7D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEd,kDAAkD;QAClD,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,4BAA4B,CAAC,SAAS,CAAC,CAAA;YAC3D,IAAI,MAAM,EAAE,CAAC;gBACT,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAClB,CAAC;QACL,CAAC;QAED,qDAAqD;QACrD,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,4BAA4B,CAAC,WAAW,CAAC,CAAA;YAC7D,IAAI,MAAM,EAAE,CAAC;gBACT,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAClB,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAEO,4BAA4B,CAChC,IAA6B;QAE7B,MAAM,iBAAiB,GAAa,EAAE,CAAA;QAEtC,wCAAwC;QACxC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,GAAG,CAAC,UAAU,CAAA;YACxB,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAA;YACtD,MAAM,OAAO,GAAG,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAA;YACjD,IAAI,iBAAiB,EAAE,CAAC;gBACpB,OAAO,CAAC,IAAI,CACR,cAAc,CAAC,0BAA0B,CAAC,iCAAiC,CAC9E,CAAA;YACL,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;YACrC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;YAC5D,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAC9B,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAC9B,iBAAiB,CAAC,IAAI,CAClB,KAAK,GAAG,CAAC,IAAI,eAAe,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CACrD,CAAA;QACL,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7B,iBAAiB,CAAC,IAAI,CAClB,KAAK,KAAK,CAAC,IAAI,qDAAqD,CACvE,CAAA;QACL,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAA;YAC5B,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAA;YACtD,MAAM,OAAO,GAAG,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAA;YACpD,IAAI,iBAAiB,EAAE,CAAC;gBACpB,OAAO,CAAC,IAAI,CACR,cAAc,CAAC,0BAA0B,CAAC,iCAAiC,CAC9E,CAAA;YACL,CAAC;YACD,iBAAiB,CAAC,IAAI,CAClB,KAAK,IAAI,CAAC,IAAI,eAAe,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CACtD,CAAA;QACL,CAAC;QAED,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACjC,uDAAuD;YACvD,MAAM,SAAS,GAAa,EAAE,CAAA;YAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5C,MAAM,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;gBAC5B,MAAM,SAAS,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAA;gBACtC,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;gBACxD,MAAM,OAAO,GAAG,CAAC,mBAAmB,SAAS,cAAc,CAAC,CAAA;gBAC5D,IAAI,WAAW,EAAE,CAAC;oBACd,OAAO,CAAC,IAAI,CACR,cAAc,SAAS,0BAA0B,SAAS,iCAAiC,CAC9F,CAAA;gBACL,CAAC;gBACD,SAAS,CAAC,IAAI,CAAC,IAAI,GAAG,gBAAgB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjE,CAAC;YACD,iBAAiB,CAAC,IAAI,CAClB,KAAK,EAAE,CAAC,IAAI,sBAAsB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAC/D,CAAA;QACL,CAAC;QAED,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QAE/C,MAAM,KAAK,GAAa,EAAE,CAAA;QAC1B,KAAK,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,SAAS,mBAAmB,CAAC,CAAA;QAC5D,KAAK,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAA;QAChC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAEO,2BAA2B,CAAC,MAAoB;QACpD,MAAM,KAAK,GAAa,EAAE,CAAA;QAE1B,KAAK,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAA;QAC/D,KAAK,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAA;QACpE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChB,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;QAC/B,KAAK,CAAC,IAAI,CACN,6EAA6E,CAChF,CAAA;QACD,KAAK,CAAC,IAAI,CACN,kGAAkG,CACrG,CAAA;QACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChB,KAAK,CAAC,IAAI,CACN,oFAAoF,CACvF,CAAA;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEd,sEAAsE;QACtE,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACxC,MAAM,oBAAoB,GACtB,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;gBAC9B,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBAC1B,SAAS,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;gBAC/B,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAA;YAErC,IAAI,oBAAoB,EAAE,CAAC;gBACvB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,+BAA+B,CAAC,SAAS,CAAC,CAAC,CAAA;gBAC3D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAClB,CAAC;QACL,CAAC;QAED,yEAAyE;QACzE,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YAC5C,MAAM,oBAAoB,GACtB,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;gBAChC,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBAC5B,WAAW,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;gBACjC,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAA;YAEvC,IAAI,oBAAoB,EAAE,CAAC;gBACvB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC,CAAA;gBACpD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAClB,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAEO,sBAAsB,CAAC,WAAwB;QACnD,MAAM,KAAK,GAAa,EAAE,CAAA;QAE1B,KAAK,CAAC,IAAI,CACN,uBAAuB,WAAW,CAAC,SAAS,wBAAwB,CACvE,CAAA;QACD,KAAK,CAAC,IAAI,CACN,eAAe,WAAW,CAAC,SAAS,iDAAiD,CACxF,CAAA;QACD,KAAK,CAAC,IAAI,CAAC,KAAK,WAAW,CAAC,SAAS,IAAI,CAAC,CAAA;QAE1C,MAAM,oBAAoB,GACtB,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAChC,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAC5B,WAAW,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;YACjC,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAA;QAEvC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACtB,CAAC;aAAM,CAAC;YACJ,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAA;YAElD,wEAAwE;YACxE,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAA;YAC1C,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YACvB,IAAI,CAAC,0BAA0B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;YACnD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAEvB,qEAAqE;YACrE,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;YACtD,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YACzB,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;YACrD,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YAEzB,8DAA8D;YAC9D,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YACzB,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;YACjD,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YAEzB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC3B,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAED;;OAEG;IACK,0BAA0B,CAC9B,KAAe,EACf,IAA6B;QAE7B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/B,MAAM,UAAU,GACZ,GAAG,CAAC,YAAY,KAAK,UAAU;gBAC/B,GAAG,CAAC,YAAY,KAAK,WAAW,CAAA;YACpC,MAAM,OAAO,GACT,GAAG,CAAC,YAAY,KAAK,WAAW;gBAChC,GAAG,CAAC,YAAY,KAAK,YAAY,CAAA;YACrC,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;YAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;YACvC,KAAK,CAAC,IAAI,CACN,aAAa,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,UAAU,GAAG,WAAW,GAAG,UAAU,EAAE,CACzE,CAAA;QACL,CAAC;QAED,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAA;YACnE,KAAK,CAAC,IAAI,CAAC,aAAa,UAAU,CAAC,IAAI,MAAM,SAAS,EAAE,CAAC,CAAA;QAC7D,CAAC;QAED,KAAK,MAAM,cAAc,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC3C,MAAM,WAAW,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;YACzD,KAAK,CAAC,IAAI,CACN,aAAa,cAAc,CAAC,IAAI,MAAM,cAAc,CAAC,aAAa,GAAG,WAAW,EAAE,CACrF,CAAA;QACL,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACpD,KAAK,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,IAAI,OAAO,SAAS,KAAK,CAAC,CAAA;QAC9D,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,4BAA4B,CAChC,KAAe,EACf,IAA6B;QAE7B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/B,MAAM,UAAU,GACZ,GAAG,CAAC,YAAY,KAAK,UAAU;gBAC/B,GAAG,CAAC,YAAY,KAAK,WAAW,CAAA;YACpC,MAAM,OAAO,GACT,GAAG,CAAC,YAAY,KAAK,WAAW;gBAChC,GAAG,CAAC,YAAY,KAAK,YAAY,CAAA;YACrC,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;YAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;YACvC,KAAK,CAAC,IAAI,CACN,eAAe,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,2BAA2B,GAAG,CAAC,UAAU,GAAG,WAAW,GAAG,UAAU,UAAU,CACvH,CAAA;QACL,CAAC;QAED,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAA;YACnE,KAAK,CAAC,IAAI,CACN,eAAe,UAAU,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,2BAA2B,SAAS,UAAU,CACrG,CAAA;QACL,CAAC;QAED,KAAK,MAAM,cAAc,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC3C,MAAM,WAAW,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;YACzD,KAAK,CAAC,IAAI,CACN,eAAe,cAAc,CAAC,IAAI,OAAO,cAAc,CAAC,IAAI,2BAA2B,cAAc,CAAC,aAAa,GAAG,WAAW,UAAU,CAC9I,CAAA;QACL,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACpD,KAAK,CAAC,IAAI,CACN,eAAe,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,IAAI,4BAA4B,SAAS,aAAa,CACnG,CAAA;QACL,CAAC;IACL,CAAC;IAED;;OAEG;IACK,wBAAwB,CAC5B,KAAe,EACf,IAA6B;QAE7B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/B,MAAM,UAAU,GACZ,GAAG,CAAC,YAAY,KAAK,UAAU;gBAC/B,GAAG,CAAC,YAAY,KAAK,WAAW,CAAA;YACpC,MAAM,OAAO,GACT,GAAG,CAAC,YAAY,KAAK,WAAW;gBAChC,GAAG,CAAC,YAAY,KAAK,YAAY,CAAA;YACrC,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAA;YAC/B,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;YAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;YACvC,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAA;YAEvD,KAAK,CAAC,IAAI,CACN,aAAa,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,qBAAqB,CAC5D,CAAA;YACD,IAAI,WAAW,EAAE,CAAC;gBACd,KAAK,CAAC,IAAI,CACN,mCAAmC,GAAG,CAAC,IAAI,8CAA8C,QAAQ,yCAAyC,QAAQ,KAAK,QAAQ,UAAU,GAAG,CAAC,IAAI,MAAM,WAAW,GAAG,UAAU,EAAE,CACpN,CAAA;YACL,CAAC;iBAAM,CAAC;gBACJ,KAAK,CAAC,IAAI,CACN,8BAA8B,QAAQ,KAAK,QAAQ,UAAU,GAAG,CAAC,IAAI,MAAM,WAAW,GAAG,UAAU,EAAE,CACxG,CAAA;YACL,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;QACrC,CAAC;QAED,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAClC,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;YACnD,KAAK,CAAC,IAAI,CACN,aAAa,UAAU,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,iEAAiE,UAAU,CAAC,IAAI,MAAM,WAAW,UAAU,CAChK,CAAA;QACL,CAAC;QAED,KAAK,MAAM,cAAc,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,cAAc,CAAC,aAAa,CAAA;YAC7C,MAAM,WAAW,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;YACzD,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAA;YAEvD,KAAK,CAAC,IAAI,CACN,aAAa,cAAc,CAAC,IAAI,OAAO,cAAc,CAAC,IAAI,qBAAqB,CAClF,CAAA;YACD,IAAI,WAAW,EAAE,CAAC;gBACd,KAAK,CAAC,IAAI,CACN,mCAAmC,cAAc,CAAC,IAAI,8CAA8C,QAAQ,yCAAyC,QAAQ,KAAK,QAAQ,UAAU,cAAc,CAAC,IAAI,MAAM,WAAW,EAAE,CAC7N,CAAA;YACL,CAAC;iBAAM,CAAC;gBACJ,KAAK,CAAC,IAAI,CACN,8BAA8B,QAAQ,KAAK,QAAQ,UAAU,cAAc,CAAC,IAAI,MAAM,WAAW,EAAE,CACtG,CAAA;YACL,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;QACrC,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACpD,MAAM,MAAM,GAAG,IAAI,SAAS,KAAK,CAAA;YACjC,KAAK,CAAC,IAAI,CACN,aAAa,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,IAAI,yBAAyB,MAAM,UAAU,CACxF,CAAA;QACL,CAAC;IACL,CAAC;IAEO,+BAA+B,CAAC,SAAoB;QACxD,MAAM,KAAK,GAAa,EAAE,CAAA;QAE1B,KAAK,CAAC,IAAI,CACN,uBAAuB,SAAS,CAAC,SAAS,wBAAwB,CACrE,CAAA;QACD,KAAK,CAAC,IAAI,CACN,eAAe,SAAS,CAAC,SAAS,iDAAiD,CACtF,CAAA;QACD,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,SAAS,IAAI,CAAC,CAAA;QAExC,MAAM,oBAAoB,GACtB,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAC9B,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAC1B,SAAS,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;YAC/B,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAA;QAErC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACtB,CAAC;aAAM,CAAC;YACJ,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAA;YAElD,wEAAwE;YACxE,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAA;YAC1C,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YACvB,IAAI,CAAC,0BAA0B,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;YACjD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAEvB,qEAAqE;YACrE,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;YACtD,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YACzB,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;YACnD,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YAEzB,8DAA8D;YAC9D,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YACzB,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;YAC/C,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YAEzB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC3B,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,QAAgB;QACzC,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QAE9B,yBAAyB;QACzB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAC7C,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,KAAK,QAAQ,CAClC,CAAA;QACD,IAAI,WAAW,EAAE,CAAC;YACd,OAAO,CACH,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;gBAChC,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBAC5B,WAAW,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;gBACjC,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CACtC,CAAA;QACL,CAAC;QAED,sBAAsB;QACtB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CACzC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,QAAQ,CACtC,CAAA;QACD,IAAI,SAAS,EAAE,CAAC;YACZ,OAAO,CACH,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;gBAC9B,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBAC1B,SAAS,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;gBAC/B,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CACpC,CAAA;QACL,CAAC;QAED,OAAO,KAAK,CAAA;IAChB,CAAC;CACJ"}
@@ -0,0 +1,2 @@
1
+ export * from './types.js';
2
+ export * from './client.js';
package/dist/index.js ADDED
@@ -0,0 +1,4 @@
1
+ // Auto-generated index file
2
+ // Do not edit manually
3
+ export * from './types.js';
4
+ export * from './client.js';
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Next.js plugin for automatic Strapi type generation.
3
+ *
4
+ * Usage in next.config.ts:
5
+ *
6
+ * import { withStrapiTypes } from 'strapi-typed-client/next'
7
+ * export default withStrapiTypes()(nextConfig)
8
+ */
9
+ export interface StrapiTypesConfig {
10
+ strapiUrl?: string;
11
+ token?: string;
12
+ watchInterval?: number;
13
+ silent?: boolean;
14
+ }
15
+ export declare function withStrapiTypes(config?: StrapiTypesConfig): <T>(nextConfig: T) => T;
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,MAAM,WAAW,iBAAiB;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,OAAO,CAAA;CACnB;AAkOD,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,iBAAiB,IAC9C,CAAC,EAAE,YAAY,CAAC,KAAG,CAAC,CAgB/B"}
@@ -0,0 +1,224 @@
1
+ /**
2
+ * Next.js plugin for automatic Strapi type generation.
3
+ *
4
+ * Usage in next.config.ts:
5
+ *
6
+ * import { withStrapiTypes } from 'strapi-typed-client/next'
7
+ * export default withStrapiTypes()(nextConfig)
8
+ */
9
+ import { execSync } from 'child_process';
10
+ import * as fs from 'fs';
11
+ import { createRequire } from 'module';
12
+ import * as path from 'path';
13
+ const _require = createRequire(import.meta.url);
14
+ function getPackageDir() {
15
+ const pkgJsonPath = _require.resolve('strapi-typed-client/package.json');
16
+ return path.dirname(pkgJsonPath);
17
+ }
18
+ function getOutputDir() {
19
+ return path.join(getPackageDir(), 'dist');
20
+ }
21
+ function getCacheDir() {
22
+ const packageDir = getPackageDir();
23
+ const nodeModules = path.dirname(path.dirname(packageDir));
24
+ return path.join(nodeModules, '.cache', 'strapi-types');
25
+ }
26
+ function readCachedHash() {
27
+ try {
28
+ const hashFile = path.join(getCacheDir(), 'schema-hash');
29
+ return fs.readFileSync(hashFile, 'utf-8').trim();
30
+ }
31
+ catch {
32
+ return null;
33
+ }
34
+ }
35
+ function writeCachedHash(hash) {
36
+ try {
37
+ const cacheDir = getCacheDir();
38
+ fs.mkdirSync(cacheDir, { recursive: true });
39
+ fs.writeFileSync(path.join(cacheDir, 'schema-hash'), hash, 'utf-8');
40
+ }
41
+ catch {
42
+ // Non-critical
43
+ }
44
+ }
45
+ // ANSI colors matching Next.js output
46
+ const green = (s) => `\x1b[32m${s}\x1b[0m`;
47
+ const red = (s) => `\x1b[31m${s}\x1b[0m`;
48
+ const dim = (s) => `\x1b[2m${s}\x1b[0m`;
49
+ function info(silent, msg) {
50
+ if (!silent)
51
+ console.log(`${green('○')} ${msg}`);
52
+ }
53
+ function ok(silent, msg) {
54
+ if (!silent)
55
+ console.log(`${green('✓')} ${msg}`);
56
+ }
57
+ function fail(msg) {
58
+ console.error(`${red('⨯')} ${msg}`);
59
+ }
60
+ function loading(silent, msg) {
61
+ if (silent)
62
+ return () => { };
63
+ const frames = ['· ', '·· ', '···', ' ··', ' ·', ' '];
64
+ let i = 0;
65
+ process.stdout.write(`${green('○')} ${msg} ${frames[0]}`);
66
+ const id = setInterval(() => {
67
+ i = (i + 1) % frames.length;
68
+ process.stdout.write(`\r${green('○')} ${msg} ${frames[i]}`);
69
+ }, 150);
70
+ return () => {
71
+ clearInterval(id);
72
+ process.stdout.write(`\r\x1b[K`);
73
+ };
74
+ }
75
+ async function startDevWatch(config) {
76
+ const outputDir = getOutputDir();
77
+ const interval = config.watchInterval ?? 5000;
78
+ const silent = config.silent ?? false;
79
+ const url = config.strapiUrl || process.env.STRAPI_URL || 'http://localhost:1337';
80
+ const token = config.token || process.env.STRAPI_TOKEN;
81
+ const { createApiClient } = await import('../cli/utils/api-client.js');
82
+ const { generate } = await import('../cli/commands/generate.js');
83
+ const client = createApiClient({ url, token });
84
+ let lastHash = readCachedHash();
85
+ info(silent, `Watching for schema changes ${dim(`(every ${interval / 1000}s)`)}`);
86
+ const poll = async () => {
87
+ try {
88
+ const { hash: remoteHash } = await client.getSchemaHash();
89
+ if (lastHash !== remoteHash) {
90
+ const stop = loading(silent, 'Regenerating types');
91
+ const start = Date.now();
92
+ const result = await generate({
93
+ url,
94
+ token,
95
+ output: outputDir,
96
+ silent: true,
97
+ force: true,
98
+ });
99
+ stop();
100
+ if (result.success) {
101
+ ok(silent, `Types regenerated in ${dim(`${Date.now() - start}ms`)}`);
102
+ lastHash = remoteHash;
103
+ writeCachedHash(remoteHash);
104
+ }
105
+ else {
106
+ fail(`Failed to regenerate: ${result.error}`);
107
+ }
108
+ }
109
+ }
110
+ catch {
111
+ // Strapi not available yet
112
+ }
113
+ };
114
+ await poll();
115
+ const intervalId = setInterval(poll, interval);
116
+ // unref() prevents the timer from keeping detached/worker processes alive
117
+ intervalId.unref();
118
+ const cleanup = () => {
119
+ clearInterval(intervalId);
120
+ releaseWatchLock();
121
+ };
122
+ process.on('SIGINT', cleanup);
123
+ process.on('SIGTERM', cleanup);
124
+ process.on('exit', cleanup);
125
+ }
126
+ function runBuildGenerate(config) {
127
+ const silent = config.silent ?? false;
128
+ const url = config.strapiUrl || process.env.STRAPI_URL || 'http://localhost:1337';
129
+ const token = config.token || process.env.STRAPI_TOKEN;
130
+ const outputDir = getOutputDir();
131
+ const binPath = path.join(getPackageDir(), 'dist', 'cli', 'index.js');
132
+ const args = [
133
+ 'node',
134
+ JSON.stringify(binPath),
135
+ 'generate',
136
+ '--force',
137
+ '--silent',
138
+ '--output',
139
+ JSON.stringify(outputDir),
140
+ '--url',
141
+ JSON.stringify(url),
142
+ ];
143
+ if (token) {
144
+ args.push('--token', JSON.stringify(token));
145
+ }
146
+ try {
147
+ const stop = loading(silent, 'Generating types');
148
+ const start = Date.now();
149
+ execSync(args.join(' '), { stdio: 'ignore' });
150
+ stop();
151
+ ok(silent, `Types generated in ${dim(`${Date.now() - start}ms`)}`);
152
+ }
153
+ catch {
154
+ fail('Failed to generate types, using existing if available');
155
+ }
156
+ }
157
+ /**
158
+ * Acquire a PID-based file lock so only one process runs the polling loop.
159
+ * Next.js dev spawns multiple worker processes — each would start its own watcher.
160
+ */
161
+ function acquireWatchLock() {
162
+ const lockFile = path.join(getCacheDir(), 'watch.lock');
163
+ try {
164
+ // Check existing lock
165
+ const existing = fs.readFileSync(lockFile, 'utf-8').trim();
166
+ const pid = Number(existing);
167
+ if (pid && pid !== process.pid) {
168
+ try {
169
+ process.kill(pid, 0); // throws if process is dead
170
+ return false; // another process owns the lock
171
+ }
172
+ catch {
173
+ // stale lock, take over
174
+ }
175
+ }
176
+ }
177
+ catch {
178
+ // no lock file
179
+ }
180
+ try {
181
+ fs.mkdirSync(getCacheDir(), { recursive: true });
182
+ fs.writeFileSync(lockFile, String(process.pid), 'utf-8');
183
+ return true;
184
+ }
185
+ catch {
186
+ return false;
187
+ }
188
+ }
189
+ function releaseWatchLock() {
190
+ try {
191
+ const lockFile = path.join(getCacheDir(), 'watch.lock');
192
+ const existing = fs.readFileSync(lockFile, 'utf-8').trim();
193
+ if (Number(existing) === process.pid) {
194
+ fs.unlinkSync(lockFile);
195
+ }
196
+ }
197
+ catch {
198
+ // ignore
199
+ }
200
+ }
201
+ // Detached telemetry/worker processes should never start the watcher
202
+ function isMainNextProcess() {
203
+ return !process.argv.some(arg => arg.includes('detached-flush') ||
204
+ arg.includes('next-telemetry') ||
205
+ arg.includes('/worker'));
206
+ }
207
+ export function withStrapiTypes(config) {
208
+ return (nextConfig) => {
209
+ const cfg = config ?? {};
210
+ if (process.env.NODE_ENV === 'development' && isMainNextProcess()) {
211
+ // next dev — polling loop (only one process via PID lock)
212
+ if (acquireWatchLock()) {
213
+ startDevWatch(cfg);
214
+ }
215
+ }
216
+ else if (process.argv.includes('build')) {
217
+ // next build — one-time sync generation
218
+ runBuildGenerate(cfg);
219
+ }
220
+ // next start — do nothing, types already generated during build
221
+ return nextConfig;
222
+ };
223
+ }
224
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Custom type definition for a specific endpoint
3
+ */
4
+ export interface CustomEndpointType {
5
+ handler: string;
6
+ inputType?: string;
7
+ outputType?: string;
8
+ }
9
+ /**
10
+ * Parsed custom types from API namespace files
11
+ */
12
+ export interface ParsedCustomTypes {
13
+ types: Map<string, CustomEndpointType>;
14
+ typeDefinitions: string[];
15
+ namespaceImports: string[];
16
+ }
17
+ export declare class CustomTypesParser {
18
+ /**
19
+ * Parse API namespace files from api/ directory
20
+ */
21
+ parse(inputDir: string): ParsedCustomTypes;
22
+ /**
23
+ * Parse a single API namespace file
24
+ */
25
+ private parseNamespaceFile;
26
+ /**
27
+ * Convert namespace name to controller name
28
+ * e.g., 'TeamInvitationAPI' -> 'team-invitation'
29
+ * e.g., 'AIStudioAPI' -> 'ai-studio'
30
+ */
31
+ private namespaceToController;
32
+ /**
33
+ * Generate handler variations for flexible matching
34
+ * e.g., controller='checkout', action='CreateCheckout' -> ['checkout.createCheckout', 'checkout.create']
35
+ * e.g., controller='webhook', action='StripeWebhook' -> ['webhook.stripeWebhook', 'webhook.stripe']
36
+ */
37
+ private generateHandlerVariations;
38
+ }
39
+ //# sourceMappingURL=custom-types-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-types-parser.d.ts","sourceRoot":"","sources":["../../src/parser/custom-types-parser.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;IACtC,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,gBAAgB,EAAE,MAAM,EAAE,CAAA;CAC7B;AAYD,qBAAa,iBAAiB;IAC1B;;OAEG;IACH,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB;IAoE1C;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA2H1B;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAgB7B;;;;OAIG;IACH,OAAO,CAAC,yBAAyB;CA+CpC"}
@@ -0,0 +1,206 @@
1
+ import * as ts from 'typescript';
2
+ import * as fs from 'fs';
3
+ import * as path from 'path';
4
+ import { toLowerFirst, toPascalCase } from '../shared/index.js';
5
+ export class CustomTypesParser {
6
+ /**
7
+ * Parse API namespace files from api/ directory
8
+ */
9
+ parse(inputDir) {
10
+ const result = {
11
+ types: new Map(),
12
+ typeDefinitions: [],
13
+ namespaceImports: [],
14
+ };
15
+ const apiDir = path.join(inputDir, 'api');
16
+ if (!fs.existsSync(apiDir)) {
17
+ console.log('⚠️ API types directory not found, using default types (any)');
18
+ return result;
19
+ }
20
+ console.log(' Found API types directory, parsing namespaces...');
21
+ // Parse all TypeScript files in api/ directory
22
+ const files = fs
23
+ .readdirSync(apiDir)
24
+ .filter(f => f.endsWith('.ts') && f !== 'index.ts');
25
+ const namespaces = [];
26
+ for (const file of files) {
27
+ const filePath = path.join(apiDir, file);
28
+ const parsedNamespaces = this.parseNamespaceFile(filePath);
29
+ namespaces.push(...parsedNamespaces);
30
+ }
31
+ // Convert namespaces to handler mappings
32
+ for (const ns of namespaces) {
33
+ // Add namespace to imports
34
+ result.namespaceImports.push(ns.name);
35
+ // Add namespace declaration to type definitions
36
+ result.typeDefinitions.push(ns.fullText);
37
+ // Create handler mappings for each action
38
+ for (const [action, types] of ns.types) {
39
+ // Try multiple handler variations
40
+ const handlers = this.generateHandlerVariations(ns.controller, action);
41
+ for (const handler of handlers) {
42
+ result.types.set(handler, {
43
+ handler,
44
+ inputType: types.request
45
+ ? `${ns.name}.${types.request}`
46
+ : undefined,
47
+ outputType: types.response
48
+ ? `${ns.name}.${types.response}`
49
+ : undefined,
50
+ });
51
+ }
52
+ }
53
+ }
54
+ console.log(` Loaded ${result.types.size} custom endpoint type definitions from ${namespaces.length} namespaces`);
55
+ return result;
56
+ }
57
+ /**
58
+ * Parse a single API namespace file
59
+ */
60
+ parseNamespaceFile(filePath) {
61
+ const sourceCode = fs.readFileSync(filePath, 'utf-8');
62
+ const sourceFile = ts.createSourceFile(filePath, sourceCode, ts.ScriptTarget.Latest, true);
63
+ const namespaces = [];
64
+ const visit = (node) => {
65
+ // Look for: export namespace SomethingAPI { ... }
66
+ if (ts.isModuleDeclaration(node) &&
67
+ node.name &&
68
+ ts.isIdentifier(node.name) &&
69
+ node.name.text.endsWith('API')) {
70
+ const namespaceName = node.name.text;
71
+ const controller = this.namespaceToController(namespaceName);
72
+ const fullText = node.getText(sourceFile);
73
+ const types = new Map();
74
+ // Parse interfaces inside the namespace
75
+ if (node.body && ts.isModuleBlock(node.body)) {
76
+ for (const statement of node.body.statements) {
77
+ if (ts.isInterfaceDeclaration(statement)) {
78
+ const interfaceName = statement.name.text;
79
+ // Determine action name and type based on suffix
80
+ // Supported patterns:
81
+ // - SomethingRequest / SomethingResponse
82
+ // - SomethingFormData (treated as Request, for multipart/form-data endpoints)
83
+ // - SomethingEvent (treated as Request)
84
+ // - SomethingInput / SomethingOutput
85
+ if (interfaceName.endsWith('Request')) {
86
+ const action = interfaceName.replace(/Request$/, '');
87
+ const existing = types.get(action) || {};
88
+ types.set(action, {
89
+ ...existing,
90
+ request: interfaceName,
91
+ });
92
+ }
93
+ else if (interfaceName.endsWith('Response')) {
94
+ const action = interfaceName.replace(/Response$/, '');
95
+ const existing = types.get(action) || {};
96
+ types.set(action, {
97
+ ...existing,
98
+ response: interfaceName,
99
+ });
100
+ }
101
+ else if (interfaceName.endsWith('FormData')) {
102
+ // Treat FormData as Request (for multipart/form-data endpoints)
103
+ const action = interfaceName.replace(/FormData$/, '');
104
+ const existing = types.get(action) || {};
105
+ types.set(action, {
106
+ ...existing,
107
+ request: interfaceName,
108
+ });
109
+ }
110
+ else if (interfaceName.endsWith('Event')) {
111
+ // Treat Event as Request (for webhooks)
112
+ const action = interfaceName.replace(/Event$/, '');
113
+ const existing = types.get(action) || {};
114
+ types.set(action, {
115
+ ...existing,
116
+ request: interfaceName,
117
+ });
118
+ }
119
+ else if (interfaceName.endsWith('Input')) {
120
+ const action = interfaceName.replace(/Input$/, '');
121
+ const existing = types.get(action) || {};
122
+ types.set(action, {
123
+ ...existing,
124
+ request: interfaceName,
125
+ });
126
+ }
127
+ else if (interfaceName.endsWith('Output')) {
128
+ const action = interfaceName.replace(/Output$/, '');
129
+ const existing = types.get(action) || {};
130
+ types.set(action, {
131
+ ...existing,
132
+ response: interfaceName,
133
+ });
134
+ }
135
+ }
136
+ }
137
+ }
138
+ namespaces.push({
139
+ name: namespaceName,
140
+ controller,
141
+ types,
142
+ fullText,
143
+ });
144
+ }
145
+ ts.forEachChild(node, visit);
146
+ };
147
+ visit(sourceFile);
148
+ return namespaces;
149
+ }
150
+ /**
151
+ * Convert namespace name to controller name
152
+ * e.g., 'TeamInvitationAPI' -> 'team-invitation'
153
+ * e.g., 'AIStudioAPI' -> 'ai-studio'
154
+ */
155
+ namespaceToController(namespaceName) {
156
+ // Remove 'API' suffix
157
+ const withoutSuffix = namespaceName.replace(/API$/, '');
158
+ // Convert PascalCase to kebab-case
159
+ // Special handling for consecutive uppercase letters (acronyms)
160
+ return (withoutSuffix
161
+ // First, handle sequences of uppercase letters followed by lowercase (e.g., "AIStudio" -> "AI-Studio")
162
+ .replace(/([A-Z]+)([A-Z][a-z])/g, '$1-$2')
163
+ // Then handle normal PascalCase transitions (e.g., "TeamInvitation" -> "Team-Invitation")
164
+ .replace(/([a-z\d])([A-Z])/g, '$1-$2')
165
+ .toLowerCase());
166
+ }
167
+ /**
168
+ * Generate handler variations for flexible matching
169
+ * e.g., controller='checkout', action='CreateCheckout' -> ['checkout.createCheckout', 'checkout.create']
170
+ * e.g., controller='webhook', action='StripeWebhook' -> ['webhook.stripeWebhook', 'webhook.stripe']
171
+ */
172
+ generateHandlerVariations(controller, action) {
173
+ const handlers = [];
174
+ const controllerPascal = toPascalCase(controller);
175
+ // 1. Direct mapping: action as-is (camelCase)
176
+ handlers.push(`${controller}.${toLowerFirst(action)}`);
177
+ // 2. Remove controller name from action if it's present
178
+ // e.g., 'CreateCheckout' with controller 'checkout' -> 'create'
179
+ if (action.includes(controllerPascal)) {
180
+ const actionWithoutController = action.replace(controllerPascal, '');
181
+ if (actionWithoutController) {
182
+ handlers.push(`${controller}.${toLowerFirst(actionWithoutController)}`);
183
+ }
184
+ }
185
+ // 3. Remove 'Webhook' suffix for webhook handlers
186
+ // e.g., 'StripeWebhook' -> 'stripe', 'YooKassaWebhook' -> 'yooKassa'
187
+ if (action.includes('Webhook')) {
188
+ const actionWithoutWebhook = action.replace('Webhook', '');
189
+ if (actionWithoutWebhook && actionWithoutWebhook !== action) {
190
+ handlers.push(`${controller}.${toLowerFirst(actionWithoutWebhook)}`);
191
+ }
192
+ }
193
+ // 4. Remove other common suffixes
194
+ const commonSuffixes = ['Subscription', 'Member', 'Invitation'];
195
+ for (const suffix of commonSuffixes) {
196
+ if (action.includes(suffix)) {
197
+ const actionWithoutSuffix = action.replace(suffix, '');
198
+ if (actionWithoutSuffix && actionWithoutSuffix !== action) {
199
+ handlers.push(`${controller}.${toLowerFirst(actionWithoutSuffix)}`);
200
+ }
201
+ }
202
+ }
203
+ return handlers;
204
+ }
205
+ }
206
+ //# sourceMappingURL=custom-types-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-types-parser.js","sourceRoot":"","sources":["../../src/parser/custom-types-parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { ParsedSchema } from '../schema-types.js';
2
+ export declare class StrapiTypeParser {
3
+ private inputDir;
4
+ constructor(inputDir: string);
5
+ parse(): ParsedSchema;
6
+ private parseContentTypes;
7
+ private parseComponents;
8
+ private parseContentType;
9
+ private parseComponent;
10
+ private parseAttributeOrRelation;
11
+ private parseAttributeType;
12
+ private isPrivateAttribute;
13
+ private isRequiredAttribute;
14
+ private extractStringLiteral;
15
+ private extractEnumValues;
16
+ private extractRelationInfo;
17
+ private extractComponentInfo;
18
+ private extractDynamicZoneInfo;
19
+ private extractCleanName;
20
+ private extractComponentCategory;
21
+ private extractTargetTypeName;
22
+ }
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,YAAY,EAKf,MAAM,oBAAoB,CAAA;AAI3B,qBAAa,gBAAgB;IACzB,OAAO,CAAC,QAAQ,CAAQ;gBAEZ,QAAQ,EAAE,MAAM;IAI5B,KAAK,IAAI,YAAY;IAUrB,OAAO,CAAC,iBAAiB;IAqCzB,OAAO,CAAC,eAAe;IA6BvB,OAAO,CAAC,gBAAgB;IA2ExB,OAAO,CAAC,cAAc;IAqDtB,OAAO,CAAC,wBAAwB;IAwHhC,OAAO,CAAC,kBAAkB;IAyE1B,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,iBAAiB;IAazB,OAAO,CAAC,mBAAmB;IAgB3B,OAAO,CAAC,oBAAoB;IAmB5B,OAAO,CAAC,sBAAsB;IAoB9B,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,qBAAqB;CAyBhC"}