unsplash-js
Advanced tools
Comparing version 7.0.3 to 7.0.4
@@ -19,2 +19,3 @@ import { ApiResponse, HandleResponse } from './response'; | ||
export declare const createRequestHandler: <Args>(fn: (a: Args) => BaseRequestParams) => HandleRequest<Args>; | ||
export declare const createRequestGenerator: <Args, T>(handlers: RequestGenerator<Args, T>) => RequestGenerator<Args, T>; | ||
/** | ||
@@ -21,0 +22,0 @@ * Initial parameters that apply to all calls |
@@ -96,2 +96,20 @@ import * as search from './methods/search'; | ||
}; | ||
topics: { | ||
list: (a: Pick<import("./types/request").PaginationParams, "page" | "perPage"> & { | ||
orderBy?: "featured" | "latest" | "oldest" | "position" | undefined; | ||
topicIdsOrSlugs?: string[] | undefined; | ||
}, additionalFetchOptions?: Pick<RequestInit, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "redirect" | "referrer" | "referrerPolicy" | "signal" | "window"> | undefined) => Promise<import("./helpers/response").ApiResponse<{ | ||
results: import("./methods/topics/types").Basic[]; | ||
total: number; | ||
}>>; | ||
get: (a: { | ||
topicIdOrSlug: string; | ||
}, additionalFetchOptions?: Pick<RequestInit, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "redirect" | "referrer" | "referrerPolicy" | "signal" | "window"> | undefined) => Promise<import("./helpers/response").ApiResponse<import("./methods/topics/types").Full>>; | ||
getPhotos: (a: { | ||
topicIdOrSlug: string; | ||
} & import("./types/request").PaginationParams & import("./types/request").OrientationParam, additionalFetchOptions?: Pick<RequestInit, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "redirect" | "referrer" | "referrerPolicy" | "signal" | "window"> | undefined) => Promise<import("./helpers/response").ApiResponse<{ | ||
results: import("./methods/photos/types").Basic[]; | ||
total: number; | ||
}>>; | ||
}; | ||
}; | ||
@@ -98,0 +116,0 @@ export { Language, ColorId, ContentFilter, SearchOrderBy } from './methods/search/types/request'; |
@@ -249,2 +249,5 @@ 'use strict'; | ||
}; | ||
var createRequestGenerator = function createRequestGenerator(handlers) { | ||
return handlers; | ||
}; | ||
var initMakeRequest = function initMakeRequest(_ref) { | ||
@@ -608,2 +611,61 @@ var accessKey = _ref.accessKey, | ||
var BASE_TOPIC_PATH = '/topics'; | ||
var getTopicPath = function getTopicPath(_ref) { | ||
var topicIdOrSlug = _ref.topicIdOrSlug; | ||
return BASE_TOPIC_PATH + "/" + topicIdOrSlug; | ||
}; | ||
var getTopicPhotosPath = /*#__PURE__*/flow(getTopicPath, function (topicPath) { | ||
return topicPath + "/photos"; | ||
}); | ||
var list$2 = /*#__PURE__*/createRequestGenerator({ | ||
handleRequest: function handleRequest(_ref2) { | ||
var page = _ref2.page, | ||
perPage = _ref2.perPage, | ||
orderBy = _ref2.orderBy, | ||
topicIdsOrSlugs = _ref2.topicIdsOrSlugs; | ||
return { | ||
pathname: BASE_TOPIC_PATH, | ||
query: compactDefined(_extends({}, getFeedParams({ | ||
page: page, | ||
perPage: perPage | ||
}), { | ||
ids: topicIdsOrSlugs == null ? void 0 : topicIdsOrSlugs.join(','), | ||
order_by: orderBy | ||
})) | ||
}; | ||
}, | ||
handleResponse: /*#__PURE__*/handleFeedResponse() | ||
}); | ||
var get$3 = /*#__PURE__*/createRequestGenerator({ | ||
handleRequest: function handleRequest(_ref3) { | ||
var topicIdOrSlug = _ref3.topicIdOrSlug; | ||
return { | ||
pathname: getTopicPath({ | ||
topicIdOrSlug: topicIdOrSlug | ||
}), | ||
query: {} | ||
}; | ||
}, | ||
handleResponse: /*#__PURE__*/castResponse() | ||
}); | ||
var getPhotos$3 = /*#__PURE__*/createRequestGenerator({ | ||
handleRequest: function handleRequest(_ref4) { | ||
var topicIdOrSlug = _ref4.topicIdOrSlug, | ||
orientation = _ref4.orientation, | ||
feedParams = _objectWithoutPropertiesLoose(_ref4, ["topicIdOrSlug", "orientation"]); | ||
return { | ||
pathname: getTopicPhotosPath({ | ||
topicIdOrSlug: topicIdOrSlug | ||
}), | ||
query: compactDefined(_extends({}, getFeedParams(feedParams), { | ||
orientation: orientation | ||
})) | ||
}; | ||
}, | ||
handleResponse: /*#__PURE__*/handleFeedResponse() | ||
}); | ||
var trackNonHotLinkedPhotoView = function trackNonHotLinkedPhotoView(_ref) { | ||
@@ -777,2 +839,7 @@ var appId = _ref.appId; | ||
getRelated: makeRequest(getRelated) | ||
}, | ||
topics: { | ||
list: makeRequest(list$2), | ||
get: makeRequest(get$3), | ||
getPhotos: makeRequest(getPhotos$3) | ||
} | ||
@@ -779,0 +846,0 @@ }; |
@@ -1,2 +0,2 @@ | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("content-type");function n(){return(n=Object.assign||function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e}).apply(this,arguments)}function t(e,n){if(null==e)return{};var t,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)n.indexOf(t=o[r])>=0||(a[t]=e[t]);return a}var r=o((function(e){return"string"==typeof e?e:null})),a=function(e){return null!=e};function o(e){return function(n){return a(e(n))}}var s=function(e){return Object.keys(e).reduce((function(t,r){var o,s=e[r];return n({},t,a(s)?((o={})[r]=s,o):{})}),{})};function i(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];var r=n.length-1;return function(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];for(var o=n[0].apply(this,t),s=1;s<=r;s++)o=n[s].call(this,o);return o}}var u,l,c=o((function(e){return a(e)&&"object"==typeof e&&!Array.isArray(e)?e:null})),h=o((function(e){return Array.isArray(e)&&e.every(r)&&e.length>0?e:null})),p=o((function(e){return c(e)&&"errors"in e&&h(e.errors)?{errors:e.errors}:null})),d=function(e){this.message=e},f=function(n){if(function(n){var t=n.headers.get("content-type");return a(t)&&"application/json"===e.parse(t).type}(n))return n.json().catch((function(e){throw new d("unable to parse JSON response.")}));throw new d("expected JSON response from server.")},g=function(){return function(e){return f(e.response)}},y=function(e){return function(r,a){void 0===a&&(a={});var o=e(r),s=o.headers,i=o.query;return n({},t(o,["headers","query"]),a,{query:i,headers:n({},s,a.headers)})}},m=function(e){var r=e.accessKey,o=e.apiVersion,s=void 0===o?"v1":o,u=e.apiUrl,l=void 0===u?"https://api.unsplash.com":u,c=e.headers,h=e.fetch,g=t(e,["accessKey","apiVersion","apiUrl","headers","fetch"]);return function(e){var t=e.handleResponse;return i(e.handleRequest,(function(e){var o=e.method,i=void 0===o?"GET":o,u=e.headers,y=e.body,m=e.signal,v=function(e){var n=e.pathname,t=e.query;return function(e){var r=new URL(e);return function(e){return function(n){"/"===n.pathname?n.pathname=e:n.pathname+=e}}(n)(r),function(e){return function(n){Object.keys(e).forEach((function(t){return n.searchParams.set(t,e[t].toString())}))}}(t)(r),r.toString()}}({pathname:e.pathname,query:e.query})(l),q=n({method:i,headers:n({},c,u,{"Accept-Version":s},a(r)?{Authorization:"Client-ID "+r}:{}),body:y,signal:m},g);return(null!=h?h:fetch)(v,q).then(function(e){return function(t){return(t.ok?e({response:t}).then((function(e){return{type:"success",status:t.status,response:e}})):f(t).then((function(e){return n({type:"error",status:t.status},function(e){return p(e)?{errors:e.errors,source:"api"}:{errors:["Responded with a status code outside the 2xx range, and the response body is not recognisable."],source:"decoding"}}(e))}))).catch((function(e){if(e instanceof d)return{type:"error",source:"decoding",status:t.status,errors:[e.message]};throw e}))}}(t))}))}},v=function(e){var n=e.headers.get("x-total");if(a(n)){var t=parseInt(n);if(Number.isInteger(t))return t;throw new d("expected x-total header to be valid integer.")}throw new d("expected x-total header to exist.")},q=function(){return function(e){var n=e.response;return g()({response:n}).then((function(e){return{results:e,total:v(n)}}))}},R=function(e){return a(e)?{collections:e.join()}:{}},w=function(e){return s({per_page:e.perPage,order_by:e.orderBy,page:e.page})},b={handleRequest:y((function(e){var r=e.collectionId,a=e.orientation,o=t(e,["collectionId","orientation"]);return{pathname:"/collections/"+r+"/photos",query:s(n({},w(o),{orientation:a}))}})),handleResponse:q()},k={handleRequest:y((function(e){return{pathname:"/collections/"+e.collectionId,query:{}}})),handleResponse:g()},_={handleRequest:y((function(e){return void 0===e&&(e={}),{pathname:"/collections",query:w(e)}})),handleResponse:q()},P={handleRequest:y((function(e){return{pathname:"/collections/"+e.collectionId+"/related",query:{}}})),handleResponse:g()},S={__proto__:null,getPhotos:b,get:k,list:_,getRelated:P},I={handleRequest:y((function(e){return void 0===e&&(e={}),{pathname:"/photos",query:s(w(e))}})),handleResponse:q()},x={handleRequest:y((function(e){return{pathname:"/photos/"+e.photoId,query:{}}})),handleResponse:g()},A={handleRequest:y((function(e){return{pathname:"/photos/"+e.photoId+"/statistics",query:{}}})),handleResponse:g()},j={handleRequest:y((function(e){var r=void 0===e?{}:e,a=r.collectionIds,o=t(r,["collectionIds"]);return{pathname:"/photos/random",query:s(n({},o,R(a))),headers:{"cache-control":"no-cache"}}})),handleResponse:g()},L={handleRequest:y((function(e){var n=function(e){var n=new URL(e),t=n.pathname,r={};return n.searchParams.forEach((function(e,n){r[n]=e})),{query:r,pathname:"/"===t?void 0:t}}(e.downloadLocation),t=n.pathname,r=n.query;if(!a(t))throw new Error("Could not parse pathname from url.");return{pathname:t,query:s(r)}})),handleResponse:g()},O={__proto__:null,list:I,get:x,getStats:A,getRandom:j,trackDownload:L},C={handleRequest:y((function(e){var r=e.query,a=e.page,o=e.perPage,i=e.orderBy,u=e.collectionIds,l=e.lang,c=e.contentFilter,h=t(e,["query","page","perPage","orderBy","collectionIds","lang","contentFilter"]);return{pathname:"/search/photos",query:s(n({query:r,content_filter:c,lang:l,order_by:i},w({page:a,perPage:o}),R(u),h))}})),handleResponse:g()},T={handleRequest:y((function(e){var r=e.query,a=t(e,["query"]);return{pathname:"/search/collections",query:n({query:r},w(a))}})),handleResponse:g()},z={handleRequest:y((function(e){var r=e.query,a=t(e,["query"]);return{pathname:"/search/users",query:n({query:r},w(a))}})),handleResponse:g()},U={__proto__:null,getPhotos:C,getCollections:T,getUsers:z},B={handleRequest:y((function(e){return{pathname:"/users/"+e.username,query:{}}})),handleResponse:g()},E={handleRequest:y((function(e){var r=e.username,a=e.stats,o=e.orientation,i=t(e,["username","stats","orientation"]);return{pathname:"/users/"+r+"/photos",query:s(n({},w(i),{orientation:o,stats:a}))}})),handleResponse:q()},M={handleRequest:y((function(e){var r=e.username,a=e.orientation,o=t(e,["username","orientation"]);return{pathname:"/users/"+r+"/likes",query:s(n({},w(o),{orientation:a}))}})),handleResponse:q()},K={handleRequest:y((function(e){var n=e.username,r=t(e,["username"]);return{pathname:"/users/"+n+"/collections",query:w(r)}})),handleResponse:q()},H={__proto__:null,collections:S,photos:O,search:U,users:{__proto__:null,get:B,getPhotos:E,getLikes:M,getCollections:K},trackNonHotLinkedPhotoView:function(e){var n=e.appId;return function(e){var t=e.photoId,r=Array.isArray(t)?t:[t];if(r.length>20)throw new Error("You cannot track more than 20 photos at once. Please try again with fewer photos.");return fetch("views.unsplash.com/v?photo_id="+r.join()+"&app_id="+n)}}};(u=exports.Language||(exports.Language={})).Afrikaans="af",u.Amharic="am",u.Arabic="ar",u.Azerbaijani="az",u.Belarusian="be",u.Bulgarian="bg",u.Bengali="bn",u.Bosnian="bs",u.Catalan="ca",u.Cebuano="ceb",u.Corsican="co",u.Czech="cs",u.Welsh="cy",u.Danish="da",u.German="de",u.Greek="el",u.English="en",u.Esperanto="eo",u.Spanish="es",u.Estonian="et",u.Basque="eu",u.Persian="fa",u.Finnish="fi",u.French="fr",u.Frisian="fy",u.Irish="ga",u.ScotsGaelic="gd",u.Galician="gl",u.Gujarati="gu",u.Hausa="ha",u.Hawaiian="haw",u.Hindi="hi",u.Hmong="hmn",u.Croatian="hr",u.HaitianCreole="ht",u.Hungarian="hu",u.Armenian="hy",u.Indonesian="id",u.Igbo="ig",u.Icelandic="is",u.Italian="it",u.Hebrew="iw",u.Japanese="ja",u.Javanese="jw",u.Georgian="ka",u.Kazakh="kk",u.Khmer="km",u.Kannada="kn",u.Korean="ko",u.Kurdish="ku",u.Kyrgyz="ky",u.Latin="la",u.Luxembourgish="lb",u.Lao="lo",u.Lithuanian="lt",u.Latvian="lv",u.Malagasy="mg",u.Maori="mi",u.Macedonian="mk",u.Malayalam="ml",u.Mongolian="mn",u.Marathi="mr",u.Malay="ms",u.Maltese="mt",u.Myanmar="my",u.Nepali="ne",u.Dutch="nl",u.Norwegian="no",u.Nyanja="ny",u.Oriya="or",u.Punjabi="pa",u.Polish="pl",u.Pashto="ps",u.Portuguese="pt",u.Romanian="ro",u.Russian="ru",u.Kinyarwanda="rw",u.Sindhi="sd",u.Sinhala="si",u.Slovak="sk",u.Slovenian="sl",u.Samoan="sm",u.Shona="sn",u.Somali="so",u.Albanian="sq",u.Serbian="sr",u.Sesotho="st",u.Sundanese="su",u.Swedish="sv",u.Swahili="sw",u.Tamil="ta",u.Telugu="te",u.Tajik="tg",u.Thai="th",u.Turkmen="tk",u.Filipino="tl",u.Turkish="tr",u.Tatar="tt",u.Uighur="ug",u.Ukrainian="uk",u.Urdu="ur",u.Uzbek="uz",u.Vietnamese="vi",u.Xhosa="xh",u.Yiddish="yi",u.Yoruba="yo",u.ChineseSimplified="zh",u.ChineseTraditional="zh-TW",u.Zulu="zu",(l=exports.OrderBy||(exports.OrderBy={})).LATEST="latest",l.POPULAR="popular",l.OLDEST="oldest";var G=i(m,(function(e){return{photos:{get:e(x),list:e(I),getStats:e(A),getRandom:e(j),trackDownload:e(L)},users:{getPhotos:e(E),getCollections:e(K),getLikes:e(M),get:e(B)},search:{getCollections:e(T),getPhotos:e(C),getUsers:e(z)},collections:{getPhotos:e(b),get:e(k),list:e(_),getRelated:e(P)}}}));exports._internals=H,exports.createApi=G; | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("content-type");function n(){return(n=Object.assign||function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e}).apply(this,arguments)}function t(e,n){if(null==e)return{};var t,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)n.indexOf(t=o[r])>=0||(a[t]=e[t]);return a}var r=o((function(e){return"string"==typeof e?e:null})),a=function(e){return null!=e};function o(e){return function(n){return a(e(n))}}var s=function(e){return Object.keys(e).reduce((function(t,r){var o,s=e[r];return n({},t,a(s)?((o={})[r]=s,o):{})}),{})};function i(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];var r=n.length-1;return function(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];for(var o=n[0].apply(this,t),s=1;s<=r;s++)o=n[s].call(this,o);return o}}var u,l,c=o((function(e){return a(e)&&"object"==typeof e&&!Array.isArray(e)?e:null})),h=o((function(e){return Array.isArray(e)&&e.every(r)&&e.length>0?e:null})),p=o((function(e){return c(e)&&"errors"in e&&h(e.errors)?{errors:e.errors}:null})),d=function(e){this.message=e},f=function(n){if(function(n){var t=n.headers.get("content-type");return a(t)&&"application/json"===e.parse(t).type}(n))return n.json().catch((function(e){throw new d("unable to parse JSON response.")}));throw new d("expected JSON response from server.")},g=function(){return function(e){return f(e.response)}},y=function(e){return function(r,a){void 0===a&&(a={});var o=e(r),s=o.headers,i=o.query;return n({},t(o,["headers","query"]),a,{query:i,headers:n({},s,a.headers)})}},m=function(e){return e},v=function(e){var r=e.accessKey,o=e.apiVersion,s=void 0===o?"v1":o,u=e.apiUrl,l=void 0===u?"https://api.unsplash.com":u,c=e.headers,h=e.fetch,g=t(e,["accessKey","apiVersion","apiUrl","headers","fetch"]);return function(e){var t=e.handleResponse;return i(e.handleRequest,(function(e){var o=e.method,i=void 0===o?"GET":o,u=e.headers,y=e.body,m=e.signal,v=function(e){var n=e.pathname,t=e.query;return function(e){var r=new URL(e);return function(e){return function(n){"/"===n.pathname?n.pathname=e:n.pathname+=e}}(n)(r),function(e){return function(n){Object.keys(e).forEach((function(t){return n.searchParams.set(t,e[t].toString())}))}}(t)(r),r.toString()}}({pathname:e.pathname,query:e.query})(l),q=n({method:i,headers:n({},c,u,{"Accept-Version":s},a(r)?{Authorization:"Client-ID "+r}:{}),body:y,signal:m},g);return(null!=h?h:fetch)(v,q).then(function(e){return function(t){return(t.ok?e({response:t}).then((function(e){return{type:"success",status:t.status,response:e}})):f(t).then((function(e){return n({type:"error",status:t.status},function(e){return p(e)?{errors:e.errors,source:"api"}:{errors:["Responded with a status code outside the 2xx range, and the response body is not recognisable."],source:"decoding"}}(e))}))).catch((function(e){if(e instanceof d)return{type:"error",source:"decoding",status:t.status,errors:[e.message]};throw e}))}}(t))}))}},q=function(e){var n=e.headers.get("x-total");if(a(n)){var t=parseInt(n);if(Number.isInteger(t))return t;throw new d("expected x-total header to be valid integer.")}throw new d("expected x-total header to exist.")},R=function(){return function(e){var n=e.response;return g()({response:n}).then((function(e){return{results:e,total:q(n)}}))}},w=function(e){return a(e)?{collections:e.join()}:{}},b=function(e){return s({per_page:e.perPage,order_by:e.orderBy,page:e.page})},k={handleRequest:y((function(e){var r=e.collectionId,a=e.orientation,o=t(e,["collectionId","orientation"]);return{pathname:"/collections/"+r+"/photos",query:s(n({},b(o),{orientation:a}))}})),handleResponse:R()},S={handleRequest:y((function(e){return{pathname:"/collections/"+e.collectionId,query:{}}})),handleResponse:g()},_={handleRequest:y((function(e){return void 0===e&&(e={}),{pathname:"/collections",query:b(e)}})),handleResponse:R()},I={handleRequest:y((function(e){return{pathname:"/collections/"+e.collectionId+"/related",query:{}}})),handleResponse:g()},P={__proto__:null,getPhotos:k,get:S,list:_,getRelated:I},O={handleRequest:y((function(e){return void 0===e&&(e={}),{pathname:"/photos",query:s(b(e))}})),handleResponse:R()},j={handleRequest:y((function(e){return{pathname:"/photos/"+e.photoId,query:{}}})),handleResponse:g()},x={handleRequest:y((function(e){return{pathname:"/photos/"+e.photoId+"/statistics",query:{}}})),handleResponse:g()},A={handleRequest:y((function(e){var r=void 0===e?{}:e,a=r.collectionIds,o=t(r,["collectionIds"]);return{pathname:"/photos/random",query:s(n({},o,w(a))),headers:{"cache-control":"no-cache"}}})),handleResponse:g()},L={handleRequest:y((function(e){var n=function(e){var n=new URL(e),t=n.pathname,r={};return n.searchParams.forEach((function(e,n){r[n]=e})),{query:r,pathname:"/"===t?void 0:t}}(e.downloadLocation),t=n.pathname,r=n.query;if(!a(t))throw new Error("Could not parse pathname from url.");return{pathname:t,query:s(r)}})),handleResponse:g()},C={__proto__:null,list:O,get:j,getStats:x,getRandom:A,trackDownload:L},T={handleRequest:y((function(e){var r=e.query,a=e.page,o=e.perPage,i=e.orderBy,u=e.collectionIds,l=e.lang,c=e.contentFilter,h=t(e,["query","page","perPage","orderBy","collectionIds","lang","contentFilter"]);return{pathname:"/search/photos",query:s(n({query:r,content_filter:c,lang:l,order_by:i},b({page:a,perPage:o}),w(u),h))}})),handleResponse:g()},z={handleRequest:y((function(e){var r=e.query,a=t(e,["query"]);return{pathname:"/search/collections",query:n({query:r},b(a))}})),handleResponse:g()},B={handleRequest:y((function(e){var r=e.query,a=t(e,["query"]);return{pathname:"/search/users",query:n({query:r},b(a))}})),handleResponse:g()},U={__proto__:null,getPhotos:T,getCollections:z,getUsers:B},E={handleRequest:y((function(e){return{pathname:"/users/"+e.username,query:{}}})),handleResponse:g()},M={handleRequest:y((function(e){var r=e.username,a=e.stats,o=e.orientation,i=t(e,["username","stats","orientation"]);return{pathname:"/users/"+r+"/photos",query:s(n({},b(i),{orientation:o,stats:a}))}})),handleResponse:R()},K={handleRequest:y((function(e){var r=e.username,a=e.orientation,o=t(e,["username","orientation"]);return{pathname:"/users/"+r+"/likes",query:s(n({},b(o),{orientation:a}))}})),handleResponse:R()},H={handleRequest:y((function(e){var n=e.username,r=t(e,["username"]);return{pathname:"/users/"+n+"/collections",query:b(r)}})),handleResponse:R()},G={__proto__:null,get:E,getPhotos:M,getLikes:K,getCollections:H},N=function(e){return"/topics/"+e.topicIdOrSlug},D=i(N,(function(e){return e+"/photos"})),F=m({handleRequest:function(e){var t=e.orderBy,r=e.topicIdsOrSlugs;return{pathname:"/topics",query:s(n({},b({page:e.page,perPage:e.perPage}),{ids:null==r?void 0:r.join(","),order_by:t}))}},handleResponse:R()}),V=m({handleRequest:function(e){return{pathname:N({topicIdOrSlug:e.topicIdOrSlug}),query:{}}},handleResponse:g()}),J=m({handleRequest:function(e){var r=e.topicIdOrSlug,a=e.orientation,o=t(e,["topicIdOrSlug","orientation"]);return{pathname:D({topicIdOrSlug:r}),query:s(n({},b(o),{orientation:a}))}},handleResponse:R()}),Y={__proto__:null,collections:P,photos:C,search:U,users:G,trackNonHotLinkedPhotoView:function(e){var n=e.appId;return function(e){var t=e.photoId,r=Array.isArray(t)?t:[t];if(r.length>20)throw new Error("You cannot track more than 20 photos at once. Please try again with fewer photos.");return fetch("views.unsplash.com/v?photo_id="+r.join()+"&app_id="+n)}}};(u=exports.Language||(exports.Language={})).Afrikaans="af",u.Amharic="am",u.Arabic="ar",u.Azerbaijani="az",u.Belarusian="be",u.Bulgarian="bg",u.Bengali="bn",u.Bosnian="bs",u.Catalan="ca",u.Cebuano="ceb",u.Corsican="co",u.Czech="cs",u.Welsh="cy",u.Danish="da",u.German="de",u.Greek="el",u.English="en",u.Esperanto="eo",u.Spanish="es",u.Estonian="et",u.Basque="eu",u.Persian="fa",u.Finnish="fi",u.French="fr",u.Frisian="fy",u.Irish="ga",u.ScotsGaelic="gd",u.Galician="gl",u.Gujarati="gu",u.Hausa="ha",u.Hawaiian="haw",u.Hindi="hi",u.Hmong="hmn",u.Croatian="hr",u.HaitianCreole="ht",u.Hungarian="hu",u.Armenian="hy",u.Indonesian="id",u.Igbo="ig",u.Icelandic="is",u.Italian="it",u.Hebrew="iw",u.Japanese="ja",u.Javanese="jw",u.Georgian="ka",u.Kazakh="kk",u.Khmer="km",u.Kannada="kn",u.Korean="ko",u.Kurdish="ku",u.Kyrgyz="ky",u.Latin="la",u.Luxembourgish="lb",u.Lao="lo",u.Lithuanian="lt",u.Latvian="lv",u.Malagasy="mg",u.Maori="mi",u.Macedonian="mk",u.Malayalam="ml",u.Mongolian="mn",u.Marathi="mr",u.Malay="ms",u.Maltese="mt",u.Myanmar="my",u.Nepali="ne",u.Dutch="nl",u.Norwegian="no",u.Nyanja="ny",u.Oriya="or",u.Punjabi="pa",u.Polish="pl",u.Pashto="ps",u.Portuguese="pt",u.Romanian="ro",u.Russian="ru",u.Kinyarwanda="rw",u.Sindhi="sd",u.Sinhala="si",u.Slovak="sk",u.Slovenian="sl",u.Samoan="sm",u.Shona="sn",u.Somali="so",u.Albanian="sq",u.Serbian="sr",u.Sesotho="st",u.Sundanese="su",u.Swedish="sv",u.Swahili="sw",u.Tamil="ta",u.Telugu="te",u.Tajik="tg",u.Thai="th",u.Turkmen="tk",u.Filipino="tl",u.Turkish="tr",u.Tatar="tt",u.Uighur="ug",u.Ukrainian="uk",u.Urdu="ur",u.Uzbek="uz",u.Vietnamese="vi",u.Xhosa="xh",u.Yiddish="yi",u.Yoruba="yo",u.ChineseSimplified="zh",u.ChineseTraditional="zh-TW",u.Zulu="zu",(l=exports.OrderBy||(exports.OrderBy={})).LATEST="latest",l.POPULAR="popular",l.OLDEST="oldest";var W=i(v,(function(e){return{photos:{get:e(j),list:e(O),getStats:e(x),getRandom:e(A),trackDownload:e(L)},users:{getPhotos:e(M),getCollections:e(H),getLikes:e(K),get:e(E)},search:{getCollections:e(z),getPhotos:e(T),getUsers:e(B)},collections:{getPhotos:e(k),get:e(S),list:e(_),getRelated:e(I)},topics:{list:e(F),get:e(V),getPhotos:e(J)}}}));exports._internals=Y,exports.createApi=W; | ||
//# sourceMappingURL=unsplash-js.cjs.production.min.js.map |
@@ -245,2 +245,5 @@ import { parse } from 'content-type'; | ||
}; | ||
var createRequestGenerator = function createRequestGenerator(handlers) { | ||
return handlers; | ||
}; | ||
var initMakeRequest = function initMakeRequest(_ref) { | ||
@@ -604,2 +607,61 @@ var accessKey = _ref.accessKey, | ||
var BASE_TOPIC_PATH = '/topics'; | ||
var getTopicPath = function getTopicPath(_ref) { | ||
var topicIdOrSlug = _ref.topicIdOrSlug; | ||
return BASE_TOPIC_PATH + "/" + topicIdOrSlug; | ||
}; | ||
var getTopicPhotosPath = /*#__PURE__*/flow(getTopicPath, function (topicPath) { | ||
return topicPath + "/photos"; | ||
}); | ||
var list$2 = /*#__PURE__*/createRequestGenerator({ | ||
handleRequest: function handleRequest(_ref2) { | ||
var page = _ref2.page, | ||
perPage = _ref2.perPage, | ||
orderBy = _ref2.orderBy, | ||
topicIdsOrSlugs = _ref2.topicIdsOrSlugs; | ||
return { | ||
pathname: BASE_TOPIC_PATH, | ||
query: compactDefined(_extends({}, getFeedParams({ | ||
page: page, | ||
perPage: perPage | ||
}), { | ||
ids: topicIdsOrSlugs == null ? void 0 : topicIdsOrSlugs.join(','), | ||
order_by: orderBy | ||
})) | ||
}; | ||
}, | ||
handleResponse: /*#__PURE__*/handleFeedResponse() | ||
}); | ||
var get$3 = /*#__PURE__*/createRequestGenerator({ | ||
handleRequest: function handleRequest(_ref3) { | ||
var topicIdOrSlug = _ref3.topicIdOrSlug; | ||
return { | ||
pathname: getTopicPath({ | ||
topicIdOrSlug: topicIdOrSlug | ||
}), | ||
query: {} | ||
}; | ||
}, | ||
handleResponse: /*#__PURE__*/castResponse() | ||
}); | ||
var getPhotos$3 = /*#__PURE__*/createRequestGenerator({ | ||
handleRequest: function handleRequest(_ref4) { | ||
var topicIdOrSlug = _ref4.topicIdOrSlug, | ||
orientation = _ref4.orientation, | ||
feedParams = _objectWithoutPropertiesLoose(_ref4, ["topicIdOrSlug", "orientation"]); | ||
return { | ||
pathname: getTopicPhotosPath({ | ||
topicIdOrSlug: topicIdOrSlug | ||
}), | ||
query: compactDefined(_extends({}, getFeedParams(feedParams), { | ||
orientation: orientation | ||
})) | ||
}; | ||
}, | ||
handleResponse: /*#__PURE__*/handleFeedResponse() | ||
}); | ||
var trackNonHotLinkedPhotoView = function trackNonHotLinkedPhotoView(_ref) { | ||
@@ -777,2 +839,7 @@ var appId = _ref.appId; | ||
getRelated: makeRequest(getRelated) | ||
}, | ||
topics: { | ||
list: makeRequest(list$2), | ||
get: makeRequest(get$3), | ||
getPhotos: makeRequest(getPhotos$3) | ||
} | ||
@@ -779,0 +846,0 @@ }; |
{ | ||
"name": "unsplash-js", | ||
"version": "7.0.3", | ||
"version": "7.0.4", | ||
"description": "Official JavaScript wrapper for the Unsplash API", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
@@ -230,2 +230,3 @@ # Unsplash | ||
- [Collections](https://github.com/unsplash/unsplash-js#collections) | ||
- [Topics](https://github.com/unsplash/unsplash-js#topics) | ||
@@ -621,1 +622,68 @@ --- | ||
``` | ||
--- | ||
## Topics | ||
### topics.list(arguments, additionalFetchOptions) | ||
Get a single page from the list of all topics. [See endpoint docs π](https://unsplash.com/documentation#list-topics) | ||
**Arguments** | ||
| Argument | Type | Opt/Required | Notes | Default | | ||
| --------------------- | --------------- | ------------ | ------------------------------------------ | ---------- | | ||
| **`topicIdsOrSlugs`** | _Array<string>_ | Optional | | [] | | ||
| **`page`** | _number_ | Optional | | 1 | | ||
| **`perPage`** | _number_ | Optional | | 10 | | ||
| **`orderBy`** | _string_ | Optional | `latest`, `oldest`, `featured`, `position` | `position` | | ||
**Example** | ||
```js | ||
unsplash.topics.list({ | ||
page: 1, | ||
perPage: 10, | ||
topicIdsOrSlugs: ['fashion', 'architecture', '6sMVjTLSkeQ'], | ||
}); | ||
``` | ||
--- | ||
### topics.get(arguments, additionalFetchOptions) | ||
Retrieve a single topic. [See endpoint docs π](https://unsplash.com/documentation#get-a-topic) | ||
**Arguments** | ||
| Argument | Type | Opt/Required | | ||
| ------------------- | -------- | ------------ | | ||
| **`topicIdOrSlug`** | _string_ | Required | | ||
**Example** | ||
```js | ||
unsplash.topics.get({ topicIdOrSlug: 'abc123' }); | ||
``` | ||
--- | ||
### topics.getPhotos(arguments, additionalFetchOptions) | ||
Retrieve a topicβs photos. [See endpoint docs π](https://unsplash.com/documentation#get-a-topics-photos) | ||
**Arguments** | ||
| Argument | Type | Opt/Required | Notes | Default | | ||
| ------------------- | -------- | ------------ | ----------------------------------- | -------- | | ||
| **`topicIdOrSlug`** | _string_ | Required | | | | ||
| **`page`** | _number_ | Optional | | 1 | | ||
| **`perPage`** | _number_ | Optional | | 10 | | ||
| **`orderBy`** | _string_ | Optional | `latest`, `oldest`, `popular` | `latest` | | ||
| **`orientation`** | _string_ | Optional | `landscape`, `portrait`, `squarish` | | | ||
**Example** | ||
```js | ||
unsplash.topics.getPhotos({ topicIdOrSlug: 'abc123' }); | ||
``` |
@@ -44,2 +44,4 @@ import { flow } from './fp'; | ||
export const createRequestGenerator = <Args, T>(handlers: RequestGenerator<Args, T>) => handlers; | ||
/** | ||
@@ -46,0 +48,0 @@ * Initial parameters that apply to all calls |
@@ -7,2 +7,3 @@ import { flow } from './helpers/fp'; | ||
import * as users from './methods/users'; | ||
import * as topics from './methods/topics'; | ||
@@ -36,2 +37,7 @@ import * as _internals from './internals'; | ||
}, | ||
topics: { | ||
list: makeRequest(topics.list), | ||
get: makeRequest(topics.get), | ||
getPhotos: makeRequest(topics.getPhotos), | ||
}, | ||
})); | ||
@@ -38,0 +44,0 @@ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
298487
61
3435
688