@apolitical/sdk 3.2.0-rc.1 → 3.2.0-rc.14

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 (2) hide show
  1. package/build/index.js +1 -1
  2. package/package.json +1 -1
package/build/index.js CHANGED
@@ -1 +1 @@
1
- !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("@apolitical/auth"),require("@apolitical/content"),require("@apolitical/error-reporting"),require("@apolitical/gtm"),require("axios"),require("http-status-codes"),require("buffer")):"function"==typeof define&&define.amd?define(["@apolitical/auth","@apolitical/content","@apolitical/error-reporting","@apolitical/gtm","axios","http-status-codes","buffer"],e):"object"==typeof exports?exports.ApoliticalSDK=e(require("@apolitical/auth"),require("@apolitical/content"),require("@apolitical/error-reporting"),require("@apolitical/gtm"),require("axios"),require("http-status-codes"),require("buffer")):t.ApoliticalSDK=e(t["@apolitical/auth"],t["@apolitical/content"],t["@apolitical/error-reporting"],t["@apolitical/gtm"],t.axios,t["http-status-codes"],t.buffer)}(this,(function(t,e,a,n,r,o,s){return function(){"use strict";var i={654:function(e){e.exports=t},809:function(t){t.exports=e},30:function(t){t.exports=a},36:function(t){t.exports=n},300:function(t){t.exports=r},408:function(t){t.exports=s},25:function(t){t.exports=o}},c={};function u(t){var e=c[t];if(void 0!==e)return e.exports;var a=c[t]={exports:{}};return i[t](a,a.exports,u),a.exports}u.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return u.d(e,{a:e}),e},u.d=function(t,e){for(var a in e)u.o(e,a)&&!u.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},u.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},u.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var E={};return function(){u.r(E),u.d(E,{assets:function(){return O},auth:function(){return U},buildQuestion:function(){return Se},buildQuestions:function(){return le},buildSliderCard:function(){return Oe},contentInteraction:function(){return V},contentSuggestion:function(){return J},decodeBase64:function(){return ye},default:function(){return fe},getAuthContext:function(){return t.getContext},getEntries:function(){return e.getEntries},getEntry:function(){return e.getEntry},management:function(){return ot},passwordlessLogin:function(){return t.passwordlessLogin},payments:function(){return ut},people:function(){return Ht},peopleEngagement:function(){return ne},reportError:function(){return a.reportError},sendVerificationEmail:function(){return t.sendVerificationEmail}});var t=u(654),e=u(809),a=u(30),n=u(36),r={APOLITICAL:{WEBSITES:{LIVE:"https://apolitical.co",LOCALHOST:"localhost",STAGING:/https:\/\/([\w|\d|-]+)\.apolitical\.co/i,STAGING_SPLITTER:"-"},ENVIRONMENTS:{PRODUCTION:"live",LOCAL:"local"}},APIS:{ASSETS_API:{BASE_URL:"/api/assets-api",ENDPOINTS:{USERS:"/users",CERTIFICATES:"/certificates"}},AUTH_API:{BASE_URL:"/api/auth-api",ENDPOINTS:{USER_PASSWORD:"/password",USERS:"/users"}},CONTENT_INTERACTION_API:{BASE_URL:"/api/content-interaction-api",ENDPOINTS:{QUESTIONS:"/questions",ANSWERS:"/answers",LIKES:"/likes"}},CONTENT_SUGGESTIONS_API:{BASE_URL:"/api/content-suggestions-api",ENDPOINTS:{SUGGESTIONS:"/suggest"}},MANAGEMENT_API:{BASE_URL:"/api/management-api",ENDPOINTS:{ACCOUNTS:"/accounts",LOGINS:"/logins",LOGIN_PASSWORDLESS:"/passwordless"}},PAYMENTS_API:{BASE_URL:"/api/payments-api",BASE_URL_V2:"/api/payments-api/v2",ENDPOINTS:{PRODUCTS:"/products"}},PEOPLE_API:{BASE_URL:"/api/people-api",BASE_URL_V2:"/api/people-api/v2",ENDPOINTS:{REGISTRATIONS:"/registrations",USERS:"/users",USER_ANSWERS:"/answers",USER_COURSES:"/courses",USER_EVENTS:"/events",USER_LESSONS:"/lessons",USER_PRODUCTS:"/products",USER_SUBSCRIPTIONS:"/subscriptions"}},PEOPLE_ENGAGEMENT_API:{BASE_URL:"/api/people-engagement-api",ENDPOINTS:{ENQUIRY_EMAILS:"/enquiry-emails",USERS:"/users",USER_PROPERTIES:"/properties"}}},CONTENTFUL:{ARTICLES:{TYPE:"solutionArticle"},COURSES:{TYPE:"microcourse"},EDITORIAL_PAGES:{TYPE:"editorialPage"},EVENTS:{TYPE:"event"},LISTS:{TYPE:"listPage"},QUESTIONS:{TYPE:"qaQuestion",ORDER:"-sys.updatedAt",FIELDS:"sys.createdAt,sys.updatedAt,fields.title,fields.slug,fields.authorId,fields.answers,fields.isEdited"}},HUBSPOT:{ENVIRONMENTS_MAPPING:{local:"SANDBOX",beta:"SANDBOX",rc:"SANDBOX",live:"LIVE"},EMAIL_IDS:{SANDBOX:{internalEmailId:49099078634,externalEmailId:55196526554},LIVE:{internalEmailId:55233583049,externalEmailId:55231159239}}},USERS:{MYSELF:"me"}};const{APOLITICAL:{WEBSITES:{LIVE:o,LOCALHOST:s,STAGING:i,STAGING_SPLITTER:c},ENVIRONMENTS:{PRODUCTION:S,LOCAL:l}}}=r,{HUBSPOT:{ENVIRONMENTS_MAPPING:p,EMAIL_IDS:d}}=r;let I={emailIds:{}};var w=u(300),N=u.n(w);const T=async t=>{try{const{message:e,response:n,request:r}=t;let o=e;return n?o+=` - The request was made and the server responded with ${JSON.stringify({status:n.status,data:n.data})}`:r&&(o+=" - The request was made but no response was received"),console.warn(o),await(0,a.reportError)(new Error(o)),o}catch(t){return console.warn(`Cannot handle error: ${t.message}`),t.message}},{APIS:{ASSETS_API:{BASE_URL:A,ENDPOINTS:{USERS:P,CERTIFICATES:h}}}}=r;var O={certificates:{create:async(t,e)=>{let a=[];try{const{data:n}=await N().post(`${A}${P}/${t}${h}`,e);n&&(a=n)}catch(t){await T(t)}return a}}};const{APIS:{AUTH_API:{BASE_URL:R,ENDPOINTS:{USER_PASSWORD:y,USERS:f}}},USERS:{MYSELF:g}}=r;var U={userPassword:{update:async t=>{let e=null;try{e=await N().put(`${R}${f}/${g}${y}`,t)}catch(t){e={message:(((t||{}).response||{}).data||{}).message},await T(t)}return e}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:m,ENDPOINTS:{ANSWERS:$,QUESTIONS:_}}}}=r,L=`${m}${_}`;var C={create:async(t,e)=>{try{await N().post(`${L}/${encodeURIComponent(t)}${$}`,e)}catch(t){const e=await T(t);throw new Error(e)}},remove:async(t,e)=>{try{await N().delete(`${L}/${encodeURIComponent(t)}${$}/${encodeURIComponent(e)}`)}catch(t){const e=await T(t);throw new Error(e)}},update:async(t,e,a)=>{try{return await N().put(`${L}/${encodeURIComponent(t)}${$}/${encodeURIComponent(e)}`,{body:a})}catch(t){const e=await T(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:D,ENDPOINTS:{QUESTIONS:v}}}}=r,b=`${D}${v}`;var B={create:async t=>{try{return await N().post(b,t)}catch(t){const e=await T(t);throw new Error(e)}},remove:async t=>{try{await N().delete(`${b}/${encodeURIComponent(t)}`)}catch(t){const e=await T(t);throw new Error(e)}},update:async(t,e)=>{try{return await N().put(`${b}/${encodeURIComponent(t)}`,{title:e})}catch(t){const e=await T(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:M,ENDPOINTS:{QUESTIONS:G,ANSWERS:x,LIKES:q}}}}=r,Y=`${M}${G}`;var V={answers:C,questions:B,likes:{create:async(t,e)=>{try{return await N().post(`${Y}/${encodeURIComponent(t)}${x}/${encodeURIComponent(e)}${q}`)}catch(t){const e=await T(t);throw new Error(e)}},remove:async(t,e)=>{try{return await N().delete(`${Y}/${encodeURIComponent(t)}${x}/${encodeURIComponent(e)}${q}`)}catch(t){const e=await T(t);throw new Error(e)}}}},F=u(25);const{OK:j,MULTIPLE_CHOICES:Q,NOT_FOUND:W,FORBIDDEN:k}=F.StatusCodes,H=t=>t>=j&&t<Q||t===k||t===W,{APIS:{CONTENT_SUGGESTIONS_API:{BASE_URL:K,ENDPOINTS:{SUGGESTIONS:X}}}}=r;var J={suggestions:{list:async(t={})=>{let e=[],a=Object.assign({validateStatus:H},t);try{const{data:t}=await N().get(`${K}${X}`,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e}}};const{APIS:{MANAGEMENT_API:{BASE_URL:z,ENDPOINTS:{ACCOUNTS:Z}}}}=r;var tt={create:async t=>{try{await N().post(`${z}${Z}`,t)}catch(t){throw await T(t),t}},read:async t=>{let e=null;try{({data:e}=await N().get(`${z}${Z}/${encodeURIComponent(t)}`))}catch(t){await T(t)}return e},update:async(t,e)=>{try{await N().put(`${z}${Z}/${encodeURIComponent(t)}`,e)}catch(t){throw await T(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:et,ENDPOINTS:{LOGINS:at,LOGIN_PASSWORDLESS:nt}}}}=r,rt=`${et}${at}`;var ot={accounts:tt,passwordless:{update:async t=>{try{await N().put(`${rt}/${encodeURIComponent(t)}${nt}`)}catch(t){throw await T(t),t}}}};const{APIS:{PAYMENTS_API:{BASE_URL_V2:st,ENDPOINTS:{PRODUCTS:it}}}}=r,ct=`${st}${it}`;var ut={products:{list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get(ct,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Et,ENDPOINTS:{USERS:St}}}}=r,lt=async t=>{let e=null;try{const{data:a}=await N().get(`${Et}${St}/${encodeURIComponent(t)}`,{validateStatus:H});a&&a.id&&(e=a)}catch(t){await T(t)}return e};var pt={read:lt,update:async(t,e)=>{let a=!1;try{const{data:n}=await N().put(`${Et}${St}/${encodeURIComponent(t)}`,e);a=!(!n||!n.id)}catch(t){await T(t)}return a}};const{APIS:{PEOPLE_API:{BASE_URL_V2:dt,ENDPOINTS:{USERS:It,USER_ANSWERS:wt}}},USERS:{MYSELF:Nt}}=r,Tt=`${dt}${It}/${Nt}${wt}`,At=async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get(Tt,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e};var Pt={list:At},ht={authors:{readQuestionAuthors:async(t,e,a=!1)=>{try{if(t.author=await lt(t.authorId),t.answers&&t.answers.length&&!a){const a=[];if(e){const e=(await At("me",t.slug)).filter((t=>t.liked));for(const t of e)a.push(t.answerSlug)}for(let e of t.answers)e.author=e.authorId&&await lt(e.authorId)||{},e.userLiked=a.includes(e.slug);t.answers.sort(((t,e)=>new Date(e.updatedAt)-new Date(t.updatedAt)))}return t}catch(t){throw await T(t),new Error(`Cannot read question authors: ${t.message}`)}}}};const{APIS:{PEOPLE_API:{BASE_URL:Ot,ENDPOINTS:{REGISTRATIONS:Rt}}}}=r;var yt={list:async t=>{let e=[];try{const{data:a}=await N().get(`${Ot}${Rt}`,{params:t});a&&a.length&&(e=a)}catch(t){await T(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:ft,ENDPOINTS:{USERS:gt,USER_COURSES:Ut}}},USERS:{MYSELF:mt}}=r,$t=`${ft}${gt}/${mt}${Ut}`;var _t={create:async t=>{try{await N().post($t,t)}catch(t){await T(t)}},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get($t,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e},update:async(t,e)=>{try{await N().put(`${$t}/${t}`,e)}catch(t){await T(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Lt,ENDPOINTS:{USERS:Ct,USER_EVENTS:Dt}}},USERS:{MYSELF:vt}}=r,bt=`${Lt}${Ct}/${vt}${Dt}`;var Bt={list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get(bt,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Mt,ENDPOINTS:{USERS:Gt,USER_LESSONS:xt}}},USERS:{MYSELF:qt}}=r,Yt=`${Mt}${Gt}/${qt}${xt}`;var Vt={create:async t=>{let e=null;try{e=await N().post(Yt,t)}catch(t){await T(t)}return e},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get(Yt,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ft,ENDPOINTS:{USERS:jt,USER_PRODUCTS:Qt}}},USERS:{MYSELF:Wt}}=r,kt=`${Ft}${jt}/${Wt}${Qt}`;var Ht={handlers:ht,registrations:yt,users:pt,userAnswers:Pt,userCourses:_t,userEvents:Bt,userLessons:Vt,userProducts:{create:async t=>{let e=null;try{e=await N().post(kt,t)}catch(t){await T(t)}return e},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get(kt,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e},update:async(t,e)=>{try{await N().put(`${kt}/${t}`,e)}catch(t){await T(t)}}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:Kt,ENDPOINTS:{ENQUIRY_EMAILS:Xt}}}}=r;var Jt={create:async t=>{let e=null;try{const{data:a}=await N().post(`${Kt}${Xt}`,t);a&&(e=a)}catch(t){await T(t)}return e}},zt={forms:{sendEnquiryEmails:async t=>{let e=null;try{const{emailIds:a}=I;e=await ne.emails.create({...a,...t})}catch(t){await T(t)}return e}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:Zt,ENDPOINTS:{USERS:te,USER_PROPERTIES:ee}}},USERS:{MYSELF:ae}}=r;var ne={emails:Jt,handlers:zt,userProperties:{update:async(t,e)=>{try{await N().put(`${Zt}${te}/${ae}${ee}/${t}`,e)}catch(t){await T(t)}}}};const{CONTENTFUL:re}=r,{TYPE:oe}=re.EDITORIAL_PAGES;const{CONTENTFUL:se}=r,{TYPE:ie,ORDER:ce,FIELDS:ue}=se.QUESTIONS;var Ee={read:async t=>{try{return await(0,e.getEntry)({content_type:ie,"fields.slug":t,include:2,select:ue})}catch(t){throw await T(t),new Error(`Cannot read question: ${t.message}`)}},list:async(t=10,a=0,n={})=>{try{return await(0,e.getEntries)({content_type:ie,include:1,limit:t,order:ce,select:ue,"fields.private[ne]":!0,skip:a,...n})}catch(t){throw await T(t),new Error(`Cannot list questions: ${t.message}`)}}},Se=async(t,e,a=!1)=>{try{let n={};return n=await Ee.read(t),n=await Ht.handlers.authors.readQuestionAuthors(n,e,a),n}catch(t){throw await T(t),new Error(`Cannot build question: ${t.message}`)}},le=async(t,e=10,a={})=>{try{let n=[];const r=e*(t-1);n=await Ee.list(e,r,a);for(let t of n)t.author=t.authorId&&await Ht.users.read(t.authorId)||{};return n}catch(t){throw await T(t),new Error(`Cannot build questions: ${t.message}`)}};const{ARTICLES:{TYPE:pe},COURSES:{TYPE:de},EVENTS:{TYPE:Ie},LISTS:{TYPE:we},QUESTIONS:{TYPE:Ne}}=r.CONTENTFUL,Te=t=>(t&&t.url&&Object.assign(t,{aspect:"responsiveCard",query:"q=90&fit=fill"}),null),Ae=t=>{const e=t.replace(/(<([^>]+)>)/gi,"").split(/\s/g).length/200;return Math.ceil(e)},Pe=t=>{const e=Math.round((Date.now()-Date.parse(t))/36e5);if(e<=23)return`${e<1?"1":e}h`;const a=Math.round(e/24);if(a<=(1===new Date(t).getMonth()?28:29))return`${a}d`;const n=Math.round(a/30);return n<=11?`${n}m`:`${Math.round(n/12)}y`},he={[pe]:async t=>{const{authorIds:e,authorTag:a,body:n,image:r,publishedDate:o,slug:s,title:i}=t;let c=[];if(e&&e.length)for(const t of e){const e=await Ht.users.read(t);e&&c.push(e)}const u=c&&c.length?c:a?[a]:null;return{banner:Te(r),contributors:u,publishedDate:Pe(o),readingTime:Ae(n),slug:s,title:i}},[de]:async t=>{const{banner:e,freeCourse:a,partnershipDetails:n,slug:r,title:o}=t,s={banner:Te(e),slug:r,title:o,pill:a?"free":"premium"};if(n){const{partners:t}=n;s.partner=t&&t.length&&n.partners[0]}return s},[Ie]:async t=>{const{bannerImage:e,defaultStartDate:a,slug:n,speakers:r,title:o}=t;if(r&&r.length)for(const t of r)t.image=(s=t.image)&&s.url?`${s.url}?w=100&h=100&fit=thumb&f=center`:null;var s;return{banner:Te(e),slug:n,startDate:new Date(a),title:o,speakers:r}},[we]:async t=>{const{hero:e,slug:a,title:n}=t;return{banner:Te(e),slug:a,title:n}},[Ne]:async t=>{const{answers:e,authorId:a,slug:n,title:r}=t;let o=null;if(a){const t=await Ht.users.read(a);t&&(o=t)}return{answers:e&&e.length?e.length:0,contributors:[o],slug:n,title:r}}};var Oe=async({contentType:t,...e}={})=>{try{if(!he[t])throw new Error("Content type not supported");if("function"!=typeof he[t])throw new Error("No builder function for content type");return{contentType:t,...await he[t](e)}}catch(t){throw await T(t),new Error(`Cannot build slider card: ${t.message}`)}},Re=u(408);const ye=t=>t&&Re.Buffer.from(t,"base64").toString("ascii");function fe({authContext:r=null,contentContext:u=null,errorsContext:E=null,gtmContext:w=null,origin:N}){try{const T=(t=>{let e=null;t?e=t:"undefined"!=typeof window&&(e=window.origin||window.location.origin),e||new Error("Cannot select environment: Website not defined");let a=null;const n=e.match(i);return n?a=n[1].split(c)[0]:e===o?a=S:e.includes(s)&&(a=l),a||new Error(`Cannot select environment: No rule for website ${e}`),a})(N);r&&(0,t.setContext)(Object.assign({},r,{environment:T,origin:N})),u&&(0,e.setContext)(Object.assign({},u,{environment:T})),E&&(0,a.setContext)(Object.assign({},E,{environment:T})),w&&((0,n.setContext)(Object.assign({},w,{environment:T})),(0,n.setupGTM)()),(({environment:t})=>{const e=(t=>{if(!t)throw new Error("Cannot map environment: Environment not defined");if(!p[t])throw new Error(`Cannot map environment: No mapping found for environment ${t}`);return p[t]})(t);I.emailIds=d[e]})(Object.assign({},{environment:T}))}catch(t){console.warn(`Cannot load SDK: ${t.message}`)}}}(),E}()}));
1
+ !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("@apolitical/auth"),require("@apolitical/content"),require("@apolitical/error-reporting"),require("@apolitical/gtm"),require("axios"),require("http-status-codes"),require("buffer")):"function"==typeof define&&define.amd?define(["@apolitical/auth","@apolitical/content","@apolitical/error-reporting","@apolitical/gtm","axios","http-status-codes","buffer"],e):"object"==typeof exports?exports.ApoliticalSDK=e(require("@apolitical/auth"),require("@apolitical/content"),require("@apolitical/error-reporting"),require("@apolitical/gtm"),require("axios"),require("http-status-codes"),require("buffer")):t.ApoliticalSDK=e(t["@apolitical/auth"],t["@apolitical/content"],t["@apolitical/error-reporting"],t["@apolitical/gtm"],t.axios,t["http-status-codes"],t.buffer)}(this,(function(t,e,a,n,r,s,o){return function(){"use strict";var i={654:function(e){e.exports=t},809:function(t){t.exports=e},30:function(t){t.exports=a},36:function(t){t.exports=n},300:function(t){t.exports=r},408:function(t){t.exports=o},25:function(t){t.exports=s}},c={};function u(t){var e=c[t];if(void 0!==e)return e.exports;var a=c[t]={exports:{}};return i[t](a,a.exports,u),a.exports}u.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return u.d(e,{a:e}),e},u.d=function(t,e){for(var a in e)u.o(e,a)&&!u.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},u.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},u.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var E={};return function(){u.r(E),u.d(E,{assets:function(){return h},auth:function(){return U},buildCarouselCard:function(){return me},buildQuestion:function(){return Te},buildQuestions:function(){return fe},carouselCards:function(){return ie},contentInteraction:function(){return V},contentSuggestion:function(){return J},decodeBase64:function(){return Ce},default:function(){return $e},editorialPages:function(){return Se},getAuthContext:function(){return t.getContext},getEntries:function(){return e.getEntries},getEntry:function(){return e.getEntry},management:function(){return st},passwordlessLogin:function(){return t.passwordlessLogin},payments:function(){return ut},people:function(){return Ht},peopleEngagement:function(){return ne},qaQuestions:function(){return Ne},reportError:function(){return a.reportError},sendVerificationEmail:function(){return t.sendVerificationEmail}});var t=u(654),e=u(809),a=u(30),n=u(36),r={APOLITICAL:{WEBSITES:{LIVE:"https://apolitical.co",LOCALHOST:"localhost",STAGING:/https:\/\/([\w|\d|-]+)\.apolitical\.co/i,STAGING_SPLITTER:"-"},ENVIRONMENTS:{PRODUCTION:"live",LOCAL:"local"}},APIS:{ASSETS_API:{BASE_URL:"/api/assets-api",ENDPOINTS:{USERS:"/users",CERTIFICATES:"/certificates"}},AUTH_API:{BASE_URL:"/api/auth-api",ENDPOINTS:{USER_PASSWORD:"/password",USERS:"/users"}},CONTENT_INTERACTION_API:{BASE_URL:"/api/content-interaction-api",ENDPOINTS:{QUESTIONS:"/questions",ANSWERS:"/answers",LIKES:"/likes"}},CONTENT_SUGGESTIONS_API:{BASE_URL:"/api/content-suggestions-api",ENDPOINTS:{SUGGESTIONS:"/suggest"}},MANAGEMENT_API:{BASE_URL:"/api/management-api",ENDPOINTS:{ACCOUNTS:"/accounts",LOGINS:"/logins",LOGIN_PASSWORDLESS:"/passwordless"}},PAYMENTS_API:{BASE_URL:"/api/payments-api",BASE_URL_V2:"/api/payments-api/v2",ENDPOINTS:{PRODUCTS:"/products"}},PEOPLE_API:{BASE_URL:"/api/people-api",BASE_URL_V2:"/api/people-api/v2",ENDPOINTS:{REGISTRATIONS:"/registrations",USERS:"/users",USER_ANSWERS:"/answers",USER_COURSES:"/courses",USER_EVENTS:"/events",USER_LESSONS:"/lessons",USER_PRODUCTS:"/products",USER_SUBSCRIPTIONS:"/subscriptions"}},PEOPLE_ENGAGEMENT_API:{BASE_URL:"/api/people-engagement-api",ENDPOINTS:{ENQUIRY_EMAILS:"/enquiry-emails",USERS:"/users",USER_PROPERTIES:"/properties"}}},CONTENTFUL:{ARTICLES:{TYPE:"solutionArticle"},CAROUSELS:{CARD_TYPES:{solutionArticle:{INCLUDE:1,SELECT:"fields.authorIds,fields.authorTag,fields.image,fields.publishedDate,fields.slug,fields.title"},microcourse:{INCLUDE:2,SELECT:"fields.banner,fields.freeCourse,fields.partnershipDetails,fields.slug,fields.title"},event:{INCLUDE:1,SELECT:"fields.bannerImage,fields.defaultStartDate,fields.slug,fields.speakers,fields.title"},listPage:{INCLUDE:1,SELECT:"fields.hero,fields.slug,fields.title"},qaQuestion:{INCLUDE:0,SELECT:"fields.answers,fields.authorId,fields.slug,fields.title"}}},COURSES:{TYPE:"microcourse"},EDITORIAL_PAGES:{INCLUDE:1,SELECT:"fields.carousels,fields.slug",TYPE:"editorialPage"},EVENTS:{TYPE:"event"},LISTS:{TYPE:"listPage"},QUESTIONS:{ORDER:"-sys.updatedAt",SELECT:"sys.createdAt,sys.updatedAt,fields.title,fields.slug,fields.authorId,fields.answers,fields.isEdited",TYPE:"qaQuestion"}},HUBSPOT:{ENVIRONMENTS_MAPPING:{local:"SANDBOX",beta:"SANDBOX",rc:"SANDBOX",live:"LIVE"},EMAIL_IDS:{SANDBOX:{internalEmailId:49099078634,externalEmailId:55196526554},LIVE:{internalEmailId:55233583049,externalEmailId:55231159239}}},USERS:{MYSELF:"me"}};const{APOLITICAL:{WEBSITES:{LIVE:s,LOCALHOST:o,STAGING:i,STAGING_SPLITTER:c},ENVIRONMENTS:{PRODUCTION:l,LOCAL:S}}}=r,{HUBSPOT:{ENVIRONMENTS_MAPPING:d,EMAIL_IDS:p}}=r;let I={emailIds:{}};var w=u(300),N=u.n(w);const T=async t=>{try{const{message:e,response:n,request:r}=t;let s=e;return n?s+=` - The request was made and the server responded with ${JSON.stringify({status:n.status,data:n.data})}`:r&&(s+=" - The request was made but no response was received"),console.warn(s),await(0,a.reportError)(new Error(s)),s}catch(t){return console.warn(`Cannot handle error: ${t.message}`),t.message}},{APIS:{ASSETS_API:{BASE_URL:f,ENDPOINTS:{USERS:A,CERTIFICATES:P}}}}=r;var h={certificates:{create:async(t,e)=>{let a=[];try{const{data:n}=await N().post(`${f}${A}/${t}${P}`,e);n&&(a=n)}catch(t){await T(t)}return a}}};const{APIS:{AUTH_API:{BASE_URL:R,ENDPOINTS:{USER_PASSWORD:O,USERS:g}}},USERS:{MYSELF:y}}=r;var U={userPassword:{update:async t=>{let e=null;try{e=await N().put(`${R}${g}/${y}${O}`,t)}catch(t){e={message:(((t||{}).response||{}).data||{}).message},await T(t)}return e}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:m,ENDPOINTS:{ANSWERS:L,QUESTIONS:C}}}}=r,$=`${m}${C}`;var _={create:async(t,e)=>{try{await N().post(`${$}/${encodeURIComponent(t)}${L}`,e)}catch(t){const e=await T(t);throw new Error(e)}},remove:async(t,e)=>{try{await N().delete(`${$}/${encodeURIComponent(t)}${L}/${encodeURIComponent(e)}`)}catch(t){const e=await T(t);throw new Error(e)}},update:async(t,e,a)=>{try{return await N().put(`${$}/${encodeURIComponent(t)}${L}/${encodeURIComponent(e)}`,{body:a})}catch(t){const e=await T(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:D,ENDPOINTS:{QUESTIONS:v}}}}=r,b=`${D}${v}`;var B={create:async t=>{try{return await N().post(b,t)}catch(t){const e=await T(t);throw new Error(e)}},remove:async t=>{try{await N().delete(`${b}/${encodeURIComponent(t)}`)}catch(t){const e=await T(t);throw new Error(e)}},update:async(t,e)=>{try{return await N().put(`${b}/${encodeURIComponent(t)}`,{title:e})}catch(t){const e=await T(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:M,ENDPOINTS:{QUESTIONS:G,ANSWERS:q,LIKES:x}}}}=r,Y=`${M}${G}`;var V={answers:_,questions:B,likes:{create:async(t,e)=>{try{return await N().post(`${Y}/${encodeURIComponent(t)}${q}/${encodeURIComponent(e)}${x}`)}catch(t){const e=await T(t);throw new Error(e)}},remove:async(t,e)=>{try{return await N().delete(`${Y}/${encodeURIComponent(t)}${q}/${encodeURIComponent(e)}${x}`)}catch(t){const e=await T(t);throw new Error(e)}}}},F=u(25);const{OK:Q,MULTIPLE_CHOICES:j,NOT_FOUND:W,FORBIDDEN:k}=F.StatusCodes,H=t=>t>=Q&&t<j||t===k||t===W,{APIS:{CONTENT_SUGGESTIONS_API:{BASE_URL:K,ENDPOINTS:{SUGGESTIONS:X}}}}=r;var J={suggestions:{list:async(t={})=>{let e=[],a=Object.assign({validateStatus:H},t);try{const{data:t}=await N().get(`${K}${X}`,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e}}};const{APIS:{MANAGEMENT_API:{BASE_URL:z,ENDPOINTS:{ACCOUNTS:Z}}}}=r;var tt={create:async t=>{try{await N().post(`${z}${Z}`,t)}catch(t){throw await T(t),t}},read:async t=>{let e=null;try{({data:e}=await N().get(`${z}${Z}/${encodeURIComponent(t)}`))}catch(t){await T(t)}return e},update:async(t,e)=>{try{await N().put(`${z}${Z}/${encodeURIComponent(t)}`,e)}catch(t){throw await T(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:et,ENDPOINTS:{LOGINS:at,LOGIN_PASSWORDLESS:nt}}}}=r,rt=`${et}${at}`;var st={accounts:tt,passwordless:{update:async t=>{try{await N().put(`${rt}/${encodeURIComponent(t)}${nt}`)}catch(t){throw await T(t),t}}}};const{APIS:{PAYMENTS_API:{BASE_URL_V2:ot,ENDPOINTS:{PRODUCTS:it}}}}=r,ct=`${ot}${it}`;var ut={products:{list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get(ct,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Et,ENDPOINTS:{USERS:lt}}}}=r,St=async t=>{let e=null;try{const{data:a}=await N().get(`${Et}${lt}/${encodeURIComponent(t)}`,{validateStatus:H});a&&a.id&&(e=a)}catch(t){await T(t)}return e};var dt={read:St,update:async(t,e)=>{let a=!1;try{const{data:n}=await N().put(`${Et}${lt}/${encodeURIComponent(t)}`,e);a=!(!n||!n.id)}catch(t){await T(t)}return a}};const{APIS:{PEOPLE_API:{BASE_URL_V2:pt,ENDPOINTS:{USERS:It,USER_ANSWERS:wt}}},USERS:{MYSELF:Nt}}=r,Tt=`${pt}${It}/${Nt}${wt}`,ft=async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get(Tt,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e};var At={list:ft},Pt={authors:{readQuestionAuthors:async(t,e,a=!1)=>{try{if(t.author=await St(t.authorId),t.answers&&t.answers.length&&!a){const a=[];if(e){const e=(await ft("me",t.slug)).filter((t=>t.liked));for(const t of e)a.push(t.answerSlug)}for(let e of t.answers)e.author=e.authorId&&await St(e.authorId)||{},e.userLiked=a.includes(e.slug);t.answers.sort(((t,e)=>new Date(e.updatedAt)-new Date(t.updatedAt)))}return t}catch(t){throw await T(t),new Error(`Cannot read question authors: ${t.message}`)}}}};const{APIS:{PEOPLE_API:{BASE_URL:ht,ENDPOINTS:{REGISTRATIONS:Rt}}}}=r;var Ot={list:async t=>{let e=[];try{const{data:a}=await N().get(`${ht}${Rt}`,{params:t});a&&a.length&&(e=a)}catch(t){await T(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:gt,ENDPOINTS:{USERS:yt,USER_COURSES:Ut}}},USERS:{MYSELF:mt}}=r,Lt=`${gt}${yt}/${mt}${Ut}`;var Ct={create:async t=>{try{await N().post(Lt,t)}catch(t){await T(t)}},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get(Lt,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e},update:async(t,e)=>{try{await N().put(`${Lt}/${t}`,e)}catch(t){await T(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:$t,ENDPOINTS:{USERS:_t,USER_EVENTS:Dt}}},USERS:{MYSELF:vt}}=r,bt=`${$t}${_t}/${vt}${Dt}`;var Bt={list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get(bt,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Mt,ENDPOINTS:{USERS:Gt,USER_LESSONS:qt}}},USERS:{MYSELF:xt}}=r,Yt=`${Mt}${Gt}/${xt}${qt}`;var Vt={create:async t=>{let e=null;try{e=await N().post(Yt,t)}catch(t){await T(t)}return e},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get(Yt,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ft,ENDPOINTS:{USERS:Qt,USER_PRODUCTS:jt}}},USERS:{MYSELF:Wt}}=r,kt=`${Ft}${Qt}/${Wt}${jt}`;var Ht={handlers:Pt,registrations:Ot,users:dt,userAnswers:At,userCourses:Ct,userEvents:Bt,userLessons:Vt,userProducts:{create:async t=>{let e=null;try{e=await N().post(kt,t)}catch(t){await T(t)}return e},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await N().get(kt,a);t&&t.length&&(e=t)}catch(t){await T(t)}return e},update:async(t,e)=>{try{await N().put(`${kt}/${t}`,e)}catch(t){await T(t)}}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:Kt,ENDPOINTS:{ENQUIRY_EMAILS:Xt}}}}=r;var Jt={create:async t=>{let e=null;try{const{data:a}=await N().post(`${Kt}${Xt}`,t);a&&(e=a)}catch(t){await T(t)}return e}},zt={forms:{sendEnquiryEmails:async t=>{let e=null;try{const{emailIds:a}=I;e=await ne.emails.create({...a,...t})}catch(t){await T(t)}return e}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:Zt,ENDPOINTS:{USERS:te,USER_PROPERTIES:ee}}},USERS:{MYSELF:ae}}=r;var ne={emails:Jt,handlers:zt,userProperties:{update:async(t,e)=>{try{await N().put(`${Zt}${te}/${ae}${ee}/${t}`,e)}catch(t){await T(t)}}}};const{CONTENTFUL:re}=r,{CARD_TYPES:se}=re.CAROUSELS,oe={read:async(t,a)=>{try{if(!a||!a.sys||!a.sys.id)throw new Error("Invalid link to card");if(!t||!se[t])throw new Error("Unsupported content type of card");const{INCLUDE:n,SELECT:r}=se[t];return await(0,e.getEntry)({content_type:t,"sys.id":a.sys.id,include:n,select:r},{assetDetails:!0})}catch(t){throw await T(t),new Error(`Cannot read carousel card: ${t.message}`)}}};var ie=oe;const{CONTENTFUL:ce}=r,{INCLUDE:ue,SELECT:Ee,TYPE:le}=ce.EDITORIAL_PAGES;var Se={read:async t=>{try{return await(0,e.getEntry)({content_type:le,"fields.slug":t,include:ue,select:Ee})}catch(t){throw await T(t),new Error(`Cannot read editorial page: ${t.message}`)}}};const{CONTENTFUL:de}=r,{TYPE:pe,ORDER:Ie,SELECT:we}=de.QUESTIONS;var Ne={read:async t=>{try{return await(0,e.getEntry)({content_type:pe,"fields.slug":t,include:2,select:we})}catch(t){throw await T(t),new Error(`Cannot read question: ${t.message}`)}},list:async(t=10,a=0,n={})=>{try{return await(0,e.getEntries)({content_type:pe,include:1,limit:t,order:Ie,select:we,"fields.private[ne]":!0,skip:a,...n})}catch(t){throw await T(t),new Error(`Cannot list questions: ${t.message}`)}}},Te=async(t,e,a=!1)=>{try{let n={};return n=await Ne.read(t),n=await Ht.handlers.authors.readQuestionAuthors(n,e,a),n}catch(t){throw await T(t),new Error(`Cannot build question: ${t.message}`)}},fe=async(t,e=10,a={})=>{try{let n=[];const r=e*(t-1);n=await Ne.list(e,r,a);for(let t of n)t.author=t.authorId&&await Ht.users.read(t.authorId)||{};return n}catch(t){throw await T(t),new Error(`Cannot build questions: ${t.message}`)}};const{ARTICLES:{TYPE:Ae},COURSES:{TYPE:Pe},EVENTS:{TYPE:he},LISTS:{TYPE:Re},QUESTIONS:{TYPE:Oe}}=r.CONTENTFUL,ge=t=>t&&t.url?(Object.assign(t,{aspect:"responsiveCard",query:"q=90&fit=fill"}),t):null,ye=t=>{const e=Math.round((Date.now()-Date.parse(t))/36e5);if(e<=23)return`${e<1?"1":e}h`;const a=Math.round(e/24);if(a<=(1===new Date(t).getMonth()?28:29))return`${a}d`;const n=Math.round(a/30);return n<=11?`${n}m`:`${Math.round(n/12)}y`},Ue={[Ae]:async t=>{const{authorIds:e,authorTag:a,image:n,publishedDate:r,slug:s,title:o}=t;let i=[];if(e&&e.length)for(const t of e){const e=await Ht.users.read(t);e&&i.push(e)}const c=i&&i.length?i:a?[a]:null;return{banner:ge(n),contributors:c,publishedDate:ye(r),readingTime:5,slug:s,title:o}},[Pe]:async t=>{const{banner:e,freeCourse:a,partnershipDetails:n,slug:r,title:s}=t,o={banner:ge(e),slug:r,title:s,pill:a?"free":"premium"};if(n){const{partners:t}=n;o.partner=t&&t.length&&n.partners[0]}return o},[he]:async t=>{const{bannerImage:e,defaultStartDate:a,slug:n,speakers:r,title:s}=t;if(r&&r.length)for(const t of r)t.image=(o=t.image)&&o.url?`${o.url}?w=100&h=100&fit=thumb&f=center`:null;var o;const i=new Date(a),c=!!i&&i<new Date;return{banner:ge(e),dateHasPassed:c,title:s,slug:n,speakers:r,startDate:i}},[Re]:async t=>{const{hero:e,slug:a,title:n}=t;return{banner:ge(e),slug:a,title:n}},[Oe]:async t=>{const{answers:e,authorId:a,slug:n,title:r}=t;let s=null;if(a){const t=await Ht.users.read(a);t&&(s=t)}return{answers:e&&e.length?e.length:0,contributors:s?[s]:[],slug:n,title:r}}};var me=async({contentType:t,...e}={})=>{try{if(!Ue[t])throw new Error("Content type not supported");if("function"!=typeof Ue[t])throw new Error("No builder function for content type");const a=await ie.read(t,e);return{contentType:t,...await Ue[t](a)}}catch(t){throw await T(t),new Error(`Cannot build carousel card: ${t.message}`)}},Le=u(408);const Ce=t=>t&&Le.Buffer.from(t,"base64").toString("ascii");function $e({authContext:r=null,contentContext:u=null,errorsContext:E=null,gtmContext:w=null,origin:N}){try{const T=(t=>{let e=null;t?e=t:"undefined"!=typeof window&&(e=window.origin||window.location.origin),e||new Error("Cannot select environment: Website not defined");let a=null;const n=e.match(i);return n?a=n[1].split(c)[0]:e===s?a=l:e.includes(o)&&(a=S),a||new Error(`Cannot select environment: No rule for website ${e}`),a})(N);r&&(0,t.setContext)(Object.assign({},r,{environment:T,origin:N})),u&&(0,e.setContext)(Object.assign({},u,{environment:T})),E&&(0,a.setContext)(Object.assign({},E,{environment:T})),w&&((0,n.setContext)(Object.assign({},w,{environment:T})),(0,n.setupGTM)()),(({environment:t})=>{const e=(t=>{if(!t)throw new Error("Cannot map environment: Environment not defined");if(!d[t])throw new Error(`Cannot map environment: No mapping found for environment ${t}`);return d[t]})(t);I.emailIds=p[e]})(Object.assign({},{environment:T}))}catch(t){console.warn(`Cannot load SDK: ${t.message}`)}}}(),E}()}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apolitical/sdk",
3
- "version": "3.2.0-rc.1",
3
+ "version": "3.2.0-rc.14",
4
4
  "description": "Browser library to interact with Apolitical's APIs",
5
5
  "author": "Apolitical Group Limited <engineering@apolitical.co>",
6
6
  "license": "MIT",