@apolitical/sdk 7.11.1-4354.1 → 7.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.js CHANGED
@@ -1 +1,2 @@
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("socket.io-client"),require("buffer")):"function"==typeof define&&define.amd?define(["@apolitical/content","@apolitical/error-reporting","@apolitical/gtm","axios","http-status-codes","socket.io-client","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("socket.io-client"),require("buffer")):t.ApoliticalSDK=e(t["@apolitical/content"],t["@apolitical/error-reporting"],t["@apolitical/gtm"],t.axios,t["http-status-codes"],t["socket.io-client"],t.buffer)}(this,(function(t,e,a,r,n,s,o){return function(){"use strict";var i={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=o},25:function(t){t.exports=n},130:function(t){t.exports=s}},c={};function l(t){var e=c[t];if(void 0!==e)return e.exports;var a=c[t]={exports:{}};return i[t](a,a.exports,l),a.exports}l.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return l.d(e,{a:e}),e},l.d=function(t,e){for(var a in e)l.o(e,a)&&!l.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},l.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},l.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var u={};return function(){l.r(u),l.d(u,{assets:function(){return R},auth:function(){return m},buildAnswer:function(){return Wa},buildCarouselCard:function(){return Qa},buildQuestion:function(){return Ba},carouselCards:function(){return Pa},contentInteraction:function(){return X},decodeBase64:function(){return Ja},default:function(){return za},editorialPages:function(){return fa},features:function(){return tt},getEntries:function(){return t.getEntries},getEntry:function(){return t.getEntry},management:function(){return wt},mgmt:function(){return yt},payments:function(){return mt},people:function(){return qe},peopleEngagement:function(){return je},qaQuestions:function(){return Ma},reportError:function(){return e.reportError},search:function(){return ze},socials:function(){return Ta}});var t=l(809),e=l(30),a=l(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",REPLIES:"/replies",LIKES:"/likes"}},FEATURES_API:{BASE_URL:"/api/features-api",ENDPOINTS:{FLAGS:"/features"}},MANAGEMENT_API:{BASE_URL:"/api/management-api",ENDPOINTS:{ACCOUNTS:"/accounts",EVENT_REGISTRATIONS:"/event-registrations",LOGINS:"/logins",LOGIN_PASSWORDLESS:"/passwordless",BULK_ENROLMENTS:"/bulk-enrolments"}},MGMT_API:{BASE_URL:"/api/mgmt-api",ENDPOINTS:{REFERRALS:"/referrals",BULK_REFERRALS:"/bulk-referrals"}},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:{COMMUNITIES:"/user-communities",BULK_ENROLMENTS:"/bulk-enrolments",REGISTRATIONS:"/registrations",USERS:"/users",USER_ANSWERS:"/answers",USER_COURSES:"/courses",USER_EVENTS:"/events",USER_LIKES:"/likes",USER_LESSONS:"/lessons",USER_PRODUCTS:"/products",USER_RATINGS:"/ratings",USER_REFERRALS:"/referrals",USER_SUBSCRIPTIONS:"/subscriptions"}},PEOPLE_ENGAGEMENT_API:{BASE_URL:"/api/people-engagement-api",ENDPOINTS:{ENQUIRY_EMAILS:"/enquiry-emails",USERS:"/users",USER_PROPERTIES:"/properties"}},SEARCH_API:{BASE_URL:"/api/search-api",ENDPOINTS:{SEARCH:"/search"}},SOCIALS_API:{BASE_URL:"/api/socials-api",ENDPOINTS:{COMMUNITIES:"/communities"},PATHS:{ACTIVITIES:"activities",REACTIONS:"reactions"}}},CONTENTFUL:{ARTICLES:{TYPE:"solutionArticle"},CAROUSELS:{CARD_TYPES:{customCard:{INCLUDE:1,SELECT:"fields.icon,fields.label,fields.image,fields.primaryText,fields.secondaryText,fields.authorName,fields.authorImage,fields.link,fields.openInNewTab"},solutionArticle:{INCLUDE:1,SELECT:"fields.authorIds,fields.authorTag,fields.image,fields.publishedDate,fields.readingTime,fields.slug,fields.title"},microcourse:{INCLUDE:2,SELECT:"fields.banner,fields.freeCourse,fields.partnershipDetails,fields.slug,fields.title,fields.courseType"},event:{INCLUDE:1,SELECT:"fields.bannerImage,fields.defaultStartDate,fields.slug,fields.speakers,fields.title,fields.isEventOngoing"},listPage:{INCLUDE:1,SELECT:"fields.hero,fields.slug,fields.title"},qaQuestion:{INCLUDE:0,SELECT:"fields.answers,fields.authorId,fields.slug,fields.title,sys.createdAt,fields.projectNames"},learningHub:{INCLUDE:1,SELECT:"fields.bannerSection,fields.customLabel,fields.slug,fields.title"}}},COURSES:{TYPE:"microcourse"},CUSTOM_CARD:{TYPE:"customCard"},EDITORIAL_PAGES:{INCLUDE:1,SELECT:"fields.carousels,fields.slug,fields.showCarouselCta,fields.header,fields.subHeader",TYPE:"editorialPage"},EVENTS:{TYPE:"event"},LISTS:{TYPE:"listPage"},QUESTIONS:{TYPE:"qaQuestion",INCLUDE:1,LIMIT:10,ORDER:"-sys.createdAt",SELECT:"sys.createdAt,sys.updatedAt,fields.title,fields.slug,fields.authorId,fields.answers,fields.isEdited,fields.projectNames",SKIP:0},ANSWERS:{TYPE:"qaAnswer"},REPLIES:{TYPE:"reply"},LEARNING_HUB:{TYPE:"learningHub"}},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:c,LOCAL:E}}}=r,{HUBSPOT:{ENVIRONMENTS_MAPPING:S,EMAIL_IDS:d}}=r;let I={emailIds:{}};var p=l(300),w=l.n(p);const A=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:N,ENDPOINTS:{USERS:T,CERTIFICATES:$}}}}=r;var R={certificates:{create:async(t,e)=>{let a=[];try{const{data:r}=await w().post(`${N}${T}/${t}${$}`,e);r&&(a=r)}catch(t){await A(t)}return a}}};const{APIS:{AUTH_API:{BASE_URL:y,ENDPOINTS:{USER_PASSWORD:P,USERS:g}}},USERS:{MYSELF:h}}=r;var m={userPassword:{update:async t=>{let e=null;try{e=await w().put(`${y}${g}/${h}${P}`,t)}catch(t){e={message:(((t||{}).response||{}).data||{}).message},await A(t)}return e}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:U,ENDPOINTS:{ANSWERS:f,QUESTIONS:L,LIKES:O}}}}=r,C=`${U}${L}`;var _={create:async({questionSlug:t},e)=>{try{await w().post(`${C}/${encodeURIComponent(t)}${f}`,e)}catch(t){const e=await A(t);throw new Error(e)}},remove:async({questionSlug:t,answerSlug:e})=>{try{await w().delete(`${C}/${encodeURIComponent(t)}${f}/${encodeURIComponent(e)}`)}catch(t){const e=await A(t);throw new Error(e)}},update:async({questionSlug:t,answerSlug:e},a)=>{try{return await w().put(`${C}/${encodeURIComponent(t)}${f}/${encodeURIComponent(e)}`,a)}catch(t){const e=await A(t);throw new Error(e)}},like:async({questionSlug:t,answerSlug:e},a)=>{try{return await w().post(`${C}/${encodeURIComponent(t)}${f}/${encodeURIComponent(e)}${O}`,a)}catch(t){const e=await A(t);throw new Error(e)}},unlike:async({questionSlug:t,answerSlug:e})=>{try{return await w().delete(`${C}/${encodeURIComponent(t)}${f}/${encodeURIComponent(e)}${O}`)}catch(t){const e=await A(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:D,ENDPOINTS:{QUESTIONS:v}}}}=r,b=`${D}${v}`;var M={create:async t=>{try{return await w().post(b,t)}catch(t){const e=await A(t);throw new Error(e)}},remove:async({questionSlug:t})=>{try{await w().delete(`${b}/${encodeURIComponent(t)}`)}catch(t){const e=await A(t);throw new Error(e)}},update:async({questionSlug:t},e)=>{try{return await w().put(`${b}/${encodeURIComponent(t)}`,e)}catch(t){const e=await A(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:B,ENDPOINTS:{REPLIES:q,ANSWERS:G,QUESTIONS:Y,LIKES:k}}}}=r,x=`${B}${Y}`,F=({questionSlug:t,answerSlug:e,replySlug:a},r=!1)=>{let n=`${x}/${encodeURIComponent(t)}${G}/${encodeURIComponent(e)}${q}`;return a&&(n=`${n}/${encodeURIComponent(a)}`,r&&(n=`${n}${k}`)),n};var V={create:async({questionSlug:t,answerSlug:e},a)=>{try{return await w().post(F({questionSlug:t,answerSlug:e}),a)}catch(t){const e=await A(t);throw new Error(e)}},update:async({questionSlug:t,answerSlug:e,replySlug:a},r)=>{try{return await w().put(F({questionSlug:t,answerSlug:e,replySlug:a}),r)}catch(t){const e=await A(t);throw new Error(e)}},remove:async({questionSlug:t,answerSlug:e,replySlug:a})=>{try{await w().delete(F({questionSlug:t,answerSlug:e,replySlug:a}))}catch(t){const e=await A(t);throw new Error(e)}},like:async({questionSlug:t,answerSlug:e,replySlug:a},r)=>{try{await w().post(F({questionSlug:t,answerSlug:e,replySlug:a},!0),r)}catch(t){const e=await A(t);throw new Error(e)}},unlike:async({questionSlug:t,answerSlug:e,replySlug:a})=>{try{await w().delete(F({questionSlug:t,answerSlug:e,replySlug:a},!0))}catch(t){const e=await A(t);throw new Error(e)}},getReplyUrl:F};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:H,ENDPOINTS:{QUESTIONS:K,ANSWERS:j,LIKES:Q}}}}=r,W=`${H}${K}`;var X={answers:_,questions:M,replies:V,likes:{create:async(t,e)=>{try{return await w().post(`${W}/${encodeURIComponent(t)}${j}/${encodeURIComponent(e)}${Q}`)}catch(t){const e=await A(t);throw new Error(e)}},remove:async(t,e)=>{try{return await w().delete(`${W}/${encodeURIComponent(t)}${j}/${encodeURIComponent(e)}${Q}`)}catch(t){const e=await A(t);throw new Error(e)}}}};const{APIS:{FEATURES_API:{BASE_URL:J,ENDPOINTS:{FLAGS:z}}}}=r,Z=`${J}${z}`;var tt={flags:{read:async t=>{let e=null;try{const{data:a}=await w().get(`${Z}/${encodeURIComponent(t)}`);a?.name&&a?.featureState&&(e=a)}catch(t){await A(t)}return e}}};const{APIS:{MANAGEMENT_API:{BASE_URL:et,ENDPOINTS:{ACCOUNTS:at}}}}=r;var rt={create:async t=>{try{await w().post(`${et}${at}`,t)}catch(t){throw await A(t),t}},read:async t=>{let e=null;try{({data:e}=await w().get(`${et}${at}/${encodeURIComponent(t)}`))}catch(t){await A(t)}return e},update:async(t,e)=>{try{await w().put(`${et}${at}/${encodeURIComponent(t)}`,e)}catch(t){throw await A(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:nt,ENDPOINTS:{BULK_ENROLMENTS:st}}}}=r;var ot={create:async t=>{try{await w().post(`${nt}${st}`,t)}catch(t){throw await A(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:it,ENDPOINTS:{EVENT_REGISTRATIONS:ct}}}}=r;var lt={create:async t=>{try{await w().post(`${it}${ct}`,t)}catch(t){const e=await A(t);throw new Error(e)}}};const{APIS:{MANAGEMENT_API:{BASE_URL:ut,ENDPOINTS:{LOGINS:Et,LOGIN_PASSWORDLESS:St}}}}=r,dt=`${ut}${Et}`;var It={update:async t=>{try{await w().put(`${dt}/${encodeURIComponent(t)}${St}`)}catch(t){throw await A(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:pt}}}=r;var wt={accounts:rt,bulkEnrolments:ot,eventRegistrations:lt,passwordless:It,userProducts:{create:async t=>{try{await w().post(`${pt}/users/${t.id}/products`,t)}catch(t){const e=await A(t);throw new Error(e)}}}};const{APIS:{MGMT_API:{BASE_URL:At,ENDPOINTS:{REFERRALS:Nt}}}}=r;var Tt={create:async t=>{try{await w().post(`${At}${Nt}`,t)}catch(t){throw await A(t),t}}};const{APIS:{MGMT_API:{BASE_URL:$t,ENDPOINTS:{BULK_REFERRALS:Rt}}}}=r;var yt={referrals:Tt,bulkReferrals:{create:async t=>{try{await w().post(`${$t}${Rt}`,t)}catch(t){throw await A(t),t}}}};const{APIS:{PAYMENTS_API:{BASE_URL_V2:Pt,ENDPOINTS:{PRODUCTS:gt}}}}=r,ht=`${Pt}${gt}`;var mt={products:{list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(ht,a);t&&t.length&&(e=t)}catch(t){await A(t)}return e}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ut,ENDPOINTS:{BULK_ENROLMENTS:ft}}}}=r;var Lt={list:async t=>{let e=[];try{const{data:a}=await w().get(`${Ut}${ft}`,{params:t});a&&a.length&&(e=a)}catch(t){await A(t)}return e}},Ot=l(25);const{OK:Ct,MULTIPLE_CHOICES:_t,NOT_FOUND:Dt,FORBIDDEN:vt}=Ot.StatusCodes,bt=t=>t>=Ct&&t<_t||t===vt||t===Dt,{APIS:{PEOPLE_API:{BASE_URL_V2:Mt,ENDPOINTS:{USERS:Bt}}}}=r,qt=async t=>{let e=null;try{const{data:a}=await w().get(`${Mt}${Bt}/${encodeURIComponent(t)}`,{validateStatus:bt});a&&a.id&&(e=a)}catch(t){await A(t)}return e},Gt=async t=>{let e=[];try{if(t&&t.length<2)throw new Error("users list method requires at least two ids");const a=t.map((t=>`ids=${encodeURIComponent(t)}`)).join("&"),r=await w().get(`${Mt}${Bt}?${a}`,{validateStatus:bt});r&&r.length&&(e=r)}catch(t){await A(t)}return e};var Yt={read:qt,update:async(t,e)=>{let a=!1;try{const{data:r}=await w().put(`${Mt}${Bt}/${encodeURIComponent(t)}`,e);a=!(!r||!r.id)}catch(t){await A(t)}return a},list:Gt};const{APIS:{PEOPLE_API:{BASE_URL_V2:kt,ENDPOINTS:{USERS:xt,USER_LIKES:Ft}}},USERS:{MYSELF:Vt}}=r,Ht=`${kt}${xt}/${Vt}${Ft}`,Kt=async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(Ht,a);t&&t.length&&(e=t)}catch(t){await A(t)}return e};var jt={list:Kt};var Qt={authors:{readQuestionAuthors:async(t,e,a)=>{try{if(t.author=await qt(t.authorId),t.answers&&t.answers.length&&!a.ignoreAnswersAuthors){t.answers.sort(((t,e)=>new Date(e.updatedAt)-new Date(t.updatedAt))),t.totalAnswers=t.answers.length;let n=t.answers;if(a.limit&&a.pageNumber){const e=a.limit*(a.pageNumber-1);n=t.answers.slice(e,e+a.limit)}for(let t of n){t.author=t.authorId&&await qt(t.authorId)||{};const[a]=e?await Kt({contentType:r.CONTENTFUL.ANSWERS.TYPE,contentSlug:t.slug}):[null];t.userLiked=!!a}t.answers=n}else t.answers||(t.answers=[]);return t}catch(t){throw await A(t),new Error(`Cannot read authors for question: ${t.message}`)}},readAuthors:async(t=[])=>{let e=[];try{if(!1===Array.isArray(t))throw new Error("authorIds is not an array!");if(t&&1===t.length){const a=await qt(t[0]);a&&e.push(a)}else if(t&&t.length>1){const a=await Gt(t);a&&a.length>0&&(e=a)}}catch(t){throw await A(t),new Error(`Cannot read authors: ${t.message}`)}return e}}};const{APIS:{PEOPLE_API:{BASE_URL:Wt,ENDPOINTS:{REGISTRATIONS:Xt}}}}=r;var Jt={list:async t=>{let e=[];try{const{data:a}=await w().get(`${Wt}${Xt}`,{params:t});a&&a.length&&(e=a)}catch(t){await A(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:zt,ENDPOINTS:{COMMUNITIES:Zt}}}}=r,te=`${zt}${Zt}`;function ee(t){const e=t["content-range"].split(" ")[1].split("/"),[a,r,n]=[...e[0].split("-"),e[1]].map((t=>parseInt(t,10)||0));return{start:a,end:r,total:n}}var ae={list:async t=>{let e={items:[],start:0,end:0,total:0},a=t?{params:t}:{params:{}};try{const{data:t,headers:r}=await w().get(te,a);return t?.length>0&&(e={items:t,...ee(r)}),e}catch(t){await A(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:re,ENDPOINTS:{USERS:ne,USER_COURSES:se}}},USERS:{MYSELF:oe}}=r,ie=`${re}${ne}/${oe}${se}`;var ce={create:async t=>{try{await w().post(ie,t)}catch(t){await A(t)}},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(ie,a);t&&t.length&&(e=t)}catch(t){await A(t)}return e},update:async(t,e)=>{try{await w().put(`${ie}/${t}`,e)}catch(t){await A(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:le,ENDPOINTS:{USERS:ue,USER_EVENTS:Ee}}},USERS:{MYSELF:Se}}=r,de=`${le}${ue}/${Se}${Ee}`;var Ie={list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(de,a);t&&t.length&&(e=t)}catch(t){await A(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:pe,ENDPOINTS:{USERS:we,USER_LESSONS:Ae}}},USERS:{MYSELF:Ne}}=r,Te=`${pe}${we}/${Ne}${Ae}`;var $e={create:async t=>{let e=null;try{e=await w().post(Te,t)}catch(t){await A(t)}return e},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(Te,a);t&&t.length&&(e=t)}catch(t){await A(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Re,ENDPOINTS:{USERS:ye,USER_PRODUCTS:Pe}}},USERS:{MYSELF:ge}}=r,he=`${Re}${ye}/${ge}${Pe}`;var me={create:async t=>{let e=null;try{e=await w().post(he,t)}catch(t){await A(t)}return e},list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(he,a);t&&t.length&&(e=t)}catch(t){await A(t)}return e},update:async(t,e)=>{try{await w().put(`${he}/${t}`,e)}catch(t){await A(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ue,ENDPOINTS:{USERS:fe,USER_RATINGS:Le}}},USERS:{MYSELF:Oe}}=r,Ce=`${Ue}${fe}/${Oe}${Le}`;var _e={create:async t=>{let e=null;try{const{data:a}=await w().post(Ce,t);a?.id&&(e=a)}catch(t){await A(t)}return e},update:async(t,e)=>{try{await w().put(`${Ce}/${t}`,e)}catch(t){await A(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:De,ENDPOINTS:{USERS:ve,USER_REFERRALS:be}}},USERS:{MYSELF:Me}}=r,Be=`${De}${ve}/${Me}${be}`;var qe={bulkEnrolments:Lt,handlers:Qt,registrations:Jt,users:Yt,userCommunities:ae,userCourses:ce,userEvents:Ie,userLessons:$e,userLikes:jt,userProducts:me,userRatings:_e,userReferrals:{list:async t=>{let e=[],a=t?{params:t}:{params:{}};try{const{data:t}=await w().get(Be,a);t&&t.length&&(e=t)}catch(t){await A(t)}return e}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:Ge,ENDPOINTS:{ENQUIRY_EMAILS:Ye}}}}=r;var ke={create:async t=>{let e=null;try{const{data:a}=await w().post(`${Ge}${Ye}`,t);a&&(e=a)}catch(t){await A(t)}return e}},xe={forms:{sendEnquiryEmails:async t=>{let e=null;try{const{emailIds:a}=I;e=await je.emails.create({...a,...t})}catch(t){await A(t)}return e}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:Fe,ENDPOINTS:{USERS:Ve,USER_PROPERTIES:He}}},USERS:{MYSELF:Ke}}=r;var je={emails:ke,handlers:xe,userProperties:{update:async(t,e)=>{try{await w().put(`${Fe}${Ve}/${Ke}${He}/${t}`,e)}catch(t){await A(t)}}}},Qe=l(130);const{APIS:{SEARCH_API:{BASE_URL:We,ENDPOINTS:{SEARCH:Xe}}}}=r,Je=`${We}${Xe}`;var ze={ask:async t=>{try{let e=null;const{data:a}=await w().get(Je,{params:{question:t}});return a?.answer&&a?.references&&a?.version&&(e=a),e}catch(t){const e=await A(t);throw new Error(e)}},stream:(t,e,a)=>{const r=(0,Qe.io)(void 0,{path:"/api/search-api/web-sockets"});function n(){r.emit("search",{question:t})}function s(t){a(t),o(),r.disconnect()}function o(){r.off("connect",n),r.off("update",e),r.off("result",s)}return r.on("connect",n),r.on("update",e),r.on("result",s),o}};const{APIS:{SOCIALS_API:{BASE_URL:Ze,ENDPOINTS:{COMMUNITIES:ta}}}}=r,ea=`${Ze}${ta}`;var aa={read:async t=>{let e=null;try{const{data:a}=await w().get(`${ea}/${encodeURIComponent(t)}`);a?.title&&(e=a)}catch(t){await A(t)}return e},join:async(t,e)=>{let a=null;try{const{data:r}=await w().post(`${ea}/${encodeURIComponent(t)}/members`,e);a=r}catch(t){await A(t)}return a},leave:async t=>{let e=null;try{const{data:a}=await w().delete(`${ea}/${encodeURIComponent(t)}/members/me`);e=a}catch(t){await A(t)}return e}};const{APIS:{SOCIALS_API:{BASE_URL:ra,ENDPOINTS:{COMMUNITIES:na},PATHS:{ACTIVITIES:sa}}}}=r,oa=`${ra}${na}`;var ia={read:async(t,e)=>{let a=null;try{const{data:r}=await w().get(`${oa}/${encodeURIComponent(t)}/${sa}/${e}`);r&&(a=r)}catch(t){await A(t)}return a},list:async(t,e={})=>{let a=null;try{const{data:r}=await w().get(`${oa}/${encodeURIComponent(t)}/${sa}`,{params:e});r&&(a=r)}catch(t){await A(t)}return a},create:async(t,e)=>{let a=null;try{const{data:r}=await w().post(`${oa}/${encodeURIComponent(t)}/${sa}`,e);r?.content&&(a=r)}catch(t){await A(t)}return a},update:async(t,e,a)=>{let r=null;try{const{data:n}=await w().put(`${oa}/${encodeURIComponent(t)}/${sa}/${e}`,a);n?.content&&(r=n)}catch(t){await A(t)}return r},remove:async(t,e)=>{let a=null;try{const{data:r}=await w().delete(`${oa}/${encodeURIComponent(t)}/${sa}/${e}`);a=r}catch(t){await A(t)}return a}};const{APIS:{SOCIALS_API:{BASE_URL:ca,ENDPOINTS:{COMMUNITIES:la},PATHS:{ACTIVITIES:ua,REACTIONS:Ea}}}}=r,Sa=`${ca}${la}`;var da={create:async(t,e,a,r)=>{let n=null,s=`${Sa}/${encodeURIComponent(t)}`;s=e?`${s}/${ua}/${e}/${Ea}`:`${s}/${Ea}/${a}/${Ea}`;try{const{data:t}=await w().post(s,r);n=t}catch(t){await A(t)}return n},list:async(t,{activityId:e,reactionId:a},r={})=>{let n=null,s=`${Sa}/${encodeURIComponent(t)}`;s=e?`${s}/${ua}/${e}/${Ea}`:`${s}/${Ea}/${a}/${Ea}`;try{const{data:t}=await w().get(s,{params:r});t&&(n=t)}catch(t){await A(t)}return n},remove:async(t,e)=>{let a=null;try{const{data:r}=await w().delete(`${Sa}/${encodeURIComponent(t)}/${Ea}/${e}`);a=r}catch(t){await A(t)}return a},update:async(t,e,a,r)=>{let n=null,s=`${Sa}/${encodeURIComponent(t)}`;s=e?`${s}/${ua}/${e}`:`${s}/${Ea}/${a}`;try{const{data:t}=await w().put(s,r);n=t}catch(t){await A(t)}return n}};const{APIS:{SOCIALS_API:{BASE_URL:Ia,ENDPOINTS:{COMMUNITIES:pa},PATHS:{ACTIVITIES:wa,REACTIONS:Aa}}}}=r,Na=`${Ia}${pa}`;var Ta={activities:ia,communities:aa,likes:{create:async(t,e,a)=>{let r=null;const n={kind:"like"};let s=`${Na}/${encodeURIComponent(t)}`;s=e?`${s}/${wa}/${e}/${Aa}`:`${s}/${Aa}/${a}/${Aa}`;try{const{data:t}=await w().post(s,n);r=t}catch(t){await A(t)}return r},remove:async(t,e)=>{let a=null;try{const{data:r}=await w().delete(`${Na}/${encodeURIComponent(t)}/${Aa}/${e}`);a=r}catch(t){await A(t)}return a}},reactions:da};const{CONTENTFUL:$a}=r,{CARD_TYPES:Ra}=$a.CAROUSELS,ya={read:async(e,a)=>{try{if(!a||!a.sys||!a.sys.id)throw new Error("Invalid link to card");if(!e||!Ra[e])throw new Error("Unsupported card content type");const{INCLUDE:r,SELECT:n}=Ra[e];return await(0,t.getEntry)({content_type:e,"sys.id":a.sys.id,include:r,select:n},{assetDetails:!0})}catch(t){throw await A(t),new Error(`Cannot read carousel card: ${t.message}`)}}};var Pa=ya;const{CONTENTFUL:ga}=r,{INCLUDE:ha,SELECT:ma,TYPE:Ua}=ga.EDITORIAL_PAGES;var fa={read:async e=>{try{return await(0,t.getEntry)({content_type:Ua,"fields.slug":e,include:ha,select:ma})}catch(t){throw await A(t),new Error(`Cannot read editorial page: ${t.message}`)}}};const{CONTENTFUL:La}=r,{TYPE:Oa,ORDER:Ca,SELECT:_a,SKIP:Da,LIMIT:va,INCLUDE:ba}=La.QUESTIONS;var Ma={read:async e=>{try{return await(0,t.getEntry)({content_type:Oa,"fields.slug":e,include:2,select:_a})}catch(t){throw await A(t),new Error(`Cannot read question: ${t.message}`)}},list:async(e={})=>{try{return await(0,t.getEntries)({content_type:Oa,include:ba,limit:va,order:Ca,select:_a,skip:Da,...e})}catch(t){throw await A(t),new Error(`Cannot list questions: ${t.message}`)}}},Ba=async(t,e,a={ignoreAnswersAuthors:!1})=>{try{let r={};return r=await Ma.read(t),r=await qe.handlers.authors.readQuestionAuthors(r,e,a),r}catch(t){throw await A(t),new Error(`Cannot build question: ${t.message}`)}};const{ARTICLES:{TYPE:qa},COURSES:{TYPE:Ga},CUSTOM_CARD:{TYPE:Ya},EVENTS:{TYPE:ka},LISTS:{TYPE:xa},QUESTIONS:{TYPE:Fa},LEARNING_HUB:{TYPE:Va}}=r.CONTENTFUL,Ha=t=>t&&t.url?(Object.assign(t,{aspect:"responsiveCard",query:"q=90&fit=fill"}),t):null,Ka=t=>t&&t.url?`${t.url}?w=100&h=100&fit=thumb&f=center`:null,ja={[qa]:async t=>{const{authorIds:e,authorTag:a,image:r,publishedDate:n,readingTime:s,slug:o,title:i}=t,c=await qe.handlers.authors.readAuthors(e),l=c&&c.length?c:a?[a]:null;return{banner:Ha(r),contributors:l,publishedDate:n,readingTime:s,slug:o,title:i}},[Ga]:async(t,e)=>{const{banner:a,freeCourse:r,partnershipDetails:n,slug:s,title:o,registered:i,courseType:c}=t,l={banner:Ha(a),slug:s,title:o,pill:r?"free":"premium",registered:!!i,courseType:c};if(n){const{partners:t}=n;l.partner=t&&t.length&&n.partners[0]}if(void 0===i&&e){const[t]=await qe.userProducts.list({courseSlug:s,isEnrolled:!0,scope:"active"});l.registered=!!t}return l},[Ya]:t=>{const{authorName:e,authorImage:a,icon:r,image:n,label:s,link:o,primaryText:i}=t;return{...t,banner:n?Ha(n):null,customIcon:r?r.toLowerCase():null,customLabel:s,contributors:e?[{name:e,image:a?{thumbnail:Ka(a)}:null}]:null,slug:o,text:i}},[ka]:async(t,e)=>{const{bannerImage:a,defaultStartDate:r,isEventOngoing:n,slug:s,speakers:o,title:i,registered:c}=t,l=new Date(r),u=!!l&&l<new Date;if(o&&o.length)for(const t of o)t.image=Ka(t.image);const E={banner:Ha(a),dateHasPassed:u,title:i,slug:s,isOngoingEvent:n,contributors:o,startDate:l,registered:!!c};if(void 0===c&&e){const[t]=await qe.userEvents.list({eventSlug:s});E.registered=!!t}return E},[xa]:async t=>{const{hero:e,slug:a,title:r}=t;return{banner:Ha(e),slug:a,title:r}},[Fa]:async t=>{const{answers:e,authorId:a,createdAt:r,slug:n,title:s}=t;let o=null;if(a){const t=await qe.users.read(a);t&&(o=t)}return{answers:e&&e.length?e.length:0,contributors:o?[o]:[],createdAt:r,slug:n,title:s}},[Va]:t=>{const{bannerSection:e,customLabel:a,slug:r,title:n}=t;return{banner:Ha(e.image),slug:r,title:n,customLabel:a}},people:t=>{const{id:e,name:a,jobTitle:r,location:n,image:s}=t;return{profile:s,slug:e,title:a,text:r,secondaryText:n}}};var Qa=async({contentType:t,...e}={},a)=>{try{if(!ja[t])throw new Error("Content type not supported");if("function"!=typeof ja[t])throw new Error("No builder function for content type");return"people"!==t&&e.sys&&e.sys.type&&"Link"===e.sys.type&&(e=await Pa.read(t,e)),{contentType:t,...await ja[t](e,a)}}catch(t){throw await A(t),new Error(`Cannot build carousel card: ${t.message}`)}},Wa=async(t,e,a={})=>{try{if(!t.replies||0===t.replies.length)return t.replies=[],t;t.replies.sort(((t,e)=>new Date(t.createdAt)-new Date(e.createdAt))),t.totalReplies=t.totalReplies||t.replies.length;let n=t.replies;if(a.limit&&a.pageNumber){const e=a.limit*(a.pageNumber-1);n=t.replies.slice(e,e+a.limit)}for(const a of n){if(a.authorId===t.authorId){a.author=t.author,a.userLiked=!1;continue}a.author=a.authorId&&await qt(a.authorId)||{};const[n]=e?await Kt({contentType:r.CONTENTFUL.REPLIES.TYPE,contentSlug:a.slug}):[null];a.userLiked=!!n}return t.replies=n,t}catch(t){throw await A(t),new Error(`Cannot build replies for answer: ${t.message}`)}},Xa=l(408);const Ja=t=>t&&Xa.Buffer.from(t,"base64").toString("ascii");function za({contentContext:r=null,errorsContext:l=null,gtmContext:u=null,origin:p}){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=c:e.includes(s)&&(a=E),a||new Error(`Cannot select environment: No rule for website ${e}`),a})(p);return r&&(0,t.setContext)(Object.assign({},r,{environment:w})),l&&(0,e.setContext)(Object.assign({},l,{environment:w})),u&&((0,a.setContext)(Object.assign({},u,{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);I.emailIds=d[e]})(Object.assign({},{environment:w})),w}catch(t){console.warn(`Cannot load SDK: ${t.message}`)}}}(),u}()}));
1
+ /*! For license information please see index.js.LICENSE.txt */
2
+ !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("socket.io-client"),require("buffer")):"function"==typeof define&&define.amd?define(["@apolitical/content","@apolitical/error-reporting","@apolitical/gtm","axios","http-status-codes","socket.io-client","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("socket.io-client"),require("buffer")):t.ApoliticalSDK=e(t["@apolitical/content"],t["@apolitical/error-reporting"],t["@apolitical/gtm"],t.axios,t["http-status-codes"],t["socket.io-client"],t.buffer)}(this,(function(t,e,r,a,n,s,i){return function(){"use strict";var o={809:function(e){e.exports=t},30:function(t){t.exports=e},36:function(t){t.exports=r},300:function(t){t.exports=a},408:function(t){t.exports=i},25:function(t){t.exports=n},130:function(t){t.exports=s}},c={};function l(t){var e=c[t];if(void 0!==e)return e.exports;var r=c[t]={exports:{}};return o[t](r,r.exports,l),r.exports}l.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return l.d(e,{a:e}),e},l.d=function(t,e){for(var r in e)l.o(e,r)&&!l.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},l.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},l.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var u={};return function(){l.r(u),l.d(u,{assets:function(){return N},auth:function(){return $},buildAnswer:function(){return Jr},buildCarouselCard:function(){return Wr},buildQuestion:function(){return kr},carouselCards:function(){return fr},contentInteraction:function(){return X},decodeBase64:function(){return sa},default:function(){return ia},editorialPages:function(){return Ur},features:function(){return et},getEntries:function(){return t.getEntries},getEntry:function(){return t.getEntry},management:function(){return wt},mgmt:function(){return Rt},payments:function(){return $t},people:function(){return qe},peopleEngagement:function(){return Qe},predictPlace:function(){return aa},qaQuestions:function(){return Br},reportError:function(){return e.reportError},search:function(){return ze},socials:function(){return Ar}});var t=l(809),e=l(30),r=l(36),a={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",REPLIES:"/replies",LIKES:"/likes"}},FEATURES_API:{BASE_URL:"/api/features-api",ENDPOINTS:{FLAGS:"/features"}},MANAGEMENT_API:{BASE_URL:"/api/management-api",ENDPOINTS:{ACCOUNTS:"/accounts",EVENT_REGISTRATIONS:"/event-registrations",LOGINS:"/logins",LOGIN_PASSWORDLESS:"/passwordless",BULK_ENROLMENTS:"/bulk-enrolments"}},MGMT_API:{BASE_URL:"/api/mgmt-api",ENDPOINTS:{REFERRALS:"/referrals",BULK_REFERRALS:"/bulk-referrals"}},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:{COMMUNITIES:"/user-communities",BULK_ENROLMENTS:"/bulk-enrolments",REGISTRATIONS:"/registrations",USERS:"/users",USER_ANSWERS:"/answers",USER_COURSES:"/courses",USER_EVENTS:"/events",USER_LIKES:"/likes",USER_LESSONS:"/lessons",USER_PRODUCTS:"/products",USER_RATINGS:"/ratings",USER_REFERRALS:"/referrals",USER_SUBSCRIPTIONS:"/subscriptions"}},PEOPLE_ENGAGEMENT_API:{BASE_URL:"/api/people-engagement-api",ENDPOINTS:{ENQUIRY_EMAILS:"/enquiry-emails",USERS:"/users",USER_PROPERTIES:"/properties"}},SEARCH_API:{BASE_URL:"/api/search-api",ENDPOINTS:{SEARCH:"/search"}},SOCIALS_API:{BASE_URL:"/api/socials-api",ENDPOINTS:{COMMUNITIES:"/communities"},PATHS:{ACTIVITIES:"activities",REACTIONS:"reactions"}}},CONTENTFUL:{ARTICLES:{TYPE:"solutionArticle"},CAROUSELS:{CARD_TYPES:{customCard:{INCLUDE:1,SELECT:"fields.icon,fields.label,fields.image,fields.primaryText,fields.secondaryText,fields.authorName,fields.authorImage,fields.link,fields.openInNewTab"},solutionArticle:{INCLUDE:1,SELECT:"fields.authorIds,fields.authorTag,fields.image,fields.publishedDate,fields.readingTime,fields.slug,fields.title"},microcourse:{INCLUDE:2,SELECT:"fields.banner,fields.freeCourse,fields.partnershipDetails,fields.slug,fields.title,fields.courseType"},event:{INCLUDE:1,SELECT:"fields.bannerImage,fields.defaultStartDate,fields.slug,fields.speakers,fields.title,fields.isEventOngoing"},listPage:{INCLUDE:1,SELECT:"fields.hero,fields.slug,fields.title"},qaQuestion:{INCLUDE:0,SELECT:"fields.answers,fields.authorId,fields.slug,fields.title,sys.createdAt,fields.projectNames"},learningHub:{INCLUDE:1,SELECT:"fields.bannerSection,fields.customLabel,fields.slug,fields.title"}}},COURSES:{TYPE:"microcourse"},CUSTOM_CARD:{TYPE:"customCard"},EDITORIAL_PAGES:{INCLUDE:1,SELECT:"fields.carousels,fields.slug,fields.showCarouselCta,fields.header,fields.subHeader",TYPE:"editorialPage"},EVENTS:{TYPE:"event"},LISTS:{TYPE:"listPage"},QUESTIONS:{TYPE:"qaQuestion",INCLUDE:1,LIMIT:10,ORDER:"-sys.createdAt",SELECT:"sys.createdAt,sys.updatedAt,fields.title,fields.slug,fields.authorId,fields.answers,fields.isEdited,fields.projectNames",SKIP:0},ANSWERS:{TYPE:"qaAnswer"},REPLIES:{TYPE:"reply"},LEARNING_HUB:{TYPE:"learningHub"}},GOOGLE:{MAPS:{LIBRARIES:{PLACES:"places"},VERSION:"weekly"}},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:i,STAGING_SPLITTER:o},ENVIRONMENTS:{PRODUCTION:c,LOCAL:E}}}=a,{HUBSPOT:{ENVIRONMENTS_MAPPING:S,EMAIL_IDS:d}}=a;let p={emailIds:{}};const h=()=>p;var I=l(300),w=l.n(I);const g=async t=>{try{const{message:r,response:a,request:n}=t;let s=r;return a?s+=` - The request was made and the server responded with ${JSON.stringify({status:a.status,data:a.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:y,ENDPOINTS:{USERS:A,CERTIFICATES:m}}}}=a;var N={certificates:{create:async(t,e)=>{let r=[];try{const{data:a}=await w().post(`${y}${A}/${t}${m}`,e);a&&(r=a)}catch(t){await g(t)}return r}}};const{APIS:{AUTH_API:{BASE_URL:R,ENDPOINTS:{USER_PASSWORD:f,USERS:T}}},USERS:{MYSELF:P}}=a;var $={userPassword:{update:async t=>{let e=null;try{e=await w().put(`${R}${T}/${P}${f}`,t)}catch(t){e={message:(((t||{}).response||{}).data||{}).message},await g(t)}return e}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:L,ENDPOINTS:{ANSWERS:U,QUESTIONS:O,LIKES:C}}}}=a,_=`${L}${O}`;var v={create:async({questionSlug:t},e)=>{try{await w().post(`${_}/${encodeURIComponent(t)}${U}`,e)}catch(t){const e=await g(t);throw new Error(e)}},remove:async({questionSlug:t,answerSlug:e})=>{try{await w().delete(`${_}/${encodeURIComponent(t)}${U}/${encodeURIComponent(e)}`)}catch(t){const e=await g(t);throw new Error(e)}},update:async({questionSlug:t,answerSlug:e},r)=>{try{return await w().put(`${_}/${encodeURIComponent(t)}${U}/${encodeURIComponent(e)}`,r)}catch(t){const e=await g(t);throw new Error(e)}},like:async({questionSlug:t,answerSlug:e},r)=>{try{return await w().post(`${_}/${encodeURIComponent(t)}${U}/${encodeURIComponent(e)}${C}`,r)}catch(t){const e=await g(t);throw new Error(e)}},unlike:async({questionSlug:t,answerSlug:e})=>{try{return await w().delete(`${_}/${encodeURIComponent(t)}${U}/${encodeURIComponent(e)}${C}`)}catch(t){const e=await g(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:b,ENDPOINTS:{QUESTIONS:D}}}}=a,M=`${b}${D}`;var B={create:async t=>{try{return await w().post(M,t)}catch(t){const e=await g(t);throw new Error(e)}},remove:async({questionSlug:t})=>{try{await w().delete(`${M}/${encodeURIComponent(t)}`)}catch(t){const e=await g(t);throw new Error(e)}},update:async({questionSlug:t},e)=>{try{return await w().put(`${M}/${encodeURIComponent(t)}`,e)}catch(t){const e=await g(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:k,ENDPOINTS:{REPLIES:q,ANSWERS:G,QUESTIONS:x,LIKES:F}}}}=a,Y=`${k}${x}`,V=({questionSlug:t,answerSlug:e,replySlug:r},a=!1)=>{let n=`${Y}/${encodeURIComponent(t)}${G}/${encodeURIComponent(e)}${q}`;return r&&(n=`${n}/${encodeURIComponent(r)}`,a&&(n=`${n}${F}`)),n};var j={create:async({questionSlug:t,answerSlug:e},r)=>{try{return await w().post(V({questionSlug:t,answerSlug:e}),r)}catch(t){const e=await g(t);throw new Error(e)}},update:async({questionSlug:t,answerSlug:e,replySlug:r},a)=>{try{return await w().put(V({questionSlug:t,answerSlug:e,replySlug:r}),a)}catch(t){const e=await g(t);throw new Error(e)}},remove:async({questionSlug:t,answerSlug:e,replySlug:r})=>{try{await w().delete(V({questionSlug:t,answerSlug:e,replySlug:r}))}catch(t){const e=await g(t);throw new Error(e)}},like:async({questionSlug:t,answerSlug:e,replySlug:r},a)=>{try{await w().post(V({questionSlug:t,answerSlug:e,replySlug:r},!0),a)}catch(t){const e=await g(t);throw new Error(e)}},unlike:async({questionSlug:t,answerSlug:e,replySlug:r})=>{try{await w().delete(V({questionSlug:t,answerSlug:e,replySlug:r},!0))}catch(t){const e=await g(t);throw new Error(e)}},getReplyUrl:V};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:K,ENDPOINTS:{QUESTIONS:H,ANSWERS:Q,LIKES:W}}}}=a,J=`${K}${H}`;var X={answers:v,questions:B,replies:j,likes:{create:async(t,e)=>{try{return await w().post(`${J}/${encodeURIComponent(t)}${Q}/${encodeURIComponent(e)}${W}`)}catch(t){const e=await g(t);throw new Error(e)}},remove:async(t,e)=>{try{return await w().delete(`${J}/${encodeURIComponent(t)}${Q}/${encodeURIComponent(e)}${W}`)}catch(t){const e=await g(t);throw new Error(e)}}}};const{APIS:{FEATURES_API:{BASE_URL:Z,ENDPOINTS:{FLAGS:z}}}}=a,tt=`${Z}${z}`;var et={flags:{read:async t=>{let e=null;try{const{data:r}=await w().get(`${tt}/${encodeURIComponent(t)}`);r?.name&&r?.featureState&&(e=r)}catch(t){await g(t)}return e}}};const{APIS:{MANAGEMENT_API:{BASE_URL:rt,ENDPOINTS:{ACCOUNTS:at}}}}=a;var nt={create:async t=>{try{await w().post(`${rt}${at}`,t)}catch(t){throw await g(t),t}},read:async t=>{let e=null;try{({data:e}=await w().get(`${rt}${at}/${encodeURIComponent(t)}`))}catch(t){await g(t)}return e},update:async(t,e)=>{try{await w().put(`${rt}${at}/${encodeURIComponent(t)}`,e)}catch(t){throw await g(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:st,ENDPOINTS:{BULK_ENROLMENTS:it}}}}=a;var ot={create:async t=>{try{await w().post(`${st}${it}`,t)}catch(t){throw await g(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:ct,ENDPOINTS:{EVENT_REGISTRATIONS:lt}}}}=a;var ut={create:async t=>{try{await w().post(`${ct}${lt}`,t)}catch(t){const e=await g(t);throw new Error(e)}}};const{APIS:{MANAGEMENT_API:{BASE_URL:Et,ENDPOINTS:{LOGINS:St,LOGIN_PASSWORDLESS:dt}}}}=a,pt=`${Et}${St}`;var ht={update:async t=>{try{await w().put(`${pt}/${encodeURIComponent(t)}${dt}`)}catch(t){throw await g(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:It}}}=a;var wt={accounts:nt,bulkEnrolments:ot,eventRegistrations:ut,passwordless:ht,userProducts:{create:async t=>{try{await w().post(`${It}/users/${t.id}/products`,t)}catch(t){const e=await g(t);throw new Error(e)}}}};const{APIS:{MGMT_API:{BASE_URL:gt,ENDPOINTS:{REFERRALS:yt}}}}=a;var At={create:async t=>{try{await w().post(`${gt}${yt}`,t)}catch(t){throw await g(t),t}}};const{APIS:{MGMT_API:{BASE_URL:mt,ENDPOINTS:{BULK_REFERRALS:Nt}}}}=a;var Rt={referrals:At,bulkReferrals:{create:async t=>{try{await w().post(`${mt}${Nt}`,t)}catch(t){throw await g(t),t}}}};const{APIS:{PAYMENTS_API:{BASE_URL_V2:ft,ENDPOINTS:{PRODUCTS:Tt}}}}=a,Pt=`${ft}${Tt}`;var $t={products:{list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await w().get(Pt,r);t&&t.length&&(e=t)}catch(t){await g(t)}return e}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Lt,ENDPOINTS:{BULK_ENROLMENTS:Ut}}}}=a;var Ot={list:async t=>{let e=[];try{const{data:r}=await w().get(`${Lt}${Ut}`,{params:t});r&&r.length&&(e=r)}catch(t){await g(t)}return e}},Ct=l(25);const{OK:_t,MULTIPLE_CHOICES:vt,NOT_FOUND:bt,FORBIDDEN:Dt}=Ct.StatusCodes,Mt=t=>t>=_t&&t<vt||t===Dt||t===bt,{APIS:{PEOPLE_API:{BASE_URL_V2:Bt,ENDPOINTS:{USERS:kt}}}}=a,qt=async t=>{let e=null;try{const{data:r}=await w().get(`${Bt}${kt}/${encodeURIComponent(t)}`,{validateStatus:Mt});r&&r.id&&(e=r)}catch(t){await g(t)}return e},Gt=async t=>{let e=[];try{if(t&&t.length<2)throw new Error("users list method requires at least two ids");const r=t.map((t=>`ids=${encodeURIComponent(t)}`)).join("&"),a=await w().get(`${Bt}${kt}?${r}`,{validateStatus:Mt});a&&a.length&&(e=a)}catch(t){await g(t)}return e};var xt={read:qt,update:async(t,e)=>{let r=!1;try{const{data:a}=await w().put(`${Bt}${kt}/${encodeURIComponent(t)}`,e);r=!(!a||!a.id)}catch(t){await g(t)}return r},list:Gt};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ft,ENDPOINTS:{USERS:Yt,USER_LIKES:Vt}}},USERS:{MYSELF:jt}}=a,Kt=`${Ft}${Yt}/${jt}${Vt}`,Ht=async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await w().get(Kt,r);t&&t.length&&(e=t)}catch(t){await g(t)}return e};var Qt={list:Ht};var Wt={authors:{readQuestionAuthors:async(t,e,r)=>{try{if(t.author=await qt(t.authorId),t.answers&&t.answers.length&&!r.ignoreAnswersAuthors){t.answers.sort(((t,e)=>new Date(e.updatedAt)-new Date(t.updatedAt))),t.totalAnswers=t.answers.length;let n=t.answers;if(r.limit&&r.pageNumber){const e=r.limit*(r.pageNumber-1);n=t.answers.slice(e,e+r.limit)}for(let t of n){t.author=t.authorId&&await qt(t.authorId)||{};const[r]=e?await Ht({contentType:a.CONTENTFUL.ANSWERS.TYPE,contentSlug:t.slug}):[null];t.userLiked=!!r}t.answers=n}else t.answers||(t.answers=[]);return t}catch(t){throw await g(t),new Error(`Cannot read authors for question: ${t.message}`)}},readAuthors:async(t=[])=>{let e=[];try{if(!1===Array.isArray(t))throw new Error("authorIds is not an array!");if(t&&1===t.length){const r=await qt(t[0]);r&&e.push(r)}else if(t&&t.length>1){const r=await Gt(t);r&&r.length>0&&(e=r)}}catch(t){throw await g(t),new Error(`Cannot read authors: ${t.message}`)}return e}}};const{APIS:{PEOPLE_API:{BASE_URL:Jt,ENDPOINTS:{REGISTRATIONS:Xt}}}}=a;var Zt={list:async t=>{let e=[];try{const{data:r}=await w().get(`${Jt}${Xt}`,{params:t});r&&r.length&&(e=r)}catch(t){await g(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:zt,ENDPOINTS:{COMMUNITIES:te}}}}=a,ee=`${zt}${te}`;function re(t){const e=t["content-range"].split(" ")[1].split("/"),[r,a,n]=[...e[0].split("-"),e[1]].map((t=>parseInt(t,10)||0));return{start:r,end:a,total:n}}var ae={list:async t=>{let e={items:[],start:0,end:0,total:0},r=t?{params:t}:{params:{}};try{const{data:t,headers:a}=await w().get(ee,r);return t?.length>0&&(e={items:t,...re(a)}),e}catch(t){await g(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:ne,ENDPOINTS:{USERS:se,USER_COURSES:ie}}},USERS:{MYSELF:oe}}=a,ce=`${ne}${se}/${oe}${ie}`;var le={create:async t=>{try{await w().post(ce,t)}catch(t){await g(t)}},list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await w().get(ce,r);t&&t.length&&(e=t)}catch(t){await g(t)}return e},update:async(t,e)=>{try{await w().put(`${ce}/${t}`,e)}catch(t){await g(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:ue,ENDPOINTS:{USERS:Ee,USER_EVENTS:Se}}},USERS:{MYSELF:de}}=a,pe=`${ue}${Ee}/${de}${Se}`;var he={list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await w().get(pe,r);t&&t.length&&(e=t)}catch(t){await g(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ie,ENDPOINTS:{USERS:we,USER_LESSONS:ge}}},USERS:{MYSELF:ye}}=a,Ae=`${Ie}${we}/${ye}${ge}`;var me={create:async t=>{let e=null;try{e=await w().post(Ae,t)}catch(t){await g(t)}return e},list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await w().get(Ae,r);t&&t.length&&(e=t)}catch(t){await g(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ne,ENDPOINTS:{USERS:Re,USER_PRODUCTS:fe}}},USERS:{MYSELF:Te}}=a,Pe=`${Ne}${Re}/${Te}${fe}`;var $e={create:async t=>{let e=null;try{e=await w().post(Pe,t)}catch(t){await g(t)}return e},list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await w().get(Pe,r);t&&t.length&&(e=t)}catch(t){await g(t)}return e},update:async(t,e)=>{try{await w().put(`${Pe}/${t}`,e)}catch(t){await g(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Le,ENDPOINTS:{USERS:Ue,USER_RATINGS:Oe}}},USERS:{MYSELF:Ce}}=a,_e=`${Le}${Ue}/${Ce}${Oe}`;var ve={create:async t=>{let e=null;try{const{data:r}=await w().post(_e,t);r?.id&&(e=r)}catch(t){await g(t)}return e},update:async(t,e)=>{try{await w().put(`${_e}/${t}`,e)}catch(t){await g(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:be,ENDPOINTS:{USERS:De,USER_REFERRALS:Me}}},USERS:{MYSELF:Be}}=a,ke=`${be}${De}/${Be}${Me}`;var qe={bulkEnrolments:Ot,handlers:Wt,registrations:Zt,users:xt,userCommunities:ae,userCourses:le,userEvents:he,userLessons:me,userLikes:Qt,userProducts:$e,userRatings:ve,userReferrals:{list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await w().get(ke,r);t&&t.length&&(e=t)}catch(t){await g(t)}return e}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:Ge,ENDPOINTS:{ENQUIRY_EMAILS:xe}}}}=a;var Fe={create:async t=>{let e=null;try{const{data:r}=await w().post(`${Ge}${xe}`,t);r&&(e=r)}catch(t){await g(t)}return e}},Ye={forms:{sendEnquiryEmails:async t=>{let e=null;try{const{emailIds:r}=h();e=await Qe.emails.create({...r,...t})}catch(t){await g(t)}return e}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:Ve,ENDPOINTS:{USERS:je,USER_PROPERTIES:Ke}}},USERS:{MYSELF:He}}=a;var Qe={emails:Fe,handlers:Ye,userProperties:{update:async(t,e)=>{try{await w().put(`${Ve}${je}/${He}${Ke}/${t}`,e)}catch(t){await g(t)}}}},We=l(130);const{APIS:{SEARCH_API:{BASE_URL:Je,ENDPOINTS:{SEARCH:Xe}}}}=a,Ze=`${Je}${Xe}`;var ze={ask:async t=>{try{let e=null;const{data:r}=await w().get(Ze,{params:{question:t}});return r?.answer&&r?.references&&r?.version&&(e=r),e}catch(t){const e=await g(t);throw new Error(e)}},stream:(t,e,r)=>{const a=(0,We.io)(void 0,{path:"/api/search-api/web-sockets"});function n(){a.emit("search",{question:t})}function s(t){r(t),i(),a.disconnect()}function i(){a.off("connect",n),a.off("update",e),a.off("result",s)}return a.on("connect",n),a.on("update",e),a.on("result",s),i}};const{APIS:{SOCIALS_API:{BASE_URL:tr,ENDPOINTS:{COMMUNITIES:er}}}}=a,rr=`${tr}${er}`;var ar={read:async t=>{let e=null;try{const{data:r}=await w().get(`${rr}/${encodeURIComponent(t)}`);r?.title&&(e=r)}catch(t){await g(t)}return e},join:async(t,e)=>{let r=null;try{const{data:a}=await w().post(`${rr}/${encodeURIComponent(t)}/members`,e);r=a}catch(t){await g(t)}return r},leave:async t=>{let e=null;try{const{data:r}=await w().delete(`${rr}/${encodeURIComponent(t)}/members/me`);e=r}catch(t){await g(t)}return e}};const{APIS:{SOCIALS_API:{BASE_URL:nr,ENDPOINTS:{COMMUNITIES:sr},PATHS:{ACTIVITIES:ir}}}}=a,or=`${nr}${sr}`;var cr={read:async(t,e)=>{let r=null;try{const{data:a}=await w().get(`${or}/${encodeURIComponent(t)}/${ir}/${e}`);a&&(r=a)}catch(t){await g(t)}return r},list:async(t,e={})=>{let r=null;try{const{data:a}=await w().get(`${or}/${encodeURIComponent(t)}/${ir}`,{params:e});a&&(r=a)}catch(t){await g(t)}return r},create:async(t,e)=>{let r=null;try{const{data:a}=await w().post(`${or}/${encodeURIComponent(t)}/${ir}`,e);a?.content&&(r=a)}catch(t){await g(t)}return r},update:async(t,e,r)=>{let a=null;try{const{data:n}=await w().put(`${or}/${encodeURIComponent(t)}/${ir}/${e}`,r);n?.content&&(a=n)}catch(t){await g(t)}return a},remove:async(t,e)=>{let r=null;try{const{data:a}=await w().delete(`${or}/${encodeURIComponent(t)}/${ir}/${e}`);r=a}catch(t){await g(t)}return r}};const{APIS:{SOCIALS_API:{BASE_URL:lr,ENDPOINTS:{COMMUNITIES:ur},PATHS:{ACTIVITIES:Er,REACTIONS:Sr}}}}=a,dr=`${lr}${ur}`;var pr={create:async(t,e,r,a)=>{let n=null,s=`${dr}/${encodeURIComponent(t)}`;s=e?`${s}/${Er}/${e}/${Sr}`:`${s}/${Sr}/${r}/${Sr}`;try{const{data:t}=await w().post(s,a);n=t}catch(t){await g(t)}return n},list:async(t,{activityId:e,reactionId:r},a={})=>{let n=null,s=`${dr}/${encodeURIComponent(t)}`;s=e?`${s}/${Er}/${e}/${Sr}`:`${s}/${Sr}/${r}/${Sr}`;try{const{data:t}=await w().get(s,{params:a});t&&(n=t)}catch(t){await g(t)}return n},remove:async(t,e)=>{let r=null;try{const{data:a}=await w().delete(`${dr}/${encodeURIComponent(t)}/${Sr}/${e}`);r=a}catch(t){await g(t)}return r},update:async(t,e,r,a)=>{let n=null,s=`${dr}/${encodeURIComponent(t)}`;s=e?`${s}/${Er}/${e}`:`${s}/${Sr}/${r}`;try{const{data:t}=await w().put(s,a);n=t}catch(t){await g(t)}return n}};const{APIS:{SOCIALS_API:{BASE_URL:hr,ENDPOINTS:{COMMUNITIES:Ir},PATHS:{ACTIVITIES:wr,REACTIONS:gr}}}}=a,yr=`${hr}${Ir}`;var Ar={activities:cr,communities:ar,likes:{create:async(t,e,r)=>{let a=null;const n={kind:"like"};let s=`${yr}/${encodeURIComponent(t)}`;s=e?`${s}/${wr}/${e}/${gr}`:`${s}/${gr}/${r}/${gr}`;try{const{data:t}=await w().post(s,n);a=t}catch(t){await g(t)}return a},remove:async(t,e)=>{let r=null;try{const{data:a}=await w().delete(`${yr}/${encodeURIComponent(t)}/${gr}/${e}`);r=a}catch(t){await g(t)}return r}},reactions:pr};const{CONTENTFUL:mr}=a,{CARD_TYPES:Nr}=mr.CAROUSELS,Rr={read:async(e,r)=>{try{if(!r||!r.sys||!r.sys.id)throw new Error("Invalid link to card");if(!e||!Nr[e])throw new Error("Unsupported card content type");const{INCLUDE:a,SELECT:n}=Nr[e];return await(0,t.getEntry)({content_type:e,"sys.id":r.sys.id,include:a,select:n},{assetDetails:!0})}catch(t){throw await g(t),new Error(`Cannot read carousel card: ${t.message}`)}}};var fr=Rr;const{CONTENTFUL:Tr}=a,{INCLUDE:Pr,SELECT:$r,TYPE:Lr}=Tr.EDITORIAL_PAGES;var Ur={read:async e=>{try{return await(0,t.getEntry)({content_type:Lr,"fields.slug":e,include:Pr,select:$r})}catch(t){throw await g(t),new Error(`Cannot read editorial page: ${t.message}`)}}};const{CONTENTFUL:Or}=a,{TYPE:Cr,ORDER:_r,SELECT:vr,SKIP:br,LIMIT:Dr,INCLUDE:Mr}=Or.QUESTIONS;var Br={read:async e=>{try{return await(0,t.getEntry)({content_type:Cr,"fields.slug":e,include:2,select:vr})}catch(t){throw await g(t),new Error(`Cannot read question: ${t.message}`)}},list:async(e={})=>{try{return await(0,t.getEntries)({content_type:Cr,include:Mr,limit:Dr,order:_r,select:vr,skip:br,...e})}catch(t){throw await g(t),new Error(`Cannot list questions: ${t.message}`)}}},kr=async(t,e,r={ignoreAnswersAuthors:!1})=>{try{let a={};return a=await Br.read(t),a=await qe.handlers.authors.readQuestionAuthors(a,e,r),a}catch(t){throw await g(t),new Error(`Cannot build question: ${t.message}`)}};const{ARTICLES:{TYPE:qr},COURSES:{TYPE:Gr},CUSTOM_CARD:{TYPE:xr},EVENTS:{TYPE:Fr},LISTS:{TYPE:Yr},QUESTIONS:{TYPE:Vr},LEARNING_HUB:{TYPE:jr}}=a.CONTENTFUL,Kr=t=>t&&t.url?(Object.assign(t,{aspect:"responsiveCard",query:"q=90&fit=fill"}),t):null,Hr=t=>t&&t.url?`${t.url}?w=100&h=100&fit=thumb&f=center`:null,Qr={[qr]:async t=>{const{authorIds:e,authorTag:r,image:a,publishedDate:n,readingTime:s,slug:i,title:o}=t,c=await qe.handlers.authors.readAuthors(e),l=c&&c.length?c:r?[r]:null;return{banner:Kr(a),contributors:l,publishedDate:n,readingTime:s,slug:i,title:o}},[Gr]:async(t,e)=>{const{banner:r,freeCourse:a,partnershipDetails:n,slug:s,title:i,registered:o,courseType:c}=t,l={banner:Kr(r),slug:s,title:i,pill:a?"free":"premium",registered:!!o,courseType:c};if(n){const{partners:t}=n;l.partner=t&&t.length&&n.partners[0]}if(void 0===o&&e){const[t]=await qe.userProducts.list({courseSlug:s,isEnrolled:!0,scope:"active"});l.registered=!!t}return l},[xr]:t=>{const{authorName:e,authorImage:r,icon:a,image:n,label:s,link:i,primaryText:o}=t;return{...t,banner:n?Kr(n):null,customIcon:a?a.toLowerCase():null,customLabel:s,contributors:e?[{name:e,image:r?{thumbnail:Hr(r)}:null}]:null,slug:i,text:o}},[Fr]:async(t,e)=>{const{bannerImage:r,defaultStartDate:a,isEventOngoing:n,slug:s,speakers:i,title:o,registered:c}=t,l=new Date(a),u=!!l&&l<new Date;if(i&&i.length)for(const t of i)t.image=Hr(t.image);const E={banner:Kr(r),dateHasPassed:u,title:o,slug:s,isOngoingEvent:n,contributors:i,startDate:l,registered:!!c};if(void 0===c&&e){const[t]=await qe.userEvents.list({eventSlug:s});E.registered=!!t}return E},[Yr]:async t=>{const{hero:e,slug:r,title:a}=t;return{banner:Kr(e),slug:r,title:a}},[Vr]:async t=>{const{answers:e,authorId:r,createdAt:a,slug:n,title:s}=t;let i=null;if(r){const t=await qe.users.read(r);t&&(i=t)}return{answers:e&&e.length?e.length:0,contributors:i?[i]:[],createdAt:a,slug:n,title:s}},[jr]:t=>{const{bannerSection:e,customLabel:r,slug:a,title:n}=t;return{banner:Kr(e.image),slug:a,title:n,customLabel:r}},people:t=>{const{id:e,name:r,jobTitle:a,location:n,image:s}=t;return{profile:s,slug:e,title:r,text:a,secondaryText:n}}};var Wr=async({contentType:t,...e}={},r)=>{try{if(!Qr[t])throw new Error("Content type not supported");if("function"!=typeof Qr[t])throw new Error("No builder function for content type");return"people"!==t&&e.sys&&e.sys.type&&"Link"===e.sys.type&&(e=await fr.read(t,e)),{contentType:t,...await Qr[t](e,r)}}catch(t){throw await g(t),new Error(`Cannot build carousel card: ${t.message}`)}},Jr=async(t,e,r={})=>{try{if(!t.replies||0===t.replies.length)return t.replies=[],t;t.replies.sort(((t,e)=>new Date(t.createdAt)-new Date(e.createdAt))),t.totalReplies=t.totalReplies||t.replies.length;let n=t.replies;if(r.limit&&r.pageNumber){const e=r.limit*(r.pageNumber-1);n=t.replies.slice(e,e+r.limit)}for(const r of n){if(r.authorId===t.authorId){r.author=t.author,r.userLiked=!1;continue}r.author=r.authorId&&await qt(r.authorId)||{};const[n]=e?await Ht({contentType:a.CONTENTFUL.REPLIES.TYPE,contentSlug:r.slug}):[null];r.userLiked=!!n}return t.replies=n,t}catch(t){throw await g(t),new Error(`Cannot build replies for answer: ${t.message}`)}};var Xr=function t(e,r){if(e===r)return!0;if(e&&r&&"object"==typeof e&&"object"==typeof r){if(e.constructor!==r.constructor)return!1;var a,n,s;if(Array.isArray(e)){if((a=e.length)!=r.length)return!1;for(n=a;0!=n--;)if(!t(e[n],r[n]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if((a=(s=Object.keys(e)).length)!==Object.keys(r).length)return!1;for(n=a;0!=n--;)if(!Object.prototype.hasOwnProperty.call(r,s[n]))return!1;for(n=a;0!=n--;){var i=s[n];if(!t(e[i],r[i]))return!1}return!0}return e!=e&&r!=r};const Zr="__googleMapsScriptId";var zr;!function(t){t[t.INITIALIZED=0]="INITIALIZED",t[t.LOADING=1]="LOADING",t[t.SUCCESS=2]="SUCCESS",t[t.FAILURE=3]="FAILURE"}(zr||(zr={}));class ta{constructor({apiKey:t,authReferrerPolicy:e,channel:r,client:a,id:n=Zr,language:s,libraries:i=[],mapIds:o,nonce:c,region:l,retries:u=3,url:E="https://maps.googleapis.com/maps/api/js",version:S}){if(this.callbacks=[],this.done=!1,this.loading=!1,this.errors=[],this.apiKey=t,this.authReferrerPolicy=e,this.channel=r,this.client=a,this.id=n||Zr,this.language=s,this.libraries=i,this.mapIds=o,this.nonce=c,this.region=l,this.retries=u,this.url=E,this.version=S,ta.instance){if(!Xr(this.options,ta.instance.options))throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(ta.instance.options)}`);return ta.instance}ta.instance=this}get options(){return{version:this.version,apiKey:this.apiKey,channel:this.channel,client:this.client,id:this.id,libraries:this.libraries,language:this.language,region:this.region,mapIds:this.mapIds,nonce:this.nonce,url:this.url,authReferrerPolicy:this.authReferrerPolicy}}get status(){return this.errors.length?zr.FAILURE:this.done?zr.SUCCESS:this.loading?zr.LOADING:zr.INITIALIZED}get failed(){return this.done&&!this.loading&&this.errors.length>=this.retries+1}createUrl(){let t=this.url;return t+="?callback=__googleMapsCallback",this.apiKey&&(t+=`&key=${this.apiKey}`),this.channel&&(t+=`&channel=${this.channel}`),this.client&&(t+=`&client=${this.client}`),this.libraries.length>0&&(t+=`&libraries=${this.libraries.join(",")}`),this.language&&(t+=`&language=${this.language}`),this.region&&(t+=`&region=${this.region}`),this.version&&(t+=`&v=${this.version}`),this.mapIds&&(t+=`&map_ids=${this.mapIds.join(",")}`),this.authReferrerPolicy&&(t+=`&auth_referrer_policy=${this.authReferrerPolicy}`),t}deleteScript(){const t=document.getElementById(this.id);t&&t.remove()}load(){return this.loadPromise()}loadPromise(){return new Promise(((t,e)=>{this.loadCallback((r=>{r?e(r.error):t(window.google)}))}))}importLibrary(t){return this.execute(),google.maps.importLibrary(t)}loadCallback(t){this.callbacks.push(t),this.execute()}setScript(){var t,e;if(document.getElementById(this.id))return void this.callback();const r={key:this.apiKey,channel:this.channel,client:this.client,libraries:this.libraries.length&&this.libraries,v:this.version,mapIds:this.mapIds,language:this.language,region:this.region,authReferrerPolicy:this.authReferrerPolicy};Object.keys(r).forEach((t=>!r[t]&&delete r[t])),(null===(e=null===(t=null===window||void 0===window?void 0:window.google)||void 0===t?void 0:t.maps)||void 0===e?void 0:e.importLibrary)||(t=>{let e,r,a,n="The Google Maps JavaScript API",s="google",i="importLibrary",o="__ib__",c=document,l=window;l=l[s]||(l[s]={});const u=l.maps||(l.maps={}),E=new Set,S=new URLSearchParams,d=()=>e||(e=new Promise(((i,l)=>{return d=this,p=void 0,I=function*(){var d;for(a in yield r=c.createElement("script"),r.id=this.id,S.set("libraries",[...E]+""),t)S.set(a.replace(/[A-Z]/g,(t=>"_"+t[0].toLowerCase())),t[a]);S.set("callback",s+".maps."+o),r.src=this.url+"?"+S,u[o]=i,r.onerror=()=>e=l(Error(n+" could not load.")),r.nonce=this.nonce||(null===(d=c.querySelector("script[nonce]"))||void 0===d?void 0:d.nonce)||"",c.head.append(r)},new((h=void 0)||(h=Promise))((function(t,e){function r(t){try{n(I.next(t))}catch(t){e(t)}}function a(t){try{n(I.throw(t))}catch(t){e(t)}}function n(e){var n;e.done?t(e.value):(n=e.value,n instanceof h?n:new h((function(t){t(n)}))).then(r,a)}n((I=I.apply(d,p||[])).next())}));var d,p,h,I})));u[i]?console.warn(n+" only loads once. Ignoring:",t):u[i]=(t,...e)=>E.add(t)&&d().then((()=>u[i](t,...e)))})(r);const a=this.libraries.map((t=>this.importLibrary(t)));a.length||a.push(this.importLibrary("core")),Promise.all(a).then((()=>this.callback()),(t=>{const e=new ErrorEvent("error",{error:t});this.loadErrorCallback(e)}))}reset(){this.deleteScript(),this.done=!1,this.loading=!1,this.errors=[],this.onerrorEvent=null}resetIfRetryingFailed(){this.failed&&this.reset()}loadErrorCallback(t){if(this.errors.push(t),this.errors.length<=this.retries){const t=this.errors.length*Math.pow(2,this.errors.length);console.error(`Failed to load Google Maps script, retrying in ${t} ms.`),setTimeout((()=>{this.deleteScript(),this.setScript()}),t)}else this.onerrorEvent=t,this.callback()}callback(){this.done=!0,this.loading=!1,this.callbacks.forEach((t=>{t(this.onerrorEvent)})),this.callbacks=[]}execute(){if(this.resetIfRetryingFailed(),this.done)this.callback();else{if(window.google&&window.google.maps&&window.google.maps.version)return console.warn("Google Maps already loaded outside @googlemaps/js-api-loader.This may result in undesirable behavior as options and script parameters may not match."),void this.callback();this.loading||(this.loading=!0,this.setScript())}}}const{GOOGLE:{MAPS:{LIBRARIES:ea,VERSION:ra}}}=a;var aa=function(t){return{city:async function(e){try{const r=await async function(){try{const{AutocompleteService:t}=await async function(t=ea.PLACES){const e=h(),r=new ta({apiKey:e?.googleMaps?.apiKey,version:ra});return await r.importLibrary(t)}();return new t}catch(t){throw new Error("Unable to load google library:",t)}}();return new Promise((a=>{r.getPlacePredictions({...t,input:e,types:["(cities)"]},((t=[],e)=>{a("OK"===e?t:[])}))}))}catch(t){return console.error("Error with Autocomplete Service:",t),[]}}}},na=l(408);const sa=t=>t&&na.Buffer.from(t,"base64").toString("ascii");function ia({contentContext:a=null,errorsContext:l=null,googleMapsContext:u=null,gtmContext:h=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 r=null;const a=e.match(i);return a?r=a[1].split(o)[0]:e===n?r=c:e.includes(s)&&(r=E),r||new Error(`Cannot select environment: No rule for website ${e}`),r})(I);return a&&(0,t.setContext)(Object.assign({},a,{environment:w})),l&&(0,e.setContext)(Object.assign({},l,{environment:w})),u&&(({apiKey:t})=>{p.googleMaps={apiKey:t}})(Object.assign({},u,{environment:w})),h&&((0,r.setContext)(Object.assign({},h,{environment:w})),(0,r.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}`)}}}(),u}()}));
@@ -0,0 +1,14 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation.
3
+
4
+ Permission to use, copy, modify, and/or distribute this software for any
5
+ purpose with or without fee is hereby granted.
6
+
7
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
8
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
9
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
10
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
11
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
12
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
13
+ PERFORMANCE OF THIS SOFTWARE.
14
+ ***************************************************************************** */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apolitical/sdk",
3
- "version": "7.11.1-4354.1",
3
+ "version": "7.12.0",
4
4
  "description": "Browser library to interact with Apolitical's APIs",
5
5
  "author": "Apolitical Group Limited <engineering@apolitical.co>",
6
6
  "license": "MIT",
@@ -28,6 +28,7 @@
28
28
  "@apolitical/content": "0.7.2",
29
29
  "@apolitical/error-reporting": "0.2.3",
30
30
  "@apolitical/gtm": "1.2.2",
31
+ "@googlemaps/js-api-loader": "1.16.2",
31
32
  "axios": "0.27.2",
32
33
  "buffer": "6.0.3",
33
34
  "http-status-codes": "2.2.0",
@@ -117,4 +118,4 @@
117
118
  "prettier --single-quote --write --ignore-path .gitignore"
118
119
  ]
119
120
  }
120
- }
121
+ }