@apolitical/sdk 10.0.0 → 10.0.2-rc.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.
Files changed (2) hide show
  1. package/build/index.js +1 -1
  2. package/package.json +2 -2
package/build/index.js CHANGED
@@ -1,2 +1,2 @@
1
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 la},buildCardCtaClickHandler:function(){return Sa},buildCarouselCard:function(){return ca},buildQuestion:function(){return Qr},carouselCards:function(){return br},contentInteraction:function(){return X},decodeBase64:function(){return Aa},default:function(){return Na},editorialPages:function(){return qr},features:function(){return et},getEntries:function(){return t.getEntries},getEntry:function(){return t.getEntry},management:function(){return gt},mgmt:function(){return Pt},payments:function(){return Ut},people:function(){return Ke},peopleEngagement:function(){return tr},predictPlace:function(){return ya},qaQuestions:function(){return Hr},reportError:function(){return e.reportError},search:function(){return sr},socials:function(){return Ur}});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",BULK_ENROLMENTS:"/bulk-enrolments"}},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:{BULK_ENROLMENTS:"/bulk-enrolments",COMMUNITIES:"/communities",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:{communityPage:{INCLUDE:1,SELECT:"fields.bannerSection,fields.slug,fields.title"},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"}}},COMMUNITY:{TYPE:"communityPage"},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"},STATUS_CODES:{INVALID_TOKEN:498},ERROR_MESSAGES:{INVALID_TOKEN:"Invalid token error: Logging user out..."}};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),g=l.n(I);const w=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:m,CERTIFICATES:A}}}}=a;var N={certificates:{create:async(t,e)=>{let r=[];try{const{data:a}=await g().post(`${y}${m}/${t}${A}`,e);a&&(r=a)}catch(t){await w(t)}return r}}};const{APIS:{AUTH_API:{BASE_URL:T,ENDPOINTS:{USER_PASSWORD:f,USERS:R}}},USERS:{MYSELF:P}}=a;var $={userPassword:{update:async t=>{let e=null;try{e=await g().put(`${T}${R}/${P}${f}`,t)}catch(t){e={message:(((t||{}).response||{}).data||{}).message},await w(t)}return e}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:L,ENDPOINTS:{ANSWERS:O,QUESTIONS:U,LIKES:C}}}}=a,_=`${L}${U}`;var v={create:async({questionSlug:t},e)=>{try{await g().post(`${_}/${encodeURIComponent(t)}${O}`,e)}catch(t){const e=await w(t);throw new Error(e)}},remove:async({questionSlug:t,answerSlug:e})=>{try{await g().delete(`${_}/${encodeURIComponent(t)}${O}/${encodeURIComponent(e)}`)}catch(t){const e=await w(t);throw new Error(e)}},update:async({questionSlug:t,answerSlug:e},r)=>{try{return await g().put(`${_}/${encodeURIComponent(t)}${O}/${encodeURIComponent(e)}`,r)}catch(t){const e=await w(t);throw new Error(e)}},like:async({questionSlug:t,answerSlug:e},r)=>{try{return await g().post(`${_}/${encodeURIComponent(t)}${O}/${encodeURIComponent(e)}${C}`,r)}catch(t){const e=await w(t);throw new Error(e)}},unlike:async({questionSlug:t,answerSlug:e})=>{try{return await g().delete(`${_}/${encodeURIComponent(t)}${O}/${encodeURIComponent(e)}${C}`)}catch(t){const e=await w(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 g().post(M,t)}catch(t){const e=await w(t);throw new Error(e)}},remove:async({questionSlug:t})=>{try{await g().delete(`${M}/${encodeURIComponent(t)}`)}catch(t){const e=await w(t);throw new Error(e)}},update:async({questionSlug:t},e)=>{try{return await g().put(`${M}/${encodeURIComponent(t)}`,e)}catch(t){const e=await w(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:k,ENDPOINTS:{REPLIES:q,ANSWERS:G,QUESTIONS:x,LIKES:V}}}}=a,Y=`${k}${x}`,F=({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}${V}`)),n};var K={create:async({questionSlug:t,answerSlug:e},r)=>{try{return await g().post(F({questionSlug:t,answerSlug:e}),r)}catch(t){const e=await w(t);throw new Error(e)}},update:async({questionSlug:t,answerSlug:e,replySlug:r},a)=>{try{return await g().put(F({questionSlug:t,answerSlug:e,replySlug:r}),a)}catch(t){const e=await w(t);throw new Error(e)}},remove:async({questionSlug:t,answerSlug:e,replySlug:r})=>{try{await g().delete(F({questionSlug:t,answerSlug:e,replySlug:r}))}catch(t){const e=await w(t);throw new Error(e)}},like:async({questionSlug:t,answerSlug:e,replySlug:r,payload:a})=>{try{await g().post(F({questionSlug:t,answerSlug:e,replySlug:r},!0),a)}catch(t){const e=await w(t);throw new Error(e)}},unlike:async({questionSlug:t,answerSlug:e,replySlug:r})=>{try{await g().delete(F({questionSlug:t,answerSlug:e,replySlug:r},!0))}catch(t){const e=await w(t);throw new Error(e)}},getReplyUrl:F};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:j,ENDPOINTS:{QUESTIONS:H,ANSWERS:Q,LIKES:W}}}}=a,J=`${j}${H}`;var X={answers:v,questions:B,replies:K,likes:{create:async({questionSlug:t,answerSlug:e})=>{try{return await g().post(`${J}/${encodeURIComponent(t)}${Q}/${encodeURIComponent(e)}${W}`)}catch(t){const e=await w(t);throw new Error(e)}},remove:async({questionSlug:t,answerSlug:e})=>{try{return await g().delete(`${J}/${encodeURIComponent(t)}${Q}/${encodeURIComponent(e)}${W}`)}catch(t){const e=await w(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 g().get(`${tt}/${encodeURIComponent(t)}`);r?.name&&r?.featureState&&(e=r)}catch(t){await w(t)}return e}}};const{APIS:{MANAGEMENT_API:{BASE_URL:rt,ENDPOINTS:{ACCOUNTS:at}}}}=a;var nt={create:async t=>{try{await g().post(`${rt}${at}`,t)}catch(t){throw await w(t),t}},read:async t=>{let e=null;try{({data:e}=await g().get(`${rt}${at}/${encodeURIComponent(t)}`))}catch(t){await w(t)}return e},update:async(t,e)=>{try{await g().put(`${rt}${at}/${encodeURIComponent(t)}`,e)}catch(t){throw await w(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:st,ENDPOINTS:{BULK_ENROLMENTS:it}}}}=a;var ot={create:async t=>{try{await g().post(`${st}${it}`,t)}catch(t){throw await w(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:ct,ENDPOINTS:{EVENT_REGISTRATIONS:lt}}}}=a;var ut={create:async t=>{try{await g().post(`${ct}${lt}`,t)}catch(t){const e=await w(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 g().put(`${pt}/${encodeURIComponent(t)}${dt}`)}catch(t){throw await w(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:It}}}=a;var gt={accounts:nt,bulkEnrolments:ot,eventRegistrations:ut,passwordless:ht,userProducts:{create:async t=>{try{await g().post(`${It}/users/${t.id}/products`,t)}catch(t){const e=await w(t);throw new Error(e)}}}};const{APIS:{MGMT_API:{BASE_URL:wt,ENDPOINTS:{REFERRALS:yt}}}}=a;var mt={create:async t=>{try{await g().post(`${wt}${yt}`,t)}catch(t){throw await w(t),t}}};const{APIS:{MGMT_API:{BASE_URL:At,ENDPOINTS:{BULK_REFERRALS:Nt}}}}=a;var Tt={create:async t=>{try{await g().post(`${At}${Nt}`,t)}catch(t){throw await w(t),t}}};const{APIS:{MGMT_API:{BASE_URL:ft,ENDPOINTS:{BULK_ENROLMENTS:Rt}}}}=a;var Pt={referrals:mt,bulkReferrals:Tt,bulkEnrolments:{create:async t=>{try{await g().post(`${ft}${Rt}`,t)}catch(t){throw await w(t),t}}}};const{APIS:{PAYMENTS_API:{BASE_URL_V2:$t,ENDPOINTS:{PRODUCTS:Lt}}}}=a,Ot=`${$t}${Lt}`;var Ut={products:{list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(Ot,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ct,ENDPOINTS:{BULK_ENROLMENTS:_t}}}}=a;var vt={list:async t=>{let e=[];try{const{data:r}=await g().get(`${Ct}${_t}`,{params:t});r&&r.length&&(e=r)}catch(t){await w(t)}return e}},bt=l(25);const{OK:Dt,MULTIPLE_CHOICES:Mt,NOT_FOUND:Bt,FORBIDDEN:kt}=bt.StatusCodes,qt=t=>t>=Dt&&t<Mt||t===kt||t===Bt,{APIS:{PEOPLE_API:{BASE_URL_V2:Gt,ENDPOINTS:{USERS:xt}}},STATUS_CODES:{INVALID_TOKEN:Vt},ERROR_MESSAGES:{INVALID_TOKEN:Yt}}=a,Ft=async t=>{let e=null;try{const{data:r}=await g().get(`${Gt}${xt}/${encodeURIComponent(t)}`,{validateStatus:qt});r&&r.id&&(e=r)}catch(t){if(t?.response?.status===Vt)throw new Error(Yt);await w(t)}return e},Kt=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 g().get(`${Gt}${xt}?${r}`,{validateStatus:qt});a&&a.length&&(e=a)}catch(t){await w(t)}return e};var jt={read:Ft,update:async(t,e)=>{let r=!1;try{const{data:a}=await g().put(`${Gt}${xt}/${encodeURIComponent(t)}`,e);r=!(!a||!a.id)}catch(t){await w(t)}return r},list:Kt};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ht,ENDPOINTS:{USERS:Qt,USER_LIKES:Wt}}},USERS:{MYSELF:Jt}}=a,Xt=`${Ht}${Qt}/${Jt}${Wt}`,Zt=async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(Xt,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e};var zt={list:Zt};var te={authors:{readQuestionAuthors:async(t,e,r)=>{try{if(t.author=await Ft(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 Ft(t.authorId)||{};const[r]=e?await Zt({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 w(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 Ft(t[0]);r&&e.push(r)}else if(t&&t.length>1){const r=await Kt(t);r&&r.length>0&&(e=r)}}catch(t){throw await w(t),new Error(`Cannot read authors: ${t.message}`)}return e}}};const{APIS:{PEOPLE_API:{BASE_URL:ee,ENDPOINTS:{REGISTRATIONS:re}}}}=a;var ae={list:async t=>{let e=[];try{const{data:r}=await g().get(`${ee}${re}`,{params:t});r&&r.length&&(e=r)}catch(t){await w(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:ne,ENDPOINTS:{COMMUNITIES:se,USERS:ie}}}}=a,oe=`${ne}${ie}`;function ce(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 le={list:async(t="me",e={})=>{let r={items:[],start:0,end:0,total:0},a=e?{params:e}:{params:{}};try{const{data:e,headers:n}=await g().get(`${oe}/${t}${se}`,{...a,headers:{"Cache-Control":"no-cache",Pragma:"no-cache",Expires:0}});return e?.length>0&&(r={data:e,pagination:ce(n)}),r}catch(t){await w(t)}return r}};const{APIS:{PEOPLE_API:{BASE_URL_V2:ue,ENDPOINTS:{USERS:Ee,USER_COURSES:Se}}},USERS:{MYSELF:de}}=a,pe=`${ue}${Ee}/${de}${Se}`;var he={create:async t=>{try{await g().post(pe,t)}catch(t){await w(t)}},list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(pe,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e},update:async(t,e)=>{try{await g().put(`${pe}/${t}`,e)}catch(t){await w(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ie,ENDPOINTS:{USERS:ge,USER_EVENTS:we}}},USERS:{MYSELF:ye}}=a,me=`${Ie}${ge}/${ye}${we}`;var Ae={list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(me,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ne,ENDPOINTS:{USERS:Te,USER_LESSONS:fe}}},USERS:{MYSELF:Re}}=a,Pe=`${Ne}${Te}/${Re}${fe}`;var $e={create:async t=>{let e=null;try{e=await g().post(Pe,t)}catch(t){await w(t)}return e},list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(Pe,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Le,ENDPOINTS:{USERS:Oe,USER_PRODUCTS:Ue}}},USERS:{MYSELF:Ce}}=a,_e=`${Le}${Oe}/${Ce}${Ue}`;var ve={create:async t=>{let e=null;try{e=await g().post(_e,t)}catch(t){await w(t)}return e},list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(_e,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e},update:async(t,e)=>{try{await g().put(`${_e}/${t}`,e)}catch(t){await w(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:be,ENDPOINTS:{USERS:De,USER_RATINGS:Me}}},USERS:{MYSELF:Be}}=a,ke=`${be}${De}/${Be}${Me}`;var qe={create:async t=>{let e=null;try{const{data:r}=await g().post(ke,t);r?.id&&(e=r)}catch(t){await w(t)}return e},update:async(t,e)=>{try{await g().put(`${ke}/${t}`,e)}catch(t){await w(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ge,ENDPOINTS:{USERS:xe,USER_REFERRALS:Ve}}},USERS:{MYSELF:Ye}}=a,Fe=`${Ge}${xe}/${Ye}${Ve}`;var Ke={bulkEnrolments:vt,handlers:te,registrations:ae,users:jt,userCommunities:le,userCourses:he,userEvents:Ae,userLessons:$e,userLikes:zt,userProducts:ve,userRatings:qe,userReferrals:{list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(Fe,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:je,ENDPOINTS:{ENQUIRY_EMAILS:He}}}}=a;var Qe={create:async t=>{let e=null;try{const{data:r}=await g().post(`${je}${He}`,t);r&&(e=r)}catch(t){await w(t)}return e}},We={forms:{sendEnquiryEmails:async t=>{let e=null;try{const{emailIds:r}=h();e=await tr.emails.create({...r,...t})}catch(t){await w(t)}return e}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:Je,ENDPOINTS:{USERS:Xe,USER_PROPERTIES:Ze}}},USERS:{MYSELF:ze}}=a;var tr={emails:Qe,handlers:We,userProperties:{update:async(t,e)=>{try{await g().put(`${Je}${Xe}/${ze}${Ze}/${t}`,e)}catch(t){await w(t)}}}},er=l(130);const{APIS:{SEARCH_API:{BASE_URL:rr,ENDPOINTS:{SEARCH:ar}}}}=a,nr=`${rr}${ar}`;var sr={ask:async t=>{try{let e=null;const{data:r}=await g().get(nr,{params:{question:t}});return r?.answer&&r?.references&&r?.version&&(e=r),e}catch(t){const e=await w(t);throw new Error(e)}},stream:(t,e,r)=>{const a=(0,er.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:ir,ENDPOINTS:{COMMUNITIES:or},PATHS:{ACTIVITIES:cr}}}}=a,lr=`${ir}${or}`;var ur={read:async(t,e)=>{let r=null;try{const{data:a}=await g().get(`${lr}/${encodeURIComponent(t)}/${cr}/${e}`);a&&(r=a)}catch(t){await w(t)}return r},list:async(t,e={})=>{let r=null;try{const{data:a}=await g().get(`${lr}/${encodeURIComponent(t)}/${cr}`,{params:e});a&&(r=a)}catch(t){await w(t)}return r},create:async(t,e)=>{let r=null;try{const{data:a}=await g().post(`${lr}/${encodeURIComponent(t)}/${cr}`,e);a?.content&&(r=a)}catch(t){await w(t)}return r},update:async(t,e,r)=>{let a=null;try{const{data:n}=await g().put(`${lr}/${encodeURIComponent(t)}/${cr}/${e}`,r);n?.content&&(a=n)}catch(t){await w(t)}return a},remove:async(t,e)=>{let r=null;try{const{data:a}=await g().delete(`${lr}/${encodeURIComponent(t)}/${cr}/${e}`);r=a}catch(t){await w(t)}return r}};const{APIS:{SOCIALS_API:{BASE_URL:Er,ENDPOINTS:{COMMUNITIES:Sr}}}}=a,dr=`${Er}${Sr}`;var pr={read:async t=>{let e=null;try{const{data:r}=await g().get(`${dr}/${encodeURIComponent(t)}`);r?.title&&(e=r)}catch(t){await w(t)}return e},join:async(t,e)=>{let r=null;try{const{data:a}=await g().post(`${dr}/${encodeURIComponent(t)}/members`,e);r=a}catch(t){await w(t)}return r},leave:async t=>{let e=null;try{const{data:r}=await g().delete(`${dr}/${encodeURIComponent(t)}/members/me`);e=r}catch(t){await w(t)}return e}};const{APIS:{SOCIALS_API:{BASE_URL:hr,ENDPOINTS:{COMMUNITIES:Ir},PATHS:{ACTIVITIES:gr,REACTIONS:wr}}}}=a,yr=`${hr}${Ir}`;var mr={create:async({slug:t,activityId:e,reactionId:r})=>{let a=null;const n={kind:"like"};let s=`${yr}/${encodeURIComponent(t)}`;s=e?`${s}/${gr}/${e}/${wr}`:`${s}/${wr}/${r}/${wr}`;try{const{data:t}=await g().post(s,n);a=t}catch(t){await w(t)}return a},remove:async({slug:t,reactionId:e})=>{let r=null;try{const{data:a}=await g().delete(`${yr}/${encodeURIComponent(t)}/${wr}/${e}`);r=a}catch(t){await w(t)}return r}};const{APIS:{SOCIALS_API:{BASE_URL:Ar,ENDPOINTS:{COMMUNITIES:Nr}}}}=a,Tr=`${Ar}${Nr}`;var fr={list:async(t,e)=>{let r={data:[],pagination:{start:0,end:0,total:0}},a=e?{params:e}:{params:{}};try{const{data:e}=await g().get(`${Tr}/${encodeURIComponent(t)}/members`,{...a,headers:{"Cache-Control":"no-cache",Pragma:"no-cache",Expires:0}});e?.data?.length>0&&(r=e)}catch(t){await w(t)}return r}};const{APIS:{SOCIALS_API:{BASE_URL:Rr,ENDPOINTS:{COMMUNITIES:Pr},PATHS:{ACTIVITIES:$r,REACTIONS:Lr}}}}=a,Or=`${Rr}${Pr}`;var Ur={activities:ur,communities:pr,members:fr,likes:mr,reactions:{create:async(t,e,r,a)=>{let n=null,s=`${Or}/${encodeURIComponent(t)}`;s=e?`${s}/${$r}/${e}/${Lr}`:`${s}/${Lr}/${r}/${Lr}`;try{const{data:t}=await g().post(s,a);n=t}catch(t){await w(t)}return n},list:async(t,{activityId:e,reactionId:r},a={})=>{let n=null,s=`${Or}/${encodeURIComponent(t)}`;s=e?`${s}/${$r}/${e}/${Lr}`:`${s}/${Lr}/${r}/${Lr}`;try{const{data:t}=await g().get(s,{params:a});t&&(n=t)}catch(t){await w(t)}return n},remove:async(t,e)=>{let r=null;try{const{data:a}=await g().delete(`${Or}/${encodeURIComponent(t)}/${Lr}/${e}`);r=a}catch(t){await w(t)}return r},update:async(t,e,r,a)=>{let n=null,s=`${Or}/${encodeURIComponent(t)}`;s=e?`${s}/${$r}/${e}`:`${s}/${Lr}/${r}`;try{const{data:t}=await g().put(s,a);n=t}catch(t){await w(t)}return n}}};const{CONTENTFUL:Cr}=a,{CARD_TYPES:_r}=Cr.CAROUSELS,vr={read:async(e,r)=>{try{if(!r||!r.sys||!r.sys.id)throw new Error("Invalid link to card");if(!e||!_r[e])throw new Error("Unsupported card content type");const{INCLUDE:a,SELECT:n}=_r[e];return await(0,t.getEntry)({content_type:e,"sys.id":r.sys.id,include:a,select:n},{assetDetails:!0})}catch(t){throw await w(t),new Error(`Cannot read carousel card: ${t.message}`)}}};var br=vr;const{CONTENTFUL:Dr}=a,{INCLUDE:Mr,SELECT:Br,TYPE:kr}=Dr.EDITORIAL_PAGES;var qr={read:async e=>{try{return await(0,t.getEntry)({content_type:kr,"fields.slug":e,include:Mr,select:Br})}catch(t){throw await w(t),new Error(`Cannot read editorial page: ${t.message}`)}}};const{CONTENTFUL:Gr}=a,{TYPE:xr,ORDER:Vr,SELECT:Yr,SKIP:Fr,LIMIT:Kr,INCLUDE:jr}=Gr.QUESTIONS;var Hr={read:async e=>{try{return await(0,t.getEntry)({content_type:xr,"fields.slug":e,include:2,select:Yr})}catch(t){throw await w(t),new Error(`Cannot read question: ${t.message}`)}},list:async(e={})=>{try{return await(0,t.getEntries)({content_type:xr,include:jr,limit:Kr,order:Vr,select:Yr,skip:Fr,...e})}catch(t){throw await w(t),new Error(`Cannot list questions: ${t.message}`)}}},Qr=async(t,e,r={ignoreAnswersAuthors:!1})=>{try{let a={};return a=await Hr.read(t),a=await Ke.handlers.authors.readQuestionAuthors(a,e,r),a}catch(t){throw await w(t),new Error(`Cannot build question: ${t.message}`)}};const{ARTICLES:{TYPE:Wr},COURSES:{TYPE:Jr},CUSTOM_CARD:{TYPE:Xr},COMMUNITY:{TYPE:Zr},EVENTS:{TYPE:zr},LISTS:{TYPE:ta},QUESTIONS:{TYPE:ea},LEARNING_HUB:{TYPE:ra}}=a.CONTENTFUL,aa={ClosedHidden:"closed-hidden",ClosedVisible:"closed-visible",OpenHidden:"open-hidden",OpenVisible:"open-visible"},na=t=>t&&t.url?(Object.assign(t,{aspect:"responsiveCard",query:"q=90&fit=fill"}),t):null,sa=t=>t&&t.url?`${t.url}?w=100&h=100&fit=thumb&f=center`:null,ia=t=>t.toLowerCase().split(" ")[0],oa={[Wr]:async t=>{const{authorIds:e,authorTag:r,image:a,publishedDate:n,readingTime:s,slug:i,title:o}=t,c=await Ke.handlers.authors.readAuthors(e),l=c&&c.length?c:r?[ia(r)]:null;return{banner:na(a),contributors:l,publishedDate:n,readingTime:s,slug:i,title:o}},[Zr]:async t=>{const{title:e,slug:r,bannerSection:a,privacy:n,createdAt:s}=t,i=await Ur.communities.read(r),o=await Ur.members.list(r,{count:1}),c=[aa.ClosedVisible,aa.ClosedHidden].includes(n),l=[aa.OpenVisible,aa.ClosedVisible].includes(n);return{banner:a?.image?na(a.image):null,slug:r,title:e,privacy:n,isPrivate:c,isVisible:l,createdAt:s,members:{isMember:!!i?.member,memberType:i?.member?.role||null,count:o?.pagination?.total||0}}},[Jr]:async(t,e)=>{const{banner:r,freeCourse:a,partnershipDetails:n,slug:s,title:i,registered:o,courseType:c}=t,l={banner:na(r),slug:s,title:i,pill:a?"free":"premium",registered:!!o,courseType:c};if(n){const{partners:t}=n;if(t)if(t.length>1){let e=[];for(let r=0;r<t.length;r++)e.push(t[r].title);l.partner=e}else l.partner=[t[0].title]}if(void 0===o&&e){const[t]=await Ke.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?na(n):null,customIcon:a?a.toLowerCase():null,customLabel:s,contributors:e?[{name:e,image:r?{thumbnail:sa(r)}:null}]:null,slug:i,text:o}},[zr]: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=sa(t.image);const E={banner:na(r),dateHasPassed:u,title:o,slug:s,isOngoingEvent:n,contributors:i,startDate:l,registered:!!c};if(void 0===c&&e){const[t]=await Ke.userEvents.list({eventSlug:s});E.registered=!!t}return E},[ta]:async t=>{const{hero:e,slug:r,title:a}=t;return{banner:na(e),slug:r,title:a}},[ea]:async t=>{const{answers:e,authorId:r,createdAt:a,slug:n,title:s}=t;let i=null;if(r){const t=await Ke.users.read(r);t&&(i=t)}return{answers:e&&e.length?e.length:0,contributors:i?[i]:[],createdAt:a,slug:n,title:s}},[ra]:t=>{const{bannerSection:e,customLabel:r,slug:a,title:n}=t;return{banner:na(e.image),slug:a,title:n,customLabel:r}},people:t=>{const{id:e,name:r,jobTitle:a,location:n,image:s,customLink:i}=t;return{profile:s,slug:i?.link||e,title:r,text:a,secondaryText:n,customLinkText:i?.text}}};var ca=async({contentType:t,...e}={},r)=>{try{if(!oa[t])throw new Error("Content type not supported");if("function"!=typeof oa[t])throw new Error("No builder function for content type");return"people"!==t&&e.sys&&e.sys.type&&"Link"===e.sys.type&&(e=await br.read(t,e)),{contentType:t,...await oa[t](e,r)}}catch(t){throw await w(t),new Error(`Cannot build carousel card: ${t.message}`)}},la=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 Ft(r.authorId)||{};const[n]=e?await Zt({contentType:a.CONTENTFUL.REPLIES.TYPE,contentSlug:r.slug}):[null];r.userLiked=!!n}return t.replies=n,t}catch(t){throw await w(t),new Error(`Cannot build replies for answer: ${t.message}`)}};const ua="success",Ea="error";var Sa=t=>async e=>{const{contentType:r}=e;switch(r){case"event":try{return await gt.eventRegistrations.create({eventSlug:e.slug,expectation:null,userEmail:t.email,startsAt:new Date(e.startDate).toISOString()}),ua}catch(t){return reportError(new Error(`Error registering for event: ${JSON.stringify(t)}`)),Ea}case"microcourse":try{return await gt.userProducts.create({id:t.id,courseSlug:e.slug,email:t.email,courseType:e.courseType}),ua}catch(t){return reportError(new Error(`Error registering for microcourse: ${JSON.stringify(t)}`)),Ea}case"communityPage":try{return await Ur.communities.join(e.slug,{...t.jobTitle&&{jobTitle:t.jobTitle},...t.organization&&{organization:t.organization},...t.image.thumbnail&&{thumbnail:t.image.thumbnail}}),ua}catch(t){return reportError(new Error(`Error joining community: ${JSON.stringify(t)}`)),Ea}default:return Ea}};var da=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 pa="__googleMapsScriptId";var ha;!function(t){t[t.INITIALIZED=0]="INITIALIZED",t[t.LOADING=1]="LOADING",t[t.SUCCESS=2]="SUCCESS",t[t.FAILURE=3]="FAILURE"}(ha||(ha={}));class Ia{constructor({apiKey:t,authReferrerPolicy:e,channel:r,client:a,id:n=pa,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||pa,this.language=s,this.libraries=i,this.mapIds=o,this.nonce=c,this.region=l,this.retries=u,this.url=E,this.version=S,Ia.instance){if(!da(this.options,Ia.instance.options))throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(Ia.instance.options)}`);return Ia.instance}Ia.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?ha.FAILURE:this.done?ha.SUCCESS:this.loading?ha.LOADING:ha.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:ga,VERSION:wa}}}=a;var ya=function(t){return{city:async function(e){try{const r=await async function(){try{const{AutocompleteService:t}=await async function(t=ga.PLACES){const e=h(),r=new Ia({apiKey:e?.googleMaps?.apiKey,version:wa});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),[]}}}},ma=l(408);const Aa=t=>t&&ma.Buffer.from(t,"base64").toString("ascii");function Na({contentContext:a=null,errorsContext:l=null,googleMapsContext:u=null,gtmContext:h=null,origin:I}){try{const g=(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:g})),l&&(0,e.setContext)(Object.assign({},l,{environment:g})),u&&(({apiKey:t})=>{p.googleMaps={apiKey:t}})(Object.assign({},u,{environment:g})),h&&((0,r.setContext)(Object.assign({},h,{environment:g})),(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:g})),g}catch(t){console.warn(`Cannot load SDK: ${t.message}`)}}}(),u}()}));
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 T},auth:function(){return $},buildAnswer:function(){return ra},buildCardCtaClickHandler:function(){return sa},buildCarouselCard:function(){return ea},buildQuestion:function(){return xr},carouselCards:function(){return $r},contentInteraction:function(){return X},decodeBase64:function(){return pa},default:function(){return ha},editorialPages:function(){return _r},getEntries:function(){return t.getEntries},getEntry:function(){return t.getEntry},management:function(){return ut},mgmt:function(){return yt},payments:function(){return Nt},people:function(){return ke},peopleEngagement:function(){return He},predictPlace:function(){return Sa},qaQuestions:function(){return Gr},reportError:function(){return e.reportError},search:function(){return Ze},socials:function(){return Nr}});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"}},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",BULK_ENROLMENTS:"/bulk-enrolments"}},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:{BULK_ENROLMENTS:"/bulk-enrolments",COMMUNITIES:"/communities",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:{communityPage:{INCLUDE:1,SELECT:"fields.bannerSection,fields.slug,fields.title"},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"}}},COMMUNITY:{TYPE:"communityPage"},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"},STATUS_CODES:{INVALID_TOKEN:498},ERROR_MESSAGES:{INVALID_TOKEN:"Invalid token error: Logging user out..."}};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),g=l.n(I);const w=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:m,CERTIFICATES:A}}}}=a;var T={certificates:{create:async(t,e)=>{let r=[];try{const{data:a}=await g().post(`${y}${m}/${t}${A}`,e);a&&(r=a)}catch(t){await w(t)}return r}}};const{APIS:{AUTH_API:{BASE_URL:N,ENDPOINTS:{USER_PASSWORD:f,USERS:R}}},USERS:{MYSELF:P}}=a;var $={userPassword:{update:async t=>{let e=null;try{e=await g().put(`${N}${R}/${P}${f}`,t)}catch(t){e={message:(((t||{}).response||{}).data||{}).message},await w(t)}return e}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:L,ENDPOINTS:{ANSWERS:O,QUESTIONS:U,LIKES:C}}}}=a,_=`${L}${U}`;var v={create:async({questionSlug:t},e)=>{try{await g().post(`${_}/${encodeURIComponent(t)}${O}`,e)}catch(t){const e=await w(t);throw new Error(e)}},remove:async({questionSlug:t,answerSlug:e})=>{try{await g().delete(`${_}/${encodeURIComponent(t)}${O}/${encodeURIComponent(e)}`)}catch(t){const e=await w(t);throw new Error(e)}},update:async({questionSlug:t,answerSlug:e},r)=>{try{return await g().put(`${_}/${encodeURIComponent(t)}${O}/${encodeURIComponent(e)}`,r)}catch(t){const e=await w(t);throw new Error(e)}},like:async({questionSlug:t,answerSlug:e},r)=>{try{return await g().post(`${_}/${encodeURIComponent(t)}${O}/${encodeURIComponent(e)}${C}`,r)}catch(t){const e=await w(t);throw new Error(e)}},unlike:async({questionSlug:t,answerSlug:e})=>{try{return await g().delete(`${_}/${encodeURIComponent(t)}${O}/${encodeURIComponent(e)}${C}`)}catch(t){const e=await w(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 g().post(M,t)}catch(t){const e=await w(t);throw new Error(e)}},remove:async({questionSlug:t})=>{try{await g().delete(`${M}/${encodeURIComponent(t)}`)}catch(t){const e=await w(t);throw new Error(e)}},update:async({questionSlug:t},e)=>{try{return await g().put(`${M}/${encodeURIComponent(t)}`,e)}catch(t){const e=await w(t);throw new Error(e)}}};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:k,ENDPOINTS:{REPLIES:q,ANSWERS:G,QUESTIONS:x,LIKES:V}}}}=a,Y=`${k}${x}`,j=({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}${V}`)),n};var K={create:async({questionSlug:t,answerSlug:e},r)=>{try{return await g().post(j({questionSlug:t,answerSlug:e}),r)}catch(t){const e=await w(t);throw new Error(e)}},update:async({questionSlug:t,answerSlug:e,replySlug:r},a)=>{try{return await g().put(j({questionSlug:t,answerSlug:e,replySlug:r}),a)}catch(t){const e=await w(t);throw new Error(e)}},remove:async({questionSlug:t,answerSlug:e,replySlug:r})=>{try{await g().delete(j({questionSlug:t,answerSlug:e,replySlug:r}))}catch(t){const e=await w(t);throw new Error(e)}},like:async({questionSlug:t,answerSlug:e,replySlug:r,payload:a})=>{try{await g().post(j({questionSlug:t,answerSlug:e,replySlug:r},!0),a)}catch(t){const e=await w(t);throw new Error(e)}},unlike:async({questionSlug:t,answerSlug:e,replySlug:r})=>{try{await g().delete(j({questionSlug:t,answerSlug:e,replySlug:r},!0))}catch(t){const e=await w(t);throw new Error(e)}},getReplyUrl:j};const{APIS:{CONTENT_INTERACTION_API:{BASE_URL:F,ENDPOINTS:{QUESTIONS:H,ANSWERS:Q,LIKES:W}}}}=a,J=`${F}${H}`;var X={answers:v,questions:B,replies:K,likes:{create:async({questionSlug:t,answerSlug:e})=>{try{return await g().post(`${J}/${encodeURIComponent(t)}${Q}/${encodeURIComponent(e)}${W}`)}catch(t){const e=await w(t);throw new Error(e)}},remove:async({questionSlug:t,answerSlug:e})=>{try{return await g().delete(`${J}/${encodeURIComponent(t)}${Q}/${encodeURIComponent(e)}${W}`)}catch(t){const e=await w(t);throw new Error(e)}}}};const{APIS:{MANAGEMENT_API:{BASE_URL:Z,ENDPOINTS:{ACCOUNTS:z}}}}=a;var tt={create:async t=>{try{await g().post(`${Z}${z}`,t)}catch(t){throw await w(t),t}},read:async t=>{let e=null;try{({data:e}=await g().get(`${Z}${z}/${encodeURIComponent(t)}`))}catch(t){await w(t)}return e},update:async(t,e)=>{try{await g().put(`${Z}${z}/${encodeURIComponent(t)}`,e)}catch(t){throw await w(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:et,ENDPOINTS:{EVENT_REGISTRATIONS:rt}}}}=a;var at={create:async t=>{try{await g().post(`${et}${rt}`,t)}catch(t){const e=await w(t);throw new Error(e)}}};const{APIS:{MANAGEMENT_API:{BASE_URL:nt,ENDPOINTS:{LOGINS:st,LOGIN_PASSWORDLESS:it}}}}=a,ot=`${nt}${st}`;var ct={update:async t=>{try{await g().put(`${ot}/${encodeURIComponent(t)}${it}`)}catch(t){throw await w(t),t}}};const{APIS:{MANAGEMENT_API:{BASE_URL:lt}}}=a;var ut={accounts:tt,eventRegistrations:at,passwordless:ct,userProducts:{create:async t=>{try{await g().post(`${lt}/users/${t.id}/products`,t)}catch(t){const e=await w(t);throw new Error(e)}}}};const{APIS:{MGMT_API:{BASE_URL:Et,ENDPOINTS:{REFERRALS:St}}}}=a;var dt={create:async t=>{try{await g().post(`${Et}${St}`,t)}catch(t){throw await w(t),t}}};const{APIS:{MGMT_API:{BASE_URL:pt,ENDPOINTS:{BULK_REFERRALS:ht}}}}=a;var It={create:async t=>{try{await g().post(`${pt}${ht}`,t)}catch(t){throw await w(t),t}}};const{APIS:{MGMT_API:{BASE_URL:gt,ENDPOINTS:{BULK_ENROLMENTS:wt}}}}=a;var yt={referrals:dt,bulkReferrals:It,bulkEnrolments:{create:async t=>{try{await g().post(`${gt}${wt}`,t)}catch(t){throw await w(t),t}}}};const{APIS:{PAYMENTS_API:{BASE_URL_V2:mt,ENDPOINTS:{PRODUCTS:At}}}}=a,Tt=`${mt}${At}`;var Nt={products:{list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(Tt,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:ft,ENDPOINTS:{BULK_ENROLMENTS:Rt}}}}=a;var Pt={list:async t=>{let e=[];try{const{data:r}=await g().get(`${ft}${Rt}`,{params:t});r&&r.length&&(e=r)}catch(t){await w(t)}return e}},$t=l(25);const{OK:Lt,MULTIPLE_CHOICES:Ot,NOT_FOUND:Ut,FORBIDDEN:Ct}=$t.StatusCodes,_t=t=>t>=Lt&&t<Ot||t===Ct||t===Ut,{APIS:{PEOPLE_API:{BASE_URL_V2:vt,ENDPOINTS:{USERS:bt}}},STATUS_CODES:{INVALID_TOKEN:Dt},ERROR_MESSAGES:{INVALID_TOKEN:Mt}}=a,Bt=async t=>{let e=null;try{const{data:r}=await g().get(`${vt}${bt}/${encodeURIComponent(t)}`,{validateStatus:_t});r&&r.id&&(e=r)}catch(t){if(t?.response?.status===Dt)throw new Error(Mt);await w(t)}return e},kt=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 g().get(`${vt}${bt}?${r}`,{validateStatus:_t});a&&a.length&&(e=a)}catch(t){await w(t)}return e};var qt={read:Bt,update:async(t,e)=>{let r=!1;try{const{data:a}=await g().put(`${vt}${bt}/${encodeURIComponent(t)}`,e);r=!(!a||!a.id)}catch(t){await w(t)}return r},list:kt};const{APIS:{PEOPLE_API:{BASE_URL_V2:Gt,ENDPOINTS:{USERS:xt,USER_LIKES:Vt}}},USERS:{MYSELF:Yt}}=a,jt=`${Gt}${xt}/${Yt}${Vt}`,Kt=async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(jt,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e};var Ft={list:Kt};var Ht={authors:{readQuestionAuthors:async(t,e,r)=>{try{if(t.author=await Bt(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 Bt(t.authorId)||{};const[r]=e?await Kt({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 w(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 Bt(t[0]);r&&e.push(r)}else if(t&&t.length>1){const r=await kt(t);r&&r.length>0&&(e=r)}}catch(t){throw await w(t),new Error(`Cannot read authors: ${t.message}`)}return e}}};const{APIS:{PEOPLE_API:{BASE_URL:Qt,ENDPOINTS:{REGISTRATIONS:Wt}}}}=a;var Jt={list:async t=>{let e=[];try{const{data:r}=await g().get(`${Qt}${Wt}`,{params:t});r&&r.length&&(e=r)}catch(t){await w(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Xt,ENDPOINTS:{COMMUNITIES:Zt,USERS:zt}}}}=a,te=`${Xt}${zt}`;function ee(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 re={list:async(t="me",e={})=>{let r={items:[],start:0,end:0,total:0},a=e?{params:e}:{params:{}};try{const{data:e,headers:n}=await g().get(`${te}/${t}${Zt}`,{...a,headers:{"Cache-Control":"no-cache",Pragma:"no-cache",Expires:0}});return e?.length>0&&(r={data:e,pagination:ee(n)}),r}catch(t){await w(t)}return r}};const{APIS:{PEOPLE_API:{BASE_URL_V2:ae,ENDPOINTS:{USERS:ne,USER_COURSES:se}}},USERS:{MYSELF:ie}}=a,oe=`${ae}${ne}/${ie}${se}`;var ce={create:async t=>{try{await g().post(oe,t)}catch(t){await w(t)}},list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(oe,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e},update:async(t,e)=>{try{await g().put(`${oe}/${t}`,e)}catch(t){await w(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:le,ENDPOINTS:{USERS:ue,USER_EVENTS:Ee}}},USERS:{MYSELF:Se}}=a,de=`${le}${ue}/${Se}${Ee}`;var pe={list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(de,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:he,ENDPOINTS:{USERS:Ie,USER_LESSONS:ge}}},USERS:{MYSELF:we}}=a,ye=`${he}${Ie}/${we}${ge}`;var me={create:async t=>{let e=null;try{e=await g().post(ye,t)}catch(t){await w(t)}return e},list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(ye,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e}};const{APIS:{PEOPLE_API:{BASE_URL_V2:Ae,ENDPOINTS:{USERS:Te,USER_PRODUCTS:Ne}}},USERS:{MYSELF:fe}}=a,Re=`${Ae}${Te}/${fe}${Ne}`;var Pe={create:async t=>{let e=null;try{e=await g().post(Re,t)}catch(t){await w(t)}return e},list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(Re,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e},update:async(t,e)=>{try{await g().put(`${Re}/${t}`,e)}catch(t){await w(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:$e,ENDPOINTS:{USERS:Le,USER_RATINGS:Oe}}},USERS:{MYSELF:Ue}}=a,Ce=`${$e}${Le}/${Ue}${Oe}`;var _e={create:async t=>{let e=null;try{const{data:r}=await g().post(Ce,t);r?.id&&(e=r)}catch(t){await w(t)}return e},update:async(t,e)=>{try{await g().put(`${Ce}/${t}`,e)}catch(t){await w(t)}}};const{APIS:{PEOPLE_API:{BASE_URL_V2:ve,ENDPOINTS:{USERS:be,USER_REFERRALS:De}}},USERS:{MYSELF:Me}}=a,Be=`${ve}${be}/${Me}${De}`;var ke={bulkEnrolments:Pt,handlers:Ht,registrations:Jt,users:qt,userCommunities:re,userCourses:ce,userEvents:pe,userLessons:me,userLikes:Ft,userProducts:Pe,userRatings:_e,userReferrals:{list:async t=>{let e=[],r=t?{params:t}:{params:{}};try{const{data:t}=await g().get(Be,r);t&&t.length&&(e=t)}catch(t){await w(t)}return e}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:qe,ENDPOINTS:{ENQUIRY_EMAILS:Ge}}}}=a;var xe={create:async t=>{let e=null;try{const{data:r}=await g().post(`${qe}${Ge}`,t);r&&(e=r)}catch(t){await w(t)}return e}},Ve={forms:{sendEnquiryEmails:async t=>{let e=null;try{const{emailIds:r}=h();e=await He.emails.create({...r,...t})}catch(t){await w(t)}return e}}};const{APIS:{PEOPLE_ENGAGEMENT_API:{BASE_URL:Ye,ENDPOINTS:{USERS:je,USER_PROPERTIES:Ke}}},USERS:{MYSELF:Fe}}=a;var He={emails:xe,handlers:Ve,userProperties:{update:async(t,e)=>{try{await g().put(`${Ye}${je}/${Fe}${Ke}/${t}`,e)}catch(t){await w(t)}}}},Qe=l(130);const{APIS:{SEARCH_API:{BASE_URL:We,ENDPOINTS:{SEARCH:Je}}}}=a,Xe=`${We}${Je}`;var Ze={ask:async t=>{try{let e=null;const{data:r}=await g().get(Xe,{params:{question:t}});return r?.answer&&r?.references&&r?.version&&(e=r),e}catch(t){const e=await w(t);throw new Error(e)}},stream:(t,e,r)=>{const a=(0,Qe.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:ze,ENDPOINTS:{COMMUNITIES:tr},PATHS:{ACTIVITIES:er}}}}=a,rr=`${ze}${tr}`;var ar={read:async(t,e)=>{let r=null;try{const{data:a}=await g().get(`${rr}/${encodeURIComponent(t)}/${er}/${e}`);a&&(r=a)}catch(t){await w(t)}return r},list:async(t,e={})=>{let r=null;try{const{data:a}=await g().get(`${rr}/${encodeURIComponent(t)}/${er}`,{params:e});a&&(r=a)}catch(t){await w(t)}return r},create:async(t,e)=>{let r=null;try{const{data:a}=await g().post(`${rr}/${encodeURIComponent(t)}/${er}`,e);a?.content&&(r=a)}catch(t){await w(t)}return r},update:async(t,e,r)=>{let a=null;try{const{data:n}=await g().put(`${rr}/${encodeURIComponent(t)}/${er}/${e}`,r);n?.content&&(a=n)}catch(t){await w(t)}return a},remove:async(t,e)=>{let r=null;try{const{data:a}=await g().delete(`${rr}/${encodeURIComponent(t)}/${er}/${e}`);r=a}catch(t){await w(t)}return r}};const{APIS:{SOCIALS_API:{BASE_URL:nr,ENDPOINTS:{COMMUNITIES:sr}}}}=a,ir=`${nr}${sr}`;var or={read:async t=>{let e=null;try{const{data:r}=await g().get(`${ir}/${encodeURIComponent(t)}`);r?.title&&(e=r)}catch(t){await w(t)}return e},join:async(t,e)=>{let r=null;try{const{data:a}=await g().post(`${ir}/${encodeURIComponent(t)}/members`,e);r=a}catch(t){await w(t)}return r},leave:async t=>{let e=null;try{const{data:r}=await g().delete(`${ir}/${encodeURIComponent(t)}/members/me`);e=r}catch(t){await w(t)}return e}};const{APIS:{SOCIALS_API:{BASE_URL:cr,ENDPOINTS:{COMMUNITIES:lr},PATHS:{ACTIVITIES:ur,REACTIONS:Er}}}}=a,Sr=`${cr}${lr}`;var dr={create:async({slug:t,activityId:e,reactionId:r})=>{let a=null;const n={kind:"like"};let s=`${Sr}/${encodeURIComponent(t)}`;s=e?`${s}/${ur}/${e}/${Er}`:`${s}/${Er}/${r}/${Er}`;try{const{data:t}=await g().post(s,n);a=t}catch(t){await w(t)}return a},remove:async({slug:t,reactionId:e})=>{let r=null;try{const{data:a}=await g().delete(`${Sr}/${encodeURIComponent(t)}/${Er}/${e}`);r=a}catch(t){await w(t)}return r}};const{APIS:{SOCIALS_API:{BASE_URL:pr,ENDPOINTS:{COMMUNITIES:hr}}}}=a,Ir=`${pr}${hr}`;var gr={list:async(t,e)=>{let r={data:[],pagination:{start:0,end:0,total:0}},a=e?{params:e}:{params:{}};try{const{data:e}=await g().get(`${Ir}/${encodeURIComponent(t)}/members`,{...a,headers:{"Cache-Control":"no-cache",Pragma:"no-cache",Expires:0}});e?.data?.length>0&&(r=e)}catch(t){await w(t)}return r}};const{APIS:{SOCIALS_API:{BASE_URL:wr,ENDPOINTS:{COMMUNITIES:yr},PATHS:{ACTIVITIES:mr,REACTIONS:Ar}}}}=a,Tr=`${wr}${yr}`;var Nr={activities:ar,communities:or,members:gr,likes:dr,reactions:{create:async(t,e,r,a)=>{let n=null,s=`${Tr}/${encodeURIComponent(t)}`;s=e?`${s}/${mr}/${e}/${Ar}`:`${s}/${Ar}/${r}/${Ar}`;try{const{data:t}=await g().post(s,a);n=t}catch(t){await w(t)}return n},list:async(t,{activityId:e,reactionId:r},a={})=>{let n=null,s=`${Tr}/${encodeURIComponent(t)}`;s=e?`${s}/${mr}/${e}/${Ar}`:`${s}/${Ar}/${r}/${Ar}`;try{const{data:t}=await g().get(s,{params:a});t&&(n=t)}catch(t){await w(t)}return n},remove:async(t,e)=>{let r=null;try{const{data:a}=await g().delete(`${Tr}/${encodeURIComponent(t)}/${Ar}/${e}`);r=a}catch(t){await w(t)}return r},update:async(t,e,r,a)=>{let n=null,s=`${Tr}/${encodeURIComponent(t)}`;s=e?`${s}/${mr}/${e}`:`${s}/${Ar}/${r}`;try{const{data:t}=await g().put(s,a);n=t}catch(t){await w(t)}return n}}};const{CONTENTFUL:fr}=a,{CARD_TYPES:Rr}=fr.CAROUSELS,Pr={read:async(e,r)=>{try{if(!r||!r.sys||!r.sys.id)throw new Error("Invalid link to card");if(!e||!Rr[e])throw new Error("Unsupported card content type");const{INCLUDE:a,SELECT:n}=Rr[e];return await(0,t.getEntry)({content_type:e,"sys.id":r.sys.id,include:a,select:n},{assetDetails:!0})}catch(t){throw await w(t),new Error(`Cannot read carousel card: ${t.message}`)}}};var $r=Pr;const{CONTENTFUL:Lr}=a,{INCLUDE:Or,SELECT:Ur,TYPE:Cr}=Lr.EDITORIAL_PAGES;var _r={read:async e=>{try{return await(0,t.getEntry)({content_type:Cr,"fields.slug":e,include:Or,select:Ur})}catch(t){throw await w(t),new Error(`Cannot read editorial page: ${t.message}`)}}};const{CONTENTFUL:vr}=a,{TYPE:br,ORDER:Dr,SELECT:Mr,SKIP:Br,LIMIT:kr,INCLUDE:qr}=vr.QUESTIONS;var Gr={read:async e=>{try{return await(0,t.getEntry)({content_type:br,"fields.slug":e,include:2,select:Mr})}catch(t){throw await w(t),new Error(`Cannot read question: ${t.message}`)}},list:async(e={})=>{try{return await(0,t.getEntries)({content_type:br,include:qr,limit:kr,order:Dr,select:Mr,skip:Br,...e})}catch(t){throw await w(t),new Error(`Cannot list questions: ${t.message}`)}}},xr=async(t,e,r={ignoreAnswersAuthors:!1})=>{try{let a={};return a=await Gr.read(t),a=await ke.handlers.authors.readQuestionAuthors(a,e,r),a}catch(t){throw await w(t),new Error(`Cannot build question: ${t.message}`)}};const{ARTICLES:{TYPE:Vr},COURSES:{TYPE:Yr},CUSTOM_CARD:{TYPE:jr},COMMUNITY:{TYPE:Kr},EVENTS:{TYPE:Fr},LISTS:{TYPE:Hr},QUESTIONS:{TYPE:Qr},LEARNING_HUB:{TYPE:Wr}}=a.CONTENTFUL,Jr={ClosedHidden:"closed-hidden",ClosedVisible:"closed-visible",OpenHidden:"open-hidden",OpenVisible:"open-visible"},Xr=t=>t&&t.url?(Object.assign(t,{aspect:"responsiveCard",query:"q=90&fit=fill"}),t):null,Zr=t=>t&&t.url?`${t.url}?w=100&h=100&fit=thumb&f=center`:null,zr=t=>t.toLowerCase().split(" ")[0],ta={[Vr]:async t=>{const{authorIds:e,authorTag:r,image:a,publishedDate:n,readingTime:s,slug:i,title:o}=t,c=await ke.handlers.authors.readAuthors(e),l=c&&c.length?c:r?[zr(r)]:null;return{banner:Xr(a),contributors:l,publishedDate:n,readingTime:s,slug:i,title:o}},[Kr]:async t=>{const{title:e,slug:r,bannerSection:a,privacy:n,createdAt:s}=t,i=await Nr.communities.read(r),o=await Nr.members.list(r,{count:1}),c=[Jr.ClosedVisible,Jr.ClosedHidden].includes(n),l=[Jr.OpenVisible,Jr.ClosedVisible].includes(n);return{banner:a?.image?Xr(a.image):null,slug:r,title:e,privacy:n,isPrivate:c,isVisible:l,createdAt:s,members:{isMember:!!i?.member,memberType:i?.member?.role||null,count:o?.pagination?.total||0}}},[Yr]:async(t,e)=>{const{banner:r,freeCourse:a,partnershipDetails:n,slug:s,title:i,registered:o,courseType:c}=t,l={banner:Xr(r),slug:s,title:i,pill:a?"free":"premium",registered:!!o,courseType:c};if(n){const{partners:t}=n;if(t)if(t.length>1){let e=[];for(let r=0;r<t.length;r++)e.push(t[r].title);l.partner=e}else l.partner=[t[0].title]}if(void 0===o&&e){const[t]=await ke.userProducts.list({courseSlug:s,isEnrolled:!0,scope:"active"});l.registered=!!t}return l},[jr]:t=>{const{authorName:e,authorImage:r,icon:a,image:n,label:s,link:i,primaryText:o}=t;return{...t,banner:n?Xr(n):null,customIcon:a?a.toLowerCase():null,customLabel:s,contributors:e?[{name:e,image:r?{thumbnail:Zr(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=Zr(t.image);const E={banner:Xr(r),dateHasPassed:u,title:o,slug:s,isOngoingEvent:n,contributors:i,startDate:l,registered:!!c};if(void 0===c&&e){const[t]=await ke.userEvents.list({eventSlug:s});E.registered=!!t}return E},[Hr]:async t=>{const{hero:e,slug:r,title:a}=t;return{banner:Xr(e),slug:r,title:a}},[Qr]:async t=>{const{answers:e,authorId:r,createdAt:a,slug:n,title:s}=t;let i=null;if(r){const t=await ke.users.read(r);t&&(i=t)}return{answers:e&&e.length?e.length:0,contributors:i?[i]:[],createdAt:a,slug:n,title:s}},[Wr]:t=>{const{bannerSection:e,customLabel:r,slug:a,title:n}=t;return{banner:Xr(e.image),slug:a,title:n,customLabel:r}},people:t=>{const{id:e,name:r,jobTitle:a,location:n,image:s,customLink:i}=t;return{profile:s,slug:i?.link||e,title:r,text:a,secondaryText:n,customLinkText:i?.text}}};var ea=async({contentType:t,...e}={},r)=>{try{if(!ta[t])throw new Error("Content type not supported");if("function"!=typeof ta[t])throw new Error("No builder function for content type");return"people"!==t&&e.sys&&e.sys.type&&"Link"===e.sys.type&&(e=await $r.read(t,e)),{contentType:t,...await ta[t](e,r)}}catch(t){throw await w(t),new Error(`Cannot build carousel card: ${t.message}`)}},ra=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 Bt(r.authorId)||{};const[n]=e?await Kt({contentType:a.CONTENTFUL.REPLIES.TYPE,contentSlug:r.slug}):[null];r.userLiked=!!n}return t.replies=n,t}catch(t){throw await w(t),new Error(`Cannot build replies for answer: ${t.message}`)}};const aa="success",na="error";var sa=t=>async e=>{const{contentType:r}=e;switch(r){case"event":try{return await ut.eventRegistrations.create({eventSlug:e.slug,expectation:null,userEmail:t.email,startsAt:new Date(e.startDate).toISOString()}),aa}catch(t){return reportError(new Error(`Error registering for event: ${JSON.stringify(t)}`)),na}case"microcourse":try{return await ut.userProducts.create({id:t.id,courseSlug:e.slug,email:t.email,courseType:e.courseType}),aa}catch(t){return reportError(new Error(`Error registering for microcourse: ${JSON.stringify(t)}`)),na}case"communityPage":try{return await Nr.communities.join(e.slug,{...t.jobTitle&&{jobTitle:t.jobTitle},...t.organization&&{organization:t.organization},...t.image.thumbnail&&{thumbnail:t.image.thumbnail}}),aa}catch(t){return reportError(new Error(`Error joining community: ${JSON.stringify(t)}`)),na}default:return na}};var ia=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 oa="__googleMapsScriptId";var ca;!function(t){t[t.INITIALIZED=0]="INITIALIZED",t[t.LOADING=1]="LOADING",t[t.SUCCESS=2]="SUCCESS",t[t.FAILURE=3]="FAILURE"}(ca||(ca={}));class la{constructor({apiKey:t,authReferrerPolicy:e,channel:r,client:a,id:n=oa,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||oa,this.language=s,this.libraries=i,this.mapIds=o,this.nonce=c,this.region=l,this.retries=u,this.url=E,this.version=S,la.instance){if(!ia(this.options,la.instance.options))throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(la.instance.options)}`);return la.instance}la.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?ca.FAILURE:this.done?ca.SUCCESS:this.loading?ca.LOADING:ca.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:ua,VERSION:Ea}}}=a;var Sa=function(t){return{city:async function(e){try{const r=await async function(){try{const{AutocompleteService:t}=await async function(t=ua.PLACES){const e=h(),r=new la({apiKey:e?.googleMaps?.apiKey,version:Ea});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),[]}}}},da=l(408);const pa=t=>t&&da.Buffer.from(t,"base64").toString("ascii");function ha({contentContext:a=null,errorsContext:l=null,googleMapsContext:u=null,gtmContext:h=null,origin:I}){try{const g=(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:g})),l&&(0,e.setContext)(Object.assign({},l,{environment:g})),u&&(({apiKey:t})=>{p.googleMaps={apiKey:t}})(Object.assign({},u,{environment:g})),h&&((0,r.setContext)(Object.assign({},h,{environment:g})),(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:g})),g}catch(t){console.warn(`Cannot load SDK: ${t.message}`)}}}(),u}()}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apolitical/sdk",
3
- "version": "10.0.0",
3
+ "version": "10.0.2-rc.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",
@@ -16,7 +16,7 @@
16
16
  "lint": "eslint --ext .js ./lib",
17
17
  "format": "prettier --write 'lib/**/*.+(js|json)'",
18
18
  "lint-format": "lint-staged",
19
- "prepare": "cd ../../../../ && husky install modules/v1/apolitical-sdk/.husky",
19
+ "prepare": "cd ../../../../../ && husky install frontend/modules/v1/apolitical-sdk/.husky",
20
20
  "prepack": "yarn build"
21
21
  },
22
22
  "keywords": [