@mx-space/api-client 0.2.0 → 0.3.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.
- package/build/index.cjs.js +182 -31
- package/build/index.cjs.js.map +1 -1
- package/build/index.cjs.min.js +1 -1
- package/build/index.cjs.min.js.map +1 -1
- package/build/index.d.ts +194 -38
- package/build/index.esm.js +168 -28
- package/build/index.esm.js.map +1 -1
- package/build/index.esm.min.js +1 -1
- package/build/index.esm.min.js.map +1 -1
- package/build/index.umd.js +182 -31
- package/build/index.umd.js.map +1 -1
- package/build/index.umd.min.js +1 -1
- package/build/index.umd.min.js.map +1 -1
- package/esm/core/client.d.ts +5 -7
- package/esm/core/client.js +9 -4
- package/esm/core/client.js.map +1 -1
- package/esm/core/controllers/aggregate.d.ts +3 -0
- package/esm/core/controllers/aggregate.js +3 -0
- package/esm/core/controllers/aggregate.js.map +1 -1
- package/esm/core/controllers/all.d.ts +7 -2
- package/esm/core/controllers/all.js +16 -1
- package/esm/core/controllers/all.js.map +1 -1
- package/esm/core/controllers/category.js +1 -1
- package/esm/core/controllers/category.js.map +1 -1
- package/esm/core/controllers/link.d.ts +9 -0
- package/esm/core/controllers/link.js +10 -0
- package/esm/core/controllers/link.js.map +1 -0
- package/esm/core/controllers/note.d.ts +8 -1
- package/esm/core/controllers/note.js +10 -2
- package/esm/core/controllers/note.js.map +1 -1
- package/esm/core/controllers/page.d.ts +7 -1
- package/esm/core/controllers/page.js +9 -2
- package/esm/core/controllers/page.js.map +1 -1
- package/esm/core/controllers/post.d.ts +8 -1
- package/esm/core/controllers/post.js +10 -2
- package/esm/core/controllers/post.js.map +1 -1
- package/esm/core/controllers/project.d.ts +9 -0
- package/esm/core/controllers/project.js +10 -0
- package/esm/core/controllers/project.js.map +1 -0
- package/esm/core/controllers/recently.d.ts +33 -0
- package/esm/core/controllers/recently.js +32 -0
- package/esm/core/controllers/recently.js.map +1 -0
- package/esm/core/controllers/search.d.ts +58 -0
- package/esm/core/controllers/search.js +26 -0
- package/esm/core/controllers/search.js.map +1 -0
- package/esm/core/controllers/snippet.d.ts +18 -0
- package/esm/core/controllers/snippet.js +17 -0
- package/esm/core/controllers/snippet.js.map +1 -0
- package/esm/core/define.d.ts +8 -1
- package/esm/core/define.js +6 -0
- package/esm/core/define.js.map +1 -1
- package/esm/index.d.ts +2 -1
- package/esm/index.js +2 -1
- package/esm/index.js.map +1 -1
- package/esm/interfaces/client.d.ts +5 -0
- package/esm/interfaces/client.js +2 -0
- package/esm/interfaces/client.js.map +1 -0
- package/esm/interfaces/request.d.ts +2 -2
- package/esm/models/link.d.ts +17 -0
- package/esm/models/link.js +11 -0
- package/esm/models/link.js.map +1 -0
- package/esm/models/project.d.ts +16 -0
- package/esm/models/project.js +2 -0
- package/esm/models/project.js.map +1 -0
- package/esm/models/recently.d.ts +5 -0
- package/esm/models/recently.js +2 -0
- package/esm/models/recently.js.map +1 -0
- package/esm/models/snippet.d.ts +14 -0
- package/esm/models/snippet.js +7 -0
- package/esm/models/snippet.js.map +1 -0
- package/esm/types/helper.d.ts +2 -0
- package/esm/types/helper.js +2 -0
- package/esm/types/helper.js.map +1 -0
- package/esm/utils/index.js +6 -6
- package/esm/utils/index.js.map +1 -1
- package/lib/core/client.d.ts +5 -7
- package/lib/core/client.js +9 -4
- package/lib/core/client.js.map +1 -1
- package/lib/core/controllers/aggregate.d.ts +3 -0
- package/lib/core/controllers/aggregate.js +3 -0
- package/lib/core/controllers/aggregate.js.map +1 -1
- package/lib/core/controllers/all.d.ts +7 -2
- package/lib/core/controllers/all.js +21 -1
- package/lib/core/controllers/all.js.map +1 -1
- package/lib/core/controllers/category.js +1 -1
- package/lib/core/controllers/category.js.map +1 -1
- package/lib/core/controllers/link.d.ts +9 -0
- package/lib/core/controllers/link.js +14 -0
- package/lib/core/controllers/link.js.map +1 -0
- package/lib/core/controllers/note.d.ts +8 -1
- package/lib/core/controllers/note.js +10 -2
- package/lib/core/controllers/note.js.map +1 -1
- package/lib/core/controllers/page.d.ts +7 -1
- package/lib/core/controllers/page.js +9 -2
- package/lib/core/controllers/page.js.map +1 -1
- package/lib/core/controllers/post.d.ts +8 -1
- package/lib/core/controllers/post.js +10 -2
- package/lib/core/controllers/post.js.map +1 -1
- package/lib/core/controllers/project.d.ts +9 -0
- package/lib/core/controllers/project.js +14 -0
- package/lib/core/controllers/project.js.map +1 -0
- package/lib/core/controllers/recently.d.ts +33 -0
- package/lib/core/controllers/recently.js +36 -0
- package/lib/core/controllers/recently.js.map +1 -0
- package/lib/core/controllers/search.d.ts +58 -0
- package/lib/core/controllers/search.js +30 -0
- package/lib/core/controllers/search.js.map +1 -0
- package/lib/core/controllers/snippet.d.ts +18 -0
- package/lib/core/controllers/snippet.js +21 -0
- package/lib/core/controllers/snippet.js.map +1 -0
- package/lib/core/define.d.ts +8 -1
- package/lib/core/define.js +6 -0
- package/lib/core/define.js.map +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.js +14 -5
- package/lib/index.js.map +1 -1
- package/lib/interfaces/client.d.ts +5 -0
- package/lib/interfaces/client.js +3 -0
- package/lib/interfaces/client.js.map +1 -0
- package/lib/interfaces/request.d.ts +2 -2
- package/lib/models/link.d.ts +17 -0
- package/lib/models/link.js +14 -0
- package/lib/models/link.js.map +1 -0
- package/lib/models/project.d.ts +16 -0
- package/lib/models/project.js +3 -0
- package/lib/models/project.js.map +1 -0
- package/lib/models/recently.d.ts +5 -0
- package/lib/models/recently.js +3 -0
- package/lib/models/recently.js.map +1 -0
- package/lib/models/snippet.d.ts +14 -0
- package/lib/models/snippet.js +10 -0
- package/lib/models/snippet.js.map +1 -0
- package/lib/types/helper.d.ts +2 -0
- package/lib/types/helper.js +3 -0
- package/lib/types/helper.js.map +1 -0
- package/lib/utils/index.js +6 -6
- package/lib/utils/index.js.map +1 -1
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.min.js","sources":["../node_modules/.pnpm/map-obj@4.3.0/node_modules/map-obj/index.js","../node_modules/.pnpm/camelcase@6.2.0/node_modules/camelcase/index.js","../node_modules/.pnpm/quick-lru@5.1.1/node_modules/quick-lru/index.js","../node_modules/.pnpm/camelcase-keys@7.0.1/node_modules/camelcase-keys/index.js","../src/utils/index.ts","../src/core/attachRequest.ts","../src/models/category.ts","../src/core/controllers/note.ts","../src/core/controllers/post.ts","../src/core/controllers/all.ts","../src/core/controllers/aggregate.ts","../src/core/controllers/category.ts","../src/core/controllers/comment.ts","../src/core/controllers/page.ts","../src/core/controllers/base.ts","../src/core/controllers/say.ts","../src/core/controllers/user.ts","../src/core/error.ts","../src/core/client.ts","../src/core/define.ts"],"sourcesContent":["'use strict';\n\nconst isObject = value => typeof value === 'object' && value !== null;\nconst mapObjectSkip = Symbol('skip');\n\n// Customized for this use-case\nconst isObjectCustom = value =>\n\tisObject(value) &&\n\t!(value instanceof RegExp) &&\n\t!(value instanceof Error) &&\n\t!(value instanceof Date);\n\nconst mapObject = (object, mapper, options, isSeen = new WeakMap()) => {\n\toptions = {\n\t\tdeep: false,\n\t\ttarget: {},\n\t\t...options\n\t};\n\n\tif (isSeen.has(object)) {\n\t\treturn isSeen.get(object);\n\t}\n\n\tisSeen.set(object, options.target);\n\n\tconst {target} = options;\n\tdelete options.target;\n\n\tconst mapArray = array => array.map(element => isObjectCustom(element) ? mapObject(element, mapper, options, isSeen) : element);\n\tif (Array.isArray(object)) {\n\t\treturn mapArray(object);\n\t}\n\n\tfor (const [key, value] of Object.entries(object)) {\n\t\tconst mapResult = mapper(key, value, object);\n\n\t\tif (mapResult === mapObjectSkip) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tlet [newKey, newValue, {shouldRecurse = true} = {}] = mapResult;\n\n\t\t// Drop `__proto__` keys.\n\t\tif (newKey === '__proto__') {\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (options.deep && shouldRecurse && isObjectCustom(newValue)) {\n\t\t\tnewValue = Array.isArray(newValue) ?\n\t\t\t\tmapArray(newValue) :\n\t\t\t\tmapObject(newValue, mapper, options, isSeen);\n\t\t}\n\n\t\ttarget[newKey] = newValue;\n\t}\n\n\treturn target;\n};\n\nmodule.exports = (object, mapper, options) => {\n\tif (!isObject(object)) {\n\t\tthrow new TypeError(`Expected an object, got \\`${object}\\` (${typeof object})`);\n\t}\n\n\treturn mapObject(object, mapper, options);\n};\n\nmodule.exports.mapObjectSkip = mapObjectSkip;\n","'use strict';\n\nconst preserveCamelCase = (string, locale) => {\n\tlet isLastCharLower = false;\n\tlet isLastCharUpper = false;\n\tlet isLastLastCharUpper = false;\n\n\tfor (let i = 0; i < string.length; i++) {\n\t\tconst character = string[i];\n\n\t\tif (isLastCharLower && /[\\p{Lu}]/u.test(character)) {\n\t\t\tstring = string.slice(0, i) + '-' + string.slice(i);\n\t\t\tisLastCharLower = false;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = true;\n\t\t\ti++;\n\t\t} else if (isLastCharUpper && isLastLastCharUpper && /[\\p{Ll}]/u.test(character)) {\n\t\t\tstring = string.slice(0, i - 1) + '-' + string.slice(i - 1);\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = false;\n\t\t\tisLastCharLower = true;\n\t\t} else {\n\t\t\tisLastCharLower = character.toLocaleLowerCase(locale) === character && character.toLocaleUpperCase(locale) !== character;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = character.toLocaleUpperCase(locale) === character && character.toLocaleLowerCase(locale) !== character;\n\t\t}\n\t}\n\n\treturn string;\n};\n\nconst preserveConsecutiveUppercase = input => {\n\treturn input.replace(/^[\\p{Lu}](?![\\p{Lu}])/gu, m1 => m1.toLowerCase());\n};\n\nconst postProcess = (input, options) => {\n\treturn input.replace(/[_.\\- ]+([\\p{Alpha}\\p{N}_]|$)/gu, (_, p1) => p1.toLocaleUpperCase(options.locale))\n\t\t.replace(/\\d+([\\p{Alpha}\\p{N}_]|$)/gu, m => m.toLocaleUpperCase(options.locale));\n};\n\nconst camelCase = (input, options) => {\n\tif (!(typeof input === 'string' || Array.isArray(input))) {\n\t\tthrow new TypeError('Expected the input to be `string | string[]`');\n\t}\n\n\toptions = {\n\t\tpascalCase: false,\n\t\tpreserveConsecutiveUppercase: false,\n\t\t...options\n\t};\n\n\tif (Array.isArray(input)) {\n\t\tinput = input.map(x => x.trim())\n\t\t\t.filter(x => x.length)\n\t\t\t.join('-');\n\t} else {\n\t\tinput = input.trim();\n\t}\n\n\tif (input.length === 0) {\n\t\treturn '';\n\t}\n\n\tif (input.length === 1) {\n\t\treturn options.pascalCase ? input.toLocaleUpperCase(options.locale) : input.toLocaleLowerCase(options.locale);\n\t}\n\n\tconst hasUpperCase = input !== input.toLocaleLowerCase(options.locale);\n\n\tif (hasUpperCase) {\n\t\tinput = preserveCamelCase(input, options.locale);\n\t}\n\n\tinput = input.replace(/^[_.\\- ]+/, '');\n\n\tif (options.preserveConsecutiveUppercase) {\n\t\tinput = preserveConsecutiveUppercase(input);\n\t} else {\n\t\tinput = input.toLocaleLowerCase();\n\t}\n\n\tif (options.pascalCase) {\n\t\tinput = input.charAt(0).toLocaleUpperCase(options.locale) + input.slice(1);\n\t}\n\n\treturn postProcess(input, options);\n};\n\nmodule.exports = camelCase;\n// TODO: Remove this for the next major release\nmodule.exports.default = camelCase;\n","'use strict';\n\nclass QuickLRU {\n\tconstructor(options = {}) {\n\t\tif (!(options.maxSize && options.maxSize > 0)) {\n\t\t\tthrow new TypeError('`maxSize` must be a number greater than 0');\n\t\t}\n\n\t\tthis.maxSize = options.maxSize;\n\t\tthis.onEviction = options.onEviction;\n\t\tthis.cache = new Map();\n\t\tthis.oldCache = new Map();\n\t\tthis._size = 0;\n\t}\n\n\t_set(key, value) {\n\t\tthis.cache.set(key, value);\n\t\tthis._size++;\n\n\t\tif (this._size >= this.maxSize) {\n\t\t\tthis._size = 0;\n\n\t\t\tif (typeof this.onEviction === 'function') {\n\t\t\t\tfor (const [key, value] of this.oldCache.entries()) {\n\t\t\t\t\tthis.onEviction(key, value);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.oldCache = this.cache;\n\t\t\tthis.cache = new Map();\n\t\t}\n\t}\n\n\tget(key) {\n\t\tif (this.cache.has(key)) {\n\t\t\treturn this.cache.get(key);\n\t\t}\n\n\t\tif (this.oldCache.has(key)) {\n\t\t\tconst value = this.oldCache.get(key);\n\t\t\tthis.oldCache.delete(key);\n\t\t\tthis._set(key, value);\n\t\t\treturn value;\n\t\t}\n\t}\n\n\tset(key, value) {\n\t\tif (this.cache.has(key)) {\n\t\t\tthis.cache.set(key, value);\n\t\t} else {\n\t\t\tthis._set(key, value);\n\t\t}\n\n\t\treturn this;\n\t}\n\n\thas(key) {\n\t\treturn this.cache.has(key) || this.oldCache.has(key);\n\t}\n\n\tpeek(key) {\n\t\tif (this.cache.has(key)) {\n\t\t\treturn this.cache.get(key);\n\t\t}\n\n\t\tif (this.oldCache.has(key)) {\n\t\t\treturn this.oldCache.get(key);\n\t\t}\n\t}\n\n\tdelete(key) {\n\t\tconst deleted = this.cache.delete(key);\n\t\tif (deleted) {\n\t\t\tthis._size--;\n\t\t}\n\n\t\treturn this.oldCache.delete(key) || deleted;\n\t}\n\n\tclear() {\n\t\tthis.cache.clear();\n\t\tthis.oldCache.clear();\n\t\tthis._size = 0;\n\t}\n\n\t* keys() {\n\t\tfor (const [key] of this) {\n\t\t\tyield key;\n\t\t}\n\t}\n\n\t* values() {\n\t\tfor (const [, value] of this) {\n\t\t\tyield value;\n\t\t}\n\t}\n\n\t* [Symbol.iterator]() {\n\t\tfor (const item of this.cache) {\n\t\t\tyield item;\n\t\t}\n\n\t\tfor (const item of this.oldCache) {\n\t\t\tconst [key] = item;\n\t\t\tif (!this.cache.has(key)) {\n\t\t\t\tyield item;\n\t\t\t}\n\t\t}\n\t}\n\n\tget size() {\n\t\tlet oldCacheSize = 0;\n\t\tfor (const key of this.oldCache.keys()) {\n\t\t\tif (!this.cache.has(key)) {\n\t\t\t\toldCacheSize++;\n\t\t\t}\n\t\t}\n\n\t\treturn Math.min(this._size + oldCacheSize, this.maxSize);\n\t}\n}\n\nmodule.exports = QuickLRU;\n","'use strict';\nconst mapObj = require('map-obj');\nconst camelCase = require('camelcase');\nconst QuickLru = require('quick-lru');\n\nconst has = (array, key) => array.some(x => {\n\tif (typeof x === 'string') {\n\t\treturn x === key;\n\t}\n\n\tx.lastIndex = 0;\n\treturn x.test(key);\n});\n\nconst cache = new QuickLru({maxSize: 100000});\n\n// Reproduces behavior from `map-obj`\nconst isObject = value =>\n\ttypeof value === 'object' &&\n\tvalue !== null &&\n\t!(value instanceof RegExp) &&\n\t!(value instanceof Error) &&\n\t!(value instanceof Date);\n\nconst camelCaseConvert = (input, options) => {\n\tif (!isObject(input)) {\n\t\treturn input;\n\t}\n\n\toptions = {\n\t\tdeep: false,\n\t\tpascalCase: false,\n\t\t...options\n\t};\n\n\tconst {exclude, pascalCase, stopPaths, deep} = options;\n\n\tconst stopPathsSet = new Set(stopPaths);\n\n\tconst makeMapper = parentPath => (key, value) => {\n\t\tif (deep && isObject(value)) {\n\t\t\tconst path = parentPath === undefined ? key : `${parentPath}.${key}`;\n\n\t\t\tif (!stopPathsSet.has(path)) {\n\t\t\t\tvalue = mapObj(value, makeMapper(path));\n\t\t\t}\n\t\t}\n\n\t\tif (!(exclude && has(exclude, key))) {\n\t\t\tconst cacheKey = pascalCase ? `${key}_` : key;\n\n\t\t\tif (cache.has(cacheKey)) {\n\t\t\t\tkey = cache.get(cacheKey);\n\t\t\t} else {\n\t\t\t\tconst returnValue = camelCase(key, {pascalCase});\n\n\t\t\t\tif (key.length < 100) { // Prevent abuse\n\t\t\t\t\tcache.set(cacheKey, returnValue);\n\t\t\t\t}\n\n\t\t\t\tkey = returnValue;\n\t\t\t}\n\t\t}\n\n\t\treturn [key, value];\n\t};\n\n\treturn mapObj(input, makeMapper(undefined));\n};\n\nmodule.exports = (input, options) => {\n\tif (Array.isArray(input)) {\n\t\treturn Object.keys(input).map(key => camelCaseConvert(input[key], options));\n\t}\n\n\treturn camelCaseConvert(input, options);\n};\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["isObject","value","mapObjectSkip","Symbol","isObjectCustom","RegExp","Error","Date","mapObject","object","mapper","options","isSeen","WeakMap","deep","target","has","get","set","mapArray","array","map","element","Array","isArray","key","Object","entries","mapResult","newKey","newValue","shouldRecurse","mapObjModule","TypeError","camelCase","input","pascalCase","preserveConsecutiveUppercase","x","trim","filter","length","join","toLocaleUpperCase","locale","toLocaleLowerCase","string","isLastCharLower","isLastCharUpper","isLastLastCharUpper","i","character","test","slice","preserveCamelCase","replace","m1","toLowerCase","charAt","_","p1","m","postProcess","camelcaseModule","QuickLRU","[object Object]","maxSize","this","onEviction","cache","Map","oldCache","_size","delete","_set","deleted","clear","iterator","item","size","oldCacheSize","keys","Math","min","quickLru","mapObj","require$$0","require$$1","require$$2","camelCaseConvert","exclude","stopPaths","stopPathsSet","Set","makeMapper","parentPath","path","undefined","some","lastIndex","cacheKey","returnValue","attachRawFromOneToAnthor","from","to","raw","defineProperty","enumerable","request","attachRequestMethod","url","params","qs","obj","URLSearchParams","toString","search","forEach","k","v","prototype","call","handleSearchParams","instance","post","CategoryType","NoteController","client","proxy","base","latest","id","password","nid","page","perPage","list","like","PostController","idOrCategoryName","slug","arguments","allControllers","top","sort","type","year","timeline","order","asc","desc","stat","Category","Tag","ids","data","result","values","RequestError","idOrSlug","payload","d","assign","destructureData","name","tag","refId","pagination","ref","commentId","reply","all","super","random","username","login","token","check_logged","allContollerNames","message","status","HTTPClient","master","user","_endpoint","_instance","_proxy","buildRoute","initGetClient","clientsName","Reflect","ReferenceError","toUpperCase","configurable","Controller","rest","Client","cl","endpoint","String","method","startsWith","manager","noop","methods","reflectors","toPrimitive","for","that","route","handler","includes","async","resolveFullPath","res","e","code","statusCode","response","transform","camelcaseKeys","push","Proxy","apply","args","createClient","adapter"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.esm.min.js","sources":["../node_modules/.pnpm/map-obj@4.3.0/node_modules/map-obj/index.js","../node_modules/.pnpm/camelcase@6.2.0/node_modules/camelcase/index.js","../node_modules/.pnpm/quick-lru@5.1.1/node_modules/quick-lru/index.js","../node_modules/.pnpm/camelcase-keys@7.0.1/node_modules/camelcase-keys/index.js","../src/utils/index.ts","../src/core/attachRequest.ts","../src/core/controllers/aggregate.ts","../src/models/category.ts","../src/core/controllers/category.ts","../src/core/controllers/comment.ts","../src/core/controllers/base.ts","../src/core/controllers/link.ts","../src/core/controllers/note.ts","../src/core/controllers/page.ts","../src/core/controllers/post.ts","../src/core/controllers/project.ts","../src/core/controllers/recently.ts","../src/core/controllers/say.ts","../src/core/controllers/search.ts","../src/core/controllers/snippet.ts","../src/core/controllers/user.ts","../src/core/controllers/all.ts","../src/core/error.ts","../src/core/client.ts","../src/core/define.ts"],"sourcesContent":["'use strict';\n\nconst isObject = value => typeof value === 'object' && value !== null;\nconst mapObjectSkip = Symbol('skip');\n\n// Customized for this use-case\nconst isObjectCustom = value =>\n\tisObject(value) &&\n\t!(value instanceof RegExp) &&\n\t!(value instanceof Error) &&\n\t!(value instanceof Date);\n\nconst mapObject = (object, mapper, options, isSeen = new WeakMap()) => {\n\toptions = {\n\t\tdeep: false,\n\t\ttarget: {},\n\t\t...options\n\t};\n\n\tif (isSeen.has(object)) {\n\t\treturn isSeen.get(object);\n\t}\n\n\tisSeen.set(object, options.target);\n\n\tconst {target} = options;\n\tdelete options.target;\n\n\tconst mapArray = array => array.map(element => isObjectCustom(element) ? mapObject(element, mapper, options, isSeen) : element);\n\tif (Array.isArray(object)) {\n\t\treturn mapArray(object);\n\t}\n\n\tfor (const [key, value] of Object.entries(object)) {\n\t\tconst mapResult = mapper(key, value, object);\n\n\t\tif (mapResult === mapObjectSkip) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tlet [newKey, newValue, {shouldRecurse = true} = {}] = mapResult;\n\n\t\t// Drop `__proto__` keys.\n\t\tif (newKey === '__proto__') {\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (options.deep && shouldRecurse && isObjectCustom(newValue)) {\n\t\t\tnewValue = Array.isArray(newValue) ?\n\t\t\t\tmapArray(newValue) :\n\t\t\t\tmapObject(newValue, mapper, options, isSeen);\n\t\t}\n\n\t\ttarget[newKey] = newValue;\n\t}\n\n\treturn target;\n};\n\nmodule.exports = (object, mapper, options) => {\n\tif (!isObject(object)) {\n\t\tthrow new TypeError(`Expected an object, got \\`${object}\\` (${typeof object})`);\n\t}\n\n\treturn mapObject(object, mapper, options);\n};\n\nmodule.exports.mapObjectSkip = mapObjectSkip;\n","'use strict';\n\nconst preserveCamelCase = (string, locale) => {\n\tlet isLastCharLower = false;\n\tlet isLastCharUpper = false;\n\tlet isLastLastCharUpper = false;\n\n\tfor (let i = 0; i < string.length; i++) {\n\t\tconst character = string[i];\n\n\t\tif (isLastCharLower && /[\\p{Lu}]/u.test(character)) {\n\t\t\tstring = string.slice(0, i) + '-' + string.slice(i);\n\t\t\tisLastCharLower = false;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = true;\n\t\t\ti++;\n\t\t} else if (isLastCharUpper && isLastLastCharUpper && /[\\p{Ll}]/u.test(character)) {\n\t\t\tstring = string.slice(0, i - 1) + '-' + string.slice(i - 1);\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = false;\n\t\t\tisLastCharLower = true;\n\t\t} else {\n\t\t\tisLastCharLower = character.toLocaleLowerCase(locale) === character && character.toLocaleUpperCase(locale) !== character;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = character.toLocaleUpperCase(locale) === character && character.toLocaleLowerCase(locale) !== character;\n\t\t}\n\t}\n\n\treturn string;\n};\n\nconst preserveConsecutiveUppercase = input => {\n\treturn input.replace(/^[\\p{Lu}](?![\\p{Lu}])/gu, m1 => m1.toLowerCase());\n};\n\nconst postProcess = (input, options) => {\n\treturn input.replace(/[_.\\- ]+([\\p{Alpha}\\p{N}_]|$)/gu, (_, p1) => p1.toLocaleUpperCase(options.locale))\n\t\t.replace(/\\d+([\\p{Alpha}\\p{N}_]|$)/gu, m => m.toLocaleUpperCase(options.locale));\n};\n\nconst camelCase = (input, options) => {\n\tif (!(typeof input === 'string' || Array.isArray(input))) {\n\t\tthrow new TypeError('Expected the input to be `string | string[]`');\n\t}\n\n\toptions = {\n\t\tpascalCase: false,\n\t\tpreserveConsecutiveUppercase: false,\n\t\t...options\n\t};\n\n\tif (Array.isArray(input)) {\n\t\tinput = input.map(x => x.trim())\n\t\t\t.filter(x => x.length)\n\t\t\t.join('-');\n\t} else {\n\t\tinput = input.trim();\n\t}\n\n\tif (input.length === 0) {\n\t\treturn '';\n\t}\n\n\tif (input.length === 1) {\n\t\treturn options.pascalCase ? input.toLocaleUpperCase(options.locale) : input.toLocaleLowerCase(options.locale);\n\t}\n\n\tconst hasUpperCase = input !== input.toLocaleLowerCase(options.locale);\n\n\tif (hasUpperCase) {\n\t\tinput = preserveCamelCase(input, options.locale);\n\t}\n\n\tinput = input.replace(/^[_.\\- ]+/, '');\n\n\tif (options.preserveConsecutiveUppercase) {\n\t\tinput = preserveConsecutiveUppercase(input);\n\t} else {\n\t\tinput = input.toLocaleLowerCase();\n\t}\n\n\tif (options.pascalCase) {\n\t\tinput = input.charAt(0).toLocaleUpperCase(options.locale) + input.slice(1);\n\t}\n\n\treturn postProcess(input, options);\n};\n\nmodule.exports = camelCase;\n// TODO: Remove this for the next major release\nmodule.exports.default = camelCase;\n","'use strict';\n\nclass QuickLRU {\n\tconstructor(options = {}) {\n\t\tif (!(options.maxSize && options.maxSize > 0)) {\n\t\t\tthrow new TypeError('`maxSize` must be a number greater than 0');\n\t\t}\n\n\t\tthis.maxSize = options.maxSize;\n\t\tthis.onEviction = options.onEviction;\n\t\tthis.cache = new Map();\n\t\tthis.oldCache = new Map();\n\t\tthis._size = 0;\n\t}\n\n\t_set(key, value) {\n\t\tthis.cache.set(key, value);\n\t\tthis._size++;\n\n\t\tif (this._size >= this.maxSize) {\n\t\t\tthis._size = 0;\n\n\t\t\tif (typeof this.onEviction === 'function') {\n\t\t\t\tfor (const [key, value] of this.oldCache.entries()) {\n\t\t\t\t\tthis.onEviction(key, value);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.oldCache = this.cache;\n\t\t\tthis.cache = new Map();\n\t\t}\n\t}\n\n\tget(key) {\n\t\tif (this.cache.has(key)) {\n\t\t\treturn this.cache.get(key);\n\t\t}\n\n\t\tif (this.oldCache.has(key)) {\n\t\t\tconst value = this.oldCache.get(key);\n\t\t\tthis.oldCache.delete(key);\n\t\t\tthis._set(key, value);\n\t\t\treturn value;\n\t\t}\n\t}\n\n\tset(key, value) {\n\t\tif (this.cache.has(key)) {\n\t\t\tthis.cache.set(key, value);\n\t\t} else {\n\t\t\tthis._set(key, value);\n\t\t}\n\n\t\treturn this;\n\t}\n\n\thas(key) {\n\t\treturn this.cache.has(key) || this.oldCache.has(key);\n\t}\n\n\tpeek(key) {\n\t\tif (this.cache.has(key)) {\n\t\t\treturn this.cache.get(key);\n\t\t}\n\n\t\tif (this.oldCache.has(key)) {\n\t\t\treturn this.oldCache.get(key);\n\t\t}\n\t}\n\n\tdelete(key) {\n\t\tconst deleted = this.cache.delete(key);\n\t\tif (deleted) {\n\t\t\tthis._size--;\n\t\t}\n\n\t\treturn this.oldCache.delete(key) || deleted;\n\t}\n\n\tclear() {\n\t\tthis.cache.clear();\n\t\tthis.oldCache.clear();\n\t\tthis._size = 0;\n\t}\n\n\t* keys() {\n\t\tfor (const [key] of this) {\n\t\t\tyield key;\n\t\t}\n\t}\n\n\t* values() {\n\t\tfor (const [, value] of this) {\n\t\t\tyield value;\n\t\t}\n\t}\n\n\t* [Symbol.iterator]() {\n\t\tfor (const item of this.cache) {\n\t\t\tyield item;\n\t\t}\n\n\t\tfor (const item of this.oldCache) {\n\t\t\tconst [key] = item;\n\t\t\tif (!this.cache.has(key)) {\n\t\t\t\tyield item;\n\t\t\t}\n\t\t}\n\t}\n\n\tget size() {\n\t\tlet oldCacheSize = 0;\n\t\tfor (const key of this.oldCache.keys()) {\n\t\t\tif (!this.cache.has(key)) {\n\t\t\t\toldCacheSize++;\n\t\t\t}\n\t\t}\n\n\t\treturn Math.min(this._size + oldCacheSize, this.maxSize);\n\t}\n}\n\nmodule.exports = QuickLRU;\n","'use strict';\nconst mapObj = require('map-obj');\nconst camelCase = require('camelcase');\nconst QuickLru = require('quick-lru');\n\nconst has = (array, key) => array.some(x => {\n\tif (typeof x === 'string') {\n\t\treturn x === key;\n\t}\n\n\tx.lastIndex = 0;\n\treturn x.test(key);\n});\n\nconst cache = new QuickLru({maxSize: 100000});\n\n// Reproduces behavior from `map-obj`\nconst isObject = value =>\n\ttypeof value === 'object' &&\n\tvalue !== null &&\n\t!(value instanceof RegExp) &&\n\t!(value instanceof Error) &&\n\t!(value instanceof Date);\n\nconst camelCaseConvert = (input, options) => {\n\tif (!isObject(input)) {\n\t\treturn input;\n\t}\n\n\toptions = {\n\t\tdeep: false,\n\t\tpascalCase: false,\n\t\t...options\n\t};\n\n\tconst {exclude, pascalCase, stopPaths, deep} = options;\n\n\tconst stopPathsSet = new Set(stopPaths);\n\n\tconst makeMapper = parentPath => (key, value) => {\n\t\tif (deep && isObject(value)) {\n\t\t\tconst path = parentPath === undefined ? key : `${parentPath}.${key}`;\n\n\t\t\tif (!stopPathsSet.has(path)) {\n\t\t\t\tvalue = mapObj(value, makeMapper(path));\n\t\t\t}\n\t\t}\n\n\t\tif (!(exclude && has(exclude, key))) {\n\t\t\tconst cacheKey = pascalCase ? `${key}_` : key;\n\n\t\t\tif (cache.has(cacheKey)) {\n\t\t\t\tkey = cache.get(cacheKey);\n\t\t\t} else {\n\t\t\t\tconst returnValue = camelCase(key, {pascalCase});\n\n\t\t\t\tif (key.length < 100) { // Prevent abuse\n\t\t\t\t\tcache.set(cacheKey, returnValue);\n\t\t\t\t}\n\n\t\t\t\tkey = returnValue;\n\t\t\t}\n\t\t}\n\n\t\treturn [key, value];\n\t};\n\n\treturn mapObj(input, makeMapper(undefined));\n};\n\nmodule.exports = (input, options) => {\n\tif (Array.isArray(input)) {\n\t\treturn Object.keys(input).map(key => camelCaseConvert(input[key], options));\n\t}\n\n\treturn camelCaseConvert(input, options);\n};\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["isObject","value","mapObjectSkip","Symbol","isObjectCustom","RegExp","Error","Date","mapObject","object","mapper","options","isSeen","WeakMap","deep","target","has","get","set","mapArray","array","map","element","Array","isArray","key","Object","entries","mapResult","newKey","newValue","shouldRecurse","mapObjModule","TypeError","camelCase","input","pascalCase","preserveConsecutiveUppercase","x","trim","filter","length","join","toLocaleUpperCase","locale","toLocaleLowerCase","string","isLastCharLower","isLastCharUpper","isLastLastCharUpper","i","character","test","slice","preserveCamelCase","replace","m1","toLowerCase","charAt","_","p1","m","postProcess","camelcaseModule","QuickLRU","[object Object]","maxSize","this","onEviction","cache","Map","oldCache","_size","delete","_set","deleted","clear","iterator","item","size","oldCacheSize","keys","Math","min","quickLru","mapObj","require$$0","require$$1","require$$2","camelCaseConvert","exclude","stopPaths","stopPathsSet","Set","makeMapper","parentPath","path","undefined","some","lastIndex","cacheKey","returnValue","attachRawFromOneToAnthor","from","to","$raw","defineProperty","enumerable","$request","attachRequestMethod","url","params","qs","obj","URLSearchParams","toString","search","forEach","k","v","prototype","call","handleSearchParams","instance","post","AggregateController","client","proxy","base","top","sort","type","year","timeline","order","asc","desc","stat","CategoryType","CategoryController","Category","Tag","ids","data","result","values","RequestError","id","idOrSlug","payload","d","assign","destructureData","name","tag","CommentController","refId","pagination","page","ref","commentId","reply","BaseCrudController","all","perPage","LinkController","super","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","allControllers","allContollerNames","message","status","raw","HTTPClient","master","user","friend","link","shorthand","recently","_endpoint","_instance","_proxy","buildRoute","initGetClient","clientsName","Reflect","ReferenceError","toUpperCase","configurable","Controller","rest","Client","cl","endpoint","String","method","startsWith","manager","noop","methods","reflectors","toPrimitive","for","that","route","handler","includes","async","resolveFullPath","res","request","e","code","statusCode","response","transform","camelcaseKeys","push","Proxy","apply","args","createClient","adapter","controllers","injectControllers"],"mappings":"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"}
|
package/build/index.umd.js
CHANGED
|
@@ -393,14 +393,14 @@
|
|
|
393
393
|
if (!from) {
|
|
394
394
|
return;
|
|
395
395
|
}
|
|
396
|
-
from
|
|
397
|
-
Object.defineProperty(to, 'raw', {
|
|
398
|
-
value: Object.assign({}, from
|
|
396
|
+
from.$raw &&
|
|
397
|
+
Object.defineProperty(to, '$raw', {
|
|
398
|
+
value: Object.assign({}, from.$raw),
|
|
399
399
|
enumerable: false,
|
|
400
400
|
});
|
|
401
|
-
from
|
|
402
|
-
Object.defineProperty(to, 'request', {
|
|
403
|
-
value: Object.assign({}, from
|
|
401
|
+
from.$request &&
|
|
402
|
+
Object.defineProperty(to, '$request', {
|
|
403
|
+
value: Object.assign({}, from.$request),
|
|
404
404
|
enumerable: false,
|
|
405
405
|
});
|
|
406
406
|
};
|
|
@@ -470,6 +470,9 @@
|
|
|
470
470
|
},
|
|
471
471
|
});
|
|
472
472
|
}
|
|
473
|
+
/**
|
|
474
|
+
* 获取聚合数据统计
|
|
475
|
+
*/
|
|
473
476
|
getStat() {
|
|
474
477
|
return this.proxy.stat.get();
|
|
475
478
|
}
|
|
@@ -523,7 +526,7 @@
|
|
|
523
526
|
});
|
|
524
527
|
const entries = data === null || data === void 0 ? void 0 : data.entries;
|
|
525
528
|
if (!entries) {
|
|
526
|
-
throw new RequestError('data structure error', 500, data
|
|
529
|
+
throw new RequestError('data structure error', 500, data.$request.path, data);
|
|
527
530
|
}
|
|
528
531
|
const map = new Map(Object.entries(entries).map(([id, value]) => [id.toLowerCase(), value]));
|
|
529
532
|
attachRawFromOneToAnthor(data, map);
|
|
@@ -587,6 +590,40 @@
|
|
|
587
590
|
}
|
|
588
591
|
}
|
|
589
592
|
|
|
593
|
+
class BaseCrudController {
|
|
594
|
+
constructor(client) {
|
|
595
|
+
this.client = client;
|
|
596
|
+
}
|
|
597
|
+
get proxy() {
|
|
598
|
+
return this.client.proxy(this.base);
|
|
599
|
+
}
|
|
600
|
+
getById(id) {
|
|
601
|
+
return this.proxy(id).get();
|
|
602
|
+
}
|
|
603
|
+
getAll() {
|
|
604
|
+
return this.proxy.all.get();
|
|
605
|
+
}
|
|
606
|
+
/**
|
|
607
|
+
* 带分页的查询
|
|
608
|
+
* @param page
|
|
609
|
+
* @param perPage
|
|
610
|
+
*/
|
|
611
|
+
getAllPaginated(page, perPage) {
|
|
612
|
+
return this.proxy.get({
|
|
613
|
+
params: { page, size: perPage },
|
|
614
|
+
});
|
|
615
|
+
}
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
class LinkController extends BaseCrudController {
|
|
619
|
+
constructor(client) {
|
|
620
|
+
super(client);
|
|
621
|
+
this.client = client;
|
|
622
|
+
this.name = 'link';
|
|
623
|
+
this.base = 'links';
|
|
624
|
+
}
|
|
625
|
+
}
|
|
626
|
+
|
|
590
627
|
class NoteController {
|
|
591
628
|
constructor(client) {
|
|
592
629
|
this.client = client;
|
|
@@ -620,9 +657,17 @@
|
|
|
620
657
|
/**
|
|
621
658
|
* 日记列表分页
|
|
622
659
|
*/
|
|
623
|
-
getList(page = 1, perPage = 10) {
|
|
660
|
+
getList(page = 1, perPage = 10, options = {}) {
|
|
661
|
+
const { select, sortBy, sortOrder, year } = options;
|
|
624
662
|
return this.proxy.get({
|
|
625
|
-
params: {
|
|
663
|
+
params: {
|
|
664
|
+
page,
|
|
665
|
+
size: perPage,
|
|
666
|
+
select: select === null || select === void 0 ? void 0 : select.join(' '),
|
|
667
|
+
sortBy,
|
|
668
|
+
sortOrder,
|
|
669
|
+
year,
|
|
670
|
+
},
|
|
626
671
|
});
|
|
627
672
|
}
|
|
628
673
|
/**
|
|
@@ -653,9 +698,16 @@
|
|
|
653
698
|
/**
|
|
654
699
|
* 页面列表
|
|
655
700
|
*/
|
|
656
|
-
getList(page = 1, perPage = 10) {
|
|
701
|
+
getList(page = 1, perPage = 10, options = {}) {
|
|
702
|
+
const { select, sortBy, sortOrder } = options;
|
|
657
703
|
return this.proxy.get({
|
|
658
|
-
params: {
|
|
704
|
+
params: {
|
|
705
|
+
page,
|
|
706
|
+
size: perPage,
|
|
707
|
+
select: select === null || select === void 0 ? void 0 : select.join(' '),
|
|
708
|
+
sortBy,
|
|
709
|
+
sortOrder,
|
|
710
|
+
},
|
|
659
711
|
});
|
|
660
712
|
}
|
|
661
713
|
/**
|
|
@@ -689,9 +741,17 @@
|
|
|
689
741
|
* @param perPage
|
|
690
742
|
* @returns
|
|
691
743
|
*/
|
|
692
|
-
getList(page = 1, perPage = 10) {
|
|
744
|
+
getList(page = 1, perPage = 10, options = {}) {
|
|
745
|
+
const { select, sortBy, sortOrder, year } = options;
|
|
693
746
|
return this.proxy.get({
|
|
694
|
-
params: {
|
|
747
|
+
params: {
|
|
748
|
+
page,
|
|
749
|
+
size: perPage,
|
|
750
|
+
select: select === null || select === void 0 ? void 0 : select.join(' '),
|
|
751
|
+
sortBy,
|
|
752
|
+
sortOrder,
|
|
753
|
+
year,
|
|
754
|
+
},
|
|
695
755
|
});
|
|
696
756
|
}
|
|
697
757
|
getPost(idOrCategoryName, slug) {
|
|
@@ -716,27 +776,43 @@
|
|
|
716
776
|
}
|
|
717
777
|
}
|
|
718
778
|
|
|
719
|
-
class BaseCrudController {
|
|
779
|
+
class ProjectController extends BaseCrudController {
|
|
720
780
|
constructor(client) {
|
|
781
|
+
super(client);
|
|
721
782
|
this.client = client;
|
|
783
|
+
this.base = 'projects';
|
|
784
|
+
this.name = 'project';
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
|
|
788
|
+
class RecentlyController {
|
|
789
|
+
constructor(client) {
|
|
790
|
+
this.client = client;
|
|
791
|
+
this.base = 'recently';
|
|
792
|
+
this.name = 'recently';
|
|
722
793
|
}
|
|
723
794
|
get proxy() {
|
|
724
795
|
return this.client.proxy(this.base);
|
|
725
796
|
}
|
|
726
|
-
|
|
727
|
-
|
|
797
|
+
/**
|
|
798
|
+
* 获取最新一条
|
|
799
|
+
*/
|
|
800
|
+
getLatestOne() {
|
|
801
|
+
return this.proxy.latest.get();
|
|
728
802
|
}
|
|
729
803
|
getAll() {
|
|
730
804
|
return this.proxy.all.get();
|
|
731
805
|
}
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
*/
|
|
737
|
-
getAllPaginated(page, perPage) {
|
|
806
|
+
getList(before, after, size) {
|
|
807
|
+
if (!before && !after) {
|
|
808
|
+
throw new Error('you can only choose `before` or `after`');
|
|
809
|
+
}
|
|
738
810
|
return this.proxy.get({
|
|
739
|
-
params: {
|
|
811
|
+
params: {
|
|
812
|
+
before,
|
|
813
|
+
after,
|
|
814
|
+
size,
|
|
815
|
+
},
|
|
740
816
|
});
|
|
741
817
|
}
|
|
742
818
|
}
|
|
@@ -759,6 +835,49 @@
|
|
|
759
835
|
}
|
|
760
836
|
}
|
|
761
837
|
|
|
838
|
+
class SearchController {
|
|
839
|
+
constructor(client) {
|
|
840
|
+
this.client = client;
|
|
841
|
+
this.base = 'search';
|
|
842
|
+
this.name = 'search';
|
|
843
|
+
}
|
|
844
|
+
get proxy() {
|
|
845
|
+
return this.client.proxy(this.base);
|
|
846
|
+
}
|
|
847
|
+
search(type, keyword, options = {}) {
|
|
848
|
+
return this.proxy(type).get({
|
|
849
|
+
params: Object.assign({ keyword }, options),
|
|
850
|
+
});
|
|
851
|
+
}
|
|
852
|
+
/**
|
|
853
|
+
* 从 algolya 搜索
|
|
854
|
+
* https://www.algolia.com/doc/api-reference/api-methods/search/
|
|
855
|
+
* @param keyword
|
|
856
|
+
* @param options
|
|
857
|
+
* @returns
|
|
858
|
+
*/
|
|
859
|
+
searchByAlgolia(keyword, options) {
|
|
860
|
+
return this.proxy('algolia').get({ params: Object.assign({ keyword }, options) });
|
|
861
|
+
}
|
|
862
|
+
}
|
|
863
|
+
|
|
864
|
+
class SnippetController {
|
|
865
|
+
constructor(client) {
|
|
866
|
+
this.client = client;
|
|
867
|
+
this.base = 'snippets';
|
|
868
|
+
this.name = 'snippet';
|
|
869
|
+
}
|
|
870
|
+
get proxy() {
|
|
871
|
+
return this.client.proxy(this.base);
|
|
872
|
+
}
|
|
873
|
+
getById(id) {
|
|
874
|
+
return this.proxy(id).get();
|
|
875
|
+
}
|
|
876
|
+
getByReferenceAndName(reference, name) {
|
|
877
|
+
return this.proxy(reference)(name).get();
|
|
878
|
+
}
|
|
879
|
+
}
|
|
880
|
+
|
|
762
881
|
class UserController {
|
|
763
882
|
constructor(client) {
|
|
764
883
|
this.client = client;
|
|
@@ -792,20 +911,30 @@
|
|
|
792
911
|
AggregateController,
|
|
793
912
|
CategoryController,
|
|
794
913
|
CommentController,
|
|
914
|
+
LinkController,
|
|
795
915
|
NoteController,
|
|
796
916
|
PageController,
|
|
797
917
|
PostController,
|
|
918
|
+
ProjectController,
|
|
919
|
+
RecentlyController,
|
|
798
920
|
SayController,
|
|
921
|
+
SearchController,
|
|
922
|
+
SnippetController,
|
|
799
923
|
UserController,
|
|
800
924
|
];
|
|
801
925
|
const allContollerNames = [
|
|
802
926
|
'aggregate',
|
|
803
927
|
'category',
|
|
804
928
|
'comment',
|
|
929
|
+
'link',
|
|
805
930
|
'note',
|
|
806
931
|
'page',
|
|
807
932
|
'post',
|
|
933
|
+
'project',
|
|
934
|
+
'recently',
|
|
808
935
|
'say',
|
|
936
|
+
'search',
|
|
937
|
+
'snippet',
|
|
809
938
|
'user',
|
|
810
939
|
];
|
|
811
940
|
|
|
@@ -813,6 +942,12 @@
|
|
|
813
942
|
get master() {
|
|
814
943
|
return this.user;
|
|
815
944
|
}
|
|
945
|
+
get friend() {
|
|
946
|
+
return this.link;
|
|
947
|
+
}
|
|
948
|
+
get shorthand() {
|
|
949
|
+
return this.recently;
|
|
950
|
+
}
|
|
816
951
|
}
|
|
817
952
|
|
|
818
953
|
class RequestError extends Error {
|
|
@@ -929,7 +1064,7 @@
|
|
|
929
1064
|
const transform = Array.isArray(data) || isPlainObject(data)
|
|
930
1065
|
? camelcaseKeys(data, { deep: true })
|
|
931
1066
|
: data;
|
|
932
|
-
Object.defineProperty(transform, 'raw', {
|
|
1067
|
+
Object.defineProperty(transform, '$raw', {
|
|
933
1068
|
get() {
|
|
934
1069
|
return res;
|
|
935
1070
|
},
|
|
@@ -937,7 +1072,7 @@
|
|
|
937
1072
|
configurable: false,
|
|
938
1073
|
});
|
|
939
1074
|
// attach request config onto response
|
|
940
|
-
Object.defineProperty(transform, 'request', {
|
|
1075
|
+
Object.defineProperty(transform, '$request', {
|
|
941
1076
|
get() {
|
|
942
1077
|
return {
|
|
943
1078
|
url,
|
|
@@ -964,17 +1099,33 @@
|
|
|
964
1099
|
}
|
|
965
1100
|
}
|
|
966
1101
|
function createClient(adapter) {
|
|
967
|
-
return (endpoint) => {
|
|
968
|
-
|
|
1102
|
+
return (endpoint, options) => {
|
|
1103
|
+
const client = new HTTPClient(endpoint, adapter);
|
|
1104
|
+
const { controllers } = options || {};
|
|
1105
|
+
if (controllers) {
|
|
1106
|
+
client.injectControllers(controllers);
|
|
1107
|
+
}
|
|
1108
|
+
return client;
|
|
969
1109
|
};
|
|
970
1110
|
}
|
|
971
1111
|
|
|
1112
|
+
exports.AggregateController = AggregateController;
|
|
1113
|
+
exports.CategoryController = CategoryController;
|
|
1114
|
+
exports.CommentController = CommentController;
|
|
972
1115
|
exports.HTTPClient = HTTPClient;
|
|
973
|
-
exports.
|
|
974
|
-
exports.
|
|
1116
|
+
exports.LinkController = LinkController;
|
|
1117
|
+
exports.NoteController = NoteController;
|
|
1118
|
+
exports.PageController = PageController;
|
|
1119
|
+
exports.PostController = PostController;
|
|
1120
|
+
exports.ProjectController = ProjectController;
|
|
1121
|
+
exports.RecentlyController = RecentlyController;
|
|
975
1122
|
exports.RequestError = RequestError;
|
|
976
|
-
exports.
|
|
977
|
-
exports.
|
|
1123
|
+
exports.SayController = SayController;
|
|
1124
|
+
exports.SearchController = SearchController;
|
|
1125
|
+
exports.SnippetController = SnippetController;
|
|
1126
|
+
exports.UserController = UserController;
|
|
1127
|
+
exports.allContollerNames = allContollerNames;
|
|
1128
|
+
exports.allControllers = allControllers;
|
|
978
1129
|
exports.createClient = createClient;
|
|
979
1130
|
|
|
980
1131
|
Object.defineProperty(exports, '__esModule', { value: true });
|