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

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/CHANGELOG.md CHANGED
@@ -10,6 +10,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
10
10
  - Functionality to read an editorial page
11
11
  - Functionality to build slider card
12
12
 
13
+ ## [4.0.0] - 2023-01-24
14
+ ### Removed
15
+ - Use of `@apolitical/auth` on the SDK
16
+
13
17
  ## [3.1.1] - 2023-01-18
14
18
  ### Changed
15
19
  - apolitical/content version to 0.7.0
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/content"),require("@apolitical/error-reporting"),require("@apolitical/gtm"),require("axios"),require("http-status-codes"),require("buffer")):"function"==typeof define&&define.amd?define(["@apolitical/content","@apolitical/error-reporting","@apolitical/gtm","axios","http-status-codes","buffer"],e):"object"==typeof exports?exports.ApoliticalSDK=e(require("@apolitical/content"),require("@apolitical/error-reporting"),require("@apolitical/gtm"),require("axios"),require("http-status-codes"),require("buffer")):t.ApoliticalSDK=e(t["@apolitical/content"],t["@apolitical/error-reporting"],t["@apolitical/gtm"],t.axios,t["http-status-codes"],t.buffer)}(this,(function(t,e,a,r,n,s){return function(){"use strict";var o={809:function(e){e.exports=t},30:function(t){t.exports=e},36:function(t){t.exports=a},300:function(t){t.exports=r},408:function(t){t.exports=s},25:function(t){t.exports=n}},i={};function c(t){var e=i[t];if(void 0!==e)return e.exports;var a=i[t]={exports:{}};return o[t](a,a.exports,c),a.exports}c.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return c.d(e,{a:e}),e},c.d=function(t,e){for(var a in e)c.o(e,a)&&!c.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},c.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},c.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(){c.r(E),c.d(E,{assets:function(){return f},auth:function(){return U},buildCarouselCard:function(){return Ue},buildQuestion:function(){return Ne},buildQuestions:function(){return Te},carouselCards:function(){return oe},contentInteraction:function(){return x},contentSuggestion:function(){return X},decodeBase64:function(){return Le},default:function(){return me},editorialPages:function(){return le},getEntries:function(){return t.getEntries},getEntry:function(){return t.getEntry},management:function(){return nt},payments:function(){return ct},people:function(){return kt},peopleEngagement:function(){return ae},qaQuestions:function(){return we},reportError:function(){return e.reportError}});var t=c(809),e=c(30),a=c(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:n,LOCALHOST:s,STAGING:o,STAGING_SPLITTER:i},ENVIRONMENTS:{PRODUCTION:u,LOCAL:l}}}=r,{HUBSPOT:{ENVIRONMENTS_MAPPING:S,EMAIL_IDS:d}}=r;let p={emailIds:{}};var I=c(300),w=c.n(I);const N=async t=>{try{const{message:a,response:r,request:n}=t;let s=a;return r?s+=` - The request was made and the server responded with ${JSON.stringify({status:r.status,data:r.data})}`:n&&(s+=" - The request was made but no response was received"),console.warn(s),await(0,e.reportError)(new Error(s)),s}catch(t){return console.warn(`Cannot handle error: ${t.message}`),t.message}},{APIS:{ASSETS_API:{BASE_URL:T,ENDPOINTS:{USERS:A,CERTIFICATES:P}}}}=r;var f={certificates:{create:async(t,e)=>{let a=[];try{const{data:r}=await w().post(`${T}${A}/${t}${P}`,e);r&&(a=r)}catch(t){await N(t)}return a}}};const{APIS:{AUTH_API:{BASE_URL:R,ENDPOINTS:{USER_PASSWORD:h,USERS:O}}},USERS:{MYSELF:y}}=r;var U={userPassword:{update:async t=>{let e=null;try{e=await w().put(`${R}${O}/${y}${h}`,t)}catch(t){e={message:(((t||{}).response||{}).data||{}).message},await N(t)}return e}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:g,ENDPOINTS:{ANSWERS:L,QUESTIONS:m}}}}=r,C=`${g}${m}`;var _={create:async(t,e)=>{try{await w().post(`${C}/${encodeURIComponent(t)}${L}`,e)}catch(t){const e=await N(t);throw new Error(e)}},remove:async(t,e)=>{try{await w().delete(`${C}/${encodeURIComponent(t)}${L}/${encodeURIComponent(e)}`)}catch(t){const e=await N(t);throw new Error(e)}},update:async(t,e,a)=>{try{return await w().put(`${C}/${encodeURIComponent(t)}${L}/${encodeURIComponent(e)}`,{body:a})}catch(t){const e=await N(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:$,ENDPOINTS:{QUESTIONS:D}}}}=r,v=`${$}${D}`;var b={create:async t=>{try{return await w().post(v,t)}catch(t){const e=await N(t);throw new Error(e)}},remove:async t=>{try{await w().delete(`${v}/${encodeURIComponent(t)}`)}catch(t){const e=await N(t);throw new Error(e)}},update:async(t,e)=>{try{return await w().put(`${v}/${encodeURIComponent(t)}`,{title:e})}catch(t){const e=await N(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:B,ENDPOINTS:{QUESTIONS:G,ANSWERS:M,LIKES:q}}}}=r,Y=`${B}${G}`;var x={answers:_,questions:b,likes:{create:async(t,e)=>{try{return await w().post(`${Y}/${encodeURIComponent(t)}${M}/${encodeURIComponent(e)}${q}`)}catch(t){const e=await N(t);throw new Error(e)}},remove:async(t,e)=>{try{return await w().delete(`${Y}/${encodeURIComponent(t)}${M}/${encodeURIComponent(e)}${q}`)}catch(t){const e=await N(t);throw new Error(e)}}}},V=c(25);const{OK:F,MULTIPLE_CHOICES:Q,NOT_FOUND:j,FORBIDDEN:W}=V.StatusCodes,k=t=>t>=F&&t<Q||t===W||t===j,{APIS:{CONTENT_SUGGESTIONS_API:{BASE_URL:H,ENDPOINTS:{SUGGESTIONS:K}}}}=r;var X={suggestions:{list:async(t={})=>{let e=[],a=Object.assign({validateStatus:k},t);try{const{data:t}=await w().get(`${H}${K}`,a);t&&t.length&&(e=t)}catch(t){await N(t)}return e}}};const{APIS:{MANAGEMENT_API:{BASE_URL:J,ENDPOINTS:{ACCOUNTS:z}}}}=r;var Z={create:async t=>{try{await w().post(`${J}${z}`,t)}catch(t){throw await N(t),t}},read:async t=>{let e=null;try{({data:e}=await w().get(`${J}${z}/${encodeURIComponent(t)}`))}catch(t){await N(t)}return e},update:async(t,e)=>{try{await w().put(`${J}${z}/${encodeURIComponent(t)}`,e)}catch(t){throw await N(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:tt,ENDPOINTS:{LOGINS:et,LOGIN_PASSWORDLESS:at}}}}=r,rt=`${tt}${et}`;var nt={accounts:Z,passwordless:{update:async t=>{try{await w().put(`${rt}/${encodeURIComponent(t)}${at}`)}catch(t){throw await N(t),t}}}};const{APIS:{PAYMENTS_API:{BASE_URL_V2:st,ENDPOINTS:{PRODUCTS:ot}}}}=r,it=`${st}${ot}`;var ct={products:{list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(it,a);t&&t.length&&(e=t)}catch(t){await N(t)}return e}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Et,ENDPOINTS:{USERS:ut}}}}=r,lt=async t=>{let e=null;try{const{data:a}=await w().get(`${Et}${ut}/${encodeURIComponent(t)}`,{validateStatus:k});a&&a.id&&(e=a)}catch(t){await N(t)}return e};var St={read:lt,update:async(t,e)=>{let a=!1;try{const{data:r}=await w().put(`${Et}${ut}/${encodeURIComponent(t)}`,e);a=!(!r||!r.id)}catch(t){await N(t)}return a}};const{APIS:{PEOPLE_API:{BASE_URL_V2:dt,ENDPOINTS:{USERS:pt,USER_ANSWERS:It}}},USERS:{MYSELF:wt}}=r,Nt=`${dt}${pt}/${wt}${It}`,Tt=async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(Nt,a);t&&t.length&&(e=t)}catch(t){await N(t)}return e};var At={list:Tt},Pt={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 Tt("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 N(t),new Error(`Cannot read question authors: ${t.message}`)}}}};const{APIS:{PEOPLE_API:{BASE_URL:ft,ENDPOINTS:{REGISTRATIONS:Rt}}}}=r;var ht={list:async t=>{let e=[];try{const{data:a}=await w().get(`${ft}${Rt}`,{params:t});a&&a.length&&(e=a)}catch(t){await N(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ot,ENDPOINTS:{USERS:yt,USER_COURSES:Ut}}},USERS:{MYSELF:gt}}=r,Lt=`${Ot}${yt}/${gt}${Ut}`;var mt={create:async t=>{try{await w().post(Lt,t)}catch(t){await N(t)}},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(Lt,a);t&&t.length&&(e=t)}catch(t){await N(t)}return e},update:async(t,e)=>{try{await w().put(`${Lt}/${t}`,e)}catch(t){await N(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ct,ENDPOINTS:{USERS:_t,USER_EVENTS:$t}}},USERS:{MYSELF:Dt}}=r,vt=`${Ct}${_t}/${Dt}${$t}`;var bt={list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(vt,a);t&&t.length&&(e=t)}catch(t){await N(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Bt,ENDPOINTS:{USERS:Gt,USER_LESSONS:Mt}}},USERS:{MYSELF:qt}}=r,Yt=`${Bt}${Gt}/${qt}${Mt}`;var xt={create:async t=>{let e=null;try{e=await w().post(Yt,t)}catch(t){await N(t)}return e},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(Yt,a);t&&t.length&&(e=t)}catch(t){await N(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Vt,ENDPOINTS:{USERS:Ft,USER_PRODUCTS:Qt}}},USERS:{MYSELF:jt}}=r,Wt=`${Vt}${Ft}/${jt}${Qt}`;var kt={handlers:Pt,registrations:ht,users:St,userAnswers:At,userCourses:mt,userEvents:bt,userLessons:xt,userProducts:{create:async t=>{let e=null;try{e=await w().post(Wt,t)}catch(t){await N(t)}return e},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(Wt,a);t&&t.length&&(e=t)}catch(t){await N(t)}return e},update:async(t,e)=>{try{await w().put(`${Wt}/${t}`,e)}catch(t){await N(t)}}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:Ht,ENDPOINTS:{ENQUIRY_EMAILS:Kt}}}}=r;var Xt={create:async t=>{let e=null;try{const{data:a}=await w().post(`${Ht}${Kt}`,t);a&&(e=a)}catch(t){await N(t)}return e}},Jt={forms:{sendEnquiryEmails:async t=>{let e=null;try{const{emailIds:a}=p;e=await ae.emails.create({...a,...t})}catch(t){await N(t)}return e}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:zt,ENDPOINTS:{USERS:Zt,USER_PROPERTIES:te}}},USERS:{MYSELF:ee}}=r;var ae={emails:Xt,handlers:Jt,userProperties:{update:async(t,e)=>{try{await w().put(`${zt}${Zt}/${ee}${te}/${t}`,e)}catch(t){await N(t)}}}};const{CONTENTFUL:re}=r,{CARD_TYPES:ne}=re.CAROUSELS,se={read:async(e,a)=>{try{if(!a||!a.sys||!a.sys.id)throw new Error("Invalid link to card");if(!e||!ne[e])throw new Error("Unsupported card content type");const{INCLUDE:r,SELECT:n}=ne[e];return await(0,t.getEntry)({content_type:e,"sys.id":a.sys.id,include:r,select:n},{assetDetails:!0})}catch(t){throw await N(t),new Error(`Cannot read carousel card: ${t.message}`)}}};var oe=se;const{CONTENTFUL:ie}=r,{INCLUDE:ce,SELECT:Ee,TYPE:ue}=ie.EDITORIAL_PAGES;var le={read:async e=>{try{return await(0,t.getEntry)({content_type:ue,"fields.slug":e,include:ce,select:Ee})}catch(t){throw await N(t),new Error(`Cannot read editorial page: ${t.message}`)}}};const{CONTENTFUL:Se}=r,{TYPE:de,ORDER:pe,SELECT:Ie}=Se.QUESTIONS;var we={read:async e=>{try{return await(0,t.getEntry)({content_type:de,"fields.slug":e,include:2,select:Ie})}catch(t){throw await N(t),new Error(`Cannot read question: ${t.message}`)}},list:async(e=10,a=0,r={})=>{try{return await(0,t.getEntries)({content_type:de,include:1,limit:e,order:pe,select:Ie,"fields.private[ne]":!0,skip:a,...r})}catch(t){throw await N(t),new Error(`Cannot list questions: ${t.message}`)}}},Ne=async(t,e,a=!1)=>{try{let r={};return r=await we.read(t),r=await kt.handlers.authors.readQuestionAuthors(r,e,a),r}catch(t){throw await N(t),new Error(`Cannot build question: ${t.message}`)}},Te=async(t,e=10,a={})=>{try{let r=[];const n=e*(t-1);r=await we.list(e,n,a);for(let t of r)t.author=t.authorId&&await kt.users.read(t.authorId)||{};return r}catch(t){throw await N(t),new Error(`Cannot build questions: ${t.message}`)}};const{ARTICLES:{TYPE:Ae},COURSES:{TYPE:Pe},EVENTS:{TYPE:fe},LISTS:{TYPE:Re},QUESTIONS:{TYPE:he}}=r.CONTENTFUL,Oe=t=>t&&t.url?(Object.assign(t,{aspect:"responsiveCard",query:"q=90&fit=fill"}),t):null,ye={[Ae]:async t=>{const{authorIds:e,authorTag:a,image:r,publishedDate:n,slug:s,title:o}=t;let i=[];if(e&&e.length)for(const t of e){const e=await kt.users.read(t);e&&i.push(e)}const c=i&&i.length?i:a?[a]:null;return{banner:Oe(r),contributors:c,publishedDate:n,readingTime:5,slug:s,title:o}},[Pe]:async t=>{const{banner:e,freeCourse:a,partnershipDetails:r,slug:n,title:s}=t,o={banner:Oe(e),slug:n,title:s,pill:a?"free":"premium"};if(r){const{partners:t}=r;o.partner=t&&t.length&&r.partners[0]}return o},[fe]:async t=>{const{bannerImage:e,defaultStartDate:a,slug:r,speakers:n,title:s}=t;if(n&&n.length)for(const t of n)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:Oe(e),dateHasPassed:c,title:s,slug:r,speakers:n,startDate:i}},[Re]:async t=>{const{hero:e,slug:a,title:r}=t;return{banner:Oe(e),slug:a,title:r}},[he]:async t=>{const{answers:e,authorId:a,slug:r,title:n}=t;let s=null;if(a){const t=await kt.users.read(a);t&&(s=t)}return{answers:e&&e.length?e.length:0,contributors:s?[s]:[],slug:r,title:n}}};var Ue=async({contentType:t,...e}={})=>{try{if(!ye[t])throw new Error("Content type not supported");if("function"!=typeof ye[t])throw new Error("No builder function for content type");const a=await oe.read(t,e);return{contentType:t,...await ye[t](a)}}catch(t){throw await N(t),new Error(`Cannot build carousel card: ${t.message}`)}},ge=c(408);const Le=t=>t&&ge.Buffer.from(t,"base64").toString("ascii");function me({contentContext:r=null,errorsContext:c=null,gtmContext:E=null,origin:I}){try{const w=(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 r=e.match(o);return r?a=r[1].split(i)[0]:e===n?a=u:e.includes(s)&&(a=l),a||new Error(`Cannot select environment: No rule for website ${e}`),a})(I);return r&&(0,t.setContext)(Object.assign({},r,{environment:w})),c&&(0,e.setContext)(Object.assign({},c,{environment:w})),E&&((0,a.setContext)(Object.assign({},E,{environment:w})),(0,a.setupGTM)()),(({environment:t})=>{const e=(t=>{if(!t)throw new Error("Cannot map environment: Environment not defined");if(!S[t])throw new Error(`Cannot map environment: No mapping found for environment ${t}`);return S[t]})(t);p.emailIds=d[e]})(Object.assign({},{environment:w})),w}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.15",
4
4
  "description": "Browser library to interact with Apolitical's APIs",
5
5
  "author": "Apolitical Group Limited <engineering@apolitical.co>",
6
6
  "license": "MIT",
@@ -25,7 +25,6 @@
25
25
  "SDK"
26
26
  ],
27
27
  "dependencies": {
28
- "@apolitical/auth": "0.1.2",
29
28
  "@apolitical/content": "0.7.0",
30
29
  "@apolitical/error-reporting": "0.2.2",
31
30
  "@apolitical/gtm": "1.2.1",
@@ -34,7 +33,6 @@
34
33
  "http-status-codes": "2.2.0"
35
34
  },
36
35
  "peerDependencies": {
37
- "@apolitical/auth": "0.1.2",
38
36
  "@apolitical/content": "0.7.0",
39
37
  "@apolitical/error-reporting": "0.2.2",
40
38
  "@apolitical/gtm": "1.2.1",