@mx-space/api-client 0.7.0 → 0.7.3

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 (239) hide show
  1. package/adaptors/axios.ts +34 -32
  2. package/adaptors/umi-request.ts +25 -22
  3. package/build/index.cjs.js +30 -32
  4. package/build/index.cjs.js.map +1 -1
  5. package/build/index.cjs.min.js +1 -1
  6. package/build/index.cjs.min.js.map +1 -1
  7. package/build/index.esm.js +30 -32
  8. package/build/index.esm.js.map +1 -1
  9. package/build/index.esm.min.js +1 -1
  10. package/build/index.esm.min.js.map +1 -1
  11. package/build/index.umd.js +30 -32
  12. package/build/index.umd.js.map +1 -1
  13. package/build/index.umd.min.js +1 -1
  14. package/build/index.umd.min.js.map +1 -1
  15. package/controllers/aggregate.ts +9 -5
  16. package/controllers/base.ts +3 -3
  17. package/controllers/category.ts +18 -7
  18. package/controllers/comment.ts +10 -6
  19. package/controllers/index.ts +4 -0
  20. package/controllers/link.ts +11 -4
  21. package/controllers/note.ts +11 -7
  22. package/controllers/page.ts +10 -5
  23. package/controllers/post.ts +15 -8
  24. package/controllers/project.ts +10 -3
  25. package/controllers/recently.ts +10 -5
  26. package/controllers/say.ts +10 -5
  27. package/controllers/search.ts +14 -7
  28. package/controllers/severless.ts +31 -0
  29. package/controllers/snippet.ts +11 -6
  30. package/controllers/user.ts +10 -5
  31. package/core/attach-request.ts +1 -1
  32. package/core/client.ts +37 -47
  33. package/coverage/clover.xml +357 -337
  34. package/coverage/coverage-final.json +27 -26
  35. package/coverage/lcov-report/adaptors/axios.ts.html +50 -44
  36. package/coverage/lcov-report/adaptors/index.html +24 -24
  37. package/coverage/lcov-report/adaptors/umi-request.ts.html +42 -33
  38. package/coverage/lcov-report/auto-bind.ts.html +229 -0
  39. package/coverage/lcov-report/controllers/aggregate.ts.html +23 -11
  40. package/coverage/lcov-report/controllers/base.ts.html +6 -6
  41. package/coverage/lcov-report/controllers/category.ts.html +48 -15
  42. package/coverage/lcov-report/controllers/comment.ts.html +23 -11
  43. package/coverage/lcov-report/controllers/index.html +26 -11
  44. package/coverage/lcov-report/controllers/index.ts.html +40 -28
  45. package/coverage/lcov-report/controllers/link.ts.html +31 -10
  46. package/coverage/lcov-report/controllers/note.ts.html +24 -12
  47. package/coverage/lcov-report/controllers/page.ts.html +25 -10
  48. package/coverage/lcov-report/controllers/post.ts.html +39 -18
  49. package/coverage/lcov-report/controllers/project.ts.html +30 -9
  50. package/coverage/lcov-report/controllers/recently.ts.html +25 -10
  51. package/coverage/lcov-report/controllers/say.ts.html +26 -11
  52. package/coverage/lcov-report/controllers/search.ts.html +33 -12
  53. package/coverage/lcov-report/controllers/severless.ts.html +178 -0
  54. package/coverage/lcov-report/controllers/snippet.ts.html +26 -11
  55. package/coverage/lcov-report/controllers/user.ts.html +25 -10
  56. package/coverage/lcov-report/core/attach-request.ts.html +14 -14
  57. package/coverage/lcov-report/core/client.ts.html +120 -150
  58. package/coverage/lcov-report/core/error.ts.html +2 -2
  59. package/coverage/lcov-report/core/index.html +18 -18
  60. package/coverage/lcov-report/core/index.ts.html +3 -3
  61. package/coverage/lcov-report/index.html +34 -34
  62. package/coverage/lcov-report/index.ts.html +244 -0
  63. package/coverage/lcov-report/models/aggregate.ts.html +1 -1
  64. package/coverage/lcov-report/models/category.ts.html +4 -4
  65. package/coverage/lcov-report/models/index.html +1 -1
  66. package/coverage/lcov-report/utils/auto-bind.ts.html +20 -20
  67. package/coverage/lcov-report/utils/index.html +1 -1
  68. package/coverage/lcov-report/utils/index.ts.html +7 -7
  69. package/coverage/lcov.info +615 -577
  70. package/esm/adaptors/axios.d.ts +2 -2
  71. package/esm/adaptors/axios.js +1 -0
  72. package/esm/adaptors/axios.js.map +1 -1
  73. package/esm/adaptors/umi-request.d.ts +2 -2
  74. package/esm/adaptors/umi-request.js +1 -0
  75. package/esm/adaptors/umi-request.js.map +1 -1
  76. package/esm/controllers/aggregate.d.ts +25 -8
  77. package/esm/controllers/aggregate.js.map +1 -1
  78. package/esm/controllers/base.d.ts +17 -5
  79. package/esm/controllers/category.d.ts +64 -13
  80. package/esm/controllers/category.js.map +1 -1
  81. package/esm/controllers/comment.d.ts +42 -10
  82. package/esm/controllers/comment.js.map +1 -1
  83. package/esm/controllers/index.d.ts +4 -3
  84. package/esm/controllers/index.js +4 -1
  85. package/esm/controllers/index.js.map +1 -1
  86. package/esm/controllers/link.d.ts +5 -4
  87. package/esm/controllers/link.js.map +1 -1
  88. package/esm/controllers/note.d.ts +42 -12
  89. package/esm/controllers/note.js.map +1 -1
  90. package/esm/controllers/page.d.ts +22 -8
  91. package/esm/controllers/page.js.map +1 -1
  92. package/esm/controllers/post.d.ts +24 -11
  93. package/esm/controllers/post.js.map +1 -1
  94. package/esm/controllers/project.d.ts +4 -3
  95. package/esm/controllers/project.js.map +1 -1
  96. package/esm/controllers/recently.d.ts +30 -8
  97. package/esm/controllers/recently.js.map +1 -1
  98. package/esm/controllers/say.d.ts +15 -5
  99. package/esm/controllers/say.js.map +1 -1
  100. package/esm/controllers/search.d.ts +168 -9
  101. package/esm/controllers/search.js.map +1 -1
  102. package/esm/controllers/severless.d.ts +24 -0
  103. package/esm/controllers/severless.js +16 -0
  104. package/esm/controllers/severless.js.map +1 -0
  105. package/esm/controllers/snippet.d.ts +17 -7
  106. package/esm/controllers/snippet.js.map +1 -1
  107. package/esm/controllers/user.d.ts +28 -8
  108. package/esm/controllers/user.js.map +1 -1
  109. package/esm/core/attach-request.d.ts +1 -1
  110. package/esm/core/attach-request.js.map +1 -1
  111. package/esm/core/client.d.ts +9 -6
  112. package/esm/core/client.js +13 -32
  113. package/esm/core/client.js.map +1 -1
  114. package/esm/index.d.ts +2 -1
  115. package/esm/index.js +1 -1
  116. package/esm/index.js.map +1 -1
  117. package/esm/interfaces/adapter.d.ts +9 -8
  118. package/esm/interfaces/client.d.ts +1 -1
  119. package/esm/interfaces/request.d.ts +22 -13
  120. package/esm/interfaces/types.d.ts +2 -0
  121. package/esm/interfaces/types.js +2 -0
  122. package/esm/interfaces/types.js.map +1 -0
  123. package/esm/models/post.d.ts +0 -1
  124. package/index.ts +2 -1
  125. package/interfaces/adapter.ts +29 -24
  126. package/interfaces/client.ts +1 -1
  127. package/interfaces/request.ts +45 -20
  128. package/{types/helper.d.ts → interfaces/types.ts} +0 -0
  129. package/lib/adaptors/axios.d.ts +2 -2
  130. package/lib/adaptors/axios.js +1 -0
  131. package/lib/adaptors/axios.js.map +1 -1
  132. package/lib/adaptors/umi-request.d.ts +2 -2
  133. package/lib/adaptors/umi-request.js +1 -0
  134. package/lib/adaptors/umi-request.js.map +1 -1
  135. package/lib/controllers/aggregate.d.ts +25 -8
  136. package/lib/controllers/aggregate.js.map +1 -1
  137. package/lib/controllers/base.d.ts +17 -5
  138. package/lib/controllers/category.d.ts +64 -13
  139. package/lib/controllers/category.js.map +1 -1
  140. package/lib/controllers/comment.d.ts +42 -10
  141. package/lib/controllers/comment.js.map +1 -1
  142. package/lib/controllers/index.d.ts +4 -3
  143. package/lib/controllers/index.js +5 -1
  144. package/lib/controllers/index.js.map +1 -1
  145. package/lib/controllers/link.d.ts +5 -4
  146. package/lib/controllers/link.js.map +1 -1
  147. package/lib/controllers/note.d.ts +42 -12
  148. package/lib/controllers/note.js.map +1 -1
  149. package/lib/controllers/page.d.ts +22 -8
  150. package/lib/controllers/page.js.map +1 -1
  151. package/lib/controllers/post.d.ts +24 -11
  152. package/lib/controllers/post.js.map +1 -1
  153. package/lib/controllers/project.d.ts +4 -3
  154. package/lib/controllers/project.js.map +1 -1
  155. package/lib/controllers/recently.d.ts +30 -8
  156. package/lib/controllers/recently.js.map +1 -1
  157. package/lib/controllers/say.d.ts +15 -5
  158. package/lib/controllers/say.js.map +1 -1
  159. package/lib/controllers/search.d.ts +168 -9
  160. package/lib/controllers/search.js.map +1 -1
  161. package/lib/controllers/severless.d.ts +24 -0
  162. package/lib/controllers/severless.js +20 -0
  163. package/lib/controllers/severless.js.map +1 -0
  164. package/lib/controllers/snippet.d.ts +17 -7
  165. package/lib/controllers/snippet.js.map +1 -1
  166. package/lib/controllers/user.d.ts +28 -8
  167. package/lib/controllers/user.js.map +1 -1
  168. package/lib/core/attach-request.d.ts +1 -1
  169. package/lib/core/attach-request.js.map +1 -1
  170. package/lib/core/client.d.ts +9 -6
  171. package/lib/core/client.js +13 -33
  172. package/lib/core/client.js.map +1 -1
  173. package/lib/core/index.js +5 -1
  174. package/lib/core/index.js.map +1 -1
  175. package/lib/index.d.ts +2 -1
  176. package/lib/index.js +6 -3
  177. package/lib/index.js.map +1 -1
  178. package/lib/interfaces/adapter.d.ts +9 -8
  179. package/lib/interfaces/client.d.ts +1 -1
  180. package/lib/interfaces/request.d.ts +22 -13
  181. package/lib/interfaces/types.d.ts +2 -0
  182. package/lib/interfaces/types.js +3 -0
  183. package/lib/interfaces/types.js.map +1 -0
  184. package/lib/models/index.js +5 -1
  185. package/lib/models/index.js.map +1 -1
  186. package/lib/models/post.d.ts +0 -1
  187. package/models/post.ts +0 -1
  188. package/package.json +12 -12
  189. package/tsconfig.json +25 -4
  190. package/tsconfig.types.json +18 -0
  191. package/types/adaptors/axios.d.ts +3 -0
  192. package/types/adaptors/umi-request.d.ts +3 -0
  193. package/types/controllers/aggregate.d.ts +64 -0
  194. package/types/controllers/base.d.ts +39 -0
  195. package/types/controllers/category.d.ts +114 -0
  196. package/types/controllers/comment.d.ts +81 -0
  197. package/types/controllers/index.d.ts +17 -0
  198. package/types/controllers/link.d.ts +16 -0
  199. package/types/controllers/note.d.ts +94 -0
  200. package/types/controllers/page.d.ts +59 -0
  201. package/types/controllers/post.d.ts +72 -0
  202. package/types/controllers/project.d.ts +15 -0
  203. package/types/controllers/recently.d.ts +61 -0
  204. package/types/controllers/say.d.ts +37 -0
  205. package/types/controllers/search.d.ts +247 -0
  206. package/types/controllers/severless.d.ts +24 -0
  207. package/types/controllers/snippet.d.ts +33 -0
  208. package/types/controllers/user.d.ts +54 -0
  209. package/types/core/attach-request.d.ts +2 -0
  210. package/types/core/client.d.ts +29 -0
  211. package/types/core/error.d.ts +6 -0
  212. package/types/core/index.d.ts +2 -0
  213. package/types/dtos/comment.d.ts +6 -0
  214. package/types/index.d.ts +7 -0
  215. package/types/interfaces/adapter.d.ts +14 -0
  216. package/types/interfaces/client.d.ts +5 -0
  217. package/types/interfaces/controller.d.ts +4 -0
  218. package/types/interfaces/instance.d.ts +7 -0
  219. package/types/interfaces/options.d.ts +1 -0
  220. package/types/interfaces/params.d.ts +4 -0
  221. package/types/interfaces/request.d.ts +43 -0
  222. package/types/interfaces/types.d.ts +2 -0
  223. package/types/models/aggregate.d.ts +53 -0
  224. package/types/models/base.d.ts +37 -0
  225. package/types/models/category.d.ts +22 -0
  226. package/types/models/comment.d.ts +34 -0
  227. package/types/models/index.d.ts +14 -0
  228. package/types/models/link.d.ts +20 -0
  229. package/types/models/note.d.ts +30 -0
  230. package/types/models/page.d.ts +14 -0
  231. package/types/models/post.d.ts +14 -0
  232. package/types/models/project.d.ts +11 -0
  233. package/types/models/recently.d.ts +6 -0
  234. package/types/models/say.d.ts +6 -0
  235. package/types/models/setting.d.ts +66 -0
  236. package/types/models/snippet.d.ts +16 -0
  237. package/types/models/user.d.ts +21 -0
  238. package/types/utils/auto-bind.d.ts +4 -0
  239. package/types/utils/index.d.ts +5 -0
@@ -1 +1 @@
1
- {"version":3,"file":"user.js","sourceRoot":"","sources":["../../controllers/user.ts"],"names":[],"mappings":";;;AAEA,iDAA4C;AAU5C,MAAa,cAAc;IACzB,YAA6B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAI/C,SAAI,GAAG,QAAQ,CAAA;QAEf,SAAI,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QALvB,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAA;IAChB,CAAC;IAMD,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAa,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,QAAgB,EAAE,QAAgB;QACtC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAS;YACnC,IAAI,EAAE;gBACJ,QAAQ;gBACR,QAAQ;aACT;SACF,CAAC,CAAA;IACJ,CAAC;IAED,eAAe,CAAC,KAAa;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAmC;YACnE,MAAM,EAAE;gBACN,KAAK,EAAE,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;aACnD;SACF,CAAC,CAAA;IACJ,CAAC;CACF;AAjCD,wCAiCC"}
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../controllers/user.ts"],"names":[],"mappings":";;;AAIA,iDAA4C;AAa5C,MAAa,cAAc;IACzB,YAA6B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;QAI/C,SAAI,GAAG,QAAQ,CAAA;QAEf,SAAI,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QALvB,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAA;IAChB,CAAC;IAMD,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAa,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,QAAgB,EAAE,QAAgB;QACtC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAS;YACnC,IAAI,EAAE;gBACJ,QAAQ;gBACR,QAAQ;aACT;SACF,CAAC,CAAA;IACJ,CAAC;IAED,eAAe,CAAC,KAAa;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAmC;YACnE,MAAM,EAAE;gBACN,KAAK,EAAE,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;aACnD;SACF,CAAC,CAAA;IACJ,CAAC;CACF;AAjCD,wCAiCC"}
@@ -1,2 +1,2 @@
1
1
  import type { HTTPClient } from '.';
2
- export declare function attachRequestMethod<T extends HTTPClient>(target: T): void;
2
+ export declare function attachRequestMethod<T extends HTTPClient<any, any>>(target: T): void;
@@ -1 +1 @@
1
- {"version":3,"file":"attach-request.js","sourceRoot":"","sources":["../../core/attach-request.ts"],"names":[],"mappings":";;;AAEA,SAAgB,mBAAmB,CAAuB,MAAS;IACjE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE;QACrC,KAAK,EAAE,UAAU,GAAW,EAAE,OAAa;YACzC,8CAA8C;YAC9C,MAAM,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;YAC/B,MAAM,EAAE,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;YAErC,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAChE,CAAC;KACF,CAAC,CACD;IAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QAChE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,GAAG,MAAM,EAAE;YAC3C,KAAK,EAAE,UAAU,IAAY,EAAE,OAAa;gBAC1C,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YAC/C,CAAC;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAjBD,kDAiBC;AACD,mCAAmC;AACnC,SAAS,kBAAkB,CAAC,GAA6C;IACvE,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QACnC,MAAM,IAAI,SAAS,CAAC,wBAAwB,CAAC,CAAA;KAC9C;IAED,IAAI,GAAG,YAAY,eAAe,EAAE;QAClC,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAA;KACtB;IACD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;IAEpC,MAAM,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;QAC1C,IACE,OAAO,CAAC,KAAK,WAAW;YACxB,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,eAAe,EACrD;YACA,OAAM;SACP;QACD,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAA;AAC1B,CAAC"}
1
+ {"version":3,"file":"attach-request.js","sourceRoot":"","sources":["../../core/attach-request.ts"],"names":[],"mappings":";;;AAEA,SAAgB,mBAAmB,CAAiC,MAAS;IAC3E,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE;QACrC,KAAK,EAAE,UAAU,GAAW,EAAE,OAAa;YACzC,8CAA8C;YAC9C,MAAM,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;YAC/B,MAAM,EAAE,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;YAErC,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAChE,CAAC;KACF,CAAC,CACD;IAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QAChE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,GAAG,MAAM,EAAE;YAC3C,KAAK,EAAE,UAAU,IAAY,EAAE,OAAa;gBAC1C,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YAC/C,CAAC;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAjBD,kDAiBC;AACD,mCAAmC;AACnC,SAAS,kBAAkB,CAAC,GAA6C;IACvE,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QACnC,MAAM,IAAI,SAAS,CAAC,wBAAwB,CAAC,CAAA;KAC9C;IAED,IAAI,GAAG,YAAY,eAAe,EAAE;QAClC,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAA;KACtB;IACD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;IAEpC,MAAM,CAAC,OAAO,CAAM,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;QAC1C,IACE,OAAO,CAAC,KAAK,WAAW;YACxB,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,eAAe,EACrD;YACA,OAAM;SACP;QACD,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAA;AAC1B,CAAC"}
@@ -1,9 +1,10 @@
1
- import { IRequestAdapter } from '../interfaces/adapter';
1
+ import { IAdaptorRequestResponseType, IRequestAdapter } from '../interfaces/adapter';
2
2
  import { ClientOptions } from '../interfaces/client';
3
3
  import { IController } from '../interfaces/controller';
4
4
  import { IRequestHandler } from '../interfaces/request';
5
- import { Class } from '../types/helper';
6
- export declare class HTTPClient<T extends IRequestAdapter = IRequestAdapter> {
5
+ import { Class } from '../interfaces/types';
6
+ export type { HTTPClient };
7
+ declare class HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
7
8
  private _endpoint;
8
9
  private _adaptor;
9
10
  private _proxy;
@@ -18,9 +19,11 @@ export declare class HTTPClient<T extends IRequestAdapter = IRequestAdapter> {
18
19
  method?: string;
19
20
  data?: any;
20
21
  params?: any;
21
- }): any;
22
- get proxy(): IRequestHandler;
22
+ }): Promise<IAdaptorRequestResponseType<any>>;
23
+ get proxy(): IRequestHandler<ResponseWrapper>;
23
24
  private resolveFullPath;
24
25
  private buildRoute;
25
26
  }
26
- export declare function createClient<T extends IRequestAdapter>(adapter: T): (endpoint: string, options?: ClientOptions | undefined) => HTTPClient<T>;
27
+ export declare function createClient<T extends IRequestAdapter>(adapter: T): <ResponseWrapper = T extends {
28
+ responseWrapper: infer Type;
29
+ } ? Type extends undefined ? unknown : Type : unknown>(endpoint: string, options?: ClientOptions | undefined) => HTTPClient<T, ResponseWrapper>;
@@ -3,52 +3,23 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createClient = exports.HTTPClient = void 0;
6
+ exports.createClient = void 0;
7
7
  const camelcase_keys_1 = __importDefault(require("camelcase-keys"));
8
8
  const utils_1 = require("../utils");
9
9
  const controllers_1 = require("../controllers");
10
10
  const attach_request_1 = require("./attach-request");
11
11
  const error_1 = require("./error");
12
- // export interface HTTPClient {
13
- // aggregate: AggregateController
14
- // category: CategoryController
15
- // comment: CommentController
16
- // link: LinkController
17
- // note: NoteController
18
- // page: PageController
19
- // post: PostController
20
- // project: ProjectController
21
- // recently: RecentlyController
22
- // say: SayController
23
- // search: SearchController
24
- // snippet: SnippetController
25
- // user: UserController
26
- // master: HTTPClient['user']
27
- // friend: HTTPClient['link']
28
- // shorthand: HTTPClient['recently']
29
- // }
30
12
  const methodPrefix = '_$';
31
13
  class HTTPClient {
32
14
  constructor(_endpoint, _adaptor) {
33
15
  this._endpoint = _endpoint;
34
16
  this._adaptor = _adaptor;
35
- // super()
36
17
  this._endpoint = _endpoint
37
18
  .replace(/\/*$/, '')
38
19
  .replace('localhost', '127.0.0.1');
39
20
  this._proxy = this.buildRoute(this)();
40
21
  this.initGetClient();
41
22
  (0, attach_request_1.attachRequestMethod)(this);
42
- // const proxy = new Proxy(this, {
43
- // get(target, key, r) {
44
- // return (
45
- // Reflect.get(target, key, r) ||
46
- // (typeof key === 'string' &&
47
- // Reflect.get(target, methodPrefix + key, r))
48
- // )
49
- // },
50
- // })
51
- // return proxy
52
23
  }
53
24
  initGetClient() {
54
25
  for (const name of controllers_1.allContollerNames) {
@@ -116,7 +87,6 @@ class HTTPClient {
116
87
  'inspect',
117
88
  'constructor',
118
89
  Symbol.toPrimitive,
119
- Symbol.for('util.inspect.custom'),
120
90
  ];
121
91
  // eslint-disable-next-line @typescript-eslint/no-this-alias
122
92
  const that = this;
@@ -125,7 +95,18 @@ class HTTPClient {
125
95
  const handler = {
126
96
  get(target, name) {
127
97
  if (reflectors.includes(name))
128
- return () => route.join('/');
98
+ return (withBase) => {
99
+ if (withBase) {
100
+ const path = that.resolveFullPath(route.join('/'));
101
+ route.length = 0;
102
+ return path;
103
+ }
104
+ else {
105
+ const path = route.join('/');
106
+ route.length = 0;
107
+ return path.startsWith('/') ? path : '/' + path;
108
+ }
109
+ };
129
110
  if (methods.includes(name)) {
130
111
  return async (options) => {
131
112
  const url = that.resolveFullPath(route.join('/'));
@@ -190,7 +171,6 @@ class HTTPClient {
190
171
  };
191
172
  }
192
173
  }
193
- exports.HTTPClient = HTTPClient;
194
174
  function createClient(adapter) {
195
175
  return (endpoint, options) => {
196
176
  const client = new HTTPClient(endpoint, adapter);
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../core/client.ts"],"names":[],"mappings":";;;;;;AAAA,oEAA0C;AAO1C,mCAAuC;AACvC,gDAAkD;AAClD,qDAAsD;AACtD,mCAAsC;AAEtC,gCAAgC;AAChC,mCAAmC;AACnC,iCAAiC;AACjC,+BAA+B;AAC/B,yBAAyB;AACzB,yBAAyB;AACzB,yBAAyB;AACzB,yBAAyB;AACzB,+BAA+B;AAC/B,iCAAiC;AACjC,uBAAuB;AACvB,6BAA6B;AAC7B,+BAA+B;AAC/B,yBAAyB;AAEzB,+BAA+B;AAE/B,+BAA+B;AAE/B,sCAAsC;AACtC,IAAI;AAEJ,MAAM,YAAY,GAAG,IAAI,CAAA;AAEzB,MAAa,UAAU;IAGrB,YAAoB,SAAiB,EAAU,QAAW;QAAtC,cAAS,GAAT,SAAS,CAAQ;QAAU,aAAQ,GAAR,QAAQ,CAAG;QACxD,UAAU;QACV,IAAI,CAAC,SAAS,GAAG,SAAS;aACvB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;aACnB,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;QACpC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAA;QAErC,IAAI,CAAC,aAAa,EAAE,CAAA;QAEpB,IAAA,oCAAmB,EAAC,IAAI,CAAC,CAAA;QAEzB,kCAAkC;QAClC,0BAA0B;QAC1B,eAAe;QACf,uCAAuC;QACvC,oCAAoC;QACpC,sDAAsD;QACtD,QAAQ;QACR,OAAO;QACP,KAAK;QAEL,eAAe;IACjB,CAAC;IAEO,aAAa;QACnB,KAAK,MAAM,IAAI,IAAI,+BAAiB,EAAE;YACpC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE;gBAChC,GAAG;oBACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,YAAY,GAAG,IAAI,EAAE,CAAC,CAAA;oBAC1D,IAAI,CAAC,MAAM,EAAE;wBACX,MAAM,IAAI,cAAc,CACtB,GACE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAC7C,sEAAsE,CACvE,CAAA;qBACF;oBACD,OAAO,MAAM,CAAA;gBACf,CAAC;gBACD,YAAY,EAAE,KAAK;gBACnB,UAAU,EAAE,KAAK;aAClB,CAAC,CAAA;SACH;IACH,CAAC;IAIM,iBAAiB,CAAC,UAAe,EAAE,GAAG,IAAW;QACtD,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,CAAA;QAC3E,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE;YAC/B,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAA;YAE3B,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;gBAC1B,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,IAAI,EAAE;oBAC1B,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;iBAC5B;aACF;iBAAM;gBACL,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;aAC/B;SACF;QAED,SAAS,MAAM,CAAY,IAAY,EAAE,EAAe;YACtD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE;gBAClE,GAAG;oBACD,OAAO,EAAE,CAAA;gBACX,CAAC;gBACD,UAAU,EAAE,KAAK;gBACjB,YAAY,EAAE,KAAK;aACpB,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,OAAO,CAAC,OAKd;QACC,OAAQ,IAAY,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CACxE,OAAO,CAAC,GAAG,EACX,OAAO,CACR,CAAA;IACH,CAAC;IAED,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAEO,eAAe,CAAC,IAAY;QAClC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACzB,IAAI,GAAG,GAAG,GAAG,IAAI,CAAA;SAClB;QACD,OAAO,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,EAAE,CAAA;IAClC,CAAC;IAEO,UAAU,CAAC,OAAa;QAC9B,gEAAgE;QAChE,MAAM,IAAI,GAAG,GAAG,EAAE,GAAE,CAAC,CAAA;QACrB,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;QACzD,MAAM,UAAU,GAAG;YACjB,UAAU;YACV,SAAS;YACT,SAAS;YACT,aAAa;YACb,MAAM,CAAC,WAAW;YAClB,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC;SAClC,CAAA;QACD,4DAA4D;QAC5D,MAAM,IAAI,GAAG,IAAI,CAAA;QAEjB,OAAO,GAAG,EAAE;YACV,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC,CAAA;YAElB,MAAM,OAAO,GAAQ;gBACnB,GAAG,CAAC,MAAW,EAAE,IAAY;oBAC3B,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;wBAAE,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBAC3D,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;wBAC1B,OAAO,KAAK,EAAE,OAAuB,EAAE,EAAE;4BACvC,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;4BACjD,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;4BAChB,IAAI,GAAQ,CAAA;4BACZ,IAAI;gCACF,GAAG,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;oCAC1B,MAAM,EAAE,IAAI;oCACZ,GAAG,OAAO;oCACV,GAAG;iCACJ,CAAC,CAAA;6BACH;4BAAC,OAAO,CAAM,EAAE;gCACf,MAAM,IAAI,oBAAY,CACpB,CAAC,CAAC,OAAO,EACT,CAAC,CAAC,IAAI;oCACJ,CAAC,CAAC,MAAM;oCACR,CAAC,CAAC,UAAU;oCACZ,CAAC,CAAC,QAAQ,EAAE,MAAM;oCAClB,CAAC,CAAC,QAAQ,EAAE,UAAU;oCACtB,CAAC,CAAC,QAAQ,EAAE,IAAI;oCAChB,GAAG,EACL,GAAG,EACH,CAAC,CACF,CAAA;6BACF;4BAED,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;4BACrB,IAAI,CAAC,IAAI,EAAE;gCACT,OAAO,IAAI,CAAA;6BACZ;4BAED,MAAM,SAAS,GACb,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAA,qBAAa,EAAC,IAAI,CAAC;gCACxC,CAAC,CAAC,IAAA,wBAAa,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gCACrC,CAAC,CAAC,IAAI,CAAA;4BAEV,IAAI,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;gCAC9C,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE;oCACvC,GAAG;wCACD,OAAO,GAAG,CAAA;oCACZ,CAAC;oCACD,UAAU,EAAE,KAAK;oCACjB,YAAY,EAAE,KAAK;iCACpB,CAAC,CAAA;gCAEF,sCAAsC;gCAEtC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE;oCAC3C,GAAG;wCACD,OAAO;4CACL,GAAG;4CACH,MAAM,EAAE,IAAI;4CACZ,OAAO;yCACR,CAAA;oCACH,CAAC;oCACD,UAAU,EAAE,KAAK;iCAClB,CAAC,CAAA;6BACH;4BAED,OAAO,SAAS,CAAA;wBAClB,CAAC,CAAA;qBACF;oBACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBAChB,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;gBACjC,CAAC;gBACD,aAAa;gBACb,KAAK,CAAC,MAAW,EAAE,CAAC,EAAE,IAAI;oBACxB,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;oBACrD,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;gBACjC,CAAC;aACF,CAAA;YAED,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,OAAO,CAAQ,CAAA;QACxC,CAAC,CAAA;IACH,CAAC;CACF;AAzMD,gCAyMC;AAED,SAAgB,YAAY,CAA4B,OAAU;IAChE,OAAO,CAAC,QAAgB,EAAE,OAAuB,EAAE,EAAE;QACnD,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAChD,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;QACrC,IAAI,WAAW,EAAE;YACf,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAA;SACtC;QACD,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;AACH,CAAC;AATD,oCASC"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../core/client.ts"],"names":[],"mappings":"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"}
package/lib/core/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAwB;AACxB,0CAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,0CAAuB"}
package/lib/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import _camelcaseKeys from 'camelcase-keys';
2
2
  export * from './controllers';
3
- export { createClient, HTTPClient, RequestError } from './core';
3
+ export { createClient, RequestError } from './core';
4
+ export type { HTTPClient } from './core';
4
5
  export * from './models';
5
6
  export declare const camelcaseKeysDeep: <T>(obj: T) => T;
6
7
  export declare const camelcaseKeys: typeof _camelcaseKeys;
package/lib/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -13,12 +17,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
14
18
  };
15
19
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.camelcaseKeys = exports.camelcaseKeysDeep = exports.RequestError = exports.HTTPClient = exports.createClient = void 0;
20
+ exports.camelcaseKeys = exports.camelcaseKeysDeep = exports.RequestError = exports.createClient = void 0;
17
21
  const camelcase_keys_1 = __importDefault(require("camelcase-keys"));
18
22
  __exportStar(require("./controllers"), exports);
19
23
  var core_1 = require("./core");
20
24
  Object.defineProperty(exports, "createClient", { enumerable: true, get: function () { return core_1.createClient; } });
21
- Object.defineProperty(exports, "HTTPClient", { enumerable: true, get: function () { return core_1.HTTPClient; } });
22
25
  Object.defineProperty(exports, "RequestError", { enumerable: true, get: function () { return core_1.RequestError; } });
23
26
  __exportStar(require("./models"), exports);
24
27
  // export helper lib
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oEAA2C;AAE3C,gDAA6B;AAC7B,+BAA+D;AAAtD,oGAAA,YAAY,OAAA;AAAE,kGAAA,UAAU,OAAA;AAAE,oGAAA,YAAY,OAAA;AAC/C,2CAAwB;AAExB,oBAAoB;AACb,MAAM,iBAAiB,GAAG,CAAI,GAAM,EAAE,EAAE;IAC7C,OAAO,IAAA,qBAAa,EAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAM,CAAA;AAChD,CAAC,CAAA;AAFY,QAAA,iBAAiB,qBAE7B;AAEY,QAAA,aAAa,GAAG,wBAAc,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,oEAA2C;AAE3C,gDAA6B;AAC7B,+BAAmD;AAA1C,oGAAA,YAAY,OAAA;AAAE,oGAAA,YAAY,OAAA;AAEnC,2CAAwB;AAExB,oBAAoB;AACb,MAAM,iBAAiB,GAAG,CAAI,GAAM,EAAE,EAAE;IAC7C,OAAO,IAAA,qBAAa,EAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAM,CAAA;AAChD,CAAC,CAAA;AAFY,QAAA,iBAAiB,qBAE7B;AAEY,QAAA,aAAa,GAAG,wBAAc,CAAA"}
@@ -1,13 +1,14 @@
1
1
  import { RequestOptions } from './instance';
2
- declare type RequestResponseType<P> = Promise<Record<string, any> & {
2
+ export declare type IAdaptorRequestResponseType<P> = Promise<Record<string, any> & {
3
3
  data: P;
4
4
  }>;
5
- export declare type IRequestAdapter<T = any> = Readonly<{
5
+ export declare type IRequestAdapter<T = any, Response = undefined> = Readonly<(Response extends undefined ? {} : {
6
+ responseWrapper: Response;
7
+ }) & {
6
8
  default: T;
7
- get<P = unknown>(url: string, options?: Omit<RequestOptions, 'data'>): RequestResponseType<P>;
8
- post<P = unknown>(url: string, options: Partial<RequestOptions>): RequestResponseType<P>;
9
- patch<P = unknown>(url: string, options: Partial<RequestOptions>): RequestResponseType<P>;
10
- delete<P = unknown>(url: string, options?: Omit<RequestOptions, 'data'>): RequestResponseType<P>;
11
- put<P = unknown>(url: string, options: Partial<RequestOptions>): RequestResponseType<P>;
9
+ get<P = unknown>(url: string, options?: Omit<RequestOptions, 'data'>): IAdaptorRequestResponseType<P>;
10
+ post<P = unknown>(url: string, options: Partial<RequestOptions>): IAdaptorRequestResponseType<P>;
11
+ patch<P = unknown>(url: string, options: Partial<RequestOptions>): IAdaptorRequestResponseType<P>;
12
+ delete<P = unknown>(url: string, options?: Omit<RequestOptions, 'data'>): IAdaptorRequestResponseType<P>;
13
+ put<P = unknown>(url: string, options: Partial<RequestOptions>): IAdaptorRequestResponseType<P>;
12
14
  }>;
13
- export {};
@@ -1,5 +1,5 @@
1
- import { Class } from '../types/helper';
2
1
  import { IController } from './controller';
2
+ import { Class } from './types';
3
3
  export declare type ClientOptions = {
4
4
  controllers?: Class<IController>[];
5
5
  };
@@ -3,25 +3,33 @@ declare type NoStringIndex<T> = {
3
3
  [K in keyof T as string extends K ? never : K]: T[K];
4
4
  };
5
5
  export declare type Method = 'get' | 'delete' | 'post' | 'put' | 'patch';
6
- export interface IRequestHandler {
7
- (path?: string | number): IRequestHandler;
8
- get<P = unknown>(options?: Omit<NoStringIndex<RequestOptions>, 'data'>): RequestProxyResult<P>;
9
- post<P = unknown>(options?: RequestOptions): RequestProxyResult<P>;
10
- patch<P = unknown>(options?: RequestOptions): RequestProxyResult<P>;
11
- delete<P = unknown>(options?: Omit<NoStringIndex<RequestOptions>, 'data'>): RequestProxyResult<P>;
12
- put<P = unknown>(options?: RequestOptions): RequestProxyResult<P>;
13
- [key: string]: IRequestHandler;
6
+ export interface IRequestHandler<ResponseWrapper> {
7
+ (path?: string | number): IRequestHandler<ResponseWrapper>;
8
+ get<P = unknown>(options?: Omit<NoStringIndex<RequestOptions>, 'data'>): RequestProxyResult<P, ResponseWrapper>;
9
+ post<P = unknown>(options?: RequestOptions): RequestProxyResult<P, ResponseWrapper>;
10
+ patch<P = unknown>(options?: RequestOptions): RequestProxyResult<P, ResponseWrapper>;
11
+ delete<P = unknown>(options?: Omit<NoStringIndex<RequestOptions>, 'data'>): RequestProxyResult<P, ResponseWrapper>;
12
+ put<P = unknown>(options?: RequestOptions): RequestProxyResult<P, ResponseWrapper>;
13
+ toString(withBase?: boolean): string;
14
+ valueOf(withBase?: boolean): string;
15
+ [key: string]: IRequestHandler<ResponseWrapper>;
14
16
  }
15
- export declare type RequestProxyResult<T, R = {
17
+ export declare type RequestProxyResult<T, ResponseWrapper, R = ResponseWrapper extends unknown ? {
16
18
  data: T;
17
19
  [key: string]: any;
18
- }> = Promise<ResponseProxyExtraRaw<T, R>>;
20
+ } : ResponseWrapper extends {
21
+ data: T;
22
+ } ? ResponseWrapper : Omit<ResponseWrapper, 'data'> & {
23
+ data: T;
24
+ }> = Promise<ResponseProxyExtraRaw<T, R, ResponseWrapper>>;
19
25
  declare type CamelToSnake<T extends string, P extends string = ''> = string extends T ? string : T extends `${infer C0}${infer R}` ? CamelToSnake<R, `${P}${C0 extends Lowercase<C0> ? '' : '_'}${Lowercase<C0>}`> : P;
20
26
  declare type CamelKeysToSnake<T> = {
21
27
  [K in keyof T as CamelToSnake<Extract<K, string>>]: T[K];
22
28
  };
23
- export declare type ResponseProxyExtraRaw<T, RawData = unknown, Response = unknown> = T extends object ? T & {
24
- $raw: Response extends unknown ? {
29
+ declare type ResponseWrapperType<Response, RawData, T> = {
30
+ $raw: Response extends {
31
+ data: infer T;
32
+ } ? Response : Response extends unknown ? {
25
33
  [i: string]: any;
26
34
  data: RawData extends unknown ? CamelKeysToSnake<T> : RawData;
27
35
  } : Response;
@@ -30,5 +38,6 @@ export declare type ResponseProxyExtraRaw<T, RawData = unknown, Response = unkno
30
38
  method: string;
31
39
  [k: string]: string;
32
40
  };
33
- } : T;
41
+ };
42
+ export declare type ResponseProxyExtraRaw<T, RawData = unknown, Response = unknown> = T extends object ? T & ResponseWrapperType<Response, RawData, T> : T extends unknown ? T & ResponseWrapperType<Response, RawData, T> : unknown;
34
43
  export {};
@@ -0,0 +1,2 @@
1
+ export declare type Class<T> = new (...args: any[]) => T;
2
+ export declare type SelectFields<T extends string> = `${'+' | '-' | ''}${T}`[];
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../interfaces/types.ts"],"names":[],"mappings":""}
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../models/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA2B;AAC3B,yCAAsB;AACtB,6CAA0B;AAC1B,4CAAyB;AACzB,yCAAsB;AACtB,yCAAsB;AACtB,yCAAsB;AACtB,yCAAsB;AACtB,4CAAyB;AACzB,6CAA0B;AAC1B,wCAAqB;AACrB,4CAAyB;AACzB,4CAAyB;AACzB,yCAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../models/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,yCAAsB;AACtB,6CAA0B;AAC1B,4CAAyB;AACzB,yCAAsB;AACtB,yCAAsB;AACtB,yCAAsB;AACtB,yCAAsB;AACtB,4CAAyB;AACzB,6CAA0B;AAC1B,wCAAqB;AACrB,4CAAyB;AACzB,4CAAyB;AACzB,yCAAsB"}
@@ -2,7 +2,6 @@ import { Count, Image, TextBaseModel } from './base';
2
2
  import { CategoryModel } from './category';
3
3
  export interface PostModel extends TextBaseModel {
4
4
  summary?: string;
5
- hide: boolean;
6
5
  copyright: boolean;
7
6
  tags: string[];
8
7
  count: Count;
package/models/post.ts CHANGED
@@ -3,7 +3,6 @@ import { CategoryModel } from './category'
3
3
 
4
4
  export interface PostModel extends TextBaseModel {
5
5
  summary?: string
6
- hide: boolean
7
6
  copyright: boolean
8
7
  tags: string[]
9
8
  count: Count
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@mx-space/api-client",
3
- "version": "0.7.0",
3
+ "version": "0.7.3",
4
4
  "description": "A api client for mx-space server@next",
5
5
  "author": "Innei",
6
6
  "license": "MIT",
7
7
  "main": "build/index.cjs.js",
8
8
  "module": "build/index.esm.js",
9
- "types": "index.ts",
9
+ "types": "types/index.d.ts",
10
10
  "unpkg": "build/index.umd.min.js",
11
11
  "husky": {
12
12
  "hooks": {
@@ -33,10 +33,10 @@
33
33
  "pnpm": ">=6"
34
34
  },
35
35
  "scripts": {
36
- "predeploy": "rm -rf dist",
37
- "prebuild": "rm -rf rm -rf lib && rm -rf esm",
36
+ "prebuild": "rm -rf lib && rm -rf esm",
38
37
  "build": "tsc --build tsconfig.build.json && tsc --build tsconfig.cjs.json",
39
- "postbuild": "tsconfig-replace-paths -p tsconfig.build.json && tsconfig-replace-paths -p tsconfig.cjs.json",
38
+ "postbuild": "tsconfig-replace-paths -p tsconfig.build.json && tsconfig-replace-paths -p tsconfig.cjs.json && npm run types",
39
+ "types": "rm -rf types && tsc --build tsconfig.types.json && tsconfig-replace-paths -p tsconfig.types.json",
40
40
  "package": "NODE_ENV=production npm run build && rollup -c",
41
41
  "prepackage": "rm -rf build",
42
42
  "release": "vv",
@@ -45,16 +45,16 @@
45
45
  "version": "vv"
46
46
  },
47
47
  "devDependencies": {
48
- "@rollup/plugin-commonjs": "21.0.1",
48
+ "@rollup/plugin-commonjs": "21.0.2",
49
49
  "@rollup/plugin-node-resolve": "13.1.3",
50
- "@rollup/plugin-typescript": "8.3.0",
51
- "@types/jest": "27.4.0",
52
- "@types/lodash": "4.14.178",
53
- "@types/node": "16.11.22",
54
- "axios": "0.25.0",
50
+ "@rollup/plugin-typescript": "8.3.1",
51
+ "@types/jest": "27.4.1",
52
+ "@types/lodash": "4.14.179",
53
+ "@types/node": "16.11.26",
54
+ "axios": "0.26.1",
55
55
  "gh-pages": "3.2.3",
56
56
  "lodash": "4.17.21",
57
- "rollup": "2.66.1",
57
+ "rollup": "2.68.0",
58
58
  "rollup-plugin-peer-deps-external": "2.2.4",
59
59
  "rollup-plugin-terser": "7.0.2",
60
60
  "tsconfig-replace-paths": "0.0.11",
package/tsconfig.json CHANGED
@@ -1,12 +1,33 @@
1
1
  {
2
- "extends": "../tsconfig.json",
3
2
  "compilerOptions": {
4
3
  "declaration": true,
5
4
  "outDir": "./esm",
6
5
  "baseUrl": ".",
7
- "jsx": "react"
6
+ "jsx": "react",
7
+ "target": "ES2020",
8
+ "lib": [
9
+ "ESNext",
10
+ "DOM",
11
+ "DOM.Iterable"
12
+ ],
13
+ "module": "ESNext",
14
+ "moduleResolution": "node",
15
+ "strict": true,
16
+ "resolveJsonModule": true,
17
+ "esModuleInterop": true,
18
+ "skipLibCheck": true,
19
+ "forceConsistentCasingInFileNames": true,
20
+ "sourceMap": true,
21
+ "paths": {
22
+ "~/*": [
23
+ "*"
24
+ ]
25
+ }
8
26
  },
9
- "include": [
10
- "./**/*.ts"
27
+ "exclude": [
28
+ "esm/*",
29
+ "build/*",
30
+ "node_modules/*",
31
+ "lib/*"
11
32
  ]
12
33
  }
@@ -0,0 +1,18 @@
1
+ {
2
+ "extends": "./tsconfig.json",
3
+ "compilerOptions": {
4
+ "module": "commonjs",
5
+ "rootDir": ".",
6
+ "outDir": "types",
7
+ "declaration": true,
8
+ "declarationMap": false,
9
+ "isolatedModules": false,
10
+ "noEmit": false,
11
+ "allowJs": false,
12
+ "emitDeclarationOnly": true
13
+ },
14
+ "exclude": [
15
+ "__tests__/**/*",
16
+ "**/*.test.ts"
17
+ ]
18
+ }
@@ -0,0 +1,3 @@
1
+ import { AxiosInstance, AxiosResponse } from 'axios';
2
+ import { IRequestAdapter } from '../interfaces/adapter';
3
+ export declare const axiosAdaptor: IRequestAdapter<AxiosInstance, AxiosResponse<unknown>>;
@@ -0,0 +1,3 @@
1
+ import { RequestMethod, RequestResponse } from 'umi-request';
2
+ import { IRequestAdapter } from '../interfaces/adapter';
3
+ export declare const umiAdaptor: IRequestAdapter<RequestMethod<true>, RequestResponse>;
@@ -0,0 +1,64 @@
1
+ import { IRequestAdapter } from '../interfaces/adapter';
2
+ import { IController } from '../interfaces/controller';
3
+ import { SortOrder } from '../interfaces/options';
4
+ import { IRequestHandler, RequestProxyResult } from '../interfaces/request';
5
+ import { AggregateRoot, AggregateStat, AggregateTop, TimelineData, TimelineType } from '../models/aggregate';
6
+ import { HTTPClient } from '../core';
7
+ declare module '../core/client' {
8
+ interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
9
+ aggregate: AggregateController<ResponseWrapper>;
10
+ }
11
+ }
12
+ export declare class AggregateController<ResponseWrapper> implements IController {
13
+ private client;
14
+ base: string;
15
+ name: string;
16
+ constructor(client: HTTPClient);
17
+ get proxy(): IRequestHandler<ResponseWrapper>;
18
+ /**
19
+ * 获取聚合数据
20
+ */
21
+ getAggregateData(): RequestProxyResult<AggregateRoot, ResponseWrapper>;
22
+ /**
23
+ * 获取最新发布的内容
24
+ */
25
+ getTop(size?: number): RequestProxyResult<AggregateTop, ResponseWrapper, ResponseWrapper extends unknown ? {
26
+ [key: string]: any;
27
+ data: AggregateTop;
28
+ } : ResponseWrapper extends {
29
+ data: AggregateTop;
30
+ } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
31
+ data: AggregateTop;
32
+ }>;
33
+ getTimeline(options?: {
34
+ sort?: SortOrder;
35
+ type?: TimelineType;
36
+ year?: number;
37
+ }): RequestProxyResult<{
38
+ data: TimelineData;
39
+ }, ResponseWrapper, ResponseWrapper extends unknown ? {
40
+ [key: string]: any;
41
+ data: {
42
+ data: TimelineData;
43
+ };
44
+ } : ResponseWrapper extends {
45
+ data: {
46
+ data: TimelineData;
47
+ };
48
+ } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
49
+ data: {
50
+ data: TimelineData;
51
+ };
52
+ }>;
53
+ /**
54
+ * 获取聚合数据统计
55
+ */
56
+ getStat(): RequestProxyResult<AggregateStat, ResponseWrapper, ResponseWrapper extends unknown ? {
57
+ [key: string]: any;
58
+ data: AggregateStat;
59
+ } : ResponseWrapper extends {
60
+ data: AggregateStat;
61
+ } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
62
+ data: AggregateStat;
63
+ }>;
64
+ }
@@ -0,0 +1,39 @@
1
+ import { IRequestHandler, RequestProxyResult } from '../interfaces/request';
2
+ import { PaginateResult } from '../models/base';
3
+ import { HTTPClient } from '../core';
4
+ export declare abstract class BaseCrudController<T, ResponseWrapper> {
5
+ protected client: HTTPClient;
6
+ base: string;
7
+ constructor(client: HTTPClient);
8
+ get proxy(): IRequestHandler<ResponseWrapper>;
9
+ getById(id: string): RequestProxyResult<T, ResponseWrapper>;
10
+ getAll(): RequestProxyResult<{
11
+ data: T[];
12
+ }, ResponseWrapper, ResponseWrapper extends unknown ? {
13
+ [key: string]: any;
14
+ data: {
15
+ data: T[];
16
+ };
17
+ } : ResponseWrapper extends {
18
+ data: {
19
+ data: T[];
20
+ };
21
+ } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
22
+ data: {
23
+ data: T[];
24
+ };
25
+ }>;
26
+ /**
27
+ * 带分页的查询
28
+ * @param page
29
+ * @param perPage
30
+ */
31
+ getAllPaginated(page?: number, perPage?: number): RequestProxyResult<PaginateResult<T>, ResponseWrapper, ResponseWrapper extends unknown ? {
32
+ [key: string]: any;
33
+ data: PaginateResult<T>;
34
+ } : ResponseWrapper extends {
35
+ data: PaginateResult<T>;
36
+ } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
37
+ data: PaginateResult<T>;
38
+ }>;
39
+ }