@mx-space/api-client 0.10.13 → 1.0.0-alpha.2

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 (84) hide show
  1. package/adaptors/axios.ts +4 -1
  2. package/adaptors/ky.ts +76 -0
  3. package/adaptors/umi-request.ts +4 -1
  4. package/build/{index.cjs.js → index.cjs} +40 -25
  5. package/build/index.cjs.map +1 -0
  6. package/build/{index.esm.js → index.js} +39 -20
  7. package/build/index.js.map +1 -0
  8. package/build/index.min.cjs +2 -0
  9. package/build/index.min.cjs.map +1 -0
  10. package/build/index.min.js +2 -0
  11. package/build/index.min.js.map +1 -0
  12. package/build/index.umd.js +43 -26
  13. package/build/index.umd.js.map +1 -1
  14. package/build/index.umd.min.js +1 -1
  15. package/build/index.umd.min.js.map +1 -1
  16. package/core/client.ts +9 -5
  17. package/esm/adaptors/axios.d.ts +1 -0
  18. package/esm/adaptors/axios.js +3 -1
  19. package/esm/adaptors/axios.js.map +1 -1
  20. package/esm/adaptors/ky.d.ts +23 -0
  21. package/esm/adaptors/ky.js +61 -0
  22. package/esm/adaptors/ky.js.map +1 -0
  23. package/esm/adaptors/umi-request.d.ts +1 -0
  24. package/esm/adaptors/umi-request.js +3 -1
  25. package/esm/adaptors/umi-request.js.map +1 -1
  26. package/esm/controllers/category.d.ts +14 -14
  27. package/esm/core/client.d.ts +1 -1
  28. package/esm/core/client.js +9 -4
  29. package/esm/core/client.js.map +1 -1
  30. package/esm/index.d.ts +3 -3
  31. package/esm/index.js +3 -6
  32. package/esm/index.js.map +1 -1
  33. package/esm/interfaces/client.d.ts +8 -4
  34. package/esm/models/base.d.ts +1 -1
  35. package/esm/utils/camelcase-keys.d.ts +6 -0
  36. package/esm/utils/camelcase-keys.js +23 -0
  37. package/esm/utils/camelcase-keys.js.map +1 -0
  38. package/esm/vitest.config.js +1 -0
  39. package/esm/vitest.config.js.map +1 -1
  40. package/index.ts +3 -6
  41. package/interfaces/client.ts +6 -3
  42. package/lib/adaptors/axios.d.ts +1 -0
  43. package/lib/adaptors/axios.js +3 -1
  44. package/lib/adaptors/axios.js.map +1 -1
  45. package/lib/adaptors/ky.d.ts +23 -0
  46. package/lib/adaptors/ky.js +68 -0
  47. package/lib/adaptors/ky.js.map +1 -0
  48. package/lib/adaptors/umi-request.d.ts +1 -0
  49. package/lib/adaptors/umi-request.js +3 -1
  50. package/lib/adaptors/umi-request.js.map +1 -1
  51. package/lib/controllers/category.d.ts +14 -14
  52. package/lib/core/client.d.ts +1 -1
  53. package/lib/core/client.js +9 -7
  54. package/lib/core/client.js.map +1 -1
  55. package/lib/index.d.ts +3 -3
  56. package/lib/index.js +8 -14
  57. package/lib/index.js.map +1 -1
  58. package/lib/interfaces/client.d.ts +8 -4
  59. package/lib/models/base.d.ts +1 -1
  60. package/lib/utils/camelcase-keys.d.ts +6 -0
  61. package/lib/utils/camelcase-keys.js +28 -0
  62. package/lib/utils/camelcase-keys.js.map +1 -0
  63. package/lib/vitest.config.js +1 -0
  64. package/lib/vitest.config.js.map +1 -1
  65. package/models/base.ts +1 -1
  66. package/package.json +20 -17
  67. package/readme.md +9 -0
  68. package/types/adaptors/axios.d.ts +1 -0
  69. package/types/adaptors/ky.d.ts +23 -0
  70. package/types/adaptors/umi-request.d.ts +1 -0
  71. package/types/controllers/category.d.ts +14 -14
  72. package/types/core/client.d.ts +1 -1
  73. package/types/index.d.ts +3 -3
  74. package/types/interfaces/client.d.ts +8 -4
  75. package/types/models/base.d.ts +1 -1
  76. package/types/utils/camelcase-keys.d.ts +6 -0
  77. package/utils/camelcase-keys.ts +26 -0
  78. package/vitest.config.ts +3 -0
  79. package/build/index.cjs.js.map +0 -1
  80. package/build/index.cjs.min.js +0 -2
  81. package/build/index.cjs.min.js.map +0 -1
  82. package/build/index.esm.js.map +0 -1
  83. package/build/index.esm.min.js +0 -2
  84. package/build/index.esm.min.js.map +0 -1
@@ -1,2 +0,0 @@
1
- import t from"camelcase-keys";const e=t=>r(t)&&"[object Object]"===Object.prototype.toString.call(t)&&Object.getPrototypeOf(t)===Object.prototype,r=t=>t&&"object"==typeof t,s=(t,e)=>{t&&r(e)&&(t.$raw&&Object.defineProperty(e,"$raw",{value:{...t.$raw},enumerable:!1}),t.$request&&Object.defineProperty(e,"$request",{value:{...t.$request},enumerable:!1}))};function o(t,{include:e,exclude:r}={}){const s=t=>{const s=e=>"string"==typeof e?t===e:e.test(t);return e?e.some(s):!r||!r.some(s)};for(const[e,r]of(t=>{const e=new Set;do{for(const r of Reflect.ownKeys(t))e.add([t,r])}while((t=Reflect.getPrototypeOf(t))&&t!==Object.prototype);return e})(t.constructor.prototype)){if("constructor"===r||!s(r))continue;const o=Reflect.getOwnPropertyDescriptor(e,r);o&&"function"==typeof o.value&&(t[r]=t[r].bind(t))}return t}class n{constructor(t){this.client=t,this.base="aggregate",this.name="aggregate",o(this)}get proxy(){return this.client.proxy(this.base)}getAggregateData(){return this.proxy.get()}getTop(t=5){return this.proxy.top.get({params:{size:t}})}getTimeline(t){const{sort:e,type:r,year:s}=t||{};return this.proxy.timeline.get({params:{sort:e&&(o=e,{asc:1,desc:-1}[o]||1),type:r,year:s}});var o}getStat(){return this.proxy.stat.get()}}class i extends Error{constructor(t,e,r,s){super(t),this.status=e,this.path=r,this.raw=s}}var a;!function(t){t[t.Category=0]="Category",t[t.Tag=1]="Tag"}(a||(a={}));class c{constructor(t){this.client=t,this.name="category",this.base="categories",o(this)}get proxy(){return this.client.proxy(this.base)}getAllCategories(){return this.proxy.get({params:{type:a.Category}})}getAllTags(){return this.proxy.get({params:{type:a.Tag}})}async getCategoryDetail(t){if("string"==typeof t){const e=await this.proxy.get({params:{ids:t}}),r=Object.values(e.entries)[0];return s(e,r),r}if(Array.isArray(t)){const e=await this.proxy.get({params:{ids:t.join(",")}}),r=e?.entries;if(!r)throw new i("data structure error",500,e.$request.path,e);const o=new Map(Object.entries(r).map((([t,e])=>[t.toLowerCase(),e])));return s(e,o),o}}async getCategoryByIdOrSlug(t){return(t=>{if("object"!=typeof t)return t;if(null===t)return t;const r=t.data;if(e(r)&&1===Object.keys(t).length){const e=Object.assign({},r);return s(t,e),e}return t})(await this.proxy(t).get())}async getTagByName(t){return await this.proxy(t).get({params:{tag:1}})}}class p{constructor(t){this.client=t,this.base="comments",this.name="comment",o(this)}get proxy(){return this.client.proxy(this.base)}getById(t){return this.proxy(t).get()}getByRefId(t,e={}){const{page:r,size:s}=e;return this.proxy.ref(t).get({params:{page:r||1,size:s||10}})}comment(t,e){return this.proxy(t).post({data:e})}reply(t,e){return this.proxy.reply(t).post({data:e})}}class h{constructor(t){this.client=t,o(this)}get proxy(){return this.client.proxy(this.base)}getById(t){return this.proxy(t).get()}getAll(){return this.proxy.all.get()}getAllPaginated(t,e,r){return this.proxy.get({params:{page:t,size:e,...r}})}}class u extends h{constructor(t){super(t),this.client=t,this.name=["link","friend"],this.base="links",o(this)}async canApplyLink(){const{can:t}=await this.proxy.audit.get();return t}async applyLink(t){return await this.proxy.audit.post({data:t})}}class l{constructor(t){this.client=t,this.base="notes",this.name="note",o(this)}get proxy(){return this.client.proxy(this.base)}getLatest(){return this.proxy.latest.get()}getNoteById(...t){const[e,r,s=!1]=t;return"number"==typeof e?this.proxy.nid(e.toString()).get({params:{password:r,single:s?"1":void 0}}):this.proxy(e).get()}getList(t=1,e=10,r={}){const{select:s,sortBy:o,sortOrder:n,year:i}=r;return this.proxy.get({params:{page:t,size:e,select:s?.join(" "),sortBy:o,sortOrder:n,year:i}})}getMiddleList(t,e=5){return this.proxy.list(t).get({params:{size:e}})}likeIt(t){return this.proxy.like(t).get()}getNoteByTopicId(t,e=1,r=10,s={}){return this.proxy.topics(t).get({params:{page:e,size:r,...s}})}}class g{constructor(t){this.client=t,this.base="pages",this.name="page",o(this)}get proxy(){return this.client.proxy(this.base)}getList(t=1,e=10,r={}){const{select:s,sortBy:o,sortOrder:n}=r;return this.proxy.get({params:{page:t,size:e,select:s?.join(" "),sortBy:o,sortOrder:n}})}getById(t){return this.proxy(t).get()}getBySlug(t){return this.proxy.slug(t).get({})}}class y{constructor(t){this.client=t,this.base="posts",this.name="post",o(this)}get proxy(){return this.client.proxy(this.base)}getList(t=1,e=10,r={}){const{select:s,sortBy:o,sortOrder:n,year:i}=r;return this.proxy.get({params:{page:t,size:e,select:s?.join(" "),sortBy:o,sortOrder:n,year:i}})}getPost(t,e){return 1==arguments.length?this.proxy(t).get():this.proxy(t)(e).get()}getLatest(){return this.proxy.latest.get()}thumbsUp(t){return this.proxy("_thumbs-up").get({params:{id:t}})}}class d extends h{constructor(t){super(t),this.client=t,this.base="projects",this.name="project",o(this)}}class m{constructor(t){this.client=t,this.base="recently",this.name=["recently","shorthand"],o(this)}get proxy(){return this.client.proxy(this.base)}getLatestOne(){return this.proxy.latest.get()}getAll(){return this.proxy.all.get()}getList(t,e,r){return this.proxy.get({params:{before:t,after:e,size:r}})}}class x extends h{constructor(t){super(t),this.client=t,this.base="says",this.name="say",o(this)}get proxy(){return this.client.proxy(this.base)}getRandom(){return this.proxy.random.get()}}class f{constructor(t){this.client=t,this.base="search",this.name="search",o(this)}get proxy(){return this.client.proxy(this.base)}search(t,e,r={}){return this.proxy(t).get({params:{keyword:e,...r}})}searchByAlgolia(t,e){return this.proxy("algolia").get({params:{keyword:t,...e}})}}class b{constructor(t){this.client=t,this.base="serverless",this.name="serverless",o(this)}get proxy(){return this.client.proxy(this.base)}getByReferenceAndName(t,e){return this.proxy(t)(e).get()}}class j{constructor(t){this.client=t,this.base="snippets",this.name="snippet",o(this)}get proxy(){return this.client.proxy(this.base)}getByReferenceAndName(t,e){return this.proxy(t)(e).get()}}class w extends h{constructor(t){super(t),this.client=t,this.base="topics",this.name="topic",o(this)}get proxy(){return this.client.proxy(this.base)}getTopicBySlug(t){return this.proxy.slug(t).get()}}class O{constructor(t){this.client=t,this.base="master",this.name=["user","master"],o(this)}get proxy(){return this.client.proxy(this.base)}getMasterInfo(){return this.proxy.get()}login(t,e){return this.proxy.login.post({data:{username:t,password:e}})}loginWithToken(t){return this.proxy.login.put({params:t?{token:`bearer ${t.replace(/^Bearer\s/i,"")}`}:void 0})}checkTokenValid(t){return this.proxy.check_logged.get({params:{token:`bearer ${t.replace(/^Bearer\s/i,"")}`}})}}const $=[n,c,p,u,l,g,y,d,m,w,x,f,j,b,O],P=["aggregate","category","comment","link","note","page","post","project","topic","recently","say","search","snippet","serverless","user","friend","master","shorthand"],B=(t,e)=>(e.startsWith("/")||(e=`/${e}`),`${t}${e}`);function A(t){Object.defineProperty(t,"$$get",{value(e,r){const{params:s={},...o}=r,n=function(t){if(!t&&"object"!=typeof t)throw new TypeError("params must be object.");if(t instanceof URLSearchParams)return t.toString();const e=new URLSearchParams;return Object.entries(t).forEach((([t,r])=>{void 0!==r&&"[object Null]"!==Object.prototype.toString.call(r)&&e.set(t,r)})),e.toString()}(s);return t.instance.get(`${e}${n?`?${n}`:""}`,o)}}),["put","post","patch","delete"].forEach((e=>{Object.defineProperty(t,`$$${e}`,{value:(r,s)=>t.instance[e](r,s)})}))}class C{constructor(t,e,r={}){this._endpoint=t,this._adaptor=e,this.options=r,this._endpoint=t.replace(/\/*$/,"").replace("localhost","127.0.0.1"),this._proxy=this.buildRoute(this)(),this.initGetClient(),A(this)}initGetClient(){for(const t of P)Object.defineProperty(this,t,{get(){const e=Reflect.get(this,`_$${t}`);if(!e)throw new ReferenceError(`${t.charAt(0).toUpperCase()+t.slice(1)} Client not inject yet, please inject with client.injectClients(...)`);return e},configurable:!1,enumerable:!1})}injectControllers(t,...e){t=Array.isArray(t)?t:[t,...e];for(const e of t){const t=new e(this);if(Array.isArray(t.name))for(const e of t.name)r.call(this,e,t);else r.call(this,t.name,t)}function r(t,e){Object.defineProperty(this,`_$${t.toLowerCase()}`,{get:()=>e,enumerable:!1,configurable:!1})}}get endpoint(){return this._endpoint}get instance(){return this._adaptor}request(t){return this[`$$${String(t.method||"get").toLowerCase()}`](t.url,t)}get proxy(){return this._proxy}buildRoute(r){const s=()=>{},o=["get","post","delete","patch","put"],n=["toString","valueOf","inspect","constructor",Symbol.toPrimitive],a=this;return()=>{const c=[""],p={get:(h,u)=>n.includes(u)?t=>{if(t){const t=B(a.endpoint,c.join("/"));return c.length=0,t}{const t=c.join("/");return c.length=0,t.startsWith("/")?t:`/${t}`}}:o.includes(u)?async s=>{const o=B(a.endpoint,c.join("/"));let n;c.length=0;try{n=await r.request({method:u,...s,url:o})}catch(t){let e=t.message,r=t.code||t.status||t.statusCode||t.response?.status||t.response?.statusCode||t.response?.code||500;if(a.options.getCodeMessageFromException){const s=a.options.getCodeMessageFromException(t);e=s.message||e,r=s.code||r}throw new i(e,r,o,t)}const p=n.data;if(!p)return null;const h=Array.isArray(p)||e(p)?t(p,{deep:!0}):p;return h&&"object"==typeof h&&(Object.defineProperty(h,"$raw",{get:()=>n,enumerable:!1,configurable:!1}),Object.defineProperty(h,"$request",{get:()=>({url:o,method:u,options:s}),enumerable:!1})),h}:(c.push(u),new Proxy(s,p)),apply:(t,e,r)=>(c.push(...r.filter((t=>null!==t))),new Proxy(s,p))};return new Proxy(s,p)}}}function k(t){return(e,r)=>{const s=new C(e,t,r),{controllers:o}=r||{};return o&&s.injectControllers(o),s}}var v,L,S,R,N,T,_,z;!function(t){t[t.Post=0]="Post",t[t.Note=1]="Note"}(v||(v={})),function(t){t.Page="Page",t.Post="Post",t.Note="Note"}(L||(L={})),function(t){t[t.Unread=0]="Unread",t[t.Read=1]="Read",t[t.Junk=2]="Junk"}(S||(S={})),function(t){t[t.Friend=0]="Friend",t[t.Collection=1]="Collection"}(R||(R={})),function(t){t[t.Pass=0]="Pass",t[t.Audit=1]="Audit",t[t.Outdate=2]="Outdate",t[t.Banned=3]="Banned"}(N||(N={})),function(t){t.md="md",t.html="html",t.frame="frame"}(T||(T={})),function(t){t.Post="Post",t.Note="Note",t.Page="Page"}(_||(_={})),function(t){t.JSON="json",t.Function="function",t.Text="text",t.YAML="yaml"}(z||(z={}));const I=t=>q(t,{deep:!0}),q=t;export{n as AggregateController,c as CategoryController,a as CategoryType,p as CommentController,S as CommentState,T as EnumPageType,u as LinkController,N as LinkState,R as LinkType,l as NoteController,g as PageController,y as PostController,d as ProjectController,m as RecentlyController,_ as RecentlyRefTypes,L as RefType,i as RequestError,x as SayController,f as SearchController,b as ServerlessController,j as SnippetController,z as SnippetType,v as TimelineType,w as TopicController,O as UserController,P as allContollerNames,$ as allControllers,q as camelcaseKeys,I as camelcaseKeysDeep,k as createClient};
2
- //# sourceMappingURL=index.esm.min.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.esm.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/severless.ts","../../controllers/snippet.ts","../../controllers/topic.ts","../../controllers/user.ts","../../controllers/index.ts","../../utils/path.ts","../../core/attach-request.ts","../../core/client.ts","../../models/aggregate.ts","../../models/comment.ts","../../models/link.ts","../../models/page.ts","../../models/recently.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,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","base","name","proxy","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","tag","CommentController","refId","pagination","page","ref","post","commentId","reply","BaseCrudController","all","perPage","sortOption","LinkController","can","audit","NoteController","latest","rest","password","singleResult","nid","single","undefined","select","sortBy","sortOrder","list","like","topicId","sortOptions","topics","PageController","slug","PostController","idOrCategoryName","arguments","ProjectController","RecentlyController","before","after","SayController","random","SearchController","keyword","ServerlessController","reference","SnippetController","TopicController","UserController","username","login","token","put","replace","check_logged","allControllers","allContollerNames","resolveFullPath","endpoint","startsWith","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","Client","cl","attach","String","manager","noop","methods","reflectors","Symbol","toPrimitive","that","route","handler","includes","withBase","async","res","request","e","code","statusCode","response","getCodeMessageFromException","errorInfo","transform","camelcaseKeys","deep","push","Proxy","apply","_","args","x","createClient","adapter","controllers","injectControllers","TimelineType","RefType","CommentState","LinkType","LinkState","EnumPageType","RecentlyRefTypes","SnippetType","camelcaseKeysDeep","_camelcaseKeys"],"mappings":"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"}