next-slicezone
Version:
A component that maps other components to Prismic slices
2 lines (1 loc) • 6.45 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("@babel/runtime/helpers/asyncToGenerator"),r=require("@babel/runtime/regenerator"),n=require("@babel/runtime/helpers/toConsumableArray"),a=require("@babel/runtime/helpers/objectWithoutProperties");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=i(e),s=i(t),u=i(r),c=i(n),p=i(a),l=["uid"],f=["repeat","repeatable","multi"];function d(e){return y.apply(this,arguments)}function y(){return(y=s.default(u.default.mark((function e(t){var r,n,a,i,o,s,d;return u.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.queryType,n=t.apiParams,a=t.type,i=t.client,o=n.uid,s=p.default(n,l),d=-1!==f.indexOf(r)?["getByUID",[a,o,s]]:["getSingle",[a,s]],e.next=5,i[d[0]].apply(i,c.default(d[1]));case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function b(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function v(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?b(Object(r),!0).forEach((function(t){o.default(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):b(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var P=function(e,t){var r;if(e)if(t)t in e.data&&Array.isArray(e.data[t])?r=e.data[t]:console.error("[SliceZone/useGetStaticProps] Cannot find slice zone at specified key `%s`\n\nCheck the document below to make sure you provided the right key:",t,e.data);else{for(var n=0,a=["body","slices"];n<a.length;n++){var i=a[n];if(i in e.data&&Array.isArray(e.data[i])){r=e.data[i];break}}r||console.error('[SliceZone/useGetStaticProps] Cannot find slice zone in document\n\nCheck the document below to make sure your slice zone is here or provide the `slicesKey` option:\n\nuseGetStaticProps({ /* ... */ slicesKey: "mySliceZone" });\n',e.data)}return r||[]};function h(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function m(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?h(Object(r),!0).forEach((function(t){o.default(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):h(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function g(e,t,r){return w.apply(this,arguments)}function w(){return(w=s.default(u.default.mark((function e(t,r,n){var a,i,o,s,p=arguments;return u.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=p.length>3&&void 0!==p[3]?p[3]:1,i=p.length>4&&void 0!==p[4]?p[4]:[],e.next=4,t.query('[at(document.type, "'.concat(r,'")]'),m(m({pageSize:100,lang:"*"},n),{},{page:a}));case 4:if(o=e.sent,s=i.concat(o.results),!(o.results_size+i.length<o.total_results_size)){e.next=8;break}return e.abrupt("return",g(t,r,n,a+1,s));case 8:return e.abrupt("return",c.default(new Set(s)));case 9:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function O(e,t){return j.apply(this,arguments)}function j(){return(j=s.default(u.default.mark((function e(t,r){var n,a=arguments;return u.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length>2&&void 0!==a[2]?a[2]:{},e.next=3,g(t,r,n);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}exports.useGetStaticPaths=function(e){var t=e.type,r=void 0===t?"page":t,n=e.formatPath,a=void 0===n?function(){return null}:n,i=e.apiParams,o=e.client,p=e.getStaticPathsParams,l=void 0===p?{fallback:!1}:p,f=e.lang,d=e.params,y=e.fallback;!function(e){null!=e&&console.warn("[next-slicezone] Parameter `fallback` is deprecated. Use getStaticPathsParams.fallback instead.")}(y);var b=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;return(arguments.length>2?arguments[2]:void 0)&&console.warn("[next-slicezone] Parameter `lang` is deprecated. Use `apiParams.lang` instead."),t?(console.warn("[next-slicezone] Parameter `params` is deprecated. Use `apiParams` instead."),t):e}(i,d,f);return function(){var e=s.default(u.default.mark((function e(){var t;return u.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,O(o,r,b);case 2:return t=e.sent,e.abrupt("return",m({paths:t.reduce((function(e,t){var r=a(t);return r?[].concat(c.default(e),[r]):e}),[]),fallback:y},l));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()},exports.useGetStaticProps=function(e){var t=e.client,r=e.slicesKey,n=e.type,a=void 0===n?"page":n,i=e.getStaticPropsParams,o=void 0===i?{}:i,c=e.queryType,p=void 0===c?"repeat":c,l=e.apiParams,f=e.uid,y=e.lang,b=e.body;return f&&console.warn('[next-slicezone/useGetStaticProps]: Parameter "uid" is deprecated, use "apiParams.uid" instead.'),y&&console.warn('[next-slicezone/useGetStaticProps]: Parameter "lang" is deprecated, use "apiParams.lang" instead.'),b&&console.warn('[next-slicezone/useGetStaticProps]: Parameter "body" is deprecated, use "slicesKey" instead.'),function(){var e=s.default(u.default.mark((function e(n){var i,s,c,f,y,h,m,g,w,O;return u.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=n.preview,s=void 0===i?null:i,c=n.previewData,f=void 0===c?{}:c,y=n.params,h=void 0===y?{}:y,m=f.ref,g=void 0===m?null:m,w=l&&"function"==typeof l?l({params:h,previewData:f,preview:s}):l,e.prev=3,e.next=6,d({queryType:p,apiParams:Object.assign({ref:g},w),type:a,client:t});case 6:return O=e.sent,e.abrupt("return",v({props:v(v({},O),{},{error:null,preview:s,previewData:f,slices:P(O,r||b)})},o));case 10:return e.prev=10,e.t0=e.catch(3),"production"!==process.env.NODE_ENV&&console.error("[next-slicezone] ".concat(e.t0.toString())),e.abrupt("return",v({props:{ref:g,error:e.t0.toString(),apiParams:l,slices:[],preview:s,previewData:f}},o));case 14:case"end":return e.stop()}}),e,null,[[3,10]])})));return function(t){return e.apply(this,arguments)}}()};