@mx-space/api-client 0.6.3 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (334) hide show
  1. package/adaptors/axios.ts +38 -0
  2. package/adaptors/umi-request.ts +33 -0
  3. package/build/index.cjs.js +28 -27
  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 +29 -27
  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 +28 -27
  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 +69 -0
  16. package/controllers/base.ts +32 -0
  17. package/controllers/category.ts +118 -0
  18. package/controllers/comment.ts +68 -0
  19. package/controllers/index.ts +66 -0
  20. package/controllers/link.ts +28 -0
  21. package/controllers/note.ts +96 -0
  22. package/controllers/page.ts +64 -0
  23. package/controllers/post.ts +94 -0
  24. package/controllers/project.ts +27 -0
  25. package/controllers/recently.ts +53 -0
  26. package/controllers/say.ts +40 -0
  27. package/controllers/search.ts +108 -0
  28. package/controllers/snippet.ts +36 -0
  29. package/controllers/user.ts +51 -0
  30. package/core/attach-request.ts +43 -0
  31. package/core/client.ts +239 -0
  32. package/core/error.ts +10 -0
  33. package/core/index.ts +2 -0
  34. package/coverage/clover.xml +570 -0
  35. package/coverage/coverage-final.json +30 -0
  36. package/coverage/lcov-report/adaptors/axios.ts.html +199 -0
  37. package/coverage/lcov-report/adaptors/index.html +131 -0
  38. package/coverage/lcov-report/adaptors/umi-request.ts.html +184 -0
  39. package/coverage/lcov-report/auto-bind.ts.html +229 -0
  40. package/coverage/lcov-report/base.css +224 -0
  41. package/coverage/lcov-report/block-navigation.js +87 -0
  42. package/coverage/lcov-report/controllers/aggregate.ts.html +292 -0
  43. package/coverage/lcov-report/controllers/base.ts.html +181 -0
  44. package/coverage/lcov-report/controllers/category.ts.html +439 -0
  45. package/coverage/lcov-report/controllers/comment.ts.html +289 -0
  46. package/coverage/lcov-report/controllers/index.html +326 -0
  47. package/coverage/lcov-report/controllers/index.ts.html +283 -0
  48. package/coverage/lcov-report/controllers/link.ts.html +169 -0
  49. package/coverage/lcov-report/controllers/note.ts.html +373 -0
  50. package/coverage/lcov-report/controllers/page.ts.html +277 -0
  51. package/coverage/lcov-report/controllers/post.ts.html +367 -0
  52. package/coverage/lcov-report/controllers/project.ts.html +166 -0
  53. package/coverage/lcov-report/controllers/recently.ts.html +244 -0
  54. package/coverage/lcov-report/controllers/say.ts.html +205 -0
  55. package/coverage/lcov-report/controllers/search.ts.html +409 -0
  56. package/coverage/lcov-report/controllers/snippet.ts.html +193 -0
  57. package/coverage/lcov-report/controllers/user.ts.html +238 -0
  58. package/coverage/lcov-report/core/attach-request.ts.html +214 -0
  59. package/coverage/lcov-report/core/client.ts.html +802 -0
  60. package/coverage/lcov-report/core/error.ts.html +115 -0
  61. package/coverage/lcov-report/core/index.html +161 -0
  62. package/coverage/lcov-report/core/index.ts.html +91 -0
  63. package/coverage/lcov-report/favicon.png +0 -0
  64. package/coverage/lcov-report/index.html +191 -0
  65. package/coverage/lcov-report/index.ts.html +244 -0
  66. package/coverage/lcov-report/models/aggregate.ts.html +298 -0
  67. package/coverage/lcov-report/models/category.ts.html +160 -0
  68. package/coverage/lcov-report/models/index.html +131 -0
  69. package/coverage/lcov-report/prettify.css +1 -0
  70. package/coverage/lcov-report/prettify.js +2 -0
  71. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  72. package/coverage/lcov-report/sorter.js +196 -0
  73. package/coverage/lcov-report/utils/auto-bind.ts.html +229 -0
  74. package/coverage/lcov-report/utils/index.html +131 -0
  75. package/coverage/lcov-report/utils/index.ts.html +244 -0
  76. package/coverage/lcov.info +1164 -0
  77. package/dtos/comment.ts +9 -0
  78. package/esm/adaptors/axios.d.ts +3 -3
  79. package/esm/adaptors/axios.js +5 -17
  80. package/esm/adaptors/axios.js.map +1 -1
  81. package/esm/adaptors/umi-request.d.ts +3 -3
  82. package/esm/adaptors/umi-request.js +1 -0
  83. package/esm/adaptors/umi-request.js.map +1 -1
  84. package/esm/controllers/aggregate.d.ts +32 -10
  85. package/esm/controllers/aggregate.js +2 -2
  86. package/esm/controllers/aggregate.js.map +1 -1
  87. package/esm/controllers/base.d.ts +19 -7
  88. package/esm/controllers/base.js +1 -1
  89. package/esm/controllers/base.js.map +1 -1
  90. package/esm/controllers/category.d.ts +68 -12
  91. package/esm/controllers/category.js +3 -3
  92. package/esm/controllers/category.js.map +1 -1
  93. package/esm/controllers/comment.d.ts +49 -12
  94. package/esm/controllers/comment.js +1 -1
  95. package/esm/controllers/comment.js.map +1 -1
  96. package/esm/controllers/index.js.map +1 -1
  97. package/esm/controllers/link.d.ts +9 -2
  98. package/esm/controllers/link.js +1 -1
  99. package/esm/controllers/link.js.map +1 -1
  100. package/esm/controllers/note.d.ts +48 -13
  101. package/esm/controllers/note.js +2 -2
  102. package/esm/controllers/note.js.map +1 -1
  103. package/esm/controllers/page.d.ts +28 -9
  104. package/esm/controllers/page.js +2 -2
  105. package/esm/controllers/page.js.map +1 -1
  106. package/esm/controllers/post.d.ts +30 -12
  107. package/esm/controllers/post.js +2 -2
  108. package/esm/controllers/post.js.map +1 -1
  109. package/esm/controllers/project.d.ts +8 -2
  110. package/esm/controllers/project.js +1 -1
  111. package/esm/controllers/project.js.map +1 -1
  112. package/esm/controllers/recently.d.ts +35 -7
  113. package/esm/controllers/recently.js +1 -1
  114. package/esm/controllers/recently.js.map +1 -1
  115. package/esm/controllers/say.d.ts +20 -5
  116. package/esm/controllers/say.js +1 -1
  117. package/esm/controllers/say.js.map +1 -1
  118. package/esm/controllers/search.d.ts +178 -14
  119. package/esm/controllers/search.js +3 -3
  120. package/esm/controllers/search.js.map +1 -1
  121. package/esm/controllers/snippet.d.ts +21 -6
  122. package/esm/controllers/snippet.js +1 -1
  123. package/esm/controllers/snippet.js.map +1 -1
  124. package/esm/controllers/user.d.ts +33 -7
  125. package/esm/controllers/user.js +1 -1
  126. package/esm/controllers/user.js.map +1 -1
  127. package/esm/core/attach-request.d.ts +1 -1
  128. package/esm/core/attach-request.js.map +1 -1
  129. package/esm/core/client.d.ts +12 -28
  130. package/esm/core/client.js +23 -21
  131. package/esm/core/client.js.map +1 -1
  132. package/esm/core/error.js.map +1 -1
  133. package/esm/core/index.js.map +1 -1
  134. package/esm/dtos/comment.js.map +1 -1
  135. package/esm/index.d.ts +2 -1
  136. package/esm/index.js +1 -1
  137. package/esm/index.js.map +1 -1
  138. package/esm/interfaces/adapter.d.ts +9 -8
  139. package/esm/interfaces/adapter.js.map +1 -1
  140. package/esm/interfaces/client.d.ts +1 -1
  141. package/esm/interfaces/client.js.map +1 -1
  142. package/esm/interfaces/controller.js.map +1 -1
  143. package/esm/interfaces/instance.js.map +1 -1
  144. package/esm/interfaces/options.js.map +1 -1
  145. package/esm/interfaces/params.js.map +1 -1
  146. package/esm/interfaces/request.d.ts +22 -13
  147. package/esm/interfaces/request.js.map +1 -1
  148. package/esm/interfaces/types.d.ts +2 -0
  149. package/esm/interfaces/types.js +2 -0
  150. package/esm/interfaces/types.js.map +1 -0
  151. package/esm/models/aggregate.js.map +1 -1
  152. package/esm/models/base.js.map +1 -1
  153. package/esm/models/category.js.map +1 -1
  154. package/esm/models/comment.js.map +1 -1
  155. package/esm/models/index.js.map +1 -1
  156. package/esm/models/link.js.map +1 -1
  157. package/esm/models/note.js.map +1 -1
  158. package/esm/models/page.js.map +1 -1
  159. package/esm/models/post.js.map +1 -1
  160. package/esm/models/project.js.map +1 -1
  161. package/esm/models/recently.js.map +1 -1
  162. package/esm/models/say.js.map +1 -1
  163. package/esm/models/setting.js.map +1 -1
  164. package/esm/models/snippet.js.map +1 -1
  165. package/esm/models/user.js.map +1 -1
  166. package/esm/utils/auto-bind.js.map +1 -1
  167. package/esm/utils/index.d.ts +1 -1
  168. package/esm/utils/index.js +2 -2
  169. package/esm/utils/index.js.map +1 -1
  170. package/index.ts +13 -0
  171. package/interfaces/adapter.ts +35 -0
  172. package/interfaces/client.ts +6 -0
  173. package/interfaces/controller.ts +5 -0
  174. package/interfaces/instance.ts +8 -0
  175. package/interfaces/options.ts +1 -0
  176. package/interfaces/params.ts +4 -0
  177. package/interfaces/request.ts +82 -0
  178. package/interfaces/types.ts +3 -0
  179. package/jest.config.js +12 -0
  180. package/lib/adaptors/axios.d.ts +3 -3
  181. package/lib/adaptors/axios.js +5 -17
  182. package/lib/adaptors/axios.js.map +1 -1
  183. package/lib/adaptors/umi-request.d.ts +3 -3
  184. package/lib/adaptors/umi-request.js +1 -0
  185. package/lib/adaptors/umi-request.js.map +1 -1
  186. package/lib/controllers/aggregate.d.ts +32 -10
  187. package/lib/controllers/aggregate.js.map +1 -1
  188. package/lib/controllers/base.d.ts +19 -7
  189. package/lib/controllers/base.js.map +1 -1
  190. package/lib/controllers/category.d.ts +68 -12
  191. package/lib/controllers/category.js +1 -1
  192. package/lib/controllers/category.js.map +1 -1
  193. package/lib/controllers/comment.d.ts +49 -12
  194. package/lib/controllers/comment.js.map +1 -1
  195. package/lib/controllers/index.js.map +1 -1
  196. package/lib/controllers/link.d.ts +9 -2
  197. package/lib/controllers/link.js.map +1 -1
  198. package/lib/controllers/note.d.ts +48 -13
  199. package/lib/controllers/note.js +1 -1
  200. package/lib/controllers/note.js.map +1 -1
  201. package/lib/controllers/page.d.ts +28 -9
  202. package/lib/controllers/page.js +1 -1
  203. package/lib/controllers/page.js.map +1 -1
  204. package/lib/controllers/post.d.ts +30 -12
  205. package/lib/controllers/post.js +1 -1
  206. package/lib/controllers/post.js.map +1 -1
  207. package/lib/controllers/project.d.ts +8 -2
  208. package/lib/controllers/project.js.map +1 -1
  209. package/lib/controllers/recently.d.ts +35 -7
  210. package/lib/controllers/recently.js.map +1 -1
  211. package/lib/controllers/say.d.ts +20 -5
  212. package/lib/controllers/say.js.map +1 -1
  213. package/lib/controllers/search.d.ts +178 -14
  214. package/lib/controllers/search.js +2 -2
  215. package/lib/controllers/search.js.map +1 -1
  216. package/lib/controllers/snippet.d.ts +21 -6
  217. package/lib/controllers/snippet.js.map +1 -1
  218. package/lib/controllers/user.d.ts +33 -7
  219. package/lib/controllers/user.js.map +1 -1
  220. package/lib/core/attach-request.d.ts +1 -1
  221. package/lib/core/attach-request.js.map +1 -1
  222. package/lib/core/client.d.ts +12 -28
  223. package/lib/core/client.js +21 -20
  224. package/lib/core/client.js.map +1 -1
  225. package/lib/core/error.js.map +1 -1
  226. package/lib/core/index.js.map +1 -1
  227. package/lib/dtos/comment.js.map +1 -1
  228. package/lib/index.d.ts +2 -1
  229. package/lib/index.js +1 -2
  230. package/lib/index.js.map +1 -1
  231. package/lib/interfaces/adapter.d.ts +9 -8
  232. package/lib/interfaces/adapter.js.map +1 -1
  233. package/lib/interfaces/client.d.ts +1 -1
  234. package/lib/interfaces/client.js.map +1 -1
  235. package/lib/interfaces/controller.js.map +1 -1
  236. package/lib/interfaces/instance.js.map +1 -1
  237. package/lib/interfaces/options.js.map +1 -1
  238. package/lib/interfaces/params.js.map +1 -1
  239. package/lib/interfaces/request.d.ts +22 -13
  240. package/lib/interfaces/request.js.map +1 -1
  241. package/lib/interfaces/types.d.ts +2 -0
  242. package/lib/interfaces/types.js +3 -0
  243. package/lib/interfaces/types.js.map +1 -0
  244. package/lib/models/aggregate.js.map +1 -1
  245. package/lib/models/base.js.map +1 -1
  246. package/lib/models/category.js.map +1 -1
  247. package/lib/models/comment.js.map +1 -1
  248. package/lib/models/index.js.map +1 -1
  249. package/lib/models/link.js.map +1 -1
  250. package/lib/models/note.js.map +1 -1
  251. package/lib/models/page.js.map +1 -1
  252. package/lib/models/post.js.map +1 -1
  253. package/lib/models/project.js.map +1 -1
  254. package/lib/models/recently.js.map +1 -1
  255. package/lib/models/say.js.map +1 -1
  256. package/lib/models/setting.js.map +1 -1
  257. package/lib/models/snippet.js.map +1 -1
  258. package/lib/models/user.js.map +1 -1
  259. package/lib/utils/auto-bind.js.map +1 -1
  260. package/lib/utils/index.d.ts +1 -1
  261. package/lib/utils/index.js +2 -2
  262. package/lib/utils/index.js.map +1 -1
  263. package/models/aggregate.ts +71 -0
  264. package/models/base.ts +43 -0
  265. package/models/category.ts +25 -0
  266. package/models/comment.ts +37 -0
  267. package/models/index.ts +14 -0
  268. package/models/link.ts +23 -0
  269. package/models/note.ts +37 -0
  270. package/models/page.ts +20 -0
  271. package/models/post.ts +16 -0
  272. package/models/project.ts +12 -0
  273. package/models/recently.ts +7 -0
  274. package/models/say.ts +7 -0
  275. package/models/setting.ts +68 -0
  276. package/models/snippet.ts +18 -0
  277. package/models/user.ts +27 -0
  278. package/package.json +10 -44
  279. package/tsconfig.build.json +6 -0
  280. package/tsconfig.cjs.json +7 -0
  281. package/tsconfig.json +13 -11
  282. package/tsconfig.types.json +18 -0
  283. package/types/adaptors/axios.d.ts +3 -0
  284. package/types/adaptors/umi-request.d.ts +3 -0
  285. package/types/controllers/aggregate.d.ts +64 -0
  286. package/types/controllers/base.d.ts +39 -0
  287. package/types/controllers/category.d.ts +114 -0
  288. package/types/controllers/comment.d.ts +81 -0
  289. package/types/controllers/index.d.ts +16 -0
  290. package/types/controllers/link.d.ts +16 -0
  291. package/types/controllers/note.d.ts +94 -0
  292. package/types/controllers/page.d.ts +59 -0
  293. package/types/controllers/post.d.ts +72 -0
  294. package/types/controllers/project.d.ts +15 -0
  295. package/types/controllers/recently.d.ts +61 -0
  296. package/types/controllers/say.d.ts +37 -0
  297. package/types/controllers/search.d.ts +247 -0
  298. package/types/controllers/snippet.d.ts +33 -0
  299. package/types/controllers/user.d.ts +54 -0
  300. package/types/core/attach-request.d.ts +2 -0
  301. package/types/core/client.d.ts +29 -0
  302. package/types/core/error.d.ts +6 -0
  303. package/types/core/index.d.ts +2 -0
  304. package/types/dtos/comment.d.ts +6 -0
  305. package/types/index.d.ts +7 -0
  306. package/types/interfaces/adapter.d.ts +14 -0
  307. package/types/interfaces/client.d.ts +5 -0
  308. package/types/interfaces/controller.d.ts +4 -0
  309. package/types/interfaces/instance.d.ts +7 -0
  310. package/types/interfaces/options.d.ts +1 -0
  311. package/types/interfaces/params.d.ts +4 -0
  312. package/types/interfaces/request.d.ts +43 -0
  313. package/types/interfaces/types.d.ts +2 -0
  314. package/types/models/aggregate.d.ts +53 -0
  315. package/types/models/base.d.ts +37 -0
  316. package/types/models/category.d.ts +22 -0
  317. package/types/models/comment.d.ts +34 -0
  318. package/types/models/index.d.ts +14 -0
  319. package/types/models/link.d.ts +20 -0
  320. package/types/models/note.d.ts +30 -0
  321. package/types/models/page.d.ts +14 -0
  322. package/types/models/post.d.ts +15 -0
  323. package/types/models/project.d.ts +11 -0
  324. package/types/models/recently.d.ts +6 -0
  325. package/types/models/say.d.ts +6 -0
  326. package/types/models/setting.d.ts +66 -0
  327. package/types/models/snippet.d.ts +16 -0
  328. package/types/models/user.d.ts +21 -0
  329. package/types/utils/auto-bind.d.ts +4 -0
  330. package/types/utils/index.d.ts +5 -0
  331. package/utils/auto-bind.ts +48 -0
  332. package/utils/index.ts +53 -0
  333. package/build/index.d.ts +0 -932
  334. package/readme.md +0 -84
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.min.js","sources":["../src/utils/index.ts","../src/utils/auto-bind.ts","../src/controllers/aggregate.ts","../src/core/error.ts","../src/models/category.ts","../src/controllers/category.ts","../src/controllers/comment.ts","../src/controllers/base.ts","../src/controllers/link.ts","../src/controllers/note.ts","../src/controllers/page.ts","../src/controllers/post.ts","../src/controllers/project.ts","../src/controllers/recently.ts","../src/controllers/say.ts","../src/controllers/search.ts","../src/controllers/snippet.ts","../src/controllers/user.ts","../src/controllers/index.ts","../src/core/attach-request.ts","../src/core/client.ts","../src/models/aggregate.ts","../src/models/comment.ts","../src/models/link.ts","../src/models/page.ts","../src/models/snippet.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["isPlainObject","obj","isObject","Object","prototype","toString","call","getPrototypeOf","attachRawFromOneToAnthor","from","to","$raw","defineProperty","value","enumerable","$request","autoBind","self","include","exclude","filter","key","match","pattern","test","some","object","properties","Set","Reflect","ownKeys","add","getAllProperties","constructor","descriptor","getOwnPropertyDescriptor","bind","AggregateController","[object Object]","client","this","proxy","base","get","size","top","params","options","sort","type","year","timeline","order","asc","desc","stat","RequestError","Error","message","status","path","raw","super","CategoryType","CategoryController","Category","Tag","ids","data","result","values","entries","Array","isArray","join","map","Map","id","toLowerCase","idOrSlug","payload","keys","length","d","assign","destructureData","name","tag","CommentController","refId","pagination","page","ref","post","commentId","reply","BaseCrudController","all","perPage","LinkController","NoteController","latest","password","nid","select","sortBy","sortOrder","list","like","PageController","slug","PostController","idOrCategoryName","arguments","ProjectController","RecentlyController","before","after","SayController","random","SearchController","keyword","SnippetController","reference","UserController","username","login","token","check_logged","replace","allControllers","allContollerNames","attachRequestMethod","target","url","qs","TypeError","URLSearchParams","search","forEach","k","v","set","handleSearchParams","instance","method","HTTPClient","_endpoint","_adaptor","_proxy","buildRoute","initGetClient","ReferenceError","charAt","toUpperCase","slice","configurable","Controller","rest","Client","cl","attach","endpoint","String","startsWith","manager","noop","methods","reflectors","Symbol","toPrimitive","for","that","route","handler","includes","async","resolveFullPath","res","request","e","code","statusCode","response","transform","camelcaseKeys","deep","push","Proxy","apply","_","args","x","TimelineType","RefType","CommentState","LinkType","LinkState","EnumPageType","SnippetType","_camelcaseKeys","adapter","controllers","injectControllers"],"mappings":"iZAEO,MAAMA,EAAiBC,GAC5BC,EAASD,IAC+B,oBAAxCE,OAAOC,UAAUC,SAASC,KAAKL,IAC/BE,OAAOI,eAAeN,KAASE,OAAOC,UAUlCF,EAAYD,GAAaA,GAAsB,iBAARA,EAuBhCO,EAA2B,CAACC,EAAWC,KAC7CD,GAASP,EAASQ,KAGvBD,EAAKE,MACHR,OAAOS,eAAeF,EAAI,OAAQ,CAChCG,uBAAYJ,EAAKE,MACjBG,YAAY,IAEhBL,EAAKM,UACHZ,OAAOS,eAAeF,EAAI,WAAY,CACpCG,uBAAYJ,EAAKM,UACjBD,YAAY,eC/BFE,EAASC,GAAMC,QAAEA,EAAOC,QAAEA,GAAY,IACpD,MAAMC,EAAUC,IACd,MAAMC,EAASC,GACM,iBAAZA,EAAuBF,IAAQE,EAAUA,EAAQC,KAAKH,GAE/D,OAAIH,EACKA,EAAQO,KAAKH,IAGlBH,IACMA,EAAQM,KAAKH,IAMzB,IAAK,MAAOI,EAAQL,IA/BG,CAACK,IACxB,MAAMC,EAAa,IAAIC,IAEvB,GACE,IAAK,MAAMP,KAAOQ,QAAQC,QAAQJ,GAChCC,EAAWI,IAAI,CAACL,EAAQL,WAGzBK,EAASG,QAAQtB,eAAemB,KACjCA,IAAWvB,OAAOC,WAGpB,OAAOuB,GAmBqBK,CAAiBf,EAAKgB,YAAY7B,WAAY,CACxE,GAAY,gBAARiB,IAA0BD,EAAOC,GACnC,SAGF,MAAMa,EAAaL,QAAQM,yBAAyBT,EAAQL,GACxDa,GAA0C,mBAArBA,EAAWrB,QAClCI,EAAKI,GAAOJ,EAAKI,GAAKe,KAAKnB,IAI/B,OAAOA,QChCIoB,EAGXC,YAAoBC,GAAAC,YAAAD,EAFpBC,UAAO,YACPA,UAAO,YAELxB,EAASwB,MAEXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAMhCJ,mBACE,OAAOE,KAAKC,MAAME,MAMpBL,OAAOM,EAAO,GACZ,OAAOJ,KAAKC,MAAMI,IAAIF,IAAkB,CAAEG,OAAQ,CAAEF,KAAAA,KAGtDN,YAAYS,GAKV,MAAMC,KAAEA,EAAIC,KAAEA,EAAIC,KAAEA,GAASH,GAAW,GACxC,OAAOP,KAAKC,MAAMU,SAASR,IAA4B,CACrDG,OAAQ,CACNE,KAAMA,IFvCoBI,EEuCMJ,EFrCpC,CACEK,IAAK,EACLC,MAAO,GACPF,IAAU,GEmCRH,KAAAA,EACAC,KAAAA,KFzCyB,IAACE,EEgDhCd,UACE,OAAOE,KAAKC,MAAMc,KAAKZ,aCxDda,UAAqBC,MAChCnB,YACEoB,EACOC,EACAC,EACAC,GAEPC,MAAMJ,GAJClB,YAAAmB,EACAnB,UAAAoB,EACApB,SAAAqB,GCFX,IAAYE,yBAAAA,EAAAA,iBAAAA,6CAEVA,uBCUWC,EAGX1B,YAAoBC,GAAAC,YAAAD,EAFpBC,UAAO,WACPA,UAAO,aAELxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAGhCJ,mBACE,OAAOE,KAAKC,MAAME,IAAI,CACpBG,OAAQ,CACNG,KAAMc,eAAaE,YAKzB3B,aACE,OAAOE,KAAKC,MAAME,IAA0B,CAC1CG,OAAQ,CACNG,KAAMc,eAAaG,OAWzB5B,wBAAwB6B,GACtB,GAAmB,iBAARA,EAAkB,CAC3B,MAAMC,QAAa5B,KAAKC,MAAME,IAAqB,CACjDG,OAAQ,CACNqB,IAAKA,KAGHE,EAASlE,OAAOmE,OAAOF,EAAKG,SAAS,GAE3C,OADA/D,EAAyB4D,EAAMC,GACxBA,EACF,GAAIG,MAAMC,QAAQN,GAAM,CAC7B,MAAMC,QAAa5B,KAAKC,MAAME,IAAqB,CACjDG,OAAQ,CACNqB,IAAKA,EAAIO,KAAK,QAGZH,EAAUH,MAAAA,SAAAA,EAAMG,QACtB,IAAKA,EACH,MAAM,IAAIf,EACR,uBACA,IACAY,EAAKrD,SAAS6C,KACdQ,GAIJ,MAAMO,EAAM,IAAIC,IACdzE,OAAOoE,QAAQA,GAASI,KAAI,EAAEE,EAAIhE,KAAW,CAACgE,EAAGC,cAAejE,MAIlE,OADAL,EAAyB4D,EAAMO,GACxBA,GAIXrC,4BAA4ByC,GAE1B,MLrE2B,CAACC,IAC9B,GAAuB,iBAAZA,EACT,OAAOA,EAET,GAAgB,OAAZA,EACF,OAAOA,EAGT,MAAMZ,EAAOY,EAAQZ,KAIrB,GAF0BpE,EAAcoE,IAEiB,IAAhCjE,OAAO8E,KAAKD,GAASE,OAAc,CAC1D,MAAMC,EAAIhF,OAAOiF,OAAO,GAAIhB,GAG5B,OADA5D,EAAyBwE,EAASG,GAC3BA,EAGT,OAAOH,GKkDEK,OADW7C,KAAKC,MAAMsC,GAAUpC,OAIzCL,mBAAmBgD,GAUjB,aATkB9C,KAAKC,MAAM6C,GAAM3C,IAGhC,CACDG,OAAQ,CACNyC,IAAK,YCrFAC,EAIXlD,YAA6BC,GAAAC,YAAAD,EAH7BC,UAAO,WACPA,UAAO,UAGLxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAMhCJ,QAAQuC,GACN,OAAOrC,KAAKC,MAAMoC,GAAIlC,MAOxBL,WAAWmD,EAAeC,EAA+B,IACvD,MAAMC,KAAEA,EAAI/C,KAAEA,GAAS8C,EACvB,OAAOlD,KAAKC,MACTmD,IAAIH,GACJ9C,IAAoD,CACnDG,OAAQ,CAAE6C,KAAMA,GAAQ,EAAG/C,KAAMA,GAAQ,MAM/CN,QAAQmD,EAAerB,GACrB,OAAO5B,KAAKC,MAAMgD,GAAOI,KAAmB,CAC1CzB,KAAAA,IAOJ9B,MAAMwD,EAAmB1B,GACvB,OAAO5B,KAAKC,MAAMsD,MAAMD,GAAWD,KAAmB,CACpDzB,KAAAA,WCjDgB4B,EAEpB1D,YAAsBC,GAAAC,YAAAD,EACpBvB,EAASwB,MAEXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAGhCJ,QAAQuC,GACN,OAAOrC,KAAKC,MAAMoC,GAAIlC,MAGxBL,SACE,OAAOE,KAAKC,MAAMwD,IAAItD,MAOxBL,gBAAgBqD,EAAeO,GAC7B,OAAO1D,KAAKC,MAAME,IAAuB,CACvCG,OAAQ,CAAE6C,KAAAA,EAAM/C,KAAMsD,YCvBfC,UAAuBH,EAClC1D,YAA+BC,GAC7BuB,MAAMvB,GADuBC,YAAAD,EAK/BC,UAAO,CAAC,OAAQ,UAChBA,UAAO,QAJLxB,EAASwB,aCOA4D,EAIX9D,YAAoBC,GAAAC,YAAAD,EAHpBC,UAAO,QACPA,UAAO,OAGLxB,EAASwB,MAEXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAMhCJ,YACE,OAAOE,KAAKC,MAAM4D,OAAO1D,MAS3BL,YAAYuC,EAAqByB,GAC/B,MAAkB,iBAAPzB,EACFrC,KAAKC,MAAM8D,IAAI1B,EAAGxE,YAAYsC,IAAwB,CAC3DG,OAAQ,CAAEwD,SAAAA,KAGL9D,KAAKC,MAAMoC,GAAIlC,IAAwB,CAAEG,OAAQ,CAAEwD,SAAAA,KAQ9DhE,QAAQqD,EAAO,EAAGO,EAAU,GAAInD,EAA2B,IACzD,MAAMyD,OAAEA,EAAMC,OAAEA,EAAMC,UAAEA,EAASxD,KAAEA,GAASH,EAC5C,OAAOP,KAAKC,MAAME,IAA+B,CAC/CG,OAAQ,CACN6C,KAAAA,EACA/C,KAAMsD,EACNM,OAAQA,MAAAA,SAAAA,EAAQ9B,KAAK,KACrB+B,OAAAA,EACAC,UAAAA,EACAxD,KAAAA,KAQNZ,cAAcuC,EAAYjC,EAAO,GAC/B,OAAOJ,KAAKC,MAAMkE,KAAK9B,GAAIlC,IAGxB,CACDG,OAAQ,CAAEF,KAAAA,KAOdN,OAAOuC,GACL,OAAOrC,KAAKC,MAAMmE,KAAK/B,GAAIlC,aCtElBkE,EACXvE,YAA6BC,GAAAC,YAAAD,EAG7BC,UAAO,QACPA,UAAO,OAHLxB,EAASwB,MAIXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAKhCJ,QAAQqD,EAAO,EAAGO,EAAU,GAAInD,EAA2B,IACzD,MAAMyD,OAAEA,EAAMC,OAAEA,EAAMC,UAAEA,GAAc3D,EACtC,OAAOP,KAAKC,MAAME,IAA+B,CAC/CG,OAAQ,CACN6C,KAAAA,EACA/C,KAAMsD,EACNM,OAAQA,MAAAA,SAAAA,EAAQ9B,KAAK,KACrB+B,OAAAA,EACAC,UAAAA,KAQNpE,QAAQuC,GACN,OAAOrC,KAAKC,MAAMoC,GAAIlC,MAOxBL,UAAUwE,GACR,OAAOtE,KAAKC,MAAMqE,KAAKA,GAAMnE,IAAe,WCnCnCoE,EACXzE,YAAoBC,GAAAC,YAAAD,EAIpBC,UAAO,QAEPA,UAAO,OALLxB,EAASwB,MAOXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAShCJ,QAAQqD,EAAO,EAAGO,EAAU,GAAInD,EAA2B,IACzD,MAAMyD,OAAEA,EAAMC,OAAEA,EAAMC,UAAEA,EAASxD,KAAEA,GAASH,EAC5C,OAAOP,KAAKC,MAAME,IAA+B,CAC/CG,OAAQ,CACN6C,KAAAA,EACA/C,KAAMsD,EACNM,OAAQA,MAAAA,SAAAA,EAAQ9B,KAAK,KACrB+B,OAAAA,EACAC,UAAAA,EACAxD,KAAAA,KAgBNZ,QAAQ0E,EAA0BF,GAChC,OAAwB,GAApBG,UAAU/B,OACL1C,KAAKC,MAAMuE,GAAkBrE,MAE7BH,KAAKC,MAAMuE,EAAXxE,CAA6BsE,GAAMnE,MAO9CL,YACE,OAAOE,KAAKC,MAAM4D,OAAO1D,MAM3BL,SAASuC,GACP,OAAOrC,KAAKC,MAAM,cAAcE,IAAU,CAAEG,OAAQ,CAAE+B,GAAAA,YCzE7CqC,UAA0BlB,EACrC1D,YAA+BC,GAC7BuB,MAAMvB,GADuBC,YAAAD,EAK/BC,UAAO,WACPA,UAAO,UAJLxB,EAASwB,aCHA2E,EAIX7E,YAA6BC,GAAAC,YAAAD,EAH7BC,UAAO,WACPA,UAAO,CAAC,WAAY,aAGlBxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAKhCJ,eACE,OAAOE,KAAKC,MAAM4D,OAAO1D,MAG3BL,SACE,OAAOE,KAAKC,MAAMwD,IAAItD,MAGxBL,QACE8E,EACAC,EACAzE,GAEA,OAAOJ,KAAKC,MAAME,IAA+B,CAC/CG,OAAQ,CACNsE,OAAAA,EACAC,MAAAA,EACAzE,KAAAA,YC9BK0E,UACHtB,EAMR1D,YAAsBC,GACpBuB,MAAMvB,GADcC,YAAAD,EAHtBC,UAAO,OACPA,UAAO,MAILxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAMhCJ,YACE,OAAOE,KAAKC,MAAM8E,OAAO5E,aCVhB6E,EAIXlF,YAA6BC,GAAAC,YAAAD,EAH7BC,UAAO,SACPA,UAAO,SAGLxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MA4BhCJ,OACEW,EACAwE,EACA1E,EAA4C,IAE5C,OAAOP,KAAKC,MAAMQ,GAAMN,IAAI,CAC1BG,sBAAU2E,QAAAA,GAAY1E,KAU1BT,gBAAgBmF,EAAiB1E,GAC/B,OAAOP,KAAKC,MAAM,WAAWE,IAsB3B,CAAEG,sBAAU2E,QAAAA,GAAY1E,YCvFjB2E,EAIXpF,YAAsBC,GAAAC,YAAAD,EAHtBC,UAAO,WACPA,UAAO,UAGLxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAGhCJ,QAAqBuC,GACnB,OAAOrC,KAAKC,MAAMoC,GAAIlC,MAGxBL,sBAAmCqF,EAAmBrC,GACpD,OAAO9C,KAAKC,MAAMkF,EAAXnF,CAAsB8C,GAAM3C,aCjB1BiF,EACXtF,YAA6BC,GAAAC,YAAAD,EAI7BC,UAAO,SAEPA,UAAO,CAAC,OAAQ,UALdxB,EAASwB,MAOXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAGhCJ,gBACE,OAAOE,KAAKC,MAAME,MAGpBL,MAAMuF,EAAkBvB,GACtB,OAAO9D,KAAKC,MAAMqF,MAAMjC,KAAa,CACnCzB,KAAM,CACJyD,SAAAA,EACAvB,SAAAA,KAKNhE,gBAAgByF,GACd,OAAOvF,KAAKC,MAAMuF,aAAarF,IAAsC,CACnEG,OAAQ,CACNiF,MAAO,UAAYA,EAAME,QAAQ,aAAc,cCpB1CC,EAAiB,CAC5B7F,EACA2B,EACAwB,EACAW,EACAC,EACAS,EACAE,EACAG,EACAC,EACAG,EACAE,EACAE,EACAE,GAGWO,EAAoB,CAC/B,YACA,WACA,UACA,OACA,OACA,OACA,OACA,UACA,WACA,MACA,SACA,UACA,OAGA,SACA,SACA,sBC9CcC,EAA0CC,GACxDlI,OAAOS,eAAeyH,EAAQ,QAAS,CACrCxH,MAAO,SAAUyH,EAAavF,GAE5B,MAAMD,OAAEA,EAAS,IAAOC,EAClBwF,EAcZ,SAA4BtI,GAC1B,IAAKA,GAAsB,iBAARA,EACjB,MAAM,IAAIuI,UAAU,0BAGtB,GAAIvI,aAAewI,gBACjB,OAAOxI,EAAII,WAEb,MAAMqI,EAAS,IAAID,gBAYnB,OAVAtI,OAAOoE,QAAatE,GAAK0I,SAAQ,EAAEC,EAAGC,WAErB,IAANA,GAC+B,kBAAtC1I,OAAOC,UAAUC,SAASC,KAAKuI,IAIjCH,EAAOI,IAAIF,EAAGC,MAGTH,EAAOrI,WAlCC0I,CAAmBjG,GAE9B,OAAOuF,EAAOW,SAASrG,IAAI2F,EAAM,IAAGC,EAAK,IAAG,IAAMA,GAAO,QAG3D,CAAC,MAAO,OAAQ,QAAS,UAAoBI,SAASM,IACtD9I,OAAOS,eAAeyH,EAAQ,KAAOY,EAAQ,CAC3CpI,MAAO,SAAU+C,EAAcb,GAC7B,OAAOsF,EAAOW,SAASC,GAAQrF,EAAMb,eCoChCmG,EAGX5G,YAAoB6G,EAA2BC,GAA3B5G,eAAA2G,EAA2B3G,cAAA4G,EAE7C5G,KAAK2G,UAAYA,EACdlB,QAAQ,OAAQ,IAChBA,QAAQ,YAAa,aACxBzF,KAAK6G,OAAS7G,KAAK8G,WAAW9G,KAAhBA,GAEdA,KAAK+G,gBAELnB,EAAoB5F,MAedF,gBACN,IAAK,MAAMgD,KAAQ6C,EACjBhI,OAAOS,eAAe4B,KAAM8C,EAAM,CAChChD,MACE,MAAMC,EAASV,QAAQc,IAAIH,KAAM,KAAkB8C,KACnD,IAAK/C,EACH,MAAM,IAAIiH,eACR,GACElE,EAAKmE,OAAO,GAAGC,cAAgBpE,EAAKqE,MAAM,0EAIhD,OAAOpH,GAETqH,cAAc,EACd9I,YAAY,IAOXwB,kBAAkBuH,KAAoBC,GAC3CD,EAAarF,MAAMC,QAAQoF,GAAcA,EAAa,CAACA,KAAeC,GACtE,IAAK,MAAMC,KAAUF,EAAY,CAC/B,MAAMG,EAAK,IAAID,EAAOvH,MAEtB,GAAIgC,MAAMC,QAAQuF,EAAG1E,MACnB,IAAK,MAAMA,KAAQ0E,EAAG1E,KACpB2E,EAAO3J,KAAKkC,KAAM8C,EAAM0E,QAG1BC,EAAO3J,KAAKkC,KAAMwH,EAAG1E,KAAM0E,GAI/B,SAASC,EAAkB3E,EAAc0E,GACvC7J,OAAOS,eAAe4B,KAAM,KAAkB8C,EAAKR,gBAAiB,CAClEnC,IAAG,IACMqH,EAETlJ,YAAY,EACZ8I,cAAc,KAKpBM,eACE,OAAO1H,KAAK2G,UAGdH,eACE,OAAOxG,KAAK4G,SAGP9G,QAAQS,GAMb,OAAQP,KAAa,KAAO2H,OAAOpH,EAAQkG,QAAU,OAAOnE,eAC1D/B,EAAQuF,IACRvF,GAIJN,YACE,OAAOD,KAAK6G,OAGN/G,gBAAgBsB,GAItB,OAHKA,EAAKwG,WAAW,OACnBxG,EAAO,IAAMA,GAER,GAAGpB,KAAK0H,WAAWtG,IAGpBtB,WAAW+H,GAEjB,MAAMC,EAAO,OACPC,EAAU,CAAC,MAAO,OAAQ,SAAU,QAAS,OAC7CC,EAAa,CACjB,WACA,UACA,UACA,cACAC,OAAOC,YACPD,OAAOE,IAAI,wBAGPC,EAAOpI,KAEb,MAAO,KACL,MAAMqI,EAAQ,CAAC,IAETC,EAAe,CACnBnI,IAAG,CAAC0F,EAAa/C,IACXkF,EAAWO,SAASzF,GAAc,IAAMuF,EAAMnG,KAAK,KACnD6F,EAAQQ,SAASzF,GACZ0F,MAAOjI,cACZ,MAAMuF,EAAMsC,EAAKK,gBAAgBJ,EAAMnG,KAAK,MAE5C,IAAIwG,EADJL,EAAM3F,OAAS,EAEf,IACEgG,QAAYb,EAAQc,qCAClBlC,OAAQ3D,GACLvC,IACHuF,IAAAA,KAEF,MAAO8C,GACP,MAAM,IAAI5H,EACR4H,EAAE1H,QACF0H,EAAEC,MACAD,EAAEzH,QACFyH,EAAEE,uBACFF,EAAEG,+BAAU5H,oBACZyH,EAAEG,+BAAUD,wBACZF,EAAEG,+BAAUF,OACZ,IACF/C,EACA8C,GAIJ,MAAMhH,EAAO8G,EAAI9G,KACjB,IAAKA,EACH,OAAO,KAGT,MAAMoH,EACJhH,MAAMC,QAAQL,IAASpE,EAAcoE,GACjCqH,UAAcrH,EAAM,CAAEsH,MAAM,IAC5BtH,EAyBN,OAvBIoH,GAAkC,iBAAdA,IACtBrL,OAAOS,eAAe4K,EAAW,OAAQ,CACvC7I,IAAG,IACMuI,EAETpK,YAAY,EACZ8I,cAAc,IAKhBzJ,OAAOS,eAAe4K,EAAW,WAAY,CAC3C7I,IAAG,KACM,CACL2F,IAAAA,EACAW,OAAQ3D,EACRvC,QAAAA,IAGJjC,YAAY,KAIT0K,IAGXX,EAAMc,KAAKrG,GACJ,IAAIsG,MAAMtB,EAAMQ,IAGzBe,MAAK,CAACxD,EAAayD,EAAGC,KACpBlB,EAAMc,QAAQI,EAAK3K,QAAQ4K,GAAoB,OAANA,KAClC,IAAIJ,MAAMtB,EAAMQ,KAI3B,OAAO,IAAIc,MAAMtB,EAAMQ,KC7N7B,IAAYmB,ECzBAC,EA6BAC,EC9BAC,EAKAC,ECLAC,ECDAC,yBJ2BAN,EAAAA,iBAAAA,qCAEVA,qCC3BUC,EAAAA,YAAAA,2BAEVA,cACAA,qCA0BUC,EAAAA,iBAAAA,yCAEVA,mBACAA,sCCjCUC,EAAAA,aAAAA,qCAEVA,mDAGUC,EAAAA,cAAAA,kCAEVA,qBACAA,yBACAA,8CCTUC,EAAAA,iBAAAA,4BAEVA,cACAA,sCCJUC,EAAAA,gBAAAA,+BAGVA,cACAA,oBCMWd,EAAgBe,uYAJQvM,GAC5BwL,EAAcxL,EAAK,CAAEyL,MAAM,4BNsPoBe,GACtD,MAAO,CAACvC,EAAkBnH,KACxB,MAAMR,EAAS,IAAI2G,EAAWgB,EAAUuC,IAClCC,YAAEA,GAAgB3J,GAAW,GAInC,OAHI2J,GACFnK,EAAOoK,kBAAkBD,GAEpBnK"}
1
+ {"version":3,"file":"index.umd.min.js","sources":["../../utils/index.ts","../../utils/auto-bind.ts","../../controllers/aggregate.ts","../../core/error.ts","../../models/category.ts","../../controllers/category.ts","../../controllers/comment.ts","../../controllers/base.ts","../../controllers/link.ts","../../controllers/note.ts","../../controllers/page.ts","../../controllers/post.ts","../../controllers/project.ts","../../controllers/recently.ts","../../controllers/say.ts","../../controllers/search.ts","../../controllers/snippet.ts","../../controllers/user.ts","../../controllers/index.ts","../../core/attach-request.ts","../../core/client.ts","../../models/aggregate.ts","../../models/comment.ts","../../models/link.ts","../../models/page.ts","../../models/snippet.ts","../../index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["isPlainObject","obj","isObject","Object","prototype","toString","call","getPrototypeOf","attachRawFromOneToAnthor","from","to","$raw","defineProperty","value","enumerable","$request","autoBind","self","include","exclude","filter","key","match","pattern","test","some","object","properties","Set","Reflect","ownKeys","add","getAllProperties","constructor","descriptor","getOwnPropertyDescriptor","bind","AggregateController","[object Object]","client","this","proxy","base","get","size","top","params","options","sort","type","year","timeline","order","asc","desc","stat","RequestError","Error","message","status","path","raw","super","CategoryType","CategoryController","Category","Tag","ids","data","result","values","entries","Array","isArray","join","map","Map","id","toLowerCase","idOrSlug","payload","keys","length","d","assign","destructureData","name","tag","CommentController","refId","pagination","page","ref","post","commentId","reply","BaseCrudController","all","perPage","LinkController","NoteController","latest","password","nid","select","sortBy","sortOrder","list","like","PageController","slug","PostController","idOrCategoryName","arguments","ProjectController","RecentlyController","before","after","SayController","random","SearchController","keyword","SnippetController","reference","UserController","username","login","token","check_logged","replace","allControllers","allContollerNames","attachRequestMethod","target","url","qs","TypeError","URLSearchParams","search","forEach","k","v","set","handleSearchParams","instance","method","HTTPClient","_endpoint","_adaptor","_proxy","buildRoute","initGetClient","ReferenceError","charAt","toUpperCase","slice","configurable","Controller","rest","Client","cl","attach","endpoint","String","startsWith","manager","noop","methods","reflectors","Symbol","toPrimitive","that","route","handler","includes","withBase","resolveFullPath","async","res","request","e","code","statusCode","response","transform","camelcaseKeys","deep","push","Proxy","apply","_","args","x","TimelineType","RefType","CommentState","LinkType","LinkState","EnumPageType","SnippetType","_camelcaseKeys","adapter","controllers","injectControllers"],"mappings":"iZAEO,MAAMA,EAAiBC,GAC5BC,EAASD,IAC+B,oBAAxCE,OAAOC,UAAUC,SAASC,KAAKL,IAC/BE,OAAOI,eAAeN,KAASE,OAAOC,UAUlCF,EAAYD,GAAaA,GAAsB,iBAARA,EAuBhCO,EAA2B,CAACC,EAAWC,KAC7CD,GAASP,EAASQ,KAGvBD,EAAKE,MACHR,OAAOS,eAAeF,EAAI,OAAQ,CAChCG,MAAO,IAAKJ,EAAKE,MACjBG,YAAY,IAEhBL,EAAKM,UACHZ,OAAOS,eAAeF,EAAI,WAAY,CACpCG,MAAO,IAAKJ,EAAKM,UACjBD,YAAY,eC/BFE,EAASC,GAAMC,QAAEA,EAAOC,QAAEA,GAAY,IACpD,MAAMC,EAAUC,IACd,MAAMC,EAASC,GACM,iBAAZA,EAAuBF,IAAQE,EAAUA,EAAQC,KAAKH,GAE/D,OAAIH,EACKA,EAAQO,KAAKH,IAGlBH,IACMA,EAAQM,KAAKH,IAMzB,IAAK,MAAOI,EAAQL,IA/BG,CAACK,IACxB,MAAMC,EAAa,IAAIC,IAEvB,GACE,IAAK,MAAMP,KAAOQ,QAAQC,QAAQJ,GAChCC,EAAWI,IAAI,CAACL,EAAQL,WAGzBK,EAASG,QAAQtB,eAAemB,KACjCA,IAAWvB,OAAOC,WAGpB,OAAOuB,GAmBqBK,CAAiBf,EAAKgB,YAAY7B,WAAY,CACxE,GAAY,gBAARiB,IAA0BD,EAAOC,GACnC,SAGF,MAAMa,EAAaL,QAAQM,yBAAyBT,EAAQL,GACxDa,GAA0C,mBAArBA,EAAWrB,QAClCI,EAAKI,GAAOJ,EAAKI,GAAKe,KAAKnB,IAI/B,OAAOA,QCtBIoB,EAGXC,YAAoBC,GAAAC,YAAAD,EAFpBC,UAAO,YACPA,UAAO,YAELxB,EAASwB,MAEXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAMhCJ,mBACE,OAAOE,KAAKC,MAAME,MAMpBL,OAAOM,EAAO,GACZ,OAAOJ,KAAKC,MAAMI,IAAIF,IAAkB,CAAEG,OAAQ,CAAEF,KAAAA,KAGtDN,YAAYS,GAKV,MAAMC,KAAEA,EAAIC,KAAEA,EAAIC,KAAEA,GAASH,GAAW,GACxC,OAAOP,KAAKC,MAAMU,SAASR,IAA4B,CACrDG,OAAQ,CACNE,KAAMA,IFjDoBI,EEiDMJ,EF/CpC,CACEK,IAAK,EACLC,MAAO,GACPF,IAAU,GE6CRH,KAAAA,EACAC,KAAAA,KFnDyB,IAACE,EE0DhCd,UACE,OAAOE,KAAKC,MAAMc,KAAKZ,aClEda,UAAqBC,MAChCnB,YACEoB,EACOC,EACAC,EACAC,GAEPC,MAAMJ,GAJClB,YAAAmB,EACAnB,UAAAoB,EACApB,SAAAqB,GCFX,IAAYE,yBAAAA,EAAAA,iBAAAA,6CAEVA,uBCwBWC,EAGX1B,YAAoBC,GAAAC,YAAAD,EAFpBC,UAAO,WACPA,UAAO,aAELxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAGhCJ,mBAIE,OAAOE,KAAKC,MAAME,IAAI,CACpBG,OAAQ,CACNG,KAAMc,eAAaE,YAKzB3B,aACE,OAAOE,KAAKC,MAAME,IAA0B,CAC1CG,OAAQ,CACNG,KAAMc,eAAaG,OAWzB5B,wBAAwB6B,GACtB,GAAmB,iBAARA,EAAkB,CAC3B,MAAMC,QAAa5B,KAAKC,MAAME,IAAqB,CACjDG,OAAQ,CACNqB,IAAKA,KAGHE,EAASlE,OAAOmE,OAAOF,EAAKG,SAAS,GAE3C,OADA/D,EAAyB4D,EAAMC,GACxBA,EACF,GAAIG,MAAMC,QAAQN,GAAM,CAC7B,MAAMC,QAAa5B,KAAKC,MAAME,IAAqB,CACjDG,OAAQ,CACNqB,IAAKA,EAAIO,KAAK,QAGZH,EAAUH,GAAMG,QACtB,IAAKA,EACH,MAAM,IAAIf,EACR,uBACA,IACAY,EAAKrD,SAAS6C,KACdQ,GAIJ,MAAMO,EAAM,IAAIC,IACdzE,OAAOoE,QAAQA,GAASI,KAAI,EAAEE,EAAIhE,KAAW,CAACgE,EAAGC,cAAejE,MAIlE,OADAL,EAAyB4D,EAAMO,GACxBA,GAIXrC,4BAA4ByC,GAE1B,MLtF2B,CAACC,IAC9B,GAAuB,iBAAZA,EACT,OAAOA,EAET,GAAgB,OAAZA,EACF,OAAOA,EAGT,MAAMZ,EAAOY,EAAQZ,KAIrB,GAF0BpE,EAAcoE,IAEiB,IAAhCjE,OAAO8E,KAAKD,GAASE,OAAc,CAC1D,MAAMC,EAAIhF,OAAOiF,OAAO,GAAIhB,GAG5B,OADA5D,EAAyBwE,EAASG,GAC3BA,EAGT,OAAOH,GKmEEK,OADW7C,KAAKC,MAAMsC,GAAUpC,OAIzCL,mBAAmBgD,GAUjB,aATkB9C,KAAKC,MAAM6C,GAAM3C,IAGhC,CACDG,OAAQ,CACNyC,IAAK,YC5FAC,EAIXlD,YAA6BC,GAAAC,YAAAD,EAH7BC,UAAO,WACPA,UAAO,UAGLxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAMhCJ,QAAQuC,GACN,OAAOrC,KAAKC,MAAMoC,GAAIlC,MAOxBL,WAAWmD,EAAeC,EAA+B,IACvD,MAAMC,KAAEA,EAAI/C,KAAEA,GAAS8C,EACvB,OAAOlD,KAAKC,MACTmD,IAAIH,GACJ9C,IAAoD,CACnDG,OAAQ,CAAE6C,KAAMA,GAAQ,EAAG/C,KAAMA,GAAQ,MAM/CN,QAAQmD,EAAerB,GACrB,OAAO5B,KAAKC,MAAMgD,GAAOI,KAAmB,CAC1CzB,KAAAA,IAOJ9B,MAAMwD,EAAmB1B,GACvB,OAAO5B,KAAKC,MAAMsD,MAAMD,GAAWD,KAAmB,CACpDzB,KAAAA,WC3DgB4B,EAEpB1D,YAAsBC,GAAAC,YAAAD,EACpBvB,EAASwB,MAEXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAGhCJ,QAAQuC,GACN,OAAOrC,KAAKC,MAAMoC,GAAIlC,MAGxBL,SACE,OAAOE,KAAKC,MAAMwD,IAAItD,MAOxBL,gBAAgBqD,EAAeO,GAC7B,OAAO1D,KAAKC,MAAME,IAAuB,CACvCG,OAAQ,CAAE6C,KAAAA,EAAM/C,KAAMsD,YCZfC,UAAwCH,EAInD1D,YAA+BC,GAC7BuB,MAAMvB,GADuBC,YAAAD,EAK/BC,UAAO,CAAC,OAAQ,UAChBA,UAAO,QAJLxB,EAASwB,aCGA4D,EAIX9D,YAAoBC,GAAAC,YAAAD,EAHpBC,UAAO,QACPA,UAAO,OAGLxB,EAASwB,MAEXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAMhCJ,YACE,OAAOE,KAAKC,MAAM4D,OAAO1D,MAS3BL,YAAYuC,EAAqByB,GAC/B,MAAkB,iBAAPzB,EACFrC,KAAKC,MAAM8D,IAAI1B,EAAGxE,YAAYsC,IAAwB,CAC3DG,OAAQ,CAAEwD,SAAAA,KAGL9D,KAAKC,MAAMoC,GAAIlC,IAAwB,CAAEG,OAAQ,CAAEwD,SAAAA,KAQ9DhE,QAAQqD,EAAO,EAAGO,EAAU,GAAInD,EAA2B,IACzD,MAAMyD,OAAEA,EAAMC,OAAEA,EAAMC,UAAEA,EAASxD,KAAEA,GAASH,EAC5C,OAAOP,KAAKC,MAAME,IAA+B,CAC/CG,OAAQ,CACN6C,KAAAA,EACA/C,KAAMsD,EACNM,OAAQA,GAAQ9B,KAAK,KACrB+B,OAAAA,EACAC,UAAAA,EACAxD,KAAAA,KAQNZ,cAAcuC,EAAYjC,EAAO,GAC/B,OAAOJ,KAAKC,MAAMkE,KAAK9B,GAAIlC,IAGxB,CACDG,OAAQ,CAAEF,KAAAA,KAOdN,OAAOuC,GACL,OAAOrC,KAAKC,MAAMmE,KAAK/B,GAAIlC,aCrElBkE,EACXvE,YAA6BC,GAAAC,YAAAD,EAG7BC,UAAO,QACPA,UAAO,OAHLxB,EAASwB,MAIXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAKhCJ,QAAQqD,EAAO,EAAGO,EAAU,GAAInD,EAA2B,IACzD,MAAMyD,OAAEA,EAAMC,OAAEA,EAAMC,UAAEA,GAAc3D,EACtC,OAAOP,KAAKC,MAAME,IAA+B,CAC/CG,OAAQ,CACN6C,KAAAA,EACA/C,KAAMsD,EACNM,OAAQA,GAAQ9B,KAAK,KACrB+B,OAAAA,EACAC,UAAAA,KAQNpE,QAAQuC,GACN,OAAOrC,KAAKC,MAAMoC,GAAIlC,MAOxBL,UAAUwE,GACR,OAAOtE,KAAKC,MAAMqE,KAAKA,GAAMnE,IAAe,WCpCnCoE,EACXzE,YAAoBC,GAAAC,YAAAD,EAIpBC,UAAO,QAEPA,UAAO,OALLxB,EAASwB,MAOXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAShCJ,QAAQqD,EAAO,EAAGO,EAAU,GAAInD,EAA2B,IACzD,MAAMyD,OAAEA,EAAMC,OAAEA,EAAMC,UAAEA,EAASxD,KAAEA,GAASH,EAC5C,OAAOP,KAAKC,MAAME,IAA+B,CAC/CG,OAAQ,CACN6C,KAAAA,EACA/C,KAAMsD,EACNM,OAAQA,GAAQ9B,KAAK,KACrB+B,OAAAA,EACAC,UAAAA,EACAxD,KAAAA,KAmBNZ,QAAQ0E,EAA0BF,GAChC,OAAwB,GAApBG,UAAU/B,OACL1C,KAAKC,MAAMuE,GAAkBrE,MAE7BH,KAAKC,MAAMuE,EAAXxE,CAA6BsE,GAAMnE,MAO9CL,YACE,OAAOE,KAAKC,MAAM4D,OAAO1D,MAM3BL,SAASuC,GACP,OAAOrC,KAAKC,MAAM,cAAcE,IAAU,CAAEG,OAAQ,CAAE+B,GAAAA,YC5E7CqC,UAA2ClB,EAItD1D,YAA+BC,GAC7BuB,MAAMvB,GADuBC,YAAAD,EAK/BC,UAAO,WACPA,UAAO,UAJLxB,EAASwB,aCJA2E,EAIX7E,YAA6BC,GAAAC,YAAAD,EAH7BC,UAAO,WACPA,UAAO,CAAC,WAAY,aAGlBxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAKhCJ,eACE,OAAOE,KAAKC,MAAM4D,OAAO1D,MAG3BL,SACE,OAAOE,KAAKC,MAAMwD,IAAItD,MAGxBL,QACE8E,EACAC,EACAzE,GAEA,OAAOJ,KAAKC,MAAME,IAA+B,CAC/CG,OAAQ,CACNsE,OAAAA,EACAC,MAAAA,EACAzE,KAAAA,YC/BK0E,UACHtB,EAMR1D,YAAsBC,GACpBuB,MAAMvB,GADcC,YAAAD,EAHtBC,UAAO,OACPA,UAAO,MAILxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAMhCJ,YACE,OAAOE,KAAKC,MAAM8E,OAAO5E,aCXhB6E,EAIXlF,YAA6BC,GAAAC,YAAAD,EAH7BC,UAAO,SACPA,UAAO,SAGLxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MA8BhCJ,OACEW,EACAwE,EACA1E,EAA4C,IAE5C,OAAOP,KAAKC,MAAMQ,GAAMN,IAAI,CAC1BG,OAAQ,CAAE2E,QAAAA,KAAY1E,KAU1BT,gBAAgBmF,EAAiB1E,GAC/B,OAAOP,KAAKC,MAAM,WAAWE,IAuB3B,CAAEG,OAAQ,CAAE2E,QAAAA,KAAY1E,YCzFjB2E,EAIXpF,YAAsBC,GAAAC,YAAAD,EAHtBC,UAAO,WACPA,UAAO,UAGLxB,EAASwB,MAGXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAGhCJ,QAAqBuC,GACnB,OAAOrC,KAAKC,MAAMoC,GAAIlC,MAGxBL,sBAAmCqF,EAAmBrC,GACpD,OAAO9C,KAAKC,MAAMkF,EAAXnF,CAAsB8C,GAAM3C,aChB1BiF,EACXtF,YAA6BC,GAAAC,YAAAD,EAI7BC,UAAO,SAEPA,UAAO,CAAC,OAAQ,UALdxB,EAASwB,MAOXC,YACE,OAAOD,KAAKD,OAAOE,MAAMD,KAAKE,MAGhCJ,gBACE,OAAOE,KAAKC,MAAME,MAGpBL,MAAMuF,EAAkBvB,GACtB,OAAO9D,KAAKC,MAAMqF,MAAMjC,KAAa,CACnCzB,KAAM,CACJyD,SAAAA,EACAvB,SAAAA,KAKNhE,gBAAgByF,GACd,OAAOvF,KAAKC,MAAMuF,aAAarF,IAAsC,CACnEG,OAAQ,CACNiF,MAAO,UAAYA,EAAME,QAAQ,aAAc,cChC1CC,EAAiB,CAC5B7F,EACA2B,EACAwB,EACAW,EACAC,EACAS,EACAE,EACAG,EACAC,EACAG,EACAE,EACAE,EACAE,GAGWO,EAAoB,CAC/B,YACA,WACA,UACA,OACA,OACA,OACA,OACA,UACA,WACA,MACA,SACA,UACA,OAGA,SACA,SACA,sBC9CcC,EAAoDC,GAClElI,OAAOS,eAAeyH,EAAQ,QAAS,CACrCxH,MAAO,SAAUyH,EAAavF,GAE5B,MAAMD,OAAEA,EAAS,IAAOC,EAClBwF,EAcZ,SAA4BtI,GAC1B,IAAKA,GAAsB,iBAARA,EACjB,MAAM,IAAIuI,UAAU,0BAGtB,GAAIvI,aAAewI,gBACjB,OAAOxI,EAAII,WAEb,MAAMqI,EAAS,IAAID,gBAYnB,OAVAtI,OAAOoE,QAAatE,GAAK0I,SAAQ,EAAEC,EAAGC,WAErB,IAANA,GAC+B,kBAAtC1I,OAAOC,UAAUC,SAASC,KAAKuI,IAIjCH,EAAOI,IAAIF,EAAGC,MAGTH,EAAOrI,WAlCC0I,CAAmBjG,GAE9B,OAAOuF,EAAOW,SAASrG,IAAI2F,EAAM,IAAGC,EAAK,IAAG,IAAMA,GAAO,QAG3D,CAAC,MAAO,OAAQ,QAAS,UAAoBI,SAASM,IACtD9I,OAAOS,eAAeyH,EAAQ,KAAOY,EAAQ,CAC3CpI,MAAO,SAAU+C,EAAcb,GAC7B,OAAOsF,EAAOW,SAASC,GAAQrF,EAAMb,SCE7C,MAAMmG,EAMJ5G,YAAoB6G,EAA2BC,GAA3B5G,eAAA2G,EAA2B3G,cAAA4G,EAC7C5G,KAAK2G,UAAYA,EACdlB,QAAQ,OAAQ,IAChBA,QAAQ,YAAa,aACxBzF,KAAK6G,OAAS7G,KAAK8G,WAAW9G,KAAhBA,GAEdA,KAAK+G,gBAELnB,EAAoB5F,MAGdF,gBACN,IAAK,MAAMgD,KAAQ6C,EACjBhI,OAAOS,eAAe4B,KAAM8C,EAAM,CAChChD,MACE,MAAMC,EAASV,QAAQc,IAAIH,KAAM,KAAkB8C,KACnD,IAAK/C,EACH,MAAM,IAAIiH,eACR,GACElE,EAAKmE,OAAO,GAAGC,cAAgBpE,EAAKqE,MAAM,0EAIhD,OAAOpH,GAETqH,cAAc,EACd9I,YAAY,IAOXwB,kBAAkBuH,KAAoBC,GAC3CD,EAAarF,MAAMC,QAAQoF,GAAcA,EAAa,CAACA,KAAeC,GACtE,IAAK,MAAMC,KAAUF,EAAY,CAC/B,MAAMG,EAAK,IAAID,EAAOvH,MAEtB,GAAIgC,MAAMC,QAAQuF,EAAG1E,MACnB,IAAK,MAAMA,KAAQ0E,EAAG1E,KACpB2E,EAAO3J,KAAKkC,KAAM8C,EAAM0E,QAG1BC,EAAO3J,KAAKkC,KAAMwH,EAAG1E,KAAM0E,GAI/B,SAASC,EAAkB3E,EAAc0E,GACvC7J,OAAOS,eAAe4B,KAAM,KAAkB8C,EAAKR,gBAAiB,CAClEnC,IAAG,IACMqH,EAETlJ,YAAY,EACZ8I,cAAc,KAKpBM,eACE,OAAO1H,KAAK2G,UAGdH,eACE,OAAOxG,KAAK4G,SAGP9G,QAAQS,GAMb,OAAQP,KAAa,KAAO2H,OAAOpH,EAAQkG,QAAU,OAAOnE,eAC1D/B,EAAQuF,IACRvF,GAIJN,YACE,OAAOD,KAAK6G,OAGN/G,gBAAgBsB,GAItB,OAHKA,EAAKwG,WAAW,OACnBxG,EAAO,IAAMA,GAER,GAAGpB,KAAK0H,WAAWtG,IAGpBtB,WAAW+H,GAEjB,MAAMC,EAAO,OACPC,EAAU,CAAC,MAAO,OAAQ,SAAU,QAAS,OAC7CC,EAAa,CACjB,WACA,UACA,UACA,cACAC,OAAOC,aAGHC,EAAOnI,KAEb,MAAO,KACL,MAAMoI,EAAQ,CAAC,IAETC,EAAe,CACnBlI,IAAG,CAAC0F,EAAa/C,IACXkF,EAAWM,SAASxF,GACdyF,IACN,GAAIA,EAAU,CACZ,MAAMnH,EAAO+G,EAAKK,gBAAgBJ,EAAMlG,KAAK,MAE7C,OADAkG,EAAM1F,OAAS,EACRtB,EACF,CACL,MAAMA,EAAOgH,EAAMlG,KAAK,KAExB,OADAkG,EAAM1F,OAAS,EACRtB,EAAKwG,WAAW,KAAOxG,EAAO,IAAMA,IAG7C2G,EAAQO,SAASxF,GACZ2F,MAAOlI,IACZ,MAAMuF,EAAMqC,EAAKK,gBAAgBJ,EAAMlG,KAAK,MAE5C,IAAIwG,EADJN,EAAM1F,OAAS,EAEf,IACEgG,QAAYb,EAAQc,QAAQ,CAC1BlC,OAAQ3D,KACLvC,EACHuF,IAAAA,IAEF,MAAO8C,GACP,MAAM,IAAI5H,EACR4H,EAAE1H,QACF0H,EAAEC,MACAD,EAAEzH,QACFyH,EAAEE,YACFF,EAAEG,UAAU5H,QACZyH,EAAEG,UAAUD,YACZF,EAAEG,UAAUF,MACZ,IACF/C,EACA8C,GAIJ,MAAMhH,EAAO8G,EAAI9G,KACjB,IAAKA,EACH,OAAO,KAGT,MAAMoH,EACJhH,MAAMC,QAAQL,IAASpE,EAAcoE,GACjCqH,UAAcrH,EAAM,CAAEsH,MAAM,IAC5BtH,EAyBN,OAvBIoH,GAAkC,iBAAdA,IACtBrL,OAAOS,eAAe4K,EAAW,OAAQ,CACvC7I,IAAG,IACMuI,EAETpK,YAAY,EACZ8I,cAAc,IAKhBzJ,OAAOS,eAAe4K,EAAW,WAAY,CAC3C7I,IAAG,KACM,CACL2F,IAAAA,EACAW,OAAQ3D,EACRvC,QAAAA,IAGJjC,YAAY,KAIT0K,IAGXZ,EAAMe,KAAKrG,GACJ,IAAIsG,MAAMtB,EAAMO,IAGzBgB,MAAK,CAACxD,EAAayD,EAAGC,KACpBnB,EAAMe,QAAQI,EAAK3K,QAAQ4K,GAAoB,OAANA,KAClC,IAAIJ,MAAMtB,EAAMO,KAI3B,OAAO,IAAIe,MAAMtB,EAAMO,KC3L7B,IAAYoB,ECzBAC,EA6BAC,EC9BAC,EAKAC,ECLAC,ECDAC,yBJ2BAN,EAAAA,iBAAAA,qCAEVA,qCC3BUC,EAAAA,YAAAA,2BAEVA,cACAA,qCA0BUC,EAAAA,iBAAAA,yCAEVA,mBACAA,sCCjCUC,EAAAA,aAAAA,qCAEVA,mDAGUC,EAAAA,cAAAA,kCAEVA,qBACAA,yBACAA,8CCTUC,EAAAA,iBAAAA,4BAEVA,cACAA,sCCJUC,EAAAA,gBAAAA,+BAGVA,cACAA,oBCOWd,EAAgBe,wXAJQvM,GAC5BwL,EAAcxL,EAAK,CAAEyL,MAAM,4BNmNoBe,GACtD,MAAO,CAOLvC,EACAnH,KAEA,MAAMR,EAAS,IAAI2G,EAA+BgB,EAAUuC,IACtDC,YAAEA,GAAgB3J,GAAW,GAInC,OAHI2J,GACFnK,EAAOoK,kBAAkBD,GAEpBnK"}
@@ -0,0 +1,69 @@
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 {
6
+ AggregateRoot,
7
+ AggregateStat,
8
+ AggregateTop,
9
+ TimelineData,
10
+ TimelineType,
11
+ } from '~/models/aggregate'
12
+ import { sortOrderToNumber } from '~/utils'
13
+ import { autoBind } from '~/utils/auto-bind'
14
+ import { HTTPClient } from '../core'
15
+
16
+ declare module '../core/client' {
17
+ interface HTTPClient<
18
+ T extends IRequestAdapter = IRequestAdapter,
19
+ ResponseWrapper = unknown,
20
+ > {
21
+ aggregate: AggregateController<ResponseWrapper>
22
+ }
23
+ }
24
+
25
+ export class AggregateController<ResponseWrapper> implements IController {
26
+ base = 'aggregate'
27
+ name = 'aggregate'
28
+ constructor(private client: HTTPClient) {
29
+ autoBind(this)
30
+ }
31
+ public get proxy(): IRequestHandler<ResponseWrapper> {
32
+ return this.client.proxy(this.base)
33
+ }
34
+
35
+ /**
36
+ * 获取聚合数据
37
+ */
38
+ getAggregateData(): RequestProxyResult<AggregateRoot, ResponseWrapper> {
39
+ return this.proxy.get<AggregateRoot>()
40
+ }
41
+
42
+ /**
43
+ * 获取最新发布的内容
44
+ */
45
+ getTop(size = 5) {
46
+ return this.proxy.top.get<AggregateTop>({ params: { size } })
47
+ }
48
+
49
+ getTimeline(options?: {
50
+ sort?: SortOrder
51
+ type?: TimelineType
52
+ year?: number
53
+ }) {
54
+ const { sort, type, year } = options || {}
55
+ return this.proxy.timeline.get<{ data: TimelineData }>({
56
+ params: {
57
+ sort: sort && sortOrderToNumber(sort),
58
+ type,
59
+ year,
60
+ },
61
+ })
62
+ }
63
+ /**
64
+ * 获取聚合数据统计
65
+ */
66
+ getStat() {
67
+ return this.proxy.stat.get<AggregateStat>()
68
+ }
69
+ }
@@ -0,0 +1,32 @@
1
+ import { IRequestHandler, RequestProxyResult } from '~/interfaces/request'
2
+ import { PaginateResult } from '~/models/base'
3
+ import { autoBind } from '~/utils/auto-bind'
4
+ import { HTTPClient } from '../core'
5
+
6
+ export abstract class BaseCrudController<T, ResponseWrapper> {
7
+ base!: string
8
+ constructor(protected client: HTTPClient) {
9
+ autoBind(this)
10
+ }
11
+ public get proxy(): IRequestHandler<ResponseWrapper> {
12
+ return this.client.proxy(this.base)
13
+ }
14
+
15
+ getById(id: string): RequestProxyResult<T, ResponseWrapper> {
16
+ return this.proxy(id).get<T>()
17
+ }
18
+
19
+ getAll() {
20
+ return this.proxy.all.get<{ data: T[] }>()
21
+ }
22
+ /**
23
+ * 带分页的查询
24
+ * @param page
25
+ * @param perPage
26
+ */
27
+ getAllPaginated(page?: number, perPage?: number) {
28
+ return this.proxy.get<PaginateResult<T>>({
29
+ params: { page, size: perPage },
30
+ })
31
+ }
32
+ }
@@ -0,0 +1,118 @@
1
+ import { IRequestAdapter } from '~/interfaces/adapter'
2
+ import { IController } from '~/interfaces/controller'
3
+ import {
4
+ IRequestHandler,
5
+ RequestProxyResult,
6
+ ResponseProxyExtraRaw,
7
+ } from '~/interfaces/request'
8
+ import { attachRawFromOneToAnthor, destructureData } from '~/utils'
9
+ import { autoBind } from '~/utils/auto-bind'
10
+ import { HTTPClient } from '../core/client'
11
+ import { RequestError } from '../core/error'
12
+ import {
13
+ CategoryEntries,
14
+ CategoryModel,
15
+ CategoryType,
16
+ CategoryWithChildrenModel,
17
+ TagModel,
18
+ } from '../models/category'
19
+ import { PostModel } from '../models/post'
20
+
21
+ declare module '../core/client' {
22
+ interface HTTPClient<
23
+ T extends IRequestAdapter = IRequestAdapter,
24
+ ResponseWrapper = unknown,
25
+ > {
26
+ category: CategoryController<ResponseWrapper>
27
+ }
28
+ }
29
+
30
+ export class CategoryController<ResponseWrapper> implements IController {
31
+ name = 'category'
32
+ base = 'categories'
33
+ constructor(private client: HTTPClient) {
34
+ autoBind(this)
35
+ }
36
+
37
+ public get proxy(): IRequestHandler<ResponseWrapper> {
38
+ return this.client.proxy(this.base)
39
+ }
40
+
41
+ getAllCategories(): RequestProxyResult<
42
+ { data: CategoryModel[] },
43
+ ResponseWrapper
44
+ > {
45
+ return this.proxy.get({
46
+ params: {
47
+ type: CategoryType.Category,
48
+ },
49
+ })
50
+ }
51
+
52
+ getAllTags(): RequestProxyResult<{ data: TagModel[] }, ResponseWrapper> {
53
+ return this.proxy.get<{ data: TagModel[] }>({
54
+ params: {
55
+ type: CategoryType.Tag,
56
+ },
57
+ })
58
+ }
59
+
60
+ async getCategoryDetail(
61
+ id: string,
62
+ ): Promise<ResponseProxyExtraRaw<CategoryWithChildrenModel>>
63
+ async getCategoryDetail(
64
+ ids: string[],
65
+ ): Promise<ResponseProxyExtraRaw<Map<string, CategoryWithChildrenModel>>>
66
+ async getCategoryDetail(ids: string | string[]): Promise<any> {
67
+ if (typeof ids === 'string') {
68
+ const data = await this.proxy.get<CategoryEntries>({
69
+ params: {
70
+ ids: ids,
71
+ },
72
+ })
73
+ const result = Object.values(data.entries)[0]
74
+ attachRawFromOneToAnthor(data, result)
75
+ return result
76
+ } else if (Array.isArray(ids)) {
77
+ const data = await this.proxy.get<CategoryEntries>({
78
+ params: {
79
+ ids: ids.join(','),
80
+ },
81
+ })
82
+ const entries = data?.entries
83
+ if (!entries) {
84
+ throw new RequestError(
85
+ 'data structure error',
86
+ 500,
87
+ data.$request.path,
88
+ data,
89
+ )
90
+ }
91
+
92
+ const map = new Map<string, CategoryWithChildrenModel>(
93
+ Object.entries(entries).map(([id, value]) => [id.toLowerCase(), value]),
94
+ )
95
+
96
+ attachRawFromOneToAnthor(data, map)
97
+ return map
98
+ }
99
+ }
100
+
101
+ async getCategoryByIdOrSlug(idOrSlug: string) {
102
+ const res = await this.proxy(idOrSlug).get<CategoryWithChildrenModel>()
103
+ return destructureData(res) as typeof res
104
+ }
105
+
106
+ async getTagByName(name: string) {
107
+ const res = await this.proxy(name).get<{
108
+ tag: string
109
+ data: Pick<PostModel, 'id' | 'title' | 'slug' | 'category' | 'created'>[]
110
+ }>({
111
+ params: {
112
+ tag: 1,
113
+ },
114
+ })
115
+
116
+ return res
117
+ }
118
+ }
@@ -0,0 +1,68 @@
1
+ import { IRequestAdapter } from '~/interfaces/adapter'
2
+ import { IController } from '~/interfaces/controller'
3
+ import { PaginationParams } from '~/interfaces/params'
4
+ import { IRequestHandler } from '~/interfaces/request'
5
+ import { PaginateResult } from '~/models/base'
6
+ import { CommentModel } from '~/models/comment'
7
+ import { autoBind } from '~/utils/auto-bind'
8
+ import { HTTPClient } from '../core'
9
+ import { CommentDto } from '../dtos/comment'
10
+
11
+ declare module '../core/client' {
12
+ interface HTTPClient<
13
+ T extends IRequestAdapter = IRequestAdapter,
14
+ ResponseWrapper = unknown,
15
+ > {
16
+ comment: CommentController<ResponseWrapper>
17
+ }
18
+ }
19
+
20
+ export class CommentController<ResponseWrapper> implements IController {
21
+ base = 'comments'
22
+ name = 'comment'
23
+
24
+ constructor(private readonly client: HTTPClient) {
25
+ autoBind(this)
26
+ }
27
+
28
+ get proxy(): IRequestHandler<ResponseWrapper> {
29
+ return this.client.proxy(this.base)
30
+ }
31
+
32
+ /**
33
+ * 根据 comment id 获取评论, 包括子评论
34
+ */
35
+ getById(id: string) {
36
+ return this.proxy(id).get<CommentModel & { ref: string }>()
37
+ }
38
+
39
+ /**
40
+ * 获取文章的评论列表
41
+ * @param refId 文章 Id
42
+ */
43
+ getByRefId(refId: string, pagination: PaginationParams = {}) {
44
+ const { page, size } = pagination
45
+ return this.proxy
46
+ .ref(refId)
47
+ .get<PaginateResult<CommentModel & { ref: string }>>({
48
+ params: { page: page || 1, size: size || 10 },
49
+ })
50
+ }
51
+ /**
52
+ * 评论
53
+ */
54
+ comment(refId: string, data: CommentDto) {
55
+ return this.proxy(refId).post<CommentModel>({
56
+ data,
57
+ })
58
+ }
59
+
60
+ /**
61
+ * 回复评论
62
+ */
63
+ reply(commentId: string, data: CommentDto) {
64
+ return this.proxy.reply(commentId).post<CommentModel>({
65
+ data,
66
+ })
67
+ }
68
+ }
@@ -0,0 +1,66 @@
1
+ import { AggregateController } from './aggregate'
2
+ import { CategoryController } from './category'
3
+ import { CommentController } from './comment'
4
+ import { LinkController } from './link'
5
+ import { NoteController } from './note'
6
+ import { PageController } from './page'
7
+ import { PostController } from './post'
8
+ import { ProjectController } from './project'
9
+ import { RecentlyController } from './recently'
10
+ import { SayController } from './say'
11
+ import { SearchController } from './search'
12
+ import { SnippetController } from './snippet'
13
+ import { UserController } from './user'
14
+
15
+ export const allControllers = [
16
+ AggregateController,
17
+ CategoryController,
18
+ CommentController,
19
+ LinkController,
20
+ NoteController,
21
+ PageController,
22
+ PostController,
23
+ ProjectController,
24
+ RecentlyController,
25
+ SayController,
26
+ SearchController,
27
+ SnippetController,
28
+ UserController,
29
+ ]
30
+
31
+ export const allContollerNames = [
32
+ 'aggregate',
33
+ 'category',
34
+ 'comment',
35
+ 'link',
36
+ 'note',
37
+ 'page',
38
+ 'post',
39
+ 'project',
40
+ 'recently',
41
+ 'say',
42
+ 'search',
43
+ 'snippet',
44
+ 'user',
45
+
46
+ // alias,
47
+ 'friend',
48
+ 'master',
49
+ 'shorthand',
50
+ ] as const
51
+
52
+ export {
53
+ AggregateController,
54
+ CategoryController,
55
+ CommentController,
56
+ LinkController,
57
+ NoteController,
58
+ PageController,
59
+ PostController,
60
+ ProjectController,
61
+ RecentlyController,
62
+ SayController,
63
+ SearchController,
64
+ SnippetController,
65
+ UserController,
66
+ }
@@ -0,0 +1,28 @@
1
+ import { IRequestAdapter } from '~/interfaces/adapter'
2
+ import { LinkModel } from '~/models/link'
3
+ import { autoBind } from '~/utils/auto-bind'
4
+ import { HTTPClient } from '../core'
5
+ import { BaseCrudController } from './base'
6
+
7
+ declare module '../core/client' {
8
+ interface HTTPClient<
9
+ T extends IRequestAdapter = IRequestAdapter,
10
+ ResponseWrapper = unknown,
11
+ > {
12
+ link: LinkController<ResponseWrapper>
13
+ friend: LinkController<ResponseWrapper>
14
+ }
15
+ }
16
+
17
+ export class LinkController<ResponseWrapper> extends BaseCrudController<
18
+ LinkModel,
19
+ ResponseWrapper
20
+ > {
21
+ constructor(protected readonly client: HTTPClient) {
22
+ super(client)
23
+ autoBind(this)
24
+ }
25
+
26
+ name = ['link', 'friend']
27
+ base = 'links'
28
+ }
@@ -0,0 +1,96 @@
1
+ import { IRequestAdapter } from '~/interfaces/adapter'
2
+ import { IController } from '~/interfaces/controller'
3
+ import { IRequestHandler } from '~/interfaces/request'
4
+ import { SelectFields } from '~/interfaces/types'
5
+ import { PaginateResult } from '~/models/base'
6
+ import { NoteModel, NoteWrappedPayload } from '~/models/note'
7
+ import { autoBind } from '~/utils/auto-bind'
8
+ import { HTTPClient } from '../core/client'
9
+
10
+ declare module '../core/client' {
11
+ interface HTTPClient<
12
+ T extends IRequestAdapter = IRequestAdapter,
13
+ ResponseWrapper = unknown,
14
+ > {
15
+ note: NoteController<ResponseWrapper>
16
+ }
17
+ }
18
+
19
+ export type NoteListOptions = {
20
+ select?: SelectFields<keyof NoteModel>
21
+ year?: number
22
+ sortBy?: 'weather' | 'mood' | 'title' | 'created' | 'modified'
23
+ sortOrder?: 1 | -1
24
+ }
25
+
26
+ export class NoteController<ResponseWrapper> implements IController {
27
+ base = 'notes'
28
+ name = 'note'
29
+
30
+ constructor(private client: HTTPClient) {
31
+ autoBind(this)
32
+ }
33
+ get proxy(): IRequestHandler<ResponseWrapper> {
34
+ return this.client.proxy(this.base)
35
+ }
36
+
37
+ /**
38
+ * 最新日记
39
+ */
40
+ getLatest() {
41
+ return this.proxy.latest.get<NoteWrappedPayload>()
42
+ }
43
+
44
+ /**
45
+ * 获取一篇日记
46
+ * @param id id | nid
47
+ * @param password 访问密码
48
+ */
49
+
50
+ getNoteById(id: string | number, password?: string) {
51
+ if (typeof id === 'number') {
52
+ return this.proxy.nid(id.toString()).get<NoteWrappedPayload>({
53
+ params: { password },
54
+ })
55
+ } else {
56
+ return this.proxy(id).get<NoteWrappedPayload>({ params: { password } })
57
+ }
58
+ }
59
+
60
+ /**
61
+ * 日记列表分页
62
+ */
63
+
64
+ getList(page = 1, perPage = 10, options: NoteListOptions = {}) {
65
+ const { select, sortBy, sortOrder, year } = options
66
+ return this.proxy.get<PaginateResult<NoteModel>>({
67
+ params: {
68
+ page,
69
+ size: perPage,
70
+ select: select?.join(' '),
71
+ sortBy,
72
+ sortOrder,
73
+ year,
74
+ },
75
+ })
76
+ }
77
+
78
+ /**
79
+ * 获取当前日记的上下各 n / 2 篇日记
80
+ */
81
+ getMiddleList(id: string, size = 5) {
82
+ return this.proxy.list(id).get<{
83
+ data: Pick<NoteModel, 'id' | 'title' | 'nid' | 'created'>[]
84
+ size: number
85
+ }>({
86
+ params: { size },
87
+ })
88
+ }
89
+
90
+ /**
91
+ * 喜欢这篇日记
92
+ */
93
+ likeIt(id: string | number) {
94
+ return this.proxy.like(id).get<never>()
95
+ }
96
+ }
@@ -0,0 +1,64 @@
1
+ import { IRequestAdapter } from '~/interfaces/adapter'
2
+ import { IController } from '~/interfaces/controller'
3
+ import { IRequestHandler } from '~/interfaces/request'
4
+ import { SelectFields } from '~/interfaces/types'
5
+ import { PaginateResult } from '~/models/base'
6
+ import { PageModel } from '~/models/page'
7
+ import { autoBind } from '~/utils/auto-bind'
8
+ import { HTTPClient } from '../core'
9
+
10
+ declare module '../core/client' {
11
+ interface HTTPClient<
12
+ T extends IRequestAdapter = IRequestAdapter,
13
+ ResponseWrapper = unknown,
14
+ > {
15
+ page: PageController<ResponseWrapper>
16
+ }
17
+ }
18
+
19
+ export type PageListOptions = {
20
+ select?: SelectFields<keyof PageModel>
21
+ sortBy?: 'order' | 'subtitle' | 'title' | 'created' | 'modified'
22
+ sortOrder?: 1 | -1
23
+ }
24
+
25
+ export class PageController<ResponseWrapper> implements IController {
26
+ constructor(private readonly client: HTTPClient) {
27
+ autoBind(this)
28
+ }
29
+ base = 'pages'
30
+ name = 'page'
31
+ get proxy(): IRequestHandler<ResponseWrapper> {
32
+ return this.client.proxy(this.base)
33
+ }
34
+ /**
35
+ * 页面列表
36
+ */
37
+ getList(page = 1, perPage = 10, options: PageListOptions = {}) {
38
+ const { select, sortBy, sortOrder } = options
39
+ return this.proxy.get<PaginateResult<PageModel>>({
40
+ params: {
41
+ page,
42
+ size: perPage,
43
+ select: select?.join(' '),
44
+ sortBy,
45
+ sortOrder,
46
+ },
47
+ })
48
+ }
49
+
50
+ /**
51
+ * 页面详情
52
+ */
53
+ getById(id: string) {
54
+ return this.proxy(id).get<PageModel>()
55
+ }
56
+ /**
57
+ * 根据路径获取页面
58
+ * @param slug 路径
59
+ * @returns
60
+ */
61
+ getBySlug(slug: string) {
62
+ return this.proxy.slug(slug).get<PageModel>({})
63
+ }
64
+ }