{"version":3,"file":"470-6b40366613.js","mappings":"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","sources":["webpack://source-maps/ClientApp/node_modules/.pnpm/@adeccoca+cxbot-core@2.0.13_b1591c5db95c8ce4d83de5bce24a8fbf/node_modules/@adeccoca/cxbot-core/dist/index.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/activity-request.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/adaptive-applet.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/adaptivecards.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/card-elements.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/card-object.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/carousel.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/channel-adapter.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/controls/collection.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/controls/constants.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/controls/index.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/controls/menu-item.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/controls/popup-control.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/controls/popup-menu.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/enums.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/host-capabilities.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/host-config.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/registry.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/serialization.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/shared.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/strings.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/table.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/text-formatters.js","webpack://source-maps/ClientApp/node_modules/.pnpm/adaptivecards@2.11.3_swiper@9.4.1/node_modules/adaptivecards/lib/utils.js"],"sourcesContent":["!function(e,n){if(\"object\"==typeof exports&&\"object\"==typeof module)module.exports=n();else if(\"function\"==typeof define&&define.amd)define([],n);else{var t=n();for(var i in t)(\"object\"==typeof exports?exports:e)[i]=t[i]}}(global,(()=>(()=>{var e={980:(e,n,t)=>{\"use strict\";t.r(n),t.d(n,{Brand:()=>I,ConversationItemType:()=>D,ConversationType:()=>M,DirectLineHooks:()=>i,EventName:()=>R,default:()=>sr,i18n:()=>xo});var i={};t.r(i),t.d(i,{useSendEvent:()=>qe,useSendInitialActivity:()=>Fe,useSendMessage:()=>Be,useSendMessageBack:()=>Pe,useSendPostBack:()=>ze,useSetDocumentBranding:()=>Le});const o=require(\"tslib\"),a=require(\"react/jsx-runtime\"),r=require(\"react-redux\"),s=require(\"react-i18next\"),l=require(\"@reduxjs/toolkit\"),u=require(\"redux\"),c=require(\"@reduxjs/toolkit/query/react\");var d=function(e){var n;return\"\".concat((null===(n=null===window||void 0===window?void 0:window.CACxBotOptions)||void 0===n?void 0:n.url)||\"\").concat(e)},m=(0,c.createApi)({reducerPath:\"ontology\",baseQuery:(0,c.fetchBaseQuery)({baseUrl:\"\"}),endpoints:function(e){return{getBotToken:e.query({query:function(e){return\"/api/home/\".concat(e)}}),getSkillsByKeyword:e.query({query:function(e){var n=e.searchParam,t=e.language;return{url:d(\"/api/ontologies/skills/search\"),method:\"POST\",body:{cultureCode:t,SkillName:n}}},transformResponse:function(e){return null==e?void 0:e.map((function(e){var n;return Object.keys(e)&&{value:Object.keys(e)[0],label:null===(n=e[Object.keys(e)[0]])||void 0===n?void 0:n.description}}))}}),getJobsByKeyword:e.query({query:function(e){var n=e.searchParam,t=e.language;return{url:d(\"/api/ontologies/professions/search\"),method:\"POST\",body:{cultureCode:t,professionName:n}}},transformResponse:function(e){return null==e?void 0:e.map((function(e){var n;return Object.keys(e)&&{value:Object.keys(e)[0],label:null===(n=e[Object.keys(e)[0]])||void 0===n?void 0:n.description}}))}}),getJobTitlesByKeyword:e.query({query:function(e){var n=e.searchParam,t=e.language;return{url:d(\"/api/ontologies/job-titles/search\"),method:\"POST\",body:{cultureCode:t,jobTitleName:n}}},transformResponse:function(e){return null==e?void 0:e.map((function(e){var n;return Object.keys(e)&&{value:Object.keys(e)[0],label:null===(n=e[Object.keys(e)[0]])||void 0===n?void 0:n.description}}))}}),getLanguageSkillsByKeyword:e.query({query:function(e){var n=e.searchParam,t=e.language;return{url:d(\"/api/ontologies/language-skills/search\"),method:\"POST\",body:{cultureCode:t,languageSkillName:n}}},transformResponse:function(e){return null==e?void 0:e.map((function(e){var n;return Object.keys(e)&&{value:Object.keys(e)[0],label:null===(n=e[Object.keys(e)[0]])||void 0===n?void 0:n.description}}))}}),getCountriesByKeyword:e.query({query:function(e){var n=e.searchParam,t=e.language;return{url:d(\"/api/ontologies/countries/search\"),method:\"POST\",body:{cultureCode:t,CountryName:n}}},transformResponse:function(e){return null==e?void 0:e.map((function(e){var n,t;return Object.keys(e)&&{value:Object.keys(e)[0],label:null===(n=e[Object.keys(e)[0]])||void 0===n?void 0:n.description,countryEnglishName:null===(t=e[Object.keys(e)[0]])||void 0===t?void 0:t.defaultValue}}))}}),getIndustriesWithCategories:e.query({query:function(e){return{url:d(\"/api/ontologies/industries/search/all\"),method:\"POST\",body:{cultureCode:e}}},transformResponse:function(e){return null==e?void 0:e.categories}}),getCitiesByZipCode:e.query({query:function(e){var n=e.searchParam,t=e.language;return{url:d(\"/api/map/municipalities-by-zip-code\"),method:\"POST\",body:{inputText:n,culture:t}}},transformResponse:function(e){return e.map((function(e){return(0,o.__assign)((0,o.__assign)({},e),{value:e.city,label:e.city})}))}}),getSimplifiedAddress:e.mutation({query:function(e){var n=e.searchParam,t=e.language;return{url:d(\"/api/map/simplified-address\"),method:\"POST\",body:{inputText:n,culture:t}}},transformResponse:function(e){return e.map((function(e){var n,t=null===(n=[\"\".concat(e.street?e.street+\" \":\"\").concat(e.streetNumber?e.streetNumber+\", \":\"\"),\"\".concat(e.city,\" \").concat(e.country,\" \").concat(e.postalCode)])||void 0===n?void 0:n.join(\"\");return(0,o.__assign)((0,o.__assign)({},e),{value:t,label:t})}))}}),trackJobLinkClick:e.mutation({query:function(e){return{url:d(\"/api/tracking/job-link-click\"),method:\"POST\",body:e}}}),trackLinkClick:e.mutation({query:function(e){return{url:d(\"/api/tracking/other-link-click\"),method:\"POST\",body:e}}}),uploadDocument:e.mutation({query:function(e){return{url:d(\"/api/person-service/documents\"),method:\"POST\",body:e}}})}}}),v=(m.useGetBotTokenQuery,m.useLazyGetBotTokenQuery,m.useLazyGetSkillsByKeywordQuery),f=m.useLazyGetJobsByKeywordQuery,p=m.useLazyGetJobTitlesByKeywordQuery,h=m.useGetIndustriesWithCategoriesQuery,g=m.useLazyGetLanguageSkillsByKeywordQuery,y=m.useLazyGetCountriesByKeywordQuery,b=m.useLazyGetCitiesByZipCodeQuery,x=m.useGetSimplifiedAddressMutation,_=m.useTrackJobLinkClickMutation,w=m.useTrackLinkClickMutation,C=m.useUploadDocumentMutation;const j=m;var k,S=(0,l.createSlice)({name:\"autoComplete\",initialState:{currentOptions:[],allOptions:[]},reducers:{setCurrentOptions:function(e,n){e.currentOptions=n.payload},setAllOptions:function(e,n){var t,i=null===(t=n.payload)||void 0===t?void 0:t.filter((function(n){return!e.allOptions.find((function(e){return e.value===n.value}))}));e.allOptions=(0,o.__spreadArray)((0,o.__spreadArray)([],(0,o.__read)(e.allOptions),!1),(0,o.__read)(i),!1)},resetCurrentOptions:function(e){e.currentOptions=[]},resetAllOptions:function(e){e.allOptions=[]}}}),E=(k=S.actions).setCurrentOptions,T=k.setAllOptions,A=k.resetCurrentOptions,N=k.resetAllOptions;const O=S.reducer;var M,I,D,R,F,B;!function(e){e.CANDIDATECAPTURE=\"CandidateCapture\",e.CONVERSATION=\"Conversation\"}(M||(M={})),function(e){e.ADECCO=\"Adecco\",e.ADECCOFAQ=\"AdeccoFAQ\",e.ADECCOFULL=\"AdeccoFull\",e.ADECCOGROUP=\"AdeccoGroup\",e.ADECCOMEDICAL=\"ADECCOMEDICAL\",e.AMAZON=\"Amazon\",e.WHITELABEL=\"WhiteLabel\",e.CEOFORONEMONTH=\"CEOForOneMonth\",e.DISAG=\"DISAG\",e.EUROPASSISTANCE=\"EuropAssistance\",e.FOCORE=\"FOCORE\",e.LHH=\"LHH\",e.AKKODIS=\"Akkodis\",e.PONTOON=\"Pontoon\",e.QAPA=\"QAPA\"}(I||(I={})),function(e){e.EVENT=\"event\",e.MESSAGE=\"message\",e.TYPING=\"typing\",e.ENDOFCONVERSATION=\"endOfConversation\"}(D||(D={})),function(e){e.REQUESTWELCOMEDIALOG=\"requestWelcomeDialog\",e.REQUESTVIEWCONVERSATIONHISTORY=\"requestViewConversationHistory\",e.INPUTFOR=\"InputFor\",e.CONVERSATIONRATING=\"ConversationRating\",e.CONVERSATIONPROGRESSION=\"ConversationProgression\",e.RESTARTBOTVIEW=\"RestartBotView\",e.REDIRECT=\"redirect\",e.REDIRECTV2=\"redirectV2\",e.REDIRECTRCWITHNPS=\"redirect-rc-global-with-nps\",e.REDIRECTRCGLOBAL=\"redirect-rc-global\",e.ASKCALENDAR=\"askCalendar\"}(R||(R={})),function(e){e.ADAPTIVE=\"application/vnd.microsoft.card.adaptive\",e.HERO=\"application/vnd.microsoft.card.hero\",e.FEEDBACK=\"feedback\",e.TIMEOUT=\"timeoutOptions\"}(F||(F={})),function(e){e.SENT=\"SENT\",e.DELIVERED=\"DELIVERED\",e.FAILED=\"FAILED\"}(B||(B={}));const P=require(\"date-fns/isBefore\");var q,z=t.n(P),L=t(538),V=t(247),U=void 0!==L.env.JEST_WORKER_ID,Y=(0,l.createSlice)({name:\"conversation\",initialState:{conversation:[],conversationProgress:0,newMessageCount:0,conversationId:\"\",candidateId:\"\",isTyping:!0,isEndOfConversation:!1,error:null},reducers:{addConversationItem:function(e,n){var t,i,o,a,r,s,l,u,c,d,m,v,f,p,h,g,y,b,x,_,w,C;if((null===(t=n.payload)||void 0===t?void 0:t.timestamp)&&(null===(o=null===(i=n.payload)||void 0===i?void 0:i.conversation)||void 0===o?void 0:o.id)===e.conversationId&&!e.conversation.find((function(e){var t;return e.id===(null===(t=n.payload)||void 0===t?void 0:t.id)}))){!U&&V.log(n.payload);var j=e.conversation.findIndex((function(e){var t,i,o,a,r;return(null===(i=null===(t=n.payload)||void 0===t?void 0:t.channelData)||void 0===i?void 0:i.clientActivityID)&&(null===(o=null==e?void 0:e.channelData)||void 0===o?void 0:o.clientActivityID)===(null===(r=null===(a=n.payload)||void 0===a?void 0:a.channelData)||void 0===r?void 0:r.clientActivityID)}));-1===j&&(null===(a=n.payload)||void 0===a?void 0:a.type)!==D.ENDOFCONVERSATION?(e.conversation.push(n.payload),(null===(r=n.payload)||void 0===r?void 0:r.type)===D.MESSAGE&&e.candidateId!==(null===(l=null===(s=n.payload)||void 0===s?void 0:s.from)||void 0===l?void 0:l.id)&&(e.newMessageCount+=1)):e.conversation[j]=n.payload,e.conversation.sort((function(e,n){return z()(new Date(e.timestamp),new Date(n.timestamp))?-1:1}))}(null===(u=n.payload)||void 0===u?void 0:u.type)!==D.ENDOFCONVERSATION&&(null===(c=n.payload)||void 0===c?void 0:c.name)!==R.REQUESTVIEWCONVERSATIONHISTORY||(e.isEndOfConversation=!0),(null===(d=n.payload)||void 0===d?void 0:d.type)===D.EVENT&&(null===(m=n.payload)||void 0===m?void 0:m.name)===R.REQUESTWELCOMEDIALOG&&(e.isEndOfConversation=!1),(null===(v=n.payload)||void 0===v?void 0:v.type)===D.EVENT&&(null===(f=n.payload)||void 0===f?void 0:f.name)===R.CONVERSATIONPROGRESSION&&(null===(h=null===(p=n.payload)||void 0===p?void 0:p.value)||void 0===h?void 0:h.value)>e.conversationProgress&&(e.conversationProgress=null===(y=null===(g=n.payload)||void 0===g?void 0:g.value)||void 0===y?void 0:y.value),(null===(b=n.payload)||void 0===b?void 0:b.type)===D.TYPING?e.isTyping=!0:((null===(x=n.payload)||void 0===x?void 0:x.type)===D.MESSAGE||(null===(_=n.payload)||void 0===_?void 0:_.type)===D.EVENT&&(null===(w=n.payload)||void 0===w?void 0:w.name)!==R.CONVERSATIONPROGRESSION&&(null===(C=n.payload)||void 0===C?void 0:C.name)!==R.REQUESTWELCOMEDIALOG)&&(e.isTyping=!1)},resetNewMessageCount:function(e){e.newMessageCount=0},updateConversationStatus:function(e,n){var t,i=n.payload,a=i.activity,r=i.id,s=i.status,l=null===(t=e.conversation)||void 0===t?void 0:t.findIndex((function(e){return e.id===a.id}));e.conversation[l]=(0,o.__assign)((0,o.__assign)({},e.conversation[l]),{status:s,id:r||a.id})},setConversationId:function(e,n){e.conversationId=n.payload},setCandidateId:function(e,n){e.candidateId=n.payload},setError:function(e,n){e.error=n.payload},resetConversationState:function(e){e.conversation=[],e.newMessageCount=0,e.conversationProgress=0}}}),G=(q=Y.actions).addConversationItem,J=q.resetNewMessageCount,W=q.updateConversationStatus,K=q.setConversationId,H=q.setCandidateId,Q=q.setError,Z=q.resetConversationState;const X=Y.reducer;var $=(0,l.createSlice)({name:\"errorHandler\",initialState:{apiError:null},reducers:{onApiError:function(e,n){e.apiError=n.payload}}}),ee=$.actions.onApiError;const ne=$.reducer;var te;const ie=(0,u.combineReducers)(((te={autoComplete:O,cxBot:X,errors:ne})[j.reducerPath]=j.reducer,te));var oe=function(e){return function(n){return function(t){return(0,l.isRejectedWithValue)(t)&&e.dispatch(ee(t.payload)),n(t)}}},ae=(0,l.configureStore)({reducer:ie,devTools:!1,middleware:function(e){return e().concat(oe,j.middleware)}}),re=r.useDispatch;const se=ae,le=require(\"react\");var ue=t.n(le);const ce=require(\"botframework-directlinejs\");var de=ue().createContext(void 0),me=function(e){var n=e.children,t=e.model,i=e.directline,r=(0,o.__read)((0,le.useState)(ce.ConnectionStatus.Uninitialized),2),s=r[0],l=r[1],u=re();(0,le.useEffect)((function(){u(K(null==t?void 0:t.conversationId)),u(H(null==t?void 0:t.entityId))}),[u,t]),(0,le.useEffect)((function(){try{s===ce.ConnectionStatus.Online&&(null==i||i.activity$.subscribe((function(e){u(Q(null)),u(G((0,o.__assign)((0,o.__assign)({},e),{status:B.DELIVERED})))}),(function(e){u(Q(null==e?void 0:e.toString()))}))),null==i||i.connectionStatus$.subscribe((function(e){l(e)}))}catch(e){}}),[s,i,u]);var c=(0,le.useMemo)((function(){return{directline:i,model:t}}),[i,t]);return(0,a.jsx)(de.Provider,(0,o.__assign)({value:c},{children:n}))},ve=function(){var e=(0,le.useContext)(de);if(void 0===e)throw new Error(\"useDirectLineContext must be used inside DirectLineContextProvider\");return e},fe=ue().createContext(void 0),pe=function(e){var n=e.children,t=(0,o.__read)((0,le.useState)(!1),2),i=t[0],r=t[1],s=(0,le.useMemo)((function(){return{isBotExpanded:i,setBotExpanded:r}}),[i,r]);return(0,a.jsx)(fe.Provider,(0,o.__assign)({value:s},{children:n}))},he=function(){var e=(0,le.useContext)(fe);if(void 0===e)throw new Error(\"useBotSizeContext must be used inside BotSizeContextProvider\");return e};const ge=require(\"react-dom\");var ye=t.n(ge);const be=require(\"react-to-pdf\"),xe={adecco:\"kx6nw5OBJrChys_UrFiB\",adeccofaq:\"R8cRbvwOoG_DJs8JC0MS\",adeccofull:\"eiqTJNMigoWqElVaXAgE\",amazon:\"Ejd0JLfT0HfUamdyXPyk\",adeccomedical:\"at6tA2ZIeKu49YWkbbXJ\",adeccogroup:\"TzVSrEXdM5ei1pAqTsXg\",akkodis:\"dYBPPyWlibLtou7ykoWS\",whitelabel:\"fYt68XXTaSj0O_B6MK4s\",ceoforonemonth:\"P8VcGQGB80XCqizUqBJS\",disag:\"TotDNfbNDGOTvbeedYin\",disconsulting:\"dltzn7Yudkej0NR0IX5A\",europassistance:\"etGsztkobiiEEhn8KoZQ\",focore:\"OA0X3zxYTOskrj1pTG_M\",lhh:\"Kf7EE8TvO7lcg9guGBuP\",pontoon:\"qDXDeer7mvUpn0vhdOY1\",proserv:\"N3tzC9Rvr_pH6fRkA3DQ\",qapa:\"luzJNogCLvefS5385h5z\"},_e=\"x2dFKPFqEFDfP00_70P0\",we=\"tPOqdwDdd2tPLkbSausg\",Ce=\"yeE5Qj1vznDr6EelTmvK\",je=\"wW0RAymfOQUqht4HNAg8\";const ke=function(e){var n=e.brand;return(0,a.jsx)(\"div\",(0,o.__assign)({className:xe[null==n?void 0:n.toLowerCase()]},{children:(0,a.jsx)(\"header\",(0,o.__assign)({className:_e},{children:(0,a.jsxs)(\"div\",(0,o.__assign)({className:we},{children:[(0,a.jsx)(\"div\",{className:Ce}),(0,a.jsx)(\"div\",(0,o.__assign)({className:je},{children:\"Career Assistant\"}))]}))}))}))};var Se=ue().createContext(void 0),Ee=function(e){var n=e.children,t=ve().model,i=(0,le.useRef)(null),r=(0,be.usePDF)({page:{margin:be.Margin.LARGE},method:\"open\"}),s=r.toPDF,l=r.targetRef,u=(0,le.useCallback)((function(){return(0,o.__awaiter)(void 0,void 0,void 0,(function(){var e;return(0,o.__generator)(this,(function(n){return e=document.createElement(\"div\"),ye().render((0,a.jsx)(ke,{brand:null==t?void 0:t.brand}),e),i.current.insertBefore(e,i.current.firstChild),l.current=i.current,s(),i.current.removeChild(e),[2]}))}))}),[null==t?void 0:t.brand,l,s]),c=(0,le.useMemo)((function(){return{targetRef:i,onExportPdf:u}}),[i,u]);return(0,a.jsx)(Se.Provider,(0,o.__assign)({value:c},{children:n}))},Te=function(){var e=(0,le.useContext)(Se);if(void 0===e)throw new Error(\"useExportPDFContext must be used inside ExportPDFContextProvider\");return e};const Ae=require(\"math-random\");var Ne=t.n(Ae);const Oe=require(\"date-fns/format\");var Me=t.n(Oe);const Ie=require(\"lodash.omit\");var De=t.n(Ie),Re=function(){var e,n=ve().model,t=null===(e=(0,r.useSelector)((function(e){return e.cxBot})).conversation.filter((function(e){return e.type===D.MESSAGE||e.type===D.EVENT})).reverse())||void 0===e?void 0:e[0];return function(e){var i=new Date,a=i.getTimezoneOffset(),r=a<0?\"+\".concat(a/-60,\":00\"):\"-\".concat(a/60,\":00\");return{channelId:\"directline\",channelData:(0,o.__assign)({clientActivityID:i.getTime()+Ne()().toString(36).substr(2)},e||{}),entities:[{requiresBotState:!0,supportsListening:!0,supportsTts:!0,type:\"ClientCapabilities\"}],from:{id:null==n?void 0:n.entityId,name:\"Candidate\"},locale:n.language,localTimestamp:\"\".concat(Me()(i,\"yyyy-LL-dd\"),\"T\").concat(Me()(i,\"HH:mm:ss\")).concat(r),localTimezone:Intl.DateTimeFormat().resolvedOptions().timeZone,replyToId:null==t?void 0:t.id,status:B.SENT,timestamp:i.toUTCString()}}},Fe=function(){var e=ve().directline,n=(0,r.useDispatch)();return function(t){var i;return null===(i=null==e?void 0:e.postActivity(t))||void 0===i?void 0:i.subscribe((function(){}),(function(e){var t;n(Q(null===(t=null==e?void 0:e.response)||void 0===t?void 0:t.error))}))}},Be=function(){var e=ve().directline,n=Re();return function(t,i,a){var r=(0,o.__assign)({type:D.MESSAGE,text:t,textFormat:\"plain\",attachments:null==a?void 0:a.map((function(e){return{contentType:e.contentType,contentUrl:e.contentUrl,name:e.name,thumbnailUrl:e.thumbnailUrl}}))},n({method:{method:i}}));se.dispatch(G(r)),e.postActivity(De()(r,[\"id\",\"status\",\"timestamp\"])).subscribe((function(){}),(function(e){se.dispatch(W({activity:r,status:B.FAILED}))}))}},Pe=function(){var e=ve().directline,n=Re();return function(t,i,a,r){var s=(0,o.__assign)({type:D.MESSAGE,text:i,value:t,attachments:null==r?void 0:r.map((function(e){return{contentType:e.contentType,contentUrl:e.contentUrl,name:e.name,thumbnailUrl:e.thumbnailUrl}}))},n({messageBack:{displayText:a}}));se.dispatch(G(s)),e.postActivity(De()(s,[\"id\",\"status\",\"timestamp\"])).subscribe((function(){}),(function(e){se.dispatch(W({activity:s,status:B.FAILED}))}))}},qe=function(){var e=ve().directline,n=Re();return function(t,i){e.postActivity((0,o.__assign)({type:D.EVENT,name:t,value:i},n())).subscribe((function(){}))}},ze=function(){var e=ve().directline,n=Re();return function(t,i){e.postActivity((0,o.__assign)({type:D.MESSAGE,text:\"string\"==typeof t?t:void 0,value:\"string\"!=typeof t?t:void 0,attachments:null==i?void 0:i.map((function(e){return{contentType:e.contentType,contentUrl:e.contentUrl,name:e.name,thumbnailUrl:e.thumbnailUrl}}))},n({postBack:!0}))).subscribe((function(){}))}},Le=function(){var e,n=(0,s.useTranslation)(\"brands\").t,t=ve().model,i=null==t?void 0:t.brand,o=document.createElement(\"link\");document.querySelectorAll('link[rel=\"shortcut icon\"]').forEach((function(e){return e.parentNode.removeChild(e)})),o.id=\"dynamic-favicon\",o.rel=\"shortcut icon\",o.href=\"/resources/brands/\".concat(i,\"/favicon.png\"),document.head.appendChild(o);var a=document.getElementById(\"banner\");if(a){document.querySelectorAll('meta[name=\"theme-color\"]').forEach((function(e){return e.parentNode.removeChild(e)}));var r=document.createElement(\"meta\");r.name=\"theme-color\",r.content=null===(e=window.getComputedStyle(a))||void 0===e?void 0:e.getPropertyValue(\"background\"),document.head.appendChild(r)}document.title=\"\".concat(n(i)||\"\",\" | Career Assistant\")};const Ve=require(\"classnames\");var Ue=t.n(Ve);const Ye=require(\"lodash.isequal\");var Ge=t.n(Ye);const Je=\"URRzMqMj8jsHjJK1beu0\";const We=function(e){var n=e.children,t=e.className,i=(0,o.__rest)(e,[\"children\",\"className\"]);return(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(Je,t)},i,{children:n}))},Ke=\"vHBcluimoQPvoNZMpiop\",He=\"jrPwGvImSw5Q3Y2_taU0\",Qe=\"Djpyhl0Ltv1jNMag4iMg\",Ze=\"wd8Y12qH62s9QBsHjEvA\",Xe=\"Kvqcw39SganOKjSBa_76\";const $e=function(e){var n,t=e.title,i=e.fullheight;return(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(Ke,(n={},n[He]=i,n))},{children:(0,a.jsxs)(\"div\",(0,o.__assign)({className:Qe},{children:[(0,a.jsx)(\"div\",{className:Ze}),(0,a.jsx)(\"div\",(0,o.__assign)({className:Xe},{children:t}))]}))}))},en=\"IXfZ1ROdSHp7PvHNUcao\",nn=\"W_8ThLTLiuQVWrJIeQLq\",tn=\"mSINtZPNLGEDj5ebiijm\",on=\"CL8rHaLYJEkrgmWUp56g\",an=\"WFd5vR8sSVm0gHFiwLqS\",rn=\"ipMBUH9VDjCx2Ir0qEFy\",sn=\"D3BT1Ospq_rF2VxlZHqx\",ln=\"iAaQbjoQKQ8iN_kBd_lu\",un=require(\"@mui/icons-material/Error\");var cn=t.n(un);const dn=require(\"@mui/icons-material/Close\");var mn=t.n(dn);const vn=require(\"@mui/icons-material/ZoomInMap\");var fn=t.n(vn);const pn=require(\"@mui/icons-material/ZoomOutMap\");var hn=t.n(pn);const gn=\"mykDlUTLdf6zW62WXTKr\",yn=\"pW1RbSjYoVhmv7J29O9A\",bn=\"GI4K0KZ8XyusBdnH0VEr\",xn=\"iKvYKT3SMxl0CvJltc4V\",_n=\"sBwz6fVXMMVsM4SEsoXY\";var wn=function(){return(0,a.jsxs)(\"div\",(0,o.__assign)({className:yn},{children:[(0,a.jsx)(\"div\",{className:bn}),(0,a.jsx)(\"div\",{className:xn}),(0,a.jsx)(\"div\",{className:_n})]}))};const Cn=function(){var e=(0,s.useTranslation)(\"cxbot\").t;return(0,a.jsxs)(\"div\",(0,o.__assign)({className:gn},{children:[(0,a.jsx)(\"span\",(0,o.__assign)({role:\"alert\",\"aria-live\":\"polite\"},{children:e(\"typing\")})),(0,a.jsx)(wn,{})]}))},jn=require(\"react-scroll-to-bottom\");var kn=ue().createContext(void 0),Sn=function(e){var n=e.className,t=e.children,i=e.footerComponent,r=(0,le.useRef)(null),s=(0,le.useRef)(null),l=(0,jn.useScrollToBottom)(),u=(0,le.useMemo)((function(){return{scrollToBottom:l,scrollRef:r,scrollContainerRef:s}}),[s,l]);return(0,a.jsx)(kn.Provider,(0,o.__assign)({value:u},{children:(0,a.jsx)(jn.Composer,{children:(0,a.jsxs)(\"div\",(0,o.__assign)({className:n,ref:s,role:\"main\",\"aria-label\":\"chat\"},{children:[(0,a.jsx)(jn.Panel,{children:t}),i]}))})}))},En=function(){var e=(0,le.useContext)(kn);if(void 0===e)throw new Error(\"useScrollToBottomContext must be used inside ScrollToBottomProvider\");return e};const Tn=require(\"formik\");var An;!function(e){e.Skills=\"skills\",e.SkillsV2=\"skillsV2\",e.Jobs=\"jobs\",e.Languages=\"languages\",e.ConversationRating=\"conversationRating\",e.Countries=\"countries\",e.PreferredJobTitle=\"preferredJobTitle\",e.Location=\"location\",e.Industries=\"industries\"}(An||(An={}));var Nn={CH:\"ch\",DE:\"de\",ES:\"es\",GB:\"gb\",IT:\"it\",US:\"us\"};const On={wrapper:\"E3yyt7So5UKinVhPhlyp\",expanded:\"HTPyplJRvq6ZFg3byFEQ\",autoComplete:\"q2Ui9UJeTPwEYRecPv96\",buttonContainer:\"R__fBhRsC5TIzsVGXCP6\",secondary:\"nMXORweJoYq4jmgJgGeE\",selectedItems:\"_z6Mwt3Gt2CQ7LlYSZSy\",loaderContainer:\"EiplTiC_2ROLEFxWNDSn\",content:\"_TJrLku1L8et9z8AVmhe\",searchBox:\"Gw5vokhDElMr9nbiQdjT\",sendButton:\"bJfwgLc6Xtd01KvLGye9\",closeButton:\"Ras_W0pVIGrYmE84igMc\",list:\"WDLnguMqwhY6pL0yRG2A\",numberInput:\"lWosjZupVp78GCGxPyqf\",autoCompleteWithCategories:\"m2jcNTn5a5djQk7BeQmI\",confirmation:\"azmDWL7UTBz_GRTU3VY6\",title:\"KtSg6Oiuv2LkCat6GUlp\",titleText:\"okUalsroDeZ8kwaL2vNV\",chipContainer:\"E3ay6i1I5QlO8nFUrG4Y\",chip:\"UAKgkoU2oHw2oISB1voj\",isExpanded:\"Zvp_iQLoJcd1ZNNM4nWA\"},Mn=require(\"lodash.debounce\");var In=t.n(Mn);const Dn=require(\"@mui/icons-material/Search\");var Rn=t.n(Dn);const Fn=require(\"@mui/icons-material/HighlightOff\");var Bn=t.n(Fn);const Pn=\"moZd1OD677tua79okLeP\",qn=\"_4f8i5gsZVRTUskJWcKn\",zn=\"S1i_5CvGjBbDDSZgyqYI\",Ln=\"zaTUZvK0_W6eC5cqlpPk\";const Vn=function(e){var n,t=e.id,i=e.placeholder,r=e.onChange,s=e.onClear,l=e.isLoading,u=(0,o.__read)((0,le.useState)(\"\"),2),c=u[0],d=u[1],m=he().isBotExpanded;return(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(Pn,(n={},n[Ln]=m,n))},{children:[(0,a.jsx)(Rn(),{}),(0,a.jsx)(\"input\",{id:t,value:c,onChange:function(e){d(e.target.value),r(e.target.value)},placeholder:i}),c&&!l&&(0,a.jsx)(\"button\",(0,o.__assign)({className:Ue()(sn,qn),onClick:function(){d(\"\"),r(\"\"),s()}},{children:(0,a.jsx)(Bn(),{})})),l&&(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(\"tag-ds\",zn)},{children:(0,a.jsx)($e,{})}))]}))},Un=\"kG_jbVDidmToh6BIhbWa\",Yn=\"JEbpsGWZYu9ucPd1BRWV\";const Gn=function(e){var n,t,i=(0,o.__read)((0,Tn.useField)(e),3),r=i[0],s=i[1],l=i[2],u=e.onChange,c=s.touched&&s.error;return(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(en,an,Un,(n={},n[rn]=c,n))},{children:[(0,a.jsxs)(\"label\",{children:[(0,a.jsx)(\"input\",(0,o.__assign)({type:\"checkbox\",className:Ue()((t={},t[rn]=c,t))},r,e,{value:r.value,checked:r.value,onChange:function(e){l.setValue(e.target.checked),l.setTouched(!0),null==u||u(e.target.checked)}})),null==e?void 0:e.label]}),c&&(0,a.jsx)(\"div\",(0,o.__assign)({className:Yn},{children:s.error}))]}))},Jn=require(\"@mui/icons-material/Add\");var Wn=t.n(Jn);const Kn=require(\"@mui/icons-material/Remove\");var Hn=t.n(Kn);const Qn=\"Fo79ihq9EzaisYStY2B1\",Zn=\"oJxzzmNsFYTn920z_MrU\",Xn=\"yTfx3_QTgnBVFIf_AEP2\";const $n=function(e){var n=(0,o.__read)((0,Tn.useField)(e),3),t=n[0],i=(n[1],n[2]),r=function(n){i.setValue(Number(n)),null==e||e.onChange(Number(n))},s=/[0-9]|Backspace|Delete/;return(0,a.jsxs)(\"div\",(0,o.__assign)({className:Qn},{children:[(0,a.jsx)(\"label\",(0,o.__assign)({className:Zn},{children:e.label})),(0,a.jsxs)(\"div\",(0,o.__assign)({className:Xn},{children:[(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",onClick:function(){return e.min?t.value-1>e.min&&r(t.value-1):t.value>0&&r(t.value-1)}},{children:(0,a.jsx)(Hn(),{})})),(0,a.jsx)(\"input\",{type:\"text\",value:t.value||0,onChange:function(e){return r(Number(e.target.value))},onKeyDown:function(e){return!s.test(e.key)&&e.preventDefault()}}),(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",onClick:function(){return e.max?!(t.value===e.max)&&r(t.value+1):r(t.value+1)}},{children:(0,a.jsx)(Wn(),{})}))]}))]}))};var et=function(e){var n=e.isSuccess,t=e.inputFor,i=e.singleValue,l=(0,s.useTranslation)(\"cxbot\").t,u=(0,Tn.useFormikContext)(),c=u.setFieldValue,d=u.resetForm,m=u.values,v=(0,r.useSelector)((function(e){return e.autoComplete})).currentOptions;return n&&0===(null==v?void 0:v.length)?(0,a.jsx)(\"div\",(0,o.__assign)({className:On.listItem},{children:l(\"noResultsFound\")})):(0,a.jsx)(a.Fragment,{children:null==v?void 0:v.map((function(e){return(0,a.jsxs)(\"div\",(0,o.__assign)({className:On.listItem},{children:[i?(0,a.jsxs)(\"label\",{children:[(0,a.jsx)(\"input\",{type:\"radio\",name:\"radio\",onChange:function(n){return(0,o.__awaiter)(void 0,void 0,void 0,(function(){return(0,o.__generator)(this,(function(t){return n&&(d(),c(e.value,!0,!0)),[2]}))}))}}),(0,a.jsx)(\"span\",{children:e.label})]}):(0,a.jsx)(Gn,{label:e.label,name:e.value,onChange:function(n){n?t===An.SkillsV2?c(\"\".concat(e.value,\".years\"),0,!0):c(\"\".concat(e.value),!0,!0):c(\"\".concat(e.value),!1,!0)}}),t===An.SkillsV2&&m[e.value]&&(0,a.jsx)(\"div\",(0,o.__assign)({className:On.numberInput},{children:(0,a.jsx)($n,{label:\"\".concat(l(\"yearsOfExperience\"),\" *\"),name:\"\".concat(e.value,\".years\"),boundaries:{min:0}})}))]}),e.value)}))})},nt=function(){var e,n,t=(0,s.useTranslation)(\"cxbot\").t,i=En().scrollToBottom,l=(0,r.useSelector)((function(e){return e.autoComplete})).allOptions,u=(0,Tn.useFormikContext)(),c=u.setFieldValue,d=u.values;return(0,le.useEffect)((function(){i()}),[d]),0===(null===(e=Object.keys(d))||void 0===e?void 0:e.length)?null:(0,a.jsx)(\"div\",(0,o.__assign)({className:On.selectedItems},{children:null===(n=Object.keys(d))||void 0===n?void 0:n.map((function(e){return d[e]&&(0,a.jsxs)(\"div\",(0,o.__assign)({tabIndex:0,className:on,onClick:function(){return c(e,!1,!0)}},{children:[(0,a.jsx)(Bn(),{}),l.map((function(n){return n.value===e&&d[e].years?(0,a.jsx)(\"span\",{children:\"\".concat(n.label,\" \").concat(t(\"with\"),\" \").concat(d[e].years,\" \").concat(t(\"years\"))},n.value):n.value===e?(0,a.jsx)(\"span\",{children:null==n?void 0:n.label},n.value):null}))]}),e)}))}))};const tt=function(e){var n=e.inputFor,t=e.placeholderText,i=(e.addText,e.skipText),l=e.getAutoCompleteData,u=e.singleValue,c=e.onSkip,d=(0,s.useTranslation)(\"cxbot\").t,m=(0,r.useDispatch)(),v=ve().model,f=(0,Tn.useFormikContext)(),p=f.isValid,h=f.values,g=f.submitForm,y=En().scrollToBottom,b=(0,o.__read)((0,le.useState)(!1),2),x=b[0],_=b[1],w=(0,o.__read)((0,le.useState)(!1),2),C=w[0],j=w[1],k=(0,o.__read)((0,le.useState)(),2),S=k[0],N=k[1],O=l.trigger,M=(0,r.useSelector)((function(e){return e.autoComplete})).currentOptions;(0,le.useEffect)((function(){y()}),[M]);var I=(0,le.useCallback)((function(e){return(0,o.__awaiter)(void 0,void 0,void 0,(function(){var n,t,i;return(0,o.__generator)(this,(function(o){switch(o.label){case 0:return e.length>2?(_(!0),[4,O({searchParam:e,language:v.language})]):[3,2];case 1:return n=o.sent(),t=n.data,i=n.isSuccess,j(i),_(!1),m(T(t)),[2,m(E(t))];case 2:return[2,m(A())]}}))}))}),[m,v.language,O]),D=(0,le.useMemo)((function(){return In()(I,500)}),[I]);return(0,a.jsxs)(\"div\",(0,o.__assign)({className:On.content},{children:[h&&!u&&(0,a.jsx)(nt,{}),(0,a.jsx)(\"div\",(0,o.__assign)({className:On.searchBox},{children:(0,a.jsx)(Vn,{id:\"placeholderText\",placeholder:t,onChange:D,onClear:function(){return m(A())},isLoading:x})})),(0,a.jsx)(\"div\",(0,o.__assign)({className:On.list},{children:(0,a.jsx)(et,{isSuccess:C,inputFor:n,singleValue:u})})),(0,a.jsx)(\"div\",(0,o.__assign)({className:On.buttonContainer},{children:p?(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",id:\"buttonConfirm\",className:On.sendButton,onClick:function(){N((0,o.__assign)((0,o.__assign)({},S),h)),g()}},{children:d(\"confirm\")})):i&&(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",id:\"buttonSkip\",className:On.secondary,onClick:c},{children:i}))}))]}))};const it=function(e,n,t){var i,o,a={};return(null===(i=Object.keys(n))||void 0===i?void 0:i.every((function(e){return!1===n[e]})))&&(a.error=t(\"atleastOneRequired\")),e===An.SkillsV2&&(null===(o=Object.keys(n))||void 0===o||o.forEach((function(e){!n[e]||n[e].years&&0!==Number(n[e].years)||(a[\"\".concat(e,\".years\")]=t(\"required\"))}))),a};const ot=require(\"@mui/icons-material/ExpandLess\");var at=t.n(ot);const rt=require(\"@mui/icons-material/ExpandMore\");var st=t.n(rt);const lt=\"pIWaXLOyWdCABvPkyL5v\",ut=\"LiCZBoMf_09uto6di1av\",ct=\"yi5YC79rCBm9uncsbaon\",dt=\"v0CgCMun9oUbOmjHUWce\";const mt=function(e){var n,t=e.header,i=e.content,r=(0,o.__rest)(e,[\"header\",\"content\"]),s=(0,o.__read)((0,le.useState)(!1),2),l=s[0],u=s[1];return(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(lt,(n={},n[dt]=l,n))},r,{children:[(0,a.jsxs)(\"button\",(0,o.__assign)({className:ut,onClick:function(){return u(!l)}},{children:[t,\" \",l?(0,a.jsx)(at(),{}):(0,a.jsx)(st(),{})]})),l&&(0,a.jsx)(\"div\",(0,o.__assign)({className:ct},{children:i}))]}))};const vt=function(e){var n,t,i=e.addText,s=e.skipText,l=e.onSkip,u=(0,r.useDispatch)(),c=ve().model,d=En().scrollToBottom,m=(0,Tn.useFormikContext)(),v=m.setFieldValue,f=m.values,p=m.isValid,g=m.submitForm,y=h(null==c?void 0:c.language,{skip:!(null==c?void 0:c.language)}),b=y.data,x=y.isLoading,_=(0,le.useMemo)((function(){return null==b?void 0:b.reduce((function(e,n){return e.push.apply(e,(0,o.__spreadArray)([],(0,o.__read)(n.values),!1)),e}),[])}),[b]);return(0,le.useEffect)((function(){_&&u(T(_))}),[_,u]),(0,le.useEffect)((function(){d()}),[b,f]),x?(0,a.jsx)(\"div\",(0,o.__assign)({className:On.loaderContainer},{children:(0,a.jsx)($e,{})})):(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(On.content)},{children:[(null===(n=Object.keys(f))||void 0===n?void 0:n.length)>0&&(0,a.jsx)(\"div\",(0,o.__assign)({className:On.selectedItems},{children:null===(t=Object.keys(f))||void 0===t?void 0:t.map((function(e){return f[e]&&(0,a.jsxs)(\"div\",(0,o.__assign)({tabIndex:0,className:on,onClick:function(){return v(e,!1,!0)}},{children:[(0,a.jsx)(Bn(),{}),_.map((function(n){return n.value===e?(0,a.jsx)(\"span\",{children:null==n?void 0:n.text},n.value):null}))]}),e)}))})),(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(On.list,On.autoCompleteWithCategories)},{children:null==b?void 0:b.map((function(e){var n;return(0,a.jsx)(mt,{tabIndex:0,header:e.name,content:null===(n=e.values)||void 0===n?void 0:n.map((function(e){return(0,a.jsx)(Gn,{label:e.text,name:e.value,onChange:function(n){return v(\"\".concat(e.value),n,!0)}},e.value)}))},e.name)}))})),(0,a.jsx)(\"div\",(0,o.__assign)({className:On.buttonContainer},{children:p?(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",className:On.sendButton,onClick:g},{children:i})):s&&(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",className:On.secondary,onClick:l},{children:s}))}))]}))};const ft=function(e){var n,t,i,l,u,c,d,m,h,_,w,C,j,k,S,E,T=e.inputFor,O=e.inputData,M=e.singleValue,I=e.onClose,D=(0,s.useTranslation)(\"cxbot\").t,R=Pe(),F=(0,r.useDispatch)(),B=ve().model,P=function(e){var n=(0,s.useTranslation)(\"cxbot\").t,t=Pe(),i=ve().model,o=(0,r.useSelector)((function(e){return e.autoComplete})).allOptions;return function(a){var r,s,l,u,c;switch(e){case An.Skills:case An.Jobs:case An.Languages:return t({ids:\"[\".concat(Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){return\"\".concat(null==e?void 0:e.trim(),\": true\")})).join(\",\"),\"]\"),names:\"[\".concat(Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){var n;return\"\".concat(null===(n=null==o?void 0:o.find((function(n){return n.value===e})))||void 0===n?void 0:n.label,\": true\")})).join(\",\"),\"]\")},\"[\".concat(Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){return\"\".concat(e,\" : true\")})).join(\", \"),\"]\"),Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){var n;return\"\".concat(null===(n=null==o?void 0:o.find((function(n){return n.value===e})))||void 0===n?void 0:n.label)})).join(\", \"));case An.Industries:return t({ids:\"[\".concat(Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){return\"\".concat(null==e?void 0:e.trim(),\": true\")})).join(\",\"),\"]\"),names:\"[\".concat(Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){var n;return\"\".concat(null===(n=null==o?void 0:o.find((function(n){return n.value===e})))||void 0===n?void 0:n.text,\": true\")})).join(\",\"),\"]\")},\"[\".concat(Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){return\"\".concat(e,\" : true\")})).join(\", \"),\"]\"),Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){var n;return\"\".concat(null===(n=null==o?void 0:o.find((function(n){return n.value===e})))||void 0===n?void 0:n.text)})).join(\", \"));case An.SkillsV2:var d=[];null===(r=Object.keys(a))||void 0===r||r.forEach((function(e){var n=e,t=a[n].years;t>0&&d.push({skillCode:n,years:t,months:0})}));var m=null===(s=Object.keys(a))||void 0===s?void 0:s.map((function(e){var t,i=e,r=a[i].years;return r>0?\"\".concat(null===(t=o.find((function(e){return e.value===i})))||void 0===t?void 0:t.label,\" \").concat(n(\"with\"),\" \").concat(r,\" \").concat(n(\"years\"),\", \"):\"\"})).join(\"\");return null==t?void 0:t(d,m,m);case An.Countries:return t({ids:\"[\".concat(Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){return\"\".concat(null==e?void 0:e.trim(),\": true\")})).join(\",\"),\"]\"),names:\"[\".concat(Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){var n;return\"\".concat(null===(n=null==o?void 0:o.find((function(n){return n.value===e})))||void 0===n?void 0:n.countryEnglishName,\": true\")})).join(\",\"),\"]\")},\"[\".concat(Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){return\"\".concat(e,\" : true\")})).join(\", \"),\"]\"),Object.keys(a).filter((function(e){return!0===a[e]})).map((function(e){var n;return\"\".concat(null===(n=null==o?void 0:o.find((function(n){return n.value===e})))||void 0===n?void 0:n.label)})).join(\", \"));case An.PreferredJobTitle:var v=Object.keys(a).find((function(e){return!0===a[e]})),f=null===(l=null==o?void 0:o.find((function(e){return e.value===v})))||void 0===l?void 0:l.label;return t(f,f,f);case An.Location:var p=Object.keys(a).find((function(e){return!0===a[e]})),h=null==o?void 0:o.find((function(e){return e.value===p}));if([Nn.CH,Nn.IT].includes(null===(u=i.language)||void 0===u?void 0:u.slice(-2))){var g=h.country,y=h.city,b=h.postalCode,x=h.street,_=h.streetNumber,w=h.countryCode;return t({country:g,city:y,postalCode:b,streetNumber:_,street:x,countryCode:w},\"\".concat(_||\"\",\" \").concat(x||\"\",\", \").concat(b||\"\",\", \").concat(y||\"\",\", \").concat(g||\"\"),\"\".concat(_||\"\",\" \").concat(x||\"\",\", \").concat(b||\"\",\", \").concat(y||\"\",\", \").concat(g||\"\"))}if([Nn.GB].includes(null===(c=i.language)||void 0===c?void 0:c.slice(-2))){g=h.country,y=h.city;var C=h.county,j=h.zipCode,k=(w=h.countryCode,h.extendedPostalCode);return t({country:g,city:y,county:C,zipCode:j,countryCode:w,extendedPostalCode:k},\"\".concat(y,\", \").concat(k,\", \").concat(C,\", \").concat(g),\"\".concat(y,\", \").concat(k,\", \").concat(C,\", \").concat(g))}return g=h.country,y=h.city,j=h.zipCode,w=h.countryCode,t({country:g,city:y,zipCode:j,countryCode:w},\"\".concat(y,\", \").concat(j,\", \").concat(g),\"\".concat(y,\", \").concat(j,\", \").concat(g));default:return null}}}(T),q=(0,o.__read)((0,le.useState)(!1),2),z=q[0],L=q[1],V=function(e){var n=ve().model,t=(0,o.__read)(v(),2),i=t[0],a=t[1].data,r=(0,o.__read)(y(),2),s=r[0],l=r[1].data,u=(0,o.__read)(f(),2),c=u[0],d=u[1].data,m=(0,o.__read)(p(),2),h=m[0],_=m[1].data,w=(0,o.__read)(g(),2),C=w[0],j=w[1].data,k=(0,o.__read)(b(),2),S=k[0],E=k[1].data,T=(0,o.__read)(x(),2),A=T[0],N=T[1].data;return function(){var t;switch(e){case An.Skills:case An.SkillsV2:return{trigger:i,data:a};case An.Countries:return{trigger:s,data:l};case An.Jobs:return{trigger:c,data:d};case An.PreferredJobTitle:return{trigger:h,data:_};case An.Languages:return{trigger:C,data:j};case An.Location:return[Nn.CH,Nn.IT].includes(null===(t=n.language)||void 0===t?void 0:t.slice(-2))?{trigger:A,data:N}:{trigger:S,data:E};default:return null}}()}(T),U=En(),Y=U.scrollContainerRef,G=U.scrollToBottom,J=he().isBotExpanded;(0,le.useLayoutEffect)((function(){Y.current&&(Y.current.style.height=\"calc(100% - 90px)\")}),[Y]),(0,le.useEffect)((function(){G()}),[]);var W=(null===(u=null===(l=O.addText)||void 0===l?void 0:l.find((function(e){return e.languageCode===B.language})))||void 0===u?void 0:u.text)||(null===(d=null===(c=O.addText)||void 0===c?void 0:c[0])||void 0===d?void 0:d.text),K=(null===(h=null===(m=O.skipText)||void 0===m?void 0:m.find((function(e){return e.languageCode===B.language})))||void 0===h?void 0:h.text)||(null===(w=null===(_=O.skipText)||void 0===_?void 0:_[0])||void 0===w?void 0:w.text),H=(null===(j=null===(C=O.placeholderText)||void 0===C?void 0:C.find((function(e){return e.languageCode===B.language})))||void 0===j?void 0:j.text)||(null===(S=null===(k=O.placeholderText)||void 0===k?void 0:k[0])||void 0===S?void 0:S.text),Q=function(){F(A()),F(N()),I()},Z=function(){R({ids:\"\",names:\"\"},K),Q()},X=(0,le.useMemo)((function(){var e,n={};return null===(e=null==V?void 0:V.data)||void 0===e||e.forEach((function(e){return n[e.value]=!1})),n}),[null==V?void 0:V.data]);return z?(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(On.wrapper,On[null===(E=null==B?void 0:B.brand)||void 0===E?void 0:E.toLowerCase()],(t={},t[On.expanded]=J,t))},{children:(0,a.jsx)(We,(0,o.__assign)({className:Ue()(On.autoComplete,(i={},i[On.expanded]=J,i))},{children:(0,a.jsx)(Tn.Formik,(0,o.__assign)({initialValues:X,onSubmit:function(e){P(e),Q()},validate:function(e){return it(T,e,D)},validateOnMount:!0},{children:(0,a.jsx)(Tn.Form,{children:T===An.Industries?(0,a.jsx)(vt,{addText:W,skipText:K,onSkip:Z}):(0,a.jsx)(tt,{placeholderText:H,addText:W,skipText:K,getAutoCompleteData:V,inputFor:T,singleValue:M,onSkip:Z})})}))}))})):(0,a.jsx)(\"div\",(0,o.__assign)({className:On.autoComplete},{children:(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(On.buttonContainer,(n={},n[On.expanded]=J,n))},{children:[(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",id:\"addText\",className:On.sendButton,onClick:function(){return L(!0)}},{children:W})),K&&(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",id:\"skipText\",className:On.secondary,onClick:Z},{children:K}))]}))}))},pt={botContainer:\"kiqKrdhVKjRIFayo7VM_\",materialIcons:\"QRtZ2lgzAZBzv9uoO4kG\",loader:\"zxbbpzt9GNwuyA3hWvOi\",accessibleText:\"P8LJHjGlLAg9zPmcznB5\",header:\"nVWvLdT89reVAD40cSn3\",banner:\"DsdbBJti7zyA0BwPLn8D\",logo:\"fyzP5J5FAefIwRUxFpq4\",title:\"Neqot7IRgk1ibua0dr4D\",isWhiteLabel:\"MJn0iQV1DhfrqS0TglLh\",controls:\"Ohdi4oRhxS8KmdtYcvD0\",expandIcon:\"qX5XbkA8jmPmBkmeHxiT\",progress:\"XEy1RHFmHYWnHeu9U1j4\",progressBar:\"I7yatK3PMbW_ARYypmig\",progressValue:\"dg9cWRicWmVhtwwUlO3t\",percentage:\"HKEXzBIP_lqxy8raiLHl\",interviewIntroduction:\"HJE6lI4txRhCnNalVWM_\",scrollContainer:\"tEaZ3iVRdYaC8VKqgY0K\",chatContainer:\"kfaG5xOF73ySfAEjAbqf\",chatBubble:\"QNwAEZZu73ldvc10kOy_\",isInputOpen:\"DBbUacaOow3ygxNX27Hp\",isAutoCompleteOpen:\"Ac95dD5534CXLmJ_D4iM\",chatBubbleContainer:\"tEesd1_pefvOO4LkisT1\",fromBot:\"qWVzd9uYDqIIOCmvC4gV\",link:\"yyr4rK20Lql285wxgEat\",openInNewIcon:\"iz2l3Q9XyM3C8CFmExPg\",hasContent:\"gcIYJQIhnku1ryYDPZUD\",fromUser:\"G1hyOAcBx2Ox8wPAXrgE\",hasFeedbackAttachment:\"Wj2LDcieE1ByuQ8cquT5\",chatBubbleItem:\"DUaFDhAJ6zPZuh6bBJ7S\",attachment:\"IXbCvTxpFR9H_lvE_tGh\",adaptiveCard:\"DU0091h0rV9hzdj9bS0A\",expanded:\"JdgC96bgGI4jcZYBZ26b\",feedback:\"kZjXdUieGHjyFEORqfUU\",timestamp:\"KSoqDJ6lbUt6Kj8CDUzU\",retryLink:\"b198sRtR8o7CYF0s31kN\",input:\"gUEnfGv9UEVQLFE9Pnju\",typingIndicator:\"DXb5ERjd_jhxGtpUAfmw\",errorIndicator:\"ZxIYBuzF4BfNRe6VVwzo\",isPdfDownloadEnabled:\"NdAAJtrh4ne7rjNTMKre\",saveButton:\"zKt7TPGnOlEd4i3oJ9Iw\",sendButton:\"XmzzHis2RBr3lDzKS2aR\",suggestedActions:\"P9y8ZhP5jEttaFFmgmJL\",dropdownContainer:\"GmPeqxaybABV93FV1z06\",dropdown:\"iNddzxYUjd7Vfwp7gneC\",buttonContainer:\"mloSGiTcxadyRQTO_erY\",isBotExpanded:\"G8BFt9O2Pt9t8vLg8_Cn\",adeccofull:\"BhgeS4_Br1MAz3lb1vcO\",isExpanded:\"n780v5MNueqZNO8e1joI\",text:\"CEtDSnFLWxoVttWwxZnV\",buttonBar:\"uDg4m_C1j_9qDRtAvxfG\"},ht=\"nlZ1mI6tsMKMqYF04qZr\",gt=\"EbYmnW2KlM9XeYMZXxyb\";var yt=function(){var e=(0,s.useTranslation)(\"accessibility\").t,n=(0,r.useDispatch)(),t=(0,le.useRef)(null),i=(0,o.__read)((0,jn.useAtBottom)(),1)[0],l=(0,o.__read)((0,jn.useAnimating)(),1)[0],u=(0,jn.useScrollToBottom)(),c=(0,r.useSelector)((function(e){return e.cxBot})).newMessageCount;return(0,le.useEffect)((function(){var e;t.current&&(null===(e=null==t?void 0:t.current)||void 0===e||e.focus())}),[c]),l||i||0===c?null:(0,a.jsxs)(\"button\",(0,o.__assign)({className:ht,type:\"button\",role:\"alert\",\"aria-live\":\"polite\",tabIndex:1,ref:t,\"aria-label\":\"\".concat(e(\"newMessages\",{newMessageCount:c}),\"}\"),onClick:function(){u(),n(J())}},{children:[(0,a.jsx)(st(),{}),(0,a.jsx)(\"div\",(0,o.__assign)({className:gt},{children:c}))]}))};const bt=ue().memo(yt),xt=\"jkOUg1HqOV8UzvFbF_fe\",_t=\"gqzKwJz1eoareSvTV9Xw\";const wt=function(e){var n,t,i=(0,o.__read)((0,Tn.useField)(e),3),r=i[0],s=i[1],l=i[2],u=(0,le.useRef)(null),c=s.touched&&s.error;return(0,le.useLayoutEffect)((function(){u.current.style.height=\"inherit\",u.current.style.height=\"\".concat(Math.max(u.current.scrollHeight,70),\"px\")}),[r.value]),(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(en,an,xt,(n={},n[rn]=c,n))},{children:[(0,a.jsxs)(\"label\",(0,o.__assign)({className:tn},{children:[null==e?void 0:e.label,(0,a.jsx)(\"textarea\",(0,o.__assign)({className:Ue()((t={},t[rn]=c,t)),ref:u},r,e,{onChange:function(n){var t;l.setValue(n.target.value),null===(t=e.onChange)||void 0===t||t.call(e,n)}}))]})),c&&(0,a.jsx)(\"div\",(0,o.__assign)({className:_t},{children:s.error}))]}))},Ct=\"fG9kEmg4eHSuF8rUkKep\",jt=\"WLwYek9lpMJC8i5nIvm2\",kt=\"Az6AWuCFI0PdnGSeNLez\",St=\"X8aD7ewK0h_eZXJyabKB\",Et=\"kDhUy58blzb88dTdQIIS\",Tt=\"QLtCrQs_zacAfIlZUGwn\",At=\"cYBwnAZ64hxMY3DGeaAW\";const Nt=function(e){var n,t=e.info,i=e.success,r=e.error,s=e.warning,l=(e.header,e.body,e.children);return(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ct},{children:[(0,a.jsx)(\"div\",{className:Ue()(jt,(n={},n[Et]=t,n[kt]=i,n[St]=r,n[Tt]=s,n))}),(0,a.jsx)(\"div\",(0,o.__assign)({className:At},{children:l}))]}))},Ot=require(\"@mui/icons-material/ThumbUpOffAlt\");var Mt,It=t.n(Ot),Dt=function(e){var n,t=ve().model,i=Rt().lastMessage,o=(0,le.useMemo)((function(){var n;return null===(n=null==e?void 0:e.attachments)||void 0===n?void 0:n.find((function(e){return e.contentType===F.HERO}))}),[e]),a=(0,le.useMemo)((function(){var n;return(null==t?void 0:t.entityId)!==(null===(n=null==e?void 0:e.from)||void 0===n?void 0:n.id)}),[null===(n=null==e?void 0:e.from)||void 0===n?void 0:n.id,t]),r=(0,le.useMemo)((function(){var n;return(null===(n=null==e?void 0:e.attachments)||void 0===n?void 0:n.length)>0}),[e]),s=(0,le.useMemo)((function(){var n,t;return(null===(n=null==e?void 0:e.attachments)||void 0===n?void 0:n.length)>0&&(null===(t=null==e?void 0:e.attachments)||void 0===t?void 0:t.find((function(e){return e.contentType===F.FEEDBACK})))}),[e]),l=(0,le.useMemo)((function(){var n;return null===(n=null==e?void 0:e.attachments)||void 0===n?void 0:n.find((function(e){return e.contentType===F.FEEDBACK}))}),[e]),u=(0,le.useMemo)((function(){return(null==e?void 0:e.text)||r}),[e,r]),c=(0,le.useMemo)((function(){var n,t;return(null==e?void 0:e.id)===(null==i?void 0:i.id)&&((null===(t=null===(n=null==e?void 0:e.suggestedActions)||void 0===n?void 0:n.actions)||void 0===t?void 0:t.length)>0||o)}),[e,o,null==i?void 0:i.id]);return{heroCardAttachment:o,isFromBot:a,hasContent:u,hasAttachements:r,hasFeedbackAttachment:s,feedbackAttachment:l,hasSuggestedActions:c}},Rt=function(){var e=(0,r.useSelector)((function(e){return e.cxBot})).conversation,n=(0,le.useMemo)((function(){var n;return null===(n=e.filter((function(e){return e.type===D.MESSAGE})).reverse())||void 0===n?void 0:n[0]}),[e]),t=(0,le.useMemo)((function(){var n;return null===(n=e.filter((function(e){return e.type===D.EVENT})).reverse())||void 0===n?void 0:n[0]}),[e]),i=(0,le.useMemo)((function(){return e[(null==e?void 0:e.length)-1]}),[e]),o=(0,le.useMemo)((function(){return(null==i?void 0:i.name)===R.CONVERSATIONRATING}),[i]),a=e.find((function(e){return e.name===R.REDIRECTRCWITHNPS}))||null;return{lastMessage:n,lastEvent:t,lastItem:i,isNPSOpen:o,eventNpsRedirect:a}};const Ft=\"r8UptIDti4FS8SR6ZhJA\",Bt=\"Ln4518dco94CKR4E6Jo3\",Pt=\"l7OGPUAU5xd2VRaWzO3t\",qt=\"Cvw9g2IAvRHrAm4TNS0o\",zt=\"Xy_ymt2Ws_U2RD8nVXEk\",Lt=\"fznfHLnP2gk70pDFXm5C\",Vt=\"g8c9qSdKMu6qLEWdNMdJ\",Ut=\"Gez5qr6pcRf7BWQ_CZOg\",Yt=\"Y4A4KywIZY4tgpQPF3bo\",Gt=\"YONSgymT2KS9XvYYyFID\",Jt=\"qAI9ZA0Jm4qtqcPovD3U\",Wt=\"xDn4nOy5PSngo8qKesKT\",Kt=\"fxEUXcEVQpVQrZrO8ABt\",Ht=\"Dg5bLeWl0S8jIqZtIKL_\",Qt=\"De_zd2wcLzg07lznFJKo\",Zt=\"nPI2u6NPb8U0vbP99kic\";const Xt=function(e){var n=e.loaderText;return(0,a.jsxs)(We,(0,o.__assign)({className:Zt,role:\"main\"},{children:[(0,a.jsx)(\"h4\",(0,o.__assign)({\"aria-label\":n},{children:n})),(0,a.jsx)(wn,{})]}))};var $t=function(e){var n,t,i=e.tootipText,r=e.onClick,s=e.isSelected,l=(0,o.__read)((0,le.useState)(!1),2),u=l[0],c=l[1],d=he().isBotExpanded;return(0,a.jsx)(\"div\",(0,o.__assign)({onMouseEnter:function(){return c(!0)},onMouseLeave:function(){return c(!1)}},{children:s?(0,a.jsx)(\"button\",(0,o.__assign)({className:Ue()(sn,Jt,(n={},n[Lt]=d,n)),onClick:function(){return r(i)}},{children:(0,a.jsx)(\"div\",{className:Wt})})):(0,a.jsxs)(\"button\",(0,o.__assign)({className:Ue()(sn,(t={},t[Lt]=d,t)),onClick:function(){return r(i)}},{children:[i,u&&(0,a.jsx)(\"div\",(0,o.__assign)({className:Qt},{children:i}))]}))}))},ei=function(e){var n=e.label,t=e.setCommentValue,i=(0,Tn.useFormikContext)().values;return(0,le.useEffect)((function(){t(null==i?void 0:i.comment)}),[i]),(0,a.jsx)(wt,{name:\"comment\",label:n})};const ni=function(e){var n,t,i=e.inputData,r=(0,o.__read)((0,le.useState)(!0),2),l=r[0],u=r[1],c=(0,s.useTranslation)(\"cxbot\").t,d=(0,o.__read)((0,le.useState)(null),2),m=d[0],v=d[1],f=qe(),p=En(),h=p.scrollContainerRef,g=p.scrollToBottom,y=he().isBotExpanded,b=ve().model,x=Rt(),_=x.isNPSOpen,w=x.eventNpsRedirect,C=(0,o.__read)((0,le.useState)(\"\"),2),j=C[0],k=C[1],S=(0,o.__read)((0,le.useState)(!1),2),E=S[0],T=S[1],A=function(e){return window.location.href=e},N=function(e,n,t){return new Promise((function(i){return setTimeout((function(){return i(e(n))}),t)}))},O=function(e){var n,t;\"submit\"===e&&f(\"feedback\",{feedbackType:i.feedbackType||null,feedbackValue:m,campaignId:b.campaignId,conversationId:(null==b?void 0:b.conversationId)||i.conversation.id,questionText:i.feedbackMessage||null,language:b.language||i.locale,answerMessage:i.feedbackAnswer||null,suggestedActions:i.suggestedActions,comment:j,updatesConversationStatus:(null==i?void 0:i.updatesConversationStatus)||!1}),(null===(n=null==w?void 0:w.value)||void 0===n?void 0:n.url)&&(T(!0),N(A,null===(t=null==w?void 0:w.value)||void 0===t?void 0:t.url,2e3))},M=function(e){var n;return(null===(n=null==e?void 0:e.value)||void 0===n?void 0:n.url)?(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ht},{children:[(0,a.jsx)(\"button\",(0,o.__assign)({disabled:null===m,onClick:function(){return O(\"submit\")}},{children:c(\"common:submit\")})),(0,a.jsx)(\"button\",(0,o.__assign)({disabled:null!==m,onClick:function(){return O(\"skip\")}},{children:c(\"common:skip\")}))]})):(0,a.jsx)(\"button\",(0,o.__assign)({disabled:null===m,onClick:function(){return O(\"submit\")}},{children:c(\"common:submit\")}))};return(0,le.useLayoutEffect)((function(){h.current&&(h.current.style.height=\"calc(100% - 90px)\")}),[h]),E?(0,a.jsx)(Xt,{loaderText:c(\"loaderRedirect\")}):l?(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(\"tag-ds\",zt,(n={},n[Lt]=y,n))},{children:(0,a.jsxs)(We,{children:[(0,a.jsxs)(\"div\",(0,o.__assign)({className:Vt},{children:[(0,a.jsx)(\"div\",{children:c(\"feedback:title\")}),(0,a.jsx)(\"button\",(0,o.__assign)({className:sn,type:\"button\",\"aria-label\":c(\"accessibility:close\"),onClick:function(){return(0,o.__awaiter)(void 0,void 0,void 0,(function(){var e,n;return(0,o.__generator)(this,(function(t){switch(t.label){case 0:return v(null),u(!1),(null===(e=null==w?void 0:w.value)||void 0===e?void 0:e.url)?(T(!0),[4,N(A,null===(n=null==w?void 0:w.value)||void 0===n?void 0:n.url,1e4)]):[3,2];case 1:t.sent(),t.label=2;case 2:return[2]}}))}))}},{children:(0,a.jsx)(mn(),{})}))]})),(0,a.jsx)(\"div\",(0,o.__assign)({className:Ut},{children:i.feedbackMessage})),(0,a.jsxs)(\"div\",(0,o.__assign)({className:Yt},{children:[(0,a.jsx)(\"div\",(0,o.__assign)({className:Gt},{children:null===(t=(0,o.__spreadArray)([],(0,o.__read)(Array(11).keys()),!1))||void 0===t?void 0:t.map((function(e){return(0,a.jsx)($t,{tootipText:e,onClick:function(e){return v(e)},isSelected:e===m},e)}))})),(0,a.jsxs)(\"div\",(0,o.__assign)({className:Kt},{children:[(0,a.jsx)(\"div\",{children:c(\"notLikely\")}),(0,a.jsx)(\"div\",{children:c(\"veryLikely\")})]})),m&&(0,a.jsx)(Tn.Formik,(0,o.__assign)({initialValues:{comment:\"\"},onSubmit:function(){}},{children:(0,a.jsx)(Tn.Form,{children:(0,a.jsx)(ei,{setCommentValue:k,label:c(\"ratingLeaveCommentOptional\")})})})),_&&m?M(_):w?M(w):null]}))]})})):(0,a.jsx)(Nt,(0,o.__assign)({show:!0,info:!0},{children:(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ft,role:\"button\",tabIndex:0,onClick:function(){u(!0),g()}},{children:[(0,a.jsxs)(\"div\",(0,o.__assign)({className:Bt},{children:[(0,a.jsx)(It(),{}),(0,a.jsx)(\"span\",(0,o.__assign)({className:Pt},{children:c(\"feedback:title\")}))]})),(0,a.jsx)(\"button\",(0,o.__assign)({className:Ue()(sn,qt),type:\"button\"},{children:(0,a.jsx)(st(),{})}))]}))}))},ti=require(\"marked\"),ii=require(\"html-react-parser\");var oi=t.n(ii);const ai=require(\"dompurify\");var ri=t.n(ai);const si=require(\"@mui/icons-material/ThumbDownOffAlt\");var li=t.n(si);const ui=\"y1PTbwZYSEgyrBt7DMhM\",ci=\"w2ttRoOOZ9QgnO52lo4d\",di=\"dqIQ_miycAV0zOgSvMsy\",mi=\"PBG5Dkr5aozoFSeBlccw\",vi=\"DEpYlAPNQCtK_tBUNPZw\",fi=\"Bs_HZzpPCMyAdvEgVaFM\",pi=\"tWwPcpBphlQdVP_DLWuA\",hi=\"s3g3jxSieUmqXZKLLuss\",gi=\"d25AWp0BFOktxs3rEVB1\",yi=\"tjgDG8hwyptI0sjkSete\";var bi=ue().createContext(void 0),xi=function(e){var n=e.children,t=(0,o.__read)((0,le.useState)(!0),2),i=t[0],r=t[1],s=(0,o.__read)((0,le.useState)(null),2),l=s[0],u=s[1],c=(0,le.useMemo)((function(){return{isFeebackFormOpen:i,setFeebackFormOpen:r,selectedIcon:l,setSelectedIcon:u}}),[i,l]);return(0,a.jsx)(bi.Provider,(0,o.__assign)({value:c},{children:n}))},_i=function(){var e=(0,le.useContext)(bi);if(void 0===e)throw new Error(\"useFeedbackContext must be used inside FeedbackContextProvider\");return e};const wi=require(\"yup\");const Ci=function(e){var n,t,i=e.attachment,r=(0,s.useTranslation)(\"feedback\").t,l=qe(),u=ve().model,c=_i(),d=c.selectedIcon,m=c.isFeebackFormOpen,v=c.setFeebackFormOpen,f=he().isBotExpanded,p=[{label:r(\"commentsForm.InadequateAnswers\"),value:\"InadequateAnswers\"},{label:r(\"commentsForm.MoreDetailsNeeded\"),value:\"MoreDetailsNeeded\"},{label:r(\"commentsForm.TechnicalProblem\"),value:\"TechnicalProblem\"}],h=function(e){var n,t;v(!1),l(\"feedback\",{feedbackType:\"ThumbsUpDown\",feedbackValue:\"down\",campaignId:u.campaignId,conversationId:null==u?void 0:u.conversationId,questionText:i.content.feedbackMessage,language:u.language,answerMessage:\"\",comment:(null==e?void 0:e.label)||(null==e?void 0:e.comments),category:(null==e?void 0:e.value)||\"FreeText\",isSilent:null===(n=null==i?void 0:i.content)||void 0===n?void 0:n.isSilent,updatesConversationStatus:(null===(t=i.content)||void 0===t?void 0:t.updatesConversationStatus)||!1})};return\"👎\"===d&&m&&!(null===(t=null==i?void 0:i.content)||void 0===t?void 0:t.isSilent)?(0,a.jsx)(\"div\",(0,o.__assign)({className:di},{children:(0,a.jsxs)(We,(0,o.__assign)({className:Ue()(mi,(n={},n[vi]=f,n))},{children:[(0,a.jsx)(\"button\",(0,o.__assign)({className:Ue()(sn,fi),onClick:function(){return v(!1)}},{children:(0,a.jsx)(mn(),{})})),(0,a.jsx)(Tn.Formik,(0,o.__assign)({initialValues:{comments:\"\"},onSubmit:h,validationSchema:wi.object().shape({comments:wi.string().required(r(\"validations.required\"))})},{children:(0,a.jsxs)(Tn.Form,{children:[(0,a.jsx)(\"div\",{children:r(\"commentsForm.title\")}),(0,a.jsx)(\"div\",(0,o.__assign)({className:hi},{children:null==p?void 0:p.map((function(e){return(0,a.jsx)(\"button\",(0,o.__assign)({className:gi,type:\"button\",onClick:function(){return h(e)}},{children:e.label}),e.value)}))})),(0,a.jsx)(wt,{name:\"comments\",label:r(\"commentsForm.comments\")}),(0,a.jsx)(\"p\",(0,o.__assign)({className:pi},{children:\"* \".concat(r(\"commentsForm.hint\"))})),(0,a.jsx)(\"button\",(0,o.__assign)({type:\"submit\"},{children:r(\"common:submit\")}))]})}))]}))})):null};const ji=function(e){var n=e.attachment,t=(0,s.useTranslation)(\"feedback\").t,i=qe(),r=ve().model,l=he().isBotExpanded,u=_i(),c=u.selectedIcon,d=u.setSelectedIcon,m=function(e,t){var o;d(t),i(\"feedback\",{feedbackType:\"ThumbsUpDown\",feedbackValue:e,campaignId:r.campaignId,conversationId:null==r?void 0:r.conversationId,questionText:n.content.feedbackMessage,language:r.language,answerMessage:\"\",comment:t,updatesConversationStatus:(null===(o=n.content)||void 0===o?void 0:o.updatesConversationStatus)||!1})};return c?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(\"div\",{className:Ue()(ln,yi)}),(0,a.jsx)(\"div\",(0,o.__assign)({className:ui},{children:(0,a.jsx)(\"div\",(0,o.__assign)({className:ci},{children:(0,a.jsx)(\"button\",(0,o.__assign)({disabled:!0},{children:\"👍\"===c?(0,a.jsx)(It(),{}):(0,a.jsx)(li(),{})}))}))})),l&&(0,a.jsx)(Ci,{attachment:n})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(\"div\",{className:Ue()(ln,yi)}),(0,a.jsx)(\"div\",(0,o.__assign)({className:ui},{children:(0,a.jsxs)(\"div\",(0,o.__assign)({className:ci},{children:[(0,a.jsx)(\"button\",(0,o.__assign)({\"aria-label\":t(\"up\"),title:t(\"up\"),type:\"button\",onClick:function(){return m(\"up\",\"👍\")}},{children:(0,a.jsx)(It(),{})})),(0,a.jsx)(\"button\",(0,o.__assign)({\"aria-label\":t(\"down\"),title:t(\"down\"),type:\"button\",onClick:function(){return m(\"down\",\"👎\")}},{children:(0,a.jsx)(li(),{})}))]}))}))]})},ki=require(\"date-fns/intlFormatDistance\");var Si=t.n(ki);const Ei=function(e){var n,t=e.activity,i=e.isFromBot,r=e.onRetry,l=(0,s.useTranslation)(\"cxbot\").t,u=window.navigator.language,c=(0,o.__read)((0,le.useState)(Si()(new Date(t.timestamp),new Date,{locale:u})),2),d=c[0],m=c[1];return(0,le.useEffect)((function(){var e=setInterval((function(){return m(Si()(new Date(t.timestamp),new Date,{locale:u}))}),6e4);return function(){clearInterval(e)}}),[t.timestamp,u]),(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(pt.timestamp,(n={},n[pt.fromUser]=!i,n))},{children:[(!t.status||t.status===B.DELIVERED)&&d,t.status===B.SENT&&(0,a.jsx)(\"span\",{children:l(\"sendStatus.sending\")}),t.status===B.FAILED&&(0,a.jsxs)(\"span\",{children:[l(\"sendStatus.sending\"),(0,a.jsx)(\"button\",(0,o.__assign)({className:pt.retryLink,onClick:function(){return r(t)}},{children:l(\"sendStatus.retry\")}))]})]}))},Ti=require(\"uuid\"),Ai=require(\"react-select\");var Ni=t.n(Ai);const Oi=\"Ub9Sc3xoXjUbvZLDCuut\",Mi=\"xgisnoZrmL4X9uEl055k\",Ii=\"iyzgQPZUlp03Fz9_5Olg\",Di=\"iMryDQ7ijz2BvyMRU6QK\";var Ri=function(e){var n=(0,o.__assign)((0,o.__assign)({},e),{innerProps:(0,o.__assign)((0,o.__assign)({},e.innerProps),{id:e.data.value})});return(0,a.jsx)(Ai.components.Option,(0,o.__assign)({},n))},Fi=function(e){return(0,a.jsx)(Ai.components.Input,(0,o.__assign)({id:e.selectProps.id},e))};const Bi=function(e){var n,t,i=(0,s.useTranslation)(\"common\").t,r=(0,o.__read)((0,Tn.useField)(e),3),l=r[0],u=r[1],c=r[2],d=e.options,m=e.onChange,v=e.onInputChange,f=e.isSearchable,p=e.isDismissable,h=e.onDismiss,g=e.compact,y=e.disabled,b=u.touched&&u.error,x={menu:function(e){return(0,o.__assign)((0,o.__assign)({},e),{zIndex:1e4,marginBottom:\"12px\"})},option:function(e,n){return(0,o.__assign)((0,o.__assign)({},e),{backgroundColor:n.isSelected||n.isFocused?\"#ccf2ff\":\"#fff\",fontFamily:\"Roboto, sans-serif\",color:\"#1c304b\",cursor:\"pointer\",\"&:hover\":{backgroundColor:\"#ccf2ff\"},\"&:active\":{backgroundColor:\"#ccf2ff\"}})},control:function(e){return(0,o.__assign)((0,o.__assign)({},e),{borderRadius:\"8px\",border:b?\"1px solid var(--error600)\":\"1px solid\",fontFamily:\"Roboto\",fontWeight:\"400\",fontSize:\"16px\",boxShadow:\"none\",padding:\"0px\",cursor:\"pointer\",minHeight:g?\"0\":null==e?void 0:e.minHeight,height:g&&\"32px\"})},indicatorSeparator:function(){return{display:\"none\"}},noOptionsMessage:function(e){return(0,o.__assign)((0,o.__assign)({},e),{fontSize:\"14px\",color:\"var(--neutral800)\"})},placeholder:function(e){return(0,o.__assign)((0,o.__assign)({},e),{transform:g&&\"translateY(-5px)\"})},dropdownIndicator:function(e){return(0,o.__assign)((0,o.__assign)({},e),{transform:g&&\"translate(12px, -10px)\"})},input:function(e){return(0,o.__assign)((0,o.__assign)({},e),{transform:g&&\"translateY(-5px)\"})},loadingIndicator:function(e){return(0,o.__assign)((0,o.__assign)({},e),{transform:g&&\"translateY(-5px)\"})},singleValue:function(e){return(0,o.__assign)((0,o.__assign)({},e),{transform:g&&\"translateY(-5px)\"})}},_=(0,le.useMemo)((function(){return null==d?void 0:d.find((function(e){return e.value===l.value}))}),[d,l.value]);return(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(en,an,Oi,(n={},n[rn]=b,n))},{children:[(!p||y)&&(0,a.jsx)(\"label\",(0,o.__assign)({className:tn},{children:null==e?void 0:e.label})),p&&!y&&(0,a.jsxs)(\"span\",(0,o.__assign)({className:Ii},{children:[(0,a.jsx)(\"label\",(0,o.__assign)({className:tn},{children:null==e?void 0:e.label})),_&&(0,a.jsx)(\"button\",(0,o.__assign)({className:Ue()(sn),id:\"clear-group-\".concat(l.name),onClick:h,type:\"button\"},{children:(0,a.jsx)(mn(),{})}))]})),(0,a.jsx)(Ni(),(0,o.__assign)({},l,e,{inputId:e.id,components:{Option:Ri,Input:Fi},className:Ue()((t={},t[rn]=b,t)),styles:x,isDisabled:e.disabled,loadingMessage:function(){return(0,a.jsx)($e,{})},noOptionsMessage:function(){return f?(0,a.jsx)(\"span\",(0,o.__assign)({className:Mi},{children:i(\"autoCompletePlaceholder\")})):(0,a.jsx)(\"span\",(0,o.__assign)({className:Mi},{children:i(\"noOptionsFound\")}))},value:_||null,onChange:function(e){c.setValue(null==e?void 0:e.value),null==m||m(e)},onInputChange:function(e){e&&(null==v||v(e))}})),b&&(0,a.jsx)(\"div\",(0,o.__assign)({className:Di},{children:u.error}))]}))};const Pi=function(e){var n,t,i=e.actions,r=e.onSuggestedActionClick,l=(0,s.useTranslation)(\"common\").t,u=ve().model,c=En().scrollToBottom,d=he().isBotExpanded,m=(0,o.__read)((0,le.useState)(!1),2),v=m[0],f=m[1],p=(0,le.useMemo)((function(){var e;return{selctedAction:null===(e=null==i?void 0:i[0])||void 0===e?void 0:e.title}}),[i]);return!v&&(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(pt.suggestedActions,pt[null===(t=null==u?void 0:u.brand)||void 0===t?void 0:t.toLowerCase()])},{children:i.length>8?(0,a.jsx)(\"div\",(0,o.__assign)({className:pt.dropdownContainer},{children:(0,a.jsx)(\"div\",(0,o.__assign)({className:pt.dropdown},{children:(0,a.jsx)(Tn.Formik,(0,o.__assign)({initialValues:p,onSubmit:function(e){var n=e.selctedAction;return r(i.find((function(e){return e.title===n})))},enableReinitialize:!0},{children:(0,a.jsxs)(Tn.Form,{children:[(0,a.jsx)(Bi,{name:\"selctedAction\",options:null==i?void 0:i.map((function(e){return{label:e.title,value:e.title}})),onMenuOpen:c,onMenuClose:c}),(0,a.jsx)(\"button\",{children:l(\"submit\")})]})}))}))})):(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(pt.buttonContainer,(n={},n[pt.isBotExpanded]=d,n))},{children:null==i?void 0:i.map((function(e){return(0,a.jsx)(\"button\",(0,o.__assign)({id:e.title,onClick:function(){f(!0),r(e)}},{children:e.title}),(0,Ti.v4)())}))}))}))},qi=require(\"adaptivecards\"),zi=require(\"react-dom/client\");var Li=t.n(zi);const Vi=require(\"luxon\"),Ui=require(\"date-fns/getUnixTime\");var Yi=t.n(Ui);const Gi=require(\"date-fns/isValid\");var Ji=t.n(Gi);const Wi=require(\"date-fns/parse\");var Ki=t.n(Wi);const Hi=require(\"date-fns\"),Qi=require(\"date-fns/locale\"),Zi=require(\"@mui/icons-material/ChevronLeft\");var Xi=t.n(Zi);const $i=require(\"@mui/icons-material/ChevronRight\");var eo=t.n($i);const no=require(\"@mui/icons-material/ArrowDropDown\");var to=t.n(no);const io=require(\"@mui/icons-material/ArrowDropUp\");var oo=t.n(io);const ao={common:{enter:\"Bestätigen\",confirm:\"Bestätigen\",return:\"Zurück\",close:\"Schließen\",dateFormat:\"TT/MM/JJJJ\",submit:\"Senden\",skip:\"Überspringen\"},cxbot:{interviewIntroduction:\"Unser virtueller Recruiting-Chatbot, Career Assistant, hat ein paar Fragen, um Sie für die Stelle zu qualifizieren. Das Ausfüllen der Fragen dauert weniger als 5 Minuten und beschleunigt den Einstellungsprozess, so dass wir Sie so schnell wie möglich einstellen können. Nachdem Sie die Fragen beantwortet haben, können Sie ein Interview an einer unserer Niederlassungen vereinbaren. Beantworten Sie die erste Frage, um loszulegen.\",failedToConnect:\"Es konnte keine Verbindung hergestellt werden.\",typeYourMessage:\"Geben Sie Ihre Nachricht ein\",send:\"Senden\",downloadConversation:\"Gespräch herunterladen\",typing:\"Bot tippt\",careerAssistantSays:\"Career Assistant sagt:\",youReplied:\"Sie haben geantwortet:\",newMessages:\"{{count}} Neue Nachrichten\",veryLikely:\"Sehr wahrscheinlich - 10\",notLikely:\"0 - Nicht wahrscheinlich\",ratingLeaveCommentOptional:\"Hinterlassen Sie einen Kommentar (optional)\",pleaseWait:\"Bitte warten\",loaderRedirect:\"Bitte warten Sie, der nächste Schritt wird gerade geladen\",noResultsFound:\"Es wurden keine Ergebnisse gefunden. Bitte geben Sie einen anderen Suchbegriff ein.\",yearsOfExperience:\"Jahren an Berufserfahrung\",with:\"mit\",years:\"Jahren an Berufserfahrung\",atleastOneRequired:\"Mindestens eine Kenntnisse ist erforderlich.\",required:\"Dieses Feld ist ein Pflichtfeld.\",confirmSkills:\"Können Sie folgende Fähigkeiten bestätigen?\",confirmJobs:\"Können Sie folgende Jobs bestätigen?\",confirmLanguages:\"Können Sie folgende Sprachen bestätigen?\",confirmCountries:\"Können Sie folgende Länder bestätigen?\",addMore:\"Mehr hinzufügen\",confirm:\"Bestätigen\",sendStatus:{sending:\"Sendet\",failed:\"Senden fehlgeschlagen.\",retry:\"Wiederholungsversuch\"}},feedback:{title:\"Teilen Sie uns Ihr Feedback mit.\",up:\"Mit einem Daumen hoch bewerten\",down:\"Mit einem Daumen runter bewerten\",validations:{required:\"Dieses Feld ist ein Pflichtfeld.\"},commentsForm:{title:\"Könnten Sie uns dazu mehr sagen, indem Sie eine der folgenden Optionen auswählen oder einen Kommentar hinzufügen?\",InadequateAnswers:\"Unzureichende Antworten\",MoreDetailsNeeded:\"Es werden mehr Details benötigt.\",TechnischesProblem:\"Technisches Problem\",comments:\"Eine andere Antwort\",hint:\"Bitte verwenden Sie keine explizite oder anderweitig anstößige Sprache in Ihrem Kommentar.\",submit:\"Absenden\"},accessibility:{playVideo:\"Video abspielen\",close:\"Schließen\",chat:\"Chat\",chatLog:\"Chat-Protokoll\",phoneCountryCode:\"Ländercode wählen\",clear:\"Löschen\",expandBot:\"Die Größe des Bot-Fensters vergrößern\",collapseBot:\"Die Größe des Bot-Fensters verkleinern\",newMessages:\"{{newMessageCount}} neue Nachrichten. Klicken Sie hier, um zu den neuen Nachrichten zu blättern\",endOfChat:\"Ende des Chatverlaufs\"},fileUpload:{fileSizeExceedsLimit:\"Die Dateigröße überschreitet das erlaubte Limit von 5 MB.\",attachFile:\"Datei anhängen\",allowedFileformats:\"Maximal 5 MB. Nur {{fileFormats}} erlaubt.\"}}};const ro={common:{enter:\"Enter\",confirm:\"Confirm\",return:\"Back\",close:\"Close\",dateFormat:\"DD/MM/YYYY\",submit:\"OK\",skip:\"Skip\"},cxbot:{interviewIntroduction:\"Our virtual recruiting assistant, Career Assistant, has a few additional questions to pre-qualify you for the position. The questions take under 5 minutes to complete and will speed up the hiring process, allowing us to get you to work as quickly as possible! After you answer the questions, you will be able to go ahead and schedule a branch appointment. Respond to the first question below to get started!\",failedToConnect:\"Failed to connect.\",typeYourMessage:\"Type your message\",send:\"Send\",downloadConversation:\"Download conversation\",typing:\"Career Assistant is typing\",careerAssistantSays:\"Career Assistant says:\",youReplied:\"You replied:\",newMessages:\"{{count}} New Messages\",veryLikely:\"Very likely - 10\",notLikely:\"0 - Not likely\",ratingLeaveCommentOptional:\"Leave us a comment (optional)\",pleaseWait:\"Please wait\",loaderRedirect:\"Please wait, the next step is coming\",noResultsFound:\"No results found. Please enter another keyword,\",yearsOfExperience:\"Years of work experience\",with:\"with\",years:\"year(s) of experience\",atleastOneRequired:\"At least one skill is required.\",required:\"This field is required.\",confirmSkills:\"Can you confirm the following skills?\",confirmJobs:\"Can you confirm the following jobs?\",confirmLanguages:\"Can you confirm the following languages?\",confirmCountries:\"Can you confirm the following countries?\",addMore:\"Add more\",confirm:\"Confirm\",sendStatus:{sending:\"Sending\",failed:\"Send failed.\",retry:\"Retry\"}},feedback:{title:\"Share your feedback with us.\",up:\"Rate Thumbs Up\",down:\"Rate Thumbs Down\",validations:{required:\"This field is required.\"},commentsForm:{title:\"Could you tell us more by selecting any of the options below or providing a comment?\",InadequateAnswers:\"Inadequate answers\",MoreDetailsNeeded:\"I need more details\",TechnicalProblem:\"Technical problem\",comments:\"Any other comments\",hint:\"Please do not use any explicit or otherwise offensive language in your comment.\",submit:\"submit\"}},accessibility:{playVideo:\"Play Video\",close:\"Close\",chat:\"Chat\",chatLog:\"Chat log\",phoneCountryCode:\"Select Country Code\",clear:\"Clear\",expandBot:\"Enlarge the size of the Bot window\",collapseBot:\"Collapse the size of the Bot window\",newMessages:\"{{newMessageCount}} new messages. Click to scroll to the new messages\",endOfChat:\"End of chat history\"},fileUpload:{fileSizeExceedsLimit:\"File size exceeds allowed 5MB limit.\",attachFile:\"Attach File\",allowedFileformats:\"Max 5MB. Only {{fileFormats}} allowed.\"}};const so={common:{enter:\"Enter\",confirm:\"Confirm\",return:\"Back\",close:\"Close\",dateFormat:\"DD/MM/YYYY\",submit:\"OK\",skip:\"Skip\"},cxbot:{interviewIntroduction:\"Our virtual recruiting assistant, Career Assistant, has a few additional questions to pre-qualify you for the position. The questions take under 5 minutes to complete and will speed up the hiring process, allowing us to get you to work as quickly as possible! After you answer the questions, you will be able to go ahead and schedule a branch appointment. Respond to the first question below to get started!\",failedToConnect:\"Failed to connect.\",typeYourMessage:\"Type your message\",send:\"Send\",typing:\"Career Assistant is typing\",careerAssistantSaåys:\"Career Assistant says:\",youReplied:\"You replied:\",newMessages:\"{{count}} New Messages\",veryLikely:\"Very likely - 10\",notLikely:\"0 - Not likely\",ratingLeaveCommentOptional:\"Leave us a comment (optional)\",pleaseWait:\"Please wait\",loaderRedirect:\"Please wait, the next step is coming\",noResultsFound:\"No results found. Please enter another keyword,\",yearsOfExperience:\"Years of work experience\",with:\"with\",years:\"year(s) of experience\",atleastOneRequired:\"At least one skill is required.\",required:\"This field is required.\",confirmSkills:\"Can you confirm the following skills?\",confirmJobs:\"Can you confirm the following jobs?\",confirmLanguages:\"Can you confirm the following languages?\",confirmCountries:\"Can you confirm the following countries?\",addMore:\"Add more\",confirm:\"Confirm\",sendStatus:{sending:\"Sending\",failed:\"Send failed.\",retry:\"Retry\"}},feedback:{title:\"Share your feedback with us.\",up:\"Rate Thumbs Up\",down:\"Rate Thumbs Down\",validations:{required:\"This field is required.\"},commentsForm:{title:\"Could you tell us more by selecting any of the options below or providing a comment?\",InadequateAnswers:\"Inadequate answers\",MoreDetailsNeeded:\"I need more details\",TechnicalProblem:\"Technical problem\",comments:\"Any other comments\",hint:\"Please do not use any explicit or otherwise offensive language in your comment.\",submit:\"submit\"}},accessibility:{playVideo:\"Play Video\",close:\"Close\",chat:\"Chat\",chatLog:\"Chat log\",phoneCountryCode:\"Select Country Code\",clear:\"Clear\",expandBot:\"Enlarge the size of the Bot window\",collapseBot:\"Collapse the size of the Bot window\",newMessages:\"{{newMessageCount}} new messages. Click to scroll to the new messages\",endOfChat:\"End of chat history\"},fileUpload:{fileSizeExceedsLimit:\"File size exceeds allowed 5MB limit.\",attachFile:\"Attach File\",allowedFileformats:\"Max 5MB. Only {{fileFormats}} allowed.\"}};const lo={common:{enter:\"Enter\",confirm:\"Confirm\",return:\"Back\",close:\"Close\",dateFormat:\"DD/MM/YYYY\",submit:\"OK\",skip:\"Skip\"},cxbot:{interviewIntroduction:\"Our virtual recruiting assistant, Career Assistant, has a few additional questions to pre-qualify you for the position. The questions take under 5 minutes to complete and will speed up the hiring process, allowing us to get you to work as quickly as possible! After you answer the questions, you will be able to go ahead and schedule a branch appointment. Respond to the first question below to get started!\",failedToConnect:\"Failed to connect.\",typeYourMessage:\"Type your message\",send:\"Send\",downloadConversation:\"Download conversation\",typing:\"Career Assistant is typing\",careerAssistantSays:\"Career Assistant says:\",youReplied:\"You replied:\",newMessages:\"{{count}} New Messages\",veryLikely:\"Very likely - 10\",notLikely:\"0 - Not likely\",ratingLeaveCommentOptional:\"Leave us a comment (optional)\",pleaseWait:\"Please wait\",loaderRedirect:\"Please wait, the next step is coming\",noResultsFound:\"No results found. Please enter another keyword,\",yearsOfExperience:\"Years of work experience\",with:\"with\",years:\"year(s) of experience\",atleastOneRequired:\"At least one skill is required.\",required:\"This field is required.\",confirmSkills:\"Can you confirm the following skills?\",confirmJobs:\"Can you confirm the following jobs?\",confirmLanguages:\"Can you confirm the following languages?\",confirmCountries:\"Can you confirm the following countries?\",addMore:\"Add more\",confirm:\"Confirm\",sendStatus:{sending:\"Sending\",failed:\"Send failed.\",retry:\"Retry\"}},feedback:{title:\"Share your feedback with us.\",up:\"Rate Thumbs Up\",down:\"Rate Thumbs Down\",validations:{required:\"This field is required.\"},commentsForm:{title:\"Could you tell us more by selecting any of the options below or providing a comment?\",InadequateAnswers:\"Inadequate answers\",MoreDetailsNeeded:\"I need more details\",TechnicalProblem:\"Technical problem\",comments:\"Any other comments\",hint:\"Please do not use any explicit or otherwise offensive language in your comment.\",submit:\"submit\"}},accessibility:{playVideo:\"Play Video\",close:\"Close\",chat:\"Chat\",chatLog:\"Chat log\",phoneCountryCode:\"Select Country Code\",clear:\"Clear\",expandBot:\"Enlarge the size of the Bot window\",collapseBot:\"Collapse the size of the Bot window\",newMessages:\"{{newMessageCount}} new messages. Click to scroll to the new messages\",endOfChat:\"End of chat history\"},fileUpload:{fileSizeExceedsLimit:\"File size exceeds allowed 5MB limit.\",attachFile:\"Attach File\",allowedFileformats:\"Max 5MB. Only {{fileFormats}} allowed.\"}};const uo={common:{enter:\"Enter\",confirm:\"Confirm\",return:\"Back\",close:\"Close\",dateFormat:\"DD/MM/YYYY\",submit:\"OK\",skip:\"Skip\"},cxbot:{interviewIntroduction:\"Our virtual recruiting assistant, Career Assistant, has a few additional questions to pre-qualify you for the position. The questions take under 5 minutes to complete and will speed up the hiring process, allowing us to get you to work as quickly as possible! After you answer the questions, you will be able to go ahead and schedule a branch appointment. Respond to the first question below to get started!\",failedToConnect:\"Failed to connect.\",typeYourMessage:\"Type your message\",send:\"Send\",downloadConversation:\"Download conversation\",typing:\"Career Assistant is typing\",careerAssistantSays:\"Career Assistant says:\",youReplied:\"You replied:\",newMessages:\"{{count}} New Messages\",veryLikely:\"Very likely - 10\",notLikely:\"0 - Not likely\",ratingLeaveCommentOptional:\"Leave us a comment (optional)\",pleaseWait:\"Please wait\",loaderRedirect:\"Please wait, the next step is coming\",noResultsFound:\"No results found. Please enter another keyword,\",yearsOfExperience:\"Years of work experience\",with:\"with\",years:\"year(s) of experience\",atleastOneRequired:\"At least one skill is required.\",required:\"This field is required.\",confirmSkills:\"Can you confirm the following skills?\",confirmJobs:\"Can you confirm the following jobs?\",confirmLanguages:\"Can you confirm the following languages?\",confirmCountries:\"Can you confirm the following countries?\",addMore:\"Add more\",confirm:\"Confirm\",sendStatus:{sending:\"Sending\",failed:\"Send failed.\",retry:\"Retry\"}},feedback:{title:\"Share your feedback with us.\",up:\"Rate Thumbs Up\",down:\"Rate Thumbs Down\",validations:{required:\"This field is required.\"},commentsForm:{title:\"Could you tell us more by selecting any of the options below or providing a comment?\",InadequateAnswers:\"Inadequate answers\",MoreDetailsNeeded:\"I need more details\",TechnicalProblem:\"Technical problem\",comments:\"Any other comments\",hint:\"Please do not use any explicit or otherwise offensive language in your comment.\",submit:\"submit\"}},accessibility:{playVideo:\"Play Video\",close:\"Close\",chat:\"Chat\",chatLog:\"Chat log\",phoneCountryCode:\"Select Country Code\",clear:\"Clear\",expandBot:\"Enlarge the size of the Bot window\",collapseBot:\"Collapse the size of the Bot window\",newMessages:\"{{newMessageCount}} new messages. Click to scroll to the new messages\",endOfChat:\"End of chat history\"},fileUpload:{fileSizeExceedsLimit:\"File size exceeds allowed 5MB limit.\",attachFile:\"Attach File\",allowedFileformats:\"Max 5MB. Only {{fileFormats}} allowed.\"}};const co={common:{enter:\"Enter\",confirm:\"Confirm\",return:\"Back\",close:\"Close\",dateFormat:\"MM/DD/YYYY\",submit:\"OK\",skip:\"Skip\"},cxbot:{interviewIntroduction:\"Our virtual recruiting assistant, Career Assistant, has a few additional questions to pre-qualify you for the position. The questions take under 5 minutes to complete and will speed up the hiring process, allowing us to get you to work as quickly as possible! After you answer the questions, you will be able to go ahead and schedule a branch appointment. Respond to the first question below to get started!\",failedToConnect:\"Failed to connect.\",typeYourMessage:\"Type your message\",send:\"Send\",typing:\"Career Assistant is typing\",careerAssistantSays:\"Career Assistant says:\",youReplied:\"You replied:\",newMessages:\"{{count}} New Messages\",veryLikely:\"Very likely - 10\",notLikely:\"0 - Not likely\",ratingLeaveCommentOptional:\"Leave us a comment (optional)\",pleaseWait:\"Please wait\",loaderRedirect:\"Please wait, the next step is coming\",noResultsFound:\"No results found. Please enter another keyword,\",yearsOfExperience:\"Years of work experience\",with:\"with\",years:\"year(s) of experience\",atleastOneRequired:\"At least one skill is required.\",required:\"This field is required.\",confirmSkills:\"Can you confirm the following skills?\",confirmJobs:\"Can you confirm the following jobs?\",confirmLanguages:\"Can you confirm the following languages?\",confirmCountries:\"Can you confirm the following countries?\",addMore:\"Add more\",confirm:\"Confirm\",sendStatus:{sending:\"Sending\",failed:\"Send failed.\",retry:\"Retry\"}},feedback:{title:\"Share your feedback with us.\",up:\"Rate Thumbs Up\",down:\"Rate Thumbs Down\",validations:{required:\"This field is required.\"},commentsForm:{title:\"Could you tell us more by selecting any of the options below or providing a comment?\",InadequateAnswers:\"Inadequate answers\",MoreDetailsNeeded:\"I need more details\",TechnicalProblem:\"Technical problem\",comments:\"Any other comments\",hint:\"Please do not use any explicit or otherwise offensive language in your comment.\",submit:\"submit\"}},accessibility:{playVideo:\"Play Video\",close:\"Close\",chat:\"Chat\",chatLog:\"Chat log\",phoneCountryCode:\"Select Country Code\",clear:\"Clear\",expandBot:\"Enlarge the size of the Bot window\",collapseBot:\"Collapse the size of the Bot window\",newMessages:\"{{newMessageCount}} new messages. Click to scroll to the new messages\",endOfChat:\"End of chat history\"},fileUpload:{fileSizeExceedsLimit:\"File size exceeds allowed 5MB limit.\",attachFile:\"Attach File\",allowedFileformats:\"Max 5MB. Only {{fileFormats}} allowed.\"}};const mo={common:{enter:\"Confirmar\",confirm:\"Confirmar\",return:\"Volver\",close:\"Cerrar\",dateFormat:\"DD/MM/AAAA\",submit:\"Enviar\",skip:\"Saltar\"},cxbot:{interviewIntroduction:\"Nuestro asistente virtual de contratación, Career Assistant, tiene algunas preguntas adicionales para precalificarte para el puesto. Las preguntas tardan menos de 5 minutos en completarse y acelerarán el proceso de contratación, permitiéndonos ofrecerle un trabajo lo antes posible. Después de responder a las preguntas, podrá seguir adelante y concertar una entrevista. Responda a la primera pregunta para empezar.\",failedToConnect:\"No se ha podido conectar.\",typeYourMessage:\"Escriba su mensaje\",send:\"Enviar\",downloadConversation:\"Descargar conversación\",typing:\"Career Assistant está escribiendo\",careerAssistantSays:\"Career Assistant dice:\",youReplied:\"Has respondido:\",newMessages:\"{{count}} Nuevos mensajes\",veryLikely:\"Muy probable - 10\",notLikely:\"0 - Poco probable\",ratingLeaveCommentOptional:\"Déjenos un comentario (opcional)\",pleaseWait:\"Por favor, espere\",loaderRedirect:\"Por favor, espere, el siguiente paso está en camino\",noResultsFound:\"No se han encontrado resultados. Por favor, introduzca otra palabra clave,\",yearsOfExperience:\"Años de experiencia laboral\",with:\"con\",years:\"años de experiencia\",atleastOneRequired:\"Se requiere al menos una habilidad\",required:\"Este campo es obligatorio\",confirmSkills:\"¿Puedes confirmar las siguientes habilidades?\",confirmJobs:\"¿Puede confirmar los siguientes empleos?\",confirmLanguages:\"¿Puede confirmar los siguientes idiomas?\",confirmCountries:\"¿Puede confirmar los siguientes países?\",addMore:\"Añadir más\",confirm:\"Confirmar\",sendStatus:{sending:\"Enviando\",failed:\"Envío fallido.\",retry:\"Reintento\"}},feedback:{title:\"Comparte tu opinión con nosotros.\",up:\"Valorar pulgares arriba\",down:\"Valorar Pulgares Abajo\",validations:{required:\"Este campo es obligatorio.\"},commentsForm:{title:\"¿Podría darnos más detalles seleccionando cualquiera de las opciones siguientes o proporcionando un comentario?\",InadequateAnswers:\"Respuesta inadecuada\",MoreDetailsNeeded:\"Necesito más detalles\",TechnicalProblem:\"Problema técnico\",comments:\"Cualquier otro comentario\",hint:\"Por favor, no utilice un lenguaje explícito u ofensivo en su comentario.\",submit:\"Enviar\"}},accessibility:{playVideo:\"Reproducir vídeo\",close:\"Cerrar\",chat:\"Chat\",chatLog:\"Registro de chat\",phoneCountryCode:\"Seleccionar código de país\",clear:\"Borrar\",expandBot:\"Ampliar el tamaño de la ventana del Bot\",collapseBot:\"Reducir el tamaño de la ventana del Bot\",newMessages:\"{{newMessageCount}} nuevos mensajes. Haga clic para ver a los nuevos mensajes\",endOfChat:\"Fin del historial de chat\"},fileUpload:{fileSizeExceedsLimit:\"El tamaño del archivo excede el límite permitido de 5MB.\",attachFile:\"Adjuntar archivo\",allowedFileformats:\"Máximo 5MB. Solo se permiten archivos {{fileFormats}}.\"}};const vo={common:{enter:\"Valider\",confirm:\"Confirmer\",return:\"Retour\",close:\"Fermer\",dateFormat:\"JJ/MM/AAAA\",submit:\"Soumettre\",skip:\"Passer\"},cxbot:{interviewIntroduction:\"Notre assistant virtuel de recrutement, Career Assistant, a quelques questions supplémentaires à vous poser pour vous qualifier pour le poste. Les questions prennent moins de 5 minutes et accélèrent le processus d'embauche, ce qui nous permet de vous trouver un poste le plus rapidement possible ! Une fois que vous aurez répondu aux questions, vous pourrez prendre rendez-vous avec l'agence. Répondez à la première question ci-dessous pour commencer !\",failedToConnect:\"Échec de la connexion\",typeYourMessage:\"Tapez votre message\",send:\"Envoyer\",downloadConversation:\"Télécharger la conversation\",typing:\"Career Assistant est en train d'écrire\",careerAssistantSays:\"Career Assistant dit:\",youReplied:\"Vous avez répondu:\",newMessages:\"{{count}} Nouveaux messages\",veryLikely:\"Très probable - 10\",notLikely:\"0 - Peu probable\",ratingLeaveCommentOptional:\"Laisser un commentaire (optionnel)\",pleaseWait:\"Veuillez patienter\",loaderRedirect:\"Veuillez patienter, l'étape suivante arrive\",noResultsFound:\"Aucun résultat. Merci de saisir une autre mot-clé.\",yearsOfExperience:\"Années d'expérience professionnelle\",with:\"avec\",years:\"ans d'expérience\",atleastOneRequired:\"Au moins une compétence est requise.\",required:\"Ce champ est obligatoire.\",confirmSkills:\"Pouvez-vous confirmer les compétences suivantes ?\",confirmJobs:\"Pouvez-vous confirmer les emplois suivants ?\",confirmLanguages:\"Pouvez-vous confirmer les langues suivantes ?\",confirmCountries:\"Pouvez-vous confirmer les pays suivants ?\",addMore:\"Ajouter plus\",confirm:\"Valider\",sendStatus:{sending:\"Envoi\",failed:\"Échec de l'envoi\",retry:\"Réessayer\"}},feedback:{title:\"Faites-nous part de vos commentaires.\",up:\"Taux d'intérêt\",down:\"Taux Pouce bas\",validations:{required:\"Ce champ est obligatoire\"},commentsForm:{title:\"Pourriez-vous nous en dire plus en sélectionnant l'une des options ci-dessous ou en donnant un commentaire ?\",InadequateAnswers:\"Réponses inadéquates\",MoreDetailsNeeded:\"J'ai besoin de plus de détails\",TechnicalProblem:\"Problème technique\",comments:\"Tout autre commentaire\",hint:\"Veuillez ne pas utiliser de langage explicite ou offensant dans votre commentaire.\",submit:\"soumettre\"}},accessibility:{playVideo:\"Lire la vidéo\",close:\"Fermer\",chat:\"Chat\",chatLog:\"Historique du chat\",phoneCountryCode:\"Sélectionner le code pays\",clear:\"Clair\",expandBot:\"Agrandir la taille de la fenêtre du bot\",collapseBot:\"Réduire la taille de la fenêtre du bot\",newMessages:\"{{newMessageCount}} nouveaux messages. Cliquez pour faire défiler les nouveaux messages\",endOfChat:\"Fin de l'historique de la discussion\"},fileUpload:{fileSizeExceedsLimit:\"La taille du fichier dépasse la limite autorisée de 5 Mo.\",attachFile:\"Joindre un fichier\",allowedFileformats:\"Max 5 Mo. Seuls les formats {{fileFormats}} sont autorisés.\"}};const fo={common:{enter:\"Valider\",confirm:\"Confirmer\",return:\"Retour\",close:\"Fermer\",dateFormat:\"JJ/MM/AAAA\",submit:\"Soumettre\",skip:\"Passer\"},cxbot:{interviewIntroduction:\"Notre assistant virtuel de recrutement, Career Assistant, a quelques questions supplémentaires à vous poser pour vous qualifier pour le poste. Les questions prennent moins de 5 minutes et accélèrent le processus d'embauche, ce qui nous permet de vous trouver un poste le plus rapidement possible ! Une fois que vous aurez répondu aux questions, vous pourrez prendre rendez-vous avec l'agence. Répondez à la première question ci-dessous pour commencer !\",failedToConnect:\"Échec de la connexion\",typeYourMessage:\"Tapez votre message\",send:\"Envoyer\",downloadConversation:\"Télécharger la conversation\",typing:\"Career Assistant est en train d'écrire\",careerAssistantSays:\"Career Assistant dit:\",youReplied:\"Vous avez répondu:\",newMessages:\"{{count}} Nouveaux messages\",veryLikely:\"Très probable - 10\",notLikely:\"0 - Peu probable\",ratingLeaveCommentOptional:\"Laisser un commentaire (optionnel)\",pleaseWait:\"Veuillez patienter\",loaderRedirect:\"Veuillez patienter, l'étape suivante arrive\",noResultsFound:\"Aucun résultat. Merci de saisir une autre mot-clé.\",yearsOfExperience:\"Années d'expérience professionnelle\",with:\"avec\",years:\"ans d'expérience\",atleastOneRequired:\"Au moins une compétence est requise.\",required:\"Ce champ est obligatoire.\",confirmSkills:\"Pouvez-vous confirmer les compétences suivantes ?\",confirmJobs:\"Pouvez-vous confirmer les emplois suivants ?\",confirmLanguages:\"Pouvez-vous confirmer les langues suivantes ?\",confirmCountries:\"Pouvez-vous confirmer les pays suivants ?\",addMore:\"Ajouter plus\",confirm:\"Valider\",sendStatus:{sending:\"Envoi\",failed:\"Échec de l'envoi\",retry:\"Réessayer\"}},feedback:{title:\"Faites-nous part de vos commentaires.\",up:\"Taux d'intérêt\",down:\"Taux Pouce bas\",validations:{required:\"Ce champ est obligatoire\"},commentsForm:{title:\"Pourriez-vous nous en dire plus en sélectionnant l'une des options ci-dessous ou en donnant un commentaire ?\",InadequateAnswers:\"Réponses inadéquates\",MoreDetailsNeeded:\"J'ai besoin de plus de détails\",TechnicalProblem:\"Problème technique\",comments:\"Tout autre commentaire\",hint:\"Veuillez ne pas utiliser de langage explicite ou offensant dans votre commentaire.\",submit:\"soumettre\"}},accessibility:{playVideo:\"Lire la vidéo\",close:\"Fermer\",chat:\"Chat\",chatLog:\"Historique du chat\",phoneCountryCode:\"Sélectionner le code pays\",clear:\"Clair\",expandBot:\"Agrandir la taille de la fenêtre du bot\",collapseBot:\"Réduire la taille de la fenêtre du bot\",newMessages:\"{{newMessageCount}} nouveaux messages. Cliquez pour faire défiler les nouveaux messages\",endOfChat:\"Fin de l'historique de la discussion\"},fileUpload:{fileSizeExceedsLimit:\"La taille du fichier dépasse la limite autorisée de 5 Mo.\",attachFile:\"Joindre un fichier\",allowedFileformats:\"Max 5 Mo. Seuls les formats {{fileFormats}} sont autorisés.\"}};const po={common:{enter:\"Confermare\",confirm:\"Confermare\",return:\"Indietro\",close:\"Chiudi\",dateFormat:\"DD/MM/YYYY\",submit:\"Invia\",skip:\"Salta\"},cxbot:{interviewIntroduction:\"Il nostro assistente virtuale per il reclutamento, Career Assistant, ha alcune domande aggiuntive per pre-qualificarti per la posizione. Le domande richiedono meno di 5 minuti per essere completate e accelereranno il processo di assunzione, consentendoci di mettervi al lavoro il più rapidamente possibile! Dopo aver risposto alle domande, potrete fissare un appuntamento in filiale. Rispondete alla prima domanda qui sotto per iniziare!\",failedToConnect:\"Connessione fallita\",typeYourMessage:\"Scrivi il tuo messaggio\",send:\"Invia\",downloadConversation:\"Scarica la conversazione\",typing:\"Career Assistant sta scrivendo\",careerAssistantSays:\"Career Assistant sta dicendo:\",youReplied:\"Hai risposto:\",newMessages:\"{{count}} Nuovi messaggi\",veryLikely:\"Molto probabile - 10\",notLikely:\"0 - Non probabile\",ratingLeaveCommentOptional:\"Lasciateci un commento (facoltativo)\",pleaseWait:\"Attendere prego\",loaderRedirect:\"Si prega di attendere, la fase successiva è in arrivo\",noResultsFound:\"Nessun risultato trovato. Si prega di inserire un'altra parola chiave\",yearsOfExperience:\"Anni di esperienza lavorativa\",with:\"con\",years:\"anni di esperienza\",atleastOneRequired:\"È richiesta almeno una competenza\",required:\"Questo campo è obbligatorio\",confirmSkills:\"Puoi confermare le seguenti competenze?\",confirmJobs:\"Puoi confermare i seguenti lavori?\",confirmLanguages:\"Puoi confermare le seguenti lingue?\",confirmCountries:\"Puoi confermare i seguenti Paesi?\",addMore:\"Aggiungi altro\",confirm:\"Confermare\",sendStatus:{sending:\"Invio\",failed:\"Invio fallito.\",retry:\"Riprova\"}},feedback:{title:\"Condividi il tuo feedback con noi.\",up:\"Pollici in su\",down:\"Vota pollice in giù\",validations:{required:\"Questo campo è obbligatorio.\"},commentsForm:{title:\"Potresti dirci di più selezionando una delle opzioni sottostanti o fornendo un commento?\",InadequateAnswers:\"Risposte inadeguate\",MoreDetailsNeeded:\"Ho bisogno di maggiori dettagli\",TechnicalProblem:\"Problema tecnico\",comments:\"Qualsiasi altro commento\",hint:\"Si prega di non utilizzare un linguaggio esplicito o comunque offensivo nei commenti.\",submit:\"Invia\"}},accessibility:{playVideo:\"Riproduci video\",close:\"Chiudi\",chat:\"Chat\",chatLog:\"Registro della chat\",phoneCountryCode:\"Seleziona codice paese\",clear:\"Cancella\",expandBot:\"Allarga le dimensioni della finestra del Bot\",collapseBot:\"Diminuisci le dimensioni della finestra del Bot\",nuoviMessaggi:\"{{nuovoMessaggioCount}} nuovi messaggi. Fai clic per scorrere i nuovi messaggi\",endOfChat:\"Fine della cronologia della chat\"},fileUpload:{fileSizeExceedsLimit:\"La dimensione del file supera il limite consentito di 5MB.\",attachFile:\"Allega file\",allowedFileformats:\"Max 5MB. Consentiti solo i formati {{fileFormats}}.\"}};const ho={common:{enter:\"実行\",confirm:\"実行\",return:\"戻る\",close:\"閉じる\",dateFormat:\"日/月/年\",submit:\"送信\",skip:\"スキップ\"},cxbot:{interviewIntroduction:\"当社のバーチャル採用アシスタントであるCareer Assistantが、あなたをこのポジションにふさわしい人物と事前に判断するために、追加質問を用意しています。所要時間は5分です。さっそく始めましょう!\",failedToConnect:\"接続に失敗しました\",typeYourMessage:\"メッセージを入力してください\",send:\"送信\",downloadConversation:\"ダウンロード会話\",typing:\"Career Assistantが入力中\",careerAssistantSays:\"Career Assistantの発言:\",youReplied:\"返信しました:\",newMessages:\"{{count}} 新しいメッセージ\",veryLikely:\"非常にお勧めできる - 10\",notLikely:\"0 - 全くお勧めできない\",ratingLeaveCommentOptional:\"フリーコメント(任意)\",pleaseWait:\"お待ちください\",loaderRedirect:\"次のステップに進みますのでお待ちください。\",noResultsFound:\"結果が見つかりませんでした。別のキーワードを入力してください\",yearsOfExperience:\"年の経験\",with:\"を保有\",years:\"年\",atleastOneRequired:\"少なくとも1つのスキルが必要です\",required:\"この項目は必須です\",confirmSkills:\"以下のスキルでよろしいですか?\",confirmJobs:\"以下の仕事でよろしいですか?\",confirmLanguages:\"以下の言語でよろしいですか?\",confirmCountries:\"以下の国でよろしいですか?\",addMore:\"追加する\",confirm:\"確認する\",sendStatus:{sending:\"送信中\",failed:\"送信に失敗しました\",retry:\"再試行\"}},feedback:{title:\"『フィードバックをお寄せください\",up:\"良い評価をする\",down:\"悪い評価をする\",validations:{required:\"このフィールドは必須です\"},commentsForm:{title:\"以下のオプションのいずれかを選択するか、コメントを記入して、さらに詳しく教えてください\",InadequateAnswers:\"不十分な回答\",MoreDetailsNeeded:\"もっと詳細が必要です\",TechnicalProblem:\"技術的な問題\",comments:\"その他のコメント\",hint:\"コメントには、露骨な言葉や攻撃的な言葉を使用しないでください。\",submit:\"送信\"}},accessibility:{playVideo:\"ビデオを再生する\",close:\"閉じる\",chat:\"チャット\",chatLog:\"チャットログ\",phoneCountryCode:\"国コードを選択\",clear:\"リセット\",expandBot:\"ボットウィンドウのサイズを拡大する\",collapseBot:\"ボットウィンドウを折りたたむ\",newMessages:\"{{newMessageCount}}新着メッセージです。クリックすると新着メッセージまでスクロールします\",endOfChat:\"チャット履歴の終了\"},fileUpload:{fileSizeExceedsLimit:\"ファイルサイズが5MBの制限を超えています。\",attachFile:\"ファイルを添付する\",allowedFileformats:\"最大5MB。許可されているファイル形式は{{fileFormats}}のみです。\"}};const go={common:{enter:\"Bevestig\",confirm:\"Bevestig\",return:\"Terug\",close:\"Sluiten\",dateFormat:\"DD/MM/JJJJ\",submit:\"Verstuur\",skip:\"Overspringen\"},cxbot:{interviewIntroduction:\"Onze virtuele rekruteringsassistent, Career Assistant, heeft een paar extra vragen om je te pre-kwalificeren voor de functie. Het invullen van de vragen duurt minder dan 5 minuten en zal het aanwervingsproces versnellen, zodat we je zo snel mogelijk aan het werk kunnen zetten! Nadat je de vragen hebt beantwoord, kun je een afspraak maken bij de vestiging. Beantwoord de eerste vraag hieronder om te beginnen!\",failedToConnect:\"Mislukt om verbinding te maken.\",typeYourMessage:\"Typ uw bericht\",send:\"Verzenden\",downloadConversation:\"Gesprek downloaden\",typing:\"Career Assistant is aan het typen\",careerAssistantSays:\"Career Assistant zegt:\",youReplied:\"Je hebt geantwoord:\",newMessages:\"{{count}} Nieuwe berichten\",veryLikely:\"Zeer waarschijnlijk - 10\",notLikely:\"0 - Niet waarschijnlijk\",ratingLeaveCommentOptional:\"Laat een reactie achter (optioneel)\",pleaseWait:\"Even geduld\",loaderRedirect:\"Even geduld, de volgende stap komt eraan\",noResultsFound:\"Geen resultaten gevonden. Voer een ander trefwoord in,\",yearsOfExperience:\"Jaren werkervaring\",with:\"met\",years:\"jaren ervaring\",atleastOneRequired:\"Ten minste één vaardigheid is vereist.\",required:\"Dit veld is vereist.\",confirmSkills:\"Kunt u de volgende vaardigheden bevestigen?\",confirmJobs:\"Kunt u de volgende banen bevestigen?\",confirmLanguages:\"Kunt u de volgende talen bevestigen?\",confirmCountries:\"Kunt u de volgende landen bevestigen?\",addMore:\"Voeg meer toe\",confirm:\"Bevestig\",sendStatus:{sending:\"Verzenden\",failed:\"Verzenden mislukt.\",retry:\"Opnieuw proberen\"}},feedback:{title:\"Deel uw feedback met ons.\",up:\"Duimen omhoog\",down:\"Duimen omlaag\",validations:{required:\"Dit veld is verplicht.\"},commentsForm:{title:\"Kunt u ons meer vertellen door een van de onderstaande opties te selecteren of een opmerking te plaatsen?\",InadequateAnswers:\"Inadequate antwoorden\",MoreDetailsNeeded:\"Ik heb meer details nodig\",TechnicalProblem:\"Technisch probleem\",comments:\"Eventuele andere opmerkingen\",hint:\"Gebruik geen expliciet of anderszins aanstootgevend taalgebruik in je commentaar.\",submit:\"indienen\"}},accessibility:{playVideo:\"Video afspelen\",sluiten:\"Sluiten\",chat:\"Chat\",chatLog:\"Chatlogboek\",phoneCountryCode:\"Landcode selecteren\",clear:\"Wissen\",expandBot:\"Het Bot-venster vergroten\",collapseBot:\"De grootte van het Bot-venster samenvouwen\",newMessages:\"{{newMessageCount}} nieuwe berichten. Klik om naar de nieuwe berichten te bladeren\",endOfChat:\"Einde chatgeschiedenis\"},fileUpload:{fileSizeExceedsLimit:\"Bestandsgrootte overschrijdt de toegestane limiet van 5 MB.\",attachFile:\"Bestand bijvoegen\",allowedFileformats:\"Max 5MB. Alleen {{fileFormats}} toegestaan.\"}};const yo={common:{enter:\"Potwierdź\",confirm:\"Potwierdź\",return:\"Powrót\",close:\"Zamknij\",dateFormat:\"DD/MM/RRRR\",submit:\"Prześlij\",skip:\"Pominąć\"},cxbot:{interviewIntroduction:\"Nasz wirtualny asystent ds. rekrutacji, Career Assistant, ma kilka dodatkowych pytań, aby wstępnie zakwalifikować Cię na dane stanowisko. Wypełnienie tych pytań zajmie mniej niż 5 minut i przyspieszy proces rekrutacji, umożliwiając nam jak najszybsze rozpoczęcie pracy! Po udzieleniu odpowiedzi na pytania będziesz mógł zaplanować spotkanie w oddziale. Odpowiedz na pierwsze pytanie poniżej, aby rozpocząć!\",failedToConnect:\"Nie udało się połączyć\",typeYourMessage:\"Wpisz swoją wiadomość\",send:\"Wyślij\",downloadConversation:\"Pobierz rozmowę\",typing:\"Career Assistant pisze na klawiaturze\",careerAssistantSays:\"Career Assistant mówi:\",youReplied:\"Odpowiedziałeś:\",newMessages:\"Nowe wiadomości: {{count}}\",veryLikely:\"Wysoce prawdopodobne - 10\",notLikely:\"0 - Mało prawdopodobne\",ratingLeaveCommentOptional:\"Zostaw nam komentarz (opcjonalnie)\",pleaseWait:\"Proszę czekać\",loaderRedirect:\"Prosimy czekac, następny krok niedlugo nastąpi\",noResultsFound:\"Nie znaleziono żadnych wyników. Proszę wpisać inne słowo kluczowe\",yearsOfExperience:\"Lata doświadczenia zawodowego\",with:\"z\",years:\"lata doświadczenia\",atleastOneRequired:\"Wymagana jest przynajmniej jedna umiejętność.\",required:\"To pole jest wymagane\",confirmSkills:\"Czy możesz potwierdzić następujące umiejętności?\",confirmJobs:\"Czy możesz potwierdzić następujące miejsca pracy?\",confirmLanguages:\"Czy możesz potwierdzić następujące języki?\",confirmCountries:\"Czy możesz potwierdzić następujące kraje?\",addMore:\"Dodaj więcej\",confirm:\"Potwierdź\",sendStatus:{sending:\"Wysyłanie\",failed:\"Wysyłanie nie powiodło się.\",retry:\"Ponów próbę\"}},feedback:{title:\"Podziel się z nami swoją opinią.\",up:\"Oceń kciuk w górę\",down:\"Oceń kciuk w dół\",validations:{required:\"To pole jest wymagane.\"},commentsForm:{title:\"Czy możesz powiedzieć nam więcej, wybierając jedną z poniższych opcji lub dodając komentarz?\",nadequateAnswers:\"Nieprzydatna odpowiedź\",MoreDetailsNeeded:\"Potrzebuję więcej informacji\",TechnicalProblem:\"Problem techniczny\",comments:\"Wszelkie inne uwagi\",hint:\"Prosimy o nieużywanie w komentarzach wulgarnego lub w inny sposób obraźliwego języka.\",submit:\"Wyslij\"}},accessibility:{playVideo:\"Odtwórz wideo\",close:\"Zamknij\",chat:\"Czat\",chatLog:\"Dziennik czatu\",phoneCountryCode:\"Wybierz kierunkowy kraju\",clear:\"Wyczyść\",expandBot:\"Powiększ rozmiar okna bota\",collapseBot:\"Zmniejsz rozmiar okna bota\",newMessages:\"Nowe wiadomości: {{newMessageCount}}. Kliknij, aby przewinąć do nowych wiadomości\",endOfChat:\"Koniec historii czatu\"},fileUpload:{fileSizeExceedsLimit:\"Rozmiar pliku przekracza dozwolony limit 5MB.\",attachFile:\"Załącz plik\",allowedFileformats:\"Max 5MB. Dozwolone są tylko {{fileFormats}}.\"}};var bo=(0,require(\"i18next\").createInstance)({fallbackLng:\"en\",supportedLngs:[\"de\",\"en\",\"en-CA\",\"en-GB\",\"en-IE\",\"en-US\",\"es\",\"fr\",\"fr-CA\",\"it\",\"ja\",\"nl\",\"pl\"],debug:!1,keySeparator:\".\",interpolation:{escapeValue:!1},resources:{de:ao,en:ro,\"en-CA\":so,\"en-GB\":lo,\"en-IE\":uo,\"en-US\":co,es:mo,fr:fo,\"fr-CA\":vo,it:po,ja:ho,nl:go,pl:yo}});bo.use(s.initReactI18next).init(),bo.changeLanguage(window.navigator.language);const xo=bo,_o=\"UXJbwn1gmCAGBLKm1eOw\",wo=\"NIzNBGLquGorzN1ugJbb\",Co=\"iCxOR_oQSaryYT0HREzU\",jo=\"jIA4fnDcy0BNQVG9FfQT\",ko=\"EMDCUnVJ7Z2c0izdA8te\",So=\"LNHzLEPRT7YFOYmyxJop\",Eo=\"u58SNeHMpZFXBlvBs5z0\",To=\"DGDEhS66Y23EZIc_TSt4\",Ao=\"Psd_jJiZ2DbZYkKvIrj6\";const No=function(e){var n,t,i,r,s=(0,o.__read)((0,le.useState)(e.selectedDates[0]),2),l=s[0],u=s[1],c=(0,o.__read)((0,le.useState)(e.selectedDates[0]||new Date),2),d=c[0],m=c[1],v=(0,o.__read)((0,le.useState)(!1),2),f=v[0],p=v[1],h=(t=Qi,i=null==xo?void 0:xo.language,r=\"\",r=\"en\"===i?\"enUS\":t.hasOwnProperty(i.replace(\"-\",\"\"))?i.replace(\"-\",\"\"):i.slice(0,2),t[r]),g=(0,Hi.format)(d,\"yyyy-MM-01\",{locale:h}),y=(0,Hi.format)((0,Hi.lastDayOfMonth)(d),\"yyyy-MM-dd\",{locale:h}),b=(0,Hi.previousMonday)((0,Hi.parse)(g,\"yyyy-MM-dd\",new Date)),x=(0,Hi.nextSunday)((0,Hi.parse)(y,\"yyyy-MM-dd\",new Date)),_=e.isFutureDisabled,w=e.isPastDisabled,C=e.isTodayDisabled,j=e.isWeekendDisabled,k=e.minDate,S=e.maxDate,E=function(e){var n=!1;return k&&(n=(0,Hi.isBefore)(e,k)),S&&(n=n||(0,Hi.isAfter)(e,S)),_&&(n=n||(0,Hi.isFuture)(e)),w&&(n=n||(0,Hi.isPast)(e)),j&&(n=n||(0,Hi.isWeekend)(e)),C&&(n=n||(0,Hi.isToday)(e)),n=n||!(0,Hi.isSameMonth)(e,d)},T=function(){m((0,Hi.addMonths)(d,1))},A=function(){m((0,Hi.subMonths)(d,1))};return(0,le.useEffect)((function(){e.selectedDates[0]||u(new Date),u(e.selectedDates[0])}),[e.selectedDates]),(0,le.useEffect)((function(){u(d),p(!1)}),[d]),f?(0,a.jsxs)(\"div\",(0,o.__assign)({className:_o},{children:[(0,a.jsxs)(\"div\",(0,o.__assign)({className:wo},{children:[(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",onClick:A},{children:(0,a.jsx)(Xi(),{})})),(0,a.jsxs)(\"button\",(0,o.__assign)({type:\"button\",className:Co,onClick:function(e){e.stopPropagation(),p((function(e){return!e}))}},{children:[(0,Hi.format)(d,\"MMMM yyyy\",{locale:h}),f?(0,a.jsx)(oo(),{}):(0,a.jsx)(to(),{})]})),(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",onClick:T},{children:(0,a.jsx)(eo(),{})}))]})),(0,a.jsx)(\"div\",(0,o.__assign)({className:jo},{children:null===(n=(0,Hi.eachYearOfInterval)({start:(0,Hi.subYears)(new Date,100),end:(0,Hi.addYears)(new Date,100)}))||void 0===n?void 0:n.map((function(e){return(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",onClick:function(){return function(e){m(new Date((0,Hi.getYear)(e),(0,Hi.getMonth)(d),(0,Hi.getDay)(d)))}(e)}},{children:(0,Hi.format)(e,\"yyyy\",{locale:h})}))}))}))]})):(0,a.jsxs)(\"div\",(0,o.__assign)({className:_o},{children:[(0,a.jsxs)(\"div\",(0,o.__assign)({className:wo},{children:[(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",onClick:A},{children:(0,a.jsx)(Xi(),{})})),(0,a.jsxs)(\"button\",(0,o.__assign)({type:\"button\",className:Co,onClick:function(e){e.stopPropagation(),p((function(e){return!e}))}},{children:[(0,Hi.format)(d,\"MMMM yyyy\",{locale:h}),f?(0,a.jsx)(oo(),{}):(0,a.jsx)(to(),{})]})),(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",onClick:T},{children:(0,a.jsx)(eo(),{})}))]})),(0,a.jsxs)(\"div\",(0,o.__assign)({className:ko},{children:[(0,Hi.eachDayOfInterval)({start:b,end:(0,Hi.nextSunday)(b)}).map((function(e){return(0,a.jsx)(\"div\",(0,o.__assign)({className:So},{children:(0,Hi.format)(e,\"ccc\",{locale:h})}))})),(0,Hi.eachDayOfInterval)({start:b,end:x}).map((function(n){var t,i;return(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(Eo)},{children:(0,a.jsxs)(\"button\",(0,o.__assign)({type:\"button\",onClick:function(){return function(n){var t;u(n),null===(t=null==e?void 0:e.onChange)||void 0===t||t.call(e,n)}(n)},disabled:E(n),className:Ue()((t={},t[Ao]=(0,Hi.isSameDay)(n,l),t))},{children:[(0,a.jsx)(\"div\",{children:(0,Hi.format)(n,\"d\",{locale:h})}),(0,Hi.isToday)(n)&&(0,a.jsx)(\"div\",{className:To,style:{right:1===(null===(i=(0,Hi.format)(n,\"d\"))||void 0===i?void 0:i.length)?\"0\":\"5px\"}})]}))}),(0,Hi.getUnixTime)(n))}))]}))]}))},Oo=require(\"@mui/icons-material/CalendarToday\");var Mo=t.n(Oo);const Io=\"hed76R7GFYhZz_gJTXW8\",Do=\"DF678aTWgbTXbk9ZlKjf\",Ro=\"V_e8Ns91hgHQRrkD0yMg\",Fo=\"pV4kWmvqbEKvNUvU6TFp\";const Bo=function(e){var n,t=e.dateFormat,i=void 0===t?\"yyyy/MM/dd\":t,r=e.label,s=e.placeholder,l=void 0===s?i:s,u=e.disabled,c=e.minDate,d=e.maxDate,m=e.weekdaysOnly,v=e.disabledDates,f=e.onChange,p=(0,o.__read)((0,Tn.useField)(e),3),h=p[0],g=p[1],y=p[2],b=g.touched&&g.error,x=(0,o.__read)((0,le.useState)(Ji()(Ki()(h.value,\"yyyy-MM-dd\",new Date))?1e3*Yi()(Ki()(h.value,\"yyyy-MM-dd\",new Date)):0),2),_=x[0],w=x[1];(0,le.useEffect)((function(){h.value&&Ji()(Ki()(h.value,\"yyyy-MM-dd\",new Date))&&w(1e3*Yi()(Ki()(h.value,\"yyyy-MM-dd\",new Date)))}),[h.value]);var C=(0,o.__read)((0,le.useState)(!1),2),j=C[0],k=C[1],S=(0,o.__read)((0,le.useState)(0),2),E=S[0],T=S[1],A=(0,o.__read)((0,le.useState)(!1),2),N=A[0],O=A[1],M=(0,le.useRef)(null),I=(0,le.useRef)(null),D=function(e){var n,t;(null===(n=null==I?void 0:I.current)||void 0===n?void 0:n.contains(e.target))||(null===(t=null==M?void 0:M.current)||void 0===t?void 0:t.contains(e.target))||k(!1)};(0,le.useEffect)((function(){return document.addEventListener(\"click\",D),function(){return document.removeEventListener(\"click\",D)}}),[]);var R,F=function(e){if(e&&e.currentTarget){var n,t=e.currentTarget.value;n=Vi.DateTime.fromFormat(t,i).valueOf(),w(t),n?(O(!1),B(n),y.setValue(new Date(n).toISOString()),f&&f(new Date(n).toISOString())):O(!0)}},B=function(e){var n;n=e,T(E+1),O(!1),w(n),y.setValue(new Date(n).toISOString()),f&&f(new Date(n).toISOString()),k(!1)};return(0,a.jsxs)(\"div\",(0,o.__assign)({className:Io},{children:[(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(Do,(n={},n[Ro]=N||b,n)),ref:M},{children:(R=void 0,_&&\"number\"==typeof _&&(R=_),(0,a.jsxs)(a.Fragment,{children:[r&&(0,a.jsx)(\"label\",(0,o.__assign)({className:\"caption\"},{children:r})),(0,a.jsx)(\"input\",{placeholder:l,type:\"text\",value:R?Vi.DateTime.fromMillis(R).toFormat(i):_||\"\",onClick:function(){return k(!j)},disabled:u,onChange:F}),(0,a.jsx)(Mo(),{})]}))})),(N||b)&&(0,a.jsx)(\"span\",(0,o.__assign)({className:Ro},{children:g.error})),(0,a.jsx)(\"div\",(0,o.__assign)({className:Fo,ref:I},{children:j&&function(){var e=[];_&&!N&&(e=[_]);return(0,a.jsx)(No,{minDate:c,maxDate:d,selectedDates:e,activeDates:undefined,disabledDates:v,isWeekendDisabled:m,onChange:function(e,n){return B(1e3*Yi()(e))}})}()}))]}))},Po=require(\"date-fns/parseISO\");var qo=t.n(Po),zo=function(e){function n(){var n=null!==e&&e.apply(this,arguments)||this;return n._value=n.defaultValue,n.disabled=!1,n.weekdaysOnly=!1,n}return(0,o.__extends)(n,e),Object.defineProperty(n.prototype,\"value\",{get:function(){return this._value},set:function(e){this._value=e},enumerable:!1,configurable:!0}),n.prototype.isSet=function(){return!!this.value},n.prototype.updateInputControlAriaLabeledBy=function(){return\"\"},n.prototype.parse=function(n,t){e.prototype.parse.call(this,n,t),this.weekdaysOnly=n.weekdaysOnly},n.prototype.internalRender=function(){var e,n,t,i,r,s,l,u,c=this,d=null===(t=null===(n=null==se?void 0:se.getState())||void 0===n?void 0:n.cxBot)||void 0===t?void 0:t.conversation.filter((function(e){var n;return null===(n=e.attachments)||void 0===n?void 0:n.find((function(e){return e.contentType===F.ADAPTIVE}))})),m=null==d?void 0:d.filter((function(e){var n;return null===(n=e.attachments)||void 0===n?void 0:n.filter((function(e){var n;return null===(n=e.body)||void 0===n?void 0:n.find((function(e){return e.id===c.id&&e.type===c.getJsonTypeName()}))}))})),v=null===(r=null===(i=null==se?void 0:se.getState())||void 0===i?void 0:i.cxBot)||void 0===r?void 0:r.conversation.find((function(e){var n;return e.replyToId===(null===(n=m[0])||void 0===n?void 0:n.id)}));(null===(s=null==v?void 0:v.value)||void 0===s?void 0:s[this.id])&&!this.value?(this.value=null===(l=null==v?void 0:v.value)||void 0===l?void 0:l[this.id],this.disabled=!0):this.value=this.defaultValue;var f,p,h,g=(0,o.__assign)({},Qi),y=(f=g,p=null==xo?void 0:xo.language,h=\"\",h=\"en\"===p?\"enUS\":f.hasOwnProperty(p.replace(\"-\",\"\"))?p.replace(\"-\",\"\"):p.slice(0,2),f[h]),b=document.createElement(\"div\");return zi.createRoot(b).render((0,a.jsx)(Tn.Formik,(0,o.__assign)({initialValues:(e={},e[this.id]=this.value,e),onSubmit:function(){}},{children:(0,a.jsx)(Tn.Form,{children:(0,a.jsx)(Bo,{id:this.id,name:this.id,disabled:this.disabled,placeholder:xo.t(\"common:dateFormat\"),minDate:this.min&&qo()(this.min),maxDate:this.max&&qo()(this.max),weekdaysOnly:this.weekdaysOnly,onChange:function(e){c.value=Me()(new Date(e),\"yyyy-MM-dd\")},dateFormat:null===(u=null==y?void 0:y.formatLong)||void 0===u?void 0:u.date({width:\"short\"})})})}))),b},n}(qi.DateInput),Lo=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return(0,o.__extends)(n,e),n.prototype.internalRender=function(){var n,t,i,o,a,r,s,l,u;if(!this.defaultValue){var c=null===(t=null===(n=this.getRootElement().getAllActions()[0])||void 0===n?void 0:n.data)||void 0===t?void 0:t.id,d=null===(o=null===(i=null==se?void 0:se.getState())||void 0===i?void 0:i.cxBot)||void 0===o?void 0:o.conversation.find((function(e){var n;return(null===(n=null==e?void 0:e.value)||void 0===n?void 0:n.id)===c}));(null===(a=null==d?void 0:d.value)||void 0===a?void 0:a[this.id])&&(this.defaultValue=null===(r=null==d?void 0:d.value)||void 0===r?void 0:r[this.id])}var m=document.createElement(\"fieldset\"),v=document.createElement(\"legend\");return v.innerHTML=null===(u=null===(l=null===(s=this.getRootElement())||void 0===s?void 0:s._items)||void 0===l?void 0:l.find((function(e){return e instanceof qi.TextBlock})))||void 0===u?void 0:u.text,v.setAttribute(\"style\",\"position:absolute;left:10000px\"),m.appendChild(v),m.appendChild(e.prototype.internalRender.call(this)),m},n}(qi.ChoiceSetInput),Vo=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return(0,o.__extends)(n,e),n.prototype.parse=function(n){e.prototype.parse.call(this,n),this.style=\"button\"},n}(qi.SubmitAction);const Uo=require(\"@mui/icons-material/PlayCircle\");var Yo=t.n(Uo);const Go=\"ac7RtUT2kbiOQt5Ctj0g\",Jo=\"FTSXWqzkq8UvYTzM2f2n\",Wo=\"NdeMR0RKm102514GMdGA\",Ko=\"wW_BKA8PA_RSspRqgQim\",Ho=\"sK7L1WbCJu92MyhhsM1V\",Qo=\"cNv7qJ3EE0xt1yRfJ4bM\",Zo=\"gz4tW5NmFxtIBAuiO9Dt\",Xo=\"eXmcR3X9myTMdmi7GfWY\",$o=\"IgTZgZ8MCsAVfb9D_j7c\";var ea=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return(0,o.__extends)(n,e),n.prototype.render=function(){var e=document.createElement(\"embed\");return e.src=this.getEmbedVideoUrl(),e.type=\"video/mp4\",e},n}(qi.YouTubePlayer),na=function(e){function n(){var n=e.call(this)||this;return qi.Media.customMediaPlayers=[{urlPatterns:[/^(?:https?:\\/\\/)?(?:www.)?youtube.com\\/watch\\?(?=.*v=([\\w\\d-_]+))(?=(?:.*t=(\\d+))?).*/gi,/^(?:https?:\\/\\/)?youtu.be\\/([\\w\\d-_]+)(?:\\?t=(\\d+))?/gi],createMediaPlayer:function(e){return new ea(e,qi.Strings.defaults.youTubeVideoPlayer())}},{urlPatterns:[/^(?:https?:\\/\\/)?vimeo.com\\/([\\w\\d-_]+).*/gi],createMediaPlayer:function(e){return new qi.VimeoPlayer(e,qi.Strings.defaults.vimeoVideoPlayer())}},{urlPatterns:[/^(?:https?:\\/\\/)?(?:www.)?dailymotion.com\\/video\\/([\\w\\d-_]+).*/gi],createMediaPlayer:function(e){return new qi.DailymotionPlayer(e,qi.Strings.defaults.dailymotionVideoPlayer())}}],n.displayPoster=function(){var e;if(n.renderedElement){var t=n.poster?n.poster:n._mediaPlayer.posterUrl;t||(t=n.hostConfig.media.defaultPoster),Li().createRoot(n.renderedElement).render((0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(Go,n.hostConfig.makeCssClassName(\"ac-media-poster\"),(e={},e[Jo]=!t,e.empty=!t,e)),\"aria-label\":n.altText||qi.Strings.defaults.mediaPlayerAriaLabel()},{children:t&&(0,a.jsxs)(We,{children:[(0,a.jsx)(\"img\",{className:Wo,alt:\"\",src:t,onClick:function(e){return n.handlePlayButtonInvoke(e)}}),(0,a.jsx)(\"div\",(0,o.__assign)({className:Ko},{children:n.hostConfig.supportsInteractivity&&n._mediaPlayer.canPlay()&&(0,a.jsxs)(\"button\",(0,o.__assign)({\"aria-label\":xo.t(\"accessibility:playVideo\"),className:Ue()(Ho,\"ac-media-playButton\"),onClick:function(e){return n.handlePlayButtonInvoke(e)},onKeyUp:function(e){return(\"Enter\"===e.code||\"Space\"===e.code)&&n.handlePlayButtonInvoke(e)}},{children:[xo.t(\"accessibility:playVideo\"),(0,a.jsx)(Yo(),{className:\"ac-media-playButton-arrow\"})]}))}))]})})))}},n}return(0,o.__extends)(n,e),n}(qi.Media),ta=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return(0,o.__extends)(n,e),n.prototype.internalRender=function(){var n=e.prototype.internalRender.call(this),t=document.createElement(\"div\");return t.setAttribute(\"class\",\"ac-image-container\"),n.getElementsByTagName(\"img\")[0].setAttribute(\"alt\",\"\"),t.appendChild(n),t},n}(qi.Image),ia=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return(0,o.__extends)(n,e),n.prototype.internalRender=function(){return this.wrap=!0,e.prototype.internalRender.call(this)},n}(qi.TextBlock);const oa=require(\"@mui/icons-material/AttachFileOutlined\");var aa=t.n(oa);const ra=require(\"@mui/icons-material/InsertDriveFileOutlined\");var sa=t.n(ra);const la=require(\"@mui/icons-material/HighlightOffOutlined\");var ua=t.n(la),ca=function(e){function n(){var n=e.call(this)||this;return n.MaxFileSize=5242880,n}return(0,o.__extends)(n,e),n.prototype.parse=function(n,t){e.prototype.parse.call(this,n,t),this.data=n.data,this.fileFormats=n.fileFormats,this.skip=n.skip},n.prototype.isSet=function(){return!0},Object.defineProperty(n.prototype,\"value\",{get:function(){var e;return null===(e=this.file)||void 0===e?void 0:e.name},enumerable:!1,configurable:!0}),n.prototype.internalRender=function(){var e=this,n=document.createElement(\"div\");return zi.createRoot(n).render((0,a.jsx)((function(){var n=(0,o.__read)((0,le.useState)(),2),t=n[0],i=n[1],r=(0,o.__read)((0,le.useState)(!0),2),s=r[0],l=r[1],u=(0,le.useRef)();return(0,a.jsxs)(\"div\",{children:[(0,a.jsxs)(\"div\",(0,o.__assign)({className:Qo},{children:[!t&&s&&e.skip&&(0,a.jsx)(\"button\",(0,o.__assign)({onClick:function(){var n;null===(n=e._parent)||void 0===n||n.onExecuteAction(e),l(!1)},className:nn},{children:xo.t(\"common:skip\")})),!t&&s&&(0,a.jsx)(\"div\",{children:(0,a.jsxs)(\"button\",(0,o.__assign)({onClick:function(){var e;return null===(e=null==u?void 0:u.current)||void 0===e?void 0:e.click()}},{children:[(0,a.jsx)(aa(),{}),\" \",xo.t(\"fileUpload:attachFile\")]}))})]})),!t&&s&&(0,a.jsx)(\"small\",{children:xo.t(\"fileUpload:allowedFileformats\",{fileFormats:e.fileFormats.join(\", \")})}),(0,a.jsxs)(\"div\",(0,o.__assign)({className:Qo},{children:[(0,a.jsx)(\"input\",{id:e.id,name:e.id,type:\"file\",hidden:!0,accept:e.fileFormats.map((function(e){return\".\".concat(e)})).join(\", \"),ref:u,onChange:function(){return(0,o.__awaiter)(e,void 0,void 0,(function(){var e,n;return(0,o.__generator)(this,(function(t){return e=null===(n=null==u?void 0:u.current)||void 0===n?void 0:n.files[0],i(e),[2]}))}))}}),t&&(0,a.jsxs)(\"div\",{children:[(0,a.jsxs)(\"div\",(0,o.__assign)({className:Zo},{children:[(0,a.jsx)(sa(),{}),\" \",t.name,s&&(0,a.jsx)(\"button\",(0,o.__assign)({className:sn,onClick:function(){return i(null)}},{children:(0,a.jsx)(ua(),{})}))]})),t&&t.size>e.MaxFileSize&&(0,a.jsx)(\"small\",(0,o.__assign)({className:$o},{children:xo.t(\"fileUpload:fileSizeExceedsLimit\")})),s&&t.size<=e.MaxFileSize&&(0,a.jsx)(\"button\",(0,o.__assign)({className:Xo,onClick:function(){var n;e.file=t,null===(n=e._parent)||void 0===n||n.onExecuteAction(e),l(!1)}},{children:xo.t(\"common:confirm\")}))]})]}))]})}),{})),n},n.prototype.getJsonTypeName=function(){return n.JsonTypeName},n.JsonTypeName=\"Input.File\",n}(qi.Input);qi.AdaptiveCard.onProcessMarkdown||(qi.AdaptiveCard.onProcessMarkdown=function(e,n){n.outputHtml=ri().sanitize(ti.marked.parse(e,{gfm:!0,breaks:!0}),{ADD_ATTR:[\"target\"]}),n.didProcess=!0});var da=function(e){var n=e.payload,t=e.onExecuteAction,i=e.onActionSubmit,r=e.onActionOpenUrl,s=e.onActionShowCard,l=e.onActionExecute,u=e.onError,c=e.style,d=e.hostConfig,m=(0,o.__read)((0,le.useState)(),2),v=m[0],f=m[1],p=(0,le.useRef)(null),h=(0,le.useRef)(new qi.AdaptiveCard),g=(0,o.__read)(w(),1)[0],y=ve().model,b=(0,le.useCallback)((function(e){var n;switch(e.getJsonTypeName()){case qi.OpenUrlAction.JsonTypeName:g({campaignId:y.campaignId,candidateId:y.entityId,title:\"\",url:e.url}),r?r(e):(n=e,window.open(n.url,\"_blank\"));break;case qi.ShowCardAction.JsonTypeName:s&&s(e);break;case qi.SubmitAction.JsonTypeName:i&&i(e);break;case ca.JsonTypeName:l&&l(e)}t&&t(e)}),[r,s,i,t]),x=(0,le.useCallback)((function(){var e;if(p.current){var t=h.current;try{t.parse(n);var i=t.render();p.current.innerHTML=\"\",p.current.appendChild(i),null===(e=(0,o.__spreadArray)((0,o.__spreadArray)([],(0,o.__read)(Array.from(p.current.getElementsByClassName(\"ac-adaptiveCard\"))),!1),(0,o.__read)(Array.from(p.current.getElementsByClassName(\"ac-choiceSetInput-multiSelect\"))),!1))||void 0===e||e.forEach((function(e){return e.removeAttribute(\"tabindex\")}))}catch(e){f(e),u&&u(e)}}}),[u,n]);return(0,le.useEffect)((function(){h.current.onExecuteAction=b}),[b]),(0,le.useEffect)((function(){h.current.hostConfig=new qi.HostConfig(d),qi.GlobalRegistry.elements.register(\"Input.Date\",zo),qi.GlobalRegistry.elements.register(\"Media\",na),qi.GlobalRegistry.elements.register(\"Image\",ta),qi.GlobalRegistry.elements.register(\"TextBlock\",ia),qi.GlobalRegistry.elements.register(\"Input.ChoiceSet\",Lo),qi.GlobalRegistry.elements.register(\"Input.File\",ca),qi.GlobalRegistry.actions.register(\"Action.Submit\",Vo)}),[d]),(0,le.useEffect)((function(){x()}),[x]),v?(0,a.jsx)(\"div\",(0,o.__assign)({style:{color:\"red\"}},{children:v.message})):(0,a.jsx)(\"div\",{style:c,ref:p})};const ma=ue().memo(da),va=\"tlexK4TjcYZu97tHgjsW\",fa=\"Q8rH5ym_PedRjZsNQFO9\",pa=\"For8odtxFIm3oe3JX60M\",ha=\"FwuF0hacLp7MenaYRX40\",ga=\"bO1lwGeMERctuFPOySLo\",ya=\"CWsD9C_jvlG4NOHGsQGJ\",ba=\"M81R4QiVUNJpmIOWeU4e\",xa=\"tht_p79dHzJXJERi0BUz\",_a=\"_PqniV0KUjS2fxnaDNbC\",wa=\"kzOrEYgTNt3VT_5tGjLP\",Ca=\"kLFXXQ0cmptLnbJmtgdJ\",ja=\"JXqU53XhVvaPBtLIxRma\",ka=\"piU1XaXN3UO7zm0mlqf9\",Sa=\"rIVvOXHKULrMyrDJY5QQ\",Ea=\"qTvT2rmnsHVzMk0Zu617\",Ta=\"W9DB8fXhWXkDg8eLourU\",Aa=\"X4_2Gy2QS0RpSWp9U7nR\",Na=\"ptxD2c1dmzYUXfj1orMe\",Oa=\"mrSCNG9nuS0TPesjGFIQ\",Ma=\"th2G7rJPlMdliKfNQBKW\";const Ia=function(e){var n,t=e.item;return(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(va,(n={},n[fa]=!t.wrap,n[pa]=t.maxLines&&t.maxLines>0,n)),style:{WebkitLineClamp:t.maxLines,fontWeight:t.weight}},{children:oi()(ri().sanitize(ti.marked.parse(t.text,{gfm:!0,breaks:!0}),{ADD_ATTR:[\"target\"]}))}))};const Da=function(e){var n,t=e.id,i=e.choices,r=e.sumbitAction,s=e.isLast,l=(0,o.__read)((0,Tn.useField)(t),3),u=l[0],c=l[1],d=l[2],m=he().isBotExpanded,v=function(e){var n=e.target,t=n.value;n.checked?d.setValue(u.value?\"\".concat(u.value||\"\",\"|\").concat(t):t):d.setValue(u.value.split(\"|\").filter((function(e){return e!==t})).join(\"|\"))};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(ha,(n={},n[ga]=m,n))},{children:i.map((function(e){var n;return(0,a.jsxs)(\"label\",{children:[(0,a.jsx)(\"input\",{type:\"checkbox\",name:e.title,value:e.value,checked:null===(n=u.value)||void 0===n?void 0:n.split(\"|\").includes(e.value),disabled:c.initialValue,onChange:v}),e.title]},e.title)}))})),!c.initialValue&&!s&&(0,a.jsx)(\"button\",(0,o.__assign)({type:\"submit\",className:Ca},{children:r.title}))]})};var Ra=[/^(?:https?:\\/\\/)?(?:www.)?youtube.com\\/watch\\?(?=.*v=([\\w\\d-_]+))(?=(?:.*t=(\\d+))?).*/gi,/^(?:https?:\\/\\/)?youtu.be\\/([\\w\\d-_]+)(?:\\?t=(\\d+))?/gi],Fa=[/^(?:https?:\\/\\/)?vimeo.com\\/([\\w\\d-_]+).*/gi],Ba=[/^(?:https?:\\/\\/)?(?:www.)?dailymotion.com\\/video\\/([\\w\\d-_]+).*/gi,/^(?:https?:\\/\\/)?(?:www.)?dai.ly\\/([\\w\\d-_]+).*/gi];const Pa=function(e){var n,t=e.sources,i=e.poster,r=e.altText,s=null===(n=null==t?void 0:t[0])||void 0===n?void 0:n.url,l=(0,o.__read)((0,le.useState)(!0),2),u=l[0],c=l[1],d=(0,o.__read)((0,le.useState)(),2),m=d[0],v=d[1],f=(0,o.__read)((0,le.useState)(i),2),p=f[0],h=f[1],g=function(){return c(!1)},y=(0,le.useMemo)((function(){return Ra.some((function(e){return e.test(s)}))}),[s]),b=(0,le.useMemo)((function(){return Fa.some((function(e){return e.test(s)}))}),[s]),x=(0,le.useMemo)((function(){return Ba.some((function(e){return e.test(s)}))}),[s]);return(0,le.useEffect)((function(){(0,o.__awaiter)(void 0,void 0,void 0,(function(){var e,n,t,i;return(0,o.__generator)(this,(function(o){switch(o.label){case 0:return y&&(e=/^.*(youtu\\.be\\/|v\\/|u\\/\\w\\/|embed\\/|watch\\?v=|\\&v=)([^#\\&\\?]*).*/,(n=s.match(e))&&11==n[2].length&&(v(n[2]),h(\"https://img.youtube.com/vi/\".concat(n[2],\"/maxresdefault.jpg\")))),b?[4,fetch(\"https://vimeo.com/api/oembed.json?url=\".concat(s))]:[3,3];case 1:return[4,o.sent().json()];case 2:t=o.sent(),v(t.video_id),h(t.thumbnail_url),o.label=3;case 3:return x&&(i=s.split(\"/\"),v(i[i.length-1]),h(\"https://www.dailymotion.com/thumbnail/video/\".concat(i[i.length-1]))),[2]}}))}))}),[s,y,b,x]),(0,a.jsxs)(\"div\",(0,o.__assign)({className:ja,\"aria-label\":r||\"Media content\"},{children:[u&&(0,a.jsxs)(We,{children:[(0,a.jsx)(\"img\",{className:Sa,alt:\"\",src:p,onClick:g}),(0,a.jsx)(\"div\",(0,o.__assign)({className:Ea},{children:(0,a.jsxs)(\"button\",(0,o.__assign)({\"aria-label\":xo.t(\"accessibility:playVideo\"),className:Ue()(Ta),onClick:g,onKeyUp:function(e){return(\"Enter\"===e.code||\"Space\"===e.code)&&g()}},{children:[xo.t(\"accessibility:playVideo\"),(0,a.jsx)(Yo(),{})]}))}))]}),!u&&y&&(0,a.jsx)(\"embed\",{src:\"https://www.youtube.com/embed/\".concat(m,\"?&autoplay=1\"),type:\"video/mp4\"}),!u&&b&&(0,a.jsx)(\"embed\",{src:\"https://player.vimeo.com/video/\".concat(m,\"?autoplay=1\"),type:\"video/mp4\"}),!u&&x&&(0,a.jsx)(\"embed\",{src:\"https://www.dailymotion.com/embed/video/\".concat(m,\"?autoplay=1\"),type:\"video/mp4\"}),!u&&!y&&!b&&!x&&(0,a.jsx)(\"video\",{className:ka,src:s,controls:!0,poster:p,autoPlay:!0})]}))};const qa=function(e){var n,t,i,r,s=e.id,l=e.min,u=e.max,c=e.weekdaysOnly,d=e.disabled,m=(0,o.__assign)({},Qi),v=(t=m,i=null==xo?void 0:xo.language,r=\"\",r=\"en\"===i?\"enUS\":t.hasOwnProperty(i.replace(\"-\",\"\"))?i.replace(\"-\",\"\"):i.slice(0,2),t[r]),f=(0,Tn.useFormikContext)().setFieldValue;return(0,a.jsx)(Bo,{name:s,placeholder:xo.t(\"common:dateFormat\"),minDate:l&&Ki()(l,\"yyyy-MM-dd\",new Date),maxDate:u&&Ki()(u,\"yyyy-MM-dd\",new Date),weekdaysOnly:c,dateFormat:null===(n=null==v?void 0:v.formatLong)||void 0===n?void 0:n.date({width:\"short\"}),onChange:function(e){return f(s,Me()(new Date(e),\"yyyy-MM-dd\"))},disabled:d})};const za=function(e){var n=e.item;return(0,a.jsx)(\"div\",(0,o.__assign)({className:ya},{children:(0,a.jsx)(\"img\",{src:n.url,alt:n.altText,className:ba})}))};const La=function(e){var n,t,i,r=e.item,s=e.isLast,l=(0,le.useRef)(null),u=(0,Tn.useFormikContext)().setFieldValue;return(0,le.useEffect)((function(){var e;(null===(e=null==r?void 0:r.selectAction)||void 0===e?void 0:e.data)&&u(\"data\",r.selectAction.data)}),[null===(t=null==r?void 0:r.selectAction)||void 0===t?void 0:t.data]),(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(xa,(n={},n[_a]=null===(i=null==r?void 0:r.selectAction)||void 0===i?void 0:i.data,n)),onClick:function(){var e;return null===(e=null==l?void 0:l.current)||void 0===e?void 0:e.click()}},{children:[r.columns.map((function(e){return(0,a.jsx)(Ya,{item:e,isLast:s},(0,Ti.v4)())})),r.selectAction&&(0,a.jsx)(\"button\",{type:\"submit\",className:wa,ref:l})]}))};const Va=function(e){var n,t,i=e.item,l=(0,s.useTranslation)(\"cxbot\").t,u=ve().model,c=(0,Tn.useFormikContext)().setFieldValue,d=i.id,m=i.data,v=i.fileFormats,f=i.skip,p=(0,o.__read)((0,le.useState)(),2),h=p[0],g=p[1],y=(0,le.useRef)(),b=(0,o.__read)(C(),1)[0],x=(0,r.useSelector)((function(e){return e.cxBot})).conversation,_=(0,le.useMemo)((function(){return x.find((function(e){var n;return(null===(n=e.value)||void 0===n?void 0:n.id)===m.id}))}),[x,m.id]),w=(0,le.useMemo)((function(){return h&&h.size>5242880}),[h]);return(0,a.jsxs)(\"div\",{children:[(0,a.jsxs)(\"div\",(0,o.__assign)({className:Aa},{children:[!h&&!_&&f&&(0,a.jsx)(\"button\",(0,o.__assign)({type:\"submit\",onClick:function(){c(\"id\",m.id),c(d,\"Skip\")},className:nn},{children:l(\"common:skip\")})),!h&&!_&&(0,a.jsx)(\"div\",{children:(0,a.jsxs)(\"button\",(0,o.__assign)({type:\"button\",onClick:function(){var e;return null===(e=null==y?void 0:y.current)||void 0===e?void 0:e.click()}},{children:[(0,a.jsx)(aa(),{}),\" \",l(\"fileUpload:attachFile\")]}))})]})),!h&&!_&&(0,a.jsx)(\"small\",{children:l(\"fileUpload:allowedFileformats\",{fileFormats:v.join(\", \")})}),(0,a.jsxs)(\"div\",(0,o.__assign)({className:Aa},{children:[(0,a.jsx)(\"input\",{id:d,name:d,type:\"file\",hidden:!0,accept:v.map((function(e){return\".\".concat(e)})).join(\", \"),ref:y,onChange:function(){return(0,o.__awaiter)(void 0,void 0,void 0,(function(){var e,n;return(0,o.__generator)(this,(function(t){return e=null===(n=null==y?void 0:y.current)||void 0===n?void 0:n.files[0],g(e),c(\"id\",m.id),c(d,null==e?void 0:e.name),[2]}))}))}}),h&&(0,a.jsxs)(\"div\",{children:[(0,a.jsxs)(\"div\",(0,o.__assign)({className:Na},{children:[(0,a.jsx)(sa(),{}),\" \",null==h?void 0:h.name,!_&&(0,a.jsx)(\"button\",(0,o.__assign)({type:\"button\",className:sn,onClick:function(){return g(null)}},{children:(0,a.jsx)(ua(),{})}))]})),h&&w&&(0,a.jsx)(\"small\",(0,o.__assign)({className:Ma},{children:l(\"fileUpload:fileSizeExceedsLimit\")})),!w&&!_&&(0,a.jsx)(\"button\",(0,o.__assign)({type:\"submit\",className:Oa,onClick:function(){var e=new FormData;e.append(\"file\",h),e.append(\"candidateId\",u.entityId),e.append(\"documentType\",d),b(e)}},{children:l(\"common:confirm\")}))]}),!h&&_&&(0,a.jsx)(\"div\",(0,o.__assign)({className:Na},{children:\"Skip\"!==(null===(n=_.value)||void 0===n?void 0:n[d])&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(sa(),{}),null===(t=_.value)||void 0===t?void 0:t[d]]})}))]}))]})};var Ua=function(e){var n=e.item,t=e.isLast,i=e.sumbitAction;return(0,a.jsx)(a.Fragment,{children:function(e){switch(e.type){case\"TextBlock\":return(0,a.jsx)(Ia,{item:e});case\"Input.ChoiceSet\":return(0,a.jsx)(Da,{id:e.id,choices:e.choices,sumbitAction:i,isLast:t});case\"Media\":return(0,a.jsx)(Pa,{sources:e.sources,poster:e.poster,altText:e.altText});case\"Input.Date\":return(0,a.jsx)(qa,{id:e.id,min:e.min,max:e.max,weekdaysOnly:e.weekdaysOnly,disabled:!t});case\"ColumnSet\":return(0,a.jsx)(La,{item:e,isLast:t});case\"Column\":return(0,a.jsx)(\"div\",{children:e.items.map((function(e){return(0,a.jsx)(Ua,{item:e,isLast:t},(0,Ti.v4)())}))});case\"Input.File\":return(0,a.jsx)(Va,{item:e});case\"Image\":return(0,a.jsx)(za,{item:e});default:return null}}(n)})};const Ya=Ua;const Ga=function(e){var n,t,i=e.activity,r=e.payload,s=ve().model,l=ze(),u=Rt().lastItem,c=(0,le.useMemo)((function(){return(null==u?void 0:u.id)===(null==i?void 0:i.id)}),[u,i]),d=(0,o.__read)(_(),1)[0],m=(0,o.__read)(w(),1)[0],v=(0,o.__read)((0,le.useState)(),2),f=v[0],p=v[1],h=function(e){var n;if(\"clickTrack\"===(null===(n=null==e?void 0:e.data)||void 0===n?void 0:n.action))return null;switch(e.type){case\"Action.Submit\":return c&&(0,a.jsx)(\"button\",(0,o.__assign)({type:\"submit\",className:Ca},{children:e.title}));case\"Action.OpenUrl\":return(0,a.jsx)(\"button\",(0,o.__assign)({onClick:function(){return function(e){var n=e.url;m({campaignId:s.campaignId,candidateId:s.entityId,title:\"\",url:n});var t=document.createElement(\"a\");t.setAttribute(\"href\",\"\".concat(n)),t.setAttribute(\"target\",\"_blank\"),t.setAttribute(\"rel\",\"noreferrer noopener\"),t.style.display=\"none\",t.click()}(e)}},{children:e.title}));default:return null}},g=(0,le.useMemo)((function(){var e,n,t,o,a,s;if(f)return f;var l={},u=null===(e=null==r?void 0:r.body)||void 0===e?void 0:e.find((function(e){return\"Input.ChoiceSet\"===e.type}));u&&(l[u.id]=(null==u?void 0:u.value)||\"\");var c=null===(n=null==r?void 0:r.body)||void 0===n?void 0:n.filter((function(e){return\"Input.Date\"===e.type}));(null==c?void 0:c.length)>0&&c.forEach((function(e){var n,t;l[e.id]=(null===(t=null===(n=null==i?void 0:i.value)||void 0===n?void 0:n[null==e?void 0:e.id])||void 0===t?void 0:t.value)||e.value}));var d=null===(t=null==r?void 0:r.body)||void 0===t?void 0:t.find((function(e){return\"Input.File\"===e.type}));return d&&((null===(o=null==i?void 0:i.value)||void 0===o?void 0:o[d.id])?l[d.data.id]={file:{name:null===(a=null==i?void 0:i.value)||void 0===a?void 0:a[d.id]}}:l[d.data.id]=null),null===(s=null==r?void 0:r.actions)||void 0===s||s.forEach((function(e){l.id=e.data.id})),l}),[r,f]);return(0,a.jsx)(Tn.Formik,(0,o.__assign)({initialValues:g,onSubmit:function(e){var n,t;if(\"clickTrack\"===(null===(n=null==e?void 0:e.data)||void 0===n?void 0:n.action))return d(null==e?void 0:e.data),window.open(null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.jobUrl,\"_blank\"),null;p(e),l(e)},enableReinitialize:!0},{children:(0,a.jsxs)(Tn.Form,{children:[null===(n=null==r?void 0:r.body)||void 0===n?void 0:n.map((function(e){var n;return(0,a.jsx)(Ya,{item:e,isLast:c,sumbitAction:null===(n=null==r?void 0:r.actions)||void 0===n?void 0:n.find((function(e){return\"Action.Submit\"===e.type}))},(0,Ti.v4)())})),null===(t=null==r?void 0:r.actions)||void 0===t?void 0:t.map((function(e){return(0,a.jsx)(\"div\",{children:h(e)},e.title)}))]})}))};var Ja=t(247),Wa=function(e){var n,t,i,r=e.activity,l=e.attachment,u=e.isFromBot,c=(0,s.useTranslation)(\"cxbot\").t,d=(0,o.__read)(_(),1)[0],m=(0,o.__read)(w(),1)[0],v=(0,o.__read)(C(),1)[0],f=Be(),p=Pe(),h=ze(),g=he().isBotExpanded,y=ve().model,b=Dt(r),x=b.hasFeedbackAttachment,j=b.feedbackAttachment;return l.contentType===F.ADAPTIVE?(0,a.jsxs)(\"div\",{children:[(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(pt.chatBubble,(n={},n[pt.fromBot]=u,n))},{children:(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(pt.chatBubbleItem,(t={},t[pt.fromBot]=u,t[pt.fromUser]=!u,t)),tabIndex:0},{children:(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(pt.adaptiveCard,(i={},i[pt.expanded]=g,i))},{children:[(null==y?void 0:y.isNewAdaptiveCardEnabled)?(0,a.jsx)(Ga,{activity:r,payload:l.content}):(0,a.jsx)(ma,{payload:l.content,hostConfig:{choiceSetInputValueSeparator:\"|\"},onActionSubmit:function(e){var n,t;if(\"clickTrack\"===(null===(n=null==e?void 0:e.data)||void 0===n?void 0:n.action))return d(null==e?void 0:e.data),void window.open(null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.jobUrl,\"_blank\");switch(e.getJsonTypeName()){case\"Action.Submit\":return\"string\"==typeof e._processedData?f(e.title):h(e._processedData);case\"Action.OpenUrl\":var i=e.url;m({campaignId:y.campaignId,candidateId:y.entityId,title:\"\",url:i});var o=document.createElement(\"a\");return o.setAttribute(\"href\",\"\".concat(i)),o.setAttribute(\"target\",\"_blank\"),o.setAttribute(\"rel\",\"noreferrer noopener\"),o.style.display=\"none\",o.click(),null;default:return null}},onActionExecute:function(e){var n,t;if(e.file){Ja.log(e);var i=new FormData;i.append(\"file\",e.file),i.append(\"candidateId\",y.entityId),i.append(\"documentType\",e.id),v(i),p(((n={id:e.data.id})[e.id]=e.file.name,n))}else p(((t={id:e.data.id})[e.id]=c(\"common:skip\"),t))}}),x&&(0,a.jsx)(ji,{attachment:j})]}))}))})),x&&!g&&(0,a.jsx)(Ci,{attachment:j}),(0,a.jsx)(Ei,{activity:r,isFromBot:u,onRetry:function(e){f(e.text)}})]}):null};const Ka=ue().memo(Wa);var Ha=function(e){var n,t,i,r,l,u,c=e.activity,d=(0,s.useTranslation)(\"cxbot\").t,m=he().isBotExpanded,v=Be(),f=Pe(),p=(0,o.__read)(w(),1)[0],h=ve().model,g=Dt(c),y=g.hasAttachements,b=g.hasFeedbackAttachment,x=g.feedbackAttachment,_=g.hasContent,C=g.hasSuggestedActions,j=g.isFromBot,k=g.heroCardAttachment,S=(0,le.useMemo)((function(){var e;return c.type===D.MESSAGE&&(0,a.jsx)(\"div\",(0,o.__assign)({className:pt.attachment},{children:null===(e=null==c?void 0:c.attachments)||void 0===e?void 0:e.map((function(e,n){return(0,a.jsx)(Ka,{attachment:e,activity:c,isFromBot:j},n)}))}))}),[c,j]);if(c.type===D.EVENT||c.type===D.TYPING)return null;ti.marked.use({renderer:{paragraph:function(e){return e.split(\"\\n\").map((function(e){return\"\".concat(e,\"
\")})).join(\"\")},heading:function(e){return e.split(\"\\n\").map((function(e){return\"\".concat(e,\"
\")})).join(\"\")}}});var E;return(0,a.jsx)(xi,{children:(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(pt.chatBubbleContainer,(n={},n[pt.fromBot]=j,n[pt.fromUser]=!j,n[pt.hasContent]=_,n)),role:\"article\"},{children:[c.text&&(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(pt.chatBubble,(t={},t[pt.fromBot]=j,t[pt.hasFeedbackAttachment]=b,t))},{children:[(0,a.jsxs)(\"div\",(0,o.__assign)({className:Ue()(pt.chatBubbleItem,(i={},i[pt.fromBot]=j,i[pt.fromUser]=!j,i)),id:c.id,tabIndex:0,role:\"button\",\"aria-live\":\"polite\",\"aria-label\":\"\".concat(d(j?\"careerAssistantSays\":\"youReplied\"),\" \").concat((E=c.speak||c.text,ri().sanitize(ti.marked.parse(E,{gfm:!0,breaks:!0}),{ALLOWED_TAGS:[]})))},{children:[function(e){var n={replace:function(e){var t=e,i=t.attribs,r=t.children,s=e,l=s.type,u=s.data;return(null==i?void 0:i.href)?(0,a.jsxs)(\"a\",(0,o.__assign)({className:pt.link,href:i.href,onClick:function(){var e,n,t;return n=i.href,t=null===(e=r[0])||void 0===e?void 0:e.data,void p({campaignId:h.campaignId,candidateId:h.entityId,title:t,url:n})},target:\"_blank\",rel:\"noreferrer noopener\",tabIndex:0},{children:[(0,ii.domToReact)(r,n),(0,a.jsx)(\"div\",{className:pt.openInNewIcon})]})):\"text\"===l?(0,a.jsx)(\"span\",(0,o.__assign)({\"aria-hidden\":!0},{children:u})):e}};return oi()(ri().sanitize(ti.marked.parse(e,{gfm:!0,breaks:!0}),{ADD_ATTR:[\"target\"]}),n)}((null===(l=null===(r=null==c?void 0:c.channelData)||void 0===r?void 0:r.messageBack)||void 0===l?void 0:l.displayText)||c.text),c.text&&b&&(0,a.jsx)(ji,{attachment:x})]})),y&&S]})),c.text&&b&&!m&&(0,a.jsx)(Ci,{attachment:x}),!c.text&&y&&S,c.timestamp&&_&&!C&&!y&&(0,a.jsx)(Ei,{activity:c,isFromBot:j,onRetry:function(e){v(e.text)}}),C&&(0,a.jsx)(Pi,{actions:(null===(u=c.suggestedActions)||void 0===u?void 0:u.actions)||function(e){var n,t=null===(n=e.content)||void 0===n?void 0:n.buttons;return null==t?void 0:t.map((function(e){return{title:e.title,type:e.type,value:e.value,displayText:e.displayText}}))}(k),onSuggestedActionClick:function(e){var n;switch(e.type){case\"imBack\":return v(e.value);case\"messageBack\":return f(e.value,e.title,null===(n=e.displayText)||void 0===n?void 0:n.replaceAll(\"\\n\",\"\"));default:return}}})]}))})};const Qa=ue().memo(Ha);var Za=function(){var e=(0,s.useTranslation)(\"cxbot\").t,n=(0,r.useDispatch)(),t=En(),i=t.scrollToBottom,l=t.scrollRef,u=Te().targetRef,c=(0,o.__read)((0,jn.useAtBottom)(),1)[0],d=(0,r.useSelector)((function(e){return e.cxBot})).conversation,m=Rt(),v=m.lastMessage,f=m.lastItem,p=m.isNPSOpen,h=m.eventNpsRedirect;return(0,le.useEffect)((function(){c&&(i(),n(J()))}),[c,v,p,n]),(0,a.jsxs)(\"div\",(0,o.__assign)({className:pt.chatContainer,ref:l,role:\"region\",\"aria-label\":e(\"accessibility:chat\")},{children:[(0,a.jsxs)(\"div\",(0,o.__assign)({role:\"feed\",\"aria-label\":e(\"accessibility:chatLog\"),\"aria-busy\":!1,ref:u},{children:[d.map((function(e){return(0,a.jsx)(Qa,{activity:e,\"aria-live\":\"polite\"},e.id)})),p&&(0,a.jsx)(ni,{inputData:null==f?void 0:f.value}),h&&(0,a.jsx)(ni,{inputData:null==h?void 0:h.value})]})),(0,a.jsx)(bt,{}),(0,a.jsx)(\"div\",(0,o.__assign)({className:pt.accessibleText,tabIndex:0,role:\"button\",\"aria-disabled\":\"true\"},{children:e(\"accessibility:endOfChat\")}))]}))};const Xa=ue().memo(Za),$a=require(\"@mui/icons-material/Send\");var er=t.n($a);const nr=require(\"@mui/icons-material/SaveAlt\");var tr=t.n(nr),ir=navigator.userAgent.toLowerCase().indexOf(\"firefox\")>-1,or=null!=navigator.userAgent.match(/android/i);navigator.userAgent.match(/iPhone/i);const ar=function(){var e,n,t,i,r=(0,le.useRef)(null),l=(0,s.useTranslation)(\"cxbot\").t,u=(0,o.__read)((0,le.useState)(\"\"),2),c=u[0],d=u[1],m=Be(),v=En(),f=v.scrollContainerRef,p=v.scrollToBottom,h=ve().model,g=Te().onExportPdf,y=(0,o.__read)((0,jn.useAtBottom)(),1)[0];(0,le.useLayoutEffect)((function(){r.current.scrollHeight<=124?(r.current.style.height=\"40px\",r.current.style.height=\"\".concat(Math.max(r.current.scrollHeight,40),\"px\"),r.current.style.overflowY=\"auto\"):(r.current.style.height=\"124px\",r.current.style.overflowY=\"auto\")}),[c]),(0,le.useLayoutEffect)((function(){(null==f?void 0:f.current)&&(ir&&or?(f.current.style.height=\"calc(100vh - 212px)\",f.current.style.height=\"calc(100vh - \".concat(Math.max(r.current.clientHeight,40)+172,\"px)\")):ir&&window.screen.width<=768?(f.current.style.height=\"calc(100vh - 160px)\",f.current.style.height=\"calc(100vh - \".concat(Math.max(r.current.clientHeight,40)+116,\"px)\")):(f.current.style.height=\"calc(100% - 180px)\",f.current.style.height=\"calc(100% - \".concat(Math.max(r.current.clientHeight,40)+124,\"px)\"))),y&&p(\"instant\")}),[null===(n=r.current)||void 0===n?void 0:n.clientHeight,null===(t=r.current)||void 0===t?void 0:t.scrollHeight,null===(i=null==f?void 0:f.current)||void 0===i?void 0:i.scrollHeight,f,y]);var b=function(){(null==c?void 0:c.trim())&&(m(c),d(\"\"))};return(0,a.jsxs)(a.Fragment,{children:[(null==h?void 0:h.isPdfDownloadEnabled)&&(0,a.jsx)(\"button\",(0,o.__assign)({className:Ue()(sn,pt.saveButton),onClick:g,\"aria-label\":l(\"downloadConversation\"),title:l(\"downloadConversation\")},{children:(0,a.jsx)(tr(),{})})),(0,a.jsx)(\"textarea\",{ref:r,className:Ue()((e={},e[pt.isPdfDownloadEnabled]=null==h?void 0:h.isPdfDownloadEnabled,e)),onChange:function(e){return d(e.target.value)},value:c,\"aria-label\":l(\"typeYourMessage\"),placeholder:l(\"typeYourMessage\"),onKeyUp:function(e){\"Enter\"===e.key&&!e.shiftKey&&b()},onKeyDown:function(e){\"Enter\"===e.key&&!e.shiftKey&&e.preventDefault()}}),(0,a.jsx)(\"button\",(0,o.__assign)({className:pt.sendButton,onClick:b,\"aria-label\":l(\"send\"),title:l(\"send\")},{children:(0,a.jsx)(er(),{})}))]})};const rr=function(e){var n,t,i,l,u,c,d,m,v,f,p=e.initialActivity,h=e.onClose,g=e.isExpanded,y=e.toggleExpanded,b=(0,s.useTranslation)(\"cxbot\").t,x=ve().model,_=(0,r.useDispatch)(),w=Fe(),C=(v=p,f=(0,le.useRef)(),(0,le.useEffect)((function(){f.current=v})),f.current),j=he().setBotExpanded;!function(){var e,n=ve(),t=n.directline,i=n.model,o=Rt().lastMessage,a=null===(e=null==o?void 0:o.attachments)||void 0===e?void 0:e.find((function(e){return\"timeoutOptions\"===e.contentType}));(0,le.useEffect)((function(){if(a){var e=1e3*a.content.timeoutPeriod;clearTimeout(Mt),Mt=setTimeout((function(){t.postActivity({type:\"message\",from:{id:i.entityId,name:\"inactive\"},value:a.content.nextStepName}).subscribe((function(){9e5===e?e=36e5:clearTimeout(Mt)}))}),e)}else clearTimeout(Mt)}),[t,i,a])}();var k=(0,o.__read)((0,le.useState)(!1),2),S=k[0],E=k[1],T=(0,o.__read)((0,le.useState)(!0),2),A=T[0],N=T[1],O=(0,r.useSelector)((function(e){return e.cxBot})),M=O.conversationProgress,D=O.isTyping,F=O.isEndOfConversation,B=O.error,P=Rt(),q=P.lastEvent,z=P.lastItem,L=P.eventNpsRedirect,V=(null==z?void 0:z.name)!==R.CONVERSATIONRATING||(null==L?void 0:L.name)!==R.REDIRECTRCWITHNPS;return(0,le.useEffect)((function(){j(g)}),[g,j]),(0,le.useEffect)((function(){(null==q?void 0:q.name)===R.INPUTFOR&&E(!0)}),[q]),(0,le.useEffect)((function(){return function(){_(Z())}}),[_]),(0,le.useEffect)((function(){Ge()(p,C)||(_(Z()),w(p))}),[_,p,C,w]),x?(0,a.jsxs)(We,(0,o.__assign)({className:Ue()(en,pt.botContainer,pt[null===(l=null==x?void 0:x.brand)||void 0===l?void 0:l.toLowerCase()],xe[null===(u=null==x?void 0:x.brand)||void 0===u?void 0:u.toLowerCase()],(n={},n[pt.isExpanded]=g,n)),id:\"botContainer\"},{children:[(0,a.jsxs)(\"header\",(0,o.__assign)({className:pt.header,\"aria-label\":\"\"},{children:[(0,a.jsxs)(\"div\",(0,o.__assign)({className:pt.banner,id:\"banner\"},{children:[(0,a.jsx)(\"div\",{className:pt.logo}),(0,a.jsx)(\"div\",(0,o.__assign)({className:Ue()(pt.title,(t={},t[pt.isWhiteLabel]=(null==x?void 0:x.brand)===I.WHITELABEL,t))},{children:\"Career Assistant\"})),(0,a.jsxs)(\"div\",(0,o.__assign)({className:pt.controls},{children:[y&&(0,a.jsx)(\"button\",(0,o.__assign)({\"aria-label\":b(g?\"accessibility:collapseBot\":\"accessibility:expandBot\"),className:Ue()(sn,pt.expandIcon),onClick:y},{children:g?(0,a.jsx)(fn(),{}):(0,a.jsx)(hn(),{})})),h&&(0,a.jsx)(\"button\",(0,o.__assign)({className:Ue()(sn,pt.closeIcon),onClick:function(){h()},\"aria-label\":b(\"common:close\")},{children:(0,a.jsx)(mn(),{})}))]}))]})),(0,a.jsxs)(\"div\",(0,o.__assign)({className:pt.progress},{children:[(0,a.jsx)(\"div\",{className:pt.progressBar}),(0,a.jsx)(\"div\",{className:pt.progressValue,style:{width:\"calc(\".concat(M,\"% - 40px)\")}}),(0,a.jsxs)(\"div\",(0,o.__assign)({className:pt.percentage,style:{left:\"max(calc(\".concat(M,\"% - 40px), 0px)\")}},{children:[M,\"%\"]}))]}))]})),A&&(0,a.jsxs)(We,(0,o.__assign)({className:pt.interviewIntroduction,role:\"alert\",\"aria-live\":\"assertive\"},{children:[(0,a.jsx)(\"button\",(0,o.__assign)({className:sn,onClick:function(){return N(!1)}},{children:(0,a.jsx)(mn(),{})})),(0,a.jsx)(\"div\",(0,o.__assign)({className:pt.text},{children:b(\"interviewIntroduction\")}))]})),(0,a.jsxs)(Sn,(0,o.__assign)({className:Ue()(pt.scrollContainer,(i={},i[pt.isAutoCompleteOpen]=S&&(null==q?void 0:q.name)===R.INPUTFOR,i[pt.isInputOpen]=V,i)),footerComponent:(0,a.jsx)(a.Fragment,{children:V&&!S&&(0,a.jsxs)(\"div\",(0,o.__assign)({className:pt.input},{children:[D&&(0,a.jsx)(\"div\",(0,o.__assign)({className:pt.typingIndicator},{children:(0,a.jsx)(Cn,{})})),B&&(0,a.jsxs)(\"div\",(0,o.__assign)({className:pt.errorIndicator},{children:[(0,a.jsx)(cn(),{}),\" \",b(\"failedToConnect\")]})),!F&&(0,a.jsx)(ar,{})]}))})},{children:[(0,a.jsx)(Xa,{}),S&&(null==q?void 0:q.name)===R.INPUTFOR&&(0,a.jsx)(ft,{inputFor:null===(c=null==q?void 0:q.value)||void 0===c?void 0:c.inputFor,inputData:null===(d=null==q?void 0:q.value)||void 0===d?void 0:d.inputData,singleValue:null===(m=null==q?void 0:q.value)||void 0===m?void 0:m.singleValue,onClose:function(){return E(!1)}})]}))]})):(0,a.jsx)(We,(0,o.__assign)({className:Ue()(en,pt.botContainer,xe.adecco)},{children:(0,a.jsx)(\"div\",(0,o.__assign)({className:pt.loader},{children:(0,a.jsx)($e,{})}))}))};const sr=function(e){var n=e.model,t=e.directline,i=e.initialActivity,l=e.onClose,u=e.isExpanded,c=e.toggleExpanded;return(0,a.jsx)(s.I18nextProvider,(0,o.__assign)({i18n:xo},{children:(0,a.jsx)(r.Provider,(0,o.__assign)({store:se},{children:(0,a.jsx)(me,(0,o.__assign)({model:n,directline:t},{children:(0,a.jsx)(pe,{children:(0,a.jsx)(Ee,{children:(0,a.jsx)(rr,{initialActivity:i,onClose:l,isExpanded:u,toggleExpanded:c})})})}))}))}))}},247:(e,n,t)=>{var i=t(460),o=t(770);function a(){return(new Date).getTime()}var r,s=Array.prototype.slice,l={};r=\"undefined\"!=typeof global&&global.console?global.console:\"undefined\"!=typeof window&&window.console?window.console:{};for(var u=[[function(){},\"log\"],[function(){r.log.apply(r,arguments)},\"info\"],[function(){r.log.apply(r,arguments)},\"warn\"],[function(){r.warn.apply(r,arguments)},\"error\"],[function(e){l[e]=a()},\"time\"],[function(e){var n=l[e];if(!n)throw new Error(\"No such label: \"+e);delete l[e];var t=a()-n;r.log(e+\": \"+t+\"ms\")},\"timeEnd\"],[function(){var e=new Error;e.name=\"Trace\",e.message=i.format.apply(null,arguments),r.error(e.stack)},\"trace\"],[function(e){r.log(i.inspect(e)+\"\\n\")},\"dir\"],[function(e){if(!e){var n=s.call(arguments,1);o.ok(!1,i.format.apply(null,n))}},\"assert\"]],c=0;c{var n,t,i=e.exports={};function o(){throw new Error(\"setTimeout has not been defined\")}function a(){throw new Error(\"clearTimeout has not been defined\")}function r(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n=\"function\"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{t=\"function\"==typeof clearTimeout?clearTimeout:a}catch(e){t=a}}();var s,l=[],u=!1,c=-1;function d(){u&&s&&(u=!1,s.length?l=s.concat(l):c=-1,l.length&&m())}function m(){if(!u){var e=r(d);u=!0;for(var n=l.length;n;){for(s=l,l=[];++c1)for(var t=1;t-1};function c(e){if(\"string\"!=typeof e&&(e=String(e)),/[^a-z0-9\\-#$%&'*+.^_`|~!]/i.test(e)||\"\"===e)throw new TypeError('Invalid character in header field name: \"'+e+'\"');return e.toLowerCase()}function d(e){return\"string\"!=typeof e&&(e=String(e)),e}function m(e){var n={next:function(){var n=e.shift();return{done:void 0===n,value:n}}};return i&&(n[Symbol.iterator]=function(){return n}),n}function v(e){this.map={},e instanceof v?e.forEach((function(e,n){this.append(n,e)}),this):Array.isArray(e)?e.forEach((function(e){if(2!=e.length)throw new TypeError(\"Headers constructor: expected name/value pair to be length 2, found\"+e.length);this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(n){this.append(n,e[n])}),this)}function f(e){if(!e._noBody)return e.bodyUsed?Promise.reject(new TypeError(\"Already read\")):void(e.bodyUsed=!0)}function p(e){return new Promise((function(n,t){e.onload=function(){n(e.result)},e.onerror=function(){t(e.error)}}))}function h(e){var n=new FileReader,t=p(n);return n.readAsArrayBuffer(e),t}function g(e){if(e.slice)return e.slice(0);var n=new Uint8Array(e.byteLength);return n.set(new Uint8Array(e)),n.buffer}function y(){return this.bodyUsed=!1,this._initBody=function(e){var n;this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?\"string\"==typeof e?this._bodyText=e:a&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:r&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:t&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():s&&a&&(n=e)&&DataView.prototype.isPrototypeOf(n)?(this._bodyArrayBuffer=g(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):s&&(ArrayBuffer.prototype.isPrototypeOf(e)||u(e))?this._bodyArrayBuffer=g(e):this._bodyText=e=Object.prototype.toString.call(e):(this._noBody=!0,this._bodyText=\"\"),this.headers.get(\"content-type\")||(\"string\"==typeof e?this.headers.set(\"content-type\",\"text/plain;charset=UTF-8\"):this._bodyBlob&&this._bodyBlob.type?this.headers.set(\"content-type\",this._bodyBlob.type):t&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set(\"content-type\",\"application/x-www-form-urlencoded;charset=UTF-8\"))},a&&(this.blob=function(){var e=f(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error(\"could not read FormData body as blob\");return Promise.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var e=f(this);return e||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer))}if(a)return this.blob().then(h);throw new Error(\"could not read as ArrayBuffer\")},this.text=function(){var e,n,t,i,o,a=f(this);if(a)return a;if(this._bodyBlob)return e=this._bodyBlob,n=new FileReader,t=p(n),i=/charset=([A-Za-z0-9_-]+)/.exec(e.type),o=i?i[1]:\"utf-8\",n.readAsText(e,o),t;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var n=new Uint8Array(e),t=new Array(n.length),i=0;i-1?o:i),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal||function(){if(\"AbortController\"in n)return(new AbortController).signal}(),this.referrer=null,(\"GET\"===this.method||\"HEAD\"===this.method)&&a)throw new TypeError(\"Body not allowed for GET or HEAD requests\");if(this._initBody(a),!(\"GET\"!==this.method&&\"HEAD\"!==this.method||\"no-store\"!==t.cache&&\"no-cache\"!==t.cache)){var r=/([?&])_=[^&]*/;r.test(this.url)?this.url=this.url.replace(r,\"$1_=\"+(new Date).getTime()):this.url+=(/\\?/.test(this.url)?\"&\":\"?\")+\"_=\"+(new Date).getTime()}}function _(e){var n=new FormData;return e.trim().split(\"&\").forEach((function(e){if(e){var t=e.split(\"=\"),i=t.shift().replace(/\\+/g,\" \"),o=t.join(\"=\").replace(/\\+/g,\" \");n.append(decodeURIComponent(i),decodeURIComponent(o))}})),n}function w(e,n){if(!(this instanceof w))throw new TypeError('Please use the \"new\" operator, this DOM object constructor cannot be called as a function.');if(n||(n={}),this.type=\"default\",this.status=void 0===n.status?200:n.status,this.status<200||this.status>599)throw new RangeError(\"Failed to construct 'Response': The status provided (0) is outside the range [200, 599].\");this.ok=this.status>=200&&this.status<300,this.statusText=void 0===n.statusText?\"\":\"\"+n.statusText,this.headers=new v(n.headers),this.url=n.url||\"\",this._initBody(e)}x.prototype.clone=function(){return new x(this,{body:this._bodyInit})},y.call(x.prototype),y.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new v(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:200,statusText:\"\"});return e.ok=!1,e.status=0,e.type=\"error\",e};var C=[301,302,303,307,308];w.redirect=function(e,n){if(-1===C.indexOf(n))throw new RangeError(\"Invalid status code\");return new w(null,{status:n,headers:{location:e}})},e.DOMException=n.DOMException;try{new e.DOMException}catch(n){e.DOMException=function(e,n){this.message=e,this.name=n;var t=Error(e);this.stack=t.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function j(t,i){return new Promise((function(r,l){var u=new x(t,i);if(u.signal&&u.signal.aborted)return l(new e.DOMException(\"Aborted\",\"AbortError\"));var m=new XMLHttpRequest;function f(){m.abort()}if(m.onload=function(){var e,n,t={statusText:m.statusText,headers:(e=m.getAllResponseHeaders()||\"\",n=new v,e.replace(/\\r?\\n[\\t ]+/g,\" \").split(\"\\r\").map((function(e){return 0===e.indexOf(\"\\n\")?e.substr(1,e.length):e})).forEach((function(e){var t=e.split(\":\"),i=t.shift().trim();if(i){var a=t.join(\":\").trim();try{n.append(i,a)}catch(e){o.warn(\"Response \"+e.message)}}})),n)};0===u.url.indexOf(\"file://\")&&(m.status<200||m.status>599)?t.status=200:t.status=m.status,t.url=\"responseURL\"in m?m.responseURL:t.headers.get(\"X-Request-URL\");var i=\"response\"in m?m.response:m.responseText;setTimeout((function(){r(new w(i,t))}),0)},m.onerror=function(){setTimeout((function(){l(new TypeError(\"Network request failed\"))}),0)},m.ontimeout=function(){setTimeout((function(){l(new TypeError(\"Network request timed out\"))}),0)},m.onabort=function(){setTimeout((function(){l(new e.DOMException(\"Aborted\",\"AbortError\"))}),0)},m.open(u.method,function(e){try{return\"\"===e&&n.location.href?n.location.href:e}catch(n){return e}}(u.url),!0),\"include\"===u.credentials?m.withCredentials=!0:\"omit\"===u.credentials&&(m.withCredentials=!1),\"responseType\"in m&&(a?m.responseType=\"blob\":s&&(m.responseType=\"arraybuffer\")),i&&\"object\"==typeof i.headers&&!(i.headers instanceof v||n.Headers&&i.headers instanceof n.Headers)){var p=[];Object.getOwnPropertyNames(i.headers).forEach((function(e){p.push(c(e)),m.setRequestHeader(e,d(i.headers[e]))})),u.headers.forEach((function(e,n){-1===p.indexOf(n)&&m.setRequestHeader(n,e)}))}else u.headers.forEach((function(e,n){m.setRequestHeader(n,e)}));u.signal&&(u.signal.addEventListener(\"abort\",f),m.onreadystatechange=function(){4===m.readyState&&u.signal.removeEventListener(\"abort\",f)}),m.send(void 0===u._bodyInit?null:u._bodyInit)}))}j.polyfill=!0,n.fetch||(n.fetch=j,n.Headers=v,n.Request=x,n.Response=w),e.Headers=v,e.Request=x,e.Response=w,e.fetch=j,Object.defineProperty(e,\"__esModule\",{value:!0})},i(n)},770:e=>{\"use strict\";e.exports=require(\"assert\")},913:e=>{\"use strict\";e.exports=require(\"core-js/stable\")},180:e=>{\"use strict\";e.exports=require(\"regenerator-runtime/runtime\")},460:e=>{\"use strict\";e.exports=require(\"util\")}},n={};function t(i){var o=n[i];if(void 0!==o)return o.exports;var a=n[i]={exports:{}};return e[i].call(a.exports,a,a.exports,t),a.exports}return t.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return t.d(n,{a:n}),n},t.d=(e,n)=>{for(var i in n)t.o(n,i)&&!t.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:n[i]})},t.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),t.r=e=>{\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},t(645),t(913),t(180),t(980)})()));\n//# sourceMappingURL=index.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.LoginRequestResponse = exports.ErrorResponse = exports.SuccessResponse = exports.ActivityResponse = exports.ActivityRequestError = exports.ActivityRequestTrigger = void 0;\nvar ActivityRequestTrigger;\n(function (ActivityRequestTrigger) {\n ActivityRequestTrigger[\"Automatic\"] = \"automatic\";\n ActivityRequestTrigger[\"Manual\"] = \"manual\";\n})(ActivityRequestTrigger = exports.ActivityRequestTrigger || (exports.ActivityRequestTrigger = {}));\nvar ActivityRequestError = /** @class */ (function () {\n function ActivityRequestError(code, message) {\n this.code = code;\n this.message = message;\n }\n return ActivityRequestError;\n}());\nexports.ActivityRequestError = ActivityRequestError;\nvar ActivityResponse = /** @class */ (function () {\n function ActivityResponse(request) {\n this.request = request;\n }\n return ActivityResponse;\n}());\nexports.ActivityResponse = ActivityResponse;\nvar SuccessResponse = /** @class */ (function (_super) {\n __extends(SuccessResponse, _super);\n function SuccessResponse(request, rawContent) {\n var _this = _super.call(this, request) || this;\n _this.request = request;\n _this.rawContent = rawContent;\n return _this;\n }\n return SuccessResponse;\n}(ActivityResponse));\nexports.SuccessResponse = SuccessResponse;\nvar ErrorResponse = /** @class */ (function (_super) {\n __extends(ErrorResponse, _super);\n function ErrorResponse(request, error) {\n var _this = _super.call(this, request) || this;\n _this.request = request;\n _this.error = error;\n return _this;\n }\n return ErrorResponse;\n}(ActivityResponse));\nexports.ErrorResponse = ErrorResponse;\nvar LoginRequestResponse = /** @class */ (function (_super) {\n __extends(LoginRequestResponse, _super);\n function LoginRequestResponse(request, auth) {\n var _this = _super.call(this, request) || this;\n _this.request = request;\n _this._auth = auth;\n for (var _i = 0, _a = _this._auth.buttons; _i < _a.length; _i++) {\n var button = _a[_i];\n if (button.type === \"signin\" && button.value !== undefined) {\n try {\n new URL(button.value);\n _this.signinButton = button;\n break;\n }\n catch (e) {\n // Ignore parsing error\n }\n }\n }\n return _this;\n }\n Object.defineProperty(LoginRequestResponse.prototype, \"tokenExchangeResource\", {\n get: function () {\n return this._auth.tokenExchangeResource;\n },\n enumerable: false,\n configurable: true\n });\n return LoginRequestResponse;\n}(ActivityResponse));\nexports.LoginRequestResponse = LoginRequestResponse;\n//# sourceMappingURL=activity-request.js.map","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AdaptiveApplet = void 0;\n// Copyright (C) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar Enums = require(\"./enums\");\nvar Utils = require(\"./utils\");\nvar shared_1 = require(\"./shared\");\nvar activity_request_1 = require(\"./activity-request\");\nvar strings_1 = require(\"./strings\");\nvar card_elements_1 = require(\"./card-elements\");\nvar serialization_1 = require(\"./serialization\");\nfunction logEvent(level, message) {\n var optionalParams = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n optionalParams[_i - 2] = arguments[_i];\n }\n if (shared_1.GlobalSettings.applets.logEnabled) {\n if (shared_1.GlobalSettings.applets.onLogEvent) {\n shared_1.GlobalSettings.applets.onLogEvent(level, message, optionalParams);\n }\n else {\n /* eslint-disable no-console */\n switch (level) {\n case Enums.LogLevel.Warning:\n console.warn(message, optionalParams);\n break;\n case Enums.LogLevel.Error:\n console.error(message, optionalParams);\n break;\n default:\n console.log(message, optionalParams);\n break;\n }\n /* eslint-enable no-console */\n }\n }\n}\nvar ActivityRequest = /** @class */ (function () {\n function ActivityRequest(action, trigger, consecutiveActions) {\n this.action = action;\n this.trigger = trigger;\n this.consecutiveActions = consecutiveActions;\n this.attemptNumber = 0;\n }\n // eslint-disable-next-line @typescript-eslint/require-await\n ActivityRequest.prototype.retryAsync = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n if (this.onSend) {\n this.onSend(this);\n }\n return [2 /*return*/];\n });\n });\n };\n return ActivityRequest;\n}());\nvar AdaptiveApplet = /** @class */ (function () {\n function AdaptiveApplet() {\n this._allowAutomaticCardUpdate = false;\n this.renderedElement = document.createElement(\"div\");\n this.renderedElement.className = \"aaf-cardHost\";\n this.renderedElement.style.position = \"relative\";\n this.renderedElement.style.display = \"flex\";\n this.renderedElement.style.flexDirection = \"column\";\n this._cardHostElement = document.createElement(\"div\");\n this._refreshButtonHostElement = document.createElement(\"div\");\n this._refreshButtonHostElement.className = \"aaf-refreshButtonHost\";\n this._refreshButtonHostElement.style.display = \"none\";\n this.renderedElement.appendChild(this._cardHostElement);\n this.renderedElement.appendChild(this._refreshButtonHostElement);\n }\n AdaptiveApplet.prototype.displayCard = function (card) {\n if (card.renderedElement) {\n Utils.clearElementChildren(this._cardHostElement);\n this._refreshButtonHostElement.style.display = \"none\";\n this._cardHostElement.appendChild(card.renderedElement);\n }\n else {\n throw new Error(\"displayCard: undefined card.\");\n }\n };\n AdaptiveApplet.prototype.showManualRefreshButton = function (refreshAction) {\n var _this = this;\n var displayBuiltInManualRefreshButton = this.onShowManualRefreshButton\n ? this.onShowManualRefreshButton(this)\n : true;\n if (displayBuiltInManualRefreshButton) {\n this._refreshButtonHostElement.style.display = \"none\";\n var renderedRefreshButton = undefined;\n if (this.onRenderManualRefreshButton) {\n renderedRefreshButton = this.onRenderManualRefreshButton(this);\n }\n else {\n var message = strings_1.Strings.runtime.refreshThisCard();\n if (shared_1.GlobalSettings.applets.refresh.mode === Enums.RefreshMode.Automatic) {\n var autoRefreshPausedMessage = strings_1.Strings.runtime.automaticRefreshPaused();\n if (autoRefreshPausedMessage[autoRefreshPausedMessage.length - 1] !== \" \") {\n autoRefreshPausedMessage += \" \";\n }\n message = strings_1.Strings.runtime.clckToRestartAutomaticRefresh();\n }\n var cardPayload = {\n type: \"AdaptiveCard\",\n version: \"1.2\",\n body: [\n {\n type: \"RichTextBlock\",\n horizontalAlignment: \"right\",\n inlines: [\n {\n type: \"TextRun\",\n text: message,\n selectAction: {\n type: \"Action.Submit\",\n id: \"refreshCard\"\n }\n }\n ]\n }\n ]\n };\n var card = new card_elements_1.AdaptiveCard();\n card.parse(cardPayload, new card_elements_1.SerializationContext(serialization_1.Versions.v1_2));\n card.onExecuteAction = function (action) {\n if (action.id === \"refreshCard\") {\n Utils.clearElementChildren(_this._refreshButtonHostElement);\n _this.internalExecuteAction(refreshAction, activity_request_1.ActivityRequestTrigger.Automatic, 0);\n }\n };\n renderedRefreshButton = card.render();\n }\n if (renderedRefreshButton) {\n Utils.clearElementChildren(this._refreshButtonHostElement);\n this._refreshButtonHostElement.appendChild(renderedRefreshButton);\n this._refreshButtonHostElement.style.removeProperty(\"display\");\n }\n }\n };\n AdaptiveApplet.prototype.createActivityRequest = function (action, trigger, consecutiveActions) {\n var _this = this;\n if (this.card) {\n var request_1 = new ActivityRequest(action, trigger, consecutiveActions);\n request_1.onSend = function (sender) {\n sender.attemptNumber++;\n void _this.internalSendActivityRequestAsync(request_1);\n };\n var cancel = this.onPrepareActivityRequest\n ? !this.onPrepareActivityRequest(this, request_1, action)\n : false;\n return cancel ? undefined : request_1;\n }\n else {\n throw new Error(\"createActivityRequest: no card has been set.\");\n }\n };\n AdaptiveApplet.prototype.createMagicCodeInputCard = function (attemptNumber) {\n var payload = {\n type: \"AdaptiveCard\",\n version: \"1.0\",\n body: [\n {\n type: \"TextBlock\",\n color: \"attention\",\n text: attemptNumber === 1 ? undefined : \"That didn't work... let's try again.\",\n wrap: true,\n horizontalAlignment: \"center\"\n },\n {\n type: \"TextBlock\",\n text: 'Please login in the popup. You will obtain a magic code. Paste that code below and select \"Submit\"',\n wrap: true,\n horizontalAlignment: \"center\"\n },\n {\n type: \"Input.Text\",\n id: \"magicCode\",\n placeholder: \"Enter magic code\"\n },\n {\n type: \"ActionSet\",\n horizontalAlignment: \"center\",\n actions: [\n {\n type: \"Action.Submit\",\n id: AdaptiveApplet._submitMagicCodeActionId,\n title: \"Submit\"\n },\n {\n type: \"Action.Submit\",\n id: AdaptiveApplet._cancelMagicCodeAuthActionId,\n title: \"Cancel\"\n }\n ]\n }\n ]\n };\n var card = new card_elements_1.AdaptiveCard();\n card.parse(payload);\n return card;\n };\n AdaptiveApplet.prototype.cancelAutomaticRefresh = function () {\n if (this._allowAutomaticCardUpdate) {\n logEvent(Enums.LogLevel.Warning, \"Automatic card refresh has been cancelled as a result of the user interacting with the card.\");\n }\n this._allowAutomaticCardUpdate = false;\n };\n AdaptiveApplet.prototype.createSerializationContext = function () {\n return this.onCreateSerializationContext\n ? this.onCreateSerializationContext(this)\n : new card_elements_1.SerializationContext();\n };\n AdaptiveApplet.prototype.internalSetCard = function (payload, consecutiveActions) {\n var _this = this;\n if (typeof payload === \"object\" && payload[\"type\"] === \"AdaptiveCard\") {\n this._cardPayload = payload;\n }\n if (this._cardPayload) {\n try {\n var card = new card_elements_1.AdaptiveCard();\n if (this.hostConfig) {\n card.hostConfig = this.hostConfig;\n }\n var serializationContext = this.createSerializationContext();\n card.parse(this._cardPayload, serializationContext);\n var doChangeCard = this.onCardChanging\n ? this.onCardChanging(this, this._cardPayload)\n : true;\n if (doChangeCard) {\n this._card = card;\n if (this._card.authentication &&\n this._card.authentication.tokenExchangeResource &&\n this.onPrefetchSSOToken) {\n this.onPrefetchSSOToken(this, this._card.authentication.tokenExchangeResource);\n }\n this._card.onExecuteAction = function (action) {\n // If the user takes an action, cancel any pending automatic refresh\n _this.cancelAutomaticRefresh();\n _this.internalExecuteAction(action, activity_request_1.ActivityRequestTrigger.Manual, 0);\n };\n this._card.onInputValueChanged = function (input) {\n var _a, _b, _c;\n // If the user modifies an input, cancel any pending automatic refresh\n _this.cancelAutomaticRefresh();\n if (input instanceof card_elements_1.ChoiceSetInput && input.isDynamicTypeahead()) {\n var filter = input.getFilterForDynamicSearch();\n if (filter) {\n var dataQueryAction = new card_elements_1.DataQuery();\n dataQueryAction.filter = filter;\n dataQueryAction.dataset = ((_a = input.choicesData) === null || _a === void 0 ? void 0 : _a.dataset) || \"\";\n dataQueryAction.count = (_b = input.choicesData) === null || _b === void 0 ? void 0 : _b.count;\n dataQueryAction.skip = (_c = input.choicesData) === null || _c === void 0 ? void 0 : _c.skip;\n _this._choiceSet = input;\n _this.internalExecuteAction(dataQueryAction, activity_request_1.ActivityRequestTrigger.Manual, 0 // consecutiveActions\n );\n }\n }\n };\n this._card.render();\n if (this._card.renderedElement) {\n this.displayCard(this._card);\n if (this.onCardChanged) {\n this.onCardChanged(this);\n }\n if (this._card.refresh) {\n if (shared_1.GlobalSettings.applets.refresh.mode ===\n Enums.RefreshMode.Automatic &&\n consecutiveActions <\n shared_1.GlobalSettings.applets.refresh\n .maximumConsecutiveAutomaticRefreshes) {\n if (shared_1.GlobalSettings.applets.refresh.timeBetweenAutomaticRefreshes <=\n 0) {\n logEvent(Enums.LogLevel.Info, \"Triggering automatic card refresh number \" +\n (consecutiveActions + 1));\n this.internalExecuteAction(this._card.refresh.action, activity_request_1.ActivityRequestTrigger.Automatic, consecutiveActions + 1);\n }\n else {\n logEvent(Enums.LogLevel.Info, \"Scheduling automatic card refresh number \" +\n (consecutiveActions + 1) +\n \" in \" +\n shared_1.GlobalSettings.applets.refresh\n .timeBetweenAutomaticRefreshes +\n \"ms\");\n var action_1 = this._card.refresh.action;\n this._allowAutomaticCardUpdate = true;\n window.setTimeout(function () {\n if (_this._allowAutomaticCardUpdate) {\n _this.internalExecuteAction(action_1, activity_request_1.ActivityRequestTrigger.Automatic, consecutiveActions + 1);\n }\n }, shared_1.GlobalSettings.applets.refresh.timeBetweenAutomaticRefreshes);\n }\n }\n else if (shared_1.GlobalSettings.applets.refresh.mode !== Enums.RefreshMode.Disabled) {\n if (consecutiveActions > 0) {\n logEvent(Enums.LogLevel.Warning, \"Stopping automatic refreshes after \" +\n consecutiveActions +\n \" consecutive refreshes.\");\n }\n else {\n logEvent(Enums.LogLevel.Warning, \"The card has a refresh section, but automatic refreshes are disabled.\");\n }\n if (shared_1.GlobalSettings.applets.refresh\n .allowManualRefreshesAfterAutomaticRefreshes ||\n shared_1.GlobalSettings.applets.refresh.mode === Enums.RefreshMode.Manual) {\n logEvent(Enums.LogLevel.Info, \"Showing manual refresh button.\");\n this.showManualRefreshButton(this._card.refresh.action);\n }\n }\n }\n }\n }\n }\n catch (error) {\n // Ignore all errors\n logEvent(Enums.LogLevel.Error, \"setCard: \" + error);\n }\n }\n };\n AdaptiveApplet.prototype.internalExecuteAction = function (action, trigger, consecutiveActions) {\n if (action instanceof card_elements_1.UniversalAction) {\n if (this.channelAdapter) {\n var request = this.createActivityRequest(action, trigger, consecutiveActions);\n if (request) {\n void request.retryAsync();\n }\n }\n else {\n throw new Error(\"internalExecuteAction: No channel adapter set.\");\n }\n }\n if (this.onAction) {\n this.onAction(this, action);\n }\n };\n AdaptiveApplet.prototype.createProgressOverlay = function (request) {\n if (!this._progressOverlay) {\n if (this.onCreateProgressOverlay) {\n this._progressOverlay = this.onCreateProgressOverlay(this, request);\n }\n else {\n this._progressOverlay = document.createElement(\"div\");\n this._progressOverlay.className = \"aaf-progress-overlay\";\n var spinner = document.createElement(\"div\");\n spinner.className = \"aaf-spinner\";\n spinner.style.width = \"28px\";\n spinner.style.height = \"28px\";\n this._progressOverlay.appendChild(spinner);\n }\n }\n return this._progressOverlay;\n };\n AdaptiveApplet.prototype.removeProgressOverlay = function (request) {\n if (this.onRemoveProgressOverlay) {\n this.onRemoveProgressOverlay(this, request);\n }\n if (this._progressOverlay !== undefined) {\n this.renderedElement.removeChild(this._progressOverlay);\n this._progressOverlay = undefined;\n }\n };\n AdaptiveApplet.prototype.activityRequestSucceeded = function (response, parsedContent) {\n if (this.onActivityRequestSucceeded) {\n this.onActivityRequestSucceeded(this, response, parsedContent);\n }\n };\n AdaptiveApplet.prototype.activityRequestFailed = function (response) {\n return this.onActivityRequestFailed\n ? this.onActivityRequestFailed(this, response)\n : shared_1.GlobalSettings.applets.defaultTimeBetweenRetryAttempts;\n };\n AdaptiveApplet.prototype.showAuthCodeInputDialog = function (request) {\n var _this = this;\n var showBuiltInAuthCodeInputCard = this.onShowAuthCodeInputDialog\n ? this.onShowAuthCodeInputDialog(this, request)\n : true;\n if (showBuiltInAuthCodeInputCard) {\n var authCodeInputCard = this.createMagicCodeInputCard(request.attemptNumber);\n authCodeInputCard.render();\n authCodeInputCard.onExecuteAction = function (submitMagicCodeAction) {\n if (_this.card && submitMagicCodeAction instanceof card_elements_1.SubmitAction) {\n switch (submitMagicCodeAction.id) {\n case AdaptiveApplet._submitMagicCodeActionId:\n var authCode = undefined;\n if (submitMagicCodeAction.data &&\n typeof submitMagicCodeAction.data[\"magicCode\"] === \"string\") {\n authCode = submitMagicCodeAction.data[\"magicCode\"];\n }\n if (authCode) {\n _this.displayCard(_this.card);\n request.authCode = authCode;\n void request.retryAsync();\n }\n else {\n alert(\"Please enter the magic code you received.\");\n }\n break;\n case AdaptiveApplet._cancelMagicCodeAuthActionId:\n logEvent(Enums.LogLevel.Warning, \"Authentication cancelled by user.\");\n _this.displayCard(_this.card);\n break;\n default:\n logEvent(Enums.LogLevel.Error, \"Unexpected action taken from magic code input card (id = \" +\n submitMagicCodeAction.id +\n \")\");\n alert(strings_1.Strings.magicCodeInputCard.somethingWentWrong());\n break;\n }\n }\n };\n this.displayCard(authCodeInputCard);\n }\n };\n AdaptiveApplet.prototype.internalSendActivityRequestAsync = function (request) {\n return __awaiter(this, void 0, void 0, function () {\n var action;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this.channelAdapter) {\n throw new Error(\"internalSendActivityRequestAsync: channelAdapter is not set.\");\n }\n action = request.action;\n if (!(action instanceof card_elements_1.ExecuteAction)) return [3 /*break*/, 2];\n return [4 /*yield*/, this.internalSendExecuteRequestAsync(request)];\n case 1:\n _a.sent();\n return [3 /*break*/, 5];\n case 2:\n if (!(action instanceof card_elements_1.DataQuery)) return [3 /*break*/, 4];\n return [4 /*yield*/, this.internalSendDataQueryRequestAsync(request)];\n case 3:\n _a.sent();\n return [3 /*break*/, 5];\n case 4: throw new Error(\"internalSendActivityRequestAsync: Unhandled Action Type\");\n case 5: return [2 /*return*/];\n }\n });\n });\n };\n AdaptiveApplet.prototype.internalSendExecuteRequestAsync = function (request) {\n return __awaiter(this, void 0, void 0, function () {\n var overlay, done, _loop_1, this_1, state_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this.channelAdapter) {\n throw new Error(\"internalSendExecuteRequestAsync: channelAdapter is not set.\");\n }\n overlay = this.createProgressOverlay(request);\n if (overlay !== undefined) {\n this.renderedElement.appendChild(overlay);\n }\n done = false;\n _loop_1 = function () {\n var response, error_1, parsedContent, retryIn_1, attemptOAuth, left, top_1;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n response = undefined;\n if (request.attemptNumber === 1) {\n logEvent(Enums.LogLevel.Info, \"Sending activity request to channel (attempt \" + request.attemptNumber + \")\");\n }\n else {\n logEvent(Enums.LogLevel.Info, \"Re-sending activity request to channel (attempt \" + request.attemptNumber + \")\");\n }\n _b.label = 1;\n case 1:\n _b.trys.push([1, 3, , 4]);\n return [4 /*yield*/, this_1.channelAdapter.sendRequestAsync(request)];\n case 2:\n response = _b.sent();\n return [3 /*break*/, 4];\n case 3:\n error_1 = _b.sent();\n logEvent(Enums.LogLevel.Error, \"Activity request failed: \" + error_1);\n this_1.removeProgressOverlay(request);\n done = true;\n return [3 /*break*/, 4];\n case 4:\n if (!response) return [3 /*break*/, 10];\n if (!(response instanceof activity_request_1.SuccessResponse)) return [3 /*break*/, 5];\n this_1.removeProgressOverlay(request);\n if (response.rawContent === undefined) {\n throw new Error(\"internalSendActivityRequestAsync: Action.Execute result is undefined\");\n }\n parsedContent = response.rawContent;\n try {\n parsedContent = JSON.parse(response.rawContent);\n }\n catch (_c) {\n // Leave parseContent as is\n }\n if (typeof parsedContent === \"string\") {\n logEvent(Enums.LogLevel.Info, \"The activity request returned a string after \" +\n request.attemptNumber +\n \" attempt(s).\");\n this_1.activityRequestSucceeded(response, parsedContent);\n }\n else if (typeof parsedContent === \"object\" &&\n parsedContent[\"type\"] === \"AdaptiveCard\") {\n logEvent(Enums.LogLevel.Info, \"The activity request returned an Adaptive Card after \" +\n request.attemptNumber +\n \" attempt(s).\");\n this_1.internalSetCard(parsedContent, request.consecutiveActions);\n this_1.activityRequestSucceeded(response, this_1.card);\n }\n else {\n throw new Error(\"internalSendActivityRequestAsync: Action.Execute result is of unsupported type (\" +\n typeof response.rawContent +\n \")\");\n }\n done = true;\n return [3 /*break*/, 10];\n case 5:\n if (!(response instanceof activity_request_1.ErrorResponse)) return [3 /*break*/, 9];\n retryIn_1 = this_1.activityRequestFailed(response);\n if (!(retryIn_1 >= 0 &&\n request.attemptNumber < shared_1.GlobalSettings.applets.maximumRetryAttempts)) return [3 /*break*/, 7];\n logEvent(Enums.LogLevel.Warning, \"Activity request failed: \".concat(response.error.message, \". Retrying in \").concat(retryIn_1, \"ms\"));\n request.attemptNumber++;\n return [4 /*yield*/, new Promise(function (resolve, _reject) {\n window.setTimeout(function () {\n resolve();\n }, retryIn_1);\n })];\n case 6:\n _b.sent();\n return [3 /*break*/, 8];\n case 7:\n logEvent(Enums.LogLevel.Error, \"Activity request failed: \".concat(response.error.message, \". Giving up after \").concat(request.attemptNumber, \" attempt(s)\"));\n this_1.removeProgressOverlay(request);\n done = true;\n _b.label = 8;\n case 8: return [3 /*break*/, 10];\n case 9:\n if (response instanceof activity_request_1.LoginRequestResponse) {\n logEvent(Enums.LogLevel.Info, \"The activity request returned a LoginRequestResponse after \" +\n request.attemptNumber +\n \" attempt(s).\");\n if (request.attemptNumber <= shared_1.GlobalSettings.applets.maximumRetryAttempts) {\n attemptOAuth = true;\n if (response.tokenExchangeResource && this_1.onSSOTokenNeeded) {\n // Attempt to use SSO. The host will return true if it can handle SSO, in which case\n // we bypass OAuth\n attemptOAuth = !this_1.onSSOTokenNeeded(this_1, request, response.tokenExchangeResource);\n }\n if (attemptOAuth) {\n // Attempt to use OAuth\n this_1.removeProgressOverlay(request);\n if (response.signinButton === undefined) {\n throw new Error(\"internalSendActivityRequestAsync: the login request doesn't contain a valid signin URL.\");\n }\n logEvent(Enums.LogLevel.Info, \"Login required at \" + response.signinButton.value);\n if (this_1.onShowSigninPrompt) {\n // Bypass the built-in auth prompt if the host app handles it\n this_1.onShowSigninPrompt(this_1, request, response.signinButton);\n }\n else {\n this_1.showAuthCodeInputDialog(request);\n left = window.screenX +\n (window.outerWidth - shared_1.GlobalSettings.applets.authPromptWidth) /\n 2;\n top_1 = window.screenY +\n (window.outerHeight - shared_1.GlobalSettings.applets.authPromptHeight) /\n 2;\n window.open(response.signinButton.value, response.signinButton.title\n ? response.signinButton.title\n : \"Sign in\", \"width=\".concat(shared_1.GlobalSettings.applets.authPromptWidth, \",height=\").concat(shared_1.GlobalSettings.applets.authPromptHeight, \",left=\").concat(left, \",top=\").concat(top_1));\n }\n }\n }\n else {\n logEvent(Enums.LogLevel.Error, \"Authentication failed. Giving up after \" +\n request.attemptNumber +\n \" attempt(s)\");\n alert(strings_1.Strings.magicCodeInputCard.authenticationFailed());\n }\n return [2 /*return*/, \"break\"];\n }\n else {\n throw new Error(\"Unhandled response type: \" + JSON.stringify(response));\n }\n _b.label = 10;\n case 10: return [2 /*return*/];\n }\n });\n };\n this_1 = this;\n _a.label = 1;\n case 1:\n if (!!done) return [3 /*break*/, 3];\n return [5 /*yield**/, _loop_1()];\n case 2:\n state_1 = _a.sent();\n if (state_1 === \"break\")\n return [3 /*break*/, 3];\n return [3 /*break*/, 1];\n case 3: return [2 /*return*/];\n }\n });\n });\n };\n AdaptiveApplet.prototype.internalSendDataQueryRequestAsync = function (request) {\n return __awaiter(this, void 0, void 0, function () {\n var response, error_2, rawResponse, parsedResponse;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this.channelAdapter) {\n throw new Error(\"internalSendDataQueryRequestAsync: channel adapter not set\");\n }\n if (!this._choiceSet) return [3 /*break*/, 5];\n this._choiceSet.showLoadingIndicator();\n response = undefined;\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, , 4]);\n return [4 /*yield*/, this.channelAdapter.sendRequestAsync(request)];\n case 2:\n response = _a.sent();\n return [3 /*break*/, 4];\n case 3:\n error_2 = _a.sent();\n logEvent(Enums.LogLevel.Error, \"Activity request failed: \" + error_2);\n this._choiceSet.showErrorIndicator(\"Unable to load\");\n return [3 /*break*/, 4];\n case 4:\n this._choiceSet.removeLoadingIndicator();\n if (response) {\n if (response instanceof activity_request_1.SuccessResponse) {\n rawResponse = response.rawContent;\n if (rawResponse) {\n parsedResponse = rawResponse;\n try {\n parsedResponse = JSON.parse(parsedResponse);\n }\n catch (error) {\n throw new Error(\"Cannot parse response object: \" + rawResponse);\n }\n if (typeof parsedResponse === \"object\") {\n this._choiceSet.renderChoices(parsedResponse);\n this.activityRequestSucceeded(response, parsedResponse);\n }\n else {\n throw new Error(\"internalSendDataQueryRequestAsync: Data.Query result is of unsupported type (\" +\n typeof rawResponse +\n \")\");\n }\n }\n }\n else if (response instanceof activity_request_1.ErrorResponse) {\n this._choiceSet.showErrorIndicator(\"Error loading results.\");\n logEvent(Enums.LogLevel.Error, \"Activity request failed: \".concat(response.error.message, \".\"));\n this.activityRequestFailed(response);\n }\n else {\n this._choiceSet.showErrorIndicator(\"Unable to load\");\n throw new Error(\"Unhandled response type: \" + JSON.stringify(response));\n }\n }\n _a.label = 5;\n case 5: return [2 /*return*/];\n }\n });\n });\n };\n AdaptiveApplet.prototype.refreshCard = function () {\n if (this._card && this._card.refresh) {\n this.internalExecuteAction(this._card.refresh.action, activity_request_1.ActivityRequestTrigger.Manual, 0);\n }\n };\n AdaptiveApplet.prototype.setCard = function (payload) {\n this.internalSetCard(payload, 0);\n };\n Object.defineProperty(AdaptiveApplet.prototype, \"card\", {\n get: function () {\n return this._card;\n },\n enumerable: false,\n configurable: true\n });\n AdaptiveApplet._submitMagicCodeActionId = \"submitMagicCode\";\n AdaptiveApplet._cancelMagicCodeAuthActionId = \"cancelMagicCodeAuth\";\n return AdaptiveApplet;\n}());\nexports.AdaptiveApplet = AdaptiveApplet;\n//# sourceMappingURL=adaptive-applet.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\n__exportStar(require(\"./strings\"), exports);\n__exportStar(require(\"./enums\"), exports);\n__exportStar(require(\"./shared\"), exports);\n__exportStar(require(\"./utils\"), exports);\n__exportStar(require(\"./serialization\"), exports);\n__exportStar(require(\"./host-capabilities\"), exports);\n__exportStar(require(\"./host-config\"), exports);\n__exportStar(require(\"./registry\"), exports);\n__exportStar(require(\"./card-object\"), exports);\n__exportStar(require(\"./card-elements\"), exports);\n__exportStar(require(\"./carousel\"), exports);\n__exportStar(require(\"./table\"), exports);\n__exportStar(require(\"./channel-adapter\"), exports);\n__exportStar(require(\"./activity-request\"), exports);\n__exportStar(require(\"./adaptive-applet\"), exports);\n//# sourceMappingURL=adaptivecards.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BackgroundImage = exports.ContainerBase = exports.StylableCardElementContainer = exports.ContainerStyleProperty = exports.ActionSet = exports.ShowCardAction = exports.HttpAction = exports.HttpHeader = exports.ToggleVisibilityAction = exports.OpenUrlAction = exports.DataQuery = exports.ExecuteAction = exports.UniversalAction = exports.SubmitAction = exports.SubmitActionBase = exports.Action = exports.TimeInput = exports.TimeProperty = exports.DateInput = exports.NumberInput = exports.FilteredChoiceSet = exports.ChoiceSetInput = exports.ChoiceSetInputDataQuery = exports.Choice = exports.ToggleInput = exports.TextInput = exports.Input = exports.Media = exports.YouTubePlayer = exports.DailymotionPlayer = exports.VimeoPlayer = exports.IFrameMediaMediaPlayer = exports.CustomMediaPlayer = exports.HTML5MediaPlayer = exports.MediaPlayer = exports.MediaSource = exports.CaptionSource = exports.ContentSource = exports.ImageSet = exports.CardElementContainer = exports.Image = exports.FactSet = exports.Fact = exports.RichTextBlock = exports.TextRun = exports.TextBlock = exports.BaseTextBlock = exports.ActionProperty = exports.CardElement = exports.renderSeparation = void 0;\nexports.SerializationContext = exports.AdaptiveCard = exports.Authentication = exports.TokenExchangeResource = exports.AuthCardButton = exports.RefreshDefinition = exports.RefreshActionProperty = exports.ContainerWithActions = exports.ColumnSet = exports.Column = exports.Container = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar Enums = require(\"./enums\");\nvar shared_1 = require(\"./shared\");\nvar Utils = require(\"./utils\");\nvar host_config_1 = require(\"./host-config\");\nvar TextFormatters = require(\"./text-formatters\");\nvar card_object_1 = require(\"./card-object\");\nvar serialization_1 = require(\"./serialization\");\nvar registry_1 = require(\"./registry\");\nvar strings_1 = require(\"./strings\");\nvar controls_1 = require(\"./controls\");\nfunction clearElement(element) {\n var _a, _b;\n var trustedHtml = (typeof window === 'undefined') ? \"\" : ((_b = (_a = window.trustedTypes) === null || _a === void 0 ? void 0 : _a.emptyHTML) !== null && _b !== void 0 ? _b : \"\");\n element.innerHTML = trustedHtml;\n}\nfunction renderSeparation(hostConfig, separationDefinition, orientation) {\n if (separationDefinition.spacing > 0 ||\n (separationDefinition.lineThickness && separationDefinition.lineThickness > 0)) {\n var separator = document.createElement(\"div\");\n separator.className = hostConfig.makeCssClassName(\"ac-\" +\n (orientation === Enums.Orientation.Horizontal ? \"horizontal\" : \"vertical\") +\n \"-separator\");\n separator.setAttribute(\"aria-hidden\", \"true\");\n var color = separationDefinition.lineColor\n ? Utils.stringToCssColor(separationDefinition.lineColor)\n : \"\";\n if (orientation === Enums.Orientation.Horizontal) {\n if (separationDefinition.lineThickness) {\n separator.style.paddingTop = separationDefinition.spacing / 2 + \"px\";\n separator.style.marginBottom = separationDefinition.spacing / 2 + \"px\";\n separator.style.borderBottom =\n separationDefinition.lineThickness + \"px solid \" + color;\n }\n else {\n separator.style.height = separationDefinition.spacing + \"px\";\n }\n }\n else {\n if (separationDefinition.lineThickness) {\n separator.style.paddingLeft = separationDefinition.spacing / 2 + \"px\";\n separator.style.marginRight = separationDefinition.spacing / 2 + \"px\";\n separator.style.borderRight =\n separationDefinition.lineThickness + \"px solid \" + color;\n }\n else {\n separator.style.width = separationDefinition.spacing + \"px\";\n }\n }\n separator.style.overflow = \"hidden\";\n separator.style.flex = \"0 0 auto\";\n return separator;\n }\n else {\n return undefined;\n }\n}\nexports.renderSeparation = renderSeparation;\nvar CardElement = /** @class */ (function (_super) {\n __extends(CardElement, _super);\n function CardElement() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._truncatedDueToOverflow = false;\n return _this;\n }\n Object.defineProperty(CardElement.prototype, \"lang\", {\n get: function () {\n var lang = this.getValue(CardElement.langProperty);\n if (lang) {\n return lang;\n }\n else {\n if (this.parent) {\n return this.parent.lang;\n }\n else {\n return undefined;\n }\n }\n },\n set: function (value) {\n this.setValue(CardElement.langProperty, value);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CardElement.prototype, \"isVisible\", {\n get: function () {\n return this.getValue(CardElement.isVisibleProperty);\n },\n set: function (value) {\n // If the element is going to be hidden, reset any changes that were due\n // to overflow truncation (this ensures that if the element is later\n // un-hidden it has the right content)\n if (shared_1.GlobalSettings.useAdvancedCardBottomTruncation && !value) {\n this.undoOverflowTruncation();\n }\n if (this.isVisible !== value) {\n this.setValue(CardElement.isVisibleProperty, value);\n this.updateRenderedElementVisibility();\n if (this._renderedElement) {\n raiseElementVisibilityChangedEvent(this);\n }\n }\n if (this._renderedElement) {\n this._renderedElement.setAttribute(\"aria-expanded\", value.toString());\n }\n },\n enumerable: false,\n configurable: true\n });\n CardElement.prototype.internalRenderSeparator = function () {\n var renderedSeparator = renderSeparation(this.hostConfig, {\n spacing: this.hostConfig.getEffectiveSpacing(this.spacing),\n lineThickness: this.separator ? this.hostConfig.separator.lineThickness : undefined,\n lineColor: this.separator ? this.hostConfig.separator.lineColor : undefined\n }, this.separatorOrientation);\n if (shared_1.GlobalSettings.alwaysBleedSeparators &&\n renderedSeparator &&\n this.separatorOrientation === Enums.Orientation.Horizontal) {\n // Adjust separator's margins if the option to always bleed separators is turned on\n var parentContainer = this.getParentContainer();\n if (parentContainer && parentContainer.getEffectivePadding()) {\n var parentPhysicalPadding = this.hostConfig.paddingDefinitionToSpacingDefinition(parentContainer.getEffectivePadding());\n renderedSeparator.style.marginLeft = \"-\" + parentPhysicalPadding.left + \"px\";\n renderedSeparator.style.marginRight = \"-\" + parentPhysicalPadding.right + \"px\";\n }\n }\n return renderedSeparator;\n };\n CardElement.prototype.updateRenderedElementVisibility = function () {\n var displayMode = this.isDesignMode() || this.isVisible\n ? this._defaultRenderedElementDisplayMode\n : \"none\";\n if (this._renderedElement) {\n if (displayMode) {\n this._renderedElement.style.display = displayMode;\n }\n else {\n this._renderedElement.style.removeProperty(\"display\");\n }\n }\n if (this._separatorElement) {\n if (this.parent && this.parent.isFirstElement(this)) {\n this._separatorElement.style.display = \"none\";\n }\n else {\n if (displayMode) {\n this._separatorElement.style.display = displayMode;\n }\n else {\n this._separatorElement.style.removeProperty(\"display\");\n }\n }\n }\n };\n CardElement.prototype.hideElementDueToOverflow = function () {\n if (this._renderedElement && this.isVisible) {\n this._renderedElement.style.visibility = \"hidden\";\n this.isVisible = false;\n raiseElementVisibilityChangedEvent(this, false);\n }\n };\n CardElement.prototype.showElementHiddenDueToOverflow = function () {\n if (this._renderedElement && !this.isVisible) {\n this._renderedElement.style.removeProperty(\"visibility\");\n this.isVisible = true;\n raiseElementVisibilityChangedEvent(this, false);\n }\n };\n // Marked private to emulate internal access\n CardElement.prototype.handleOverflow = function (maxHeight) {\n if (this.isVisible || this.isHiddenDueToOverflow()) {\n var handled = this.truncateOverflow(maxHeight);\n // Even if we were unable to truncate the element to fit this time,\n // it still could have been previously truncated\n this._truncatedDueToOverflow = handled || this._truncatedDueToOverflow;\n if (!handled) {\n this.hideElementDueToOverflow();\n }\n else if (handled && !this.isVisible) {\n this.showElementHiddenDueToOverflow();\n }\n }\n };\n // Marked private to emulate internal access\n CardElement.prototype.resetOverflow = function () {\n var sizeChanged = false;\n if (this._truncatedDueToOverflow) {\n this.undoOverflowTruncation();\n this._truncatedDueToOverflow = false;\n sizeChanged = true;\n }\n if (this.isHiddenDueToOverflow()) {\n this.showElementHiddenDueToOverflow();\n }\n return sizeChanged;\n };\n CardElement.prototype.getDefaultSerializationContext = function () {\n return new SerializationContext();\n };\n CardElement.prototype.createPlaceholderElement = function () {\n var styleDefinition = this.getEffectiveStyleDefinition();\n var foregroundCssColor = Utils.stringToCssColor(styleDefinition.foregroundColors.default.subtle);\n var element = document.createElement(\"div\");\n element.style.border = \"1px dashed \" + foregroundCssColor;\n element.style.padding = \"4px\";\n element.style.minHeight = \"32px\";\n element.style.fontSize = \"10px\";\n if (foregroundCssColor) {\n element.style.color = foregroundCssColor;\n }\n element.innerText = strings_1.Strings.defaults.emptyElementText(this.getJsonTypeName());\n return element;\n };\n CardElement.prototype.adjustRenderedElementSize = function (renderedElement) {\n if (this.height === \"auto\") {\n renderedElement.style.flex = \"0 0 auto\";\n }\n else {\n renderedElement.style.flex = \"1 1 auto\";\n }\n };\n /*\n * Called when mouse enters or leaves the card.\n * Inputs elements need to update their visual state in such events like showing or hiding borders etc.\n * It calls Input.updateVisualState(eventType) for all inputs.\n * This method on input (updateVisualState) is supposed to be called from card level on mouse events.\n */\n CardElement.prototype.updateInputsVisualState = function (hover) {\n var allInputs = this.getAllInputs();\n var inputEventType = !!hover ? InputEventType.MouseEnterOnCard : InputEventType.MouseLeaveOnCard;\n allInputs.forEach(function (input) { return input.updateVisualState(inputEventType); });\n };\n CardElement.prototype.isDisplayed = function () {\n return (this._renderedElement !== undefined &&\n this.isVisible &&\n this._renderedElement.offsetHeight > 0);\n };\n CardElement.prototype.overrideInternalRender = function () {\n return this.internalRender();\n };\n CardElement.prototype.applyPadding = function () {\n if (this.separatorElement && this.separatorOrientation === Enums.Orientation.Horizontal) {\n if (shared_1.GlobalSettings.alwaysBleedSeparators && !this.isBleeding()) {\n var padding = new shared_1.PaddingDefinition();\n this.getImmediateSurroundingPadding(padding);\n var physicalPadding = this.hostConfig.paddingDefinitionToSpacingDefinition(padding);\n this.separatorElement.style.marginLeft = \"-\" + physicalPadding.left + \"px\";\n this.separatorElement.style.marginRight = \"-\" + physicalPadding.right + \"px\";\n }\n else {\n this.separatorElement.style.marginRight = \"0\";\n this.separatorElement.style.marginLeft = \"0\";\n }\n }\n };\n /*\n * Called when this element overflows the bottom of the card.\n * maxHeight will be the amount of space still available on the card (0 if\n * the element is fully off the card).\n */\n CardElement.prototype.truncateOverflow = function (_maxHeight) {\n // Child implementations should return true if the element handled\n // the truncation request such that its content fits within maxHeight,\n // false if the element should fall back to being hidden\n return false;\n };\n /*\n * This should reverse any changes performed in truncateOverflow().\n */\n CardElement.prototype.undoOverflowTruncation = function () {\n return;\n };\n CardElement.prototype.getDefaultPadding = function () {\n return new shared_1.PaddingDefinition();\n };\n CardElement.prototype.getHasBackground = function (ignoreBackgroundImages) {\n if (ignoreBackgroundImages === void 0) { ignoreBackgroundImages = false; }\n return false;\n };\n CardElement.prototype.getHasBorder = function () {\n return false;\n };\n CardElement.prototype.getPadding = function () {\n return this._padding;\n };\n CardElement.prototype.setPadding = function (value) {\n this._padding = value;\n };\n CardElement.prototype.shouldSerialize = function (context) {\n return context.elementRegistry.findByName(this.getJsonTypeName()) !== undefined;\n };\n Object.defineProperty(CardElement.prototype, \"useDefaultSizing\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CardElement.prototype, \"separatorOrientation\", {\n get: function () {\n return Enums.Orientation.Horizontal;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CardElement.prototype, \"defaultStyle\", {\n get: function () {\n return Enums.ContainerStyle.Default;\n },\n enumerable: false,\n configurable: true\n });\n CardElement.prototype.parse = function (source, context) {\n _super.prototype.parse.call(this, source, context ? context : new SerializationContext());\n };\n CardElement.prototype.asString = function () {\n return \"\";\n };\n CardElement.prototype.isBleeding = function () {\n return false;\n };\n CardElement.prototype.getEffectiveStyle = function () {\n if (this.parent) {\n return this.parent.getEffectiveStyle();\n }\n return this.defaultStyle;\n };\n CardElement.prototype.getEffectiveStyleDefinition = function () {\n return this.hostConfig.containerStyles.getStyleByName(this.getEffectiveStyle());\n };\n CardElement.prototype.getEffectiveTextStyleDefinition = function () {\n if (this.parent) {\n return this.parent.getEffectiveTextStyleDefinition();\n }\n return this.hostConfig.textStyles.default;\n };\n CardElement.prototype.getForbiddenActionTypes = function () {\n return [];\n };\n CardElement.prototype.getImmediateSurroundingPadding = function (result, processTop, processRight, processBottom, processLeft) {\n if (processTop === void 0) { processTop = true; }\n if (processRight === void 0) { processRight = true; }\n if (processBottom === void 0) { processBottom = true; }\n if (processLeft === void 0) { processLeft = true; }\n if (this.parent) {\n var doProcessTop = processTop && this.parent.isTopElement(this);\n var doProcessRight = processRight && this.parent.isRightMostElement(this);\n var doProcessBottom = processBottom && this.parent.isBottomElement(this);\n var doProcessLeft = processLeft && this.parent.isLeftMostElement(this);\n var effectivePadding = this.parent.getEffectivePadding();\n if (effectivePadding) {\n if (doProcessTop && effectivePadding.top !== Enums.Spacing.None) {\n result.top = effectivePadding.top;\n doProcessTop = false;\n }\n if (doProcessRight && effectivePadding.right !== Enums.Spacing.None) {\n result.right = effectivePadding.right;\n doProcessRight = false;\n }\n if (doProcessBottom && effectivePadding.bottom !== Enums.Spacing.None) {\n result.bottom = effectivePadding.bottom;\n doProcessBottom = false;\n }\n if (doProcessLeft && effectivePadding.left !== Enums.Spacing.None) {\n result.left = effectivePadding.left;\n doProcessLeft = false;\n }\n }\n if (doProcessTop || doProcessRight || doProcessBottom || doProcessLeft) {\n this.parent.getImmediateSurroundingPadding(result, doProcessTop, doProcessRight, doProcessBottom, doProcessLeft);\n }\n }\n };\n CardElement.prototype.getActionCount = function () {\n return 0;\n };\n CardElement.prototype.getActionAt = function (index) {\n throw new Error(strings_1.Strings.errors.indexOutOfRange(index));\n };\n CardElement.prototype.indexOfAction = function (action) {\n for (var i = 0; i < this.getActionCount(); i++) {\n if (this.getActionAt(i) === action) {\n return i;\n }\n }\n return -1;\n };\n CardElement.prototype.remove = function () {\n if (this.parent && this.parent instanceof CardElementContainer) {\n return this.parent.removeItem(this);\n }\n return false;\n };\n CardElement.prototype.render = function () {\n this._renderedElement = this.overrideInternalRender();\n this._separatorElement = this.internalRenderSeparator();\n if (this._renderedElement) {\n if (this.id) {\n this._renderedElement.id = this.id;\n }\n if (this.customCssSelector) {\n this._renderedElement.classList.add(this.customCssSelector);\n }\n this._renderedElement.style.boxSizing = \"border-box\";\n this._defaultRenderedElementDisplayMode = this._renderedElement.style.display\n ? this._renderedElement.style.display\n : undefined;\n this.adjustRenderedElementSize(this._renderedElement);\n this.updateLayout(false);\n }\n else if (this.isDesignMode()) {\n this._renderedElement = this.createPlaceholderElement();\n }\n return this._renderedElement;\n };\n CardElement.prototype.updateLayout = function (_processChildren) {\n if (_processChildren === void 0) { _processChildren = true; }\n this.updateRenderedElementVisibility();\n this.applyPadding();\n };\n CardElement.prototype.updateActionsEnabledState = function () {\n var allActions = this.getRootElement().getAllActions();\n for (var _i = 0, allActions_1 = allActions; _i < allActions_1.length; _i++) {\n var action = allActions_1[_i];\n action.updateEnabledState();\n }\n };\n CardElement.prototype.indexOf = function (_cardElement) {\n return -1;\n };\n CardElement.prototype.isDesignMode = function () {\n var rootElement = this.getRootElement();\n return rootElement instanceof AdaptiveCard && rootElement.designMode;\n };\n CardElement.prototype.isFirstElement = function (_element) {\n return true;\n };\n CardElement.prototype.isLastElement = function (_element) {\n return true;\n };\n CardElement.prototype.isAtTheVeryLeft = function () {\n return this.parent\n ? this.parent.isLeftMostElement(this) && this.parent.isAtTheVeryLeft()\n : true;\n };\n CardElement.prototype.isAtTheVeryRight = function () {\n return this.parent\n ? this.parent.isRightMostElement(this) && this.parent.isAtTheVeryRight()\n : true;\n };\n CardElement.prototype.isAtTheVeryTop = function () {\n return this.parent\n ? this.parent.isFirstElement(this) && this.parent.isAtTheVeryTop()\n : true;\n };\n CardElement.prototype.isAtTheVeryBottom = function () {\n return this.parent\n ? this.parent.isLastElement(this) && this.parent.isAtTheVeryBottom()\n : true;\n };\n CardElement.prototype.isBleedingAtTop = function () {\n return false;\n };\n CardElement.prototype.isBleedingAtBottom = function () {\n return false;\n };\n CardElement.prototype.isLeftMostElement = function (_element) {\n return true;\n };\n CardElement.prototype.isRightMostElement = function (_element) {\n return true;\n };\n CardElement.prototype.isTopElement = function (element) {\n return this.isFirstElement(element);\n };\n CardElement.prototype.isBottomElement = function (element) {\n return this.isLastElement(element);\n };\n CardElement.prototype.isHiddenDueToOverflow = function () {\n return (this._renderedElement !== undefined &&\n this._renderedElement.style.visibility === \"hidden\");\n };\n CardElement.prototype.getRootElement = function () {\n return this.getRootObject();\n };\n CardElement.prototype.getParentContainer = function () {\n var currentElement = this.parent;\n while (currentElement) {\n if (currentElement instanceof Container) {\n return currentElement;\n }\n currentElement = currentElement.parent;\n }\n return undefined;\n };\n CardElement.prototype.getAllInputs = function (processActions) {\n if (processActions === void 0) { processActions = true; }\n return [];\n };\n CardElement.prototype.getAllActions = function () {\n var result = [];\n for (var i = 0; i < this.getActionCount(); i++) {\n var action = this.getActionAt(i);\n if (action) {\n result.push(action);\n }\n }\n return result;\n };\n CardElement.prototype.getResourceInformation = function () {\n return [];\n };\n CardElement.prototype.getElementById = function (id) {\n return this.id === id ? this : undefined;\n };\n CardElement.prototype.getActionById = function (_id) {\n return undefined;\n };\n CardElement.prototype.getElementByIdFromAction = function (id) {\n var result = undefined;\n for (var i = 0; i < this.getActionCount(); i++) {\n var action = this.getActionAt(i);\n if (action instanceof ShowCardAction) {\n result = action.card.getElementById(id);\n if (result) {\n break;\n }\n }\n }\n return result;\n };\n CardElement.prototype.getEffectivePadding = function () {\n var padding = this.getPadding();\n return padding ? padding : this.getDefaultPadding();\n };\n CardElement.prototype.getEffectiveHorizontalAlignment = function () {\n if (this.horizontalAlignment !== undefined) {\n return this.horizontalAlignment;\n }\n if (this.parent) {\n return this.parent.getEffectiveHorizontalAlignment();\n }\n return Enums.HorizontalAlignment.Left;\n };\n Object.defineProperty(CardElement.prototype, \"hostConfig\", {\n get: function () {\n if (this._hostConfig) {\n return this._hostConfig;\n }\n else {\n if (this.parent) {\n return this.parent.hostConfig;\n }\n else {\n return host_config_1.defaultHostConfig;\n }\n }\n },\n set: function (value) {\n this._hostConfig = value;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CardElement.prototype, \"index\", {\n get: function () {\n if (this.parent) {\n return this.parent.indexOf(this);\n }\n else {\n return 0;\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CardElement.prototype, \"isInteractive\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CardElement.prototype, \"isStandalone\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CardElement.prototype, \"isInline\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CardElement.prototype, \"hasVisibleSeparator\", {\n get: function () {\n if (this.parent && this.separatorElement) {\n return !this.parent.isFirstElement(this) && (this.isVisible || this.isDesignMode());\n }\n else {\n return false;\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CardElement.prototype, \"separatorElement\", {\n get: function () {\n return this._separatorElement;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CardElement.prototype, \"parent\", {\n get: function () {\n return this._parent;\n },\n enumerable: false,\n configurable: true\n });\n CardElement.langProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_1, \"lang\", true, /^[a-z]{2,3}$/gi);\n CardElement.isVisibleProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_2, \"isVisible\", true);\n CardElement.separatorProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_0, \"separator\", false);\n CardElement.heightProperty = new serialization_1.ValueSetProperty(serialization_1.Versions.v1_1, \"height\", [{ value: \"auto\" }, { value: \"stretch\" }], \"auto\");\n CardElement.horizontalAlignmentProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_0, \"horizontalAlignment\", Enums.HorizontalAlignment);\n CardElement.spacingProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_0, \"spacing\", Enums.Spacing, Enums.Spacing.Default);\n __decorate([\n (0, serialization_1.property)(CardElement.horizontalAlignmentProperty)\n ], CardElement.prototype, \"horizontalAlignment\", void 0);\n __decorate([\n (0, serialization_1.property)(CardElement.spacingProperty)\n ], CardElement.prototype, \"spacing\", void 0);\n __decorate([\n (0, serialization_1.property)(CardElement.separatorProperty)\n ], CardElement.prototype, \"separator\", void 0);\n __decorate([\n (0, serialization_1.property)(CardElement.heightProperty)\n ], CardElement.prototype, \"height\", void 0);\n __decorate([\n (0, serialization_1.property)(CardElement.langProperty)\n ], CardElement.prototype, \"lang\", null);\n __decorate([\n (0, serialization_1.property)(CardElement.isVisibleProperty)\n ], CardElement.prototype, \"isVisible\", null);\n return CardElement;\n}(card_object_1.CardObject));\nexports.CardElement = CardElement;\nvar ActionProperty = /** @class */ (function (_super) {\n __extends(ActionProperty, _super);\n function ActionProperty(targetVersion, name, forbiddenActionTypes) {\n if (forbiddenActionTypes === void 0) { forbiddenActionTypes = []; }\n var _this = _super.call(this, targetVersion, name, undefined) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.forbiddenActionTypes = forbiddenActionTypes;\n return _this;\n }\n ActionProperty.prototype.parse = function (sender, source, context) {\n var parent = sender;\n return context.parseAction(parent, source[this.name], this.forbiddenActionTypes, parent.isDesignMode());\n };\n ActionProperty.prototype.toJSON = function (sender, target, value, context) {\n context.serializeValue(target, this.name, value ? value.toJSON(context) : undefined, undefined, true);\n };\n return ActionProperty;\n}(serialization_1.PropertyDefinition));\nexports.ActionProperty = ActionProperty;\nvar BaseTextBlock = /** @class */ (function (_super) {\n __extends(BaseTextBlock, _super);\n function BaseTextBlock(text) {\n var _this = _super.call(this) || this;\n _this.ariaHidden = false;\n if (text) {\n _this.text = text;\n }\n return _this;\n }\n BaseTextBlock.prototype.populateSchema = function (schema) {\n _super.prototype.populateSchema.call(this, schema);\n // selectAction is declared on BaseTextBlock but is only exposed on TextRun,\n // so the property is removed from the BaseTextBlock schema.\n schema.remove(BaseTextBlock.selectActionProperty);\n };\n Object.defineProperty(BaseTextBlock.prototype, \"text\", {\n get: function () {\n return this.getValue(BaseTextBlock.textProperty);\n },\n set: function (value) {\n this.setText(value);\n },\n enumerable: false,\n configurable: true\n });\n //#endregion\n BaseTextBlock.prototype.getFontSize = function (fontType) {\n switch (this.effectiveSize) {\n case Enums.TextSize.Small:\n return fontType.fontSizes.small;\n case Enums.TextSize.Medium:\n return fontType.fontSizes.medium;\n case Enums.TextSize.Large:\n return fontType.fontSizes.large;\n case Enums.TextSize.ExtraLarge:\n return fontType.fontSizes.extraLarge;\n default:\n return fontType.fontSizes.default;\n }\n };\n BaseTextBlock.prototype.getColorDefinition = function (colorSet, color) {\n switch (color) {\n case Enums.TextColor.Accent:\n return colorSet.accent;\n case Enums.TextColor.Dark:\n return colorSet.dark;\n case Enums.TextColor.Light:\n return colorSet.light;\n case Enums.TextColor.Good:\n return colorSet.good;\n case Enums.TextColor.Warning:\n return colorSet.warning;\n case Enums.TextColor.Attention:\n return colorSet.attention;\n default:\n return colorSet.default;\n }\n };\n BaseTextBlock.prototype.setText = function (value) {\n this.setValue(BaseTextBlock.textProperty, value);\n };\n BaseTextBlock.prototype.init = function (textDefinition) {\n this.size = textDefinition.size;\n this.weight = textDefinition.weight;\n this.color = textDefinition.color;\n this.isSubtle = textDefinition.isSubtle;\n };\n BaseTextBlock.prototype.asString = function () {\n return this.text;\n };\n BaseTextBlock.prototype.applyStylesTo = function (targetElement) {\n var fontType = this.hostConfig.getFontTypeDefinition(this.effectiveFontType);\n if (fontType.fontFamily) {\n targetElement.style.fontFamily = fontType.fontFamily;\n }\n var fontSize;\n switch (this.effectiveSize) {\n case Enums.TextSize.Small:\n fontSize = fontType.fontSizes.small;\n break;\n case Enums.TextSize.Medium:\n fontSize = fontType.fontSizes.medium;\n break;\n case Enums.TextSize.Large:\n fontSize = fontType.fontSizes.large;\n break;\n case Enums.TextSize.ExtraLarge:\n fontSize = fontType.fontSizes.extraLarge;\n break;\n default:\n fontSize = fontType.fontSizes.default;\n break;\n }\n targetElement.style.fontSize = fontSize + \"px\";\n var colorDefinition = this.getColorDefinition(this.getEffectiveStyleDefinition().foregroundColors, this.effectiveColor);\n var targetColor = Utils.stringToCssColor(this.effectiveIsSubtle ? colorDefinition.subtle : colorDefinition.default);\n if (targetColor) {\n targetElement.style.color = targetColor;\n }\n var fontWeight;\n switch (this.effectiveWeight) {\n case Enums.TextWeight.Lighter:\n fontWeight = fontType.fontWeights.lighter;\n break;\n case Enums.TextWeight.Bolder:\n fontWeight = fontType.fontWeights.bolder;\n break;\n default:\n fontWeight = fontType.fontWeights.default;\n break;\n }\n targetElement.style.fontWeight = fontWeight.toString();\n if (this.ariaHidden) {\n targetElement.setAttribute(\"aria-hidden\", \"true\");\n }\n };\n BaseTextBlock.prototype.getAllActions = function () {\n var result = _super.prototype.getAllActions.call(this);\n if (this.selectAction) {\n result.push(this.selectAction);\n }\n return result;\n };\n Object.defineProperty(BaseTextBlock.prototype, \"effectiveColor\", {\n get: function () {\n return this.color !== undefined ? this.color : this.getEffectiveTextStyleDefinition().color;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(BaseTextBlock.prototype, \"effectiveFontType\", {\n get: function () {\n return this.fontType !== undefined\n ? this.fontType\n : this.getEffectiveTextStyleDefinition().fontType;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(BaseTextBlock.prototype, \"effectiveIsSubtle\", {\n get: function () {\n return this.isSubtle !== undefined\n ? this.isSubtle\n : this.getEffectiveTextStyleDefinition().isSubtle;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(BaseTextBlock.prototype, \"effectiveSize\", {\n get: function () {\n return this.size !== undefined ? this.size : this.getEffectiveTextStyleDefinition().size;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(BaseTextBlock.prototype, \"effectiveWeight\", {\n get: function () {\n return this.weight !== undefined\n ? this.weight\n : this.getEffectiveTextStyleDefinition().weight;\n },\n enumerable: false,\n configurable: true\n });\n //#region Schema\n BaseTextBlock.textProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"text\", true);\n BaseTextBlock.sizeProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_0, \"size\", Enums.TextSize);\n BaseTextBlock.weightProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_0, \"weight\", Enums.TextWeight);\n BaseTextBlock.colorProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_0, \"color\", Enums.TextColor);\n BaseTextBlock.isSubtleProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_0, \"isSubtle\");\n BaseTextBlock.fontTypeProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_2, \"fontType\", Enums.FontType);\n BaseTextBlock.selectActionProperty = new ActionProperty(serialization_1.Versions.v1_1, \"selectAction\", [\n \"Action.ShowCard\"\n ]);\n __decorate([\n (0, serialization_1.property)(BaseTextBlock.sizeProperty)\n ], BaseTextBlock.prototype, \"size\", void 0);\n __decorate([\n (0, serialization_1.property)(BaseTextBlock.weightProperty)\n ], BaseTextBlock.prototype, \"weight\", void 0);\n __decorate([\n (0, serialization_1.property)(BaseTextBlock.colorProperty)\n ], BaseTextBlock.prototype, \"color\", void 0);\n __decorate([\n (0, serialization_1.property)(BaseTextBlock.fontTypeProperty)\n ], BaseTextBlock.prototype, \"fontType\", void 0);\n __decorate([\n (0, serialization_1.property)(BaseTextBlock.isSubtleProperty)\n ], BaseTextBlock.prototype, \"isSubtle\", void 0);\n __decorate([\n (0, serialization_1.property)(BaseTextBlock.textProperty)\n ], BaseTextBlock.prototype, \"text\", null);\n __decorate([\n (0, serialization_1.property)(BaseTextBlock.selectActionProperty)\n ], BaseTextBlock.prototype, \"selectAction\", void 0);\n return BaseTextBlock;\n}(CardElement));\nexports.BaseTextBlock = BaseTextBlock;\nvar TextBlock = /** @class */ (function (_super) {\n __extends(TextBlock, _super);\n function TextBlock() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.wrap = false;\n _this._treatAsPlainText = true;\n _this.useMarkdown = true;\n return _this;\n }\n TextBlock.prototype.restoreOriginalContent = function () {\n var _a, _b;\n if (this.renderedElement !== undefined) {\n if (this.maxLines && this.maxLines > 0) {\n this.renderedElement.style.maxHeight =\n this._computedLineHeight * this.maxLines + \"px\";\n }\n var originalHtml = (_b = (_a = TextBlock._ttRoundtripPolicy) === null || _a === void 0 ? void 0 : _a.createHTML(this._originalInnerHtml)) !== null && _b !== void 0 ? _b : this._originalInnerHtml;\n this.renderedElement.innerHTML = originalHtml;\n }\n };\n TextBlock.prototype.truncateIfSupported = function (maxHeight) {\n if (this.renderedElement !== undefined) {\n // For now, only truncate TextBlocks that contain just a single\n // paragraph -- since the maxLines calculation doesn't take into\n // account Markdown lists\n var children = this.renderedElement.children;\n var isTextOnly = !children.length;\n var truncationSupported = isTextOnly ||\n (children.length === 1 && children[0].tagName.toLowerCase() === \"p\" && !children[0].children.length);\n if (truncationSupported) {\n var element = isTextOnly ? this.renderedElement : children[0];\n Utils.truncateText(element, maxHeight, this._computedLineHeight);\n return true;\n }\n }\n return false;\n };\n TextBlock.prototype.setText = function (value) {\n _super.prototype.setText.call(this, value);\n this._processedText = undefined;\n };\n TextBlock.prototype.internalRender = function () {\n var _this = this;\n var _a, _b;\n this._processedText = undefined;\n if (this.text) {\n var preProcessedText = this.preProcessPropertyValue(BaseTextBlock.textProperty);\n var hostConfig = this.hostConfig;\n var element = void 0;\n if (this.forElementId) {\n var labelElement = document.createElement(\"label\");\n labelElement.htmlFor = this.forElementId;\n element = labelElement;\n }\n else {\n element = document.createElement(\"div\");\n }\n element.classList.add(hostConfig.makeCssClassName(\"ac-textBlock\"));\n element.style.overflow = \"hidden\";\n this.applyStylesTo(element);\n if (this.style === \"heading\") {\n element.setAttribute(\"role\", \"heading\");\n var headingLevel = this.hostConfig.textBlock.headingLevel;\n if (headingLevel !== undefined && headingLevel > 0) {\n element.setAttribute(\"aria-level\", headingLevel.toString());\n }\n }\n if (this.selectAction && hostConfig.supportsInteractivity) {\n element.onclick = function (e) {\n if (_this.selectAction && _this.selectAction.isEffectivelyEnabled()) {\n e.preventDefault();\n e.cancelBubble = true;\n _this.selectAction.execute();\n }\n };\n this.selectAction.setupElementForAccessibility(element);\n if (this.selectAction.isEffectivelyEnabled()) {\n element.classList.add(hostConfig.makeCssClassName(\"ac-selectable\"));\n }\n }\n if (!this._processedText) {\n this._treatAsPlainText = true;\n var formattedText = TextFormatters.formatText(this.lang, preProcessedText);\n if (this.useMarkdown && formattedText) {\n if (shared_1.GlobalSettings.allowMarkForTextHighlighting) {\n formattedText = formattedText\n .replace(//g, \"===\")\n .replace(/<\\/mark>/g, \"/==/\");\n }\n var markdownProcessingResult = AdaptiveCard.applyMarkdown(formattedText);\n if (markdownProcessingResult.didProcess &&\n markdownProcessingResult.outputHtml) {\n this._processedText = markdownProcessingResult.outputHtml;\n this._treatAsPlainText = false;\n // Only process tag if markdown processing was applied because\n // markdown processing is also responsible for sanitizing the input string\n if (shared_1.GlobalSettings.allowMarkForTextHighlighting && this._processedText) {\n var markStyle = \"\";\n var effectiveStyle = this.getEffectiveStyleDefinition();\n if (effectiveStyle.highlightBackgroundColor) {\n markStyle +=\n \"background-color: \" +\n effectiveStyle.highlightBackgroundColor +\n \";\";\n }\n if (effectiveStyle.highlightForegroundColor) {\n markStyle +=\n \"color: \" + effectiveStyle.highlightForegroundColor + \";\";\n }\n if (markStyle) {\n markStyle = 'style=\"' + markStyle + '\"';\n }\n this._processedText = this._processedText\n .replace(/===/g, \"\")\n .replace(/\\/==\\//g, \"\");\n }\n }\n else {\n this._processedText = formattedText;\n this._treatAsPlainText = true;\n }\n }\n else {\n this._processedText = formattedText;\n this._treatAsPlainText = true;\n }\n }\n if (!this._processedText) {\n this._processedText = \"\";\n }\n if (this._treatAsPlainText) {\n element.innerText = this._processedText;\n }\n else {\n var processedHtml = (_b = (_a = TextBlock._ttMarkdownPolicy) === null || _a === void 0 ? void 0 : _a.createHTML(this._processedText)) !== null && _b !== void 0 ? _b : this._processedText;\n element.innerHTML = processedHtml;\n }\n if (element.firstElementChild instanceof HTMLElement) {\n var firstElementChild = element.firstElementChild;\n firstElementChild.style.marginTop = \"0px\";\n firstElementChild.style.width = \"100%\";\n if (!this.wrap) {\n firstElementChild.style.overflow = \"hidden\";\n firstElementChild.style.textOverflow = \"ellipsis\";\n }\n }\n if (element.lastElementChild instanceof HTMLElement) {\n element.lastElementChild.style.marginBottom = \"0px\";\n }\n var anchors = element.getElementsByTagName(\"a\");\n var _loop_1 = function (anchor) {\n anchor.classList.add(hostConfig.makeCssClassName(\"ac-anchor\"));\n anchor.target = \"_blank\";\n anchor.onclick = function (e) {\n if (raiseAnchorClickedEvent(_this, anchor, e)) {\n e.preventDefault();\n e.cancelBubble = true;\n }\n };\n anchor.oncontextmenu = function (e) {\n if (raiseAnchorClickedEvent(_this, anchor, e)) {\n e.preventDefault();\n e.cancelBubble = true;\n return false;\n }\n return true;\n };\n };\n for (var _i = 0, _c = Array.from(anchors); _i < _c.length; _i++) {\n var anchor = _c[_i];\n _loop_1(anchor);\n }\n if (this.wrap) {\n element.style.wordWrap = \"break-word\";\n if (this.maxLines && this.maxLines > 0) {\n element.style.overflow = \"hidden\";\n if (Utils.isInternetExplorer() || !shared_1.GlobalSettings.useWebkitLineClamp) {\n element.style.maxHeight = this._computedLineHeight * this.maxLines + \"px\";\n }\n else {\n // While non standard, --webkit-line-clamp works in every browser (except IE)\n // and is a great solution to support the maxLines feature with ellipsis\n // truncation. With --webkit-line-clamp there is need to use explicit line heights\n element.style.removeProperty(\"line-height\");\n element.style.display = \"-webkit-box\";\n element.style.webkitBoxOrient = \"vertical\";\n element.style.webkitLineClamp = this.maxLines.toString();\n }\n }\n }\n else {\n element.style.whiteSpace = \"nowrap\";\n element.style.textOverflow = \"ellipsis\";\n }\n if (shared_1.GlobalSettings.useAdvancedTextBlockTruncation ||\n shared_1.GlobalSettings.useAdvancedCardBottomTruncation) {\n this._originalInnerHtml = element.innerHTML;\n }\n return element;\n }\n else {\n return undefined;\n }\n };\n TextBlock.prototype.truncateOverflow = function (maxHeight) {\n if (maxHeight >= this._computedLineHeight) {\n return this.truncateIfSupported(maxHeight);\n }\n return false;\n };\n TextBlock.prototype.undoOverflowTruncation = function () {\n this.restoreOriginalContent();\n if (shared_1.GlobalSettings.useAdvancedTextBlockTruncation && this.maxLines) {\n var maxHeight = this._computedLineHeight * this.maxLines;\n this.truncateIfSupported(maxHeight);\n }\n };\n TextBlock.prototype.applyStylesTo = function (targetElement) {\n _super.prototype.applyStylesTo.call(this, targetElement);\n switch (this.getEffectiveHorizontalAlignment()) {\n case Enums.HorizontalAlignment.Center:\n targetElement.style.textAlign = \"center\";\n break;\n case Enums.HorizontalAlignment.Right:\n targetElement.style.textAlign = \"end\";\n break;\n default:\n targetElement.style.textAlign = \"start\";\n break;\n }\n var lineHeights = this.hostConfig.lineHeights;\n if (lineHeights) {\n switch (this.effectiveSize) {\n case Enums.TextSize.Small:\n this._computedLineHeight = lineHeights.small;\n break;\n case Enums.TextSize.Medium:\n this._computedLineHeight = lineHeights.medium;\n break;\n case Enums.TextSize.Large:\n this._computedLineHeight = lineHeights.large;\n break;\n case Enums.TextSize.ExtraLarge:\n this._computedLineHeight = lineHeights.extraLarge;\n break;\n default:\n this._computedLineHeight = lineHeights.default;\n break;\n }\n }\n else {\n // Looks like 1.33 is the magic number to compute line-height\n // from font size.\n this._computedLineHeight =\n this.getFontSize(this.hostConfig.getFontTypeDefinition(this.effectiveFontType)) *\n 1.33;\n }\n targetElement.style.lineHeight = this._computedLineHeight + \"px\";\n };\n TextBlock.prototype.getJsonTypeName = function () {\n return \"TextBlock\";\n };\n TextBlock.prototype.getEffectiveTextStyleDefinition = function () {\n if (this.style) {\n return this.hostConfig.textStyles.getStyleByName(this.style);\n }\n return _super.prototype.getEffectiveTextStyleDefinition.call(this);\n };\n TextBlock.prototype.updateLayout = function (processChildren) {\n if (processChildren === void 0) { processChildren = false; }\n _super.prototype.updateLayout.call(this, processChildren);\n if (shared_1.GlobalSettings.useAdvancedTextBlockTruncation && this.maxLines && this.isDisplayed()) {\n // Reset the element's innerHTML in case the available room for\n // content has increased\n this.restoreOriginalContent();\n this.truncateIfSupported(this._computedLineHeight * this.maxLines);\n }\n };\n var _a, _b;\n TextBlock.wrapProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_0, \"wrap\", false);\n TextBlock.maxLinesProperty = new serialization_1.NumProperty(serialization_1.Versions.v1_0, \"maxLines\");\n TextBlock.styleProperty = new serialization_1.ValueSetProperty(serialization_1.Versions.v1_5, \"style\", [\n { value: \"default\" },\n { value: \"columnHeader\" },\n { value: \"heading\" }\n ]);\n // Markdown processing is handled outside of Adaptive Cards. It's up to the host to ensure that markdown is safely\n // processed.\n TextBlock._ttMarkdownPolicy = (typeof window === 'undefined') ? undefined : (_a = window.trustedTypes) === null || _a === void 0 ? void 0 : _a.createPolicy(\"adaptivecards#markdownPassthroughPolicy\", { createHTML: function (value) { return value; } });\n // When \"advanced\" truncation is enabled (see GlobalSettings.useAdvancedCardBottomTruncation and\n // GlobalSettings.useAdvancedTextBlockTruncation), we store the original pre-truncation content in\n // _originalInnerHtml so that we can restore/recalculate truncation later if space availability has changed (see\n // TextBlock.restoreOriginalContent())\n TextBlock._ttRoundtripPolicy = (typeof window === 'undefined') ? undefined : (_b = window.trustedTypes) === null || _b === void 0 ? void 0 : _b.createPolicy(\"adaptivecards#restoreContentsPolicy\", { createHTML: function (value) { return value; } });\n __decorate([\n (0, serialization_1.property)(TextBlock.wrapProperty)\n ], TextBlock.prototype, \"wrap\", void 0);\n __decorate([\n (0, serialization_1.property)(TextBlock.maxLinesProperty)\n ], TextBlock.prototype, \"maxLines\", void 0);\n __decorate([\n (0, serialization_1.property)(TextBlock.styleProperty)\n ], TextBlock.prototype, \"style\", void 0);\n return TextBlock;\n}(BaseTextBlock));\nexports.TextBlock = TextBlock;\nvar TextRun = /** @class */ (function (_super) {\n __extends(TextRun, _super);\n function TextRun() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.italic = false;\n _this.strikethrough = false;\n _this.highlight = false;\n _this.underline = false;\n return _this;\n }\n TextRun.prototype.populateSchema = function (schema) {\n _super.prototype.populateSchema.call(this, schema);\n schema.add(BaseTextBlock.selectActionProperty);\n };\n //#endregion\n TextRun.prototype.internalRender = function () {\n var _this = this;\n if (this.text) {\n var preProcessedText = this.preProcessPropertyValue(BaseTextBlock.textProperty);\n var hostConfig = this.hostConfig;\n var formattedText = TextFormatters.formatText(this.lang, preProcessedText);\n if (!formattedText) {\n formattedText = \"\";\n }\n var element = document.createElement(\"span\");\n element.classList.add(hostConfig.makeCssClassName(\"ac-textRun\"));\n this.applyStylesTo(element);\n if (this.selectAction && hostConfig.supportsInteractivity) {\n var anchor = document.createElement(\"a\");\n anchor.classList.add(hostConfig.makeCssClassName(\"ac-anchor\"));\n var href = this.selectAction.getHref();\n anchor.href = href ? href : \"\";\n anchor.target = \"_blank\";\n anchor.onclick = function (e) {\n if (_this.selectAction && _this.selectAction.isEffectivelyEnabled()) {\n e.preventDefault();\n e.cancelBubble = true;\n _this.selectAction.execute();\n }\n };\n this.selectAction.setupElementForAccessibility(anchor);\n anchor.innerText = formattedText;\n element.appendChild(anchor);\n }\n else {\n element.innerText = formattedText;\n }\n return element;\n }\n else {\n return undefined;\n }\n };\n TextRun.prototype.applyStylesTo = function (targetElement) {\n _super.prototype.applyStylesTo.call(this, targetElement);\n if (this.italic) {\n targetElement.style.fontStyle = \"italic\";\n }\n if (this.strikethrough) {\n targetElement.style.textDecoration = \"line-through\";\n }\n if (this.highlight) {\n var colorDefinition = this.getColorDefinition(this.getEffectiveStyleDefinition().foregroundColors, this.effectiveColor);\n var backgroundColor = Utils.stringToCssColor(this.effectiveIsSubtle\n ? colorDefinition.highlightColors.subtle\n : colorDefinition.highlightColors.default);\n if (backgroundColor) {\n targetElement.style.backgroundColor = backgroundColor;\n }\n }\n if (this.underline) {\n targetElement.style.textDecoration = \"underline\";\n }\n };\n TextRun.prototype.getJsonTypeName = function () {\n return \"TextRun\";\n };\n Object.defineProperty(TextRun.prototype, \"isStandalone\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TextRun.prototype, \"isInline\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n TextRun.italicProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_2, \"italic\", false);\n TextRun.strikethroughProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_2, \"strikethrough\", false);\n TextRun.highlightProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_2, \"highlight\", false);\n TextRun.underlineProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_3, \"underline\", false);\n __decorate([\n (0, serialization_1.property)(TextRun.italicProperty)\n ], TextRun.prototype, \"italic\", void 0);\n __decorate([\n (0, serialization_1.property)(TextRun.strikethroughProperty)\n ], TextRun.prototype, \"strikethrough\", void 0);\n __decorate([\n (0, serialization_1.property)(TextRun.highlightProperty)\n ], TextRun.prototype, \"highlight\", void 0);\n __decorate([\n (0, serialization_1.property)(TextRun.underlineProperty)\n ], TextRun.prototype, \"underline\", void 0);\n return TextRun;\n}(BaseTextBlock));\nexports.TextRun = TextRun;\nvar RichTextBlock = /** @class */ (function (_super) {\n __extends(RichTextBlock, _super);\n function RichTextBlock() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._inlines = [];\n return _this;\n }\n RichTextBlock.prototype.internalAddInline = function (inline, forceAdd) {\n if (forceAdd === void 0) { forceAdd = false; }\n if (!inline.isInline) {\n throw new Error(strings_1.Strings.errors.elementCannotBeUsedAsInline());\n }\n var doAdd = inline.parent === undefined || forceAdd;\n if (!doAdd && inline.parent !== this) {\n throw new Error(strings_1.Strings.errors.inlineAlreadyParented());\n }\n else {\n inline.setParent(this);\n this._inlines.push(inline);\n }\n };\n RichTextBlock.prototype.internalParse = function (source, context) {\n _super.prototype.internalParse.call(this, source, context);\n this._inlines = [];\n if (Array.isArray(source[\"inlines\"])) {\n for (var _i = 0, _a = source[\"inlines\"]; _i < _a.length; _i++) {\n var jsonInline = _a[_i];\n var inline = void 0;\n if (typeof jsonInline === \"string\") {\n var textRun = new TextRun();\n textRun.text = jsonInline;\n inline = textRun;\n }\n else {\n // No fallback for inlines in 1.2\n inline = context.parseElement(this, jsonInline, [], false);\n }\n if (inline) {\n this.internalAddInline(inline, true);\n }\n }\n }\n };\n RichTextBlock.prototype.internalToJSON = function (target, context) {\n _super.prototype.internalToJSON.call(this, target, context);\n if (this._inlines.length > 0) {\n var jsonInlines = [];\n for (var _i = 0, _a = this._inlines; _i < _a.length; _i++) {\n var inline = _a[_i];\n jsonInlines.push(inline.toJSON(context));\n }\n context.serializeValue(target, \"inlines\", jsonInlines);\n }\n };\n RichTextBlock.prototype.internalRender = function () {\n if (this._inlines.length > 0) {\n var element = void 0;\n if (this.forElementId) {\n var labelElement = document.createElement(\"label\");\n labelElement.htmlFor = this.forElementId;\n element = labelElement;\n }\n else {\n element = document.createElement(\"div\");\n }\n element.className = this.hostConfig.makeCssClassName(\"ac-richTextBlock\");\n switch (this.getEffectiveHorizontalAlignment()) {\n case Enums.HorizontalAlignment.Center:\n element.style.textAlign = \"center\";\n break;\n case Enums.HorizontalAlignment.Right:\n element.style.textAlign = \"end\";\n break;\n default:\n element.style.textAlign = \"start\";\n break;\n }\n var renderedInlines = 0;\n for (var _i = 0, _a = this._inlines; _i < _a.length; _i++) {\n var inline = _a[_i];\n var renderedInline = inline.render();\n if (renderedInline) {\n element.appendChild(renderedInline);\n renderedInlines++;\n }\n }\n if (renderedInlines > 0) {\n return element;\n }\n }\n return undefined;\n };\n RichTextBlock.prototype.asString = function () {\n var result = \"\";\n for (var _i = 0, _a = this._inlines; _i < _a.length; _i++) {\n var inline = _a[_i];\n result += inline.asString();\n }\n return result;\n };\n RichTextBlock.prototype.getJsonTypeName = function () {\n return \"RichTextBlock\";\n };\n RichTextBlock.prototype.getInlineCount = function () {\n return this._inlines.length;\n };\n RichTextBlock.prototype.getInlineAt = function (index) {\n if (index >= 0 && index < this._inlines.length) {\n return this._inlines[index];\n }\n else {\n throw new Error(strings_1.Strings.errors.indexOutOfRange(index));\n }\n };\n RichTextBlock.prototype.addInline = function (inline) {\n if (typeof inline === \"string\") {\n this.internalAddInline(new TextRun(inline));\n }\n else {\n this.internalAddInline(inline);\n }\n };\n RichTextBlock.prototype.removeInline = function (inline) {\n var index = this._inlines.indexOf(inline);\n if (index >= 0) {\n this._inlines[index].setParent(undefined);\n this._inlines.splice(index, 1);\n return true;\n }\n return false;\n };\n return RichTextBlock;\n}(CardElement));\nexports.RichTextBlock = RichTextBlock;\nvar Fact = /** @class */ (function (_super) {\n __extends(Fact, _super);\n function Fact(name, value) {\n var _this = _super.call(this) || this;\n _this.name = name;\n _this.value = value;\n return _this;\n }\n //#endregion\n Fact.prototype.getSchemaKey = function () {\n return \"Fact\";\n };\n //#region Schema\n Fact.titleProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"title\");\n Fact.valueProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"value\");\n __decorate([\n (0, serialization_1.property)(Fact.titleProperty)\n ], Fact.prototype, \"name\", void 0);\n __decorate([\n (0, serialization_1.property)(Fact.valueProperty)\n ], Fact.prototype, \"value\", void 0);\n return Fact;\n}(serialization_1.SerializableObject));\nexports.Fact = Fact;\nvar FactSet = /** @class */ (function (_super) {\n __extends(FactSet, _super);\n function FactSet() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Object.defineProperty(FactSet.prototype, \"useDefaultSizing\", {\n //#endregion\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n FactSet.prototype.internalRender = function () {\n var element = undefined;\n var hostConfig = this.hostConfig;\n if (this.facts.length > 0) {\n element = document.createElement(\"table\");\n element.style.borderWidth = \"0px\";\n element.style.borderSpacing = \"0px\";\n element.style.borderStyle = \"none\";\n element.style.borderCollapse = \"collapse\";\n element.style.display = \"block\";\n element.style.overflow = \"hidden\";\n element.classList.add(hostConfig.makeCssClassName(\"ac-factset\"));\n element.setAttribute(\"role\", \"presentation\");\n for (var i = 0; i < this.facts.length; i++) {\n var trElement = document.createElement(\"tr\");\n if (i > 0) {\n trElement.style.marginTop = hostConfig.factSet.spacing + \"px\";\n }\n // Title column\n var tdElement = document.createElement(\"td\");\n tdElement.style.padding = \"0\";\n tdElement.classList.add(hostConfig.makeCssClassName(\"ac-fact-title\"));\n if (hostConfig.factSet.title.maxWidth) {\n tdElement.style.maxWidth = hostConfig.factSet.title.maxWidth + \"px\";\n }\n tdElement.style.verticalAlign = \"top\";\n var textBlock = new TextBlock();\n textBlock.setParent(this);\n textBlock.text =\n !this.facts[i].name && this.isDesignMode() ? \"Title\" : this.facts[i].name;\n textBlock.size = hostConfig.factSet.title.size;\n textBlock.color = hostConfig.factSet.title.color;\n textBlock.isSubtle = hostConfig.factSet.title.isSubtle;\n textBlock.weight = hostConfig.factSet.title.weight;\n textBlock.wrap = hostConfig.factSet.title.wrap;\n textBlock.spacing = Enums.Spacing.None;\n Utils.appendChild(tdElement, textBlock.render());\n Utils.appendChild(trElement, tdElement);\n // Spacer column\n tdElement = document.createElement(\"td\");\n tdElement.style.width = \"10px\";\n Utils.appendChild(trElement, tdElement);\n // Value column\n tdElement = document.createElement(\"td\");\n tdElement.style.padding = \"0\";\n tdElement.style.verticalAlign = \"top\";\n tdElement.classList.add(hostConfig.makeCssClassName(\"ac-fact-value\"));\n textBlock = new TextBlock();\n textBlock.setParent(this);\n textBlock.text = this.facts[i].value;\n textBlock.size = hostConfig.factSet.value.size;\n textBlock.color = hostConfig.factSet.value.color;\n textBlock.isSubtle = hostConfig.factSet.value.isSubtle;\n textBlock.weight = hostConfig.factSet.value.weight;\n textBlock.wrap = hostConfig.factSet.value.wrap;\n textBlock.spacing = Enums.Spacing.None;\n Utils.appendChild(tdElement, textBlock.render());\n Utils.appendChild(trElement, tdElement);\n Utils.appendChild(element, trElement);\n }\n }\n return element;\n };\n FactSet.prototype.getJsonTypeName = function () {\n return \"FactSet\";\n };\n //#region Schema\n FactSet.factsProperty = new serialization_1.SerializableObjectCollectionProperty(serialization_1.Versions.v1_0, \"facts\", Fact);\n __decorate([\n (0, serialization_1.property)(FactSet.factsProperty)\n ], FactSet.prototype, \"facts\", void 0);\n return FactSet;\n}(CardElement));\nexports.FactSet = FactSet;\nvar ImageDimensionProperty = /** @class */ (function (_super) {\n __extends(ImageDimensionProperty, _super);\n function ImageDimensionProperty(targetVersion, name, internalName, fallbackProperty) {\n var _this = _super.call(this, targetVersion, name) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.internalName = internalName;\n _this.fallbackProperty = fallbackProperty;\n return _this;\n }\n ImageDimensionProperty.prototype.getInternalName = function () {\n return this.internalName;\n };\n ImageDimensionProperty.prototype.parse = function (sender, source, context) {\n var result = undefined;\n var sourceValue = source[this.name];\n if (sourceValue === undefined) {\n return this.defaultValue;\n }\n var isValid = false;\n if (typeof sourceValue === \"string\") {\n try {\n var size = shared_1.SizeAndUnit.parse(sourceValue, true);\n if (size.unit === Enums.SizeUnit.Pixel) {\n result = size.physicalSize;\n isValid = true;\n }\n }\n catch (_a) {\n // Swallow the exception\n }\n // If the source value isn't valid per this property definition,\n // check its validity per the fallback property, if specified\n if (!isValid && this.fallbackProperty) {\n isValid = this.fallbackProperty.isValidValue(sourceValue, context);\n }\n }\n if (!isValid) {\n context.logParseEvent(sender, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidPropertyValue(sourceValue, this.name));\n }\n return result;\n };\n ImageDimensionProperty.prototype.toJSON = function (sender, target, value, context) {\n context.serializeValue(target, this.name, typeof value === \"number\" && !isNaN(value) ? value + \"px\" : undefined);\n };\n return ImageDimensionProperty;\n}(serialization_1.PropertyDefinition));\nvar Image = /** @class */ (function (_super) {\n __extends(Image, _super);\n function Image() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.size = Enums.Size.Auto;\n _this.style = Enums.ImageStyle.Default;\n return _this;\n }\n Image.prototype.populateSchema = function (schema) {\n _super.prototype.populateSchema.call(this, schema);\n schema.remove(CardElement.heightProperty);\n };\n //#endregion\n Image.prototype.applySize = function (element) {\n if (this.pixelWidth || this.pixelHeight) {\n if (this.pixelWidth) {\n element.style.width = this.pixelWidth + \"px\";\n }\n if (this.pixelHeight) {\n element.style.height = this.pixelHeight + \"px\";\n }\n }\n else {\n if (this.maxHeight) {\n // If the image is constrained in height, we set its height property and\n // auto and stretch are ignored (default to medium). THis is necessary for\n // ImageSet which uses a maximum image height as opposed to the cards width\n // as a constraining dimension\n switch (this.size) {\n case Enums.Size.Small:\n element.style.height = this.hostConfig.imageSizes.small + \"px\";\n break;\n case Enums.Size.Large:\n element.style.height = this.hostConfig.imageSizes.large + \"px\";\n break;\n default:\n element.style.height = this.hostConfig.imageSizes.medium + \"px\";\n break;\n }\n element.style.maxHeight = this.maxHeight + \"px\";\n }\n else {\n switch (this.size) {\n case Enums.Size.Stretch:\n element.style.width = \"100%\";\n break;\n case Enums.Size.Auto:\n element.style.maxWidth = \"100%\";\n break;\n case Enums.Size.Small:\n element.style.width = this.hostConfig.imageSizes.small + \"px\";\n break;\n case Enums.Size.Large:\n element.style.width = this.hostConfig.imageSizes.large + \"px\";\n break;\n case Enums.Size.Medium:\n element.style.width = this.hostConfig.imageSizes.medium + \"px\";\n break;\n }\n element.style.maxHeight = \"100%\";\n }\n }\n };\n Object.defineProperty(Image.prototype, \"useDefaultSizing\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n Image.prototype.internalRender = function () {\n var _this = this;\n var element = undefined;\n if (this.url) {\n element = document.createElement(\"div\");\n element.style.display = \"flex\";\n element.style.alignItems = \"flex-start\";\n // Cache hostConfig to avoid walking the parent hierarchy multiple times\n var hostConfig = this.hostConfig;\n switch (this.getEffectiveHorizontalAlignment()) {\n case Enums.HorizontalAlignment.Center:\n element.style.justifyContent = \"center\";\n break;\n case Enums.HorizontalAlignment.Right:\n element.style.justifyContent = \"flex-end\";\n break;\n default:\n element.style.justifyContent = \"flex-start\";\n break;\n }\n var imageElement = document.createElement(\"img\");\n this.renderedImageElement = imageElement;\n imageElement.onload = function (_e) {\n raiseImageLoadedEvent(_this);\n };\n imageElement.onerror = function (_e) {\n if (_this.renderedElement) {\n var card = _this.getRootElement();\n clearElement(_this.renderedElement);\n if (card && card.designMode) {\n var errorElement = document.createElement(\"div\");\n errorElement.style.display = \"flex\";\n errorElement.style.alignItems = \"center\";\n errorElement.style.justifyContent = \"center\";\n errorElement.style.backgroundColor = \"#EEEEEE\";\n errorElement.style.color = \"black\";\n errorElement.innerText = \":-(\";\n errorElement.style.padding = \"10px\";\n _this.applySize(errorElement);\n _this.renderedElement.appendChild(errorElement);\n }\n }\n raiseImageLoadedEvent(_this);\n };\n imageElement.style.minWidth = \"0\";\n imageElement.classList.add(hostConfig.makeCssClassName(\"ac-image\"));\n if (this.selectAction && hostConfig.supportsInteractivity) {\n imageElement.onkeypress = function (e) {\n if (_this.selectAction &&\n _this.selectAction.isEffectivelyEnabled() &&\n (e.code === \"Enter\" || e.code === \"Space\")) {\n // enter or space pressed\n e.preventDefault();\n e.cancelBubble = true;\n _this.selectAction.execute();\n }\n };\n imageElement.onclick = function (e) {\n if (_this.selectAction && _this.selectAction.isEffectivelyEnabled()) {\n e.preventDefault();\n e.cancelBubble = true;\n _this.selectAction.execute();\n }\n };\n this.selectAction.setupElementForAccessibility(imageElement);\n if (this.selectAction.isEffectivelyEnabled()) {\n imageElement.classList.add(hostConfig.makeCssClassName(\"ac-selectable\"));\n }\n }\n this.applySize(imageElement);\n if (this.style === Enums.ImageStyle.Person) {\n imageElement.style.borderRadius = \"50%\";\n imageElement.style.backgroundPosition = \"50% 50%\";\n imageElement.style.backgroundRepeat = \"no-repeat\";\n }\n var backgroundColor = Utils.stringToCssColor(this.backgroundColor);\n if (backgroundColor) {\n imageElement.style.backgroundColor = backgroundColor;\n }\n this.setImageSource(imageElement);\n var altTextProperty = this.preProcessPropertyValue(Image.altTextProperty);\n if (altTextProperty) {\n imageElement.alt = altTextProperty;\n }\n element.appendChild(imageElement);\n }\n return element;\n };\n Image.prototype.getJsonTypeName = function () {\n return \"Image\";\n };\n Image.prototype.getAllActions = function () {\n var result = _super.prototype.getAllActions.call(this);\n if (this.selectAction) {\n result.push(this.selectAction);\n }\n return result;\n };\n Image.prototype.getActionById = function (id) {\n var result = _super.prototype.getActionById.call(this, id);\n if (!result && this.selectAction) {\n result = this.selectAction.getActionById(id);\n }\n return result;\n };\n Image.prototype.getResourceInformation = function () {\n return this.url ? [{ url: this.url, mimeType: \"image\" }] : [];\n };\n Image.prototype.setImageSource = function (imageElement) {\n var imageForceLoader = new ImageForceLoader(this.forceLoad, this.url);\n imageForceLoader.configureImage(this);\n imageElement.src = this.preProcessPropertyValue(Image.urlProperty);\n imageForceLoader.resetImage(this);\n };\n Image.urlProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"url\");\n Image.altTextProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"altText\");\n Image.backgroundColorProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_1, \"backgroundColor\");\n Image.styleProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_0, \"style\", Enums.ImageStyle, Enums.ImageStyle.Default);\n Image.sizeProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_0, \"size\", Enums.Size, Enums.Size.Auto);\n Image.pixelWidthProperty = new ImageDimensionProperty(serialization_1.Versions.v1_1, \"width\", \"pixelWidth\");\n Image.pixelHeightProperty = new ImageDimensionProperty(serialization_1.Versions.v1_1, \"height\", \"pixelHeight\", CardElement.heightProperty);\n Image.selectActionProperty = new ActionProperty(serialization_1.Versions.v1_1, \"selectAction\", [\n \"Action.ShowCard\"\n ]);\n Image.shouldForceLoadProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_6, \"forceLoad\", false);\n __decorate([\n (0, serialization_1.property)(Image.urlProperty)\n ], Image.prototype, \"url\", void 0);\n __decorate([\n (0, serialization_1.property)(Image.altTextProperty)\n ], Image.prototype, \"altText\", void 0);\n __decorate([\n (0, serialization_1.property)(Image.backgroundColorProperty)\n ], Image.prototype, \"backgroundColor\", void 0);\n __decorate([\n (0, serialization_1.property)(Image.sizeProperty)\n ], Image.prototype, \"size\", void 0);\n __decorate([\n (0, serialization_1.property)(Image.styleProperty)\n ], Image.prototype, \"style\", void 0);\n __decorate([\n (0, serialization_1.property)(Image.pixelWidthProperty)\n ], Image.prototype, \"pixelWidth\", void 0);\n __decorate([\n (0, serialization_1.property)(Image.pixelHeightProperty)\n ], Image.prototype, \"pixelHeight\", void 0);\n __decorate([\n (0, serialization_1.property)(Image.selectActionProperty)\n ], Image.prototype, \"selectAction\", void 0);\n __decorate([\n (0, serialization_1.property)(Image.shouldForceLoadProperty)\n ], Image.prototype, \"forceLoad\", void 0);\n return Image;\n}(CardElement));\nexports.Image = Image;\n// configures Image element to fetch a new image data from url source instead of relying on cache\n// currently rudimentary refreshing scheme is used\n// by attaching unique query string to url, we bypass the cache usage\nvar ImageForceLoader = /** @class */ (function () {\n function ImageForceLoader(doForceLoad, url) {\n this.doForceLoad = doForceLoad;\n this.url = url;\n if (url && url.length && doForceLoad) {\n // we can do better by appending unique key such as uuid instead of epoch\n // however the current usage is for front-end ui and networking, \n // since ui is running in single main thread, this is sufficient mechanism\n // without needing to depend on external library for our small use cases.\n this.uniqueHash = '?' + Date.now();\n this.urlWithForceLoadOption = url + this.uniqueHash;\n }\n }\n ImageForceLoader.prototype.configureImage = function (image) {\n if (this.urlWithForceLoadOption && this.urlWithForceLoadOption.length) {\n image.url = this.urlWithForceLoadOption;\n }\n };\n ImageForceLoader.prototype.resetImage = function (image) {\n image.url = this.url;\n };\n return ImageForceLoader;\n}());\nvar CardElementContainer = /** @class */ (function (_super) {\n __extends(CardElementContainer, _super);\n function CardElementContainer() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.allowVerticalOverflow = false;\n return _this;\n }\n CardElementContainer.prototype.populateSchema = function (schema) {\n _super.prototype.populateSchema.call(this, schema);\n if (!this.isSelectable) {\n schema.remove(CardElementContainer.selectActionProperty);\n }\n };\n //#endregion\n CardElementContainer.prototype.isElementAllowed = function (element) {\n return this.hostConfig.supportsInteractivity || !element.isInteractive;\n };\n CardElementContainer.prototype.applyPadding = function () {\n _super.prototype.applyPadding.call(this);\n if (!this.renderedElement) {\n return;\n }\n var physicalPadding = new shared_1.SpacingDefinition();\n if (this.getEffectivePadding()) {\n physicalPadding = this.hostConfig.paddingDefinitionToSpacingDefinition(this.getEffectivePadding());\n }\n this.renderedElement.style.paddingTop = physicalPadding.top + \"px\";\n this.renderedElement.style.paddingRight = physicalPadding.right + \"px\";\n this.renderedElement.style.paddingBottom = physicalPadding.bottom + \"px\";\n this.renderedElement.style.paddingLeft = physicalPadding.left + \"px\";\n this.renderedElement.style.marginRight = \"0\";\n this.renderedElement.style.marginLeft = \"0\";\n };\n Object.defineProperty(CardElementContainer.prototype, \"isSelectable\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n CardElementContainer.prototype.forbiddenChildElements = function () {\n return [];\n };\n CardElementContainer.prototype.releaseDOMResources = function () {\n _super.prototype.releaseDOMResources.call(this);\n for (var i = 0; i < this.getItemCount(); i++) {\n this.getItemAt(i).releaseDOMResources();\n }\n };\n CardElementContainer.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n for (var i = 0; i < this.getItemCount(); i++) {\n var item = this.getItemAt(i);\n if (!this.hostConfig.supportsInteractivity && item.isInteractive) {\n context.addFailure(this, Enums.ValidationEvent.InteractivityNotAllowed, strings_1.Strings.errors.interactivityNotAllowed());\n }\n if (!this.isElementAllowed(item)) {\n context.addFailure(this, Enums.ValidationEvent.InteractivityNotAllowed, strings_1.Strings.errors.elementTypeNotAllowed(item.getJsonTypeName()));\n }\n item.internalValidateProperties(context);\n }\n if (this._selectAction) {\n this._selectAction.internalValidateProperties(context);\n }\n };\n CardElementContainer.prototype.render = function () {\n var _this = this;\n var element = _super.prototype.render.call(this);\n if (element) {\n var hostConfig = this.hostConfig;\n if (this.allowVerticalOverflow) {\n element.style.overflowX = \"hidden\";\n element.style.overflowY = \"auto\";\n }\n if (element &&\n this.isSelectable &&\n this._selectAction &&\n hostConfig.supportsInteractivity) {\n element.onclick = function (e) {\n if (_this._selectAction && _this._selectAction.isEffectivelyEnabled()) {\n e.preventDefault();\n e.cancelBubble = true;\n _this._selectAction.execute();\n }\n };\n element.onkeypress = function (e) {\n if (_this._selectAction &&\n _this._selectAction.isEffectivelyEnabled() &&\n (e.code === \"Enter\" || e.code === \"Space\")) {\n // Enter or space pressed\n e.preventDefault();\n e.cancelBubble = true;\n _this._selectAction.execute();\n }\n };\n this._selectAction.setupElementForAccessibility(element);\n if (this._selectAction.isEffectivelyEnabled()) {\n element.classList.add(hostConfig.makeCssClassName(\"ac-selectable\"));\n }\n }\n }\n return element;\n };\n CardElementContainer.prototype.updateLayout = function (processChildren) {\n if (processChildren === void 0) { processChildren = true; }\n _super.prototype.updateLayout.call(this, processChildren);\n if (processChildren) {\n for (var i = 0; i < this.getItemCount(); i++) {\n this.getItemAt(i).updateLayout();\n }\n }\n };\n CardElementContainer.prototype.getAllInputs = function (processActions) {\n if (processActions === void 0) { processActions = true; }\n var result = [];\n for (var i = 0; i < this.getItemCount(); i++) {\n result.push.apply(result, this.getItemAt(i).getAllInputs(processActions));\n }\n return result;\n };\n CardElementContainer.prototype.getAllActions = function () {\n var result = _super.prototype.getAllActions.call(this);\n for (var i = 0; i < this.getItemCount(); i++) {\n result.push.apply(result, this.getItemAt(i).getAllActions());\n }\n if (this._selectAction) {\n result.push(this._selectAction);\n }\n return result;\n };\n CardElementContainer.prototype.getResourceInformation = function () {\n var result = [];\n for (var i = 0; i < this.getItemCount(); i++) {\n result.push.apply(result, this.getItemAt(i).getResourceInformation());\n }\n return result;\n };\n CardElementContainer.prototype.getElementById = function (id) {\n var result = _super.prototype.getElementById.call(this, id);\n if (!result) {\n for (var i = 0; i < this.getItemCount(); i++) {\n result = this.getItemAt(i).getElementById(id);\n if (result) {\n break;\n }\n }\n }\n return result;\n };\n /**\n * @inheritdoc\n */\n CardElementContainer.prototype.findDOMNodeOwner = function (node) {\n var _a;\n var target = undefined;\n for (var i = 0; i < this.getItemCount(); i++) {\n // recur through child elements\n target = this.getItemAt(i).findDOMNodeOwner(node);\n if (target) {\n return target;\n }\n }\n // If not found in children, check the actions\n for (var i = 0; i < this.getActionCount(); i++) {\n target = (_a = this.getActionAt(i)) === null || _a === void 0 ? void 0 : _a.findDOMNodeOwner(node);\n if (target) {\n return target;\n }\n }\n // if not found in children or actions, defer to parent implementation\n return _super.prototype.findDOMNodeOwner.call(this, node);\n };\n CardElementContainer.selectActionProperty = new ActionProperty(serialization_1.Versions.v1_1, \"selectAction\", [\n \"Action.ShowCard\"\n ]);\n __decorate([\n (0, serialization_1.property)(CardElementContainer.selectActionProperty)\n ], CardElementContainer.prototype, \"_selectAction\", void 0);\n return CardElementContainer;\n}(CardElement));\nexports.CardElementContainer = CardElementContainer;\nvar ImageSet = /** @class */ (function (_super) {\n __extends(ImageSet, _super);\n function ImageSet() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._images = [];\n _this.imageSize = Enums.ImageSize.Medium;\n _this.presentationStyle = Enums.ImageSetPresentationStyle.Default;\n _this.pixelOffset = 0;\n return _this;\n }\n //#endregion\n ImageSet.prototype.internalRender = function () {\n var element = undefined;\n if (this._images.length > 0) {\n element = document.createElement(\"div\");\n element.style.display = \"flex\";\n element.style.flexWrap = \"wrap\";\n for (var _i = 0, _a = this._images; _i < _a.length; _i++) {\n var image = _a[_i];\n switch (this.imageSize) {\n case Enums.ImageSize.Small:\n image.size = Enums.Size.Small;\n break;\n case Enums.ImageSize.Large:\n image.size = Enums.Size.Large;\n break;\n default:\n image.size = Enums.Size.Medium;\n break;\n }\n image.maxHeight = this.hostConfig.imageSet.maxImageHeight;\n var renderedImage = image.render();\n if (renderedImage) {\n renderedImage.style.display = \"inline-flex\";\n renderedImage.style.margin = \"0px\";\n if (this.presentationStyle == Enums.ImageSetPresentationStyle.Default) {\n renderedImage.style.marginRight = \"10px\";\n }\n Utils.appendChild(element, renderedImage);\n }\n }\n if (this.presentationStyle == Enums.ImageSetPresentationStyle.Stacked) {\n this.applyStackedPresentationStyle();\n }\n }\n return element;\n };\n ImageSet.prototype.applyStackedPresentationStyle = function () {\n if (this._images[0].renderedImageElement) {\n var dimension = StackedImageConfigurator.parseNumericPixelDimension(this._images[0].renderedImageElement.style.height);\n var bgColor = this.getEffectiveBackgroundColor();\n if (dimension) {\n var stackedImageConfigurator = new StackedImageConfigurator(this.pixelOffset, dimension, bgColor);\n stackedImageConfigurator.configureImagesArrayAsStackedLayout(this._images);\n }\n }\n };\n ImageSet.prototype.getEffectiveBackgroundColor = function () {\n var parentContainer = this.getParentContainer();\n var style = parentContainer === null || parentContainer === void 0 ? void 0 : parentContainer.getEffectiveStyle();\n var styleDefinition = this.hostConfig.containerStyles.getStyleByName(style, this.hostConfig.containerStyles.getStyleByName(this.defaultStyle));\n return Utils.stringToCssColor(styleDefinition.backgroundColor);\n };\n ImageSet.prototype.getItemCount = function () {\n return this._images.length;\n };\n ImageSet.prototype.getItemAt = function (index) {\n return this._images[index];\n };\n ImageSet.prototype.getFirstVisibleRenderedItem = function () {\n return this._images && this._images.length > 0 ? this._images[0] : undefined;\n };\n ImageSet.prototype.getLastVisibleRenderedItem = function () {\n return this._images && this._images.length > 0\n ? this._images[this._images.length - 1]\n : undefined;\n };\n ImageSet.prototype.removeItem = function (item) {\n if (item instanceof Image) {\n var itemIndex = this._images.indexOf(item);\n if (itemIndex >= 0) {\n this._images.splice(itemIndex, 1);\n item.setParent(undefined);\n this.updateLayout();\n return true;\n }\n }\n return false;\n };\n ImageSet.prototype.getJsonTypeName = function () {\n return \"ImageSet\";\n };\n ImageSet.prototype.addImage = function (image) {\n if (!image.parent) {\n this._images.push(image);\n image.setParent(this);\n }\n else {\n throw new Error(\"This image already belongs to another ImageSet\");\n }\n };\n ImageSet.prototype.indexOf = function (cardElement) {\n return cardElement instanceof Image ? this._images.indexOf(cardElement) : -1;\n };\n ImageSet.imagesProperty = new serialization_1.SerializableObjectCollectionProperty(serialization_1.Versions.v1_0, \"images\", Image, function (sender, item) {\n item.setParent(sender);\n });\n ImageSet.imageSizeProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_0, \"imageSize\", Enums.ImageSize, Enums.ImageSize.Medium);\n ImageSet.imagePresentationStyle = new serialization_1.EnumProperty(serialization_1.Versions.v1_6, \"style\", Enums.ImageSetPresentationStyle, Enums.ImageSetPresentationStyle.Default);\n ImageSet.pixelOffset = new serialization_1.NumProperty(serialization_1.Versions.v1_6, \"offset\", 0, undefined);\n __decorate([\n (0, serialization_1.property)(ImageSet.imagesProperty)\n ], ImageSet.prototype, \"_images\", void 0);\n __decorate([\n (0, serialization_1.property)(ImageSet.imageSizeProperty)\n ], ImageSet.prototype, \"imageSize\", void 0);\n __decorate([\n (0, serialization_1.property)(ImageSet.imagePresentationStyle)\n ], ImageSet.prototype, \"presentationStyle\", void 0);\n __decorate([\n (0, serialization_1.property)(ImageSet.pixelOffset)\n ], ImageSet.prototype, \"pixelOffset\", void 0);\n return ImageSet;\n}(CardElementContainer));\nexports.ImageSet = ImageSet;\nvar StackedImageConfigurator = /** @class */ (function () {\n function StackedImageConfigurator(offset, dimension, style) {\n this.sign45 = 0.7071;\n this.maxImageCounts = 2;\n this.offset = 0;\n this.normalizationConstant = 0;\n this.border = 5;\n this.dimension = 0;\n this.dimension = dimension;\n this.normalizationConstant = (dimension * this.sign45 - 0.5 * dimension) * 2;\n // offset determines how far images are placed from each other\n // at zero, images are separated only by the border\n // there is no restriction on how far they are apart in positive values, their actual\n // positioning is limited by maximum size imposed by Image renderer\n // a negative value can decrease upto the diameter of the image since a value less than the diameter\n // put the images past each other, and the use of such value is not reasonable request\n // users should change image positions in such case.\n this.offset = this.sign45 * (Math.max(offset, -dimension) - this.normalizationConstant);\n this.style = style ? style : \"\";\n }\n StackedImageConfigurator.prototype.moveImageRight = function (element) {\n element.style.marginLeft = this.offset + \"px\";\n };\n StackedImageConfigurator.prototype.moveImageUp = function (element) {\n element.style.marginBottom = this.offset + this.dimension + \"px\";\n };\n StackedImageConfigurator.prototype.moveImageDown = function (element) {\n element.style.marginTop = this.offset + this.dimension + \"px\";\n };\n StackedImageConfigurator.prototype.makeImageRound = function (element) {\n element.style.borderRadius = \"50%\";\n element.style.backgroundPosition = \"50% 50%\";\n element.style.backgroundRepeat = \"no-repeat\";\n };\n StackedImageConfigurator.prototype.applyBorder = function (element) {\n element.style.height = (this.dimension + this.border * 2) + \"px\";\n element.style.border = this.border + \"px\" + \" solid \" + this.style;\n };\n StackedImageConfigurator.prototype.configureImageForBottomLeft = function (element) {\n this.moveImageDown(element);\n this.makeImageRound(element);\n this.applyBorder(element);\n element.style.zIndex = \"2\";\n };\n StackedImageConfigurator.prototype.configureImageForTopRight = function (element) {\n this.moveImageUp(element);\n this.moveImageRight(element);\n this.makeImageRound(element);\n element.style.zIndex = \"1\";\n };\n // stacked layout is applied when there are two images in ImageSet,\n // first image in the ImageSet is put bottom left of ImageSet,\n // second image is placed top right diagonally to the first image at 45 angle\n // first image is placed over the second image should the overlap to occur.\n StackedImageConfigurator.prototype.configureImagesArrayAsStackedLayout = function (elements) {\n if (elements.length == 1) {\n if (elements[0].renderedImageElement) {\n this.makeImageRound(elements[0].renderedImageElement);\n }\n }\n else if (elements.length <= this.maxImageCounts) {\n if (elements[0].renderedImageElement && elements[1].renderedImageElement) {\n this.configureImageForBottomLeft(elements[0].renderedImageElement);\n this.configureImageForTopRight(elements[1].renderedImageElement);\n }\n }\n };\n StackedImageConfigurator.parseNumericPixelDimension = function (dimension) {\n if ((dimension === null || dimension === void 0 ? void 0 : dimension.substring(dimension.length - 2)) == 'px') {\n return parseInt(dimension.substring(0, dimension.length - 2));\n }\n return undefined;\n };\n return StackedImageConfigurator;\n}());\nvar ContentSource = /** @class */ (function (_super) {\n __extends(ContentSource, _super);\n //#endregion\n function ContentSource(url, mimeType) {\n var _this = _super.call(this) || this;\n _this.url = url;\n _this.mimeType = mimeType;\n return _this;\n }\n ContentSource.prototype.isValid = function () {\n return this.mimeType && this.url ? true : false;\n };\n //#region Schema\n ContentSource.mimeTypeProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_1, \"mimeType\");\n ContentSource.urlProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_1, \"url\");\n __decorate([\n (0, serialization_1.property)(ContentSource.mimeTypeProperty)\n ], ContentSource.prototype, \"mimeType\", void 0);\n __decorate([\n (0, serialization_1.property)(ContentSource.urlProperty)\n ], ContentSource.prototype, \"url\", void 0);\n return ContentSource;\n}(serialization_1.SerializableObject));\nexports.ContentSource = ContentSource;\nvar CaptionSource = /** @class */ (function (_super) {\n __extends(CaptionSource, _super);\n //#endregion\n function CaptionSource(url, mimeType, label) {\n var _this = _super.call(this, url, mimeType) || this;\n _this.label = label;\n return _this;\n }\n CaptionSource.prototype.getSchemaKey = function () {\n return \"CaptionSource\";\n };\n CaptionSource.prototype.render = function () {\n var result = undefined;\n if (this.isValid()) {\n result = document.createElement(\"track\");\n result.src = this.url;\n result.kind = \"captions\";\n result.label = this.label;\n }\n return result;\n };\n //#region Schema\n CaptionSource.labelProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_6, \"label\");\n __decorate([\n (0, serialization_1.property)(CaptionSource.labelProperty)\n ], CaptionSource.prototype, \"label\", void 0);\n return CaptionSource;\n}(ContentSource));\nexports.CaptionSource = CaptionSource;\nvar MediaSource = /** @class */ (function (_super) {\n __extends(MediaSource, _super);\n function MediaSource() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MediaSource.prototype.getSchemaKey = function () {\n return \"MediaSource\";\n };\n MediaSource.prototype.render = function () {\n var result = undefined;\n if (this.isValid()) {\n result = document.createElement(\"source\");\n result.src = this.url;\n result.type = this.mimeType;\n }\n return result;\n };\n return MediaSource;\n}(ContentSource));\nexports.MediaSource = MediaSource;\nvar MediaPlayer = /** @class */ (function () {\n function MediaPlayer() {\n }\n MediaPlayer.prototype.play = function () {\n // Do nothing in base implementation\n };\n Object.defineProperty(MediaPlayer.prototype, \"posterUrl\", {\n get: function () {\n return this._posterUrl;\n },\n set: function (value) {\n this._posterUrl = value;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MediaPlayer.prototype, \"selectedMediaType\", {\n get: function () {\n return undefined;\n },\n enumerable: false,\n configurable: true\n });\n return MediaPlayer;\n}());\nexports.MediaPlayer = MediaPlayer;\nvar HTML5MediaPlayer = /** @class */ (function (_super) {\n __extends(HTML5MediaPlayer, _super);\n function HTML5MediaPlayer(owner) {\n var _this = _super.call(this) || this;\n _this.owner = owner;\n _this._selectedSources = [];\n _this._captionSources = [];\n _this.processSources();\n return _this;\n }\n HTML5MediaPlayer.prototype.processSources = function () {\n var _a;\n this._selectedSources = [];\n this._captionSources = [];\n this._selectedMediaType = undefined;\n for (var _i = 0, _b = this.owner.sources; _i < _b.length; _i++) {\n var source = _b[_i];\n var mimeComponents = source.mimeType ? source.mimeType.split(\"/\") : [];\n if (mimeComponents.length === 2) {\n if (!this._selectedMediaType) {\n var index = HTML5MediaPlayer.supportedMediaTypes.indexOf(mimeComponents[0]);\n if (index >= 0) {\n this._selectedMediaType = HTML5MediaPlayer.supportedMediaTypes[index];\n }\n }\n if (mimeComponents[0] === this._selectedMediaType) {\n this._selectedSources.push(source);\n }\n }\n }\n (_a = this._captionSources).push.apply(_a, this.owner.captionSources);\n };\n HTML5MediaPlayer.prototype.canPlay = function () {\n return this._selectedSources.length > 0;\n };\n HTML5MediaPlayer.prototype.fetchVideoDetails = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2 /*return*/];\n });\n });\n };\n HTML5MediaPlayer.prototype.render = function () {\n if (this._selectedMediaType === \"video\") {\n this._mediaElement = document.createElement(\"video\");\n }\n else {\n this._mediaElement = document.createElement(\"audio\");\n }\n this._mediaElement.setAttribute(\"aria-label\", this.owner.altText ? this.owner.altText : strings_1.Strings.defaults.mediaPlayerAriaLabel());\n this._mediaElement.setAttribute(\"webkit-playsinline\", \"\");\n this._mediaElement.setAttribute(\"playsinline\", \"\");\n // We enable crossorigin for cases where the caption file has a different domain than\n // the video file. If the caption file lives in a different domain than the video file\n // and crossorigin is not set, then the caption file will fail to load.\n this._mediaElement.setAttribute(\"crossorigin\", \"\");\n this._mediaElement.autoplay = true;\n this._mediaElement.controls = true;\n if (Utils.isMobileOS()) {\n this._mediaElement.muted = true;\n }\n this._mediaElement.preload = \"none\";\n this._mediaElement.style.width = \"100%\";\n for (var _i = 0, _a = this.owner.sources; _i < _a.length; _i++) {\n var source = _a[_i];\n var renderedSource = source.render();\n Utils.appendChild(this._mediaElement, renderedSource);\n }\n for (var _b = 0, _c = this.owner.captionSources; _b < _c.length; _b++) {\n var captionSource = _c[_b];\n if (captionSource.mimeType == \"vtt\") {\n var renderedCaptionSource = captionSource.render();\n Utils.appendChild(this._mediaElement, renderedCaptionSource);\n }\n }\n return this._mediaElement;\n };\n HTML5MediaPlayer.prototype.play = function () {\n if (this._mediaElement) {\n this._mediaElement.play();\n }\n };\n Object.defineProperty(HTML5MediaPlayer.prototype, \"selectedMediaType\", {\n get: function () {\n return this._selectedMediaType;\n },\n enumerable: false,\n configurable: true\n });\n HTML5MediaPlayer.supportedMediaTypes = [\"audio\", \"video\"];\n return HTML5MediaPlayer;\n}(MediaPlayer));\nexports.HTML5MediaPlayer = HTML5MediaPlayer;\nvar CustomMediaPlayer = /** @class */ (function (_super) {\n __extends(CustomMediaPlayer, _super);\n function CustomMediaPlayer(matches) {\n return _super.call(this) || this;\n }\n return CustomMediaPlayer;\n}(MediaPlayer));\nexports.CustomMediaPlayer = CustomMediaPlayer;\nvar IFrameMediaMediaPlayer = /** @class */ (function (_super) {\n __extends(IFrameMediaMediaPlayer, _super);\n function IFrameMediaMediaPlayer(matches, iFrameTitle) {\n var _this = _super.call(this, matches) || this;\n _this.iFrameTitle = iFrameTitle;\n if (matches.length >= 2) {\n _this._videoId = matches[1];\n }\n return _this;\n }\n IFrameMediaMediaPlayer.prototype.canPlay = function () {\n return this._videoId !== undefined;\n };\n IFrameMediaMediaPlayer.prototype.render = function () {\n var container = document.createElement(\"div\");\n container.style.position = \"relative\";\n container.style.width = \"100%\";\n container.style.height = \"0\";\n container.style.paddingBottom = \"56.25%\";\n var iFrame = document.createElement(\"iframe\");\n iFrame.style.position = \"absolute\";\n iFrame.style.top = \"0\";\n iFrame.style.left = \"0\";\n iFrame.style.width = \"100%\";\n iFrame.style.height = \"100%\";\n iFrame.src = this.getEmbedVideoUrl();\n iFrame.frameBorder = \"0\";\n if (this.iFrameTitle) {\n iFrame.title = this.iFrameTitle;\n }\n iFrame.allow =\n \"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\";\n iFrame.allowFullscreen = true;\n container.appendChild(iFrame);\n return container;\n };\n Object.defineProperty(IFrameMediaMediaPlayer.prototype, \"videoId\", {\n get: function () {\n return this._videoId;\n },\n enumerable: false,\n configurable: true\n });\n return IFrameMediaMediaPlayer;\n}(CustomMediaPlayer));\nexports.IFrameMediaMediaPlayer = IFrameMediaMediaPlayer;\nvar VimeoPlayer = /** @class */ (function (_super) {\n __extends(VimeoPlayer, _super);\n function VimeoPlayer() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n VimeoPlayer.prototype.fetchVideoDetails = function () {\n return __awaiter(this, void 0, void 0, function () {\n var oEmbedUrl, response, json;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n oEmbedUrl = \"https://vimeo.com/api/oembed.json?url=\".concat(this.getEmbedVideoUrl());\n return [4 /*yield*/, fetch(oEmbedUrl)];\n case 1:\n response = _a.sent();\n if (!response.ok) return [3 /*break*/, 3];\n return [4 /*yield*/, response.json()];\n case 2:\n json = _a.sent();\n this.posterUrl = json[\"thumbnail_url\"];\n _a.label = 3;\n case 3: return [2 /*return*/];\n }\n });\n });\n };\n VimeoPlayer.prototype.getEmbedVideoUrl = function () {\n return \"https://player.vimeo.com/video/\".concat(this.videoId, \"?autoplay=1\");\n };\n return VimeoPlayer;\n}(IFrameMediaMediaPlayer));\nexports.VimeoPlayer = VimeoPlayer;\nvar DailymotionPlayer = /** @class */ (function (_super) {\n __extends(DailymotionPlayer, _super);\n function DailymotionPlayer() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n DailymotionPlayer.prototype.fetchVideoDetails = function () {\n return __awaiter(this, void 0, void 0, function () {\n var apiUrl, response, json;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n apiUrl = \"https://api.dailymotion.com/video/\".concat(this.videoId, \"?fields=thumbnail_720_url\");\n return [4 /*yield*/, fetch(apiUrl)];\n case 1:\n response = _a.sent();\n if (!response.ok) return [3 /*break*/, 3];\n return [4 /*yield*/, response.json()];\n case 2:\n json = _a.sent();\n this.posterUrl = json[\"thumbnail_720_url\"];\n _a.label = 3;\n case 3: return [2 /*return*/];\n }\n });\n });\n };\n DailymotionPlayer.prototype.getEmbedVideoUrl = function () {\n return \"https://www.dailymotion.com/embed/video/\".concat(this.videoId, \"?autoplay=1\");\n };\n return DailymotionPlayer;\n}(IFrameMediaMediaPlayer));\nexports.DailymotionPlayer = DailymotionPlayer;\nvar YouTubePlayer = /** @class */ (function (_super) {\n __extends(YouTubePlayer, _super);\n function YouTubePlayer(matches, iFrameTitle) {\n var _this = _super.call(this, matches, iFrameTitle) || this;\n _this.iFrameTitle = iFrameTitle;\n if (matches.length >= 3 && matches[2] !== undefined) {\n _this._startTimeIndex = parseInt(matches[2]);\n }\n return _this;\n }\n YouTubePlayer.prototype.fetchVideoDetails = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n this.posterUrl = this.videoId\n ? \"https://img.youtube.com/vi/\".concat(this.videoId, \"/maxresdefault.jpg\")\n : undefined;\n return [2 /*return*/];\n });\n });\n };\n YouTubePlayer.prototype.getEmbedVideoUrl = function () {\n var url = \"https://www.youtube.com/embed/\".concat(this.videoId, \"?autoplay=1\");\n if (this._startTimeIndex !== undefined) {\n url += \"&start=\".concat(this._startTimeIndex);\n }\n return url;\n };\n return YouTubePlayer;\n}(IFrameMediaMediaPlayer));\nexports.YouTubePlayer = YouTubePlayer;\nvar Media = /** @class */ (function (_super) {\n __extends(Media, _super);\n function Media() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.sources = [];\n _this.captionSources = [];\n return _this;\n }\n Media.prototype.createMediaPlayer = function () {\n for (var _i = 0, _a = Media.customMediaPlayers; _i < _a.length; _i++) {\n var provider = _a[_i];\n for (var _b = 0, _c = this.sources; _b < _c.length; _b++) {\n var source = _c[_b];\n if (source.url) {\n for (var _d = 0, _f = provider.urlPatterns; _d < _f.length; _d++) {\n var pattern = _f[_d];\n var matches = pattern.exec(source.url);\n if (matches !== null) {\n return provider.createMediaPlayer(matches);\n }\n }\n }\n }\n }\n return new HTML5MediaPlayer(this);\n };\n Media.prototype.handlePlayButtonInvoke = function (event) {\n if (this.hostConfig.media.allowInlinePlayback) {\n event.preventDefault();\n event.cancelBubble = true;\n if (this.renderedElement) {\n var mediaPlayerElement = this._mediaPlayer.render();\n clearElement(this.renderedElement);\n this.renderedElement.appendChild(mediaPlayerElement);\n this._mediaPlayer.play();\n mediaPlayerElement.focus();\n }\n }\n else {\n if (Media.onPlay) {\n event.preventDefault();\n event.cancelBubble = true;\n Media.onPlay(this);\n }\n }\n };\n Media.prototype.displayPoster = function () {\n return __awaiter(this, void 0, void 0, function () {\n var playButtonArrowWidth, playButtonArrowHeight, posterRootElement_1, posterUrl, posterImageElement_1, playButtonOuterElement, playButtonInnerElement, playButtonContainer;\n var _this = this;\n return __generator(this, function (_a) {\n if (this.renderedElement) {\n playButtonArrowWidth = 12;\n playButtonArrowHeight = 15;\n posterRootElement_1 = document.createElement(\"div\");\n posterRootElement_1.className = this.hostConfig.makeCssClassName(\"ac-media-poster\");\n posterRootElement_1.setAttribute(\"role\", \"contentinfo\");\n posterRootElement_1.setAttribute(\"aria-label\", this.altText ? this.altText : strings_1.Strings.defaults.mediaPlayerAriaLabel());\n posterRootElement_1.style.position = \"relative\";\n posterRootElement_1.style.display = \"flex\";\n posterUrl = this.poster ? this.poster : this._mediaPlayer.posterUrl;\n if (!posterUrl) {\n posterUrl = this.hostConfig.media.defaultPoster;\n }\n if (posterUrl) {\n posterImageElement_1 = document.createElement(\"img\");\n posterImageElement_1.style.width = \"100%\";\n posterImageElement_1.style.height = \"100%\";\n posterImageElement_1.setAttribute(\"role\", \"presentation\");\n posterImageElement_1.onerror = function (_e) {\n if (posterImageElement_1.parentNode) {\n posterImageElement_1.parentNode.removeChild(posterImageElement_1);\n }\n posterRootElement_1.classList.add(\"empty\");\n posterRootElement_1.style.minHeight = \"150px\";\n };\n posterImageElement_1.src = posterUrl;\n posterRootElement_1.appendChild(posterImageElement_1);\n }\n else {\n posterRootElement_1.classList.add(\"empty\");\n posterRootElement_1.style.minHeight = \"150px\";\n }\n if (this.hostConfig.supportsInteractivity && this._mediaPlayer.canPlay()) {\n playButtonOuterElement = document.createElement(\"div\");\n playButtonOuterElement.tabIndex = 0;\n playButtonOuterElement.setAttribute(\"role\", \"button\");\n playButtonOuterElement.setAttribute(\"aria-label\", strings_1.Strings.defaults.mediaPlayerPlayMedia());\n playButtonOuterElement.className =\n this.hostConfig.makeCssClassName(\"ac-media-playButton\");\n playButtonOuterElement.style.display = \"flex\";\n playButtonOuterElement.style.alignItems = \"center\";\n playButtonOuterElement.style.justifyContent = \"center\";\n playButtonOuterElement.onclick = function (e) {\n _this.handlePlayButtonInvoke(e);\n };\n playButtonOuterElement.onkeypress = function (e) {\n if (e.code === \"Enter\" || e.code === \"Space\") {\n // space or enter\n _this.handlePlayButtonInvoke(e);\n }\n };\n playButtonInnerElement = document.createElement(\"div\");\n playButtonInnerElement.className = this.hostConfig.makeCssClassName(\"ac-media-playButton-arrow\");\n playButtonInnerElement.style.width = playButtonArrowWidth + \"px\";\n playButtonInnerElement.style.height = playButtonArrowHeight + \"px\";\n playButtonInnerElement.style.borderTopWidth = playButtonArrowHeight / 2 + \"px\";\n playButtonInnerElement.style.borderBottomWidth = playButtonArrowHeight / 2 + \"px\";\n playButtonInnerElement.style.borderLeftWidth = playButtonArrowWidth + \"px\";\n playButtonInnerElement.style.borderRightWidth = \"0\";\n playButtonInnerElement.style.borderStyle = \"solid\";\n playButtonInnerElement.style.borderTopColor = \"transparent\";\n playButtonInnerElement.style.borderRightColor = \"transparent\";\n playButtonInnerElement.style.borderBottomColor = \"transparent\";\n playButtonInnerElement.style.transform =\n \"translate(\" + playButtonArrowWidth / 10 + \"px,0px)\";\n playButtonOuterElement.appendChild(playButtonInnerElement);\n playButtonContainer = document.createElement(\"div\");\n playButtonContainer.style.position = \"absolute\";\n playButtonContainer.style.left = \"0\";\n playButtonContainer.style.top = \"0\";\n playButtonContainer.style.width = \"100%\";\n playButtonContainer.style.height = \"100%\";\n playButtonContainer.style.display = \"flex\";\n playButtonContainer.style.justifyContent = \"center\";\n playButtonContainer.style.alignItems = \"center\";\n playButtonContainer.appendChild(playButtonOuterElement);\n posterRootElement_1.appendChild(playButtonContainer);\n }\n clearElement(this.renderedElement);\n this.renderedElement.appendChild(posterRootElement_1);\n }\n return [2 /*return*/];\n });\n });\n };\n Media.prototype.internalRender = function () {\n var element = document.createElement(\"div\");\n element.className = this.hostConfig.makeCssClassName(\"ac-media\");\n return element;\n };\n Media.prototype.render = function () {\n var _this = this;\n var result = _super.prototype.render.call(this);\n if (result) {\n this._mediaPlayer = this.createMediaPlayer();\n this._mediaPlayer.fetchVideoDetails().then(function () { return _this.displayPoster(); });\n }\n return result;\n };\n Media.prototype.releaseDOMResources = function () {\n _super.prototype.releaseDOMResources.call(this);\n this.displayPoster();\n };\n Media.prototype.getJsonTypeName = function () {\n return \"Media\";\n };\n Media.prototype.getResourceInformation = function () {\n var result = [];\n if (this._mediaPlayer) {\n var posterUrl = this.poster ? this.poster : this.hostConfig.media.defaultPoster;\n if (posterUrl) {\n result.push({ url: posterUrl, mimeType: \"image\" });\n }\n }\n for (var _i = 0, _a = this.sources; _i < _a.length; _i++) {\n var mediaSource = _a[_i];\n if (mediaSource.isValid()) {\n result.push({\n /* eslint-disable @typescript-eslint/no-unnecessary-type-assertion -- `mediaSource.url` is of type `string | undefined`, but is validated by `isValid()` call */\n url: mediaSource.url,\n mimeType: mediaSource.mimeType\n /* eslint-enable @typescript-eslint/no-unnecessary-type-assertion */\n });\n }\n }\n for (var _b = 0, _c = this.captionSources; _b < _c.length; _b++) {\n var captionSource = _c[_b];\n if (captionSource.isValid()) {\n result.push({\n /* eslint-disable @typescript-eslint/no-unnecessary-type-assertion -- `captionSource.url` is of type `string | undefined`, but is validated by `isValid()` call */\n url: captionSource.url,\n mimeType: captionSource.mimeType\n /* eslint-enable @typescript-eslint/no-unnecessary-type-assertion */\n });\n }\n }\n return result;\n };\n Object.defineProperty(Media.prototype, \"selectedMediaType\", {\n get: function () {\n return this._mediaPlayer.selectedMediaType;\n },\n enumerable: false,\n configurable: true\n });\n Media.customMediaPlayers = [\n {\n urlPatterns: [\n /^(?:https?:\\/\\/)?(?:www.)?youtube.com\\/watch\\?(?=.*v=([\\w\\d-_]+))(?=(?:.*t=(\\d+))?).*/gi,\n /^(?:https?:\\/\\/)?youtu.be\\/([\\w\\d-_]+)(?:\\?t=(\\d+))?/gi\n ],\n createMediaPlayer: function (matches) {\n return new YouTubePlayer(matches, strings_1.Strings.defaults.youTubeVideoPlayer());\n }\n },\n {\n urlPatterns: [/^(?:https?:\\/\\/)?vimeo.com\\/([\\w\\d-_]+).*/gi],\n createMediaPlayer: function (matches) {\n return new VimeoPlayer(matches, strings_1.Strings.defaults.vimeoVideoPlayer());\n }\n },\n {\n urlPatterns: [/^(?:https?:\\/\\/)?(?:www.)?dailymotion.com\\/video\\/([\\w\\d-_]+).*/gi],\n createMediaPlayer: function (matches) {\n return new DailymotionPlayer(matches, strings_1.Strings.defaults.dailymotionVideoPlayer());\n }\n }\n ];\n //#region Schema\n Media.sourcesProperty = new serialization_1.SerializableObjectCollectionProperty(serialization_1.Versions.v1_1, \"sources\", MediaSource);\n Media.captionSourcesProperty = new serialization_1.SerializableObjectCollectionProperty(serialization_1.Versions.v1_6, \"captionSources\", CaptionSource);\n Media.posterProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_1, \"poster\");\n Media.altTextProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_1, \"altText\");\n __decorate([\n (0, serialization_1.property)(Media.sourcesProperty)\n ], Media.prototype, \"sources\", void 0);\n __decorate([\n (0, serialization_1.property)(Media.captionSourcesProperty)\n ], Media.prototype, \"captionSources\", void 0);\n __decorate([\n (0, serialization_1.property)(Media.posterProperty)\n ], Media.prototype, \"poster\", void 0);\n __decorate([\n (0, serialization_1.property)(Media.altTextProperty)\n ], Media.prototype, \"altText\", void 0);\n return Media;\n}(CardElement));\nexports.Media = Media;\nvar InputEventType;\n(function (InputEventType) {\n InputEventType[InputEventType[\"InitialRender\"] = 0] = \"InitialRender\";\n InputEventType[InputEventType[\"MouseEnterOnCard\"] = 1] = \"MouseEnterOnCard\";\n InputEventType[InputEventType[\"MouseLeaveOnCard\"] = 2] = \"MouseLeaveOnCard\";\n InputEventType[InputEventType[\"FocusLeave\"] = 3] = \"FocusLeave\";\n})(InputEventType || (InputEventType = {}));\nvar Input = /** @class */ (function (_super) {\n __extends(Input, _super);\n function Input() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.inputStyle = Enums.InputStyle.Default;\n return _this;\n }\n Input.prototype.getAllLabelIds = function () {\n var labelIds = [];\n if (this.labelledBy) {\n labelIds.push(this.labelledBy);\n }\n if (this._renderedLabelElement) {\n labelIds.push(this._renderedLabelElement.id);\n }\n if (this._renderedErrorMessageElement) {\n labelIds.push(this._renderedErrorMessageElement.id);\n }\n return labelIds;\n };\n Input.prototype.updateInputControlAriaLabelledBy = function () {\n if (this._renderedInputControlElement) {\n var labelIds = this.getAllLabelIds();\n if (labelIds.length > 0) {\n this._renderedInputControlElement.setAttribute(\"aria-labelledby\", labelIds.join(\" \"));\n }\n else {\n this._renderedInputControlElement.removeAttribute(\"aria-labelledby\");\n }\n }\n };\n Object.defineProperty(Input.prototype, \"isNullable\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Input.prototype, \"renderedInputControlElement\", {\n get: function () {\n return this._renderedInputControlElement;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Input.prototype, \"inputControlContainerElement\", {\n get: function () {\n return this._inputControlContainerElement;\n },\n enumerable: false,\n configurable: true\n });\n Input.prototype.overrideInternalRender = function () {\n var _this = this;\n var hostConfig = this.hostConfig;\n this._outerContainerElement = document.createElement(\"div\");\n this._outerContainerElement.style.display = \"flex\";\n if (this.labelPosition === Enums.InputLabelPosition.Inline) {\n this._outerContainerElement.style.flexDirection = \"row\";\n }\n else {\n this._outerContainerElement.style.flexDirection = \"column\";\n }\n var renderedInputControlId = Utils.generateUniqueId();\n if (this.label) {\n var labelRichTextBlock = new RichTextBlock();\n labelRichTextBlock.setParent(this);\n labelRichTextBlock.forElementId = renderedInputControlId;\n var labelInline = new TextRun(this.label);\n labelRichTextBlock.addInline(labelInline);\n if (this.isRequired) {\n labelInline.init(hostConfig.inputs.label.requiredInputs);\n var isRequiredCueInline = new TextRun(hostConfig.inputs.label.requiredInputs.suffix);\n isRequiredCueInline.color = hostConfig.inputs.label.requiredInputs.suffixColor;\n isRequiredCueInline.ariaHidden = true;\n labelRichTextBlock.addInline(isRequiredCueInline);\n }\n else {\n labelInline.init(hostConfig.inputs.label.optionalInputs);\n }\n this._renderedLabelElement = labelRichTextBlock.render();\n if (this._renderedLabelElement) {\n this._renderedLabelElement.id = Utils.generateUniqueId();\n if (this.labelPosition === Enums.InputLabelPosition.Inline) {\n // For inline label position: label should be in center of the div and no extra spacing needed\n this._renderedLabelElement.style.alignSelf = \"center\";\n }\n else {\n this._renderedLabelElement.style.marginBottom =\n hostConfig.getEffectiveSpacing(hostConfig.inputs.label.inputSpacing) + \"px\";\n }\n this._outerContainerElement.appendChild(this._renderedLabelElement);\n }\n }\n this._inputControlContainerElement = document.createElement(\"div\");\n this._inputControlContainerElement.className =\n hostConfig.makeCssClassName(\"ac-input-container\");\n this._inputControlContainerElement.style.display = \"flex\";\n if (this.height === \"stretch\") {\n this._inputControlContainerElement.style.alignItems = \"stretch\";\n this._inputControlContainerElement.style.flex = \"1 1 auto\";\n }\n this._renderedInputControlElement = this.internalRender();\n if (this._renderedInputControlElement) {\n this._renderedInputControlElement.id = renderedInputControlId;\n this._renderedInputControlElement.style.minWidth = \"0px\";\n if (this.isNullable && this.isRequired) {\n this._renderedInputControlElement.setAttribute(\"aria-required\", \"true\");\n this._renderedInputControlElement.classList.add(hostConfig.makeCssClassName(\"ac-input-required\"));\n }\n this._inputControlContainerElement.appendChild(this._renderedInputControlElement);\n this._outerContainerElement.appendChild(this._inputControlContainerElement);\n if (this._renderedLabelElement && this.labelPosition === Enums.InputLabelPosition.Inline) {\n if (!this.labelWidth) {\n var defaultLabelWidth = hostConfig.inputs.label.width;\n this._renderedLabelElement.style.width = defaultLabelWidth.toString() + \"%\";\n this._inputControlContainerElement.style.width = (100 - defaultLabelWidth) + \"%\";\n }\n else if (this.labelWidth.unit == Enums.SizeUnit.Weight) {\n var labelWidthInPercent = this.labelWidth.physicalSize;\n this._renderedLabelElement.style.width = labelWidthInPercent.toString() + \"%\";\n this._inputControlContainerElement.style.width = (100 - labelWidthInPercent).toString() + \"%\";\n }\n else if (this.labelWidth.unit == Enums.SizeUnit.Pixel) {\n var labelWidthInPixel = this.labelWidth.physicalSize;\n this._renderedLabelElement.style.width = labelWidthInPixel.toString() + \"px\";\n }\n }\n this.updateVisualState(InputEventType.InitialRender);\n if (this._renderedInputControlElement) {\n this._renderedInputControlElement.onblur = function (ev) {\n _this.updateVisualState(InputEventType.FocusLeave);\n };\n }\n this.updateInputControlAriaLabelledBy();\n return this._outerContainerElement;\n }\n this.resetDirtyState();\n return undefined;\n };\n Input.prototype.valueChanged = function () {\n this.getRootElement().updateActionsEnabledState();\n if (this.isValid()) {\n this.resetValidationFailureCue();\n }\n if (this.onValueChanged) {\n this.onValueChanged(this);\n }\n raiseInputValueChangedEvent(this);\n };\n Input.prototype.resetValidationFailureCue = function () {\n if (this.renderedInputControlElement) {\n this.renderedInputControlElement.classList.remove(this.hostConfig.makeCssClassName(\"ac-input-validation-failed\"));\n this.updateInputControlAriaLabelledBy();\n if (this._renderedErrorMessageElement) {\n this._outerContainerElement.removeChild(this._renderedErrorMessageElement);\n this._renderedErrorMessageElement = undefined;\n }\n }\n };\n Input.prototype.showValidationErrorMessage = function () {\n if (this.renderedElement &&\n this.errorMessage &&\n shared_1.GlobalSettings.displayInputValidationErrors) {\n var errorMessageTextBlock = new TextBlock();\n errorMessageTextBlock.setParent(this);\n errorMessageTextBlock.text = this.errorMessage;\n errorMessageTextBlock.wrap = true;\n errorMessageTextBlock.init(this.hostConfig.inputs.errorMessage);\n this._renderedErrorMessageElement = errorMessageTextBlock.render();\n if (this._renderedErrorMessageElement) {\n this._renderedErrorMessageElement.id = Utils.generateUniqueId();\n this._outerContainerElement.appendChild(this._renderedErrorMessageElement);\n this.updateInputControlAriaLabelledBy();\n }\n }\n };\n Object.defineProperty(Input.prototype, \"allowRevealOnHoverStyle\", {\n get: function () {\n return this.hostConfig.inputs && this.hostConfig.inputs.allowRevealOnHoverStyle;\n },\n enumerable: false,\n configurable: true\n });\n Input.prototype.shouldHideInputAdornersForRevealOnHover = function (input, eventType) {\n // show/hide input adorners (date picker, time picker, select dropdown picker) with inputStyle RevealOnHover\n // 1. intial render of card: hide input adorners\n // 2. mouse hover on the card: show input adorners\n // 3. mouse hover outside the card: hide input adorners unless input is still in focus state\n // 4. input loses focus: hide the input adorners unless mouse is still hovering on the card\n // check if input still has the focus\n var isInputInFocus = input === document.activeElement;\n // check if mouse is still on the card\n var inputHoverClassName = this.hostConfig.makeCssClassName(\"ac-inputStyle-revealOnHover-onhover\");\n var isMouseOverCard = input.classList.contains(inputHoverClassName);\n var hideInputAdorners = (eventType === InputEventType.InitialRender) ||\n (eventType === InputEventType.FocusLeave && !isMouseOverCard) ||\n (eventType === InputEventType.MouseLeaveOnCard && !isInputInFocus);\n return hideInputAdorners;\n };\n Input.prototype.updateVisualState = function (eventType) {\n if (!this.allowRevealOnHoverStyle ||\n !this._renderedInputControlElement ||\n this.inputStyle !== Enums.InputStyle.RevealOnHover) {\n return;\n }\n if (eventType === InputEventType.InitialRender) {\n // on initial render, we will show input fields as read only view\n this._renderedInputControlElement.classList.add(this.hostConfig.makeCssClassName(\"ac-inputStyle-revealOnHover-onrender\"));\n }\n else if (eventType === InputEventType.MouseEnterOnCard) {\n // on hover on the card, we will reveal the inputs by showing borders etc\n // ac-inputStyle-revealOnHover-onhover class is also used to identify if mouse is hovering on the card\n this._renderedInputControlElement.classList.add(this.hostConfig.makeCssClassName(\"ac-inputStyle-revealOnHover-onhover\"));\n }\n else if (eventType === InputEventType.MouseLeaveOnCard) {\n this._renderedInputControlElement.classList.remove(this.hostConfig.makeCssClassName(\"ac-inputStyle-revealOnHover-onhover\"));\n }\n };\n Input.prototype.focus = function () {\n if (this._renderedInputControlElement) {\n this._renderedInputControlElement.focus();\n }\n };\n Input.prototype.isValid = function () {\n return true;\n };\n Input.prototype.isDirty = function () {\n return this.value !== this._oldValue;\n };\n Input.prototype.resetDirtyState = function () {\n this._oldValue = this.value;\n };\n Input.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n if (!this.id) {\n context.addFailure(this, Enums.ValidationEvent.PropertyCantBeNull, strings_1.Strings.errors.inputsMustHaveUniqueId());\n }\n if (this.isRequired) {\n if (!this.label) {\n context.addFailure(this, Enums.ValidationEvent.RequiredInputsShouldHaveLabel, \"Required inputs should have a label\");\n }\n if (!this.errorMessage) {\n context.addFailure(this, Enums.ValidationEvent.RequiredInputsShouldHaveErrorMessage, \"Required inputs should have an error message\");\n }\n }\n };\n Input.prototype.validateValue = function () {\n this.resetValidationFailureCue();\n var result = this.isRequired ? this.isSet() && this.isValid() : this.isValid();\n if (!result && this.renderedInputControlElement) {\n this.renderedInputControlElement.classList.add(this.hostConfig.makeCssClassName(\"ac-input-validation-failed\"));\n this.showValidationErrorMessage();\n }\n return result;\n };\n Input.prototype.getAllInputs = function (processActions) {\n if (processActions === void 0) { processActions = true; }\n return [this];\n };\n Input.prototype.render = function () {\n var result = _super.prototype.render.call(this);\n this.resetDirtyState();\n return result;\n };\n Object.defineProperty(Input.prototype, \"isInteractive\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n //#region Schema\n Input.labelProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_3, \"label\", true);\n Input.isRequiredProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_3, \"isRequired\", false);\n Input.errorMessageProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_3, \"errorMessage\", true);\n Input.inputStyleProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_6, \"inputStyle\", Enums.InputStyle, Enums.InputStyle.Default, [\n { value: Enums.InputStyle.RevealOnHover },\n { value: Enums.InputStyle.Default }\n ]);\n Input.labelWidthProperty = new serialization_1.CustomProperty(serialization_1.Versions.v1_6, \"labelWidth\", function (sender, prop, source, context) {\n var result = prop.defaultValue;\n var value = source[prop.name];\n var invalidLabelWidth = false;\n if (typeof value === \"number\" && !isNaN(value)) {\n result = new shared_1.SizeAndUnit(value, Enums.SizeUnit.Weight);\n if (result.physicalSize < 0 || result.physicalSize > 100) {\n invalidLabelWidth = true;\n }\n }\n else if (typeof value === \"string\") {\n try {\n result = shared_1.SizeAndUnit.parse(value);\n }\n catch (e) {\n invalidLabelWidth = true;\n }\n }\n else {\n invalidLabelWidth = true;\n }\n if (invalidLabelWidth) {\n context.logParseEvent(sender, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidInputLabelWidth());\n result = undefined;\n }\n return result;\n }, function (sender, property, target, value, context) {\n if (value instanceof shared_1.SizeAndUnit) {\n if (value.unit === Enums.SizeUnit.Pixel) {\n context.serializeValue(target, \"labelWidth\", value.physicalSize + \"px\");\n }\n else {\n context.serializeNumber(target, \"labelWidth\", value.physicalSize);\n }\n }\n }, undefined);\n Input.labelPositionProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_6, \"labelPosition\", Enums.InputLabelPosition, Enums.InputLabelPosition.Above, [\n { value: Enums.InputLabelPosition.Inline },\n { value: Enums.InputLabelPosition.Above }\n ]);\n __decorate([\n (0, serialization_1.property)(Input.labelProperty)\n ], Input.prototype, \"label\", void 0);\n __decorate([\n (0, serialization_1.property)(Input.isRequiredProperty)\n ], Input.prototype, \"isRequired\", void 0);\n __decorate([\n (0, serialization_1.property)(Input.errorMessageProperty)\n ], Input.prototype, \"errorMessage\", void 0);\n __decorate([\n (0, serialization_1.property)(Input.inputStyleProperty)\n ], Input.prototype, \"inputStyle\", void 0);\n __decorate([\n (0, serialization_1.property)(Input.labelWidthProperty)\n ], Input.prototype, \"labelWidth\", void 0);\n __decorate([\n (0, serialization_1.property)(Input.labelPositionProperty)\n ], Input.prototype, \"labelPosition\", void 0);\n return Input;\n}(CardElement));\nexports.Input = Input;\nvar TextInput = /** @class */ (function (_super) {\n __extends(TextInput, _super);\n function TextInput() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.isMultiline = false;\n _this.style = Enums.InputTextStyle.Text;\n return _this;\n }\n //#endregion\n TextInput.prototype.setupInput = function (input) {\n var _this = this;\n input.style.flex = \"1 1 auto\";\n input.tabIndex = this.isDesignMode() ? -1 : 0;\n if (this.placeholder) {\n input.placeholder = this.placeholder;\n input.setAttribute(\"aria-label\", this.placeholder);\n }\n if (this.defaultValue) {\n input.value = this.defaultValue;\n }\n if (this.maxLength && this.maxLength > 0) {\n input.maxLength = this.maxLength;\n }\n input.oninput = function () {\n _this.valueChanged();\n };\n input.onkeypress = function (e) {\n // Ctrl+Enter pressed\n if (e.ctrlKey &&\n e.code === \"Enter\" &&\n _this.inlineAction &&\n _this.inlineAction.isEffectivelyEnabled()) {\n _this.inlineAction.execute();\n }\n };\n };\n TextInput.prototype.internalRender = function () {\n var result;\n if (this.isMultiline && this.style !== Enums.InputTextStyle.Password) {\n result = document.createElement(\"textarea\");\n result.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-textInput\", \"ac-multiline\");\n if (this.height === \"stretch\") {\n result.style.height = \"initial\";\n }\n }\n else {\n result = document.createElement(\"input\");\n result.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-textInput\");\n result.type = Enums.InputTextStyle[this.style].toLowerCase();\n }\n this.setupInput(result);\n return result;\n };\n TextInput.prototype.overrideInternalRender = function () {\n var _this = this;\n var renderedInputControl = _super.prototype.overrideInternalRender.call(this);\n if (this.inlineAction) {\n var button_1 = document.createElement(\"button\");\n button_1.className = this.hostConfig.makeCssClassName(this.inlineAction.isEffectivelyEnabled()\n ? \"ac-inlineActionButton\"\n : \"ac-inlineActionButton-disabled\");\n button_1.onclick = function (e) {\n if (_this.inlineAction && _this.inlineAction.isEffectivelyEnabled()) {\n e.preventDefault();\n e.cancelBubble = true;\n _this.inlineAction.execute();\n }\n };\n if (this.inlineAction.iconUrl) {\n button_1.classList.add(\"iconOnly\");\n var icon_1 = document.createElement(\"img\");\n icon_1.style.height = \"100%\";\n icon_1.setAttribute(\"role\", \"presentation\");\n // The below trick is necessary as a workaround in Chrome where the icon is initially displayed\n // at its native size then resized to 100% of the button's height. This cfreates an unpleasant\n // flicker. On top of that, Chrome's flex implementation fails to prperly re-layout the button\n // after the image has loaded and been gicven its final size. The below trick also fixes that.\n icon_1.style.display = \"none\";\n icon_1.onload = function () {\n icon_1.style.removeProperty(\"display\");\n };\n icon_1.onerror = function () {\n button_1.removeChild(icon_1);\n button_1.classList.remove(\"iconOnly\");\n button_1.classList.add(\"textOnly\");\n button_1.textContent =\n _this.inlineAction && _this.inlineAction.title\n ? _this.inlineAction.title\n : strings_1.Strings.defaults.inlineActionTitle();\n };\n icon_1.src = this.inlineAction.iconUrl;\n button_1.appendChild(icon_1);\n button_1.title = this.inlineAction.title\n ? this.inlineAction.title\n : strings_1.Strings.defaults.inlineActionTitle();\n }\n else {\n button_1.classList.add(\"textOnly\");\n button_1.textContent = this.inlineAction.title\n ? this.inlineAction.title\n : strings_1.Strings.defaults.inlineActionTitle();\n }\n this.inlineAction.setupElementForAccessibility(button_1, true);\n button_1.style.marginLeft = \"8px\";\n this.inputControlContainerElement.appendChild(button_1);\n }\n return renderedInputControl;\n };\n TextInput.prototype.updateVisualState = function (eventType) {\n if (!this.allowRevealOnHoverStyle) {\n return;\n }\n if (!(this.inlineAction || this.isMultiline)) {\n _super.prototype.updateVisualState.call(this, eventType);\n }\n };\n TextInput.prototype.getJsonTypeName = function () {\n return \"Input.Text\";\n };\n TextInput.prototype.getAllActions = function () {\n var result = _super.prototype.getAllActions.call(this);\n if (this.inlineAction) {\n result.push(this.inlineAction);\n }\n return result;\n };\n TextInput.prototype.getActionById = function (id) {\n var result = _super.prototype.getActionById.call(this, id);\n if (!result && this.inlineAction) {\n result = this.inlineAction.getActionById(id);\n }\n return result;\n };\n TextInput.prototype.isSet = function () {\n return this.value ? true : false;\n };\n TextInput.prototype.isValid = function () {\n if (!this.value) {\n return true;\n }\n if (this.regex) {\n return new RegExp(this.regex, \"g\").test(this.value);\n }\n return true;\n };\n Object.defineProperty(TextInput.prototype, \"value\", {\n get: function () {\n if (this.renderedInputControlElement) {\n if (this.isMultiline) {\n return this.renderedInputControlElement.value;\n }\n else {\n return this.renderedInputControlElement.value;\n }\n }\n else {\n return undefined;\n }\n },\n enumerable: false,\n configurable: true\n });\n TextInput.valueProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"value\");\n TextInput.maxLengthProperty = new serialization_1.NumProperty(serialization_1.Versions.v1_0, \"maxLength\");\n TextInput.isMultilineProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_0, \"isMultiline\", false);\n TextInput.placeholderProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"placeholder\");\n TextInput.styleProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_0, \"style\", Enums.InputTextStyle, Enums.InputTextStyle.Text, [\n { value: Enums.InputTextStyle.Text },\n { value: Enums.InputTextStyle.Tel },\n { value: Enums.InputTextStyle.Url },\n { value: Enums.InputTextStyle.Email },\n { value: Enums.InputTextStyle.Password, targetVersion: serialization_1.Versions.v1_5 }\n ]);\n TextInput.inlineActionProperty = new ActionProperty(serialization_1.Versions.v1_0, \"inlineAction\", [\n \"Action.ShowCard\"\n ]);\n TextInput.regexProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_3, \"regex\", true);\n __decorate([\n (0, serialization_1.property)(TextInput.valueProperty)\n ], TextInput.prototype, \"defaultValue\", void 0);\n __decorate([\n (0, serialization_1.property)(TextInput.maxLengthProperty)\n ], TextInput.prototype, \"maxLength\", void 0);\n __decorate([\n (0, serialization_1.property)(TextInput.isMultilineProperty)\n ], TextInput.prototype, \"isMultiline\", void 0);\n __decorate([\n (0, serialization_1.property)(TextInput.placeholderProperty)\n ], TextInput.prototype, \"placeholder\", void 0);\n __decorate([\n (0, serialization_1.property)(TextInput.styleProperty)\n ], TextInput.prototype, \"style\", void 0);\n __decorate([\n (0, serialization_1.property)(TextInput.inlineActionProperty)\n ], TextInput.prototype, \"inlineAction\", void 0);\n __decorate([\n (0, serialization_1.property)(TextInput.regexProperty)\n ], TextInput.prototype, \"regex\", void 0);\n return TextInput;\n}(Input));\nexports.TextInput = TextInput;\nvar ToggleInput = /** @class */ (function (_super) {\n __extends(ToggleInput, _super);\n function ToggleInput() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.valueOn = \"true\";\n _this.valueOff = \"false\";\n _this.wrap = false;\n return _this;\n }\n ToggleInput.prototype.updateInputControlAriaLabelledBy = function () {\n if (this._checkboxInputElement) {\n var joinedLabelIds = this.getAllLabelIds().join(\" \");\n if (this._checkboxInputLabelElement && this._checkboxInputLabelElement.id) {\n joinedLabelIds += \" \" + this._checkboxInputLabelElement.id;\n }\n if (joinedLabelIds) {\n this._checkboxInputElement.setAttribute(\"aria-labelledby\", joinedLabelIds);\n }\n else {\n this._checkboxInputElement.removeAttribute(\"aria-labelledby\");\n }\n }\n };\n ToggleInput.prototype.internalRender = function () {\n var _this = this;\n var element = document.createElement(\"div\");\n element.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-toggleInput\");\n element.style.width = \"100%\";\n element.style.display = \"flex\";\n element.style.alignItems = \"center\";\n this._checkboxInputElement = document.createElement(\"input\");\n this._checkboxInputElement.id = Utils.generateUniqueId();\n this._checkboxInputElement.type = \"checkbox\";\n this._checkboxInputElement.style.display = \"inline-block\";\n this._checkboxInputElement.style.verticalAlign = \"middle\";\n this._checkboxInputElement.style.margin = \"0\";\n this._checkboxInputElement.style.flex = \"0 0 auto\";\n if (this.title) {\n this._checkboxInputElement.setAttribute(\"aria-label\", this.title);\n }\n if (this.isRequired) {\n this._checkboxInputElement.setAttribute(\"aria-required\", \"true\");\n }\n this._checkboxInputElement.tabIndex = this.isDesignMode() ? -1 : 0;\n if (this.defaultValue === this.valueOn) {\n this._checkboxInputElement.checked = true;\n }\n this._oldCheckboxValue = this._checkboxInputElement.checked;\n this._checkboxInputElement.onchange = function () {\n _this.valueChanged();\n };\n Utils.appendChild(element, this._checkboxInputElement);\n if (this.title || this.isDesignMode()) {\n var label = new TextBlock();\n label.setParent(this);\n label.forElementId = this._checkboxInputElement.id;\n label.hostConfig = this.hostConfig;\n label.text = !this.title ? this.getJsonTypeName() : this.title;\n label.useMarkdown = shared_1.GlobalSettings.useMarkdownInRadioButtonAndCheckbox;\n label.wrap = this.wrap;\n this._checkboxInputLabelElement = label.render();\n if (this._checkboxInputLabelElement) {\n this._checkboxInputLabelElement.id = Utils.generateUniqueId();\n this._checkboxInputLabelElement.style.display = \"inline-block\";\n this._checkboxInputLabelElement.style.flex = \"1 1 auto\";\n this._checkboxInputLabelElement.style.marginLeft = \"6px\";\n this._checkboxInputLabelElement.style.verticalAlign = \"middle\";\n var spacerElement = document.createElement(\"div\");\n spacerElement.style.width = \"6px\";\n Utils.appendChild(element, spacerElement);\n Utils.appendChild(element, this._checkboxInputLabelElement);\n }\n }\n return element;\n };\n Object.defineProperty(ToggleInput.prototype, \"isNullable\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n ToggleInput.prototype.updateVisualState = function (eventType) {\n };\n ToggleInput.prototype.getJsonTypeName = function () {\n return \"Input.Toggle\";\n };\n ToggleInput.prototype.focus = function () {\n if (this._checkboxInputElement) {\n this._checkboxInputElement.focus();\n }\n };\n ToggleInput.prototype.isSet = function () {\n if (this.isRequired) {\n return this.value === this.valueOn;\n }\n return this.value ? true : false;\n };\n ToggleInput.prototype.isDirty = function () {\n return this._checkboxInputElement\n ? this._checkboxInputElement.checked !== this._oldCheckboxValue\n : false;\n };\n Object.defineProperty(ToggleInput.prototype, \"value\", {\n get: function () {\n if (this._checkboxInputElement) {\n return this._checkboxInputElement.checked ? this.valueOn : this.valueOff;\n }\n else {\n return undefined;\n }\n },\n enumerable: false,\n configurable: true\n });\n ToggleInput.valueProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"value\");\n ToggleInput.titleProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"title\");\n ToggleInput.valueOnProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"valueOn\", true, undefined, \"true\", function (sender) {\n return \"true\";\n });\n ToggleInput.valueOffProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"valueOff\", true, undefined, \"false\", function (sender) {\n return \"false\";\n });\n ToggleInput.wrapProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_2, \"wrap\", false);\n __decorate([\n (0, serialization_1.property)(ToggleInput.valueProperty)\n ], ToggleInput.prototype, \"defaultValue\", void 0);\n __decorate([\n (0, serialization_1.property)(ToggleInput.titleProperty)\n ], ToggleInput.prototype, \"title\", void 0);\n __decorate([\n (0, serialization_1.property)(ToggleInput.valueOnProperty)\n ], ToggleInput.prototype, \"valueOn\", void 0);\n __decorate([\n (0, serialization_1.property)(ToggleInput.valueOffProperty)\n ], ToggleInput.prototype, \"valueOff\", void 0);\n __decorate([\n (0, serialization_1.property)(ToggleInput.wrapProperty)\n ], ToggleInput.prototype, \"wrap\", void 0);\n return ToggleInput;\n}(Input));\nexports.ToggleInput = ToggleInput;\nvar Choice = /** @class */ (function (_super) {\n __extends(Choice, _super);\n function Choice(title, value) {\n var _this = _super.call(this) || this;\n _this.title = title;\n _this.value = value;\n return _this;\n }\n //#endregion\n Choice.prototype.getSchemaKey = function () {\n return \"Choice\";\n };\n //#region Schema\n Choice.titleProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"title\");\n Choice.valueProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"value\");\n __decorate([\n (0, serialization_1.property)(Choice.titleProperty)\n ], Choice.prototype, \"title\", void 0);\n __decorate([\n (0, serialization_1.property)(Choice.valueProperty)\n ], Choice.prototype, \"value\", void 0);\n return Choice;\n}(serialization_1.SerializableObject));\nexports.Choice = Choice;\n/**\n * DataQuery class is declared later in the file and derives from subsequent base classes\n * Hence, it cannot be used in ChoiceSetInput.\n * Refactor is needed to separate elements and actions in separate files.\n */\nvar ChoiceSetInputDataQuery = /** @class */ (function (_super) {\n __extends(ChoiceSetInputDataQuery, _super);\n function ChoiceSetInputDataQuery() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n //#endregion\n ChoiceSetInputDataQuery.prototype.getSchemaKey = function () {\n return \"choices.data\";\n };\n //#region Schema\n ChoiceSetInputDataQuery.typeProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_6, \"type\", true, new RegExp(\"^Data.Query$\"));\n ChoiceSetInputDataQuery.datasetProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_6, \"dataset\");\n ChoiceSetInputDataQuery.countProperty = new serialization_1.NumProperty(serialization_1.Versions.v1_6, \"count\");\n ChoiceSetInputDataQuery.skipProperty = new serialization_1.NumProperty(serialization_1.Versions.v1_6, \"skip\");\n __decorate([\n (0, serialization_1.property)(ChoiceSetInputDataQuery.typeProperty)\n ], ChoiceSetInputDataQuery.prototype, \"type\", void 0);\n __decorate([\n (0, serialization_1.property)(ChoiceSetInputDataQuery.datasetProperty)\n ], ChoiceSetInputDataQuery.prototype, \"dataset\", void 0);\n __decorate([\n (0, serialization_1.property)(ChoiceSetInputDataQuery.countProperty)\n ], ChoiceSetInputDataQuery.prototype, \"count\", void 0);\n __decorate([\n (0, serialization_1.property)(ChoiceSetInputDataQuery.skipProperty)\n ], ChoiceSetInputDataQuery.prototype, \"skip\", void 0);\n return ChoiceSetInputDataQuery;\n}(serialization_1.SerializableObject));\nexports.ChoiceSetInputDataQuery = ChoiceSetInputDataQuery;\nvar ChoiceSetInput = /** @class */ (function (_super) {\n __extends(ChoiceSetInput, _super);\n function ChoiceSetInput() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.isMultiSelect = false;\n _this.wrap = false;\n _this.choices = [];\n return _this;\n }\n Object.defineProperty(ChoiceSetInput.prototype, \"isCompact\", {\n get: function () {\n return !this.style || this.style === \"compact\";\n },\n set: function (value) {\n this.style = value ? undefined : \"expanded\";\n },\n enumerable: false,\n configurable: true\n });\n ChoiceSetInput.getUniqueCategoryName = function () {\n var uniqueCategoryName = \"__ac-category\" + ChoiceSetInput._uniqueCategoryCounter;\n ChoiceSetInput._uniqueCategoryCounter++;\n return uniqueCategoryName;\n };\n ChoiceSetInput.prototype.isDynamicTypeahead = function () {\n return (!!this.choicesData &&\n !!this.choicesData.dataset &&\n this.choicesData.type === \"Data.Query\");\n };\n ChoiceSetInput.prototype.getFilterForDynamicSearch = function () {\n var _a, _b;\n return (_b = (_a = this._filteredChoiceSet) === null || _a === void 0 ? void 0 : _a.textInput) === null || _b === void 0 ? void 0 : _b.value;\n };\n ChoiceSetInput.prototype.renderChoices = function (fetchedChoices) {\n var _a;\n (_a = this._filteredChoiceSet) === null || _a === void 0 ? void 0 : _a.processResponse(fetchedChoices);\n };\n ChoiceSetInput.prototype.showLoadingIndicator = function () {\n var _a;\n (_a = this._filteredChoiceSet) === null || _a === void 0 ? void 0 : _a.showLoadingIndicator();\n };\n ChoiceSetInput.prototype.removeLoadingIndicator = function () {\n var _a;\n (_a = this._filteredChoiceSet) === null || _a === void 0 ? void 0 : _a.removeLoadingIndicator();\n };\n ChoiceSetInput.prototype.showErrorIndicator = function (error) {\n var _a;\n (_a = this._filteredChoiceSet) === null || _a === void 0 ? void 0 : _a.showErrorIndicator(error);\n };\n ChoiceSetInput.prototype.createPlaceholderOptionWhenValueDoesNotExist = function () {\n if (!this.value) {\n var placeholderOption = document.createElement(\"option\");\n placeholderOption.selected = true;\n placeholderOption.disabled = true;\n placeholderOption.hidden = true;\n placeholderOption.value = \"\";\n if (this.placeholder) {\n placeholderOption.text = this.placeholder;\n }\n return placeholderOption;\n }\n return undefined;\n };\n // Make sure `aria-current` is applied to the currently-selected item\n ChoiceSetInput.prototype.internalApplyAriaCurrent = function () {\n if (this._selectElement) {\n var options = this._selectElement.options;\n if (options) {\n for (var _i = 0, _a = Array.from(options); _i < _a.length; _i++) {\n var option = _a[_i];\n if (option.selected) {\n option.setAttribute(\"aria-current\", \"true\");\n }\n else {\n option.removeAttribute(\"aria-current\");\n }\n }\n }\n }\n };\n ChoiceSetInput.prototype.renderCompoundInput = function (cssClassName, type, defaultValues) {\n var _this = this;\n var element = document.createElement(\"div\");\n element.className = this.hostConfig.makeCssClassName(\"ac-input\", cssClassName);\n element.style.width = \"100%\";\n element.tabIndex = this.isDesignMode() ? -1 : 0;\n this._toggleInputs = [];\n this._labels = [];\n for (var _i = 0, _a = this.choices; _i < _a.length; _i++) {\n var choice = _a[_i];\n var input = document.createElement(\"input\");\n input.id = Utils.generateUniqueId();\n input.type = type;\n input.style.margin = \"0\";\n input.style.display = \"inline-block\";\n input.style.verticalAlign = \"middle\";\n input.style.flex = \"0 0 auto\";\n input.name = this.id ? this.id : this._uniqueCategoryName;\n if (this.isRequired) {\n input.setAttribute(\"aria-required\", \"true\");\n }\n input.tabIndex = this.isDesignMode() ? -1 : 0;\n if (choice.value) {\n input.value = choice.value;\n }\n if (choice.title) {\n input.setAttribute(\"aria-label\", choice.title);\n }\n if (defaultValues && choice.value) {\n if (defaultValues.indexOf(choice.value) >= 0) {\n input.checked = true;\n }\n }\n input.onchange = function () {\n _this.valueChanged();\n };\n this._toggleInputs.push(input);\n var compoundInput = document.createElement(\"div\");\n compoundInput.style.display = \"flex\";\n compoundInput.style.alignItems = \"center\";\n Utils.appendChild(compoundInput, input);\n var label = new TextBlock();\n label.setParent(this);\n label.forElementId = input.id;\n label.hostConfig = this.hostConfig;\n label.text = choice.title ? choice.title : \"Choice \" + this._toggleInputs.length;\n label.useMarkdown = shared_1.GlobalSettings.useMarkdownInRadioButtonAndCheckbox;\n label.wrap = this.wrap;\n var labelElement = label.render();\n this._labels.push(labelElement);\n if (labelElement) {\n labelElement.id = Utils.generateUniqueId();\n labelElement.style.display = \"inline-block\";\n labelElement.style.flex = \"1 1 auto\";\n labelElement.style.marginLeft = \"6px\";\n labelElement.style.verticalAlign = \"middle\";\n var spacerElement = document.createElement(\"div\");\n spacerElement.style.width = \"6px\";\n Utils.appendChild(compoundInput, spacerElement);\n Utils.appendChild(compoundInput, labelElement);\n }\n Utils.appendChild(element, compoundInput);\n }\n return element;\n };\n ChoiceSetInput.prototype.updateInputControlAriaLabelledBy = function () {\n if ((this.isMultiSelect || this.style === \"expanded\") &&\n this._toggleInputs &&\n this._labels) {\n var labelIds = this.getAllLabelIds();\n for (var i = 0; i < this._toggleInputs.length; i++) {\n var joinedLabelIds = labelIds.join(\" \");\n var label = this._labels[i];\n if (label && label.id) {\n joinedLabelIds += \" \" + label.id;\n }\n if (joinedLabelIds) {\n this._toggleInputs[i].setAttribute(\"aria-labelledby\", joinedLabelIds);\n }\n else {\n this._toggleInputs[i].removeAttribute(\"aria-labelledby\");\n }\n }\n }\n else {\n _super.prototype.updateInputControlAriaLabelledBy.call(this);\n }\n };\n ChoiceSetInput.prototype.internalRender = function () {\n var _this = this;\n this._uniqueCategoryName = ChoiceSetInput.getUniqueCategoryName();\n if (this.isDynamicTypeahead()) {\n var filteredChoiceSet_1 = new FilteredChoiceSet(ChoiceSetInput._uniqueCategoryCounter, this.choices, this.hostConfig);\n filteredChoiceSet_1.render();\n if (filteredChoiceSet_1.textInput) {\n this._textInput = filteredChoiceSet_1.textInput;\n if (this.defaultValue) {\n this._textInput.value = this.defaultValue;\n }\n if (this.placeholder && !this._textInput.value) {\n this._textInput.placeholder = this.placeholder;\n this._textInput.setAttribute(\"aria-label\", this.placeholder);\n }\n this._textInput.tabIndex = this.isDesignMode() ? -1 : 0;\n var onInputChangeEventHandler = Utils.debounce(function () {\n filteredChoiceSet_1.processStaticChoices();\n _this.valueChanged();\n if (_this._textInput) {\n // Remove aria-label when value is not empty so narration software doesn't\n // read the placeholder\n if (_this.value) {\n _this._textInput.removeAttribute(\"placeholder\");\n _this._textInput.removeAttribute(\"aria-label\");\n }\n else if (_this.placeholder) {\n _this._textInput.placeholder = _this.placeholder;\n _this._textInput.setAttribute(\"aria-label\", _this.placeholder);\n }\n }\n }, this.hostConfig.inputs.debounceTimeInMilliSeconds);\n this._textInput.onclick = onInputChangeEventHandler;\n this._textInput.oninput = onInputChangeEventHandler;\n }\n filteredChoiceSet_1.parent = this;\n this._filteredChoiceSet = filteredChoiceSet_1;\n return filteredChoiceSet_1.renderedElement;\n }\n else if (this.isMultiSelect) {\n // Render as a list of toggle inputs\n return this.renderCompoundInput(\"ac-choiceSetInput-multiSelect\", \"checkbox\", this.defaultValue\n ? this.defaultValue.split(this.hostConfig.choiceSetInputValueSeparator)\n : undefined);\n }\n else {\n if (this.style === \"expanded\") {\n // Render as a series of radio buttons\n return this.renderCompoundInput(\"ac-choiceSetInput-expanded\", \"radio\", this.defaultValue ? [this.defaultValue] : undefined);\n }\n else if (this.style === \"filtered\") {\n // Render as a text input coupled with a datalist\n var inputContainer = document.createElement(\"div\");\n inputContainer.style.width = \"100%\";\n this._textInput = document.createElement(\"input\");\n this._textInput.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-multichoiceInput\", \"ac-choiceSetInput-filtered\");\n this._textInput.type = \"text\";\n this._textInput.style.width = \"100%\";\n this._textInput.oninput = function () {\n _this.valueChanged();\n if (_this._textInput) {\n // Remove aria-label when value is not empty so narration software doesn't\n // read the placeholder\n if (_this.value) {\n _this._textInput.removeAttribute(\"placeholder\");\n _this._textInput.removeAttribute(\"aria-label\");\n }\n else if (_this.placeholder) {\n _this._textInput.placeholder = _this.placeholder;\n _this._textInput.setAttribute(\"aria-label\", _this.placeholder);\n }\n }\n };\n if (this.defaultValue) {\n this._textInput.value = this.defaultValue;\n }\n if (this.placeholder && !this._textInput.value) {\n this._textInput.placeholder = this.placeholder;\n this._textInput.setAttribute(\"aria-label\", this.placeholder);\n }\n this._textInput.tabIndex = this.isDesignMode() ? -1 : 0;\n var dataList = document.createElement(\"datalist\");\n dataList.id = Utils.generateUniqueId();\n for (var _i = 0, _a = this.choices; _i < _a.length; _i++) {\n var choice = _a[_i];\n var option = document.createElement(\"option\");\n // To fix https://stackoverflow.com/questions/29882361/show-datalist-labels-but-submit-the-actual-value\n // value is mapped to choice.title other than choice.value\n if (choice.title) {\n option.value = choice.title;\n option.setAttribute(\"aria-label\", choice.title);\n }\n option.tabIndex = this.isDesignMode() ? -1 : 0;\n dataList.appendChild(option);\n }\n this._textInput.setAttribute(\"list\", dataList.id);\n inputContainer.append(this._textInput, dataList);\n return inputContainer;\n }\n else {\n // Render as a combo box\n this._selectElement = document.createElement(\"select\");\n this._selectElement.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-multichoiceInput\", \"ac-choiceSetInput-compact\");\n this._selectElement.style.width = \"100%\";\n this._selectElement.tabIndex = this.isDesignMode() ? -1 : 0;\n var placeholderOption = this.createPlaceholderOptionWhenValueDoesNotExist();\n Utils.appendChild(this._selectElement, placeholderOption);\n for (var _b = 0, _c = this.choices; _b < _c.length; _b++) {\n var choice = _c[_b];\n var option = document.createElement(\"option\");\n option.value = choice.value;\n if (choice.title) {\n option.text = choice.title;\n option.setAttribute(\"aria-label\", choice.title);\n }\n option.tabIndex = this.isDesignMode() ? -1 : 0;\n if (choice.value === this.defaultValue) {\n option.selected = true;\n }\n Utils.appendChild(this._selectElement, option);\n }\n this._selectElement.onchange = function () {\n _this.internalApplyAriaCurrent();\n _this.valueChanged();\n };\n this.internalApplyAriaCurrent();\n return this._selectElement;\n }\n }\n };\n ChoiceSetInput.prototype.updateVisualState = function (eventType) {\n if (!this.allowRevealOnHoverStyle) {\n return;\n }\n if (!this.isMultiSelect && this.isCompact) {\n _super.prototype.updateVisualState.call(this, eventType);\n if (this._selectElement && this.inputStyle === Enums.InputStyle.RevealOnHover) {\n var hideDropDownPicker = this.shouldHideInputAdornersForRevealOnHover(this._selectElement, eventType);\n if (hideDropDownPicker) {\n this._selectElement.style.appearance = \"none\";\n this._selectElement.classList.remove(this.hostConfig.makeCssClassName(\"ac-inputStyle-revealOnHover-onfocus\"));\n }\n else {\n this._selectElement.style.appearance = \"auto\";\n this._selectElement.classList.add(this.hostConfig.makeCssClassName(\"ac-inputStyle-revealOnHover-onfocus\"));\n }\n }\n }\n };\n ChoiceSetInput.prototype.getJsonTypeName = function () {\n return \"Input.ChoiceSet\";\n };\n ChoiceSetInput.prototype.focus = function () {\n if (this._toggleInputs && (this.isMultiSelect || this.style === \"expanded\")) {\n if (this._toggleInputs.length > 0) {\n this._toggleInputs[0].focus();\n }\n }\n else if (this._textInput) {\n this._textInput.focus();\n }\n else {\n _super.prototype.focus.call(this);\n }\n };\n ChoiceSetInput.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n if (this.choices.length === 0) {\n context.addFailure(this, Enums.ValidationEvent.CollectionCantBeEmpty, strings_1.Strings.errors.choiceSetMustHaveAtLeastOneChoice());\n }\n for (var _i = 0, _a = this.choices; _i < _a.length; _i++) {\n var choice = _a[_i];\n if (!choice.title || !choice.value) {\n context.addFailure(this, Enums.ValidationEvent.PropertyCantBeNull, strings_1.Strings.errors.choiceSetChoicesMustHaveTitleAndValue());\n }\n }\n };\n ChoiceSetInput.prototype.isSet = function () {\n return this.value ? true : false;\n };\n ChoiceSetInput.prototype.isValid = function () {\n if (this._textInput) {\n if (this.value === \"\" || this.value === this.placeholder) {\n return true;\n }\n for (var _i = 0, _a = this.choices; _i < _a.length; _i++) {\n var choice = _a[_i];\n if (this.value === choice.value) {\n return true;\n }\n }\n if (this.dynamicChoices) {\n for (var _b = 0, _c = this.dynamicChoices; _b < _c.length; _b++) {\n var choice = _c[_b];\n if (this.value === choice) {\n return true;\n }\n }\n }\n return false;\n }\n return _super.prototype.isValid.call(this);\n };\n Object.defineProperty(ChoiceSetInput.prototype, \"value\", {\n get: function () {\n if (!this.isMultiSelect) {\n if (this._selectElement) {\n return this._selectElement.selectedIndex > 0\n ? this._selectElement.value\n : undefined;\n }\n else if (this._textInput) {\n for (var _i = 0, _a = this.choices; _i < _a.length; _i++) {\n var choice = _a[_i];\n if (choice.title && this._textInput.value === choice.title) {\n return choice.value;\n }\n }\n return this._textInput.value;\n }\n else if (this._toggleInputs && this._toggleInputs.length > 0) {\n for (var _b = 0, _c = this._toggleInputs; _b < _c.length; _b++) {\n var toggleInput = _c[_b];\n if (toggleInput.checked) {\n return toggleInput.value;\n }\n }\n }\n return undefined;\n }\n else {\n if (!this._toggleInputs || this._toggleInputs.length === 0) {\n return undefined;\n }\n var result = \"\";\n for (var _d = 0, _f = this._toggleInputs; _d < _f.length; _d++) {\n var toggleInput = _f[_d];\n if (toggleInput.checked) {\n if (result !== \"\") {\n result += this.hostConfig.choiceSetInputValueSeparator;\n }\n result += toggleInput.value;\n }\n }\n return result ? result : undefined;\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ChoiceSetInput.prototype, \"dynamicChoices\", {\n get: function () {\n var _a;\n return (_a = this._filteredChoiceSet) === null || _a === void 0 ? void 0 : _a.dynamicChoices;\n },\n enumerable: false,\n configurable: true\n });\n ChoiceSetInput.valueProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"value\");\n ChoiceSetInput.choicesProperty = new serialization_1.SerializableObjectCollectionProperty(serialization_1.Versions.v1_0, \"choices\", Choice);\n ChoiceSetInput.choicesDataProperty = new serialization_1.SerializableObjectProperty(serialization_1.Versions.v1_6, \"choices.data\", ChoiceSetInputDataQuery);\n ChoiceSetInput.styleProperty = new serialization_1.ValueSetProperty(serialization_1.Versions.v1_0, \"style\", [\n { value: \"compact\" },\n { value: \"expanded\" },\n { value: \"filtered\", targetVersion: serialization_1.Versions.v1_5 }\n ], \"compact\");\n ChoiceSetInput.isMultiSelectProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_0, \"isMultiSelect\", false);\n ChoiceSetInput.placeholderProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"placeholder\");\n ChoiceSetInput.wrapProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_2, \"wrap\", false);\n //#endregion\n ChoiceSetInput._uniqueCategoryCounter = 0;\n __decorate([\n (0, serialization_1.property)(ChoiceSetInput.valueProperty)\n ], ChoiceSetInput.prototype, \"defaultValue\", void 0);\n __decorate([\n (0, serialization_1.property)(ChoiceSetInput.styleProperty)\n ], ChoiceSetInput.prototype, \"style\", void 0);\n __decorate([\n (0, serialization_1.property)(ChoiceSetInput.isMultiSelectProperty)\n ], ChoiceSetInput.prototype, \"isMultiSelect\", void 0);\n __decorate([\n (0, serialization_1.property)(ChoiceSetInput.placeholderProperty)\n ], ChoiceSetInput.prototype, \"placeholder\", void 0);\n __decorate([\n (0, serialization_1.property)(ChoiceSetInput.wrapProperty)\n ], ChoiceSetInput.prototype, \"wrap\", void 0);\n __decorate([\n (0, serialization_1.property)(ChoiceSetInput.choicesProperty)\n ], ChoiceSetInput.prototype, \"choices\", void 0);\n __decorate([\n (0, serialization_1.property)(ChoiceSetInput.choicesDataProperty)\n ], ChoiceSetInput.prototype, \"choicesData\", void 0);\n return ChoiceSetInput;\n}(Input));\nexports.ChoiceSetInput = ChoiceSetInput;\nvar FilteredChoiceSet = /** @class */ (function () {\n function FilteredChoiceSet(choiceSetId, choices, hostConfig) {\n this._choiceSetId = choiceSetId;\n this._choices = choices;\n this._dynamicChoices = [];\n this._visibleChoiceCount = 0;\n this._hostConfig = hostConfig;\n }\n FilteredChoiceSet.prototype.render = function () {\n var _this = this;\n var choiceSetContainer = document.createElement(\"div\");\n choiceSetContainer.style.position = \"relative\";\n choiceSetContainer.style.width = \"100%\";\n this._textInput = document.createElement(\"input\");\n this._textInput.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-multichoiceInput\", \"ac-choiceSetInput-filtered\");\n this._textInput.type = \"text\";\n this._textInput.style.width = \"100%\";\n this._textInput.onkeydown = function (event) {\n if (event.key === \"ArrowDown\") {\n _this.focusChoice(0);\n }\n };\n this._dropdown = document.createElement(\"div\");\n this._dropdown.style.display = \"none\";\n this._dropdown.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-multichoiceInput\", \"ac-choiceSetInput-filtered-dropdown\");\n choiceSetContainer.append(this._textInput, this._dropdown);\n document.onclick = function (event) {\n if (_this._dropdown) {\n var child = _this._dropdown.firstChild;\n while (child && event.target !== child) {\n child = child.nextSibling;\n }\n // Dropdown closes if user clicks outside the choiceset.\n if (child || !(event.target === _this._textInput)) {\n _this._dropdown.style.display = \"none\";\n }\n }\n };\n this._renderedElement = choiceSetContainer;\n };\n FilteredChoiceSet.prototype.createChoice = function (value, filter, id) {\n var _this = this;\n var choice = document.createElement(\"span\");\n choice.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-choiceSetInput-choice\");\n choice.id = \"ac-choiceSetInput-\".concat(this._choiceSetId, \"-choice-\").concat(id);\n choice.innerHTML = value.replace(filter, \"\".concat(filter, \"\"));\n choice.tabIndex = -1;\n choice.addEventListener(\"focusin\", function () {\n choice.classList.add(\"focused\");\n });\n choice.addEventListener(\"focusout\", function () {\n choice.classList.remove(\"focused\");\n });\n choice.onclick = function () {\n if (_this._textInput) {\n _this._textInput.value = choice.innerText;\n }\n if (_this._dropdown) {\n _this._dropdown.style.display = \"none\";\n }\n };\n choice.onkeydown = function (event) {\n if (event.key === \"ArrowDown\") {\n _this.focusChoice(id + 1);\n }\n else if (event.key === \"ArrowUp\") {\n _this.focusChoice(id - 1);\n }\n else if (event.key === \"Enter\") {\n choice.click();\n }\n };\n choice.onmouseover = function () {\n _this.focusChoice(id);\n };\n return choice;\n };\n FilteredChoiceSet.prototype.focusChoice = function (id) {\n var choice = document.getElementById(\"ac-choiceSetInput-\".concat(this._choiceSetId, \"-choice-\").concat(id));\n if (choice) {\n choice.focus();\n }\n else if (this._textInput) {\n this._textInput.focus();\n var textLength = this._textInput.value.length;\n this._textInput.setSelectionRange(textLength, textLength);\n }\n };\n FilteredChoiceSet.prototype.filterChoices = function (isDynamic) {\n var _a, _b;\n var filter = (_a = this._textInput) === null || _a === void 0 ? void 0 : _a.value.toLowerCase();\n if (filter) {\n var choices = isDynamic ? this._dynamicChoices : this._choices;\n for (var _i = 0, choices_1 = choices; _i < choices_1.length; _i++) {\n var choice = choices_1[_i];\n if (choice.title) {\n var matchIndex = choice.title.toLowerCase().indexOf(filter);\n if (matchIndex !== -1) {\n var matchedText = choice.title.substring(matchIndex, matchIndex + filter.length);\n var choiceContainer = this.createChoice(choice.title, matchedText, this._visibleChoiceCount++);\n (_b = this._dropdown) === null || _b === void 0 ? void 0 : _b.appendChild(choiceContainer);\n }\n }\n }\n }\n };\n FilteredChoiceSet.prototype.getStatusIndicator = function (error) {\n if (error) {\n if (!this._errorIndicator) {\n var errorIndicator = document.createElement(\"div\");\n errorIndicator.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-choiceSetInput-statusIndicator\", \"ac-choiceSetInput-errorIndicator\");\n this._errorIndicator = errorIndicator;\n }\n this._errorIndicator.innerText = error;\n return this._errorIndicator;\n }\n else {\n if (!this._loadingIndicator) {\n var loadingIndicator = document.createElement(\"div\");\n loadingIndicator.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-choiceSetInput-statusIndicator\");\n this._loadingIndicator = loadingIndicator;\n }\n this._loadingIndicator.innerText =\n this._visibleChoiceCount === 0 ? \"Loading...\" : \"Loading more...\";\n return this._loadingIndicator;\n }\n };\n FilteredChoiceSet.prototype.resetDropdown = function () {\n this._dynamicChoices = [];\n if (this._dropdown) {\n Utils.clearElementChildren(this._dropdown);\n this._visibleChoiceCount = 0;\n }\n };\n FilteredChoiceSet.prototype.showDropdown = function () {\n var _a;\n if ((_a = this._dropdown) === null || _a === void 0 ? void 0 : _a.hasChildNodes) {\n this._dropdown.style.display = \"block\";\n }\n };\n FilteredChoiceSet.prototype.processStaticChoices = function () {\n this.resetDropdown();\n this.filterChoices();\n this.showDropdown();\n };\n FilteredChoiceSet.prototype.processResponse = function (fetchedChoices) {\n this._dynamicChoices = fetchedChoices;\n this.filterChoices(true);\n if (this._visibleChoiceCount === 0) {\n this.showErrorIndicator(\"No results found.\");\n }\n };\n FilteredChoiceSet.prototype.showLoadingIndicator = function () {\n var _a;\n var loadingIndicator = this.getStatusIndicator();\n (_a = this._dropdown) === null || _a === void 0 ? void 0 : _a.appendChild(loadingIndicator);\n this.showDropdown();\n };\n FilteredChoiceSet.prototype.removeLoadingIndicator = function () {\n var _a, _b;\n if (this._loadingIndicator && ((_a = this._dropdown) === null || _a === void 0 ? void 0 : _a.contains(this._loadingIndicator))) {\n (_b = this._dropdown) === null || _b === void 0 ? void 0 : _b.removeChild(this._loadingIndicator);\n }\n };\n FilteredChoiceSet.prototype.showErrorIndicator = function (error) {\n var _a;\n this.removeLoadingIndicator();\n var errorIndicator = this.getStatusIndicator(error);\n (_a = this._dropdown) === null || _a === void 0 ? void 0 : _a.appendChild(errorIndicator);\n };\n Object.defineProperty(FilteredChoiceSet.prototype, \"dynamicChoices\", {\n get: function () {\n var _a;\n return (_a = this._dynamicChoices) === null || _a === void 0 ? void 0 : _a.map(function (choice) { return choice.title; });\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(FilteredChoiceSet.prototype, \"hostConfig\", {\n get: function () {\n if (this._hostConfig) {\n return this._hostConfig;\n }\n else {\n if (this.parent) {\n return this.parent.hostConfig;\n }\n else {\n return host_config_1.defaultHostConfig;\n }\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(FilteredChoiceSet.prototype, \"parent\", {\n get: function () {\n return this._parent;\n },\n set: function (value) {\n this._parent = value;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(FilteredChoiceSet.prototype, \"renderedElement\", {\n get: function () {\n return this._renderedElement;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(FilteredChoiceSet.prototype, \"textInput\", {\n get: function () {\n return this._textInput;\n },\n enumerable: false,\n configurable: true\n });\n return FilteredChoiceSet;\n}());\nexports.FilteredChoiceSet = FilteredChoiceSet;\nvar NumberInput = /** @class */ (function (_super) {\n __extends(NumberInput, _super);\n function NumberInput() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n NumberInput.prototype.internalRender = function () {\n var _this = this;\n this._numberInputElement = document.createElement(\"input\");\n this._numberInputElement.setAttribute(\"type\", \"number\");\n if (this.min !== undefined) {\n this._numberInputElement.setAttribute(\"min\", this.min.toString());\n }\n if (this.max !== undefined) {\n this._numberInputElement.setAttribute(\"max\", this.max.toString());\n }\n this._numberInputElement.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-numberInput\");\n this._numberInputElement.style.width = \"100%\";\n this._numberInputElement.tabIndex = this.isDesignMode() ? -1 : 0;\n if (this.defaultValue !== undefined) {\n this._numberInputElement.valueAsNumber = this.defaultValue;\n }\n if (this.placeholder) {\n this._numberInputElement.placeholder = this.placeholder;\n this._numberInputElement.setAttribute(\"aria-label\", this.placeholder);\n }\n this._numberInputElement.oninput = function () {\n _this.valueChanged();\n };\n return this._numberInputElement;\n };\n NumberInput.prototype.getJsonTypeName = function () {\n return \"Input.Number\";\n };\n NumberInput.prototype.isSet = function () {\n return this.value !== undefined && !isNaN(this.value);\n };\n NumberInput.prototype.isValid = function () {\n if (this.value === undefined) {\n return !this.isRequired;\n }\n var result = true;\n if (this.min !== undefined) {\n result = result && this.value >= this.min;\n }\n if (this.max !== undefined) {\n result = result && this.value <= this.max;\n }\n return result;\n };\n Object.defineProperty(NumberInput.prototype, \"value\", {\n get: function () {\n return this._numberInputElement ? this._numberInputElement.valueAsNumber : undefined;\n },\n set: function (value) {\n if (value && this._numberInputElement) {\n this._numberInputElement.value = value.toString();\n }\n },\n enumerable: false,\n configurable: true\n });\n //#region Schema\n NumberInput.valueProperty = new serialization_1.NumProperty(serialization_1.Versions.v1_0, \"value\");\n NumberInput.placeholderProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"placeholder\");\n NumberInput.minProperty = new serialization_1.NumProperty(serialization_1.Versions.v1_0, \"min\");\n NumberInput.maxProperty = new serialization_1.NumProperty(serialization_1.Versions.v1_0, \"max\");\n __decorate([\n (0, serialization_1.property)(NumberInput.valueProperty)\n ], NumberInput.prototype, \"defaultValue\", void 0);\n __decorate([\n (0, serialization_1.property)(NumberInput.minProperty)\n ], NumberInput.prototype, \"min\", void 0);\n __decorate([\n (0, serialization_1.property)(NumberInput.maxProperty)\n ], NumberInput.prototype, \"max\", void 0);\n __decorate([\n (0, serialization_1.property)(NumberInput.placeholderProperty)\n ], NumberInput.prototype, \"placeholder\", void 0);\n return NumberInput;\n}(Input));\nexports.NumberInput = NumberInput;\nvar DateInput = /** @class */ (function (_super) {\n __extends(DateInput, _super);\n function DateInput() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n DateInput.prototype.internalRender = function () {\n var _this = this;\n this._dateInputElement = document.createElement(\"input\");\n this._dateInputElement.setAttribute(\"type\", \"date\");\n if (this.min) {\n this._dateInputElement.setAttribute(\"min\", this.min);\n }\n if (this.max) {\n this._dateInputElement.setAttribute(\"max\", this.max);\n }\n if (this.placeholder) {\n this._dateInputElement.placeholder = this.placeholder;\n this._dateInputElement.setAttribute(\"aria-label\", this.placeholder);\n }\n this._dateInputElement.tabIndex = this.isDesignMode() ? -1 : 0;\n this._dateInputElement.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-dateInput\");\n this._dateInputElement.style.width = \"100%\";\n this._dateInputElement.oninput = function () {\n _this.valueChanged();\n };\n if (this.defaultValue) {\n this._dateInputElement.value = this.defaultValue;\n }\n return this._dateInputElement;\n };\n DateInput.prototype.updateVisualState = function (eventType) {\n if (!this.allowRevealOnHoverStyle) {\n return;\n }\n _super.prototype.updateVisualState.call(this, eventType);\n if (this._dateInputElement && this.inputStyle === Enums.InputStyle.RevealOnHover) {\n var hideDatePicker = this.shouldHideInputAdornersForRevealOnHover(this._dateInputElement, eventType);\n if (hideDatePicker) {\n this._dateInputElement.classList.remove(this.hostConfig.makeCssClassName(\"ac-inputStyle-revealOnHover-onfocus\"));\n }\n else {\n this._dateInputElement.classList.add(this.hostConfig.makeCssClassName(\"ac-inputStyle-revealOnHover-onfocus\"));\n }\n updateInputAdornersVisibility(this._dateInputElement, hideDatePicker /*hide*/);\n }\n };\n DateInput.prototype.getJsonTypeName = function () {\n return \"Input.Date\";\n };\n DateInput.prototype.isSet = function () {\n return this.value ? true : false;\n };\n DateInput.prototype.isValid = function () {\n if (!this.value) {\n return !this.isRequired;\n }\n var valueAsDate = new Date(this.value);\n var result = true;\n if (this.min) {\n var minDate = new Date(this.min);\n result = result && valueAsDate >= minDate;\n }\n if (this.max) {\n var maxDate = new Date(this.max);\n result = result && valueAsDate <= maxDate;\n }\n return result;\n };\n Object.defineProperty(DateInput.prototype, \"value\", {\n get: function () {\n return this._dateInputElement ? this._dateInputElement.value : undefined;\n },\n enumerable: false,\n configurable: true\n });\n //#region Schema\n DateInput.valueProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"value\");\n DateInput.placeholderProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"placeholder\");\n DateInput.minProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"min\");\n DateInput.maxProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"max\");\n __decorate([\n (0, serialization_1.property)(DateInput.valueProperty)\n ], DateInput.prototype, \"defaultValue\", void 0);\n __decorate([\n (0, serialization_1.property)(DateInput.minProperty)\n ], DateInput.prototype, \"min\", void 0);\n __decorate([\n (0, serialization_1.property)(DateInput.maxProperty)\n ], DateInput.prototype, \"max\", void 0);\n __decorate([\n (0, serialization_1.property)(DateInput.placeholderProperty)\n ], DateInput.prototype, \"placeholder\", void 0);\n return DateInput;\n}(Input));\nexports.DateInput = DateInput;\nvar TimeProperty = /** @class */ (function (_super) {\n __extends(TimeProperty, _super);\n function TimeProperty(targetVersion, name) {\n var _this = _super.call(this, targetVersion, name, function (sender, prop, source, context) {\n var value = source[prop.name];\n if (typeof value === \"string\" && value && /^[0-9]{2}:[0-9]{2}$/.test(value)) {\n return value;\n }\n return undefined;\n }, function (sender, prop, target, value, context) {\n context.serializeValue(target, prop.name, value);\n }) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n return _this;\n }\n return TimeProperty;\n}(serialization_1.CustomProperty));\nexports.TimeProperty = TimeProperty;\nvar TimeInput = /** @class */ (function (_super) {\n __extends(TimeInput, _super);\n function TimeInput() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n TimeInput.convertTimeStringToDate = function (timeString) {\n return new Date(\"1973-09-04T\" + timeString + \":00Z\");\n };\n TimeInput.prototype.internalRender = function () {\n var _this = this;\n this._timeInputElement = document.createElement(\"input\");\n this._timeInputElement.setAttribute(\"type\", \"time\");\n if (this.min) {\n this._timeInputElement.setAttribute(\"min\", this.min);\n }\n if (this.max) {\n this._timeInputElement.setAttribute(\"max\", this.max);\n }\n this._timeInputElement.className = this.hostConfig.makeCssClassName(\"ac-input\", \"ac-timeInput\");\n this._timeInputElement.style.width = \"100%\";\n this._timeInputElement.oninput = function () {\n _this.valueChanged();\n };\n if (this.placeholder) {\n this._timeInputElement.placeholder = this.placeholder;\n this._timeInputElement.setAttribute(\"aria-label\", this.placeholder);\n }\n this._timeInputElement.tabIndex = this.isDesignMode() ? -1 : 0;\n if (this.defaultValue) {\n this._timeInputElement.value = this.defaultValue;\n }\n return this._timeInputElement;\n };\n TimeInput.prototype.updateVisualState = function (eventType) {\n if (!this.allowRevealOnHoverStyle) {\n return;\n }\n _super.prototype.updateVisualState.call(this, eventType);\n if (this._timeInputElement && this.inputStyle === Enums.InputStyle.RevealOnHover) {\n var hideTimePicker = this.shouldHideInputAdornersForRevealOnHover(this._timeInputElement, eventType);\n if (hideTimePicker) {\n this._timeInputElement.classList.remove(this.hostConfig.makeCssClassName(\"ac-inputStyle-revealOnHover-onfocus\"));\n }\n else {\n this._timeInputElement.classList.add(this.hostConfig.makeCssClassName(\"ac-inputStyle-revealOnHover-onfocus\"));\n }\n updateInputAdornersVisibility(this._timeInputElement, hideTimePicker /*hide*/);\n }\n };\n TimeInput.prototype.getJsonTypeName = function () {\n return \"Input.Time\";\n };\n TimeInput.prototype.isSet = function () {\n return this.value ? true : false;\n };\n TimeInput.prototype.isValid = function () {\n if (!this.value) {\n return !this.isRequired;\n }\n var valueAsDate = TimeInput.convertTimeStringToDate(this.value);\n var result = true;\n if (this.min) {\n var minDate = TimeInput.convertTimeStringToDate(this.min);\n result = result && valueAsDate >= minDate;\n }\n if (this.max) {\n var maxDate = TimeInput.convertTimeStringToDate(this.max);\n result = result && valueAsDate <= maxDate;\n }\n return result;\n };\n Object.defineProperty(TimeInput.prototype, \"value\", {\n get: function () {\n return this._timeInputElement ? this._timeInputElement.value : undefined;\n },\n enumerable: false,\n configurable: true\n });\n //#region Schema\n TimeInput.valueProperty = new TimeProperty(serialization_1.Versions.v1_0, \"value\");\n TimeInput.placeholderProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"placeholder\");\n TimeInput.minProperty = new TimeProperty(serialization_1.Versions.v1_0, \"min\");\n TimeInput.maxProperty = new TimeProperty(serialization_1.Versions.v1_0, \"max\");\n __decorate([\n (0, serialization_1.property)(TimeInput.valueProperty)\n ], TimeInput.prototype, \"defaultValue\", void 0);\n __decorate([\n (0, serialization_1.property)(TimeInput.minProperty)\n ], TimeInput.prototype, \"min\", void 0);\n __decorate([\n (0, serialization_1.property)(TimeInput.maxProperty)\n ], TimeInput.prototype, \"max\", void 0);\n __decorate([\n (0, serialization_1.property)(TimeInput.placeholderProperty)\n ], TimeInput.prototype, \"placeholder\", void 0);\n return TimeInput;\n}(Input));\nexports.TimeInput = TimeInput;\nvar Action = /** @class */ (function (_super) {\n __extends(Action, _super);\n function Action() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.style = Enums.ActionStyle.Default;\n _this.mode = Enums.ActionMode.Primary;\n _this._state = 0 /* Normal */;\n _this._isFocusable = true;\n return _this;\n }\n //#endregion\n Action.prototype.renderButtonContent = function () {\n if (this.renderedElement) {\n // Cache hostConfig for perf\n var hostConfig = this.hostConfig;\n var titleElement = document.createElement(\"div\");\n titleElement.style.overflow = \"hidden\";\n titleElement.style.textOverflow = \"ellipsis\";\n if (!(hostConfig.actions.iconPlacement === Enums.ActionIconPlacement.AboveTitle ||\n hostConfig.actions.allowTitleToWrap)) {\n titleElement.style.whiteSpace = \"nowrap\";\n }\n if (this.title) {\n titleElement.innerText = this.title;\n }\n if (!this.iconUrl) {\n this.renderedElement.classList.add(\"noIcon\");\n this.renderedElement.appendChild(titleElement);\n }\n else {\n var iconElement = document.createElement(\"img\");\n iconElement.src = this.iconUrl;\n iconElement.style.width = hostConfig.actions.iconSize + \"px\";\n iconElement.style.height = hostConfig.actions.iconSize + \"px\";\n iconElement.style.flex = \"0 0 auto\";\n if (hostConfig.actions.iconPlacement === Enums.ActionIconPlacement.AboveTitle) {\n this.renderedElement.classList.add(\"iconAbove\");\n this.renderedElement.style.flexDirection = \"column\";\n if (this.title) {\n iconElement.style.marginBottom = \"6px\";\n }\n }\n else {\n this.renderedElement.classList.add(\"iconLeft\");\n iconElement.style.maxHeight = \"100%\";\n if (this.title) {\n iconElement.style.marginRight = \"6px\";\n }\n }\n this.renderedElement.appendChild(iconElement);\n this.renderedElement.appendChild(titleElement);\n }\n }\n };\n Action.prototype.getParentContainer = function () {\n if (this.parent instanceof Container) {\n return this.parent;\n }\n return this.parent ? this.parent.getParentContainer() : undefined;\n };\n Action.prototype.isDesignMode = function () {\n var rootElement = this.getRootObject();\n return rootElement instanceof CardElement && rootElement.isDesignMode();\n };\n Action.prototype.updateCssClasses = function () {\n var _a, _b;\n if (this.parent && this.renderedElement) {\n var hostConfig = this.parent.hostConfig;\n this.renderedElement.className = hostConfig.makeCssClassName(this.isEffectivelyEnabled() ? \"ac-pushButton\" : \"ac-pushButton-disabled\");\n var parentContainer = this.getParentContainer();\n if (parentContainer) {\n var parentContainerStyle = parentContainer.getEffectiveStyle();\n if (parentContainerStyle) {\n this.renderedElement.classList.add(\"style-\" + parentContainerStyle);\n }\n }\n this.renderedElement.tabIndex = !this.isDesignMode() && this.isFocusable ? 0 : -1;\n switch (this._state) {\n case 0 /* Normal */:\n // No additional classes needed\n break;\n case 1 /* Expanded */:\n this.renderedElement.classList.add(hostConfig.makeCssClassName(\"expanded\"));\n break;\n case 2 /* Subdued */:\n this.renderedElement.classList.add(hostConfig.makeCssClassName(\"subdued\"));\n break;\n }\n if (this.style && this.isEffectivelyEnabled()) {\n if (this.style === Enums.ActionStyle.Positive) {\n (_a = this.renderedElement.classList).add.apply(_a, hostConfig.makeCssClassNames(\"primary\", \"style-positive\"));\n }\n else {\n (_b = this.renderedElement.classList).add.apply(_b, hostConfig.makeCssClassNames(\"style-\" + this.style.toLowerCase()));\n }\n }\n }\n };\n Action.prototype.getDefaultSerializationContext = function () {\n return new SerializationContext();\n };\n Action.prototype.internalGetReferencedInputs = function () {\n return {};\n };\n Action.prototype.internalPrepareForExecution = function (_inputs) {\n // Do nothing in base implementation\n };\n Action.prototype.internalValidateInputs = function (referencedInputs) {\n var result = [];\n if (referencedInputs) {\n for (var _i = 0, _a = Object.keys(referencedInputs); _i < _a.length; _i++) {\n var key = _a[_i];\n var input = referencedInputs[key];\n if (!input.validateValue()) {\n result.push(input);\n }\n }\n }\n return result;\n };\n Action.prototype.shouldSerialize = function (context) {\n return context.actionRegistry.findByName(this.getJsonTypeName()) !== undefined;\n };\n Action.prototype.raiseExecuteActionEvent = function () {\n if (this.onExecute) {\n this.onExecute(this);\n }\n raiseExecuteActionEvent(this);\n };\n Action.prototype.internalAfterExecute = function () {\n var rootObject = this.getRootObject();\n if (rootObject instanceof CardElement) {\n rootObject.updateActionsEnabledState();\n }\n };\n Action.prototype.getHref = function () {\n return \"\";\n };\n Action.prototype.getAriaRole = function () {\n var ariaRole = this.getAriaRoleFromEnum();\n return ariaRole !== null && ariaRole !== void 0 ? ariaRole : \"button\";\n };\n Action.prototype.getAriaRoleFromEnum = function () {\n switch (this.role) {\n case Enums.ActionRole.Button:\n return \"button\";\n case Enums.ActionRole.Link:\n return \"link\";\n case Enums.ActionRole.Menu:\n return \"menu\";\n case Enums.ActionRole.MenuItem:\n return \"menuitem\";\n case Enums.ActionRole.Tab:\n return \"tab\";\n default:\n return undefined;\n }\n };\n Action.prototype.setupElementForAccessibility = function (element, promoteTooltipToLabel) {\n if (promoteTooltipToLabel === void 0) { promoteTooltipToLabel = false; }\n element.tabIndex = this.isEffectivelyEnabled() && !this.isDesignMode() ? 0 : -1;\n element.setAttribute(\"role\", this.getAriaRole());\n if (element instanceof HTMLButtonElement) {\n element.disabled = !this.isEffectivelyEnabled();\n }\n if (!this.isEffectivelyEnabled()) {\n element.setAttribute(\"aria-disabled\", \"true\");\n }\n else {\n element.removeAttribute(\"aria-disabled\");\n element.classList.add(this.hostConfig.makeCssClassName(\"ac-selectable\"));\n }\n if (this.title) {\n element.setAttribute(\"aria-label\", this.title);\n element.title = this.title;\n }\n else {\n element.removeAttribute(\"aria-label\");\n element.removeAttribute(\"title\");\n }\n if (this.tooltip) {\n if (promoteTooltipToLabel && !this.title) {\n element.setAttribute(\"aria-label\", this.tooltip);\n }\n element.title = this.tooltip;\n }\n };\n Action.prototype.parse = function (source, context) {\n return _super.prototype.parse.call(this, source, context ? context : new SerializationContext());\n };\n Action.prototype.render = function () {\n var _this = this;\n var buttonElement = document.createElement(\"button\");\n buttonElement.type = \"button\";\n buttonElement.style.display = \"flex\";\n buttonElement.style.alignItems = \"center\";\n buttonElement.style.justifyContent = \"center\";\n buttonElement.onclick = function (e) {\n if (_this.isEffectivelyEnabled()) {\n e.preventDefault();\n e.cancelBubble = true;\n _this.execute();\n }\n };\n this._renderedElement = buttonElement;\n this.renderButtonContent();\n this.updateCssClasses();\n this.setupElementForAccessibility(buttonElement);\n };\n Action.prototype.execute = function () {\n if (this._actionCollection) {\n this._actionCollection.actionExecuted(this);\n }\n this.raiseExecuteActionEvent();\n this.internalAfterExecute();\n };\n Action.prototype.prepareForExecution = function () {\n var referencedInputs = this.getReferencedInputs();\n var invalidInputs = this.internalValidateInputs(referencedInputs);\n if (invalidInputs.length > 0) {\n invalidInputs[0].focus();\n return false;\n }\n this.internalPrepareForExecution(referencedInputs);\n return true;\n };\n Action.prototype.remove = function () {\n if (this._actionCollection) {\n return this._actionCollection.removeAction(this);\n }\n return false;\n };\n Action.prototype.getAllInputs = function (processActions) {\n if (processActions === void 0) { processActions = true; }\n return [];\n };\n Action.prototype.getAllActions = function () {\n return [this];\n };\n Action.prototype.getResourceInformation = function () {\n return this.iconUrl ? [{ url: this.iconUrl, mimeType: \"image\" }] : [];\n };\n Action.prototype.getActionById = function (id) {\n return this.id === id ? this : undefined;\n };\n Action.prototype.getReferencedInputs = function () {\n return this.internalGetReferencedInputs();\n };\n /**\n * Validates the inputs associated with this action.\n *\n * @returns A list of inputs that failed validation, or an empty array if no input failed validation.\n */\n Action.prototype.validateInputs = function () {\n return this.internalValidateInputs(this.getReferencedInputs());\n };\n Action.prototype.updateEnabledState = function () {\n // Do nothing in base implementation\n };\n Action.prototype.isEffectivelyEnabled = function () {\n return this.isEnabled;\n };\n Object.defineProperty(Action.prototype, \"isPrimary\", {\n get: function () {\n return this.style === Enums.ActionStyle.Positive;\n },\n set: function (value) {\n if (value) {\n this.style = Enums.ActionStyle.Positive;\n }\n else {\n if (this.style === Enums.ActionStyle.Positive) {\n this.style = Enums.ActionStyle.Default;\n }\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Action.prototype, \"hostConfig\", {\n get: function () {\n return this.parent ? this.parent.hostConfig : host_config_1.defaultHostConfig;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Action.prototype, \"parent\", {\n get: function () {\n return this._parent;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Action.prototype, \"state\", {\n get: function () {\n return this._state;\n },\n set: function (value) {\n if (this._state !== value) {\n this._state = value;\n this.updateCssClasses();\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Action.prototype, \"isFocusable\", {\n get: function () {\n return this._isFocusable;\n },\n set: function (value) {\n if (this._isFocusable !== value) {\n this._isFocusable = value;\n this.updateCssClasses();\n }\n },\n enumerable: false,\n configurable: true\n });\n Action.titleProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"title\");\n Action.iconUrlProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_1, \"iconUrl\");\n Action.styleProperty = new serialization_1.ValueSetProperty(serialization_1.Versions.v1_2, \"style\", [\n { value: Enums.ActionStyle.Default },\n { value: Enums.ActionStyle.Positive },\n { value: Enums.ActionStyle.Destructive }\n ], Enums.ActionStyle.Default);\n Action.modeProperty = new serialization_1.ValueSetProperty(serialization_1.Versions.v1_5, \"mode\", [{ value: Enums.ActionMode.Primary }, { value: Enums.ActionMode.Secondary }], Enums.ActionMode.Primary);\n Action.tooltipProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_5, \"tooltip\");\n Action.isEnabledProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_5, \"isEnabled\", true);\n Action.roleProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_6, \"role\", Enums.ActionRole);\n __decorate([\n (0, serialization_1.property)(Action.titleProperty)\n ], Action.prototype, \"title\", void 0);\n __decorate([\n (0, serialization_1.property)(Action.iconUrlProperty)\n ], Action.prototype, \"iconUrl\", void 0);\n __decorate([\n (0, serialization_1.property)(Action.styleProperty)\n ], Action.prototype, \"style\", void 0);\n __decorate([\n (0, serialization_1.property)(Action.modeProperty)\n ], Action.prototype, \"mode\", void 0);\n __decorate([\n (0, serialization_1.property)(Action.tooltipProperty)\n ], Action.prototype, \"tooltip\", void 0);\n __decorate([\n (0, serialization_1.property)(Action.isEnabledProperty)\n ], Action.prototype, \"isEnabled\", void 0);\n __decorate([\n (0, serialization_1.property)(Action.roleProperty)\n ], Action.prototype, \"role\", void 0);\n return Action;\n}(card_object_1.CardObject));\nexports.Action = Action;\nvar SubmitActionBase = /** @class */ (function (_super) {\n __extends(SubmitActionBase, _super);\n function SubmitActionBase() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.disabledUnlessAssociatedInputsChange = false;\n //#endregion\n _this._isPrepared = false;\n _this._areReferencedInputsDirty = false;\n return _this;\n }\n SubmitActionBase.prototype.internalGetReferencedInputs = function () {\n var result = {};\n if (this.associatedInputs !== \"none\") {\n var current = this.parent;\n var inputs = [];\n while (current) {\n inputs.push.apply(inputs, current.getAllInputs(false));\n current = current.parent;\n }\n for (var _i = 0, inputs_1 = inputs; _i < inputs_1.length; _i++) {\n var input = inputs_1[_i];\n if (input.id) {\n result[input.id] = input;\n }\n }\n }\n return result;\n };\n SubmitActionBase.prototype.internalPrepareForExecution = function (inputs) {\n if (this._originalData) {\n this._processedData = JSON.parse(JSON.stringify(this._originalData));\n }\n else {\n this._processedData = {};\n }\n if (this._processedData && inputs) {\n for (var _i = 0, _a = Object.keys(inputs); _i < _a.length; _i++) {\n var key = _a[_i];\n var input = inputs[key];\n if (input.id && input.isSet()) {\n this._processedData[input.id] =\n typeof input.value === \"string\" ? input.value : input.value.toString();\n }\n }\n }\n this._isPrepared = true;\n };\n SubmitActionBase.prototype.internalAfterExecute = function () {\n if (shared_1.GlobalSettings.resetInputsDirtyStateAfterActionExecution) {\n this.resetReferencedInputsDirtyState();\n }\n };\n SubmitActionBase.prototype.resetReferencedInputsDirtyState = function () {\n var referencedInputs = this.getReferencedInputs();\n this._areReferencedInputsDirty = false;\n if (referencedInputs) {\n for (var _i = 0, _a = Object.keys(referencedInputs); _i < _a.length; _i++) {\n var key = _a[_i];\n var input = referencedInputs[key];\n input.resetDirtyState();\n }\n }\n };\n SubmitActionBase.prototype.updateEnabledState = function () {\n this._areReferencedInputsDirty = false;\n var referencedInputs = this.getReferencedInputs();\n if (referencedInputs) {\n for (var _i = 0, _a = Object.keys(referencedInputs); _i < _a.length; _i++) {\n var key = _a[_i];\n var input = referencedInputs[key];\n if (input.isDirty()) {\n this._areReferencedInputsDirty = true;\n break;\n }\n }\n }\n this.updateCssClasses();\n if (this._renderedElement) {\n this.setupElementForAccessibility(this._renderedElement);\n }\n };\n SubmitActionBase.prototype.isEffectivelyEnabled = function () {\n var result = _super.prototype.isEffectivelyEnabled.call(this);\n return this.disabledUnlessAssociatedInputsChange\n ? result && this._areReferencedInputsDirty\n : result;\n };\n Object.defineProperty(SubmitActionBase.prototype, \"data\", {\n get: function () {\n return this._isPrepared ? this._processedData : this._originalData;\n },\n set: function (value) {\n this._originalData = value;\n this._isPrepared = false;\n },\n enumerable: false,\n configurable: true\n });\n SubmitActionBase.dataProperty = new serialization_1.PropertyDefinition(serialization_1.Versions.v1_0, \"data\");\n SubmitActionBase.associatedInputsProperty = new serialization_1.CustomProperty(serialization_1.Versions.v1_3, \"associatedInputs\", function (sender, prop, source, context) {\n var value = source[prop.name];\n if (value !== undefined && typeof value === \"string\") {\n return value.toLowerCase() === \"none\" ? \"none\" : \"auto\";\n }\n return undefined;\n }, function (sender, prop, target, value, context) {\n context.serializeValue(target, prop.name, value);\n });\n SubmitActionBase.disabledUnlessAssociatedInputsChangeProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_6, \"disabledUnlessAssociatedInputsChange\", false);\n __decorate([\n (0, serialization_1.property)(SubmitActionBase.dataProperty)\n ], SubmitActionBase.prototype, \"_originalData\", void 0);\n __decorate([\n (0, serialization_1.property)(SubmitActionBase.associatedInputsProperty)\n ], SubmitActionBase.prototype, \"associatedInputs\", void 0);\n __decorate([\n (0, serialization_1.property)(SubmitActionBase.disabledUnlessAssociatedInputsChangeProperty)\n ], SubmitActionBase.prototype, \"disabledUnlessAssociatedInputsChange\", void 0);\n return SubmitActionBase;\n}(Action));\nexports.SubmitActionBase = SubmitActionBase;\nvar SubmitAction = /** @class */ (function (_super) {\n __extends(SubmitAction, _super);\n function SubmitAction() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n SubmitAction.prototype.getJsonTypeName = function () {\n return SubmitAction.JsonTypeName;\n };\n // Note the \"weird\" way this field is declared is to work around a breaking\n // change introduced in TS 3.1 wrt d.ts generation. DO NOT CHANGE\n SubmitAction.JsonTypeName = \"Action.Submit\";\n return SubmitAction;\n}(SubmitActionBase));\nexports.SubmitAction = SubmitAction;\nvar UniversalAction = /** @class */ (function (_super) {\n __extends(UniversalAction, _super);\n function UniversalAction() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return UniversalAction;\n}(SubmitActionBase));\nexports.UniversalAction = UniversalAction;\nvar ExecuteAction = /** @class */ (function (_super) {\n __extends(ExecuteAction, _super);\n function ExecuteAction() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n //#endregion\n ExecuteAction.prototype.getJsonTypeName = function () {\n return ExecuteAction.JsonTypeName;\n };\n // Note the \"weird\" way this field is declared is to work around a breaking\n // change introduced in TS 3.1 wrt d.ts generation. DO NOT CHANGE\n ExecuteAction.JsonTypeName = \"Action.Execute\";\n //#region Schema\n ExecuteAction.verbProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_4, \"verb\");\n __decorate([\n (0, serialization_1.property)(ExecuteAction.verbProperty)\n ], ExecuteAction.prototype, \"verb\", void 0);\n return ExecuteAction;\n}(UniversalAction));\nexports.ExecuteAction = ExecuteAction;\nvar DataQuery = /** @class */ (function (_super) {\n __extends(DataQuery, _super);\n function DataQuery() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n //#endregion\n DataQuery.prototype.getJsonTypeName = function () {\n return DataQuery.JsonTypeName;\n };\n Object.defineProperty(DataQuery.prototype, \"isStandalone\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n // Note the \"weird\" way this field is declared is to work around a breaking\n // change introduced in TS 3.1 wrt d.ts generation. DO NOT CHANGE\n DataQuery.JsonTypeName = \"Data.Query\";\n //#region Schema\n DataQuery.datasetProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_6, \"dataset\");\n DataQuery.filterProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_6, \"filter\");\n DataQuery.countProperty = new serialization_1.NumProperty(serialization_1.Versions.v1_6, \"count\");\n DataQuery.skipProperty = new serialization_1.NumProperty(serialization_1.Versions.v1_6, \"skip\");\n __decorate([\n (0, serialization_1.property)(DataQuery.datasetProperty)\n ], DataQuery.prototype, \"dataset\", void 0);\n __decorate([\n (0, serialization_1.property)(DataQuery.filterProperty)\n ], DataQuery.prototype, \"filter\", void 0);\n __decorate([\n (0, serialization_1.property)(DataQuery.countProperty)\n ], DataQuery.prototype, \"count\", void 0);\n __decorate([\n (0, serialization_1.property)(DataQuery.skipProperty)\n ], DataQuery.prototype, \"skip\", void 0);\n return DataQuery;\n}(UniversalAction));\nexports.DataQuery = DataQuery;\nvar OpenUrlAction = /** @class */ (function (_super) {\n __extends(OpenUrlAction, _super);\n function OpenUrlAction() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n OpenUrlAction.prototype.getJsonTypeName = function () {\n return OpenUrlAction.JsonTypeName;\n };\n OpenUrlAction.prototype.getAriaRole = function () {\n var ariaRole = this.getAriaRoleFromEnum();\n return ariaRole !== null && ariaRole !== void 0 ? ariaRole : \"link\";\n };\n OpenUrlAction.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n if (!this.url) {\n context.addFailure(this, Enums.ValidationEvent.PropertyCantBeNull, strings_1.Strings.errors.propertyMustBeSet(\"url\"));\n }\n };\n OpenUrlAction.prototype.getHref = function () {\n return this.url;\n };\n //#region Schema\n OpenUrlAction.urlProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"url\");\n //#endregion\n // Note the \"weird\" way this field is declared is to work around a breaking\n // change introduced in TS 3.1 wrt d.ts generation. DO NOT CHANGE\n OpenUrlAction.JsonTypeName = \"Action.OpenUrl\";\n __decorate([\n (0, serialization_1.property)(OpenUrlAction.urlProperty)\n ], OpenUrlAction.prototype, \"url\", void 0);\n return OpenUrlAction;\n}(Action));\nexports.OpenUrlAction = OpenUrlAction;\nvar ToggleVisibilityAction = /** @class */ (function (_super) {\n __extends(ToggleVisibilityAction, _super);\n function ToggleVisibilityAction() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.targetElements = {};\n return _this;\n }\n ToggleVisibilityAction.prototype.updateAriaControlsAttribute = function () {\n // apply aria labels to make it clear which elements this action will toggle\n if (this.targetElements) {\n var elementIds = Object.keys(this.targetElements);\n if (this._renderedElement) {\n if (elementIds.length > 0) {\n this._renderedElement.setAttribute(\"aria-controls\", elementIds.join(\" \"));\n }\n else {\n this._renderedElement.removeAttribute(\"aria-controls\");\n }\n }\n }\n };\n ToggleVisibilityAction.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n if (!this.targetElements) {\n context.addFailure(this, Enums.ValidationEvent.PropertyCantBeNull, strings_1.Strings.errors.propertyMustBeSet(\"targetElements\"));\n }\n };\n ToggleVisibilityAction.prototype.getJsonTypeName = function () {\n return ToggleVisibilityAction.JsonTypeName;\n };\n ToggleVisibilityAction.prototype.render = function () {\n _super.prototype.render.call(this);\n this.updateAriaControlsAttribute();\n };\n ToggleVisibilityAction.prototype.execute = function () {\n _super.prototype.execute.call(this);\n if (this.parent) {\n for (var _i = 0, _a = Object.keys(this.targetElements); _i < _a.length; _i++) {\n var elementId = _a[_i];\n var targetElement = this.parent.getRootElement().getElementById(elementId);\n if (targetElement) {\n if (typeof this.targetElements[elementId] === \"boolean\") {\n targetElement.isVisible = this.targetElements[elementId];\n }\n else {\n targetElement.isVisible = !targetElement.isVisible;\n }\n }\n }\n }\n };\n ToggleVisibilityAction.prototype.addTargetElement = function (elementId, isVisible) {\n if (isVisible === void 0) { isVisible = undefined; }\n this.targetElements[elementId] = isVisible;\n this.updateAriaControlsAttribute();\n };\n ToggleVisibilityAction.prototype.removeTargetElement = function (elementId) {\n delete this.targetElements[elementId];\n this.updateAriaControlsAttribute();\n };\n ToggleVisibilityAction.targetElementsProperty = new serialization_1.CustomProperty(serialization_1.Versions.v1_2, \"targetElements\", function (sender, prop, source, context) {\n var result = {};\n if (Array.isArray(source[prop.name])) {\n for (var _i = 0, _a = source[prop.name]; _i < _a.length; _i++) {\n var item = _a[_i];\n if (typeof item === \"string\") {\n result[item] = undefined;\n }\n else if (typeof item === \"object\") {\n var elementId = item[\"elementId\"];\n if (typeof elementId === \"string\") {\n result[elementId] = Utils.parseBool(item[\"isVisible\"]);\n }\n }\n }\n }\n return result;\n }, function (sender, prop, target, value, context) {\n var targetElements = [];\n for (var _i = 0, _a = Object.keys(value); _i < _a.length; _i++) {\n var id = _a[_i];\n if (typeof value[id] === \"boolean\") {\n targetElements.push({\n elementId: id,\n isVisible: value[id]\n });\n }\n else {\n targetElements.push(id);\n }\n }\n context.serializeArray(target, prop.name, targetElements);\n }, {}, function (sender) {\n return {};\n });\n //#endregion\n // Note the \"weird\" way this field is declared is to work around a breaking\n // change introduced in TS 3.1 wrt d.ts generation. DO NOT CHANGE\n ToggleVisibilityAction.JsonTypeName = \"Action.ToggleVisibility\";\n __decorate([\n (0, serialization_1.property)(ToggleVisibilityAction.targetElementsProperty)\n ], ToggleVisibilityAction.prototype, \"targetElements\", void 0);\n return ToggleVisibilityAction;\n}(Action));\nexports.ToggleVisibilityAction = ToggleVisibilityAction;\nvar StringWithSubstitutionProperty = /** @class */ (function (_super) {\n __extends(StringWithSubstitutionProperty, _super);\n function StringWithSubstitutionProperty(targetVersion, name) {\n var _this = _super.call(this, targetVersion, name, undefined, function () {\n return new shared_1.StringWithSubstitutions();\n }) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n return _this;\n }\n StringWithSubstitutionProperty.prototype.parse = function (sender, source, context) {\n var result = new shared_1.StringWithSubstitutions();\n result.set(Utils.parseString(source[this.name]));\n return result;\n };\n StringWithSubstitutionProperty.prototype.toJSON = function (sender, target, value, context) {\n context.serializeValue(target, this.name, value.getOriginal());\n };\n return StringWithSubstitutionProperty;\n}(serialization_1.PropertyDefinition));\nvar HttpHeader = /** @class */ (function (_super) {\n __extends(HttpHeader, _super);\n //#endregion\n function HttpHeader(name, value) {\n if (name === void 0) { name = \"\"; }\n if (value === void 0) { value = \"\"; }\n var _this = _super.call(this) || this;\n _this.name = name;\n _this.value = value;\n return _this;\n }\n HttpHeader.prototype.getSchemaKey = function () {\n return \"HttpHeader\";\n };\n HttpHeader.prototype.getReferencedInputs = function (inputs, referencedInputs) {\n this._value.getReferencedInputs(inputs, referencedInputs);\n };\n HttpHeader.prototype.prepareForExecution = function (inputs) {\n this._value.substituteInputValues(inputs, shared_1.ContentTypes.applicationXWwwFormUrlencoded);\n };\n Object.defineProperty(HttpHeader.prototype, \"value\", {\n get: function () {\n return this._value.get();\n },\n set: function (newValue) {\n this._value.set(newValue);\n },\n enumerable: false,\n configurable: true\n });\n //#region Schema\n HttpHeader.nameProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"name\");\n HttpHeader.valueProperty = new StringWithSubstitutionProperty(serialization_1.Versions.v1_0, \"value\");\n __decorate([\n (0, serialization_1.property)(HttpHeader.nameProperty)\n ], HttpHeader.prototype, \"name\", void 0);\n __decorate([\n (0, serialization_1.property)(HttpHeader.valueProperty)\n ], HttpHeader.prototype, \"_value\", void 0);\n return HttpHeader;\n}(serialization_1.SerializableObject));\nexports.HttpHeader = HttpHeader;\nvar HttpAction = /** @class */ (function (_super) {\n __extends(HttpAction, _super);\n function HttpAction() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._ignoreInputValidation = false;\n return _this;\n }\n HttpAction.prototype.internalGetReferencedInputs = function () {\n var allInputs = this.parent ? this.parent.getRootElement().getAllInputs() : [];\n var result = {};\n this._url.getReferencedInputs(allInputs, result);\n for (var _i = 0, _a = this.headers; _i < _a.length; _i++) {\n var header = _a[_i];\n header.getReferencedInputs(allInputs, result);\n }\n this._body.getReferencedInputs(allInputs, result);\n return result;\n };\n HttpAction.prototype.internalPrepareForExecution = function (inputs) {\n if (inputs) {\n this._url.substituteInputValues(inputs, shared_1.ContentTypes.applicationXWwwFormUrlencoded);\n var contentType = shared_1.ContentTypes.applicationJson;\n for (var _i = 0, _a = this.headers; _i < _a.length; _i++) {\n var header = _a[_i];\n header.prepareForExecution(inputs);\n if (header.name && header.name.toLowerCase() === \"content-type\") {\n contentType = header.value;\n }\n }\n this._body.substituteInputValues(inputs, contentType);\n }\n };\n HttpAction.prototype.getJsonTypeName = function () {\n return HttpAction.JsonTypeName;\n };\n HttpAction.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n if (!this.url) {\n context.addFailure(this, Enums.ValidationEvent.PropertyCantBeNull, strings_1.Strings.errors.propertyMustBeSet(\"url\"));\n }\n if (this.headers.length > 0) {\n for (var _i = 0, _a = this.headers; _i < _a.length; _i++) {\n var header = _a[_i];\n if (!header.name) {\n context.addFailure(this, Enums.ValidationEvent.PropertyCantBeNull, strings_1.Strings.errors.actionHttpHeadersMustHaveNameAndValue());\n }\n }\n }\n };\n Object.defineProperty(HttpAction.prototype, \"ignoreInputValidation\", {\n get: function () {\n return this._ignoreInputValidation;\n },\n set: function (value) {\n this._ignoreInputValidation = value;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(HttpAction.prototype, \"url\", {\n get: function () {\n return this._url.get();\n },\n set: function (value) {\n this._url.set(value);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(HttpAction.prototype, \"body\", {\n get: function () {\n return this._body.get();\n },\n set: function (value) {\n this._body.set(value);\n },\n enumerable: false,\n configurable: true\n });\n HttpAction.urlProperty = new StringWithSubstitutionProperty(serialization_1.Versions.v1_0, \"url\");\n HttpAction.bodyProperty = new StringWithSubstitutionProperty(serialization_1.Versions.v1_0, \"body\");\n HttpAction.methodProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"method\");\n HttpAction.headersProperty = new serialization_1.SerializableObjectCollectionProperty(serialization_1.Versions.v1_0, \"headers\", HttpHeader);\n HttpAction.ignoreInputValidationProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_3, \"ignoreInputValidation\", false);\n //#endregion\n // Note the \"weird\" way this field is declared is to work around a breaking\n // change introduced in TS 3.1 wrt d.ts generation. DO NOT CHANGE\n HttpAction.JsonTypeName = \"Action.Http\";\n __decorate([\n (0, serialization_1.property)(HttpAction.urlProperty)\n ], HttpAction.prototype, \"_url\", void 0);\n __decorate([\n (0, serialization_1.property)(HttpAction.bodyProperty)\n ], HttpAction.prototype, \"_body\", void 0);\n __decorate([\n (0, serialization_1.property)(HttpAction.methodProperty)\n ], HttpAction.prototype, \"method\", void 0);\n __decorate([\n (0, serialization_1.property)(HttpAction.headersProperty)\n ], HttpAction.prototype, \"headers\", void 0);\n __decorate([\n (0, serialization_1.property)(HttpAction.ignoreInputValidationProperty)\n ], HttpAction.prototype, \"_ignoreInputValidation\", void 0);\n return HttpAction;\n}(Action));\nexports.HttpAction = HttpAction;\nvar ShowCardAction = /** @class */ (function (_super) {\n __extends(ShowCardAction, _super);\n function ShowCardAction() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.card = new InlineAdaptiveCard();\n return _this;\n }\n ShowCardAction.prototype.updateCssClasses = function () {\n _super.prototype.updateCssClasses.call(this);\n if (this.renderedElement) {\n var effectiveHostConfig = this.parent ? this.parent.hostConfig : host_config_1.defaultHostConfig;\n this.renderedElement.classList.add(effectiveHostConfig.makeCssClassName(\"expandable\"));\n this.renderedElement.setAttribute(\"aria-expanded\", (this.state === 1 /* Expanded */).toString());\n }\n };\n ShowCardAction.prototype.internalParse = function (source, context) {\n _super.prototype.internalParse.call(this, source, context);\n var jsonCard = source[\"card\"];\n if (jsonCard) {\n this.card.parse(jsonCard, context);\n }\n else {\n context.logParseEvent(this, Enums.ValidationEvent.PropertyCantBeNull, strings_1.Strings.errors.showCardMustHaveCard());\n }\n };\n ShowCardAction.prototype.internalToJSON = function (target, context) {\n _super.prototype.internalToJSON.call(this, target, context);\n if (this.card) {\n context.serializeValue(target, \"card\", this.card.toJSON(context));\n }\n };\n ShowCardAction.prototype.raiseExecuteActionEvent = function () {\n if (this.hostConfig.actions.showCard.actionMode === Enums.ShowCardActionMode.Popup) {\n // Only raise the event in Popup mode.\n _super.prototype.raiseExecuteActionEvent.call(this);\n }\n };\n ShowCardAction.prototype.releaseDOMResources = function () {\n _super.prototype.releaseDOMResources.call(this);\n this.card.releaseDOMResources();\n };\n ShowCardAction.prototype.getJsonTypeName = function () {\n return ShowCardAction.JsonTypeName;\n };\n ShowCardAction.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n this.card.internalValidateProperties(context);\n };\n ShowCardAction.prototype.setParent = function (value) {\n _super.prototype.setParent.call(this, value);\n this.card.setParent(value);\n };\n ShowCardAction.prototype.getAllInputs = function (processActions) {\n if (processActions === void 0) { processActions = true; }\n return this.card.getAllInputs(processActions);\n };\n ShowCardAction.prototype.getAllActions = function () {\n var result = _super.prototype.getAllActions.call(this);\n result.push.apply(result, this.card.getAllActions());\n return result;\n };\n ShowCardAction.prototype.getResourceInformation = function () {\n var result = _super.prototype.getResourceInformation.call(this);\n result.push.apply(result, this.card.getResourceInformation());\n return result;\n };\n ShowCardAction.prototype.getActionById = function (id) {\n var result = _super.prototype.getActionById.call(this, id);\n if (!result) {\n result = this.card.getActionById(id);\n }\n return result;\n };\n // Note the \"weird\" way this field is declared is to work around a breaking\n // change introduced in TS 3.1 wrt d.ts generation. DO NOT CHANGE\n ShowCardAction.JsonTypeName = \"Action.ShowCard\";\n return ShowCardAction;\n}(Action));\nexports.ShowCardAction = ShowCardAction;\nvar OverflowAction = /** @class */ (function (_super) {\n __extends(OverflowAction, _super);\n function OverflowAction(actions) {\n var _this = _super.call(this) || this;\n _this._actions = actions;\n _this.title = strings_1.Strings.defaults.overflowButtonText();\n _this.tooltip = strings_1.Strings.defaults.overflowButtonTooltip();\n return _this;\n }\n OverflowAction.prototype.getActions = function () {\n return this._actions;\n };\n OverflowAction.prototype.getAllActions = function () {\n var result = _super.prototype.getAllActions.call(this);\n result.push.apply(result, this._actions);\n return result;\n };\n OverflowAction.prototype.getJsonTypeName = function () {\n return ShowCardAction.JsonTypeName;\n };\n OverflowAction.prototype.execute = function () {\n var _this = this;\n var _a;\n var shouldDisplayPopupMenu = !raiseDisplayOverflowActionMenuEvent(this, this.renderedElement);\n if (shouldDisplayPopupMenu && this.renderedElement) {\n var contextMenu_1 = new controls_1.PopupMenu();\n contextMenu_1.hostConfig = this.hostConfig;\n var _loop_2 = function (i) {\n var menuItem = new controls_1.MenuItem(i.toString(), (_a = this_1._actions[i].title) !== null && _a !== void 0 ? _a : \"\");\n menuItem.isEnabled = this_1._actions[i].isEnabled;\n menuItem.onClick = function () {\n var actionToExecute = _this._actions[i];\n contextMenu_1.closePopup(false);\n if (actionToExecute.isEnabled) {\n actionToExecute.execute();\n }\n };\n contextMenu_1.items.add(menuItem);\n };\n var this_1 = this;\n for (var i = 0; i < this._actions.length; i++) {\n _loop_2(i);\n }\n contextMenu_1.onClose = function () {\n var _a;\n (_a = _this.renderedElement) === null || _a === void 0 ? void 0 : _a.setAttribute(\"aria-expanded\", \"false\");\n };\n this.renderedElement.setAttribute(\"aria-expanded\", \"true\");\n contextMenu_1.popup(this.renderedElement);\n }\n };\n OverflowAction.prototype.setupElementForAccessibility = function (element, promoteTooltipToLabel) {\n if (promoteTooltipToLabel === void 0) { promoteTooltipToLabel = false; }\n _super.prototype.setupElementForAccessibility.call(this, element, promoteTooltipToLabel);\n element.setAttribute(\"aria-label\", strings_1.Strings.defaults.overflowButtonTooltip());\n element.setAttribute(\"aria-expanded\", \"false\");\n };\n OverflowAction.JsonTypeName = \"Action.Overflow\";\n return OverflowAction;\n}(Action));\nvar ActionCollection = /** @class */ (function () {\n function ActionCollection(owner) {\n this._items = [];\n this._renderedActions = [];\n this._owner = owner;\n }\n ActionCollection.prototype.isActionAllowed = function (action) {\n var forbiddenTypes = this._owner.getForbiddenActionTypes();\n if (forbiddenTypes) {\n for (var _i = 0, forbiddenTypes_1 = forbiddenTypes; _i < forbiddenTypes_1.length; _i++) {\n var forbiddenType = forbiddenTypes_1[_i];\n if (action.constructor === forbiddenType) {\n return false;\n }\n }\n }\n return true;\n };\n ActionCollection.prototype.refreshContainer = function () {\n clearElement(this._actionCardContainer);\n if (!this._actionCard) {\n this._actionCardContainer.style.marginTop = \"0px\";\n return;\n }\n this._actionCardContainer.style.marginTop =\n this.renderedActionCount > 0\n ? this._owner.hostConfig.actions.showCard.inlineTopMargin + \"px\"\n : \"0px\";\n var padding = this._owner.getEffectivePadding();\n this._owner.getImmediateSurroundingPadding(padding);\n var physicalPadding = this._owner.hostConfig.paddingDefinitionToSpacingDefinition(padding);\n if (this._actionCard) {\n this._actionCard.style.paddingLeft = physicalPadding.left + \"px\";\n this._actionCard.style.paddingRight = physicalPadding.right + \"px\";\n this._actionCard.style.marginLeft = \"-\" + physicalPadding.left + \"px\";\n this._actionCard.style.marginRight = \"-\" + physicalPadding.right + \"px\";\n if (physicalPadding.bottom !== 0 && !this._owner.isDesignMode()) {\n this._actionCard.style.paddingBottom = physicalPadding.bottom + \"px\";\n this._actionCard.style.marginBottom = \"-\" + physicalPadding.bottom + \"px\";\n }\n Utils.appendChild(this._actionCardContainer, this._actionCard);\n }\n };\n ActionCollection.prototype.layoutChanged = function () {\n this._owner.getRootElement().updateLayout();\n };\n ActionCollection.prototype.showActionCard = function (action, suppressStyle, raiseEvent) {\n if (suppressStyle === void 0) { suppressStyle = false; }\n if (raiseEvent === void 0) { raiseEvent = true; }\n action.card.suppressStyle = suppressStyle;\n // Always re-render a ShowCard action in design mode; reuse already rendered ShowCard (if available) otherwise\n var renderedCard = action.card.renderedElement && !this._owner.isDesignMode()\n ? action.card.renderedElement\n : action.card.render();\n this._actionCard = renderedCard;\n this._expandedAction = action;\n this.refreshContainer();\n if (raiseEvent) {\n this.layoutChanged();\n raiseInlineCardExpandedEvent(action, true);\n }\n };\n ActionCollection.prototype.collapseExpandedAction = function () {\n for (var _i = 0, _a = this._renderedActions; _i < _a.length; _i++) {\n var action = _a[_i];\n action.state = 0 /* Normal */;\n }\n var previouslyExpandedAction = this._expandedAction;\n this._expandedAction = undefined;\n this._actionCard = undefined;\n this.refreshContainer();\n if (previouslyExpandedAction) {\n this.layoutChanged();\n raiseInlineCardExpandedEvent(previouslyExpandedAction, false);\n }\n };\n ActionCollection.prototype.expandShowCardAction = function (action, raiseEvent) {\n var _this = this;\n var afterSelectedAction = false;\n for (var _i = 0, _a = this._renderedActions; _i < _a.length; _i++) {\n var renderedAction = _a[_i];\n // Remove actions after selected action from tabOrder if the actions are oriented horizontally, to skip focus directly to expanded card\n if (this._owner.hostConfig.actions.actionsOrientation == Enums.Orientation.Horizontal &&\n afterSelectedAction) {\n renderedAction.isFocusable = false;\n }\n if (renderedAction !== action) {\n renderedAction.state = 2 /* Subdued */;\n }\n else {\n renderedAction.state = 1 /* Expanded */;\n afterSelectedAction = true;\n if (renderedAction.renderedElement) {\n renderedAction.renderedElement.onblur = function (_e) {\n for (var _i = 0, _a = _this._renderedActions; _i < _a.length; _i++) {\n var ra = _a[_i];\n ra.isFocusable = true;\n }\n };\n }\n }\n }\n this.showActionCard(action, !(this._owner.isAtTheVeryLeft() && this._owner.isAtTheVeryRight()), raiseEvent);\n };\n ActionCollection.prototype.releaseDOMResources = function () {\n for (var _i = 0, _a = this._renderedActions; _i < _a.length; _i++) {\n var action = _a[_i];\n action.releaseDOMResources();\n }\n };\n ActionCollection.prototype.actionExecuted = function (action) {\n if (!(action instanceof ShowCardAction)) {\n this.collapseExpandedAction();\n }\n else {\n if (action === this._expandedAction) {\n this.collapseExpandedAction();\n }\n else if (this._owner.hostConfig.actions.showCard.actionMode ===\n Enums.ShowCardActionMode.Inline) {\n this.expandShowCardAction(action, true);\n }\n }\n };\n ActionCollection.prototype.parse = function (source, context) {\n this.clear();\n if (Array.isArray(source)) {\n for (var _i = 0, source_1 = source; _i < source_1.length; _i++) {\n var jsonAction = source_1[_i];\n var forbiddenActions = [];\n // If the action owner is a ContainerWithActions, we should check for forbidden actions\n if (this._owner instanceof ContainerWithActions) {\n forbiddenActions = this._owner.getForbiddenActionNames();\n }\n var action = context.parseAction(this._owner, jsonAction, forbiddenActions, !this._owner.isDesignMode());\n if (action) {\n this.addAction(action);\n }\n }\n }\n };\n ActionCollection.prototype.toJSON = function (target, propertyName, context) {\n context.serializeArray(target, propertyName, this._items);\n };\n ActionCollection.prototype.getActionAt = function (id) {\n return this._items[id];\n };\n ActionCollection.prototype.getActionCount = function () {\n return this._items.length;\n };\n ActionCollection.prototype.getActionById = function (id) {\n var result = undefined;\n for (var _i = 0, _a = this._items; _i < _a.length; _i++) {\n var item = _a[_i];\n result = item.getActionById(id);\n if (result) {\n break;\n }\n }\n return result;\n };\n ActionCollection.prototype.validateProperties = function (context) {\n if (this._owner.hostConfig.actions.maxActions &&\n this._items.length > this._owner.hostConfig.actions.maxActions) {\n context.addFailure(this._owner, Enums.ValidationEvent.TooManyActions, strings_1.Strings.errors.tooManyActions(this._owner.hostConfig.actions.maxActions));\n }\n if (this._items.length > 0 && !this._owner.hostConfig.supportsInteractivity) {\n context.addFailure(this._owner, Enums.ValidationEvent.InteractivityNotAllowed, strings_1.Strings.errors.interactivityNotAllowed());\n }\n for (var _i = 0, _a = this._items; _i < _a.length; _i++) {\n var item = _a[_i];\n if (!this.isActionAllowed(item)) {\n context.addFailure(this._owner, Enums.ValidationEvent.ActionTypeNotAllowed, strings_1.Strings.errors.actionTypeNotAllowed(item.getJsonTypeName()));\n }\n item.internalValidateProperties(context);\n }\n };\n ActionCollection.prototype.render = function (orientation) {\n // Cache hostConfig for better perf\n var hostConfig = this._owner.hostConfig;\n if (!hostConfig.supportsInteractivity) {\n return undefined;\n }\n var element = document.createElement(\"div\");\n var maxActions = hostConfig.actions.maxActions\n ? Math.min(hostConfig.actions.maxActions, this._items.length)\n : this._items.length;\n this._actionCardContainer = document.createElement(\"div\");\n this._renderedActions = [];\n if (hostConfig.actions.preExpandSingleShowCardAction &&\n maxActions === 1 &&\n this._items[0] instanceof ShowCardAction &&\n this.isActionAllowed(this._items[0])) {\n this.showActionCard(this._items[0], true);\n this._renderedActions.push(this._items[0]);\n }\n else {\n var buttonStrip = document.createElement(\"div\");\n buttonStrip.className = hostConfig.makeCssClassName(\"ac-actionSet\");\n buttonStrip.style.display = \"flex\";\n if (orientation === Enums.Orientation.Horizontal) {\n buttonStrip.style.flexDirection = \"row\";\n if (this._owner.horizontalAlignment &&\n hostConfig.actions.actionAlignment !== Enums.ActionAlignment.Stretch) {\n switch (this._owner.horizontalAlignment) {\n case Enums.HorizontalAlignment.Center:\n buttonStrip.style.justifyContent = \"center\";\n break;\n case Enums.HorizontalAlignment.Right:\n buttonStrip.style.justifyContent = \"flex-end\";\n break;\n default:\n buttonStrip.style.justifyContent = \"flex-start\";\n break;\n }\n }\n else {\n switch (hostConfig.actions.actionAlignment) {\n case Enums.ActionAlignment.Center:\n buttonStrip.style.justifyContent = \"center\";\n break;\n case Enums.ActionAlignment.Right:\n buttonStrip.style.justifyContent = \"flex-end\";\n break;\n default:\n buttonStrip.style.justifyContent = \"flex-start\";\n break;\n }\n }\n }\n else {\n buttonStrip.style.flexDirection = \"column\";\n if (this._owner.horizontalAlignment &&\n hostConfig.actions.actionAlignment !== Enums.ActionAlignment.Stretch) {\n switch (this._owner.horizontalAlignment) {\n case Enums.HorizontalAlignment.Center:\n buttonStrip.style.alignItems = \"center\";\n break;\n case Enums.HorizontalAlignment.Right:\n buttonStrip.style.alignItems = \"flex-end\";\n break;\n default:\n buttonStrip.style.alignItems = \"flex-start\";\n break;\n }\n }\n else {\n switch (hostConfig.actions.actionAlignment) {\n case Enums.ActionAlignment.Center:\n buttonStrip.style.alignItems = \"center\";\n break;\n case Enums.ActionAlignment.Right:\n buttonStrip.style.alignItems = \"flex-end\";\n break;\n case Enums.ActionAlignment.Stretch:\n buttonStrip.style.alignItems = \"stretch\";\n break;\n default:\n buttonStrip.style.alignItems = \"flex-start\";\n break;\n }\n }\n }\n var allowedActions = this._items.filter(this.isActionAllowed.bind(this));\n var primaryActions_1 = [];\n var secondaryActions_1 = [];\n if (!this._owner.isDesignMode()) {\n allowedActions.forEach(function (action) {\n return action.mode === Enums.ActionMode.Secondary\n ? secondaryActions_1.push(action)\n : primaryActions_1.push(action);\n });\n // If primaryActions.length > maxActions, extra actions are moved to overflow\n var overflowPrimaryActions = primaryActions_1.splice(hostConfig.actions.maxActions);\n if (shared_1.GlobalSettings.allowMoreThanMaxActionsInOverflowMenu) {\n secondaryActions_1.push.apply(secondaryActions_1, overflowPrimaryActions);\n }\n var shouldRenderOverflowActionButton = true;\n if (secondaryActions_1.length > 0) {\n if (!this._overflowAction) {\n this._overflowAction = new OverflowAction(secondaryActions_1);\n this._overflowAction.setParent(this._owner);\n this._overflowAction[\"_actionCollection\"] = this;\n }\n var isRootAction = this._owner instanceof AdaptiveCard && !this._owner.parent;\n shouldRenderOverflowActionButton = !raiseRenderOverflowActionsEvent(this._overflowAction, isRootAction);\n }\n if (this._overflowAction && shouldRenderOverflowActionButton) {\n primaryActions_1.push(this._overflowAction);\n }\n }\n else {\n primaryActions_1 = allowedActions;\n }\n for (var i = 0; i < primaryActions_1.length; i++) {\n var action = primaryActions_1[i];\n action.render();\n if (action.renderedElement) {\n if (hostConfig.actions.actionsOrientation === Enums.Orientation.Horizontal &&\n hostConfig.actions.actionAlignment === Enums.ActionAlignment.Stretch) {\n action.renderedElement.style.flex = \"0 1 100%\";\n }\n else {\n action.renderedElement.style.flex = \"0 1 auto\";\n }\n buttonStrip.appendChild(action.renderedElement);\n this._renderedActions.push(action);\n if (i < primaryActions_1.length - 1 && hostConfig.actions.buttonSpacing > 0) {\n var spacer = document.createElement(\"div\");\n if (orientation === Enums.Orientation.Horizontal) {\n spacer.style.flex = \"0 0 auto\";\n spacer.style.width = hostConfig.actions.buttonSpacing + \"px\";\n }\n else {\n spacer.style.height = hostConfig.actions.buttonSpacing + \"px\";\n }\n Utils.appendChild(buttonStrip, spacer);\n }\n }\n }\n var buttonStripContainer = document.createElement(\"div\");\n buttonStripContainer.style.overflow = \"hidden\";\n buttonStripContainer.appendChild(buttonStrip);\n Utils.appendChild(element, buttonStripContainer);\n }\n Utils.appendChild(element, this._actionCardContainer);\n for (var _i = 0, _a = this._renderedActions; _i < _a.length; _i++) {\n var renderedAction = _a[_i];\n if (renderedAction.state === 1 /* Expanded */) {\n this.expandShowCardAction(renderedAction, false);\n break;\n }\n }\n return this._renderedActions.length > 0 ? element : undefined;\n };\n ActionCollection.prototype.addAction = function (action) {\n if (!action) {\n throw new Error(\"The action parameter cannot be null.\");\n }\n if ((!action.parent || action.parent === this._owner) && this._items.indexOf(action) < 0) {\n this._items.push(action);\n if (!action.parent) {\n action.setParent(this._owner);\n }\n action[\"_actionCollection\"] = this;\n }\n else {\n throw new Error(strings_1.Strings.errors.actionAlreadyParented());\n }\n };\n ActionCollection.prototype.removeAction = function (action) {\n if (this.expandedAction && this._expandedAction === action) {\n this.collapseExpandedAction();\n }\n var actionIndex = this._items.indexOf(action);\n if (actionIndex >= 0) {\n this._items.splice(actionIndex, 1);\n action.setParent(undefined);\n action[\"_actionCollection\"] = undefined;\n for (var i = 0; i < this._renderedActions.length; i++) {\n if (this._renderedActions[i] === action) {\n this._renderedActions.splice(i, 1);\n break;\n }\n }\n return true;\n }\n return false;\n };\n ActionCollection.prototype.clear = function () {\n this._items = [];\n this._renderedActions = [];\n this._expandedAction = undefined;\n };\n ActionCollection.prototype.getAllInputs = function (processActions) {\n if (processActions === void 0) { processActions = true; }\n var result = [];\n if (processActions) {\n for (var _i = 0, _a = this._items; _i < _a.length; _i++) {\n var action = _a[_i];\n result.push.apply(result, action.getAllInputs());\n }\n }\n return result;\n };\n ActionCollection.prototype.getResourceInformation = function () {\n var result = [];\n for (var _i = 0, _a = this._items; _i < _a.length; _i++) {\n var action = _a[_i];\n result.push.apply(result, action.getResourceInformation());\n }\n return result;\n };\n Object.defineProperty(ActionCollection.prototype, \"renderedActionCount\", {\n get: function () {\n return this._renderedActions.length;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ActionCollection.prototype, \"expandedAction\", {\n get: function () {\n return this._expandedAction;\n },\n enumerable: false,\n configurable: true\n });\n return ActionCollection;\n}());\nvar ActionSet = /** @class */ (function (_super) {\n __extends(ActionSet, _super);\n function ActionSet() {\n var _this = _super.call(this) || this;\n _this._actionCollection = new ActionCollection(_this);\n return _this;\n }\n ActionSet.prototype.internalParse = function (source, context) {\n _super.prototype.internalParse.call(this, source, context);\n this._actionCollection.parse(source[\"actions\"], context);\n };\n ActionSet.prototype.internalToJSON = function (target, context) {\n _super.prototype.internalToJSON.call(this, target, context);\n this._actionCollection.toJSON(target, \"actions\", context);\n };\n ActionSet.prototype.internalRender = function () {\n return this._actionCollection.render(this.orientation !== undefined\n ? this.orientation\n : this.hostConfig.actions.actionsOrientation);\n };\n ActionSet.prototype.releaseDOMResources = function () {\n _super.prototype.releaseDOMResources.call(this);\n this._actionCollection.releaseDOMResources();\n };\n ActionSet.prototype.isBleedingAtBottom = function () {\n if (this._actionCollection.renderedActionCount === 0) {\n return _super.prototype.isBleedingAtBottom.call(this);\n }\n else {\n if (this._actionCollection.getActionCount() === 1) {\n return (this._actionCollection.expandedAction !== undefined &&\n !this.hostConfig.actions.preExpandSingleShowCardAction);\n }\n else {\n return this._actionCollection.expandedAction !== undefined;\n }\n }\n };\n ActionSet.prototype.getJsonTypeName = function () {\n return \"ActionSet\";\n };\n ActionSet.prototype.getActionCount = function () {\n return this._actionCollection.getActionCount();\n };\n ActionSet.prototype.getActionAt = function (index) {\n if (index >= 0 && index < this.getActionCount()) {\n return this._actionCollection.getActionAt(index);\n }\n else {\n return _super.prototype.getActionAt.call(this, index);\n }\n };\n ActionSet.prototype.getActionById = function (id) {\n var result = this._actionCollection.getActionById(id);\n return result ? result : _super.prototype.getActionById.call(this, id);\n };\n ActionSet.prototype.getAllActions = function () {\n var result = _super.prototype.getAllActions.call(this);\n for (var i = 0; i < this.getActionCount(); i++) {\n var action = this.getActionAt(i);\n if (action) {\n result.push(action);\n }\n }\n return result;\n };\n ActionSet.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n this._actionCollection.validateProperties(context);\n };\n ActionSet.prototype.addAction = function (action) {\n this._actionCollection.addAction(action);\n };\n ActionSet.prototype.getAllInputs = function (processActions) {\n if (processActions === void 0) { processActions = true; }\n return processActions ? this._actionCollection.getAllInputs() : [];\n };\n ActionSet.prototype.getResourceInformation = function () {\n return this._actionCollection.getResourceInformation();\n };\n /**\n * @inheritdoc\n */\n ActionSet.prototype.findDOMNodeOwner = function (node) {\n var target = undefined;\n for (var i = 0; i < this.getActionCount(); i++) {\n var action = this.getActionAt(i);\n if (action) {\n // recur through each Action\n target = action.findDOMNodeOwner(node);\n if (target) {\n return target;\n }\n }\n }\n // if not found in any Action, defer to parent implementation\n return _super.prototype.findDOMNodeOwner.call(this, node);\n };\n ActionSet.prototype.getElementById = function (id) {\n var result = _super.prototype.getElementById.call(this, id);\n if (!result) {\n result = this.getElementByIdFromAction(id);\n }\n return result;\n };\n Object.defineProperty(ActionSet.prototype, \"isInteractive\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n //#region Schema\n ActionSet.orientationProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_1, \"orientation\", Enums.Orientation);\n __decorate([\n (0, serialization_1.property)(ActionSet.orientationProperty)\n ], ActionSet.prototype, \"orientation\", void 0);\n return ActionSet;\n}(CardElement));\nexports.ActionSet = ActionSet;\nvar ContainerStyleProperty = /** @class */ (function (_super) {\n __extends(ContainerStyleProperty, _super);\n function ContainerStyleProperty(targetVersion, name, defaultValue, onGetInitialValue) {\n var _this = _super.call(this, targetVersion, name, [\n { value: Enums.ContainerStyle.Default },\n { value: Enums.ContainerStyle.Emphasis },\n { targetVersion: serialization_1.Versions.v1_2, value: Enums.ContainerStyle.Accent },\n { targetVersion: serialization_1.Versions.v1_2, value: Enums.ContainerStyle.Good },\n { targetVersion: serialization_1.Versions.v1_2, value: Enums.ContainerStyle.Attention },\n { targetVersion: serialization_1.Versions.v1_2, value: Enums.ContainerStyle.Warning }\n ], defaultValue, onGetInitialValue) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.defaultValue = defaultValue;\n _this.onGetInitialValue = onGetInitialValue;\n return _this;\n }\n return ContainerStyleProperty;\n}(serialization_1.ValueSetProperty));\nexports.ContainerStyleProperty = ContainerStyleProperty;\nvar StylableCardElementContainer = /** @class */ (function (_super) {\n __extends(StylableCardElementContainer, _super);\n function StylableCardElementContainer() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Object.defineProperty(StylableCardElementContainer.prototype, \"style\", {\n get: function () {\n if (this.allowCustomStyle) {\n var style = this.getValue(StylableCardElementContainer.styleProperty);\n if (style && this.hostConfig.containerStyles.getStyleByName(style)) {\n return style;\n }\n }\n return undefined;\n },\n set: function (value) {\n this.setValue(StylableCardElementContainer.styleProperty, value);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(StylableCardElementContainer.prototype, \"allowCustomStyle\", {\n //#endregion\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(StylableCardElementContainer.prototype, \"hasExplicitStyle\", {\n get: function () {\n return this.getValue(StylableCardElementContainer.styleProperty) !== undefined;\n },\n enumerable: false,\n configurable: true\n });\n StylableCardElementContainer.prototype.applyBorder = function () {\n // No border in base implementation\n };\n StylableCardElementContainer.prototype.applyBackground = function () {\n if (this.renderedElement) {\n var styleDefinition = this.hostConfig.containerStyles.getStyleByName(this.style, this.hostConfig.containerStyles.getStyleByName(this.defaultStyle));\n if (styleDefinition.backgroundColor) {\n var bgColor = Utils.stringToCssColor(styleDefinition.backgroundColor);\n if (bgColor) {\n this.renderedElement.style.backgroundColor = bgColor;\n }\n }\n }\n };\n StylableCardElementContainer.prototype.applyPadding = function () {\n _super.prototype.applyPadding.call(this);\n if (!this.renderedElement) {\n return;\n }\n var physicalPadding = new shared_1.SpacingDefinition();\n if (this.getEffectivePadding()) {\n physicalPadding = this.hostConfig.paddingDefinitionToSpacingDefinition(this.getEffectivePadding());\n }\n this.renderedElement.style.paddingTop = physicalPadding.top + \"px\";\n this.renderedElement.style.paddingRight = physicalPadding.right + \"px\";\n this.renderedElement.style.paddingBottom = physicalPadding.bottom + \"px\";\n this.renderedElement.style.paddingLeft = physicalPadding.left + \"px\";\n if (this.isBleeding()) {\n // Bleed into the first parent that does have padding\n var padding = new shared_1.PaddingDefinition();\n this.getImmediateSurroundingPadding(padding);\n var surroundingPadding = this.hostConfig.paddingDefinitionToSpacingDefinition(padding);\n this.renderedElement.style.marginRight = \"-\" + surroundingPadding.right + \"px\";\n this.renderedElement.style.marginLeft = \"-\" + surroundingPadding.left + \"px\";\n if (!this.isDesignMode()) {\n this.renderedElement.style.marginTop = \"-\" + surroundingPadding.top + \"px\";\n this.renderedElement.style.marginBottom = \"-\" + surroundingPadding.bottom + \"px\";\n }\n if (this.separatorElement &&\n this.separatorOrientation === Enums.Orientation.Horizontal) {\n this.separatorElement.style.marginLeft = \"-\" + surroundingPadding.left + \"px\";\n this.separatorElement.style.marginRight = \"-\" + surroundingPadding.right + \"px\";\n }\n }\n else {\n this.renderedElement.style.marginRight = \"0\";\n this.renderedElement.style.marginLeft = \"0\";\n this.renderedElement.style.marginTop = \"0\";\n this.renderedElement.style.marginBottom = \"0\";\n if (this.separatorElement &&\n this.separatorOrientation === Enums.Orientation.Horizontal) {\n this.separatorElement.style.marginRight = \"0\";\n this.separatorElement.style.marginLeft = \"0\";\n }\n }\n };\n StylableCardElementContainer.prototype.getHasBackground = function (ignoreBackgroundImages) {\n if (ignoreBackgroundImages === void 0) { ignoreBackgroundImages = false; }\n var currentElement = this.parent;\n while (currentElement) {\n var currentElementHasBackgroundImage = false;\n if (ignoreBackgroundImages) {\n currentElementHasBackgroundImage = false;\n }\n else {\n currentElementHasBackgroundImage =\n currentElement instanceof Container\n ? currentElement.backgroundImage.isValid()\n : false;\n }\n if (currentElement instanceof StylableCardElementContainer) {\n if (this.hasExplicitStyle &&\n (currentElement.getEffectiveStyle() !== this.getEffectiveStyle() ||\n currentElementHasBackgroundImage)) {\n return true;\n }\n }\n currentElement = currentElement.parent;\n }\n return false;\n };\n StylableCardElementContainer.prototype.getDefaultPadding = function () {\n return this.getHasBackground() || this.getHasBorder()\n ? new shared_1.PaddingDefinition(Enums.Spacing.Padding, Enums.Spacing.Padding, Enums.Spacing.Padding, Enums.Spacing.Padding)\n : _super.prototype.getDefaultPadding.call(this);\n };\n StylableCardElementContainer.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n var explicitStyle = this.getValue(StylableCardElementContainer.styleProperty);\n if (explicitStyle !== undefined) {\n var styleDefinition = this.hostConfig.containerStyles.getStyleByName(explicitStyle);\n if (!styleDefinition) {\n context.addFailure(this, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidPropertyValue(explicitStyle, \"style\"));\n }\n }\n };\n StylableCardElementContainer.prototype.render = function () {\n var renderedElement = _super.prototype.render.call(this);\n if (renderedElement && this.getHasBackground()) {\n this.applyBackground();\n }\n this.applyBorder();\n return renderedElement;\n };\n StylableCardElementContainer.prototype.getEffectiveStyle = function () {\n var effectiveStyle = this.style;\n return effectiveStyle ? effectiveStyle : _super.prototype.getEffectiveStyle.call(this);\n };\n //#region Schema\n StylableCardElementContainer.styleProperty = new ContainerStyleProperty(serialization_1.Versions.v1_0, \"style\");\n __decorate([\n (0, serialization_1.property)(StylableCardElementContainer.styleProperty)\n ], StylableCardElementContainer.prototype, \"style\", null);\n return StylableCardElementContainer;\n}(CardElementContainer));\nexports.StylableCardElementContainer = StylableCardElementContainer;\nvar ContainerBase = /** @class */ (function (_super) {\n __extends(ContainerBase, _super);\n function ContainerBase() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._bleed = false;\n return _this;\n }\n //#endregion\n ContainerBase.prototype.adjustRenderedElementSize = function (renderedElement) {\n _super.prototype.adjustRenderedElementSize.call(this, renderedElement);\n if (this.minPixelHeight) {\n renderedElement.style.minHeight = this.minPixelHeight + \"px\";\n }\n };\n ContainerBase.prototype.getHasExpandedAction = function () {\n return false;\n };\n ContainerBase.prototype.getBleed = function () {\n return this._bleed;\n };\n ContainerBase.prototype.setBleed = function (value) {\n this._bleed = value;\n };\n Object.defineProperty(ContainerBase.prototype, \"renderedActionCount\", {\n get: function () {\n return 0;\n },\n enumerable: false,\n configurable: true\n });\n ContainerBase.prototype.isBleeding = function () {\n return (this.getHasBackground() || this.hostConfig.alwaysAllowBleed) && this.getBleed();\n };\n ContainerBase.bleedProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_2, \"bleed\", false);\n ContainerBase.minHeightProperty = new serialization_1.PixelSizeProperty(serialization_1.Versions.v1_2, \"minHeight\");\n __decorate([\n (0, serialization_1.property)(ContainerBase.bleedProperty)\n ], ContainerBase.prototype, \"_bleed\", void 0);\n __decorate([\n (0, serialization_1.property)(ContainerBase.minHeightProperty)\n ], ContainerBase.prototype, \"minPixelHeight\", void 0);\n return ContainerBase;\n}(StylableCardElementContainer));\nexports.ContainerBase = ContainerBase;\nvar BackgroundImage = /** @class */ (function (_super) {\n __extends(BackgroundImage, _super);\n function BackgroundImage() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n //#endregion\n BackgroundImage.prototype.getSchemaKey = function () {\n return \"BackgroundImage\";\n };\n BackgroundImage.prototype.internalParse = function (source, context) {\n if (typeof source === \"string\") {\n this.resetDefaultValues();\n this.url = source;\n }\n else {\n return _super.prototype.internalParse.call(this, source, context);\n }\n };\n BackgroundImage.prototype.apply = function (element) {\n if (this.url && element.renderedElement) {\n element.renderedElement.style.backgroundImage =\n \"url('\" +\n element.preProcessPropertyValue(BackgroundImage.urlProperty, this.url) +\n \"')\";\n switch (this.fillMode) {\n case Enums.FillMode.Repeat:\n element.renderedElement.style.backgroundRepeat = \"repeat\";\n break;\n case Enums.FillMode.RepeatHorizontally:\n element.renderedElement.style.backgroundRepeat = \"repeat-x\";\n break;\n case Enums.FillMode.RepeatVertically:\n element.renderedElement.style.backgroundRepeat = \"repeat-y\";\n break;\n case Enums.FillMode.Cover:\n default:\n element.renderedElement.style.backgroundRepeat = \"no-repeat\";\n element.renderedElement.style.backgroundSize = \"cover\";\n break;\n }\n switch (this.horizontalAlignment) {\n case Enums.HorizontalAlignment.Left:\n break;\n case Enums.HorizontalAlignment.Center:\n element.renderedElement.style.backgroundPositionX = \"center\";\n break;\n case Enums.HorizontalAlignment.Right:\n element.renderedElement.style.backgroundPositionX = \"right\";\n break;\n }\n switch (this.verticalAlignment) {\n case Enums.VerticalAlignment.Top:\n break;\n case Enums.VerticalAlignment.Center:\n element.renderedElement.style.backgroundPositionY = \"center\";\n break;\n case Enums.VerticalAlignment.Bottom:\n element.renderedElement.style.backgroundPositionY = \"bottom\";\n break;\n }\n }\n };\n BackgroundImage.prototype.isValid = function () {\n return this.url ? true : false;\n };\n //#region Schema\n BackgroundImage.urlProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"url\");\n BackgroundImage.fillModeProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_2, \"fillMode\", Enums.FillMode, Enums.FillMode.Cover);\n BackgroundImage.horizontalAlignmentProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_2, \"horizontalAlignment\", Enums.HorizontalAlignment, Enums.HorizontalAlignment.Left);\n BackgroundImage.verticalAlignmentProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_2, \"verticalAlignment\", Enums.VerticalAlignment, Enums.VerticalAlignment.Top);\n __decorate([\n (0, serialization_1.property)(BackgroundImage.urlProperty)\n ], BackgroundImage.prototype, \"url\", void 0);\n __decorate([\n (0, serialization_1.property)(BackgroundImage.fillModeProperty)\n ], BackgroundImage.prototype, \"fillMode\", void 0);\n __decorate([\n (0, serialization_1.property)(BackgroundImage.horizontalAlignmentProperty)\n ], BackgroundImage.prototype, \"horizontalAlignment\", void 0);\n __decorate([\n (0, serialization_1.property)(BackgroundImage.verticalAlignmentProperty)\n ], BackgroundImage.prototype, \"verticalAlignment\", void 0);\n return BackgroundImage;\n}(serialization_1.SerializableObject));\nexports.BackgroundImage = BackgroundImage;\nvar Container = /** @class */ (function (_super) {\n __extends(Container, _super);\n function Container() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n //#endregion\n _this._items = [];\n _this._renderedItems = [];\n return _this;\n }\n Object.defineProperty(Container.prototype, \"backgroundImage\", {\n get: function () {\n return this.getValue(Container.backgroundImageProperty);\n },\n enumerable: false,\n configurable: true\n });\n Container.prototype.insertItemAt = function (item, index, forceInsert) {\n if (!item.parent || forceInsert) {\n if (item.isStandalone) {\n if (index < 0 || index >= this._items.length) {\n this._items.push(item);\n }\n else {\n this._items.splice(index, 0, item);\n }\n item.setParent(this);\n }\n else {\n throw new Error(strings_1.Strings.errors.elementTypeNotStandalone(item.getJsonTypeName()));\n }\n }\n else {\n throw new Error(strings_1.Strings.errors.elementAlreadyParented());\n }\n };\n Container.prototype.getItemsCollectionPropertyName = function () {\n return \"items\";\n };\n Container.prototype.applyBackground = function () {\n if (this.backgroundImage.isValid() && this.renderedElement) {\n this.backgroundImage.apply(this);\n }\n _super.prototype.applyBackground.call(this);\n };\n Container.prototype.applyRTL = function (element) {\n if (this.rtl !== undefined) {\n element.dir = this.rtl ? \"rtl\" : \"ltr\";\n }\n };\n Container.prototype.internalRender = function () {\n this._renderedItems = [];\n // Cache hostConfig to avoid walking the parent hierarchy several times\n var hostConfig = this.hostConfig;\n var element = document.createElement(\"div\");\n this.applyRTL(element);\n element.classList.add(hostConfig.makeCssClassName(\"ac-container\"));\n element.style.display = \"flex\";\n element.style.flexDirection = \"column\";\n if (shared_1.GlobalSettings.useAdvancedCardBottomTruncation) {\n // Forces the container to be at least as tall as its content.\n //\n // Fixes a quirk in Chrome where, for nested flex elements, the\n // inner element's height would never exceed the outer element's\n // height. This caused overflow truncation to break -- containers\n // would always be measured as not overflowing, since their heights\n // were constrained by their parents as opposed to truly reflecting\n // the height of their content.\n //\n // See the \"Browser Rendering Notes\" section of this answer:\n // https://stackoverflow.com/questions/36247140/why-doesnt-flex-item-shrink-past-content-size\n element.style.minHeight = \"-webkit-min-content\";\n }\n switch (this.getEffectiveVerticalContentAlignment()) {\n case Enums.VerticalAlignment.Center:\n element.style.justifyContent = \"center\";\n break;\n case Enums.VerticalAlignment.Bottom:\n element.style.justifyContent = \"flex-end\";\n break;\n default:\n element.style.justifyContent = \"flex-start\";\n break;\n }\n if (this._items.length > 0) {\n for (var _i = 0, _a = this._items; _i < _a.length; _i++) {\n var item = _a[_i];\n var renderedItem = this.isElementAllowed(item) ? item.render() : undefined;\n if (renderedItem) {\n if (this._renderedItems.length > 0 && item.separatorElement) {\n item.separatorElement.style.flex = \"0 0 auto\";\n Utils.appendChild(element, item.separatorElement);\n }\n Utils.appendChild(element, renderedItem);\n this._renderedItems.push(item);\n }\n }\n }\n else {\n if (this.isDesignMode()) {\n var placeholderElement = this.createPlaceholderElement();\n placeholderElement.style.width = \"100%\";\n placeholderElement.style.height = \"100%\";\n element.appendChild(placeholderElement);\n }\n }\n return element;\n };\n Container.prototype.truncateOverflow = function (maxHeight) {\n if (this.renderedElement) {\n // Add 1 to account for rounding differences between browsers\n var boundary_1 = this.renderedElement.offsetTop + maxHeight + 1;\n var handleElement_1 = function (cardElement) {\n var elt = cardElement.renderedElement;\n if (elt) {\n switch (Utils.getFitStatus(elt, boundary_1)) {\n case Enums.ContainerFitStatus.FullyInContainer:\n var sizeChanged = cardElement[\"resetOverflow\"]();\n // If the element's size changed after resetting content,\n // we have to check if it still fits fully in the card\n if (sizeChanged) {\n handleElement_1(cardElement);\n }\n break;\n case Enums.ContainerFitStatus.Overflowing:\n var containerMaxHeight = boundary_1 - elt.offsetTop;\n cardElement[\"handleOverflow\"](containerMaxHeight);\n break;\n case Enums.ContainerFitStatus.FullyOutOfContainer:\n cardElement[\"handleOverflow\"](0);\n break;\n }\n }\n };\n for (var _i = 0, _a = this._items; _i < _a.length; _i++) {\n var item = _a[_i];\n handleElement_1(item);\n }\n return true;\n }\n return false;\n };\n Container.prototype.undoOverflowTruncation = function () {\n for (var _i = 0, _a = this._items; _i < _a.length; _i++) {\n var item = _a[_i];\n item[\"resetOverflow\"]();\n }\n };\n Container.prototype.getHasBackground = function (ignoreBackgroundImages) {\n if (ignoreBackgroundImages === void 0) { ignoreBackgroundImages = false; }\n var result = ignoreBackgroundImages ? false : this.backgroundImage.isValid();\n return result || _super.prototype.getHasBackground.call(this, ignoreBackgroundImages);\n };\n Container.prototype.internalParse = function (source, context) {\n _super.prototype.internalParse.call(this, source, context);\n this.clear();\n this.setShouldFallback(false);\n var jsonItems = source[this.getItemsCollectionPropertyName()];\n if (Array.isArray(jsonItems)) {\n for (var _i = 0, jsonItems_1 = jsonItems; _i < jsonItems_1.length; _i++) {\n var item = jsonItems_1[_i];\n var element = context.parseElement(this, item, this.forbiddenChildElements(), !this.isDesignMode());\n if (element) {\n this.insertItemAt(element, -1, true);\n }\n }\n }\n };\n Container.prototype.internalToJSON = function (target, context) {\n _super.prototype.internalToJSON.call(this, target, context);\n var collectionPropertyName = this.getItemsCollectionPropertyName();\n context.serializeArray(target, collectionPropertyName, this._items);\n };\n Object.defineProperty(Container.prototype, \"isSelectable\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n Container.prototype.getEffectivePadding = function () {\n if (shared_1.GlobalSettings.removePaddingFromContainersWithBackgroundImage &&\n !this.getHasBackground(true)) {\n return new shared_1.PaddingDefinition();\n }\n return _super.prototype.getEffectivePadding.call(this);\n };\n Container.prototype.getEffectiveVerticalContentAlignment = function () {\n if (this.verticalContentAlignment !== undefined) {\n return this.verticalContentAlignment;\n }\n var parentContainer = this.getParentContainer();\n return parentContainer\n ? parentContainer.getEffectiveVerticalContentAlignment()\n : Enums.VerticalAlignment.Top;\n };\n Container.prototype.getItemCount = function () {\n return this._items.length;\n };\n Container.prototype.getItemAt = function (index) {\n return this._items[index];\n };\n Container.prototype.getFirstVisibleRenderedItem = function () {\n if (this.renderedElement && this._renderedItems && this._renderedItems.length > 0) {\n for (var _i = 0, _a = this._renderedItems; _i < _a.length; _i++) {\n var item = _a[_i];\n if (item.isVisible) {\n return item;\n }\n }\n }\n return undefined;\n };\n Container.prototype.getLastVisibleRenderedItem = function () {\n if (this.renderedElement && this._renderedItems && this._renderedItems.length > 0) {\n for (var i = this._renderedItems.length - 1; i >= 0; i--) {\n if (this._renderedItems[i].isVisible) {\n return this._renderedItems[i];\n }\n }\n }\n return undefined;\n };\n Container.prototype.getJsonTypeName = function () {\n return \"Container\";\n };\n Container.prototype.isFirstElement = function (element) {\n var designMode = this.isDesignMode();\n for (var _i = 0, _a = this._items; _i < _a.length; _i++) {\n var item = _a[_i];\n if (item.isVisible || designMode) {\n return item === element;\n }\n }\n return false;\n };\n Container.prototype.isLastElement = function (element) {\n var designMode = this.isDesignMode();\n for (var i = this._items.length - 1; i >= 0; i--) {\n if (this._items[i].isVisible || designMode) {\n return this._items[i] === element;\n }\n }\n return false;\n };\n Container.prototype.isRtl = function () {\n if (this.rtl !== undefined) {\n return this.rtl;\n }\n else {\n var parentContainer = this.getParentContainer();\n return parentContainer ? parentContainer.isRtl() : false;\n }\n };\n Container.prototype.isBleedingAtTop = function () {\n var firstRenderedItem = this.getFirstVisibleRenderedItem();\n return (this.isBleeding() || (firstRenderedItem ? firstRenderedItem.isBleedingAtTop() : false));\n };\n Container.prototype.isBleedingAtBottom = function () {\n var lastRenderedItem = this.getLastVisibleRenderedItem();\n return (this.isBleeding() ||\n (lastRenderedItem\n ? lastRenderedItem.isBleedingAtBottom() &&\n lastRenderedItem.getEffectiveStyle() === this.getEffectiveStyle()\n : false));\n };\n Container.prototype.indexOf = function (cardElement) {\n return this._items.indexOf(cardElement);\n };\n Container.prototype.addItem = function (item) {\n this.insertItemAt(item, -1, false);\n };\n Container.prototype.insertItemBefore = function (item, insertBefore) {\n this.insertItemAt(item, this._items.indexOf(insertBefore), false);\n };\n Container.prototype.insertItemAfter = function (item, insertAfter) {\n this.insertItemAt(item, this._items.indexOf(insertAfter) + 1, false);\n };\n Container.prototype.removeItem = function (item) {\n var itemIndex = this._items.indexOf(item);\n if (itemIndex >= 0) {\n this._items.splice(itemIndex, 1);\n item.setParent(undefined);\n this.updateLayout();\n return true;\n }\n return false;\n };\n Container.prototype.clear = function () {\n this._items = [];\n this._renderedItems = [];\n };\n Container.prototype.getResourceInformation = function () {\n var result = _super.prototype.getResourceInformation.call(this);\n if (this.backgroundImage.isValid()) {\n result.push({\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion -- validated by `isValid()`\n url: this.backgroundImage.url,\n mimeType: \"image\"\n });\n }\n return result;\n };\n Container.prototype.getActionById = function (id) {\n var result = _super.prototype.getActionById.call(this, id);\n if (!result) {\n if (this.selectAction) {\n result = this.selectAction.getActionById(id);\n }\n if (!result) {\n for (var _i = 0, _a = this._items; _i < _a.length; _i++) {\n var item = _a[_i];\n result = item.getActionById(id);\n if (result) {\n break;\n }\n }\n }\n }\n return result;\n };\n Object.defineProperty(Container.prototype, \"padding\", {\n get: function () {\n return this.getPadding();\n },\n set: function (value) {\n this.setPadding(value);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Container.prototype, \"selectAction\", {\n get: function () {\n return this._selectAction;\n },\n set: function (value) {\n this._selectAction = value;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Container.prototype, \"bleed\", {\n get: function () {\n return this.getBleed();\n },\n set: function (value) {\n this.setBleed(value);\n },\n enumerable: false,\n configurable: true\n });\n //#region Schema\n Container.backgroundImageProperty = new serialization_1.SerializableObjectProperty(serialization_1.Versions.v1_0, \"backgroundImage\", BackgroundImage);\n Container.verticalContentAlignmentProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_1, \"verticalContentAlignment\", Enums.VerticalAlignment);\n Container.rtlProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_0, \"rtl\");\n __decorate([\n (0, serialization_1.property)(Container.backgroundImageProperty)\n ], Container.prototype, \"backgroundImage\", null);\n __decorate([\n (0, serialization_1.property)(Container.verticalContentAlignmentProperty)\n ], Container.prototype, \"verticalContentAlignment\", void 0);\n __decorate([\n (0, serialization_1.property)(Container.rtlProperty)\n ], Container.prototype, \"rtl\", void 0);\n return Container;\n}(ContainerBase));\nexports.Container = Container;\nvar Column = /** @class */ (function (_super) {\n __extends(Column, _super);\n function Column(width) {\n if (width === void 0) { width = \"stretch\"; }\n var _this = _super.call(this) || this;\n _this.width = \"stretch\";\n //#endregion\n _this._computedWeight = 0;\n _this.width = width;\n return _this;\n }\n Column.prototype.adjustRenderedElementSize = function (renderedElement) {\n var minDesignTimeColumnHeight = 20;\n if (this.isDesignMode()) {\n renderedElement.style.minWidth = \"20px\";\n renderedElement.style.minHeight =\n (!this.minPixelHeight\n ? minDesignTimeColumnHeight\n : Math.max(this.minPixelHeight, minDesignTimeColumnHeight)) + \"px\";\n }\n else {\n renderedElement.style.minWidth = \"0\";\n if (this.minPixelHeight) {\n renderedElement.style.minHeight = this.minPixelHeight + \"px\";\n }\n }\n if (this.width === \"auto\") {\n renderedElement.style.flex = \"0 1 auto\";\n }\n else if (this.width === \"stretch\") {\n renderedElement.style.flex = \"1 1 50px\";\n }\n else if (this.width instanceof shared_1.SizeAndUnit) {\n if (this.width.unit === Enums.SizeUnit.Pixel) {\n renderedElement.style.flex = \"0 0 auto\";\n renderedElement.style.width = this.width.physicalSize + \"px\";\n }\n else {\n renderedElement.style.flex =\n \"1 1 \" +\n (this._computedWeight > 0 ? this._computedWeight : this.width.physicalSize) +\n \"%\";\n }\n }\n };\n Column.prototype.shouldSerialize = function (_context) {\n return true;\n };\n Object.defineProperty(Column.prototype, \"separatorOrientation\", {\n get: function () {\n return Enums.Orientation.Vertical;\n },\n enumerable: false,\n configurable: true\n });\n Column.prototype.getJsonTypeName = function () {\n return \"Column\";\n };\n Object.defineProperty(Column.prototype, \"hasVisibleSeparator\", {\n get: function () {\n if (this.parent && this.parent instanceof ColumnSet) {\n return this.separatorElement !== undefined && !this.parent.isLeftMostElement(this);\n }\n else {\n return false;\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Column.prototype, \"isStandalone\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n //#region Schema\n Column.widthProperty = new serialization_1.CustomProperty(serialization_1.Versions.v1_0, \"width\", function (sender, prop, source, context) {\n var result = prop.defaultValue;\n var value = source[prop.name];\n var invalidWidth = false;\n if (typeof value === \"number\" && !isNaN(value)) {\n result = new shared_1.SizeAndUnit(value, Enums.SizeUnit.Weight);\n }\n else if (value === \"auto\" || value === \"stretch\") {\n result = value;\n }\n else if (typeof value === \"string\") {\n try {\n result = shared_1.SizeAndUnit.parse(value);\n if (result.unit === Enums.SizeUnit.Pixel &&\n prop.targetVersion.compareTo(context.targetVersion) > 0) {\n invalidWidth = true;\n }\n }\n catch (e) {\n invalidWidth = true;\n }\n }\n else {\n invalidWidth = true;\n }\n if (invalidWidth) {\n context.logParseEvent(sender, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidColumnWidth(value));\n result = \"auto\";\n }\n return result;\n }, function (sender, property, target, value, context) {\n if (value instanceof shared_1.SizeAndUnit) {\n if (value.unit === Enums.SizeUnit.Pixel) {\n context.serializeValue(target, \"width\", value.physicalSize + \"px\");\n }\n else {\n context.serializeNumber(target, \"width\", value.physicalSize);\n }\n }\n else {\n context.serializeValue(target, \"width\", value);\n }\n }, \"stretch\");\n __decorate([\n (0, serialization_1.property)(Column.widthProperty)\n ], Column.prototype, \"width\", void 0);\n return Column;\n}(Container));\nexports.Column = Column;\nvar ColumnSet = /** @class */ (function (_super) {\n __extends(ColumnSet, _super);\n function ColumnSet() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._columns = [];\n return _this;\n }\n ColumnSet.prototype.createColumnInstance = function (source, context) {\n return context.parseCardObject(this, source, [], !this.isDesignMode(), function (typeName) {\n return !typeName || typeName === \"Column\" ? new Column() : undefined;\n }, function (typeName, _errorType) {\n context.logParseEvent(undefined, Enums.ValidationEvent.ElementTypeNotAllowed, strings_1.Strings.errors.elementTypeNotAllowed(typeName));\n });\n };\n ColumnSet.prototype.internalRender = function () {\n this._renderedColumns = [];\n if (this._columns.length > 0) {\n // Cache hostConfig to avoid walking the parent hierarchy several times\n var hostConfig = this.hostConfig;\n var element = document.createElement(\"div\");\n element.className = hostConfig.makeCssClassName(\"ac-columnSet\");\n element.style.display = \"flex\";\n if (shared_1.GlobalSettings.useAdvancedCardBottomTruncation) {\n // See comment in Container.internalRender()\n element.style.minHeight = \"-webkit-min-content\";\n }\n switch (this.getEffectiveHorizontalAlignment()) {\n case Enums.HorizontalAlignment.Center:\n element.style.justifyContent = \"center\";\n break;\n case Enums.HorizontalAlignment.Right:\n element.style.justifyContent = \"flex-end\";\n break;\n default:\n element.style.justifyContent = \"flex-start\";\n break;\n }\n var totalWeight = 0;\n for (var _i = 0, _a = this._columns; _i < _a.length; _i++) {\n var column = _a[_i];\n if (column.width instanceof shared_1.SizeAndUnit &&\n column.width.unit === Enums.SizeUnit.Weight) {\n totalWeight += column.width.physicalSize;\n }\n }\n for (var _b = 0, _c = this._columns; _b < _c.length; _b++) {\n var column = _c[_b];\n if (column.width instanceof shared_1.SizeAndUnit &&\n column.width.unit === Enums.SizeUnit.Weight &&\n totalWeight > 0) {\n var computedWeight = (100 / totalWeight) * column.width.physicalSize;\n // Best way to emulate \"internal\" access I know of\n column[\"_computedWeight\"] = computedWeight;\n }\n var renderedColumn = column.render();\n if (renderedColumn) {\n if (this._renderedColumns.length > 0 && column.separatorElement) {\n column.separatorElement.style.flex = \"0 0 auto\";\n Utils.appendChild(element, column.separatorElement);\n }\n Utils.appendChild(element, renderedColumn);\n this._renderedColumns.push(column);\n }\n }\n return this._renderedColumns.length > 0 ? element : undefined;\n }\n else {\n return undefined;\n }\n };\n ColumnSet.prototype.truncateOverflow = function (maxHeight) {\n for (var _i = 0, _a = this._columns; _i < _a.length; _i++) {\n var column = _a[_i];\n column[\"handleOverflow\"](maxHeight);\n }\n return true;\n };\n ColumnSet.prototype.undoOverflowTruncation = function () {\n for (var _i = 0, _a = this._columns; _i < _a.length; _i++) {\n var column = _a[_i];\n column[\"resetOverflow\"]();\n }\n };\n Object.defineProperty(ColumnSet.prototype, \"isSelectable\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n ColumnSet.prototype.internalParse = function (source, context) {\n _super.prototype.internalParse.call(this, source, context);\n this._columns = [];\n this._renderedColumns = [];\n var jsonColumns = source[\"columns\"];\n if (Array.isArray(jsonColumns)) {\n for (var _i = 0, jsonColumns_1 = jsonColumns; _i < jsonColumns_1.length; _i++) {\n var item = jsonColumns_1[_i];\n var column = this.createColumnInstance(item, context);\n if (column) {\n this._columns.push(column);\n }\n }\n }\n };\n ColumnSet.prototype.internalToJSON = function (target, context) {\n _super.prototype.internalToJSON.call(this, target, context);\n context.serializeArray(target, \"columns\", this._columns);\n };\n ColumnSet.prototype.isFirstElement = function (element) {\n for (var _i = 0, _a = this._columns; _i < _a.length; _i++) {\n var column = _a[_i];\n if (column.isVisible) {\n return column === element;\n }\n }\n return false;\n };\n ColumnSet.prototype.isBleedingAtTop = function () {\n if (this.isBleeding()) {\n return true;\n }\n if (this._renderedColumns && this._renderedColumns.length > 0) {\n for (var _i = 0, _a = this._columns; _i < _a.length; _i++) {\n var column = _a[_i];\n if (column.isBleedingAtTop()) {\n return true;\n }\n }\n }\n return false;\n };\n ColumnSet.prototype.isBleedingAtBottom = function () {\n if (this.isBleeding()) {\n return true;\n }\n if (this._renderedColumns && this._renderedColumns.length > 0) {\n for (var _i = 0, _a = this._columns; _i < _a.length; _i++) {\n var column = _a[_i];\n if (column.isBleedingAtBottom()) {\n return true;\n }\n }\n }\n return false;\n };\n ColumnSet.prototype.getItemCount = function () {\n return this._columns.length;\n };\n ColumnSet.prototype.getFirstVisibleRenderedItem = function () {\n if (this.renderedElement && this._renderedColumns && this._renderedColumns.length > 0) {\n return this._renderedColumns[0];\n }\n else {\n return undefined;\n }\n };\n ColumnSet.prototype.getLastVisibleRenderedItem = function () {\n if (this.renderedElement && this._renderedColumns && this._renderedColumns.length > 0) {\n return this._renderedColumns[this._renderedColumns.length - 1];\n }\n else {\n return undefined;\n }\n };\n ColumnSet.prototype.getColumnAt = function (index) {\n return this._columns[index];\n };\n ColumnSet.prototype.getItemAt = function (index) {\n return this.getColumnAt(index);\n };\n ColumnSet.prototype.getJsonTypeName = function () {\n return \"ColumnSet\";\n };\n ColumnSet.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n var weightedColumns = 0;\n var stretchedColumns = 0;\n for (var _i = 0, _a = this._columns; _i < _a.length; _i++) {\n var column = _a[_i];\n if (typeof column.width === \"number\") {\n weightedColumns++;\n }\n else if (column.width === \"stretch\") {\n stretchedColumns++;\n }\n }\n if (weightedColumns > 0 && stretchedColumns > 0) {\n context.addFailure(this, Enums.ValidationEvent.Hint, strings_1.Strings.hints.dontUseWeightedAndStrecthedColumnsInSameSet());\n }\n };\n ColumnSet.prototype.addColumn = function (column) {\n if (!column.parent) {\n this._columns.push(column);\n column.setParent(this);\n }\n else {\n throw new Error(strings_1.Strings.errors.columnAlreadyBelongsToAnotherSet());\n }\n };\n ColumnSet.prototype.removeItem = function (item) {\n if (item instanceof Column) {\n var itemIndex = this._columns.indexOf(item);\n if (itemIndex >= 0) {\n this._columns.splice(itemIndex, 1);\n item.setParent(undefined);\n this.updateLayout();\n return true;\n }\n }\n return false;\n };\n ColumnSet.prototype.indexOf = function (cardElement) {\n return cardElement instanceof Column ? this._columns.indexOf(cardElement) : -1;\n };\n ColumnSet.prototype.isLeftMostElement = function (element) {\n return this._columns.indexOf(element) === 0;\n };\n ColumnSet.prototype.isRightMostElement = function (element) {\n return this._columns.indexOf(element) === this._columns.length - 1;\n };\n ColumnSet.prototype.isTopElement = function (element) {\n return this._columns.indexOf(element) >= 0;\n };\n ColumnSet.prototype.isBottomElement = function (element) {\n return this._columns.indexOf(element) >= 0;\n };\n ColumnSet.prototype.getActionById = function (id) {\n var result = undefined;\n for (var _i = 0, _a = this._columns; _i < _a.length; _i++) {\n var column = _a[_i];\n result = column.getActionById(id);\n if (result) {\n break;\n }\n }\n return result;\n };\n Object.defineProperty(ColumnSet.prototype, \"bleed\", {\n get: function () {\n return this.getBleed();\n },\n set: function (value) {\n this.setBleed(value);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ColumnSet.prototype, \"padding\", {\n get: function () {\n return this.getPadding();\n },\n set: function (value) {\n this.setPadding(value);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ColumnSet.prototype, \"selectAction\", {\n get: function () {\n return this._selectAction;\n },\n set: function (value) {\n this._selectAction = value;\n },\n enumerable: false,\n configurable: true\n });\n return ColumnSet;\n}(ContainerBase));\nexports.ColumnSet = ColumnSet;\nfunction raiseImageLoadedEvent(image) {\n var card = image.getRootElement();\n var onImageLoadedHandler = card && card.onImageLoaded ? card.onImageLoaded : AdaptiveCard.onImageLoaded;\n if (onImageLoadedHandler) {\n onImageLoadedHandler(image);\n }\n}\nfunction raiseAnchorClickedEvent(element, anchor, ev) {\n var card = element.getRootElement();\n var onAnchorClickedHandler = card && card.onAnchorClicked ? card.onAnchorClicked : AdaptiveCard.onAnchorClicked;\n return onAnchorClickedHandler !== undefined\n ? onAnchorClickedHandler(element, anchor, ev)\n : false;\n}\nfunction raiseExecuteActionEvent(action) {\n var card = action.parent ? action.parent.getRootElement() : undefined;\n var onExecuteActionHandler = card && card.onExecuteAction ? card.onExecuteAction : AdaptiveCard.onExecuteAction;\n if (action.prepareForExecution() && onExecuteActionHandler) {\n onExecuteActionHandler(action);\n }\n}\nfunction raiseInlineCardExpandedEvent(action, isExpanded) {\n var card = action.parent ? action.parent.getRootElement() : undefined;\n var onInlineCardExpandedHandler = card && card.onInlineCardExpanded\n ? card.onInlineCardExpanded\n : AdaptiveCard.onInlineCardExpanded;\n if (onInlineCardExpandedHandler) {\n onInlineCardExpandedHandler(action, isExpanded);\n }\n}\nfunction raiseInputValueChangedEvent(input) {\n var card = input.getRootElement();\n var onInputValueChangedHandler = card && card.onInputValueChanged\n ? card.onInputValueChanged\n : AdaptiveCard.onInputValueChanged;\n if (onInputValueChangedHandler) {\n onInputValueChangedHandler(input);\n }\n}\nfunction raiseElementVisibilityChangedEvent(element, shouldUpdateLayout) {\n if (shouldUpdateLayout === void 0) { shouldUpdateLayout = true; }\n var rootElement = element.getRootElement();\n if (shouldUpdateLayout) {\n rootElement.updateLayout();\n }\n var card = rootElement;\n var onElementVisibilityChangedHandler = card && card.onElementVisibilityChanged\n ? card.onElementVisibilityChanged\n : AdaptiveCard.onElementVisibilityChanged;\n if (onElementVisibilityChangedHandler !== undefined) {\n onElementVisibilityChangedHandler(element);\n }\n}\nfunction updateInputAdornersVisibility(input, hide) {\n if (!!hide) {\n // hides the time/date picker icon\n input.readOnly = true;\n // hides the cross button icon\n input.required = true;\n }\n else {\n // shows the time/date picker icon\n input.readOnly = false;\n // shows the cross button icon\n input.required = false;\n }\n}\n/**\n * @returns return false to continue with default context menu; return true to skip SDK default context menu\n */\nfunction raiseDisplayOverflowActionMenuEvent(action, target) {\n var card = action.parent ? action.parent.getRootElement() : undefined;\n var onDisplayOverflowActionMenuHandler = card && card.onDisplayOverflowActionMenu\n ? card.onDisplayOverflowActionMenu\n : AdaptiveCard.onDisplayOverflowActionMenu;\n return onDisplayOverflowActionMenuHandler !== undefined\n ? onDisplayOverflowActionMenuHandler(action.getActions(), target)\n : false;\n}\n/**\n * @returns return false to continue with default action button; return true to skip SDK default action button\n */\nfunction raiseRenderOverflowActionsEvent(action, isAtRootLevelActions) {\n var card = action.parent ? action.parent.getRootElement() : undefined;\n var onRenderOverflowActionsHandler = card && card.onRenderOverflowActions\n ? card.onRenderOverflowActions\n : AdaptiveCard.onRenderOverflowActions;\n return onRenderOverflowActionsHandler !== undefined\n ? onRenderOverflowActionsHandler(action.getActions(), isAtRootLevelActions)\n : false;\n}\nvar ContainerWithActions = /** @class */ (function (_super) {\n __extends(ContainerWithActions, _super);\n function ContainerWithActions() {\n var _this = _super.call(this) || this;\n _this._actionCollection = new ActionCollection(_this);\n return _this;\n }\n ContainerWithActions.prototype.internalParse = function (source, context) {\n _super.prototype.internalParse.call(this, source, context);\n this.parseActions(source, context);\n };\n ContainerWithActions.prototype.parseActions = function (source, context) {\n this._actionCollection.parse(source[\"actions\"], context);\n };\n ContainerWithActions.prototype.internalToJSON = function (target, context) {\n _super.prototype.internalToJSON.call(this, target, context);\n this._actionCollection.toJSON(target, \"actions\", context);\n };\n ContainerWithActions.prototype.internalRender = function () {\n var element = _super.prototype.internalRender.call(this);\n if (element) {\n var renderedActions = this._actionCollection.render(this.hostConfig.actions.actionsOrientation);\n if (renderedActions) {\n Utils.appendChild(element, renderSeparation(this.hostConfig, {\n spacing: this.hostConfig.getEffectiveSpacing(this.hostConfig.actions.spacing)\n }, Enums.Orientation.Horizontal));\n Utils.appendChild(element, renderedActions);\n }\n if (this.renderIfEmpty) {\n return element;\n }\n else {\n return element.children.length > 0 ? element : undefined;\n }\n }\n else {\n return undefined;\n }\n };\n ContainerWithActions.prototype.getHasExpandedAction = function () {\n if (this.renderedActionCount === 0) {\n return false;\n }\n else if (this.renderedActionCount === 1) {\n return (this._actionCollection.expandedAction !== undefined &&\n !this.hostConfig.actions.preExpandSingleShowCardAction);\n }\n else {\n return this._actionCollection.expandedAction !== undefined;\n }\n };\n Object.defineProperty(ContainerWithActions.prototype, \"renderedActionCount\", {\n get: function () {\n return this._actionCollection.renderedActionCount;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ContainerWithActions.prototype, \"renderIfEmpty\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n ContainerWithActions.prototype.releaseDOMResources = function () {\n _super.prototype.releaseDOMResources.call(this);\n this._actionCollection.releaseDOMResources();\n };\n ContainerWithActions.prototype.getActionCount = function () {\n return this._actionCollection.getActionCount();\n };\n ContainerWithActions.prototype.getActionAt = function (index) {\n if (index >= 0 && index < this.getActionCount()) {\n return this._actionCollection.getActionAt(index);\n }\n else {\n return _super.prototype.getActionAt.call(this, index);\n }\n };\n ContainerWithActions.prototype.getActionById = function (id) {\n var result = this._actionCollection.getActionById(id);\n return result ? result : _super.prototype.getActionById.call(this, id);\n };\n ContainerWithActions.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n if (this._actionCollection) {\n this._actionCollection.validateProperties(context);\n }\n };\n ContainerWithActions.prototype.isLastElement = function (element) {\n return _super.prototype.isLastElement.call(this, element) && this._actionCollection.getActionCount() === 0;\n };\n ContainerWithActions.prototype.addAction = function (action) {\n this._actionCollection.addAction(action);\n };\n ContainerWithActions.prototype.clear = function () {\n _super.prototype.clear.call(this);\n this._actionCollection.clear();\n };\n ContainerWithActions.prototype.getAllInputs = function (processActions) {\n if (processActions === void 0) { processActions = true; }\n var result = _super.prototype.getAllInputs.call(this, processActions);\n if (processActions) {\n result.push.apply(result, this._actionCollection.getAllInputs(processActions));\n }\n return result;\n };\n ContainerWithActions.prototype.getResourceInformation = function () {\n var result = _super.prototype.getResourceInformation.call(this);\n result.push.apply(result, this._actionCollection.getResourceInformation());\n return result;\n };\n ContainerWithActions.prototype.isBleedingAtBottom = function () {\n if (this._actionCollection.renderedActionCount === 0) {\n return _super.prototype.isBleedingAtBottom.call(this);\n }\n else {\n if (this._actionCollection.getActionCount() === 1) {\n return (this._actionCollection.expandedAction !== undefined &&\n !this.hostConfig.actions.preExpandSingleShowCardAction);\n }\n else {\n return this._actionCollection.expandedAction !== undefined;\n }\n }\n };\n ContainerWithActions.prototype.getForbiddenActionNames = function () {\n return [];\n };\n ContainerWithActions.prototype.getElementById = function (id) {\n var result = _super.prototype.getElementById.call(this, id);\n if (!result) {\n result = this.getElementByIdFromAction(id);\n }\n return result;\n };\n Object.defineProperty(ContainerWithActions.prototype, \"isStandalone\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n return ContainerWithActions;\n}(Container));\nexports.ContainerWithActions = ContainerWithActions;\nvar RefreshActionProperty = /** @class */ (function (_super) {\n __extends(RefreshActionProperty, _super);\n function RefreshActionProperty(targetVersion, name) {\n var _this = _super.call(this, targetVersion, name, undefined) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n return _this;\n }\n RefreshActionProperty.prototype.parse = function (sender, source, context) {\n var action = context.parseAction(sender.parent, source[this.name], [], false);\n if (action !== undefined) {\n if (action instanceof ExecuteAction) {\n return action;\n }\n context.logParseEvent(sender, Enums.ValidationEvent.ActionTypeNotAllowed, strings_1.Strings.errors.actionTypeNotAllowed(action.getJsonTypeName()));\n }\n context.logParseEvent(sender, Enums.ValidationEvent.PropertyCantBeNull, strings_1.Strings.errors.propertyMustBeSet(\"action\"));\n return undefined;\n };\n RefreshActionProperty.prototype.toJSON = function (sender, target, value, context) {\n context.serializeValue(target, this.name, value ? value.toJSON(context) : undefined, undefined, true);\n };\n return RefreshActionProperty;\n}(serialization_1.PropertyDefinition));\nexports.RefreshActionProperty = RefreshActionProperty;\nvar RefreshDefinition = /** @class */ (function (_super) {\n __extends(RefreshDefinition, _super);\n function RefreshDefinition() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Object.defineProperty(RefreshDefinition.prototype, \"action\", {\n get: function () {\n return this.getValue(RefreshDefinition.actionProperty);\n },\n set: function (value) {\n this.setValue(RefreshDefinition.actionProperty, value);\n if (value) {\n value.setParent(this.parent);\n }\n },\n enumerable: false,\n configurable: true\n });\n RefreshDefinition.prototype.getSchemaKey = function () {\n return \"RefreshDefinition\";\n };\n //#region Schema\n RefreshDefinition.actionProperty = new RefreshActionProperty(serialization_1.Versions.v1_4, \"action\");\n RefreshDefinition.userIdsProperty = new serialization_1.StringArrayProperty(serialization_1.Versions.v1_4, \"userIds\");\n __decorate([\n (0, serialization_1.property)(RefreshDefinition.actionProperty)\n ], RefreshDefinition.prototype, \"action\", null);\n __decorate([\n (0, serialization_1.property)(RefreshDefinition.userIdsProperty)\n ], RefreshDefinition.prototype, \"userIds\", void 0);\n return RefreshDefinition;\n}(serialization_1.SerializableObject));\nexports.RefreshDefinition = RefreshDefinition;\nvar AuthCardButton = /** @class */ (function (_super) {\n __extends(AuthCardButton, _super);\n function AuthCardButton() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n AuthCardButton.prototype.getSchemaKey = function () {\n return \"AuthCardButton\";\n };\n //#region Schema\n AuthCardButton.typeProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_4, \"type\");\n AuthCardButton.titleProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_4, \"title\");\n AuthCardButton.imageProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_4, \"image\");\n AuthCardButton.valueProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_4, \"value\");\n __decorate([\n (0, serialization_1.property)(AuthCardButton.typeProperty)\n ], AuthCardButton.prototype, \"type\", void 0);\n __decorate([\n (0, serialization_1.property)(AuthCardButton.titleProperty)\n ], AuthCardButton.prototype, \"title\", void 0);\n __decorate([\n (0, serialization_1.property)(AuthCardButton.imageProperty)\n ], AuthCardButton.prototype, \"image\", void 0);\n __decorate([\n (0, serialization_1.property)(AuthCardButton.valueProperty)\n ], AuthCardButton.prototype, \"value\", void 0);\n return AuthCardButton;\n}(serialization_1.SerializableObject));\nexports.AuthCardButton = AuthCardButton;\nvar TokenExchangeResource = /** @class */ (function (_super) {\n __extends(TokenExchangeResource, _super);\n function TokenExchangeResource() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n TokenExchangeResource.prototype.getSchemaKey = function () {\n return \"TokenExchangeResource\";\n };\n //#region Schema\n TokenExchangeResource.idProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_4, \"id\");\n TokenExchangeResource.uriProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_4, \"uri\");\n TokenExchangeResource.providerIdProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_4, \"providerId\");\n __decorate([\n (0, serialization_1.property)(TokenExchangeResource.idProperty)\n ], TokenExchangeResource.prototype, \"id\", void 0);\n __decorate([\n (0, serialization_1.property)(TokenExchangeResource.uriProperty)\n ], TokenExchangeResource.prototype, \"uri\", void 0);\n __decorate([\n (0, serialization_1.property)(TokenExchangeResource.providerIdProperty)\n ], TokenExchangeResource.prototype, \"providerId\", void 0);\n return TokenExchangeResource;\n}(serialization_1.SerializableObject));\nexports.TokenExchangeResource = TokenExchangeResource;\nvar Authentication = /** @class */ (function (_super) {\n __extends(Authentication, _super);\n function Authentication() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Authentication.prototype.getSchemaKey = function () {\n return \"Authentication\";\n };\n //#region Schema\n Authentication.textProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_4, \"text\");\n Authentication.connectionNameProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_4, \"connectionName\");\n Authentication.buttonsProperty = new serialization_1.SerializableObjectCollectionProperty(serialization_1.Versions.v1_4, \"buttons\", AuthCardButton);\n Authentication.tokenExchangeResourceProperty = new serialization_1.SerializableObjectProperty(serialization_1.Versions.v1_4, \"tokenExchangeResource\", TokenExchangeResource, true);\n __decorate([\n (0, serialization_1.property)(Authentication.textProperty)\n ], Authentication.prototype, \"text\", void 0);\n __decorate([\n (0, serialization_1.property)(Authentication.connectionNameProperty)\n ], Authentication.prototype, \"connectionName\", void 0);\n __decorate([\n (0, serialization_1.property)(Authentication.buttonsProperty)\n ], Authentication.prototype, \"buttons\", void 0);\n __decorate([\n (0, serialization_1.property)(Authentication.tokenExchangeResourceProperty)\n ], Authentication.prototype, \"tokenExchangeResource\", void 0);\n return Authentication;\n}(serialization_1.SerializableObject));\nexports.Authentication = Authentication;\n// @dynamic\nvar AdaptiveCard = /** @class */ (function (_super) {\n __extends(AdaptiveCard, _super);\n function AdaptiveCard() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.designMode = false;\n return _this;\n }\n Object.defineProperty(AdaptiveCard.prototype, \"refresh\", {\n get: function () {\n return this.getValue(AdaptiveCard.refreshProperty);\n },\n set: function (value) {\n this.setValue(AdaptiveCard.refreshProperty, value);\n if (value) {\n value.parent = this;\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(AdaptiveCard, \"processMarkdown\", {\n get: function () {\n throw new Error(strings_1.Strings.errors.processMarkdownEventRemoved());\n },\n // eslint-disable-next-line @typescript-eslint/naming-convention\n set: function (_value) {\n throw new Error(strings_1.Strings.errors.processMarkdownEventRemoved());\n },\n enumerable: false,\n configurable: true\n });\n AdaptiveCard.applyMarkdown = function (text) {\n var result = {\n didProcess: false\n };\n if (AdaptiveCard.onProcessMarkdown) {\n AdaptiveCard.onProcessMarkdown(text, result);\n }\n else if (window.markdownit) {\n // Check for markdownit\n var markdownIt = window.markdownit;\n result.outputHtml = markdownIt().render(text);\n result.didProcess = true;\n }\n else if (!AdaptiveCard._haveWarnedAboutNoMarkdownProcessing) {\n // eslint-disable-next-line no-console\n console.warn(strings_1.Strings.errors.markdownProcessingNotEnabled);\n AdaptiveCard._haveWarnedAboutNoMarkdownProcessing = true;\n }\n return result;\n };\n AdaptiveCard.prototype.isVersionSupported = function () {\n if (this.bypassVersionCheck) {\n return true;\n }\n else {\n var unsupportedVersion = !this.version ||\n !this.version.isValid ||\n this.maxVersion.major < this.version.major ||\n (this.maxVersion.major === this.version.major &&\n this.maxVersion.minor < this.version.minor);\n return !unsupportedVersion;\n }\n };\n AdaptiveCard.prototype.getDefaultSerializationContext = function () {\n return new SerializationContext(this.version);\n };\n AdaptiveCard.prototype.getItemsCollectionPropertyName = function () {\n return \"body\";\n };\n AdaptiveCard.prototype.internalParse = function (source, context) {\n this._fallbackCard = undefined;\n var fallbackElement = context.parseElement(undefined, source[\"fallback\"], this.forbiddenChildElements(), !this.isDesignMode());\n if (fallbackElement) {\n this._fallbackCard = new AdaptiveCard();\n this._fallbackCard.addItem(fallbackElement);\n }\n _super.prototype.internalParse.call(this, source, context);\n };\n AdaptiveCard.prototype.internalToJSON = function (target, context) {\n this.setValue(AdaptiveCard.versionProperty, context.targetVersion);\n _super.prototype.internalToJSON.call(this, target, context);\n };\n AdaptiveCard.prototype.internalRender = function () {\n var renderedElement = _super.prototype.internalRender.call(this);\n if (shared_1.GlobalSettings.useAdvancedCardBottomTruncation && renderedElement) {\n // Unlike containers, the root card element should be allowed to\n // be shorter than its content (otherwise the overflow truncation\n // logic would never get triggered)\n renderedElement.style.removeProperty(\"minHeight\");\n }\n return renderedElement;\n };\n AdaptiveCard.prototype.getHasBackground = function (ignoreBackgroundImages) {\n if (ignoreBackgroundImages === void 0) { ignoreBackgroundImages = false; }\n return true;\n };\n AdaptiveCard.prototype.getDefaultPadding = function () {\n return new shared_1.PaddingDefinition(Enums.Spacing.Padding, Enums.Spacing.Padding, Enums.Spacing.Padding, Enums.Spacing.Padding);\n };\n AdaptiveCard.prototype.shouldSerialize = function (_context) {\n return true;\n };\n Object.defineProperty(AdaptiveCard.prototype, \"renderIfEmpty\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(AdaptiveCard.prototype, \"bypassVersionCheck\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(AdaptiveCard.prototype, \"allowCustomStyle\", {\n get: function () {\n return this.hostConfig.adaptiveCard && this.hostConfig.adaptiveCard.allowCustomStyle;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(AdaptiveCard.prototype, \"hasBackground\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n AdaptiveCard.prototype.getJsonTypeName = function () {\n return \"AdaptiveCard\";\n };\n AdaptiveCard.prototype.internalValidateProperties = function (context) {\n _super.prototype.internalValidateProperties.call(this, context);\n if (this.getValue(CardElement.typeNameProperty) !== \"AdaptiveCard\") {\n context.addFailure(this, Enums.ValidationEvent.MissingCardType, strings_1.Strings.errors.invalidCardType());\n }\n if (!this.bypassVersionCheck && !this.version) {\n context.addFailure(this, Enums.ValidationEvent.PropertyCantBeNull, strings_1.Strings.errors.propertyMustBeSet(\"version\"));\n }\n else if (!this.isVersionSupported()) {\n context.addFailure(this, Enums.ValidationEvent.UnsupportedCardVersion, strings_1.Strings.errors.unsupportedCardVersion(this.version.toString(), this.maxVersion.toString()));\n }\n };\n AdaptiveCard.prototype.render = function (target) {\n var _this = this;\n var renderedCard;\n if (this.shouldFallback() && this._fallbackCard) {\n this._fallbackCard.hostConfig = this.hostConfig;\n renderedCard = this._fallbackCard.render();\n }\n else {\n renderedCard = _super.prototype.render.call(this);\n if (renderedCard) {\n renderedCard.classList.add(this.hostConfig.makeCssClassName(\"ac-adaptiveCard\"));\n // Having a tabIndex on the root container for a card can mess up accessibility in some scenarios.\n // However, we've shipped this behavior before, and so can't just turn it off in a point release. For\n // now, to unblock accessibility scenarios for our customers, we've got an option to turn it off. In a\n // future release, we should strongly consider flipping the default such that we *don't* emit a tabIndex\n // by default.\n if (shared_1.GlobalSettings.setTabIndexAtCardRoot) {\n renderedCard.tabIndex = 0;\n }\n if (this.speak) {\n renderedCard.setAttribute(\"aria-label\", this.speak);\n }\n renderedCard.onmouseenter = function (ev) {\n _this.updateInputsVisualState(true /* hover */);\n };\n renderedCard.onmouseleave = function (ev) {\n _this.updateInputsVisualState(false /* hover */);\n };\n this.getRootElement().updateActionsEnabledState();\n }\n }\n if (target) {\n Utils.appendChild(target, renderedCard);\n this.updateLayout();\n }\n return renderedCard;\n };\n AdaptiveCard.prototype.updateLayout = function (processChildren) {\n if (processChildren === void 0) { processChildren = true; }\n _super.prototype.updateLayout.call(this, processChildren);\n if (shared_1.GlobalSettings.useAdvancedCardBottomTruncation && this.isDisplayed()) {\n var padding = this.hostConfig.getEffectiveSpacing(Enums.Spacing.Default);\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n this[\"handleOverflow\"](this.renderedElement.offsetHeight - padding);\n }\n };\n AdaptiveCard.prototype.shouldFallback = function () {\n return _super.prototype.shouldFallback.call(this) || !this.isVersionSupported();\n };\n Object.defineProperty(AdaptiveCard.prototype, \"hasVisibleSeparator\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n AdaptiveCard.schemaUrl = \"http://adaptivecards.io/schemas/adaptive-card.json\";\n //#region Schema\n // eslint-disable-next-line @typescript-eslint/naming-convention\n AdaptiveCard.$schemaProperty = new serialization_1.CustomProperty(serialization_1.Versions.v1_0, \"$schema\", function (sender, property, source, context) {\n return AdaptiveCard.schemaUrl;\n }, function (sender, prop, target, value, context) {\n context.serializeValue(target, prop.name, AdaptiveCard.schemaUrl);\n });\n AdaptiveCard.versionProperty = new serialization_1.CustomProperty(serialization_1.Versions.v1_0, \"version\", function (sender, prop, source, context) {\n var version = serialization_1.Version.parse(source[prop.name], context);\n if (version === undefined) {\n version = serialization_1.Versions.latest;\n context.logParseEvent(sender, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidCardVersion(version.toString()));\n }\n return version;\n }, function (sender, prop, target, value, context) {\n if (value !== undefined) {\n context.serializeValue(target, prop.name, value.toString());\n }\n }, serialization_1.Versions.v1_0);\n AdaptiveCard.fallbackTextProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"fallbackText\");\n AdaptiveCard.speakProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"speak\");\n AdaptiveCard.refreshProperty = new serialization_1.SerializableObjectProperty(serialization_1.Versions.v1_4, \"refresh\", RefreshDefinition, true);\n AdaptiveCard.authenticationProperty = new serialization_1.SerializableObjectProperty(serialization_1.Versions.v1_4, \"authentication\", Authentication, true);\n //#endregion\n AdaptiveCard._haveWarnedAboutNoMarkdownProcessing = false;\n __decorate([\n (0, serialization_1.property)(AdaptiveCard.versionProperty)\n ], AdaptiveCard.prototype, \"version\", void 0);\n __decorate([\n (0, serialization_1.property)(AdaptiveCard.fallbackTextProperty)\n ], AdaptiveCard.prototype, \"fallbackText\", void 0);\n __decorate([\n (0, serialization_1.property)(AdaptiveCard.speakProperty)\n ], AdaptiveCard.prototype, \"speak\", void 0);\n __decorate([\n (0, serialization_1.property)(AdaptiveCard.refreshProperty)\n ], AdaptiveCard.prototype, \"refresh\", null);\n __decorate([\n (0, serialization_1.property)(AdaptiveCard.authenticationProperty)\n ], AdaptiveCard.prototype, \"authentication\", void 0);\n return AdaptiveCard;\n}(ContainerWithActions));\nexports.AdaptiveCard = AdaptiveCard;\nvar InlineAdaptiveCard = /** @class */ (function (_super) {\n __extends(InlineAdaptiveCard, _super);\n function InlineAdaptiveCard() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.suppressStyle = false;\n return _this;\n }\n InlineAdaptiveCard.prototype.getSchemaKey = function () {\n return \"InlineAdaptiveCard\";\n };\n InlineAdaptiveCard.prototype.populateSchema = function (schema) {\n _super.prototype.populateSchema.call(this, schema);\n schema.remove(AdaptiveCard.$schemaProperty, AdaptiveCard.versionProperty);\n };\n //#endregion\n InlineAdaptiveCard.prototype.getDefaultPadding = function () {\n return new shared_1.PaddingDefinition(this.suppressStyle ? Enums.Spacing.None : Enums.Spacing.Padding, Enums.Spacing.Padding, this.suppressStyle ? Enums.Spacing.None : Enums.Spacing.Padding, Enums.Spacing.Padding);\n };\n Object.defineProperty(InlineAdaptiveCard.prototype, \"bypassVersionCheck\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(InlineAdaptiveCard.prototype, \"defaultStyle\", {\n get: function () {\n if (this.suppressStyle) {\n return Enums.ContainerStyle.Default;\n }\n else {\n return this.hostConfig.actions.showCard.style\n ? this.hostConfig.actions.showCard.style\n : Enums.ContainerStyle.Emphasis;\n }\n },\n enumerable: false,\n configurable: true\n });\n InlineAdaptiveCard.prototype.render = function (target) {\n var renderedCard = _super.prototype.render.call(this, target);\n if (renderedCard) {\n renderedCard.setAttribute(\"aria-live\", \"polite\");\n renderedCard.removeAttribute(\"tabindex\");\n }\n return renderedCard;\n };\n return InlineAdaptiveCard;\n}(AdaptiveCard));\nvar SerializationContext = /** @class */ (function (_super) {\n __extends(SerializationContext, _super);\n function SerializationContext() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._forbiddenTypes = new Set();\n return _this;\n }\n SerializationContext.prototype.internalParseCardObject = function (parent, source, forbiddenTypes, allowFallback, createInstanceCallback, logParseEvent) {\n var _this = this;\n var result = undefined;\n if (source && typeof source === \"object\") {\n var oldForbiddenTypes_1 = new Set();\n this._forbiddenTypes.forEach(function (type) {\n oldForbiddenTypes_1.add(type);\n });\n forbiddenTypes.forEach(function (type) {\n _this._forbiddenTypes.add(type);\n });\n var typeName = Utils.parseString(source[\"type\"]);\n if (typeName && this._forbiddenTypes.has(typeName)) {\n logParseEvent(typeName, Enums.TypeErrorType.ForbiddenType);\n }\n else {\n var tryToFallback = false;\n result = createInstanceCallback(typeName);\n if (!result) {\n tryToFallback = shared_1.GlobalSettings.enableFallback && allowFallback;\n logParseEvent(typeName, Enums.TypeErrorType.UnknownType);\n }\n else {\n result.setParent(parent);\n result.parse(source, this);\n tryToFallback =\n shared_1.GlobalSettings.enableFallback && allowFallback && result.shouldFallback();\n }\n if (tryToFallback) {\n var fallback = source[\"fallback\"];\n if (!fallback && parent) {\n parent.setShouldFallback(true);\n }\n if (typeof fallback === \"string\" && fallback.toLowerCase() === \"drop\") {\n result = undefined;\n }\n else if (typeof fallback === \"object\") {\n result = this.internalParseCardObject(parent, fallback, forbiddenTypes, true, createInstanceCallback, logParseEvent);\n }\n }\n }\n this._forbiddenTypes = oldForbiddenTypes_1;\n }\n return result;\n };\n SerializationContext.prototype.cardObjectParsed = function (o, source) {\n if (o instanceof Action && this.onParseAction) {\n this.onParseAction(o, source, this);\n }\n else if (o instanceof CardElement && this.onParseElement) {\n this.onParseElement(o, source, this);\n }\n };\n SerializationContext.prototype.shouldSerialize = function (o) {\n if (o instanceof Action) {\n return this.actionRegistry.findByName(o.getJsonTypeName()) !== undefined;\n }\n else if (o instanceof CardElement) {\n return this.elementRegistry.findByName(o.getJsonTypeName()) !== undefined;\n }\n else {\n return true;\n }\n };\n SerializationContext.prototype.parseCardObject = function (parent, source, forbiddenTypeNames, allowFallback, createInstanceCallback, logParseEvent) {\n var forbiddenTypes = new Set(forbiddenTypeNames);\n var result = this.internalParseCardObject(parent, source, forbiddenTypes, allowFallback, createInstanceCallback, logParseEvent);\n if (result !== undefined) {\n this.cardObjectParsed(result, source);\n }\n return result;\n };\n SerializationContext.prototype.parseElement = function (parent, source, forbiddenTypes, allowFallback) {\n var _this = this;\n return this.parseCardObject(parent, source, forbiddenTypes, allowFallback, function (typeName) {\n return _this.elementRegistry.createInstance(typeName, _this.targetVersion);\n }, function (typeName, errorType) {\n if (errorType === Enums.TypeErrorType.UnknownType) {\n _this.logParseEvent(undefined, Enums.ValidationEvent.UnknownElementType, strings_1.Strings.errors.unknownElementType(typeName));\n }\n else {\n _this.logParseEvent(undefined, Enums.ValidationEvent.ElementTypeNotAllowed, strings_1.Strings.errors.elementTypeNotAllowed(typeName));\n }\n });\n };\n SerializationContext.prototype.parseAction = function (parent, source, forbiddenActionTypes, allowFallback) {\n var _this = this;\n return this.parseCardObject(parent, source, forbiddenActionTypes, allowFallback, function (typeName) {\n return _this.actionRegistry.createInstance(typeName, _this.targetVersion);\n }, function (typeName, errorType) {\n if (errorType === Enums.TypeErrorType.UnknownType) {\n _this.logParseEvent(undefined, Enums.ValidationEvent.UnknownActionType, strings_1.Strings.errors.unknownActionType(typeName));\n }\n else {\n _this.logParseEvent(undefined, Enums.ValidationEvent.ActionTypeNotAllowed, strings_1.Strings.errors.actionTypeNotAllowed(typeName));\n }\n });\n };\n Object.defineProperty(SerializationContext.prototype, \"elementRegistry\", {\n get: function () {\n var _a;\n return (_a = this._elementRegistry) !== null && _a !== void 0 ? _a : registry_1.GlobalRegistry.elements;\n },\n enumerable: false,\n configurable: true\n });\n // Not using a property setter here because the setter should accept \"undefined\"\n // whereas the getter should never return undefined.\n SerializationContext.prototype.setElementRegistry = function (value) {\n this._elementRegistry = value;\n };\n Object.defineProperty(SerializationContext.prototype, \"actionRegistry\", {\n get: function () {\n var _a;\n return (_a = this._actionRegistry) !== null && _a !== void 0 ? _a : registry_1.GlobalRegistry.actions;\n },\n enumerable: false,\n configurable: true\n });\n // Not using a property setter here because the setter should accept \"undefined\"\n // whereas the getter should never return undefined.\n SerializationContext.prototype.setActionRegistry = function (value) {\n this._actionRegistry = value;\n };\n return SerializationContext;\n}(serialization_1.BaseSerializationContext));\nexports.SerializationContext = SerializationContext;\nregistry_1.GlobalRegistry.defaultElements.register(\"Container\", Container);\nregistry_1.GlobalRegistry.defaultElements.register(\"TextBlock\", TextBlock);\nregistry_1.GlobalRegistry.defaultElements.register(\"RichTextBlock\", RichTextBlock, serialization_1.Versions.v1_2);\nregistry_1.GlobalRegistry.defaultElements.register(\"TextRun\", TextRun, serialization_1.Versions.v1_2);\nregistry_1.GlobalRegistry.defaultElements.register(\"Image\", Image);\nregistry_1.GlobalRegistry.defaultElements.register(\"ImageSet\", ImageSet);\nregistry_1.GlobalRegistry.defaultElements.register(\"Media\", Media, serialization_1.Versions.v1_1);\nregistry_1.GlobalRegistry.defaultElements.register(\"FactSet\", FactSet);\nregistry_1.GlobalRegistry.defaultElements.register(\"ColumnSet\", ColumnSet);\nregistry_1.GlobalRegistry.defaultElements.register(\"ActionSet\", ActionSet, serialization_1.Versions.v1_2);\nregistry_1.GlobalRegistry.defaultElements.register(\"Input.Text\", TextInput);\nregistry_1.GlobalRegistry.defaultElements.register(\"Input.Date\", DateInput);\nregistry_1.GlobalRegistry.defaultElements.register(\"Input.Time\", TimeInput);\nregistry_1.GlobalRegistry.defaultElements.register(\"Input.Number\", NumberInput);\nregistry_1.GlobalRegistry.defaultElements.register(\"Input.ChoiceSet\", ChoiceSetInput);\nregistry_1.GlobalRegistry.defaultElements.register(\"Input.Toggle\", ToggleInput);\nregistry_1.GlobalRegistry.defaultActions.register(OpenUrlAction.JsonTypeName, OpenUrlAction);\nregistry_1.GlobalRegistry.defaultActions.register(SubmitAction.JsonTypeName, SubmitAction);\nregistry_1.GlobalRegistry.defaultActions.register(ShowCardAction.JsonTypeName, ShowCardAction);\nregistry_1.GlobalRegistry.defaultActions.register(ToggleVisibilityAction.JsonTypeName, ToggleVisibilityAction, serialization_1.Versions.v1_2);\nregistry_1.GlobalRegistry.defaultActions.register(ExecuteAction.JsonTypeName, ExecuteAction, serialization_1.Versions.v1_4);\n//# sourceMappingURL=card-elements.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CardObject = exports.ValidationResults = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar Enums = require(\"./enums\");\nvar strings_1 = require(\"./strings\");\nvar shared_1 = require(\"./shared\");\nvar host_capabilities_1 = require(\"./host-capabilities\");\nvar serialization_1 = require(\"./serialization\");\nvar ValidationResults = /** @class */ (function () {\n function ValidationResults() {\n this.allIds = {};\n this.validationEvents = [];\n }\n ValidationResults.prototype.addFailure = function (cardObject, event, message) {\n this.validationEvents.push({\n phase: Enums.ValidationPhase.Validation,\n source: cardObject,\n event: event,\n message: message\n });\n };\n return ValidationResults;\n}());\nexports.ValidationResults = ValidationResults;\nvar CardObject = /** @class */ (function (_super) {\n __extends(CardObject, _super);\n function CardObject() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n //#endregion\n _this._shouldFallback = false;\n return _this;\n }\n CardObject.prototype.getSchemaKey = function () {\n return this.getJsonTypeName();\n };\n Object.defineProperty(CardObject.prototype, \"requires\", {\n get: function () {\n return this.getValue(CardObject.requiresProperty);\n },\n enumerable: false,\n configurable: true\n });\n /**\n * Checks if this CardObject contains the given DOM Node.\n * @param node The DOM Node to look for.\n * @returns `true` if the DOM Node was found, `false` otherwise.\n */\n CardObject.prototype.contains = function (node) {\n if (this._renderedElement) {\n return this._renderedElement.contains(node);\n }\n return false;\n };\n CardObject.prototype.preProcessPropertyValue = function (prop, propertyValue) {\n var value = propertyValue === undefined ? this.getValue(prop) : propertyValue;\n if (shared_1.GlobalSettings.allowPreProcessingPropertyValues) {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n var currentObject = this;\n while (currentObject && !currentObject.onPreProcessPropertyValue) {\n currentObject = currentObject.parent;\n }\n if (currentObject && currentObject.onPreProcessPropertyValue) {\n return currentObject.onPreProcessPropertyValue(this, prop, value);\n }\n }\n return value;\n };\n CardObject.prototype.setParent = function (value) {\n this._parent = value;\n };\n CardObject.prototype.setShouldFallback = function (value) {\n this._shouldFallback = value;\n };\n CardObject.prototype.shouldFallback = function () {\n return this._shouldFallback || !this.requires.areAllMet(this.hostConfig.hostCapabilities);\n };\n CardObject.prototype.getRootObject = function () {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n var currentObject = this;\n while (currentObject.parent) {\n currentObject = currentObject.parent;\n }\n return currentObject;\n };\n CardObject.prototype.internalValidateProperties = function (context) {\n if (this.id) {\n if (context.allIds.hasOwnProperty(this.id)) {\n if (context.allIds[this.id] === 1) {\n context.addFailure(this, Enums.ValidationEvent.DuplicateId, strings_1.Strings.errors.duplicateId(this.id));\n }\n context.allIds[this.id] += 1;\n }\n else {\n context.allIds[this.id] = 1;\n }\n }\n };\n CardObject.prototype.validateProperties = function () {\n var result = new ValidationResults();\n this.internalValidateProperties(result);\n return result;\n };\n /**\n * Recursively searches this CardObject and any children to find the\n * innermost CardObject that owns the given DOM Node.\n *\n * @param node The DOM Node to look for.\n *\n * @returns The owner of the given DOM Node, or `undefined` if no owner was found.\n */\n CardObject.prototype.findDOMNodeOwner = function (node) {\n // default implementation for CardObjects with no associated children\n return this.contains(node) ? this : undefined;\n };\n CardObject.prototype.releaseDOMResources = function () {\n // Do nothing in base implementation\n };\n Object.defineProperty(CardObject.prototype, \"parent\", {\n get: function () {\n return this._parent;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CardObject.prototype, \"renderedElement\", {\n get: function () {\n return this._renderedElement;\n },\n enumerable: false,\n configurable: true\n });\n CardObject.typeNameProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"type\", undefined, undefined, undefined, function (sender) {\n return sender.getJsonTypeName();\n });\n CardObject.idProperty = new serialization_1.StringProperty(serialization_1.Versions.v1_0, \"id\");\n CardObject.requiresProperty = new serialization_1.SerializableObjectProperty(serialization_1.Versions.v1_2, \"requires\", host_capabilities_1.HostCapabilities, false, new host_capabilities_1.HostCapabilities());\n __decorate([\n (0, serialization_1.property)(CardObject.idProperty)\n ], CardObject.prototype, \"id\", void 0);\n __decorate([\n (0, serialization_1.property)(CardObject.requiresProperty)\n ], CardObject.prototype, \"requires\", null);\n return CardObject;\n}(serialization_1.SerializableObject));\nexports.CardObject = CardObject;\n//# sourceMappingURL=card-object.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CarouselEvent = exports.Carousel = exports.CarouselPage = void 0;\n// Copyright (C) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar card_elements_1 = require(\"./card-elements\");\nvar Enums = require(\"./enums\");\nvar serialization_1 = require(\"./serialization\");\nvar registry_1 = require(\"./registry\");\nvar enums_1 = require(\"./enums\");\nvar strings_1 = require(\"./strings\");\nvar swiper_1 = require(\"swiper\");\nvar Utils = require(\"./utils\");\nvar shared_1 = require(\"./shared\");\n// Note: to function correctly, consumers need to have CSS from swiper/css, swiper/css/pagination, and\n// swiper/css/navigation\nvar CarouselPage = /** @class */ (function (_super) {\n __extends(CarouselPage, _super);\n function CarouselPage() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n //#region Schema\n CarouselPage.prototype.populateSchema = function (schema) {\n _super.prototype.populateSchema.call(this, schema);\n // `style`, `bleed`, `isVisible` are not supported in CarouselPage\n schema.remove(card_elements_1.Container.styleProperty);\n schema.remove(card_elements_1.Container.bleedProperty);\n schema.remove(card_elements_1.Container.isVisibleProperty);\n };\n //#endregion\n CarouselPage.prototype.internalRender = function () {\n var carouselSlide = document.createElement(\"div\");\n carouselSlide.className = this.hostConfig.makeCssClassName(\"swiper-slide\");\n // `isRtl()` will set the correct value of rtl by reading the value from the parents\n this.rtl = this.isRtl();\n var renderedElement = _super.prototype.internalRender.call(this);\n Utils.appendChild(carouselSlide, renderedElement);\n return carouselSlide;\n };\n CarouselPage.prototype.getForbiddenActionTypes = function () {\n return [card_elements_1.ShowCardAction, card_elements_1.ToggleVisibilityAction];\n };\n CarouselPage.prototype.getForbiddenChildElements = function () {\n return this.forbiddenChildElements();\n };\n CarouselPage.prototype.forbiddenChildElements = function () {\n return __spreadArray([\n card_elements_1.ToggleVisibilityAction.JsonTypeName,\n card_elements_1.ShowCardAction.JsonTypeName,\n \"Media\",\n \"ActionSet\",\n \"Input.Text\",\n \"Input.Date\",\n \"Input.Time\",\n \"Input.Number\",\n \"Input.ChoiceSet\",\n \"Input.Toggle\",\n \"Carousel\"\n ], _super.prototype.forbiddenChildElements.call(this), true);\n };\n CarouselPage.prototype.internalParse = function (source, context) {\n _super.prototype.internalParse.call(this, source, context);\n this.setShouldFallback(false);\n };\n CarouselPage.prototype.shouldSerialize = function (_context) {\n return true;\n };\n CarouselPage.prototype.getJsonTypeName = function () {\n return \"CarouselPage\";\n };\n Object.defineProperty(CarouselPage.prototype, \"isStandalone\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(CarouselPage.prototype, \"hasVisibleSeparator\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n return CarouselPage;\n}(card_elements_1.Container));\nexports.CarouselPage = CarouselPage;\nvar Carousel = /** @class */ (function (_super) {\n __extends(Carousel, _super);\n function Carousel() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.carouselLoop = true;\n _this.carouselOrientation = Enums.Orientation.Horizontal;\n _this._pages = [];\n _this._currentIndex = 0;\n _this._previousEventType = Enums.CarouselInteractionEvent.Pagination;\n return _this;\n }\n //#region Schema\n Carousel.prototype.populateSchema = function (schema) {\n _super.prototype.populateSchema.call(this, schema);\n // `style`, `bleed`, `isVisible` are not supported in Carousel\n schema.remove(card_elements_1.Container.styleProperty);\n schema.remove(card_elements_1.Container.bleedProperty);\n schema.remove(card_elements_1.Container.isVisibleProperty);\n };\n Object.defineProperty(Carousel.prototype, \"timer\", {\n get: function () {\n var timer = this.getValue(Carousel.timerProperty);\n if (timer && timer < this.hostConfig.carousel.minAutoplayDelay) {\n console.warn(strings_1.Strings.errors.tooLittleTimeDelay);\n timer = this.hostConfig.carousel.minAutoplayDelay;\n }\n return timer;\n },\n set: function (value) {\n if (value && value < this.hostConfig.carousel.minAutoplayDelay) {\n console.warn(strings_1.Strings.errors.tooLittleTimeDelay);\n this.setValue(Carousel.timerProperty, this.hostConfig.carousel.minAutoplayDelay);\n }\n else {\n this.setValue(Carousel.timerProperty, value);\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Carousel.prototype, \"initialPageIndex\", {\n get: function () {\n return this.getValue(Carousel.initialPageProperty);\n },\n set: function (value) {\n if (this.isValidParsedPageIndex(value)) {\n this.setValue(Carousel.initialPageProperty, value);\n }\n else {\n console.warn(strings_1.Strings.errors.invalidInitialPageIndex(value));\n this.setValue(Carousel.initialPageProperty, 0);\n }\n },\n enumerable: false,\n configurable: true\n });\n Carousel.prototype.isValidParsedPageIndex = function (index) {\n return this._pages ? this.isValidPageIndex(index, this._pages.length) : false;\n };\n Carousel.prototype.isValidRenderedPageIndex = function (index) {\n return this._renderedPages ? this.isValidPageIndex(index, this._renderedPages.length) : false;\n };\n Carousel.prototype.isValidPageIndex = function (index, collectionSize) {\n return (collectionSize > 0 && 0 <= index && index < collectionSize);\n };\n Object.defineProperty(Carousel.prototype, \"previousEventType\", {\n //#endregion\n get: function () {\n return this._previousEventType;\n },\n set: function (eventType) {\n this._previousEventType = eventType;\n },\n enumerable: false,\n configurable: true\n });\n // Question: Why do we place this on the Carousel instead of the CarouselPage?\n Carousel.prototype.forbiddenChildElements = function () {\n return __spreadArray([\n card_elements_1.ToggleVisibilityAction.JsonTypeName,\n card_elements_1.ShowCardAction.JsonTypeName,\n \"Media\",\n \"ActionSet\",\n \"Input.Text\",\n \"Input.Date\",\n \"Input.Time\",\n \"Input.Number\",\n \"Input.ChoiceSet\",\n \"Input.Toggle\"\n ], _super.prototype.forbiddenChildElements.call(this), true);\n };\n Carousel.prototype.adjustRenderedElementSize = function (renderedElement) {\n _super.prototype.adjustRenderedElementSize.call(this, renderedElement);\n if (this.height == \"stretch\" && this._containerForAdorners !== undefined) {\n this._containerForAdorners.style.height = \"100%\";\n }\n // Assign the explicit height to carouselPageContainer if given\n if (this.carouselHeight) {\n this._carouselPageContainer.style.height = this.carouselHeight + \"px\";\n }\n };\n Carousel.prototype.getJsonTypeName = function () {\n return \"Carousel\";\n };\n Carousel.prototype.getItemCount = function () {\n return this._pages.length;\n };\n Carousel.prototype.getItemAt = function (index) {\n return this._pages[index];\n };\n Carousel.prototype.addPage = function (page) {\n this._pages.push(page);\n page.setParent(this);\n };\n Carousel.prototype.removeItem = function (item) {\n if (item instanceof CarouselPage) {\n var itemIndex = this._pages.indexOf(item);\n if (itemIndex >= 0) {\n this._pages.splice(itemIndex, 1);\n item.setParent(undefined);\n this.updateLayout();\n return true;\n }\n }\n return false;\n };\n Carousel.prototype.getFirstVisibleRenderedItem = function () {\n var _a;\n if (this.renderedElement && ((_a = this._renderedPages) === null || _a === void 0 ? void 0 : _a.length) > 0) {\n return this._renderedPages[0];\n }\n else {\n return undefined;\n }\n };\n Carousel.prototype.getLastVisibleRenderedItem = function () {\n var _a;\n if (this.renderedElement && ((_a = this._renderedPages) === null || _a === void 0 ? void 0 : _a.length) > 0) {\n return this._renderedPages[this._renderedPages.length - 1];\n }\n else {\n return undefined;\n }\n };\n Object.defineProperty(Carousel.prototype, \"currentPageId\", {\n get: function () {\n var _a, _b;\n if ((_b = (_a = this._carousel) === null || _a === void 0 ? void 0 : _a.slides) === null || _b === void 0 ? void 0 : _b.length) {\n var activeSlide = this._carousel.slides[this._carousel.activeIndex];\n return activeSlide.id;\n }\n return undefined;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Carousel.prototype, \"currentPageIndex\", {\n get: function () {\n var _a;\n return (_a = this._carousel) === null || _a === void 0 ? void 0 : _a.realIndex;\n },\n enumerable: false,\n configurable: true\n });\n Carousel.prototype.internalParse = function (source, context) {\n _super.prototype.internalParse.call(this, source, context);\n this._pages = [];\n var jsonPages = source[\"pages\"];\n if (Array.isArray(jsonPages)) {\n for (var _i = 0, jsonPages_1 = jsonPages; _i < jsonPages_1.length; _i++) {\n var item = jsonPages_1[_i];\n var page = this.createCarouselPageInstance(item, context);\n if (page) {\n this._pages.push(page);\n }\n }\n }\n // everything is parsed do validate on initial page index\n this.validateParsing(context);\n };\n Carousel.prototype.validateParsing = function (context) {\n if (!this.isValidParsedPageIndex(this.initialPageIndex)) {\n context.logParseEvent(this, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidInitialPageIndex(this.initialPageIndex));\n }\n };\n Carousel.prototype.internalToJSON = function (target, context) {\n _super.prototype.internalToJSON.call(this, target, context);\n context.serializeArray(target, \"pages\", this._pages);\n };\n Carousel.prototype.internalRender = function () {\n var _a;\n this._renderedPages = [];\n if (this._pages.length <= 0) {\n return undefined;\n }\n this.validateOrientationProperties();\n var cardLevelContainer = document.createElement(\"div\");\n cardLevelContainer.className = this.hostConfig.makeCssClassName(\"ac-carousel-card-level-container\");\n var carouselContainer = document.createElement(\"div\");\n carouselContainer.className = this.hostConfig.makeCssClassName(\"swiper\", \"ac-carousel\");\n this._carouselPageContainer = carouselContainer;\n var containerForAdorners = document.createElement(\"div\");\n containerForAdorners.className = this.hostConfig.makeCssClassName(\"ac-carousel-container\");\n this._containerForAdorners = containerForAdorners;\n cardLevelContainer.appendChild(containerForAdorners);\n var navigationContainer = document.createElement(\"div\");\n navigationContainer.className = this.hostConfig.makeCssClassName(\"ac-carousel-navigation\");\n containerForAdorners.appendChild(navigationContainer);\n var carouselWrapper = document.createElement(\"div\");\n carouselWrapper.className = this.hostConfig.makeCssClassName(\"swiper-wrapper\", \"ac-carousel-card-container\");\n carouselWrapper.style.display = \"flex\";\n switch (this.getEffectiveVerticalContentAlignment()) {\n case Enums.VerticalAlignment.Top:\n carouselWrapper.style.alignItems = \"flex-start\";\n break;\n case Enums.VerticalAlignment.Bottom:\n carouselWrapper.style.alignItems = \"flex-end\";\n break;\n default:\n carouselWrapper.style.alignItems = \"center\";\n break;\n }\n if (shared_1.GlobalSettings.useAdvancedCardBottomTruncation) {\n // Forces the container to be at least as tall as its content.\n //\n // Fixes a quirk in Chrome where, for nested flex elements, the\n // inner element's height would never exceed the outer element's\n // height. This caused overflow truncation to break -- containers\n // would always be measured as not overflowing, since their heights\n // were constrained by their parents as opposed to truly reflecting\n // the height of their content.\n //\n // See the \"Browser Rendering Notes\" section of this answer:\n // https://stackoverflow.com/questions/36247140/why-doesnt-flex-item-shrink-past-content-size\n carouselWrapper.style.minHeight = \"-webkit-min-content\";\n }\n var prevElementDiv = document.createElement(\"div\");\n prevElementDiv.className = this.hostConfig.makeCssClassName(\"swiper-button-prev\");\n var nextElementDiv = document.createElement(\"div\");\n nextElementDiv.className = this.hostConfig.makeCssClassName(\"swiper-button-next\");\n if (this.carouselOrientation === Enums.Orientation.Horizontal) {\n this.updateCssForHorizontalCarousel(prevElementDiv, nextElementDiv);\n }\n else {\n this.updateCssForVerticalCarousel(navigationContainer, prevElementDiv, nextElementDiv);\n }\n var pagination = document.createElement(\"div\");\n pagination.className = this.hostConfig.makeCssClassName(\"swiper-pagination\", \"ac-carousel-pagination\");\n navigationContainer.appendChild(prevElementDiv);\n Utils.addCancelSelectActionEventHandler(prevElementDiv);\n navigationContainer.appendChild(pagination);\n Utils.addCancelSelectActionEventHandler(pagination);\n navigationContainer.appendChild(nextElementDiv);\n Utils.addCancelSelectActionEventHandler(nextElementDiv);\n if (this.isDesignMode()) {\n // If we are in design mode, we need to ensure these elements are in front of the peers\n prevElementDiv.style.zIndex = \"20\";\n nextElementDiv.style.zIndex = \"20\";\n pagination.style.zIndex = \"20\";\n }\n var requestedNumberOfPages = Math.min(this._pages.length, this.hostConfig.carousel.maxCarouselPages);\n if (this._pages.length > this.hostConfig.carousel.maxCarouselPages) {\n console.warn(strings_1.Strings.errors.tooManyCarouselPages);\n }\n if (this._pages.length > 0) {\n for (var i = 0; i < requestedNumberOfPages; i++) {\n var page = this._pages[i];\n var renderedItem = this.isElementAllowed(page) ? page.render() : undefined;\n renderedItem === null || renderedItem === void 0 ? void 0 : renderedItem.classList.add(\"ac-carousel-page\");\n (_a = renderedItem === null || renderedItem === void 0 ? void 0 : renderedItem.children[0]) === null || _a === void 0 ? void 0 : _a.classList.add(\"ac-carousel-page-container\");\n if (renderedItem) {\n Utils.appendChild(carouselWrapper, renderedItem);\n this._renderedPages.push(page);\n }\n }\n }\n carouselContainer.appendChild(carouselWrapper);\n carouselContainer.tabIndex = this.isDesignMode() ? -1 : 0;\n containerForAdorners.appendChild(carouselContainer);\n // `isRtl()` will set the correct value of rtl by reading the value from the parents\n this.rtl = this.isRtl();\n this.applyRTL(pagination);\n if (!this.isDesignMode()) {\n if (this.isValidRenderedPageIndex(this.initialPageIndex)) {\n this._currentIndex = this.initialPageIndex;\n }\n else {\n console.warn(strings_1.Strings.errors.invalidInitialPageIndex(this.initialPageIndex));\n this._currentIndex = 0;\n }\n }\n this.initializeCarouselControl(carouselContainer, nextElementDiv, prevElementDiv, pagination, this.rtl);\n return this._renderedPages.length > 0 ? cardLevelContainer : undefined;\n };\n Carousel.prototype.applyRTL = function (pagination) {\n _super.prototype.applyRTL.call(this, this._carouselPageContainer);\n if (this.rtl) {\n pagination.classList.add(this.hostConfig.makeCssClassName(\"ac-carousel-pagination-rtl\"));\n }\n };\n Carousel.prototype.validateOrientationProperties = function () {\n if (!this.carouselHeight) {\n this.carouselOrientation = Enums.Orientation.Horizontal;\n }\n };\n Carousel.prototype.updateCssForHorizontalCarousel = function (prevElementDiv, nextElementDiv) {\n prevElementDiv.classList.add(this.hostConfig.makeCssClassName(\"ac-carousel-left\"));\n nextElementDiv.classList.add(this.hostConfig.makeCssClassName(\"ac-carousel-right\"));\n };\n Carousel.prototype.updateCssForVerticalCarousel = function (navigationContainer, prevElementDiv, nextElementDiv) {\n this._containerForAdorners.classList.add(this.hostConfig.makeCssClassName(\"ac-carousel-container-vertical\"));\n navigationContainer.classList.add(this.hostConfig.makeCssClassName(\"ac-carousel-navigation-vertical\"));\n prevElementDiv.classList.add(this.hostConfig.makeCssClassName(\"ac-carousel-up\"));\n nextElementDiv.classList.add(this.hostConfig.makeCssClassName(\"ac-carousel-down\"));\n };\n Carousel.prototype.initializeCarouselControl = function (carouselContainer, nextElement, prevElement, paginationElement, rtl) {\n var _this = this;\n var _a, _b, _c;\n var nextElementAdjustedForRtl = (rtl === undefined || !rtl ? nextElement : prevElement);\n var prevElementAdjustedForRtl = (rtl === undefined || !rtl ? prevElement : nextElement);\n var prevElementAdjustedForOrientation = (Enums.Orientation.Horizontal === this.carouselOrientation) ? prevElementAdjustedForRtl : prevElement;\n var nextElementAdjustedForOrientation = (Enums.Orientation.Horizontal === this.carouselOrientation) ? nextElementAdjustedForRtl : nextElement;\n var swiperOptions = {\n loop: !this.isDesignMode() && this.carouselLoop,\n modules: [swiper_1.Navigation, swiper_1.Pagination, swiper_1.Scrollbar, swiper_1.A11y, swiper_1.History, swiper_1.Keyboard],\n pagination: {\n el: paginationElement,\n clickable: true\n },\n navigation: {\n prevEl: prevElementAdjustedForOrientation,\n nextEl: nextElementAdjustedForOrientation\n },\n a11y: {\n enabled: true\n },\n keyboard: {\n enabled: false,\n onlyInViewport: true\n },\n direction: this.carouselOrientation === Enums.Orientation.Horizontal ? \"horizontal\" : \"vertical\",\n resizeObserver: false,\n initialSlide: this._currentIndex\n };\n if (this.timer && !this.isDesignMode()) {\n (_a = swiperOptions.modules) === null || _a === void 0 ? void 0 : _a.push(swiper_1.Autoplay);\n swiperOptions.autoplay = { delay: this.timer, pauseOnMouseEnter: true };\n }\n var carousel = new swiper_1.Swiper(carouselContainer, swiperOptions);\n // While the 'pauseOnMouseEnter' option should resume autoplay on\n // mouse exit it doesn't do it, so adding custom events to handle it\n carouselContainer.addEventListener(\"mouseenter\", function (_event) {\n var _a;\n (_a = carousel.autoplay) === null || _a === void 0 ? void 0 : _a.stop();\n });\n carouselContainer.addEventListener(\"mouseleave\", function (_event) {\n var _a;\n (_a = carousel.autoplay) === null || _a === void 0 ? void 0 : _a.start();\n });\n carousel.on('navigationNext', function (swiper) {\n _this.raiseCarouselEvent(Enums.CarouselInteractionEvent.NavigationNext);\n });\n carousel.on('navigationPrev', function (swiper) {\n _this.raiseCarouselEvent(Enums.CarouselInteractionEvent.NavigationPrevious);\n });\n carousel.on('slideChangeTransitionEnd', function (swiper) {\n _this.currentIndex = swiper.realIndex;\n _this.raiseCarouselEvent(Enums.CarouselInteractionEvent.Pagination);\n });\n carousel.on('autoplay', function () {\n _this.raiseCarouselEvent(Enums.CarouselInteractionEvent.Autoplay);\n });\n carousel.on('paginationRender', function (swiper, paginationEl) {\n swiper.pagination.bullets.forEach(function (bullet, index) {\n bullet.addEventListener(\"keypress\", function (event) {\n if (event.key == \"Enter\") {\n event.preventDefault();\n swiper.slideTo(index + 1);\n }\n });\n });\n });\n carousel.on('destroy', function () {\n _this.destroyResizeObserver();\n });\n prevElement.title = (_b = prevElement.ariaLabel) !== null && _b !== void 0 ? _b : strings_1.Strings.defaults.carouselNavigationPreviousTooltip();\n nextElement.title = (_c = nextElement.ariaLabel) !== null && _c !== void 0 ? _c : strings_1.Strings.defaults.carouselNavigationNextTooltip();\n this._carousel = carousel;\n this.createResizeObserver();\n };\n Carousel.prototype.createCarouselPageInstance = function (source, context) {\n return context.parseCardObject(this, source, this.forbiddenChildElements(), !this.isDesignMode(), function (typeName) {\n return !typeName || typeName === \"CarouselPage\" ? new CarouselPage() : undefined;\n }, function (typeName, _errorType) {\n context.logParseEvent(undefined, enums_1.ValidationEvent.ElementTypeNotAllowed, strings_1.Strings.errors.elementTypeNotAllowed(typeName));\n });\n };\n Carousel.prototype.slideTo = function (index) {\n var _a;\n (_a = this._carousel) === null || _a === void 0 ? void 0 : _a.slideTo(index);\n };\n Object.defineProperty(Carousel.prototype, \"carouselPageContainer\", {\n get: function () {\n return this._carouselPageContainer;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Carousel.prototype, \"currentIndex\", {\n get: function () {\n return this._currentIndex;\n },\n set: function (currentIndex) {\n this._currentIndex = currentIndex;\n },\n enumerable: false,\n configurable: true\n });\n Carousel.prototype.createCarouselEvent = function (type) {\n var currentPageId;\n if (this.currentPageIndex != undefined) {\n currentPageId = this.getItemAt(this.currentPageIndex).id;\n }\n return new CarouselEvent(type, this.id, currentPageId, this.currentPageIndex);\n };\n Carousel.prototype.raiseCarouselEvent = function (eventType) {\n var card = this.parent ? this.parent.getRootElement() : undefined;\n var onCarouselEventHandler = card && card.onCarouselEvent\n ? card.onCarouselEvent\n : card_elements_1.AdaptiveCard.onCarouselEvent;\n // pagination event is triggered on slide transition end event \n if (onCarouselEventHandler && eventType == Enums.CarouselInteractionEvent.Pagination) {\n // returns the event type that causes slide transition\n onCarouselEventHandler(this.createCarouselEvent(this.previousEventType));\n }\n this.previousEventType = eventType;\n };\n /// Swiper version 8 added requestAnimationFrame() call in its resize observer code\n /// The new call causes flickering issue,\n /// We've copied resize observer code from Swiper version 7 with some modifications\n Carousel.prototype.createResizeObserver = function () {\n var _this = this;\n var _a;\n if (!this.checkIfCarouselInValidStateForResizeEvent()) {\n return;\n }\n this._observer = new ResizeObserver(function (entries) {\n var _a, _b, _c, _d;\n var width = (_a = _this._carousel) === null || _a === void 0 ? void 0 : _a.width;\n var height = (_b = _this._carousel) === null || _b === void 0 ? void 0 : _b.height;\n var newWidth = width;\n var newHeight = height;\n entries.forEach(function (_a) {\n var _b;\n var contentBoxSize = _a.contentBoxSize, contentRect = _a.contentRect, target = _a.target;\n if (target && target !== ((_b = _this._carousel) === null || _b === void 0 ? void 0 : _b.el)) {\n return;\n }\n newWidth = contentRect\n ? contentRect.width\n : (contentBoxSize[0] || contentBoxSize).inlineSize;\n newHeight = contentRect\n ? contentRect.height\n : (contentBoxSize[0] || contentBoxSize).blockSize;\n });\n if (newWidth !== width || newHeight !== height) {\n if (_this.checkIfCarouselInValidStateForResizeEvent()) {\n (_c = _this._carousel) === null || _c === void 0 ? void 0 : _c.emit('beforeResize');\n (_d = _this._carousel) === null || _d === void 0 ? void 0 : _d.emit('resize');\n }\n }\n });\n this._observer.observe((_a = this._carousel) === null || _a === void 0 ? void 0 : _a.el);\n };\n Carousel.prototype.destroyResizeObserver = function () {\n var _a;\n if (this._observer && this._observer.unobserve && ((_a = this._carousel) === null || _a === void 0 ? void 0 : _a.el)) {\n this._observer.unobserve(this._carousel.el);\n this._observer = null;\n }\n };\n ;\n Carousel.prototype.checkIfCarouselInValidStateForResizeEvent = function () {\n return this._carousel && !this._carousel.destroyed;\n };\n Carousel.timerProperty = new serialization_1.NumProperty(serialization_1.Versions.v1_6, \"timer\", undefined);\n Carousel.initialPageProperty = new serialization_1.NumProperty(serialization_1.Versions.v1_6, \"initialPage\", 0);\n Carousel.loopProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_6, \"loop\", true);\n Carousel.orientationProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_6, \"orientation\", Enums.Orientation, Enums.Orientation.Horizontal);\n Carousel.carouselHeightProperty = new serialization_1.PixelSizeProperty(serialization_1.Versions.v1_6, \"heightInPixels\");\n __decorate([\n (0, serialization_1.property)(Carousel.timerProperty)\n ], Carousel.prototype, \"timer\", null);\n __decorate([\n (0, serialization_1.property)(Carousel.initialPageProperty)\n ], Carousel.prototype, \"initialPageIndex\", null);\n __decorate([\n (0, serialization_1.property)(Carousel.loopProperty)\n ], Carousel.prototype, \"carouselLoop\", void 0);\n __decorate([\n (0, serialization_1.property)(Carousel.orientationProperty)\n ], Carousel.prototype, \"carouselOrientation\", void 0);\n __decorate([\n (0, serialization_1.property)(Carousel.carouselHeightProperty)\n ], Carousel.prototype, \"carouselHeight\", void 0);\n return Carousel;\n}(card_elements_1.Container));\nexports.Carousel = Carousel;\nvar CarouselEvent = /** @class */ (function () {\n function CarouselEvent(type, carouselId, activeCarouselPageId, activeCarouselPageIndex) {\n this.type = type;\n this.carouselId = carouselId;\n this.activeCarouselPageId = activeCarouselPageId;\n this.activeCarouselPageIndex = activeCarouselPageIndex;\n }\n return CarouselEvent;\n}());\nexports.CarouselEvent = CarouselEvent;\nregistry_1.GlobalRegistry.defaultElements.register(\"Carousel\", Carousel, serialization_1.Versions.v1_6);\n//# sourceMappingURL=carousel.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ChannelAdapter = void 0;\nvar ChannelAdapter = /** @class */ (function () {\n function ChannelAdapter() {\n }\n return ChannelAdapter;\n}());\nexports.ChannelAdapter = ChannelAdapter;\n//# sourceMappingURL=channel-adapter.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Collection = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar Collection = /** @class */ (function () {\n function Collection() {\n this._items = [];\n }\n Collection.prototype.get = function (index) {\n return this._items[index];\n };\n Collection.prototype.add = function (item) {\n this._items.push(item);\n if (this.onItemAdded) {\n this.onItemAdded(item);\n }\n };\n Collection.prototype.remove = function (item) {\n var i = this._items.indexOf(item);\n if (i >= 0) {\n this._items = this._items.splice(i, 1);\n if (this.onItemRemoved) {\n this.onItemRemoved(item);\n }\n }\n };\n Collection.prototype.indexOf = function (item) {\n return this._items.indexOf(item);\n };\n Object.defineProperty(Collection.prototype, \"length\", {\n get: function () {\n return this._items.length;\n },\n enumerable: false,\n configurable: true\n });\n return Collection;\n}());\nexports.Collection = Collection;\n//# sourceMappingURL=collection.js.map","\"use strict\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Constants = void 0;\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\nvar Constants = /** @class */ (function () {\n function Constants() {\n }\n Constants.keys = {\n tab: \"Tab\",\n enter: \"Enter\",\n escape: \"Escape\",\n space: \" \",\n up: \"ArrowUp\",\n down: \"ArrowDown\",\n delete: \"Delete\"\n };\n return Constants;\n}());\nexports.Constants = Constants;\n//# sourceMappingURL=constants.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// Copyright (C) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\n__exportStar(require(\"./menu-item\"), exports);\n__exportStar(require(\"./popup-menu\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.MenuItem = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar host_config_1 = require(\"../host-config\");\nvar constants_1 = require(\"./constants\");\nvar MenuItem = /** @class */ (function () {\n function MenuItem(key, value) {\n this._isEnabled = true;\n this.key = key;\n this._value = value;\n }\n MenuItem.prototype.click = function () {\n if (this.isEnabled && this.onClick) {\n this.onClick(this);\n }\n };\n MenuItem.prototype.updateCssClasses = function () {\n if (this._element) {\n var effectiveHostConfig = this._hostConfig ? this._hostConfig : host_config_1.defaultHostConfig;\n this._element.className = effectiveHostConfig.makeCssClassName(\"ac-ctrl\");\n this._element.classList.add(effectiveHostConfig.makeCssClassName(this.isEnabled ? \"ac-ctrl-dropdown-item\" : \"ac-ctrl-dropdown-item-disabled\"));\n if (!this.isEnabled) {\n this._element.classList.add(effectiveHostConfig.makeCssClassName(\"ac-disabled\"));\n }\n }\n };\n MenuItem.prototype.toString = function () {\n return this.value;\n };\n MenuItem.prototype.render = function (hostConfig) {\n var _this = this;\n this._hostConfig = hostConfig;\n if (!this._element) {\n this._element = document.createElement(\"span\");\n this._element.innerText = this.value;\n this._element.setAttribute(\"role\", \"menuitem\");\n if (!this.isEnabled) {\n this._element.setAttribute(\"aria-disabled\", \"true\");\n }\n this._element.setAttribute(\"aria-current\", \"false\");\n this._element.onmouseup = function (_e) {\n _this.click();\n };\n this._element.onkeydown = function (e) {\n if (e.key === constants_1.Constants.keys.enter) {\n e.cancelBubble = true;\n _this.click();\n }\n };\n this.updateCssClasses();\n }\n return this._element;\n };\n Object.defineProperty(MenuItem.prototype, \"value\", {\n get: function () {\n return this._value;\n },\n set: function (newValue) {\n this._value = newValue;\n if (this._element) {\n this._element.innerText = newValue;\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MenuItem.prototype, \"isEnabled\", {\n get: function () {\n return this._isEnabled;\n },\n set: function (value) {\n if (this._isEnabled !== value) {\n this._isEnabled = value;\n this.updateCssClasses();\n }\n },\n enumerable: false,\n configurable: true\n });\n return MenuItem;\n}());\nexports.MenuItem = MenuItem;\n//# sourceMappingURL=menu-item.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PopupControl = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar constants_1 = require(\"./constants\");\nvar Utils = require(\"../utils\");\nvar host_config_1 = require(\"../host-config\");\nvar PopupControl = /** @class */ (function () {\n function PopupControl() {\n this._isOpen = false;\n }\n PopupControl.prototype.keyDown = function (e) {\n switch (e.key) {\n case constants_1.Constants.keys.escape:\n this.closePopup(true);\n break;\n }\n };\n PopupControl.prototype.render = function (_rootElementBounds) {\n var _this = this;\n var element = document.createElement(\"div\");\n element.tabIndex = 0;\n element.className = this.hostConfig.makeCssClassName(\"ac-ctrl\", \"ac-ctrl-popup-container\");\n element.setAttribute(\"role\", \"dialog\");\n element.setAttribute(\"aria-modal\", \"true\");\n element.onkeydown = function (e) {\n _this.keyDown(e);\n return !e.cancelBubble;\n };\n element.appendChild(this.renderContent());\n return element;\n };\n PopupControl.prototype.focus = function () {\n if (this._popupElement) {\n this._popupElement.firstElementChild.focus();\n }\n };\n PopupControl.prototype.popup = function (rootElement) {\n var _a, _b, _c, _d, _f;\n var _this = this;\n if (!this._isOpen) {\n this._overlayElement = document.createElement(\"div\");\n this._overlayElement.className = this.hostConfig.makeCssClassName(\"ac-ctrl-overlay\");\n this._overlayElement.tabIndex = 0;\n this._overlayElement.style.width = document.documentElement.scrollWidth + \"px\";\n this._overlayElement.style.height = document.documentElement.scrollHeight + \"px\";\n this._overlayElement.onfocus = function (_e) {\n _this.closePopup(true);\n };\n document.body.appendChild(this._overlayElement);\n var rootElementBounds = rootElement.getBoundingClientRect();\n this._popupElement = this.render(rootElementBounds);\n (_a = this._popupElement.classList).remove.apply(_a, this.hostConfig.makeCssClassNames(\"ac-ctrl-slide\", \"ac-ctrl-slideLeftToRight\", \"ac-ctrl-slideRightToLeft\", \"ac-ctrl-slideTopToBottom\", \"ac-ctrl-slideRightToLeft\"));\n window.addEventListener(\"resize\", function (_e) {\n _this.closePopup(true);\n });\n var rootElementLabel = rootElement.getAttribute(\"aria-label\");\n if (rootElementLabel) {\n this._popupElement.setAttribute(\"aria-label\", rootElementLabel);\n }\n this._overlayElement.appendChild(this._popupElement);\n var popupElementBounds = this._popupElement.getBoundingClientRect();\n var availableSpaceBelow = window.innerHeight - rootElementBounds.bottom;\n var availableSpaceAbove = rootElementBounds.top;\n var availableSpaceRight = window.innerWidth - rootElementBounds.right;\n var availableSpaceLeft = rootElementBounds.left;\n var left = rootElementBounds.left + Utils.getScrollX();\n var top_1;\n if (availableSpaceAbove < popupElementBounds.height &&\n availableSpaceBelow < popupElementBounds.height) {\n // Not enough space above or below root element\n var actualPopupHeight = Math.min(popupElementBounds.height, window.innerHeight);\n this._popupElement.style.maxHeight = actualPopupHeight + \"px\";\n if (actualPopupHeight < popupElementBounds.height) {\n top_1 = Utils.getScrollY();\n }\n else {\n top_1 =\n Utils.getScrollY() +\n rootElementBounds.top +\n (rootElementBounds.height - actualPopupHeight) / 2;\n }\n if (availableSpaceLeft < popupElementBounds.width &&\n availableSpaceRight < popupElementBounds.width) {\n // Not enough space left or right of root element\n var actualPopupWidth = Math.min(popupElementBounds.width, window.innerWidth);\n this._popupElement.style.maxWidth = actualPopupWidth + \"px\";\n if (actualPopupWidth < popupElementBounds.width) {\n left = Utils.getScrollX();\n }\n else {\n left =\n Utils.getScrollX() +\n rootElementBounds.left +\n (rootElementBounds.width - actualPopupWidth) / 2;\n }\n }\n else {\n // Enough space on the left or right of the root element\n if (availableSpaceRight >= popupElementBounds.width) {\n left = Utils.getScrollX() + rootElementBounds.right;\n (_b = this._popupElement.classList).add.apply(_b, this.hostConfig.makeCssClassNames(\"ac-ctrl-slide\", \"ac-ctrl-slideLeftToRight\"));\n }\n else {\n left =\n Utils.getScrollX() + rootElementBounds.left - popupElementBounds.width;\n (_c = this._popupElement.classList).add.apply(_c, this.hostConfig.makeCssClassNames(\"ac-ctrl-slide\", \"ac-ctrl-slideRightToLeft\"));\n }\n }\n }\n else {\n // Enough space above or below root element\n if (availableSpaceBelow >= popupElementBounds.height) {\n top_1 = Utils.getScrollY() + rootElementBounds.bottom;\n (_d = this._popupElement.classList).add.apply(_d, this.hostConfig.makeCssClassNames(\"ac-ctrl-slide\", \"ac-ctrl-slideTopToBottom\"));\n }\n else {\n top_1 = Utils.getScrollY() + rootElementBounds.top - popupElementBounds.height;\n (_f = this._popupElement.classList).add.apply(_f, this.hostConfig.makeCssClassNames(\"ac-ctrl-slide\", \"ac-ctrl-slideBottomToTop\"));\n }\n if (availableSpaceRight < popupElementBounds.width) {\n left = Utils.getScrollX() + rootElementBounds.right - popupElementBounds.width;\n }\n }\n this._popupElement.style.left = left + \"px\";\n this._popupElement.style.top = top_1 + \"px\";\n this._popupElement.focus();\n this._isOpen = true;\n }\n };\n PopupControl.prototype.closePopup = function (wasCancelled) {\n if (this._isOpen) {\n document.body.removeChild(this._overlayElement);\n this._isOpen = false;\n if (this.onClose) {\n this.onClose(this, wasCancelled);\n }\n }\n };\n Object.defineProperty(PopupControl.prototype, \"hostConfig\", {\n get: function () {\n return this._hostConfig ? this._hostConfig : host_config_1.defaultHostConfig;\n },\n set: function (value) {\n this._hostConfig = value;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(PopupControl.prototype, \"isOpen\", {\n get: function () {\n return this._isOpen;\n },\n enumerable: false,\n configurable: true\n });\n return PopupControl;\n}());\nexports.PopupControl = PopupControl;\n//# sourceMappingURL=popup-control.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PopupMenu = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar constants_1 = require(\"./constants\");\nvar collection_1 = require(\"./collection\");\nvar popup_control_1 = require(\"./popup-control\");\nvar PopupMenu = /** @class */ (function (_super) {\n __extends(PopupMenu, _super);\n function PopupMenu() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._items = new collection_1.Collection();\n _this._renderedItems = [];\n _this._selectedIndex = -1;\n return _this;\n }\n PopupMenu.prototype.renderContent = function () {\n var element = document.createElement(\"div\");\n element.className = this.hostConfig.makeCssClassName(\"ac-ctrl ac-popup\");\n element.setAttribute(\"role\", \"listbox\");\n for (var i = 0; i < this._items.length; i++) {\n var renderedItem = this._items.get(i).render(this.hostConfig);\n renderedItem.tabIndex = 0;\n element.appendChild(renderedItem);\n if (i === this.selectedIndex) {\n renderedItem.focus();\n }\n this._renderedItems.push(renderedItem);\n }\n return element;\n };\n PopupMenu.prototype.keyDown = function (e) {\n _super.prototype.keyDown.call(this, e);\n var selectedItemIndex = this._selectedIndex;\n switch (e.key) {\n case constants_1.Constants.keys.tab:\n this.closePopup(true);\n break;\n /*\n case Constants.keys.enter:\n if (this.selectedIndex >= 0) {\n this.selectedIndex = this.selectedIndex;\n\n this.close();\n }\n\n break;\n */\n case constants_1.Constants.keys.up:\n if (selectedItemIndex <= 0) {\n selectedItemIndex = this._renderedItems.length - 1;\n }\n else {\n selectedItemIndex--;\n if (selectedItemIndex < 0) {\n selectedItemIndex = this._renderedItems.length - 1;\n }\n }\n this.selectedIndex = selectedItemIndex;\n e.cancelBubble = true;\n break;\n case constants_1.Constants.keys.down:\n if (selectedItemIndex < 0) {\n selectedItemIndex = 0;\n }\n else {\n selectedItemIndex++;\n if (selectedItemIndex >= this._renderedItems.length) {\n selectedItemIndex = 0;\n }\n }\n this.selectedIndex = selectedItemIndex;\n e.cancelBubble = true;\n break;\n }\n };\n Object.defineProperty(PopupMenu.prototype, \"items\", {\n get: function () {\n return this._items;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(PopupMenu.prototype, \"selectedIndex\", {\n get: function () {\n return this._selectedIndex;\n },\n set: function (index) {\n if (index >= 0 && index < this._renderedItems.length) {\n this._renderedItems[index].focus();\n this._selectedIndex = index;\n }\n },\n enumerable: false,\n configurable: true\n });\n return PopupMenu;\n}(popup_control_1.PopupControl));\nexports.PopupMenu = PopupMenu;\n//# sourceMappingURL=popup-menu.js.map","\"use strict\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ActionRole = exports.CarouselInteractionEvent = exports.LogLevel = exports.RefreshMode = exports.TypeErrorType = exports.ContainerFitStatus = exports.ValidationEvent = exports.ValidationPhase = exports.InputLabelPosition = exports.InputTextStyle = exports.ActionIconPlacement = exports.FillMode = exports.Orientation = exports.ShowCardActionMode = exports.ImageStyle = exports.ActionAlignment = exports.VerticalAlignment = exports.HorizontalAlignment = exports.TextColor = exports.Spacing = exports.FontType = exports.TextWeight = exports.InputStyle = exports.TextSize = exports.SizeUnit = exports.ImageSetPresentationStyle = exports.ImageSize = exports.Size = exports.ActionMode = exports.ActionStyle = exports.ContainerStyle = void 0;\n/*\n This should really be a string enum, e.g.\n\n export enum ContainerStyle {\n Default = \"default\",\n Emphasis = \"emphasis\"\n }\n\n However, some hosts do not use a version of TypeScript\n recent enough to understand string enums. This is\n a compatible construct that does not require using\n a more recent version of TypeScript.\n\n Also note the \"weird\" way these readonly fields are declared is to work around\n a breaking change introduced in TS 3.1 wrt d.ts generation. DO NOT CHANGE\n and adopt this syntax for all other static readonly fields.\n*/\n/* eslint-disable @typescript-eslint/no-extraneous-class, @typescript-eslint/naming-convention */\nvar ContainerStyle = /** @class */ (function () {\n function ContainerStyle() {\n }\n ContainerStyle.Default = \"default\";\n ContainerStyle.Emphasis = \"emphasis\";\n ContainerStyle.Accent = \"accent\";\n ContainerStyle.Good = \"good\";\n ContainerStyle.Attention = \"attention\";\n ContainerStyle.Warning = \"warning\";\n return ContainerStyle;\n}());\nexports.ContainerStyle = ContainerStyle;\nvar ActionStyle = /** @class */ (function () {\n function ActionStyle() {\n }\n ActionStyle.Default = \"default\";\n ActionStyle.Positive = \"positive\";\n ActionStyle.Destructive = \"destructive\";\n return ActionStyle;\n}());\nexports.ActionStyle = ActionStyle;\nvar ActionMode = /** @class */ (function () {\n function ActionMode() {\n }\n ActionMode.Primary = \"primary\";\n ActionMode.Secondary = \"secondary\";\n return ActionMode;\n}());\nexports.ActionMode = ActionMode;\n/* eslint-enable @typescript-eslint/no-extraneous-class, @typescript-eslint/naming-convention */\nvar Size;\n(function (Size) {\n Size[Size[\"Auto\"] = 0] = \"Auto\";\n Size[Size[\"Stretch\"] = 1] = \"Stretch\";\n Size[Size[\"Small\"] = 2] = \"Small\";\n Size[Size[\"Medium\"] = 3] = \"Medium\";\n Size[Size[\"Large\"] = 4] = \"Large\";\n})(Size = exports.Size || (exports.Size = {}));\nvar ImageSize;\n(function (ImageSize) {\n ImageSize[ImageSize[\"Small\"] = 0] = \"Small\";\n ImageSize[ImageSize[\"Medium\"] = 1] = \"Medium\";\n ImageSize[ImageSize[\"Large\"] = 2] = \"Large\";\n})(ImageSize = exports.ImageSize || (exports.ImageSize = {}));\nvar ImageSetPresentationStyle;\n(function (ImageSetPresentationStyle) {\n ImageSetPresentationStyle[ImageSetPresentationStyle[\"Default\"] = 0] = \"Default\";\n ImageSetPresentationStyle[ImageSetPresentationStyle[\"Stacked\"] = 1] = \"Stacked\";\n})(ImageSetPresentationStyle = exports.ImageSetPresentationStyle || (exports.ImageSetPresentationStyle = {}));\nvar SizeUnit;\n(function (SizeUnit) {\n SizeUnit[SizeUnit[\"Weight\"] = 0] = \"Weight\";\n SizeUnit[SizeUnit[\"Pixel\"] = 1] = \"Pixel\";\n})(SizeUnit = exports.SizeUnit || (exports.SizeUnit = {}));\nvar TextSize;\n(function (TextSize) {\n TextSize[TextSize[\"Small\"] = 0] = \"Small\";\n TextSize[TextSize[\"Default\"] = 1] = \"Default\";\n TextSize[TextSize[\"Medium\"] = 2] = \"Medium\";\n TextSize[TextSize[\"Large\"] = 3] = \"Large\";\n TextSize[TextSize[\"ExtraLarge\"] = 4] = \"ExtraLarge\";\n})(TextSize = exports.TextSize || (exports.TextSize = {}));\nvar InputStyle;\n(function (InputStyle) {\n InputStyle[InputStyle[\"RevealOnHover\"] = 0] = \"RevealOnHover\";\n InputStyle[InputStyle[\"Default\"] = 1] = \"Default\";\n})(InputStyle = exports.InputStyle || (exports.InputStyle = {}));\nvar TextWeight;\n(function (TextWeight) {\n TextWeight[TextWeight[\"Lighter\"] = 0] = \"Lighter\";\n TextWeight[TextWeight[\"Default\"] = 1] = \"Default\";\n TextWeight[TextWeight[\"Bolder\"] = 2] = \"Bolder\";\n})(TextWeight = exports.TextWeight || (exports.TextWeight = {}));\nvar FontType;\n(function (FontType) {\n FontType[FontType[\"Default\"] = 0] = \"Default\";\n FontType[FontType[\"Monospace\"] = 1] = \"Monospace\";\n})(FontType = exports.FontType || (exports.FontType = {}));\nvar Spacing;\n(function (Spacing) {\n Spacing[Spacing[\"None\"] = 0] = \"None\";\n Spacing[Spacing[\"Small\"] = 1] = \"Small\";\n Spacing[Spacing[\"Default\"] = 2] = \"Default\";\n Spacing[Spacing[\"Medium\"] = 3] = \"Medium\";\n Spacing[Spacing[\"Large\"] = 4] = \"Large\";\n Spacing[Spacing[\"ExtraLarge\"] = 5] = \"ExtraLarge\";\n Spacing[Spacing[\"Padding\"] = 6] = \"Padding\";\n})(Spacing = exports.Spacing || (exports.Spacing = {}));\nvar TextColor;\n(function (TextColor) {\n TextColor[TextColor[\"Default\"] = 0] = \"Default\";\n TextColor[TextColor[\"Dark\"] = 1] = \"Dark\";\n TextColor[TextColor[\"Light\"] = 2] = \"Light\";\n TextColor[TextColor[\"Accent\"] = 3] = \"Accent\";\n TextColor[TextColor[\"Good\"] = 4] = \"Good\";\n TextColor[TextColor[\"Warning\"] = 5] = \"Warning\";\n TextColor[TextColor[\"Attention\"] = 6] = \"Attention\";\n})(TextColor = exports.TextColor || (exports.TextColor = {}));\nvar HorizontalAlignment;\n(function (HorizontalAlignment) {\n HorizontalAlignment[HorizontalAlignment[\"Left\"] = 0] = \"Left\";\n HorizontalAlignment[HorizontalAlignment[\"Center\"] = 1] = \"Center\";\n HorizontalAlignment[HorizontalAlignment[\"Right\"] = 2] = \"Right\";\n})(HorizontalAlignment = exports.HorizontalAlignment || (exports.HorizontalAlignment = {}));\nvar VerticalAlignment;\n(function (VerticalAlignment) {\n VerticalAlignment[VerticalAlignment[\"Top\"] = 0] = \"Top\";\n VerticalAlignment[VerticalAlignment[\"Center\"] = 1] = \"Center\";\n VerticalAlignment[VerticalAlignment[\"Bottom\"] = 2] = \"Bottom\";\n})(VerticalAlignment = exports.VerticalAlignment || (exports.VerticalAlignment = {}));\nvar ActionAlignment;\n(function (ActionAlignment) {\n ActionAlignment[ActionAlignment[\"Left\"] = 0] = \"Left\";\n ActionAlignment[ActionAlignment[\"Center\"] = 1] = \"Center\";\n ActionAlignment[ActionAlignment[\"Right\"] = 2] = \"Right\";\n ActionAlignment[ActionAlignment[\"Stretch\"] = 3] = \"Stretch\";\n})(ActionAlignment = exports.ActionAlignment || (exports.ActionAlignment = {}));\nvar ImageStyle;\n(function (ImageStyle) {\n ImageStyle[ImageStyle[\"Default\"] = 0] = \"Default\";\n ImageStyle[ImageStyle[\"Person\"] = 1] = \"Person\";\n})(ImageStyle = exports.ImageStyle || (exports.ImageStyle = {}));\nvar ShowCardActionMode;\n(function (ShowCardActionMode) {\n ShowCardActionMode[ShowCardActionMode[\"Inline\"] = 0] = \"Inline\";\n ShowCardActionMode[ShowCardActionMode[\"Popup\"] = 1] = \"Popup\";\n})(ShowCardActionMode = exports.ShowCardActionMode || (exports.ShowCardActionMode = {}));\nvar Orientation;\n(function (Orientation) {\n Orientation[Orientation[\"Horizontal\"] = 0] = \"Horizontal\";\n Orientation[Orientation[\"Vertical\"] = 1] = \"Vertical\";\n})(Orientation = exports.Orientation || (exports.Orientation = {}));\nvar FillMode;\n(function (FillMode) {\n FillMode[FillMode[\"Cover\"] = 0] = \"Cover\";\n FillMode[FillMode[\"RepeatHorizontally\"] = 1] = \"RepeatHorizontally\";\n FillMode[FillMode[\"RepeatVertically\"] = 2] = \"RepeatVertically\";\n FillMode[FillMode[\"Repeat\"] = 3] = \"Repeat\";\n})(FillMode = exports.FillMode || (exports.FillMode = {}));\nvar ActionIconPlacement;\n(function (ActionIconPlacement) {\n ActionIconPlacement[ActionIconPlacement[\"LeftOfTitle\"] = 0] = \"LeftOfTitle\";\n ActionIconPlacement[ActionIconPlacement[\"AboveTitle\"] = 1] = \"AboveTitle\";\n})(ActionIconPlacement = exports.ActionIconPlacement || (exports.ActionIconPlacement = {}));\nvar InputTextStyle;\n(function (InputTextStyle) {\n InputTextStyle[InputTextStyle[\"Text\"] = 0] = \"Text\";\n InputTextStyle[InputTextStyle[\"Tel\"] = 1] = \"Tel\";\n InputTextStyle[InputTextStyle[\"Url\"] = 2] = \"Url\";\n InputTextStyle[InputTextStyle[\"Email\"] = 3] = \"Email\";\n InputTextStyle[InputTextStyle[\"Password\"] = 4] = \"Password\";\n})(InputTextStyle = exports.InputTextStyle || (exports.InputTextStyle = {}));\nvar InputLabelPosition;\n(function (InputLabelPosition) {\n InputLabelPosition[InputLabelPosition[\"Inline\"] = 0] = \"Inline\";\n InputLabelPosition[InputLabelPosition[\"Above\"] = 1] = \"Above\";\n})(InputLabelPosition = exports.InputLabelPosition || (exports.InputLabelPosition = {}));\nvar ValidationPhase;\n(function (ValidationPhase) {\n ValidationPhase[ValidationPhase[\"Parse\"] = 0] = \"Parse\";\n ValidationPhase[ValidationPhase[\"ToJSON\"] = 1] = \"ToJSON\";\n ValidationPhase[ValidationPhase[\"Validation\"] = 2] = \"Validation\";\n})(ValidationPhase = exports.ValidationPhase || (exports.ValidationPhase = {}));\nvar ValidationEvent;\n(function (ValidationEvent) {\n ValidationEvent[ValidationEvent[\"Hint\"] = 0] = \"Hint\";\n ValidationEvent[ValidationEvent[\"ActionTypeNotAllowed\"] = 1] = \"ActionTypeNotAllowed\";\n ValidationEvent[ValidationEvent[\"CollectionCantBeEmpty\"] = 2] = \"CollectionCantBeEmpty\";\n ValidationEvent[ValidationEvent[\"Deprecated\"] = 3] = \"Deprecated\";\n ValidationEvent[ValidationEvent[\"ElementTypeNotAllowed\"] = 4] = \"ElementTypeNotAllowed\";\n ValidationEvent[ValidationEvent[\"InteractivityNotAllowed\"] = 5] = \"InteractivityNotAllowed\";\n ValidationEvent[ValidationEvent[\"InvalidPropertyValue\"] = 6] = \"InvalidPropertyValue\";\n ValidationEvent[ValidationEvent[\"MissingCardType\"] = 7] = \"MissingCardType\";\n ValidationEvent[ValidationEvent[\"PropertyCantBeNull\"] = 8] = \"PropertyCantBeNull\";\n ValidationEvent[ValidationEvent[\"TooManyActions\"] = 9] = \"TooManyActions\";\n ValidationEvent[ValidationEvent[\"UnknownActionType\"] = 10] = \"UnknownActionType\";\n ValidationEvent[ValidationEvent[\"UnknownElementType\"] = 11] = \"UnknownElementType\";\n ValidationEvent[ValidationEvent[\"UnsupportedCardVersion\"] = 12] = \"UnsupportedCardVersion\";\n ValidationEvent[ValidationEvent[\"DuplicateId\"] = 13] = \"DuplicateId\";\n ValidationEvent[ValidationEvent[\"UnsupportedProperty\"] = 14] = \"UnsupportedProperty\";\n ValidationEvent[ValidationEvent[\"RequiredInputsShouldHaveLabel\"] = 15] = \"RequiredInputsShouldHaveLabel\";\n ValidationEvent[ValidationEvent[\"RequiredInputsShouldHaveErrorMessage\"] = 16] = \"RequiredInputsShouldHaveErrorMessage\";\n ValidationEvent[ValidationEvent[\"Other\"] = 17] = \"Other\";\n})(ValidationEvent = exports.ValidationEvent || (exports.ValidationEvent = {}));\nvar ContainerFitStatus;\n(function (ContainerFitStatus) {\n ContainerFitStatus[ContainerFitStatus[\"FullyInContainer\"] = 0] = \"FullyInContainer\";\n ContainerFitStatus[ContainerFitStatus[\"Overflowing\"] = 1] = \"Overflowing\";\n ContainerFitStatus[ContainerFitStatus[\"FullyOutOfContainer\"] = 2] = \"FullyOutOfContainer\";\n})(ContainerFitStatus = exports.ContainerFitStatus || (exports.ContainerFitStatus = {}));\nvar TypeErrorType;\n(function (TypeErrorType) {\n TypeErrorType[TypeErrorType[\"UnknownType\"] = 0] = \"UnknownType\";\n TypeErrorType[TypeErrorType[\"ForbiddenType\"] = 1] = \"ForbiddenType\";\n})(TypeErrorType = exports.TypeErrorType || (exports.TypeErrorType = {}));\nvar RefreshMode;\n(function (RefreshMode) {\n RefreshMode[RefreshMode[\"Disabled\"] = 0] = \"Disabled\";\n RefreshMode[RefreshMode[\"Manual\"] = 1] = \"Manual\";\n RefreshMode[RefreshMode[\"Automatic\"] = 2] = \"Automatic\";\n})(RefreshMode = exports.RefreshMode || (exports.RefreshMode = {}));\nvar LogLevel;\n(function (LogLevel) {\n LogLevel[LogLevel[\"Info\"] = 0] = \"Info\";\n LogLevel[LogLevel[\"Warning\"] = 1] = \"Warning\";\n LogLevel[LogLevel[\"Error\"] = 2] = \"Error\";\n})(LogLevel = exports.LogLevel || (exports.LogLevel = {}));\nvar CarouselInteractionEvent;\n(function (CarouselInteractionEvent) {\n CarouselInteractionEvent[CarouselInteractionEvent[\"NavigationNext\"] = 0] = \"NavigationNext\";\n CarouselInteractionEvent[CarouselInteractionEvent[\"NavigationPrevious\"] = 1] = \"NavigationPrevious\";\n CarouselInteractionEvent[CarouselInteractionEvent[\"Pagination\"] = 2] = \"Pagination\";\n CarouselInteractionEvent[CarouselInteractionEvent[\"Autoplay\"] = 3] = \"Autoplay\";\n})(CarouselInteractionEvent = exports.CarouselInteractionEvent || (exports.CarouselInteractionEvent = {}));\nvar ActionRole;\n(function (ActionRole) {\n ActionRole[ActionRole[\"Button\"] = 0] = \"Button\";\n ActionRole[ActionRole[\"Link\"] = 1] = \"Link\";\n ActionRole[ActionRole[\"Tab\"] = 2] = \"Tab\";\n ActionRole[ActionRole[\"Menu\"] = 3] = \"Menu\";\n ActionRole[ActionRole[\"MenuItem\"] = 4] = \"MenuItem\";\n})(ActionRole = exports.ActionRole || (exports.ActionRole = {}));\n//# sourceMappingURL=enums.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.HostCapabilities = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar serialization_1 = require(\"./serialization\");\nvar HostCapabilities = /** @class */ (function (_super) {\n __extends(HostCapabilities, _super);\n function HostCapabilities() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._capabilities = {};\n return _this;\n }\n HostCapabilities.prototype.getSchemaKey = function () {\n return \"HostCapabilities\";\n };\n HostCapabilities.prototype.internalParse = function (source, context) {\n _super.prototype.internalParse.call(this, source, context);\n if (source) {\n // eslint-disable-next-line guard-for-in\n for (var name_1 in source) {\n var jsonVersion = source[name_1];\n if (typeof jsonVersion === \"string\") {\n if (jsonVersion === \"*\") {\n this.addCapability(name_1, \"*\");\n }\n else {\n var version = serialization_1.Version.parse(jsonVersion, context);\n if (version === null || version === void 0 ? void 0 : version.isValid) {\n this.addCapability(name_1, version);\n }\n }\n }\n }\n }\n };\n HostCapabilities.prototype.internalToJSON = function (target, context) {\n _super.prototype.internalToJSON.call(this, target, context);\n // eslint-disable-next-line guard-for-in\n for (var key in this._capabilities) {\n target[key] = this._capabilities[key];\n }\n };\n HostCapabilities.prototype.addCapability = function (name, version) {\n this._capabilities[name] = version;\n };\n HostCapabilities.prototype.removeCapability = function (name) {\n delete this._capabilities[name];\n };\n HostCapabilities.prototype.clear = function () {\n this._capabilities = {};\n };\n HostCapabilities.prototype.hasCapability = function (name, version) {\n if (this._capabilities.hasOwnProperty(name)) {\n if (version === \"*\" || this._capabilities[name] === \"*\") {\n return true;\n }\n return version.compareTo(this._capabilities[name]) <= 0;\n }\n return false;\n };\n HostCapabilities.prototype.areAllMet = function (hostCapabilities) {\n for (var capabilityName in this._capabilities) {\n if (!hostCapabilities.hasCapability(capabilityName, this._capabilities[capabilityName])) {\n return false;\n }\n }\n return true;\n };\n return HostCapabilities;\n}(serialization_1.SerializableObject));\nexports.HostCapabilities = HostCapabilities;\n//# sourceMappingURL=host-capabilities.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.defaultHostConfig = exports.HostConfig = exports.CarouselConfig = exports.FontTypeSet = exports.FontTypeDefinition = exports.ContainerStyleSet = exports.ContainerStyleDefinition = exports.ColorSetDefinition = exports.ActionsConfig = exports.ShowCardActionConfig = exports.FactSetConfig = exports.FactTitleDefinition = exports.FactTextDefinition = exports.InputConfig = exports.InputLabelConfig = exports.RequiredInputLabelTextDefinition = exports.TextBlockConfig = exports.TextStyleSet = exports.TextStyleDefinition = exports.BaseTextDefinition = exports.TableConfig = exports.MediaConfig = exports.ImageSetConfig = exports.AdaptiveCardConfig = exports.TextColorDefinition = exports.ColorDefinition = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar Enums = require(\"./enums\");\nvar Utils = require(\"./utils\");\nvar Shared = require(\"./shared\");\nvar host_capabilities_1 = require(\"./host-capabilities\");\nfunction parseHostConfigEnum(targetEnum, value, defaultValue) {\n if (typeof value === \"string\") {\n var parsedValue = Utils.parseEnum(targetEnum, value, defaultValue);\n return parsedValue !== undefined ? parsedValue : defaultValue;\n }\n else if (typeof value === \"number\") {\n return value;\n }\n else {\n return defaultValue;\n }\n}\nvar ColorDefinition = /** @class */ (function () {\n function ColorDefinition(defaultColor, subtleColor) {\n this.default = \"#000000\";\n this.subtle = \"#666666\";\n if (defaultColor) {\n this.default = defaultColor;\n }\n if (subtleColor) {\n this.subtle = subtleColor;\n }\n }\n ColorDefinition.prototype.parse = function (obj) {\n if (obj) {\n this.default = obj[\"default\"] || this.default;\n this.subtle = obj[\"subtle\"] || this.subtle;\n }\n };\n return ColorDefinition;\n}());\nexports.ColorDefinition = ColorDefinition;\nvar TextColorDefinition = /** @class */ (function (_super) {\n __extends(TextColorDefinition, _super);\n function TextColorDefinition() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.highlightColors = new ColorDefinition(\"#22000000\", \"#11000000\");\n return _this;\n }\n TextColorDefinition.prototype.parse = function (obj) {\n _super.prototype.parse.call(this, obj);\n if (obj) {\n this.highlightColors.parse(obj[\"highlightColors\"]);\n }\n };\n return TextColorDefinition;\n}(ColorDefinition));\nexports.TextColorDefinition = TextColorDefinition;\nvar AdaptiveCardConfig = /** @class */ (function () {\n function AdaptiveCardConfig(obj) {\n this.allowCustomStyle = false;\n if (obj) {\n this.allowCustomStyle = obj[\"allowCustomStyle\"] || this.allowCustomStyle;\n }\n }\n return AdaptiveCardConfig;\n}());\nexports.AdaptiveCardConfig = AdaptiveCardConfig;\nvar ImageSetConfig = /** @class */ (function () {\n function ImageSetConfig(obj) {\n this.imageSize = Enums.Size.Medium;\n this.maxImageHeight = 100;\n if (obj) {\n this.imageSize = obj[\"imageSize\"] != null ? obj[\"imageSize\"] : this.imageSize;\n this.maxImageHeight = Utils.parseNumber(obj[\"maxImageHeight\"], 100);\n }\n }\n ImageSetConfig.prototype.toJSON = function () {\n return {\n imageSize: Enums.Size[this.imageSize],\n maxImageHeight: this.maxImageHeight\n };\n };\n return ImageSetConfig;\n}());\nexports.ImageSetConfig = ImageSetConfig;\nvar MediaConfig = /** @class */ (function () {\n function MediaConfig(obj) {\n this.allowInlinePlayback = true;\n if (obj) {\n this.defaultPoster = obj[\"defaultPoster\"];\n this.allowInlinePlayback = obj[\"allowInlinePlayback\"] || this.allowInlinePlayback;\n }\n }\n MediaConfig.prototype.toJSON = function () {\n return {\n defaultPoster: this.defaultPoster,\n allowInlinePlayback: this.allowInlinePlayback\n };\n };\n return MediaConfig;\n}());\nexports.MediaConfig = MediaConfig;\nvar TableConfig = /** @class */ (function () {\n function TableConfig(obj) {\n this.cellSpacing = 8;\n if (obj) {\n this.cellSpacing =\n obj.cellSpacing && typeof obj.cellSpacing === \"number\"\n ? obj.cellSpacing\n : this.cellSpacing;\n }\n }\n TableConfig.prototype.toJSON = function () {\n return {\n cellSpacing: this.cellSpacing\n };\n };\n return TableConfig;\n}());\nexports.TableConfig = TableConfig;\nvar BaseTextDefinition = /** @class */ (function () {\n function BaseTextDefinition(obj) {\n this.size = Enums.TextSize.Default;\n this.color = Enums.TextColor.Default;\n this.isSubtle = false;\n this.weight = Enums.TextWeight.Default;\n this.parse(obj);\n }\n BaseTextDefinition.prototype.parse = function (obj) {\n if (obj) {\n this.size = parseHostConfigEnum(Enums.TextSize, obj[\"size\"], this.size);\n this.color = parseHostConfigEnum(Enums.TextColor, obj[\"color\"], this.color);\n this.isSubtle =\n obj.isSubtle !== undefined && typeof obj.isSubtle === \"boolean\"\n ? obj.isSubtle\n : this.isSubtle;\n this.weight = parseHostConfigEnum(Enums.TextWeight, obj[\"weight\"], this.getDefaultWeight());\n }\n };\n BaseTextDefinition.prototype.getDefaultWeight = function () {\n return Enums.TextWeight.Default;\n };\n BaseTextDefinition.prototype.toJSON = function () {\n return {\n size: Enums.TextSize[this.size],\n color: Enums.TextColor[this.color],\n isSubtle: this.isSubtle,\n weight: Enums.TextWeight[this.weight]\n };\n };\n return BaseTextDefinition;\n}());\nexports.BaseTextDefinition = BaseTextDefinition;\nvar TextStyleDefinition = /** @class */ (function (_super) {\n __extends(TextStyleDefinition, _super);\n function TextStyleDefinition() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.fontType = Enums.FontType.Default;\n return _this;\n }\n TextStyleDefinition.prototype.parse = function (obj) {\n _super.prototype.parse.call(this, obj);\n if (obj) {\n this.fontType = parseHostConfigEnum(Enums.FontType, obj.fontType, this.fontType);\n }\n };\n return TextStyleDefinition;\n}(BaseTextDefinition));\nexports.TextStyleDefinition = TextStyleDefinition;\nvar TextStyleSet = /** @class */ (function () {\n function TextStyleSet(obj) {\n this.default = new TextStyleDefinition();\n this.heading = new TextStyleDefinition({\n size: \"Large\",\n weight: \"Bolder\"\n });\n this.columnHeader = new TextStyleDefinition({\n weight: \"Bolder\"\n });\n if (obj) {\n this.heading.parse(obj.heading);\n this.columnHeader.parse(obj.columnHeader);\n }\n }\n TextStyleSet.prototype.getStyleByName = function (name) {\n switch (name.toLowerCase()) {\n case \"heading\":\n return this.heading;\n case \"columnHeader\":\n return this.columnHeader;\n default:\n return this.default;\n }\n };\n return TextStyleSet;\n}());\nexports.TextStyleSet = TextStyleSet;\nvar TextBlockConfig = /** @class */ (function () {\n function TextBlockConfig(obj) {\n if (obj) {\n this.headingLevel = Utils.parseNumber(obj.headingLevel);\n }\n }\n return TextBlockConfig;\n}());\nexports.TextBlockConfig = TextBlockConfig;\nvar RequiredInputLabelTextDefinition = /** @class */ (function (_super) {\n __extends(RequiredInputLabelTextDefinition, _super);\n function RequiredInputLabelTextDefinition() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.suffix = \" *\";\n _this.suffixColor = Enums.TextColor.Attention;\n return _this;\n }\n RequiredInputLabelTextDefinition.prototype.parse = function (obj) {\n _super.prototype.parse.call(this, obj);\n if (obj) {\n this.suffix = obj[\"suffix\"] || this.suffix;\n this.suffixColor = parseHostConfigEnum(Enums.TextColor, obj[\"suffixColor\"], this.suffixColor);\n }\n };\n RequiredInputLabelTextDefinition.prototype.toJSON = function () {\n var result = _super.prototype.toJSON.call(this);\n result[\"suffix\"] = this.suffix;\n result[\"suffixColor\"] = Enums.TextColor[this.suffixColor];\n return result;\n };\n return RequiredInputLabelTextDefinition;\n}(BaseTextDefinition));\nexports.RequiredInputLabelTextDefinition = RequiredInputLabelTextDefinition;\nvar InputLabelConfig = /** @class */ (function () {\n function InputLabelConfig(obj) {\n this.inputSpacing = Enums.Spacing.Small;\n this.width = 30;\n this.requiredInputs = new RequiredInputLabelTextDefinition();\n this.optionalInputs = new BaseTextDefinition();\n if (obj) {\n this.inputSpacing = parseHostConfigEnum(Enums.Spacing, obj[\"inputSpacing\"], this.inputSpacing);\n this.requiredInputs = new RequiredInputLabelTextDefinition(obj[\"requiredInputs\"]);\n this.optionalInputs = new BaseTextDefinition(obj[\"optionalInputs\"]);\n this.width =\n obj[\"width\"] != null ? obj[\"width\"] : this.width;\n }\n }\n return InputLabelConfig;\n}());\nexports.InputLabelConfig = InputLabelConfig;\nvar InputConfig = /** @class */ (function () {\n function InputConfig(obj) {\n this.label = new InputLabelConfig();\n this.errorMessage = new BaseTextDefinition({\n color: Enums.TextColor.Attention\n });\n this.debounceTimeInMilliSeconds = 0;\n this.allowRevealOnHoverStyle = false;\n if (obj) {\n this.label = new InputLabelConfig(obj[\"label\"]);\n this.errorMessage = new BaseTextDefinition(obj[\"errorMessage\"]);\n this.allowRevealOnHoverStyle = obj[\"allowRevealOnHoverStyle\"] || this.allowRevealOnHoverStyle;\n this.debounceTimeInMilliSeconds = obj.debounceTimeInMilliSeconds;\n }\n }\n return InputConfig;\n}());\nexports.InputConfig = InputConfig;\nvar FactTextDefinition = /** @class */ (function (_super) {\n __extends(FactTextDefinition, _super);\n function FactTextDefinition() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.wrap = true;\n return _this;\n }\n FactTextDefinition.prototype.parse = function (obj) {\n _super.prototype.parse.call(this, obj);\n if (obj) {\n this.wrap = obj[\"wrap\"] != null ? obj[\"wrap\"] : this.wrap;\n }\n };\n FactTextDefinition.prototype.toJSON = function () {\n var result = _super.prototype.toJSON.call(this);\n result[\"wrap\"] = this.wrap;\n return result;\n };\n return FactTextDefinition;\n}(BaseTextDefinition));\nexports.FactTextDefinition = FactTextDefinition;\nvar FactTitleDefinition = /** @class */ (function (_super) {\n __extends(FactTitleDefinition, _super);\n function FactTitleDefinition(obj) {\n var _this = _super.call(this, obj) || this;\n _this.maxWidth = 150;\n _this.weight = Enums.TextWeight.Bolder;\n if (obj) {\n _this.maxWidth = obj[\"maxWidth\"] != null ? obj[\"maxWidth\"] : _this.maxWidth;\n _this.weight = parseHostConfigEnum(Enums.TextWeight, obj[\"weight\"], Enums.TextWeight.Bolder);\n }\n return _this;\n }\n FactTitleDefinition.prototype.getDefaultWeight = function () {\n return Enums.TextWeight.Bolder;\n };\n return FactTitleDefinition;\n}(FactTextDefinition));\nexports.FactTitleDefinition = FactTitleDefinition;\nvar FactSetConfig = /** @class */ (function () {\n function FactSetConfig(obj) {\n this.title = new FactTitleDefinition();\n this.value = new FactTextDefinition();\n this.spacing = 10;\n if (obj) {\n this.title = new FactTitleDefinition(obj[\"title\"]);\n this.value = new FactTextDefinition(obj[\"value\"]);\n this.spacing =\n obj.spacing && obj.spacing != null ? obj.spacing && obj.spacing : this.spacing;\n }\n }\n return FactSetConfig;\n}());\nexports.FactSetConfig = FactSetConfig;\nvar ShowCardActionConfig = /** @class */ (function () {\n function ShowCardActionConfig(obj) {\n this.actionMode = Enums.ShowCardActionMode.Inline;\n this.inlineTopMargin = 16;\n this.style = Enums.ContainerStyle.Emphasis;\n if (obj) {\n this.actionMode = parseHostConfigEnum(Enums.ShowCardActionMode, obj[\"actionMode\"], Enums.ShowCardActionMode.Inline);\n this.inlineTopMargin =\n obj[\"inlineTopMargin\"] != null ? obj[\"inlineTopMargin\"] : this.inlineTopMargin;\n this.style =\n obj[\"style\"] && typeof obj[\"style\"] === \"string\"\n ? obj[\"style\"]\n : Enums.ContainerStyle.Emphasis;\n }\n }\n ShowCardActionConfig.prototype.toJSON = function () {\n return {\n actionMode: Enums.ShowCardActionMode[this.actionMode],\n inlineTopMargin: this.inlineTopMargin,\n style: this.style\n };\n };\n return ShowCardActionConfig;\n}());\nexports.ShowCardActionConfig = ShowCardActionConfig;\nvar ActionsConfig = /** @class */ (function () {\n function ActionsConfig(obj) {\n this.maxActions = 5;\n this.spacing = Enums.Spacing.Default;\n this.buttonSpacing = 20;\n this.showCard = new ShowCardActionConfig();\n this.preExpandSingleShowCardAction = false;\n this.actionsOrientation = Enums.Orientation.Horizontal;\n this.actionAlignment = Enums.ActionAlignment.Left;\n this.iconPlacement = Enums.ActionIconPlacement.LeftOfTitle;\n this.allowTitleToWrap = false;\n this.iconSize = 16;\n if (obj) {\n this.maxActions = obj[\"maxActions\"] != null ? obj[\"maxActions\"] : this.maxActions;\n this.spacing = parseHostConfigEnum(Enums.Spacing, obj.spacing && obj.spacing, Enums.Spacing.Default);\n this.buttonSpacing =\n obj[\"buttonSpacing\"] != null ? obj[\"buttonSpacing\"] : this.buttonSpacing;\n this.showCard = new ShowCardActionConfig(obj[\"showCard\"]);\n this.preExpandSingleShowCardAction = Utils.parseBool(obj[\"preExpandSingleShowCardAction\"], false);\n this.actionsOrientation = parseHostConfigEnum(Enums.Orientation, obj[\"actionsOrientation\"], Enums.Orientation.Horizontal);\n this.actionAlignment = parseHostConfigEnum(Enums.ActionAlignment, obj[\"actionAlignment\"], Enums.ActionAlignment.Left);\n this.iconPlacement = parseHostConfigEnum(Enums.ActionIconPlacement, obj[\"iconPlacement\"], Enums.ActionIconPlacement.LeftOfTitle);\n this.allowTitleToWrap =\n obj[\"allowTitleToWrap\"] != null ? obj[\"allowTitleToWrap\"] : this.allowTitleToWrap;\n try {\n var sizeAndUnit = Shared.SizeAndUnit.parse(obj[\"iconSize\"]);\n if (sizeAndUnit.unit === Enums.SizeUnit.Pixel) {\n this.iconSize = sizeAndUnit.physicalSize;\n }\n }\n catch (e) {\n // Swallow this, keep default icon size\n }\n }\n }\n ActionsConfig.prototype.toJSON = function () {\n return {\n maxActions: this.maxActions,\n spacing: Enums.Spacing[this.spacing],\n buttonSpacing: this.buttonSpacing,\n showCard: this.showCard,\n preExpandSingleShowCardAction: this.preExpandSingleShowCardAction,\n actionsOrientation: Enums.Orientation[this.actionsOrientation],\n actionAlignment: Enums.ActionAlignment[this.actionAlignment]\n };\n };\n return ActionsConfig;\n}());\nexports.ActionsConfig = ActionsConfig;\nvar ColorSetDefinition = /** @class */ (function () {\n function ColorSetDefinition(obj) {\n this.default = new TextColorDefinition();\n this.dark = new TextColorDefinition();\n this.light = new TextColorDefinition();\n this.accent = new TextColorDefinition();\n this.good = new TextColorDefinition();\n this.warning = new TextColorDefinition();\n this.attention = new TextColorDefinition();\n this.parse(obj);\n }\n ColorSetDefinition.prototype.parseSingleColor = function (obj, propertyName) {\n if (obj) {\n this[propertyName].parse(obj[propertyName]);\n }\n };\n ColorSetDefinition.prototype.parse = function (obj) {\n if (obj) {\n this.parseSingleColor(obj, \"default\");\n this.parseSingleColor(obj, \"dark\");\n this.parseSingleColor(obj, \"light\");\n this.parseSingleColor(obj, \"accent\");\n this.parseSingleColor(obj, \"good\");\n this.parseSingleColor(obj, \"warning\");\n this.parseSingleColor(obj, \"attention\");\n }\n };\n return ColorSetDefinition;\n}());\nexports.ColorSetDefinition = ColorSetDefinition;\nvar ContainerStyleDefinition = /** @class */ (function () {\n function ContainerStyleDefinition(obj) {\n this.foregroundColors = new ColorSetDefinition({\n \"default\": { default: \"#333333\", subtle: \"#EE333333\" },\n \"dark\": { default: \"#000000\", subtle: \"#66000000\" },\n \"light\": { default: \"#FFFFFF\", subtle: \"#33000000\" },\n \"accent\": { default: \"#2E89FC\", subtle: \"#882E89FC\" },\n \"good\": { default: \"#028A02\", subtle: \"#DD027502\" },\n \"warning\": { default: \"#E69500\", subtle: \"#DDE69500\" },\n \"attention\": { default: \"#CC3300\", subtle: \"#DDCC3300\" }\n });\n this.parse(obj);\n }\n ContainerStyleDefinition.prototype.parse = function (obj) {\n if (obj) {\n this.backgroundColor = obj[\"backgroundColor\"];\n this.foregroundColors.parse(obj[\"foregroundColors\"]);\n this.highlightBackgroundColor = obj[\"highlightBackgroundColor\"];\n this.highlightForegroundColor = obj[\"highlightForegroundColor\"];\n this.borderColor = obj[\"borderColor\"];\n }\n };\n Object.defineProperty(ContainerStyleDefinition.prototype, \"isBuiltIn\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n return ContainerStyleDefinition;\n}());\nexports.ContainerStyleDefinition = ContainerStyleDefinition;\nvar BuiltInContainerStyleDefinition = /** @class */ (function (_super) {\n __extends(BuiltInContainerStyleDefinition, _super);\n function BuiltInContainerStyleDefinition() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Object.defineProperty(BuiltInContainerStyleDefinition.prototype, \"isBuiltIn\", {\n get: function () {\n return true;\n },\n enumerable: false,\n configurable: true\n });\n return BuiltInContainerStyleDefinition;\n}(ContainerStyleDefinition));\nvar ContainerStyleSet = /** @class */ (function () {\n function ContainerStyleSet(obj) {\n this._allStyles = {};\n this._allStyles[Enums.ContainerStyle.Default] = new BuiltInContainerStyleDefinition();\n this._allStyles[Enums.ContainerStyle.Emphasis] = new BuiltInContainerStyleDefinition();\n this._allStyles[Enums.ContainerStyle.Accent] = new BuiltInContainerStyleDefinition();\n this._allStyles[Enums.ContainerStyle.Good] = new BuiltInContainerStyleDefinition();\n this._allStyles[Enums.ContainerStyle.Attention] = new BuiltInContainerStyleDefinition();\n this._allStyles[Enums.ContainerStyle.Warning] = new BuiltInContainerStyleDefinition();\n if (obj) {\n this._allStyles[Enums.ContainerStyle.Default].parse(obj[Enums.ContainerStyle.Default]);\n this._allStyles[Enums.ContainerStyle.Emphasis].parse(obj[Enums.ContainerStyle.Emphasis]);\n this._allStyles[Enums.ContainerStyle.Accent].parse(obj[Enums.ContainerStyle.Accent]);\n this._allStyles[Enums.ContainerStyle.Good].parse(obj[Enums.ContainerStyle.Good]);\n this._allStyles[Enums.ContainerStyle.Attention].parse(obj[Enums.ContainerStyle.Attention]);\n this._allStyles[Enums.ContainerStyle.Warning].parse(obj[Enums.ContainerStyle.Warning]);\n var customStyleArray = obj[\"customStyles\"];\n if (customStyleArray && Array.isArray(customStyleArray)) {\n for (var _i = 0, customStyleArray_1 = customStyleArray; _i < customStyleArray_1.length; _i++) {\n var customStyle = customStyleArray_1[_i];\n if (customStyle) {\n var styleName = customStyle[\"name\"];\n if (styleName && typeof styleName === \"string\") {\n if (this._allStyles.hasOwnProperty(styleName)) {\n this._allStyles[styleName].parse(customStyle[\"style\"]);\n }\n else {\n this._allStyles[styleName] = new ContainerStyleDefinition(customStyle[\"style\"]);\n }\n }\n }\n }\n }\n }\n }\n ContainerStyleSet.prototype.toJSON = function () {\n var _this = this;\n var customStyleArray = [];\n Object.keys(this._allStyles).forEach(function (key) {\n if (!_this._allStyles[key].isBuiltIn) {\n customStyleArray.push({\n name: key,\n style: _this._allStyles[key]\n });\n }\n });\n var result = {\n default: this.default,\n emphasis: this.emphasis\n };\n if (customStyleArray.length > 0) {\n result.customStyles = customStyleArray;\n }\n return result;\n };\n ContainerStyleSet.prototype.getStyleByName = function (name, defaultValue) {\n if (name && this._allStyles.hasOwnProperty(name)) {\n return this._allStyles[name];\n }\n else {\n return defaultValue ? defaultValue : this._allStyles[Enums.ContainerStyle.Default];\n }\n };\n Object.defineProperty(ContainerStyleSet.prototype, \"default\", {\n get: function () {\n return this._allStyles[Enums.ContainerStyle.Default];\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(ContainerStyleSet.prototype, \"emphasis\", {\n get: function () {\n return this._allStyles[Enums.ContainerStyle.Emphasis];\n },\n enumerable: false,\n configurable: true\n });\n return ContainerStyleSet;\n}());\nexports.ContainerStyleSet = ContainerStyleSet;\nvar FontTypeDefinition = /** @class */ (function () {\n function FontTypeDefinition(fontFamily) {\n this.fontFamily = \"Segoe UI,Segoe,Segoe WP,Helvetica Neue,Helvetica,sans-serif\";\n this.fontSizes = {\n small: 12,\n default: 14,\n medium: 17,\n large: 21,\n extraLarge: 26\n };\n this.fontWeights = {\n lighter: 200,\n default: 400,\n bolder: 600\n };\n if (fontFamily) {\n this.fontFamily = fontFamily;\n }\n }\n FontTypeDefinition.prototype.parse = function (obj) {\n this.fontFamily = obj[\"fontFamily\"] || this.fontFamily;\n this.fontSizes = {\n small: (obj.fontSizes && obj.fontSizes[\"small\"]) || this.fontSizes.small,\n default: (obj.fontSizes && obj.fontSizes[\"default\"]) || this.fontSizes.default,\n medium: (obj.fontSizes && obj.fontSizes[\"medium\"]) || this.fontSizes.medium,\n large: (obj.fontSizes && obj.fontSizes[\"large\"]) || this.fontSizes.large,\n extraLarge: (obj.fontSizes && obj.fontSizes[\"extraLarge\"]) || this.fontSizes.extraLarge\n };\n this.fontWeights = {\n lighter: (obj.fontWeights && obj.fontWeights[\"lighter\"]) || this.fontWeights.lighter,\n default: (obj.fontWeights && obj.fontWeights[\"default\"]) || this.fontWeights.default,\n bolder: (obj.fontWeights && obj.fontWeights[\"bolder\"]) || this.fontWeights.bolder\n };\n };\n FontTypeDefinition.monospace = new FontTypeDefinition(\"'Courier New', Courier, monospace\");\n return FontTypeDefinition;\n}());\nexports.FontTypeDefinition = FontTypeDefinition;\nvar FontTypeSet = /** @class */ (function () {\n function FontTypeSet(obj) {\n this.default = new FontTypeDefinition();\n this.monospace = new FontTypeDefinition(\"'Courier New', Courier, monospace\");\n if (obj) {\n this.default.parse(obj[\"default\"]);\n this.monospace.parse(obj[\"monospace\"]);\n }\n }\n FontTypeSet.prototype.getStyleDefinition = function (style) {\n switch (style) {\n case Enums.FontType.Monospace:\n return this.monospace;\n case Enums.FontType.Default:\n default:\n return this.default;\n }\n };\n return FontTypeSet;\n}());\nexports.FontTypeSet = FontTypeSet;\nvar CarouselConfig = /** @class */ (function () {\n function CarouselConfig(obj) {\n this.maxCarouselPages = 10;\n this.minAutoplayDelay = 5000.0;\n if (obj) {\n this.maxCarouselPages =\n obj[\"maxCarouselPages\"] != null ? obj[\"maxCarouselPages\"] : this.maxCarouselPages;\n this.minAutoplayDelay =\n obj[\"minAutoplayDelay\"] != null ? obj[\"minAutoplayDelay\"] : this.minAutoplayDelay;\n }\n }\n CarouselConfig.prototype.toJSON = function () {\n return {\n maxCarouselPages: this.maxCarouselPages,\n minAutoplayDelay: this.minAutoplayDelay\n };\n };\n return CarouselConfig;\n}());\nexports.CarouselConfig = CarouselConfig;\nvar HostConfig = /** @class */ (function () {\n function HostConfig(obj) {\n this.hostCapabilities = new host_capabilities_1.HostCapabilities();\n this.choiceSetInputValueSeparator = \",\";\n this.supportsInteractivity = true;\n this.spacing = {\n small: 3,\n default: 8,\n medium: 20,\n large: 30,\n extraLarge: 40,\n padding: 15\n };\n this.separator = {\n lineThickness: 1,\n lineColor: \"#EEEEEE\"\n };\n this.imageSizes = {\n small: 40,\n medium: 80,\n large: 160\n };\n this.containerStyles = new ContainerStyleSet();\n this.inputs = new InputConfig();\n this.actions = new ActionsConfig();\n this.adaptiveCard = new AdaptiveCardConfig();\n this.imageSet = new ImageSetConfig();\n this.media = new MediaConfig();\n this.factSet = new FactSetConfig();\n this.table = new TableConfig();\n this.textStyles = new TextStyleSet();\n this.textBlock = new TextBlockConfig();\n this.carousel = new CarouselConfig();\n this.alwaysAllowBleed = false;\n if (obj) {\n if (typeof obj === \"string\" || obj instanceof String) {\n obj = JSON.parse(obj);\n }\n this.choiceSetInputValueSeparator =\n obj && typeof obj[\"choiceSetInputValueSeparator\"] === \"string\"\n ? obj[\"choiceSetInputValueSeparator\"]\n : this.choiceSetInputValueSeparator;\n this.supportsInteractivity =\n obj && typeof obj[\"supportsInteractivity\"] === \"boolean\"\n ? obj[\"supportsInteractivity\"]\n : this.supportsInteractivity;\n this._legacyFontType = new FontTypeDefinition();\n this._legacyFontType.parse(obj);\n if (obj.fontTypes) {\n this.fontTypes = new FontTypeSet(obj.fontTypes);\n }\n if (obj.lineHeights) {\n this.lineHeights = {\n small: obj.lineHeights[\"small\"],\n default: obj.lineHeights[\"default\"],\n medium: obj.lineHeights[\"medium\"],\n large: obj.lineHeights[\"large\"],\n extraLarge: obj.lineHeights[\"extraLarge\"]\n };\n }\n this.imageSizes = {\n small: (obj.imageSizes && obj.imageSizes[\"small\"]) || this.imageSizes.small,\n medium: (obj.imageSizes && obj.imageSizes[\"medium\"]) || this.imageSizes.medium,\n large: (obj.imageSizes && obj.imageSizes[\"large\"]) || this.imageSizes.large\n };\n this.containerStyles = new ContainerStyleSet(obj[\"containerStyles\"]);\n this.spacing = {\n small: (obj.spacing && obj.spacing[\"small\"]) || this.spacing.small,\n default: (obj.spacing && obj.spacing[\"default\"]) || this.spacing.default,\n medium: (obj.spacing && obj.spacing[\"medium\"]) || this.spacing.medium,\n large: (obj.spacing && obj.spacing[\"large\"]) || this.spacing.large,\n extraLarge: (obj.spacing && obj.spacing[\"extraLarge\"]) || this.spacing.extraLarge,\n padding: (obj.spacing && obj.spacing[\"padding\"]) || this.spacing.padding\n };\n this.separator = {\n lineThickness: (obj.separator && obj.separator[\"lineThickness\"]) ||\n this.separator.lineThickness,\n lineColor: (obj.separator && obj.separator[\"lineColor\"]) || this.separator.lineColor\n };\n this.inputs = new InputConfig(obj.inputs || this.inputs);\n this.actions = new ActionsConfig(obj.actions || this.actions);\n this.adaptiveCard = new AdaptiveCardConfig(obj.adaptiveCard || this.adaptiveCard);\n this.imageSet = new ImageSetConfig(obj[\"imageSet\"]);\n this.factSet = new FactSetConfig(obj[\"factSet\"]);\n this.textStyles = new TextStyleSet(obj[\"textStyles\"]);\n this.textBlock = new TextBlockConfig(obj[\"textBlock\"]);\n this.carousel = new CarouselConfig(obj[\"carousel\"]);\n }\n }\n HostConfig.prototype.getFontTypeDefinition = function (style) {\n if (this.fontTypes) {\n return this.fontTypes.getStyleDefinition(style);\n }\n else {\n return style === Enums.FontType.Monospace\n ? FontTypeDefinition.monospace\n : this._legacyFontType;\n }\n };\n HostConfig.prototype.getEffectiveSpacing = function (spacing) {\n switch (spacing) {\n case Enums.Spacing.Small:\n return this.spacing.small;\n case Enums.Spacing.Default:\n return this.spacing.default;\n case Enums.Spacing.Medium:\n return this.spacing.medium;\n case Enums.Spacing.Large:\n return this.spacing.large;\n case Enums.Spacing.ExtraLarge:\n return this.spacing.extraLarge;\n case Enums.Spacing.Padding:\n return this.spacing.padding;\n default:\n return 0;\n }\n };\n HostConfig.prototype.paddingDefinitionToSpacingDefinition = function (paddingDefinition) {\n return new Shared.SpacingDefinition(this.getEffectiveSpacing(paddingDefinition.top), this.getEffectiveSpacing(paddingDefinition.right), this.getEffectiveSpacing(paddingDefinition.bottom), this.getEffectiveSpacing(paddingDefinition.left));\n };\n HostConfig.prototype.makeCssClassNames = function () {\n var classNames = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n classNames[_i] = arguments[_i];\n }\n var result = [];\n for (var _a = 0, classNames_1 = classNames; _a < classNames_1.length; _a++) {\n var className = classNames_1[_a];\n result.push((this.cssClassNamePrefix ? this.cssClassNamePrefix + \"-\" : \"\") + className);\n }\n return result;\n };\n HostConfig.prototype.makeCssClassName = function () {\n var classNames = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n classNames[_i] = arguments[_i];\n }\n var result = this.makeCssClassNames.apply(this, classNames).join(\" \");\n return result ? result : \"\";\n };\n Object.defineProperty(HostConfig.prototype, \"fontFamily\", {\n get: function () {\n return this._legacyFontType.fontFamily;\n },\n set: function (value) {\n this._legacyFontType.fontFamily = value;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(HostConfig.prototype, \"fontSizes\", {\n get: function () {\n return this._legacyFontType.fontSizes;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(HostConfig.prototype, \"fontWeights\", {\n get: function () {\n return this._legacyFontType.fontWeights;\n },\n enumerable: false,\n configurable: true\n });\n return HostConfig;\n}());\nexports.HostConfig = HostConfig;\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexports.defaultHostConfig = new HostConfig({\n supportsInteractivity: true,\n spacing: {\n small: 10,\n default: 20,\n medium: 30,\n large: 40,\n extraLarge: 50,\n padding: 20\n },\n separator: {\n lineThickness: 1,\n lineColor: \"#EEEEEE\"\n },\n fontTypes: {\n default: {\n fontFamily: \"'Segoe UI', Tahoma, Geneva, Verdana, sans-serif\",\n fontSizes: {\n small: 12,\n default: 14,\n medium: 17,\n large: 21,\n extraLarge: 26\n },\n fontWeights: {\n lighter: 200,\n default: 400,\n bolder: 600\n }\n },\n monospace: {\n fontFamily: \"'Courier New', Courier, monospace\",\n fontSizes: {\n small: 12,\n default: 14,\n medium: 17,\n large: 21,\n extraLarge: 26\n },\n fontWeights: {\n lighter: 200,\n default: 400,\n bolder: 600\n }\n }\n },\n imageSizes: {\n small: 40,\n medium: 80,\n large: 160\n },\n containerStyles: {\n default: {\n backgroundColor: \"#FFFFFF\",\n foregroundColors: {\n default: {\n default: \"#333333\",\n subtle: \"#EE333333\"\n },\n dark: {\n default: \"#000000\",\n subtle: \"#66000000\"\n },\n light: {\n default: \"#FFFFFF\",\n subtle: \"#33000000\"\n },\n accent: {\n default: \"#2E89FC\",\n subtle: \"#882E89FC\"\n },\n attention: {\n default: \"#cc3300\",\n subtle: \"#DDcc3300\"\n },\n good: {\n default: \"#028A02\",\n subtle: \"#DD027502\"\n },\n warning: {\n default: \"#e69500\",\n subtle: \"#DDe69500\"\n }\n }\n },\n emphasis: {\n backgroundColor: \"#08000000\",\n foregroundColors: {\n default: {\n default: \"#333333\",\n subtle: \"#EE333333\"\n },\n dark: {\n default: \"#000000\",\n subtle: \"#66000000\"\n },\n light: {\n default: \"#FFFFFF\",\n subtle: \"#33000000\"\n },\n accent: {\n default: \"#2E89FC\",\n subtle: \"#882E89FC\"\n },\n attention: {\n default: \"#cc3300\",\n subtle: \"#DDcc3300\"\n },\n good: {\n default: \"#028A02\",\n subtle: \"#DD027502\"\n },\n warning: {\n default: \"#e69500\",\n subtle: \"#DDe69500\"\n }\n }\n },\n accent: {\n backgroundColor: \"#C7DEF9\",\n foregroundColors: {\n default: {\n default: \"#333333\",\n subtle: \"#EE333333\"\n },\n dark: {\n default: \"#000000\",\n subtle: \"#66000000\"\n },\n light: {\n default: \"#FFFFFF\",\n subtle: \"#33000000\"\n },\n accent: {\n default: \"#2E89FC\",\n subtle: \"#882E89FC\"\n },\n attention: {\n default: \"#cc3300\",\n subtle: \"#DDcc3300\"\n },\n good: {\n default: \"#028A02\",\n subtle: \"#DD027502\"\n },\n warning: {\n default: \"#e69500\",\n subtle: \"#DDe69500\"\n }\n }\n },\n good: {\n backgroundColor: \"#CCFFCC\",\n foregroundColors: {\n default: {\n default: \"#333333\",\n subtle: \"#EE333333\"\n },\n dark: {\n default: \"#000000\",\n subtle: \"#66000000\"\n },\n light: {\n default: \"#FFFFFF\",\n subtle: \"#33000000\"\n },\n accent: {\n default: \"#2E89FC\",\n subtle: \"#882E89FC\"\n },\n attention: {\n default: \"#cc3300\",\n subtle: \"#DDcc3300\"\n },\n good: {\n default: \"#028A02\",\n subtle: \"#DD027502\"\n },\n warning: {\n default: \"#e69500\",\n subtle: \"#DDe69500\"\n }\n }\n },\n attention: {\n backgroundColor: \"#FFC5B2\",\n foregroundColors: {\n default: {\n default: \"#333333\",\n subtle: \"#EE333333\"\n },\n dark: {\n default: \"#000000\",\n subtle: \"#66000000\"\n },\n light: {\n default: \"#FFFFFF\",\n subtle: \"#33000000\"\n },\n accent: {\n default: \"#2E89FC\",\n subtle: \"#882E89FC\"\n },\n attention: {\n default: \"#cc3300\",\n subtle: \"#DDcc3300\"\n },\n good: {\n default: \"#028A02\",\n subtle: \"#DD027502\"\n },\n warning: {\n default: \"#e69500\",\n subtle: \"#DDe69500\"\n }\n }\n },\n warning: {\n backgroundColor: \"#FFE2B2\",\n foregroundColors: {\n default: {\n default: \"#333333\",\n subtle: \"#EE333333\"\n },\n dark: {\n default: \"#000000\",\n subtle: \"#66000000\"\n },\n light: {\n default: \"#FFFFFF\",\n subtle: \"#33000000\"\n },\n accent: {\n default: \"#2E89FC\",\n subtle: \"#882E89FC\"\n },\n attention: {\n default: \"#cc3300\",\n subtle: \"#DDcc3300\"\n },\n good: {\n default: \"#028A02\",\n subtle: \"#DD027502\"\n },\n warning: {\n default: \"#e69500\",\n subtle: \"#DDe69500\"\n }\n }\n }\n },\n inputs: {\n label: {\n requiredInputs: {\n weight: Enums.TextWeight.Bolder,\n suffix: \" *\",\n suffixColor: Enums.TextColor.Attention\n },\n optionalInputs: {\n weight: Enums.TextWeight.Bolder\n }\n },\n errorMessage: {\n color: Enums.TextColor.Attention,\n weight: Enums.TextWeight.Bolder\n },\n debounceTimeInMilliSeconds: 250\n },\n actions: {\n maxActions: 5,\n spacing: Enums.Spacing.Default,\n buttonSpacing: 10,\n showCard: {\n actionMode: Enums.ShowCardActionMode.Inline,\n inlineTopMargin: 16\n },\n actionsOrientation: Enums.Orientation.Horizontal,\n actionAlignment: Enums.ActionAlignment.Left\n },\n adaptiveCard: {\n allowCustomStyle: false\n },\n imageSet: {\n imageSize: Enums.Size.Medium,\n maxImageHeight: 100\n },\n factSet: {\n title: {\n color: Enums.TextColor.Default,\n size: Enums.TextSize.Default,\n isSubtle: false,\n weight: Enums.TextWeight.Bolder,\n wrap: true,\n maxWidth: 150\n },\n value: {\n color: Enums.TextColor.Default,\n size: Enums.TextSize.Default,\n isSubtle: false,\n weight: Enums.TextWeight.Default,\n wrap: true\n },\n spacing: 10\n },\n carousel: {\n maxCarouselPages: 10,\n minAutoplayDuration: 5000\n },\n textBlock: {\n headingLevel: 2\n }\n});\n//# sourceMappingURL=host-config.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.GlobalRegistry = exports.CardObjectRegistry = void 0;\nvar serialization_1 = require(\"./serialization\");\nvar CardObjectRegistry = /** @class */ (function () {\n function CardObjectRegistry() {\n this._items = {};\n }\n CardObjectRegistry.prototype.findByName = function (typeName) {\n return this._items.hasOwnProperty(typeName) ? this._items[typeName] : undefined;\n };\n CardObjectRegistry.prototype.clear = function () {\n this._items = {};\n };\n CardObjectRegistry.prototype.copyTo = function (target) {\n var keys = Object.keys(this._items);\n for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {\n var key = keys_1[_i];\n var typeRegistration = this._items[key];\n target.register(typeRegistration.typeName, typeRegistration.objectType, typeRegistration.schemaVersion);\n }\n };\n CardObjectRegistry.prototype.register = function (typeName, objectType, schemaVersion) {\n if (schemaVersion === void 0) { schemaVersion = serialization_1.Versions.v1_0; }\n var registrationInfo = this.findByName(typeName);\n if (registrationInfo !== undefined) {\n registrationInfo.objectType = objectType;\n }\n else {\n registrationInfo = {\n typeName: typeName,\n objectType: objectType,\n schemaVersion: schemaVersion\n };\n }\n this._items[typeName] = registrationInfo;\n };\n CardObjectRegistry.prototype.unregister = function (typeName) {\n delete this._items[typeName];\n };\n CardObjectRegistry.prototype.createInstance = function (typeName, targetVersion) {\n var registrationInfo = this.findByName(typeName);\n return registrationInfo && registrationInfo.schemaVersion.compareTo(targetVersion) <= 0\n ? new registrationInfo.objectType()\n : undefined;\n };\n CardObjectRegistry.prototype.getItemCount = function () {\n return Object.keys(this._items).length;\n };\n CardObjectRegistry.prototype.getItemAt = function (index) {\n var _this = this;\n return Object.keys(this._items).map(function (e) { return _this._items[e]; })[index];\n };\n return CardObjectRegistry;\n}());\nexports.CardObjectRegistry = CardObjectRegistry;\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\nvar GlobalRegistry = /** @class */ (function () {\n function GlobalRegistry() {\n }\n GlobalRegistry.populateWithDefaultElements = function (registry) {\n registry.clear();\n GlobalRegistry.defaultElements.copyTo(registry);\n };\n GlobalRegistry.populateWithDefaultActions = function (registry) {\n registry.clear();\n GlobalRegistry.defaultActions.copyTo(registry);\n };\n Object.defineProperty(GlobalRegistry, \"elements\", {\n get: function () {\n if (!GlobalRegistry._elements) {\n GlobalRegistry._elements = new CardObjectRegistry();\n GlobalRegistry.populateWithDefaultElements(GlobalRegistry._elements);\n }\n return GlobalRegistry._elements;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(GlobalRegistry, \"actions\", {\n get: function () {\n if (!GlobalRegistry._actions) {\n GlobalRegistry._actions = new CardObjectRegistry();\n GlobalRegistry.populateWithDefaultActions(GlobalRegistry._actions);\n }\n return GlobalRegistry._actions;\n },\n enumerable: false,\n configurable: true\n });\n GlobalRegistry.reset = function () {\n GlobalRegistry._elements = undefined;\n GlobalRegistry._actions = undefined;\n };\n GlobalRegistry.defaultElements = new CardObjectRegistry();\n GlobalRegistry.defaultActions = new CardObjectRegistry();\n return GlobalRegistry;\n}());\nexports.GlobalRegistry = GlobalRegistry;\n//# sourceMappingURL=registry.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SerializableObject = exports.property = exports.SerializableObjectSchema = exports.CustomProperty = exports.SerializableObjectCollectionProperty = exports.SerializableObjectProperty = exports.EnumProperty = exports.ValueSetProperty = exports.StringArrayProperty = exports.PixelSizeProperty = exports.NumProperty = exports.BoolProperty = exports.StringProperty = exports.PropertyDefinition = exports.BaseSerializationContext = exports.isVersionLessOrEqual = exports.Versions = exports.Version = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar shared_1 = require(\"./shared\");\nvar Utils = require(\"./utils\");\nvar Enums = require(\"./enums\");\nvar strings_1 = require(\"./strings\");\nvar Version = /** @class */ (function () {\n function Version(major, minor, label) {\n if (major === void 0) { major = 1; }\n if (minor === void 0) { minor = 1; }\n this._isValid = true;\n this._major = major;\n this._minor = minor;\n this._label = label;\n }\n Version.parse = function (versionString, context) {\n if (!versionString) {\n return undefined;\n }\n var result = new Version();\n result._versionString = versionString;\n var regEx = /(\\d+).(\\d+)/gi;\n var matches = regEx.exec(versionString);\n if (matches != null && matches.length === 3) {\n result._major = parseInt(matches[1]);\n result._minor = parseInt(matches[2]);\n }\n else {\n result._isValid = false;\n }\n if (!result._isValid) {\n context.logParseEvent(undefined, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidVersionString(result._versionString));\n }\n return result;\n };\n Version.prototype.toString = function () {\n return !this._isValid ? this._versionString : this._major + \".\" + this._minor;\n };\n Version.prototype.toJSON = function () {\n return this.toString();\n };\n Version.prototype.compareTo = function (otherVersion) {\n if (!this.isValid || !otherVersion.isValid) {\n throw new Error(\"Cannot compare invalid version.\");\n }\n if (this.major > otherVersion.major) {\n return 1;\n }\n else if (this.major < otherVersion.major) {\n return -1;\n }\n else if (this.minor > otherVersion.minor) {\n return 1;\n }\n else if (this.minor < otherVersion.minor) {\n return -1;\n }\n return 0;\n };\n Object.defineProperty(Version.prototype, \"label\", {\n get: function () {\n return this._label ? this._label : this.toString();\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Version.prototype, \"major\", {\n get: function () {\n return this._major;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Version.prototype, \"minor\", {\n get: function () {\n return this._minor;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Version.prototype, \"isValid\", {\n get: function () {\n return this._isValid;\n },\n enumerable: false,\n configurable: true\n });\n return Version;\n}());\nexports.Version = Version;\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\nvar Versions = /** @class */ (function () {\n function Versions() {\n }\n /* eslint-enable @typescript-eslint/naming-convention */\n Versions.getAllDeclaredVersions = function () {\n var ctor = Versions;\n var properties = [];\n for (var propertyName in ctor) {\n if (propertyName.match(/^v[0-9_]*$/)) {\n // filter latest\n try {\n var propertyValue = ctor[propertyName];\n if (propertyValue instanceof Version) {\n properties.push(propertyValue);\n }\n }\n catch (_a) {\n // If a property happens to have a getter function and\n // it throws an exception, we need to catch it here\n }\n }\n }\n return properties.sort(function (v1, v2) { return v1.compareTo(v2); });\n };\n /* eslint-disable @typescript-eslint/naming-convention */\n Versions.v1_0 = new Version(1, 0);\n Versions.v1_1 = new Version(1, 1);\n Versions.v1_2 = new Version(1, 2);\n Versions.v1_3 = new Version(1, 3);\n Versions.v1_4 = new Version(1, 4);\n Versions.v1_5 = new Version(1, 5);\n // If preview tag is added/removed from any version,\n // don't forget to update .ac-schema-version-1-?::after too in adaptivecards-site\\themes\\adaptivecards\\source\\css\\style.css\n Versions.v1_6 = new Version(1, 6, \"1.6 Preview\");\n Versions.latest = Versions.v1_5;\n return Versions;\n}());\nexports.Versions = Versions;\nfunction isVersionLessOrEqual(version, targetVersion) {\n if (version instanceof Version) {\n if (targetVersion instanceof Version) {\n return targetVersion.compareTo(version) >= 0;\n }\n else {\n // Target version is *\n return true;\n }\n }\n else {\n // Version is *\n return true;\n }\n}\nexports.isVersionLessOrEqual = isVersionLessOrEqual;\nvar BaseSerializationContext = /** @class */ (function () {\n function BaseSerializationContext(targetVersion) {\n if (targetVersion === void 0) { targetVersion = Versions.latest; }\n this._validationEvents = [];\n this.targetVersion = targetVersion;\n }\n BaseSerializationContext.prototype.isTemplateString = function (value) {\n if (typeof value === \"string\") {\n return value.startsWith(\"${\");\n }\n else {\n return false;\n }\n };\n BaseSerializationContext.prototype.tryDeleteValue = function (target, propertyName) {\n if (!shared_1.GlobalSettings.enableFullJsonRoundTrip) {\n delete target[propertyName];\n }\n };\n BaseSerializationContext.prototype.tryDeleteDefaultValue = function (target, propertyName) {\n if (!shared_1.GlobalSettings.enableFullJsonRoundTrip || !this.isTemplateString(target[propertyName])) {\n delete target[propertyName];\n }\n };\n BaseSerializationContext.prototype.serializeValue = function (target, propertyName, propertyValue, defaultValue, forceDeleteIfNullOrDefault) {\n if (defaultValue === void 0) { defaultValue = undefined; }\n if (forceDeleteIfNullOrDefault === void 0) { forceDeleteIfNullOrDefault = false; }\n if (propertyValue === null ||\n propertyValue === undefined) {\n if (!shared_1.GlobalSettings.enableFullJsonRoundTrip || forceDeleteIfNullOrDefault) {\n delete target[propertyName];\n }\n }\n else if (propertyValue === defaultValue) {\n if (!shared_1.GlobalSettings.enableFullJsonRoundTrip || forceDeleteIfNullOrDefault || !this.isTemplateString(target[propertyName])) {\n delete target[propertyName];\n }\n }\n else {\n target[propertyName] = propertyValue;\n }\n };\n BaseSerializationContext.prototype.serializeString = function (target, propertyName, propertyValue, defaultValue) {\n if (propertyValue === null ||\n propertyValue === undefined) {\n this.tryDeleteValue(target, propertyName);\n }\n else if (propertyValue === defaultValue) {\n this.tryDeleteDefaultValue(target, propertyName);\n }\n else {\n target[propertyName] = propertyValue;\n }\n };\n BaseSerializationContext.prototype.serializeBool = function (target, propertyName, propertyValue, defaultValue) {\n if (propertyValue === null ||\n propertyValue === undefined) {\n this.tryDeleteValue(target, propertyName);\n }\n else if (propertyValue === defaultValue) {\n this.tryDeleteDefaultValue(target, propertyName);\n }\n else {\n target[propertyName] = propertyValue;\n }\n };\n BaseSerializationContext.prototype.serializeNumber = function (target, propertyName, propertyValue, defaultValue) {\n if (propertyValue === null ||\n propertyValue === undefined ||\n isNaN(propertyValue)) {\n this.tryDeleteValue(target, propertyName);\n }\n else if (propertyValue === defaultValue) {\n this.tryDeleteDefaultValue(target, propertyName);\n }\n else {\n target[propertyName] = propertyValue;\n }\n };\n BaseSerializationContext.prototype.serializeEnum = function (enumType, target, propertyName, propertyValue, defaultValue) {\n if (defaultValue === void 0) { defaultValue = undefined; }\n if (propertyValue === null ||\n propertyValue === undefined) {\n this.tryDeleteValue(target, propertyName);\n }\n else if (propertyValue === defaultValue) {\n this.tryDeleteDefaultValue(target, propertyName);\n }\n else {\n target[propertyName] = enumType[propertyValue];\n }\n };\n BaseSerializationContext.prototype.serializeArray = function (target, propertyName, propertyValue) {\n var items = [];\n if (propertyValue) {\n for (var _i = 0, propertyValue_1 = propertyValue; _i < propertyValue_1.length; _i++) {\n var item = propertyValue_1[_i];\n var serializedItem = undefined;\n if (item instanceof SerializableObject) {\n serializedItem = item.toJSON(this);\n }\n else if (item.toJSON) {\n serializedItem = item.toJSON();\n }\n else {\n serializedItem = item;\n }\n if (serializedItem !== undefined) {\n items.push(serializedItem);\n }\n }\n }\n if (items.length === 0) {\n if (target.hasOwnProperty(propertyName) && Array.isArray(target[propertyName])) {\n delete target[propertyName];\n }\n }\n else {\n this.serializeValue(target, propertyName, items);\n }\n };\n BaseSerializationContext.prototype.clearEvents = function () {\n this._validationEvents = [];\n };\n BaseSerializationContext.prototype.logEvent = function (source, phase, event, message) {\n this._validationEvents.push({\n source: source,\n phase: phase,\n event: event,\n message: message\n });\n };\n BaseSerializationContext.prototype.logParseEvent = function (source, event, message) {\n this.logEvent(source, Enums.ValidationPhase.Parse, event, message);\n };\n BaseSerializationContext.prototype.getEventAt = function (index) {\n return this._validationEvents[index];\n };\n Object.defineProperty(BaseSerializationContext.prototype, \"eventCount\", {\n get: function () {\n return this._validationEvents.length;\n },\n enumerable: false,\n configurable: true\n });\n return BaseSerializationContext;\n}());\nexports.BaseSerializationContext = BaseSerializationContext;\nvar SimpleSerializationContext = /** @class */ (function (_super) {\n __extends(SimpleSerializationContext, _super);\n function SimpleSerializationContext() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return SimpleSerializationContext;\n}(BaseSerializationContext));\nvar PropertyDefinition = /** @class */ (function () {\n function PropertyDefinition(targetVersion, name, defaultValue, onGetInitialValue) {\n this.targetVersion = targetVersion;\n this.name = name;\n this.defaultValue = defaultValue;\n this.onGetInitialValue = onGetInitialValue;\n this.isSerializationEnabled = true;\n this.sequentialNumber = PropertyDefinition._sequentialNumber;\n PropertyDefinition._sequentialNumber++;\n }\n PropertyDefinition.prototype.getInternalName = function () {\n return this.name;\n };\n PropertyDefinition.prototype.parse = function (sender, source, context) {\n return source[this.name];\n };\n PropertyDefinition.prototype.toJSON = function (sender, target, value, context) {\n context.serializeValue(target, this.name, value, this.defaultValue);\n };\n PropertyDefinition._sequentialNumber = 0;\n return PropertyDefinition;\n}());\nexports.PropertyDefinition = PropertyDefinition;\nvar StringProperty = /** @class */ (function (_super) {\n __extends(StringProperty, _super);\n function StringProperty(targetVersion, name, treatEmptyAsUndefined, regEx, defaultValue, onGetInitialValue) {\n if (treatEmptyAsUndefined === void 0) { treatEmptyAsUndefined = true; }\n var _this = _super.call(this, targetVersion, name, defaultValue, onGetInitialValue) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.treatEmptyAsUndefined = treatEmptyAsUndefined;\n _this.regEx = regEx;\n _this.defaultValue = defaultValue;\n _this.onGetInitialValue = onGetInitialValue;\n return _this;\n }\n StringProperty.prototype.parse = function (sender, source, context) {\n var parsedValue = Utils.parseString(source[this.name], this.defaultValue);\n var isUndefined = parsedValue === undefined || (parsedValue === \"\" && this.treatEmptyAsUndefined);\n if (!isUndefined && this.regEx !== undefined) {\n var matches = this.regEx.exec(parsedValue);\n if (!matches) {\n context.logParseEvent(sender, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidPropertyValue(parsedValue, this.name));\n return undefined;\n }\n }\n return parsedValue;\n };\n StringProperty.prototype.toJSON = function (sender, target, value, context) {\n context.serializeString(target, this.name, value === \"\" && this.treatEmptyAsUndefined ? undefined : value, this.defaultValue);\n };\n return StringProperty;\n}(PropertyDefinition));\nexports.StringProperty = StringProperty;\nvar BoolProperty = /** @class */ (function (_super) {\n __extends(BoolProperty, _super);\n function BoolProperty(targetVersion, name, defaultValue, onGetInitialValue) {\n var _this = _super.call(this, targetVersion, name, defaultValue, onGetInitialValue) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.defaultValue = defaultValue;\n _this.onGetInitialValue = onGetInitialValue;\n return _this;\n }\n BoolProperty.prototype.parse = function (sender, source, context) {\n return Utils.parseBool(source[this.name], this.defaultValue);\n };\n BoolProperty.prototype.toJSON = function (sender, target, value, context) {\n context.serializeBool(target, this.name, value, this.defaultValue);\n };\n return BoolProperty;\n}(PropertyDefinition));\nexports.BoolProperty = BoolProperty;\nvar NumProperty = /** @class */ (function (_super) {\n __extends(NumProperty, _super);\n function NumProperty(targetVersion, name, defaultValue, onGetInitialValue) {\n var _this = _super.call(this, targetVersion, name, defaultValue, onGetInitialValue) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.defaultValue = defaultValue;\n _this.onGetInitialValue = onGetInitialValue;\n return _this;\n }\n NumProperty.prototype.parse = function (sender, source, context) {\n return Utils.parseNumber(source[this.name], this.defaultValue);\n };\n NumProperty.prototype.toJSON = function (sender, target, value, context) {\n context.serializeNumber(target, this.name, value, this.defaultValue);\n };\n return NumProperty;\n}(PropertyDefinition));\nexports.NumProperty = NumProperty;\nvar PixelSizeProperty = /** @class */ (function (_super) {\n __extends(PixelSizeProperty, _super);\n function PixelSizeProperty() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PixelSizeProperty.prototype.parse = function (sender, source, context) {\n var result = undefined;\n var value = source[this.name];\n if (typeof value === \"string\") {\n var isValid = false;\n try {\n var size = shared_1.SizeAndUnit.parse(value, true);\n if (size.unit === Enums.SizeUnit.Pixel) {\n result = size.physicalSize;\n isValid = true;\n }\n }\n catch (_a) {\n // Do nothing. A parse error is emitted below\n }\n if (!isValid) {\n context.logParseEvent(sender, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidPropertyValue(source[this.name], this.name));\n }\n }\n return result;\n };\n PixelSizeProperty.prototype.toJSON = function (sender, target, value, context) {\n context.serializeValue(target, this.name, typeof value === \"number\" && !isNaN(value) ? value + \"px\" : undefined);\n };\n return PixelSizeProperty;\n}(PropertyDefinition));\nexports.PixelSizeProperty = PixelSizeProperty;\nvar StringArrayProperty = /** @class */ (function (_super) {\n __extends(StringArrayProperty, _super);\n function StringArrayProperty(targetVersion, name, defaultValue, onGetInitialValue) {\n var _this = _super.call(this, targetVersion, name, defaultValue, onGetInitialValue) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.defaultValue = defaultValue;\n _this.onGetInitialValue = onGetInitialValue;\n return _this;\n }\n StringArrayProperty.prototype.parse = function (sender, source, context) {\n var sourceValue = source[this.name];\n if (sourceValue === undefined || !Array.isArray(sourceValue)) {\n return this.defaultValue;\n }\n var result = [];\n for (var _i = 0, sourceValue_1 = sourceValue; _i < sourceValue_1.length; _i++) {\n var value = sourceValue_1[_i];\n if (typeof value === \"string\") {\n result.push(value);\n }\n else {\n context.logParseEvent(sender, Enums.ValidationEvent.InvalidPropertyValue, \"Invalid array value \\\"\".concat(JSON.stringify(value), \"\\\" of type \\\"\").concat(typeof value, \"\\\" ignored for \\\"\").concat(this.name, \"\\\".\"));\n }\n }\n return result;\n };\n StringArrayProperty.prototype.toJSON = function (sender, target, value, context) {\n context.serializeArray(target, this.name, value);\n };\n return StringArrayProperty;\n}(PropertyDefinition));\nexports.StringArrayProperty = StringArrayProperty;\nvar ValueSetProperty = /** @class */ (function (_super) {\n __extends(ValueSetProperty, _super);\n function ValueSetProperty(targetVersion, name, values, defaultValue, onGetInitialValue) {\n var _this = _super.call(this, targetVersion, name, defaultValue, onGetInitialValue) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.values = values;\n _this.defaultValue = defaultValue;\n _this.onGetInitialValue = onGetInitialValue;\n return _this;\n }\n ValueSetProperty.prototype.isValidValue = function (value, context) {\n for (var _i = 0, _a = this.values; _i < _a.length; _i++) {\n var versionedValue = _a[_i];\n if (value.toLowerCase() === versionedValue.value.toLowerCase()) {\n var targetVersion = versionedValue.targetVersion\n ? versionedValue.targetVersion\n : this.targetVersion;\n return targetVersion.compareTo(context.targetVersion) <= 0;\n }\n }\n return false;\n };\n ValueSetProperty.prototype.parse = function (sender, source, context) {\n var sourceValue = source[this.name];\n if (sourceValue === undefined) {\n return this.defaultValue;\n }\n if (typeof sourceValue === \"string\") {\n for (var _i = 0, _a = this.values; _i < _a.length; _i++) {\n var versionedValue = _a[_i];\n if (sourceValue.toLowerCase() === versionedValue.value.toLowerCase()) {\n var targetVersion = versionedValue.targetVersion\n ? versionedValue.targetVersion\n : this.targetVersion;\n if (targetVersion.compareTo(context.targetVersion) <= 0) {\n return versionedValue.value;\n }\n else {\n context.logParseEvent(sender, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.propertyValueNotSupported(sourceValue, this.name, targetVersion.toString(), context.targetVersion.toString()));\n return this.defaultValue;\n }\n }\n }\n }\n context.logParseEvent(sender, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidPropertyValue(sourceValue, this.name));\n return this.defaultValue;\n };\n ValueSetProperty.prototype.toJSON = function (sender, target, value, context) {\n var invalidValue = false;\n if (value !== undefined) {\n invalidValue = true;\n for (var _i = 0, _a = this.values; _i < _a.length; _i++) {\n var versionedValue = _a[_i];\n if (versionedValue.value === value) {\n var targetVersion = versionedValue.targetVersion\n ? versionedValue.targetVersion\n : this.targetVersion;\n if (targetVersion.compareTo(context.targetVersion) <= 0) {\n invalidValue = false;\n break;\n }\n else {\n context.logEvent(sender, Enums.ValidationPhase.ToJSON, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.propertyValueNotSupported(value, this.name, targetVersion.toString(), context.targetVersion.toString()));\n }\n }\n }\n }\n if (!invalidValue) {\n context.serializeValue(target, this.name, value, this.defaultValue, true);\n }\n };\n return ValueSetProperty;\n}(PropertyDefinition));\nexports.ValueSetProperty = ValueSetProperty;\nvar EnumProperty = /** @class */ (function (_super) {\n __extends(EnumProperty, _super);\n function EnumProperty(targetVersion, name, enumType, defaultValue, values, onGetInitialValue) {\n var _this = _super.call(this, targetVersion, name, defaultValue, onGetInitialValue) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.enumType = enumType;\n _this.defaultValue = defaultValue;\n _this.onGetInitialValue = onGetInitialValue;\n _this._values = [];\n if (!values) {\n // eslint-disable-next-line guard-for-in\n for (var key in enumType) {\n var keyAsNumber = parseInt(key, 10);\n if (keyAsNumber >= 0) {\n _this._values.push({ value: keyAsNumber });\n }\n }\n }\n else {\n _this._values = values;\n }\n return _this;\n }\n EnumProperty.prototype.parse = function (sender, source, context) {\n var sourceValue = source[this.name];\n if (typeof sourceValue !== \"string\") {\n return this.defaultValue;\n }\n var enumValue = Utils.getEnumValueByName(this.enumType, sourceValue);\n if (enumValue !== undefined) {\n for (var _i = 0, _a = this.values; _i < _a.length; _i++) {\n var versionedValue = _a[_i];\n if (versionedValue.value === enumValue) {\n var targetVersion = versionedValue.targetVersion\n ? versionedValue.targetVersion\n : this.targetVersion;\n if (targetVersion.compareTo(context.targetVersion) <= 0) {\n return enumValue;\n }\n else {\n context.logParseEvent(sender, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.propertyValueNotSupported(sourceValue, this.name, targetVersion.toString(), context.targetVersion.toString()));\n return this.defaultValue;\n }\n }\n }\n }\n context.logParseEvent(sender, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidPropertyValue(sourceValue, this.name));\n return this.defaultValue;\n };\n EnumProperty.prototype.toJSON = function (sender, target, value, context) {\n var invalidValue = false;\n if (value !== undefined) {\n invalidValue = true;\n for (var _i = 0, _a = this.values; _i < _a.length; _i++) {\n var versionedValue = _a[_i];\n if (versionedValue.value === value) {\n var targetVersion = versionedValue.targetVersion\n ? versionedValue.targetVersion\n : this.targetVersion;\n if (targetVersion.compareTo(context.targetVersion) <= 0) {\n invalidValue = false;\n break;\n }\n else {\n context.logEvent(sender, Enums.ValidationPhase.ToJSON, Enums.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidPropertyValue(value, this.name));\n }\n }\n }\n }\n if (!invalidValue) {\n context.serializeEnum(this.enumType, target, this.name, value, this.defaultValue);\n }\n };\n Object.defineProperty(EnumProperty.prototype, \"values\", {\n get: function () {\n return this._values;\n },\n enumerable: false,\n configurable: true\n });\n return EnumProperty;\n}(PropertyDefinition));\nexports.EnumProperty = EnumProperty;\nvar SerializableObjectProperty = /** @class */ (function (_super) {\n __extends(SerializableObjectProperty, _super);\n function SerializableObjectProperty(targetVersion, name, objectType, nullable, defaultValue) {\n if (nullable === void 0) { nullable = false; }\n var _this = _super.call(this, targetVersion, name, defaultValue, function (sender) {\n return _this.nullable ? undefined : new _this.objectType();\n }) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.objectType = objectType;\n _this.nullable = nullable;\n return _this;\n }\n SerializableObjectProperty.prototype.parse = function (sender, source, context) {\n var sourceValue = source[this.name];\n if (sourceValue === undefined) {\n return this.onGetInitialValue ? this.onGetInitialValue(sender) : this.defaultValue;\n }\n var result = new this.objectType();\n result.parse(sourceValue, context);\n return result;\n };\n SerializableObjectProperty.prototype.toJSON = function (sender, target, value, context) {\n var serializedValue = undefined;\n if (value !== undefined && !value.hasAllDefaultValues()) {\n serializedValue = value.toJSON(context);\n }\n if (typeof serializedValue === \"object\" && Object.keys(serializedValue).length === 0) {\n serializedValue = undefined;\n }\n context.serializeValue(target, this.name, serializedValue, this.defaultValue, true);\n };\n return SerializableObjectProperty;\n}(PropertyDefinition));\nexports.SerializableObjectProperty = SerializableObjectProperty;\nvar SerializableObjectCollectionProperty = /** @class */ (function (_super) {\n __extends(SerializableObjectCollectionProperty, _super);\n function SerializableObjectCollectionProperty(targetVersion, name, objectType, onItemAdded) {\n var _this = _super.call(this, targetVersion, name, undefined, function (sender) {\n return [];\n }) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.objectType = objectType;\n _this.onItemAdded = onItemAdded;\n return _this;\n }\n SerializableObjectCollectionProperty.prototype.parse = function (sender, source, context) {\n var result = [];\n var sourceCollection = source[this.name];\n if (Array.isArray(sourceCollection)) {\n for (var _i = 0, sourceCollection_1 = sourceCollection; _i < sourceCollection_1.length; _i++) {\n var sourceItem = sourceCollection_1[_i];\n var item = new this.objectType();\n item.parse(sourceItem, context);\n result.push(item);\n if (this.onItemAdded) {\n this.onItemAdded(sender, item);\n }\n }\n }\n return result.length > 0\n ? result\n : this.onGetInitialValue\n ? this.onGetInitialValue(sender)\n : undefined;\n };\n SerializableObjectCollectionProperty.prototype.toJSON = function (sender, target, value, context) {\n context.serializeArray(target, this.name, value);\n };\n return SerializableObjectCollectionProperty;\n}(PropertyDefinition));\nexports.SerializableObjectCollectionProperty = SerializableObjectCollectionProperty;\nvar CustomProperty = /** @class */ (function (_super) {\n __extends(CustomProperty, _super);\n function CustomProperty(targetVersion, name, onParse, onToJSON, defaultValue, onGetInitialValue) {\n var _this = _super.call(this, targetVersion, name, defaultValue, onGetInitialValue) || this;\n _this.targetVersion = targetVersion;\n _this.name = name;\n _this.onParse = onParse;\n _this.onToJSON = onToJSON;\n _this.defaultValue = defaultValue;\n _this.onGetInitialValue = onGetInitialValue;\n if (!_this.onParse) {\n throw new Error(\"CustomPropertyDefinition instances must have an onParse handler.\");\n }\n if (!_this.onToJSON) {\n throw new Error(\"CustomPropertyDefinition instances must have an onToJSON handler.\");\n }\n return _this;\n }\n CustomProperty.prototype.parse = function (sender, source, context) {\n return this.onParse(sender, this, source, context);\n };\n CustomProperty.prototype.toJSON = function (sender, target, value, context) {\n this.onToJSON(sender, this, target, value, context);\n };\n return CustomProperty;\n}(PropertyDefinition));\nexports.CustomProperty = CustomProperty;\nvar SerializableObjectSchema = /** @class */ (function () {\n function SerializableObjectSchema() {\n this._properties = [];\n }\n SerializableObjectSchema.prototype.indexOf = function (prop) {\n for (var i = 0; i < this._properties.length; i++) {\n if (this._properties[i] === prop) {\n return i;\n }\n }\n return -1;\n };\n SerializableObjectSchema.prototype.add = function () {\n var properties = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n properties[_i] = arguments[_i];\n }\n for (var _a = 0, properties_1 = properties; _a < properties_1.length; _a++) {\n var prop = properties_1[_a];\n if (this.indexOf(prop) === -1) {\n this._properties.push(prop);\n }\n }\n };\n SerializableObjectSchema.prototype.remove = function () {\n var properties = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n properties[_i] = arguments[_i];\n }\n for (var _a = 0, properties_2 = properties; _a < properties_2.length; _a++) {\n var prop = properties_2[_a];\n while (true) {\n var index = this.indexOf(prop);\n if (index >= 0) {\n this._properties.splice(index, 1);\n }\n else {\n break;\n }\n }\n }\n };\n SerializableObjectSchema.prototype.getItemAt = function (index) {\n return this._properties[index];\n };\n SerializableObjectSchema.prototype.getCount = function () {\n return this._properties.length;\n };\n return SerializableObjectSchema;\n}());\nexports.SerializableObjectSchema = SerializableObjectSchema;\n// This is a decorator function, used to map SerializableObject descendant class members to\n// schema properties\nfunction property(prop) {\n return function (target, propertyKey) {\n var descriptor = Object.getOwnPropertyDescriptor(target, propertyKey) || {};\n if (!descriptor.get && !descriptor.set) {\n descriptor.get = function () {\n return this.getValue(prop);\n };\n descriptor.set = function (value) {\n this.setValue(prop, value);\n };\n Object.defineProperty(target, propertyKey, descriptor);\n }\n };\n}\nexports.property = property;\nvar SerializableObject = /** @class */ (function () {\n function SerializableObject() {\n this._propertyBag = {};\n this._rawProperties = {};\n this.maxVersion = SerializableObject.defaultMaxVersion;\n var s = this.getSchema();\n for (var i = 0; i < s.getCount(); i++) {\n var prop = s.getItemAt(i);\n if (prop.onGetInitialValue) {\n this.setValue(prop, prop.onGetInitialValue(this));\n }\n }\n }\n SerializableObject.prototype.getDefaultSerializationContext = function () {\n return new SimpleSerializationContext();\n };\n SerializableObject.prototype.populateSchema = function (schema) {\n var ctor = this.constructor;\n var properties = [];\n // eslint-disable-next-line guard-for-in\n for (var propertyName in ctor) {\n try {\n var propertyValue = ctor[propertyName];\n if (propertyValue instanceof PropertyDefinition) {\n properties.push(propertyValue);\n }\n }\n catch (_a) {\n // If a property happens to have a getter function and\n // it throws an exception, we need to catch it here\n }\n }\n if (properties.length > 0) {\n var sortedProperties = properties.sort(function (p1, p2) {\n if (p1.sequentialNumber > p2.sequentialNumber) {\n return 1;\n }\n else if (p1.sequentialNumber < p2.sequentialNumber) {\n return -1;\n }\n return 0;\n });\n schema.add.apply(schema, sortedProperties);\n }\n if (SerializableObject.onRegisterCustomProperties) {\n SerializableObject.onRegisterCustomProperties(this, schema);\n }\n };\n SerializableObject.prototype.getValue = function (prop) {\n return this._propertyBag.hasOwnProperty(prop.getInternalName())\n ? this._propertyBag[prop.getInternalName()]\n : prop.defaultValue;\n };\n SerializableObject.prototype.setValue = function (prop, value) {\n if (value === undefined || value === null) {\n delete this._propertyBag[prop.getInternalName()];\n }\n else {\n this._propertyBag[prop.getInternalName()] = value;\n }\n };\n SerializableObject.prototype.internalParse = function (source, context) {\n this._propertyBag = {};\n this._rawProperties = shared_1.GlobalSettings.enableFullJsonRoundTrip ? (source ? source : {}) : {};\n if (source) {\n var s = this.getSchema();\n for (var i = 0; i < s.getCount(); i++) {\n var prop = s.getItemAt(i);\n if (prop.isSerializationEnabled) {\n var propertyValue = prop.onGetInitialValue\n ? prop.onGetInitialValue(this)\n : undefined;\n if (source.hasOwnProperty(prop.name)) {\n if (prop.targetVersion.compareTo(context.targetVersion) <= 0) {\n propertyValue = prop.parse(this, source, context);\n }\n else {\n context.logParseEvent(this, Enums.ValidationEvent.UnsupportedProperty, strings_1.Strings.errors.propertyNotSupported(prop.name, prop.targetVersion.toString(), context.targetVersion.toString()));\n }\n }\n this.setValue(prop, propertyValue);\n }\n }\n }\n else {\n this.resetDefaultValues();\n }\n };\n SerializableObject.prototype.internalToJSON = function (target, context) {\n var s = this.getSchema();\n var serializedProperties = [];\n for (var i = 0; i < s.getCount(); i++) {\n var prop = s.getItemAt(i);\n // Avoid serializing the same property multiple times. This is necessary\n // because some property definitions map to the same underlying schema\n // property\n if (prop.isSerializationEnabled &&\n prop.targetVersion.compareTo(context.targetVersion) <= 0 &&\n serializedProperties.indexOf(prop.name) === -1) {\n prop.toJSON(this, target, this.getValue(prop), context);\n serializedProperties.push(prop.name);\n }\n }\n };\n SerializableObject.prototype.shouldSerialize = function (_context) {\n return true;\n };\n SerializableObject.prototype.parse = function (source, context) {\n this.internalParse(source, context ? context : new SimpleSerializationContext());\n };\n SerializableObject.prototype.toJSON = function (context) {\n var effectiveContext;\n if (context && context instanceof BaseSerializationContext) {\n effectiveContext = context;\n }\n else {\n effectiveContext = this.getDefaultSerializationContext();\n effectiveContext.toJSONOriginalParam = context;\n }\n if (this.shouldSerialize(effectiveContext)) {\n var result = void 0;\n if (shared_1.GlobalSettings.enableFullJsonRoundTrip &&\n this._rawProperties &&\n typeof this._rawProperties === \"object\") {\n result = this._rawProperties;\n }\n else {\n result = {};\n }\n this.internalToJSON(result, effectiveContext);\n return result;\n }\n else {\n return undefined;\n }\n };\n SerializableObject.prototype.hasDefaultValue = function (prop) {\n return this.getValue(prop) === prop.defaultValue;\n };\n SerializableObject.prototype.hasAllDefaultValues = function () {\n var s = this.getSchema();\n for (var i = 0; i < s.getCount(); i++) {\n var prop = s.getItemAt(i);\n if (!this.hasDefaultValue(prop)) {\n return false;\n }\n }\n return true;\n };\n SerializableObject.prototype.resetDefaultValues = function () {\n var s = this.getSchema();\n for (var i = 0; i < s.getCount(); i++) {\n var prop = s.getItemAt(i);\n this.setValue(prop, prop.defaultValue);\n }\n };\n SerializableObject.prototype.setCustomProperty = function (name, value) {\n var shouldDeleteProperty = (typeof value === \"string\" && !value) || value === undefined || value === null;\n if (shouldDeleteProperty) {\n delete this._rawProperties[name];\n }\n else {\n this._rawProperties[name] = value;\n }\n };\n SerializableObject.prototype.getCustomProperty = function (name) {\n return this._rawProperties[name];\n };\n SerializableObject.prototype.getSchema = function () {\n var schema = SerializableObject._schemaCache[this.getSchemaKey()];\n if (!schema) {\n schema = new SerializableObjectSchema();\n this.populateSchema(schema);\n SerializableObject._schemaCache[this.getSchemaKey()] = schema;\n }\n return schema;\n };\n SerializableObject.defaultMaxVersion = Versions.latest;\n SerializableObject._schemaCache = {};\n return SerializableObject;\n}());\nexports.SerializableObject = SerializableObject;\n//# sourceMappingURL=serialization.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.UUID = exports.SizeAndUnit = exports.PaddingDefinition = exports.SpacingDefinition = exports.StringWithSubstitutions = exports.ContentTypes = exports.GlobalSettings = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar Enums = require(\"./enums\");\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\nvar GlobalSettings = /** @class */ (function () {\n function GlobalSettings() {\n }\n GlobalSettings.useAdvancedTextBlockTruncation = true;\n GlobalSettings.useAdvancedCardBottomTruncation = false;\n GlobalSettings.useMarkdownInRadioButtonAndCheckbox = true;\n GlobalSettings.allowMarkForTextHighlighting = false;\n GlobalSettings.alwaysBleedSeparators = false;\n GlobalSettings.enableFullJsonRoundTrip = false;\n GlobalSettings.displayInputValidationErrors = true;\n GlobalSettings.allowPreProcessingPropertyValues = false;\n GlobalSettings.setTabIndexAtCardRoot = true;\n GlobalSettings.enableFallback = true;\n GlobalSettings.useWebkitLineClamp = true;\n GlobalSettings.allowMoreThanMaxActionsInOverflowMenu = false;\n GlobalSettings.removePaddingFromContainersWithBackgroundImage = false;\n GlobalSettings.resetInputsDirtyStateAfterActionExecution = true;\n GlobalSettings.applets = {\n logEnabled: true,\n logLevel: Enums.LogLevel.Error,\n maximumRetryAttempts: 3,\n defaultTimeBetweenRetryAttempts: 3000,\n authPromptWidth: 400,\n authPromptHeight: 600,\n refresh: {\n mode: Enums.RefreshMode.Manual,\n timeBetweenAutomaticRefreshes: 3000,\n maximumConsecutiveAutomaticRefreshes: 3,\n allowManualRefreshesAfterAutomaticRefreshes: true\n }\n };\n return GlobalSettings;\n}());\nexports.GlobalSettings = GlobalSettings;\nexports.ContentTypes = {\n applicationJson: \"application/json\",\n applicationXWwwFormUrlencoded: \"application/x-www-form-urlencoded\"\n};\nvar StringWithSubstitutions = /** @class */ (function () {\n function StringWithSubstitutions() {\n this._isProcessed = false;\n }\n StringWithSubstitutions.prototype.getReferencedInputs = function (inputs, referencedInputs) {\n if (!referencedInputs) {\n throw new Error(\"The referencedInputs parameter cannot be null.\");\n }\n if (this._original) {\n for (var _i = 0, inputs_1 = inputs; _i < inputs_1.length; _i++) {\n var input = inputs_1[_i];\n var matches = new RegExp(\"\\\\{{2}(\" + input.id + \").value\\\\}{2}\", \"gi\").exec(this._original);\n if (matches != null && input.id) {\n referencedInputs[input.id] = input;\n }\n }\n }\n };\n StringWithSubstitutions.prototype.substituteInputValues = function (inputs, contentType) {\n this._processed = this._original;\n if (this._original) {\n var regEx = /\\{{2}([a-z0-9_$@]+).value\\}{2}/gi;\n var matches = void 0;\n while ((matches = regEx.exec(this._original)) !== null && this._processed) {\n for (var _i = 0, _a = Object.keys(inputs); _i < _a.length; _i++) {\n var key = _a[_i];\n if (key.toLowerCase() === matches[1].toLowerCase()) {\n var matchedInput = inputs[key];\n var valueForReplace = \"\";\n if (matchedInput.value) {\n valueForReplace = matchedInput.value;\n }\n if (contentType === exports.ContentTypes.applicationJson) {\n valueForReplace = JSON.stringify(valueForReplace);\n valueForReplace = valueForReplace.slice(1, -1);\n }\n else if (contentType === exports.ContentTypes.applicationXWwwFormUrlencoded) {\n valueForReplace = encodeURIComponent(valueForReplace);\n }\n this._processed = this._processed.replace(matches[0], valueForReplace);\n break;\n }\n }\n }\n }\n this._isProcessed = true;\n };\n StringWithSubstitutions.prototype.getOriginal = function () {\n return this._original;\n };\n StringWithSubstitutions.prototype.get = function () {\n if (!this._isProcessed) {\n return this._original;\n }\n else {\n return this._processed;\n }\n };\n StringWithSubstitutions.prototype.set = function (value) {\n this._original = value;\n this._isProcessed = false;\n };\n return StringWithSubstitutions;\n}());\nexports.StringWithSubstitutions = StringWithSubstitutions;\nvar SpacingDefinition = /** @class */ (function () {\n function SpacingDefinition(top, right, bottom, left) {\n if (top === void 0) { top = 0; }\n if (right === void 0) { right = 0; }\n if (bottom === void 0) { bottom = 0; }\n if (left === void 0) { left = 0; }\n this.left = 0;\n this.top = 0;\n this.right = 0;\n this.bottom = 0;\n this.top = top;\n this.right = right;\n this.bottom = bottom;\n this.left = left;\n }\n return SpacingDefinition;\n}());\nexports.SpacingDefinition = SpacingDefinition;\nvar PaddingDefinition = /** @class */ (function () {\n function PaddingDefinition(top, right, bottom, left) {\n if (top === void 0) { top = Enums.Spacing.None; }\n if (right === void 0) { right = Enums.Spacing.None; }\n if (bottom === void 0) { bottom = Enums.Spacing.None; }\n if (left === void 0) { left = Enums.Spacing.None; }\n this.top = Enums.Spacing.None;\n this.right = Enums.Spacing.None;\n this.bottom = Enums.Spacing.None;\n this.left = Enums.Spacing.None;\n this.top = top;\n this.right = right;\n this.bottom = bottom;\n this.left = left;\n }\n return PaddingDefinition;\n}());\nexports.PaddingDefinition = PaddingDefinition;\nvar SizeAndUnit = /** @class */ (function () {\n function SizeAndUnit(physicalSize, unit) {\n this.physicalSize = physicalSize;\n this.unit = unit;\n }\n SizeAndUnit.parse = function (input, requireUnitSpecifier) {\n if (requireUnitSpecifier === void 0) { requireUnitSpecifier = false; }\n var result = new SizeAndUnit(0, Enums.SizeUnit.Weight);\n if (typeof input === \"number\") {\n result.physicalSize = input;\n return result;\n }\n else if (typeof input === \"string\") {\n var regExp = /^([0-9]+)(px|\\*)?$/g;\n var matches = regExp.exec(input);\n var expectedMatchCount = requireUnitSpecifier ? 3 : 2;\n if (matches && matches.length >= expectedMatchCount) {\n result.physicalSize = parseInt(matches[1]);\n if (matches.length === 3) {\n if (matches[2] === \"px\") {\n result.unit = Enums.SizeUnit.Pixel;\n }\n }\n return result;\n }\n }\n throw new Error(\"Invalid size: \" + input);\n };\n return SizeAndUnit;\n}());\nexports.SizeAndUnit = SizeAndUnit;\n/**\n * Fast UUID generator, RFC4122 version 4 compliant.\n * @author Jeff Ward (jcward.com).\n * @license MIT license\n * @link http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/21963136#21963136\n **/\n/* eslint-disable @typescript-eslint/no-extraneous-class, @typescript-eslint/naming-convention, no-bitwise */\nvar UUID = /** @class */ (function () {\n function UUID() {\n }\n UUID.generate = function () {\n var d0 = (Math.random() * 0xffffffff) | 0;\n var d1 = (Math.random() * 0xffffffff) | 0;\n var d2 = (Math.random() * 0xffffffff) | 0;\n var d3 = (Math.random() * 0xffffffff) | 0;\n return (UUID.lut[d0 & 0xff] +\n UUID.lut[(d0 >> 8) & 0xff] +\n UUID.lut[(d0 >> 16) & 0xff] +\n UUID.lut[(d0 >> 24) & 0xff] +\n \"-\" +\n UUID.lut[d1 & 0xff] +\n UUID.lut[(d1 >> 8) & 0xff] +\n \"-\" +\n UUID.lut[((d1 >> 16) & 0x0f) | 0x40] +\n UUID.lut[(d1 >> 24) & 0xff] +\n \"-\" +\n UUID.lut[(d2 & 0x3f) | 0x80] +\n UUID.lut[(d2 >> 8) & 0xff] +\n \"-\" +\n UUID.lut[(d2 >> 16) & 0xff] +\n UUID.lut[(d2 >> 24) & 0xff] +\n UUID.lut[d3 & 0xff] +\n UUID.lut[(d3 >> 8) & 0xff] +\n UUID.lut[(d3 >> 16) & 0xff] +\n UUID.lut[(d3 >> 24) & 0xff]);\n };\n UUID.initialize = function () {\n for (var i = 0; i < 256; i++) {\n UUID.lut[i] = (i < 16 ? \"0\" : \"\") + i.toString(16);\n }\n };\n UUID.lut = [];\n return UUID;\n}());\nexports.UUID = UUID;\nUUID.initialize();\n/* eslint-enable @typescript-eslint/no-extraneous-class, @typescript-eslint/naming-convention, no-bitwise */\n//# sourceMappingURL=shared.js.map","\"use strict\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Strings = void 0;\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\nvar Strings = /** @class */ (function () {\n function Strings() {\n }\n Strings.errors = {\n unknownElementType: function (typeName) {\n return \"Unknown element type \\\"\".concat(typeName, \"\\\". Fallback will be used if present.\");\n },\n unknownActionType: function (typeName) {\n return \"Unknown action type \\\"\".concat(typeName, \"\\\". Fallback will be used if present.\");\n },\n elementTypeNotAllowed: function (typeName) {\n return \"Element type \\\"\".concat(typeName, \"\\\" is not allowed in this context.\");\n },\n actionTypeNotAllowed: function (typeName) {\n return \"Action type \\\"\".concat(typeName, \"\\\" is not allowed in this context.\");\n },\n invalidPropertyValue: function (value, propertyName) {\n return \"Invalid value \\\"\".concat(value, \"\\\" for property \\\"\").concat(propertyName, \"\\\".\");\n },\n showCardMustHaveCard: function () {\n return \"\\\"An Action.ShowCard must have its \\\"card\\\" property set to a valid AdaptiveCard object.\";\n },\n invalidColumnWidth: function (invalidWidth) {\n return \"Invalid column width \\\"\".concat(invalidWidth, \"\\\" - defaulting to \\\"auto\\\".\");\n },\n invalidCardVersion: function (defaultingToVersion) {\n return \"Invalid card version. Defaulting to \\\"\".concat(defaultingToVersion, \"\\\".\");\n },\n invalidVersionString: function (versionString) {\n return \"Invalid version string \\\"\".concat(versionString, \"\\\".\");\n },\n propertyValueNotSupported: function (value, propertyName, supportedInVersion, versionUsed) {\n return \"Value \\\"\".concat(value, \"\\\" for property \\\"\").concat(propertyName, \"\\\" is supported in version \").concat(supportedInVersion, \", but you are using version \").concat(versionUsed, \".\");\n },\n propertyNotSupported: function (propertyName, supportedInVersion, versionUsed) {\n return \"Property \\\"\".concat(propertyName, \"\\\" is supported in version \").concat(supportedInVersion, \", but you are using version \").concat(versionUsed, \".\");\n },\n indexOutOfRange: function (index) { return \"Index out of range (\".concat(index, \").\"); },\n elementCannotBeUsedAsInline: function () {\n return \"RichTextBlock.addInline: the specified card element cannot be used as a RichTextBlock inline.\";\n },\n inlineAlreadyParented: function () {\n return \"RichTextBlock.addInline: the specified inline already belongs to another RichTextBlock.\";\n },\n interactivityNotAllowed: function () { return \"Interactivity is not allowed.\"; },\n inputsMustHaveUniqueId: function () { return \"All inputs must have a unique Id.\"; },\n choiceSetMustHaveAtLeastOneChoice: function () {\n return \"An Input.ChoiceSet must have at least one choice defined.\";\n },\n choiceSetChoicesMustHaveTitleAndValue: function () {\n return \"All choices in an Input.ChoiceSet must have their title and value properties set.\";\n },\n propertyMustBeSet: function (propertyName) { return \"Property \\\"\".concat(propertyName, \"\\\" must be set.\"); },\n actionHttpHeadersMustHaveNameAndValue: function () {\n return \"All headers of an Action.Http must have their name and value properties set.\";\n },\n tooManyActions: function (maximumActions) {\n return \"Maximum number of actions exceeded (\".concat(maximumActions, \").\");\n },\n tooLittleTimeDelay: function (minAutoplayDelay) {\n return \"Autoplay Delay is too short (\".concat(minAutoplayDelay, \").\");\n },\n tooManyCarouselPages: function (maxCarouselPages) {\n return \"Maximum number of Carousel pages exceeded (\".concat(maxCarouselPages, \").\");\n },\n invalidInitialPageIndex: function (initialPageIndex) {\n return \"InitialPage for carousel is invalid (\".concat(initialPageIndex, \").\");\n },\n columnAlreadyBelongsToAnotherSet: function () { return \"This column already belongs to another ColumnSet.\"; },\n invalidCardType: function () {\n return \"Invalid or missing card type. Make sure the card's type property is set to \\\"AdaptiveCard\\\".\";\n },\n unsupportedCardVersion: function (version, maxSupportedVersion) {\n return \"The specified card version (\".concat(version, \") is not supported or still in preview. The latest released card version is \").concat(maxSupportedVersion, \".\");\n },\n duplicateId: function (id) { return \"Duplicate Id \\\"\".concat(id, \"\\\".\"); },\n markdownProcessingNotEnabled: function () {\n return \"Markdown processing isn't enabled. Please see https://www.npmjs.com/package/adaptivecards#supporting-markdown\";\n },\n processMarkdownEventRemoved: function () {\n return \"The processMarkdown event has been removed. Please update your code and set onProcessMarkdown instead.\";\n },\n elementAlreadyParented: function () { return \"The element already belongs to another container.\"; },\n actionAlreadyParented: function () { return \"The action already belongs to another element.\"; },\n elementTypeNotStandalone: function (typeName) {\n return \"Elements of type \".concat(typeName, \" cannot be used as standalone elements.\");\n },\n invalidInputLabelWidth: function () {\n return \"Invalid input label width. Defaulting to label width from host config.\";\n },\n };\n Strings.magicCodeInputCard = {\n tryAgain: function () { return \"That didn't work... let's try again.\"; },\n pleaseLogin: function () {\n return 'Please login in the popup. You will obtain a magic code. Paste that code below and select \"Submit\"';\n },\n enterMagicCode: function () { return \"Enter magic code\"; },\n pleaseEnterMagicCodeYouReceived: function () { return \"Please enter the magic code you received.\"; },\n submit: function () { return \"Submit\"; },\n cancel: function () { return \"Cancel\"; },\n somethingWentWrong: function () { return \"Something went wrong. This action can't be handled.\"; },\n authenticationFailed: function () { return \"Authentication failed.\"; }\n };\n Strings.runtime = {\n automaticRefreshPaused: function () { return \"Automatic refresh paused.\"; },\n clckToRestartAutomaticRefresh: function () { return \"Click to restart.\"; },\n refreshThisCard: function () { return \"Refresh this card\"; }\n };\n Strings.hints = {\n dontUseWeightedAndStrecthedColumnsInSameSet: function () {\n return \"It is not recommended to use weighted and stretched columns in the same ColumnSet, because in such a situation stretched columns will always get the minimum amount of space.\";\n }\n };\n Strings.defaults = {\n inlineActionTitle: function () { return \"Inline Action\"; },\n overflowButtonText: function () { return \"...\"; },\n overflowButtonTooltip: function () { return \"More options\"; },\n emptyElementText: function (elementType) { return \"Empty \".concat(elementType); },\n mediaPlayerAriaLabel: function () { return \"Media content\"; },\n mediaPlayerPlayMedia: function () { return \"Play media\"; },\n youTubeVideoPlayer: function () { return \"YouTube video player\"; },\n vimeoVideoPlayer: function () { return \"Vimeo video player\"; },\n dailymotionVideoPlayer: function () { return \"Dailymotion video player\"; },\n carouselNavigationPreviousTooltip: function () { return \"Previous carousel page\"; },\n carouselNavigationNextTooltip: function () { return \"Next carousel page\"; }\n };\n return Strings;\n}());\nexports.Strings = Strings;\n//# sourceMappingURL=strings.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Table = exports.TableRow = exports.TableCell = exports.StylableContainer = exports.TableColumnDefinition = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar card_elements_1 = require(\"./card-elements\");\nvar enums_1 = require(\"./enums\");\nvar registry_1 = require(\"./registry\");\nvar serialization_1 = require(\"./serialization\");\nvar shared_1 = require(\"./shared\");\nvar strings_1 = require(\"./strings\");\nvar utils_1 = require(\"./utils\");\nvar TableColumnDefinition = /** @class */ (function (_super) {\n __extends(TableColumnDefinition, _super);\n function TableColumnDefinition() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.width = new shared_1.SizeAndUnit(1, enums_1.SizeUnit.Weight);\n return _this;\n }\n TableColumnDefinition.prototype.getSchemaKey = function () {\n return \"ColumnDefinition\";\n };\n TableColumnDefinition.horizontalCellContentAlignmentProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_5, \"horizontalCellContentAlignment\", enums_1.HorizontalAlignment);\n TableColumnDefinition.verticalCellContentAlignmentProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_5, \"verticalCellContentAlignment\", enums_1.VerticalAlignment);\n TableColumnDefinition.widthProperty = new serialization_1.CustomProperty(serialization_1.Versions.v1_5, \"width\", function (sender, prop, source, context) {\n var result = prop.defaultValue;\n var value = source[prop.name];\n var invalidWidth = false;\n if (typeof value === \"number\" && !isNaN(value)) {\n result = new shared_1.SizeAndUnit(value, enums_1.SizeUnit.Weight);\n }\n else if (typeof value === \"string\") {\n try {\n result = shared_1.SizeAndUnit.parse(value);\n }\n catch (e) {\n invalidWidth = true;\n }\n }\n else {\n invalidWidth = true;\n }\n if (invalidWidth) {\n context.logParseEvent(sender, enums_1.ValidationEvent.InvalidPropertyValue, strings_1.Strings.errors.invalidColumnWidth(value));\n }\n return result;\n }, function (sender, property, target, value, context) {\n if (value.unit === enums_1.SizeUnit.Pixel) {\n context.serializeValue(target, \"width\", value.physicalSize + \"px\");\n }\n else {\n context.serializeNumber(target, \"width\", value.physicalSize);\n }\n }, new shared_1.SizeAndUnit(1, enums_1.SizeUnit.Weight));\n __decorate([\n (0, serialization_1.property)(TableColumnDefinition.horizontalCellContentAlignmentProperty)\n ], TableColumnDefinition.prototype, \"horizontalCellContentAlignment\", void 0);\n __decorate([\n (0, serialization_1.property)(TableColumnDefinition.verticalCellContentAlignmentProperty)\n ], TableColumnDefinition.prototype, \"verticalCellContentAlignment\", void 0);\n __decorate([\n (0, serialization_1.property)(TableColumnDefinition.widthProperty)\n ], TableColumnDefinition.prototype, \"width\", void 0);\n return TableColumnDefinition;\n}(serialization_1.SerializableObject));\nexports.TableColumnDefinition = TableColumnDefinition;\nvar StylableContainer = /** @class */ (function (_super) {\n __extends(StylableContainer, _super);\n function StylableContainer() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._items = [];\n return _this;\n }\n StylableContainer.prototype.parseItem = function (source, context) {\n var _this = this;\n return context.parseCardObject(this, source, [], // Forbidden types not supported for elements for now\n !this.isDesignMode(), function (typeName) {\n return _this.createItemInstance(typeName);\n }, function (typeName, _errorType) {\n context.logParseEvent(undefined, enums_1.ValidationEvent.ElementTypeNotAllowed, strings_1.Strings.errors.elementTypeNotAllowed(typeName));\n });\n };\n StylableContainer.prototype.internalAddItem = function (item) {\n if (!item.parent) {\n this._items.push(item);\n item.setParent(this);\n }\n else {\n throw new Error(strings_1.Strings.errors.elementAlreadyParented());\n }\n };\n StylableContainer.prototype.internalRemoveItem = function (item) {\n var itemIndex = this._items.indexOf(item);\n if (itemIndex >= 0) {\n this._items.splice(itemIndex, 1);\n item.setParent(undefined);\n this.updateLayout();\n return true;\n }\n return false;\n };\n StylableContainer.prototype.internalIndexOf = function (item) {\n return this._items.indexOf(item);\n };\n StylableContainer.prototype.internalParse = function (source, context) {\n _super.prototype.internalParse.call(this, source, context);\n this._items = [];\n var items = source[this.getCollectionPropertyName()];\n if (Array.isArray(items)) {\n for (var _i = 0, items_1 = items; _i < items_1.length; _i++) {\n var item = items_1[_i];\n var instance = this.parseItem(item, context);\n if (instance) {\n this._items.push(instance);\n }\n }\n }\n };\n StylableContainer.prototype.internalToJSON = function (target, context) {\n _super.prototype.internalToJSON.call(this, target, context);\n context.serializeArray(target, this.getCollectionPropertyName(), this._items);\n };\n StylableContainer.prototype.removeItem = function (item) {\n return this.internalRemoveItem(item);\n };\n StylableContainer.prototype.getItemCount = function () {\n return this._items.length;\n };\n StylableContainer.prototype.getItemAt = function (index) {\n return this._items[index];\n };\n StylableContainer.prototype.getFirstVisibleRenderedItem = function () {\n return this.getItemCount() > 0 ? this.getItemAt(0) : undefined;\n };\n StylableContainer.prototype.getLastVisibleRenderedItem = function () {\n return this.getItemCount() > 0 ? this.getItemAt(this.getItemCount() - 1) : undefined;\n };\n return StylableContainer;\n}(card_elements_1.StylableCardElementContainer));\nexports.StylableContainer = StylableContainer;\nvar TableCell = /** @class */ (function (_super) {\n __extends(TableCell, _super);\n function TableCell() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._columnIndex = -1;\n _this._cellType = \"data\";\n return _this;\n }\n TableCell.prototype.getHasBorder = function () {\n return this.parentRow.parentTable.showGridLines;\n };\n TableCell.prototype.applyBorder = function () {\n if (this.renderedElement && this.getHasBorder()) {\n var styleDefinition = this.hostConfig.containerStyles.getStyleByName(this.parentRow.parentTable.gridStyle);\n if (styleDefinition.borderColor) {\n var borderColor = (0, utils_1.stringToCssColor)(styleDefinition.borderColor);\n if (borderColor) {\n this.renderedElement.style.borderRight = \"1px solid \" + borderColor;\n this.renderedElement.style.borderBottom = \"1px solid \" + borderColor;\n }\n }\n }\n };\n TableCell.prototype.getDefaultPadding = function () {\n return this.getHasBackground() || this.getHasBorder()\n ? new shared_1.PaddingDefinition(enums_1.Spacing.Small, enums_1.Spacing.Small, enums_1.Spacing.Small, enums_1.Spacing.Small)\n : _super.prototype.getDefaultPadding.call(this);\n };\n TableCell.prototype.internalRender = function () {\n var cellElement = _super.prototype.internalRender.call(this);\n if (cellElement) {\n cellElement.setAttribute(\"role\", this.cellType === \"data\" ? \"cell\" : \"columnheader\");\n cellElement.style.minWidth = \"0\";\n if (this.cellType === \"header\") {\n cellElement.setAttribute(\"scope\", \"col\");\n }\n }\n return cellElement;\n };\n TableCell.prototype.shouldSerialize = function (_context) {\n return true;\n };\n TableCell.prototype.getJsonTypeName = function () {\n return \"TableCell\";\n };\n TableCell.prototype.getEffectiveTextStyleDefinition = function () {\n if (this.cellType === \"header\") {\n return this.hostConfig.textStyles.columnHeader;\n }\n return _super.prototype.getEffectiveTextStyleDefinition.call(this);\n };\n TableCell.prototype.getEffectiveHorizontalAlignment = function () {\n if (this.horizontalAlignment !== undefined) {\n return this.horizontalAlignment;\n }\n if (this.parentRow.horizontalCellContentAlignment !== undefined) {\n return this.parentRow.horizontalCellContentAlignment;\n }\n if (this.columnIndex >= 0) {\n var horizontalAlignment = this.parentRow.parentTable.getColumnAt(this.columnIndex).horizontalCellContentAlignment;\n if (horizontalAlignment !== undefined) {\n return horizontalAlignment;\n }\n }\n if (this.parentRow.parentTable.horizontalCellContentAlignment !== undefined) {\n return this.parentRow.parentTable.horizontalCellContentAlignment;\n }\n return _super.prototype.getEffectiveHorizontalAlignment.call(this);\n };\n TableCell.prototype.getEffectiveVerticalContentAlignment = function () {\n if (this.verticalContentAlignment !== undefined) {\n return this.verticalContentAlignment;\n }\n if (this.parentRow.verticalCellContentAlignment !== undefined) {\n return this.parentRow.verticalCellContentAlignment;\n }\n if (this.columnIndex >= 0) {\n var verticalAlignment = this.parentRow.parentTable.getColumnAt(this.columnIndex).verticalCellContentAlignment;\n if (verticalAlignment !== undefined) {\n return verticalAlignment;\n }\n }\n if (this.parentRow.parentTable.verticalCellContentAlignment !== undefined) {\n return this.parentRow.parentTable.verticalCellContentAlignment;\n }\n return _super.prototype.getEffectiveVerticalContentAlignment.call(this);\n };\n Object.defineProperty(TableCell.prototype, \"columnIndex\", {\n get: function () {\n return this._columnIndex;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TableCell.prototype, \"cellType\", {\n get: function () {\n return this._cellType;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TableCell.prototype, \"parentRow\", {\n get: function () {\n return this.parent;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TableCell.prototype, \"isStandalone\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n return TableCell;\n}(card_elements_1.Container));\nexports.TableCell = TableCell;\nvar TableRow = /** @class */ (function (_super) {\n __extends(TableRow, _super);\n function TableRow() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n //#endregion\n TableRow.prototype.getDefaultPadding = function () {\n return new shared_1.PaddingDefinition(enums_1.Spacing.None, enums_1.Spacing.None, enums_1.Spacing.None, enums_1.Spacing.None);\n };\n TableRow.prototype.applyBackground = function () {\n if (this.renderedElement) {\n var styleDefinition = this.hostConfig.containerStyles.getStyleByName(this.style, this.hostConfig.containerStyles.getStyleByName(this.defaultStyle));\n if (styleDefinition.backgroundColor) {\n var bgColor = (0, utils_1.stringToCssColor)(styleDefinition.backgroundColor);\n if (bgColor) {\n this.renderedElement.style.backgroundColor = bgColor;\n }\n }\n }\n };\n TableRow.prototype.getCollectionPropertyName = function () {\n return \"cells\";\n };\n TableRow.prototype.createItemInstance = function (typeName) {\n return !typeName || typeName === \"TableCell\" ? new TableCell() : undefined;\n };\n TableRow.prototype.internalRender = function () {\n var isFirstRow = this.getIsFirstRow();\n var cellSpacing = this.hostConfig.table.cellSpacing;\n var rowElement = document.createElement(\"div\");\n rowElement.setAttribute(\"role\", \"row\");\n rowElement.style.display = \"flex\";\n rowElement.style.flexDirection = \"row\";\n for (var i = 0; i < Math.min(this.getItemCount(), this.parentTable.getColumnCount()); i++) {\n var cell = this.getItemAt(i);\n // Cheating a bit in order to keep cellType read-only\n cell[\"_columnIndex\"] = i;\n cell[\"_cellType\"] =\n this.parentTable.firstRowAsHeaders && isFirstRow ? \"header\" : \"data\";\n var renderedCell = cell.render();\n if (renderedCell) {\n var column = this.parentTable.getColumnAt(i);\n if (column.computedWidth.unit === enums_1.SizeUnit.Pixel) {\n renderedCell.style.flex = \"0 0 \" + column.computedWidth.physicalSize + \"px\";\n }\n else {\n renderedCell.style.flex = \"1 1 \" + column.computedWidth.physicalSize + \"%\";\n }\n if (i > 0 && !this.parentTable.showGridLines && cellSpacing > 0) {\n renderedCell.style.marginLeft = cellSpacing + \"px\";\n }\n rowElement.appendChild(renderedCell);\n }\n }\n return rowElement.children.length > 0 ? rowElement : undefined;\n };\n TableRow.prototype.shouldSerialize = function (_context) {\n return true;\n };\n TableRow.prototype.addCell = function (cell) {\n this.internalAddItem(cell);\n };\n TableRow.prototype.removeCellAt = function (columnIndex) {\n if (columnIndex >= 0 && columnIndex < this.getItemCount()) {\n return this.removeItem(this.getItemAt(columnIndex));\n }\n return false;\n };\n TableRow.prototype.indexOf = function (cardElement) {\n return cardElement instanceof TableCell ? this.internalIndexOf(cardElement) : -1;\n };\n TableRow.prototype.ensureHasEnoughCells = function (cellCount) {\n while (this.getItemCount() < cellCount) {\n this.addCell(new TableCell());\n }\n };\n TableRow.prototype.getJsonTypeName = function () {\n return \"TableRow\";\n };\n TableRow.prototype.getIsFirstRow = function () {\n return this.parentTable.getItemAt(0) === this;\n };\n Object.defineProperty(TableRow.prototype, \"parentTable\", {\n get: function () {\n return this.parent;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TableRow.prototype, \"isStandalone\", {\n get: function () {\n return false;\n },\n enumerable: false,\n configurable: true\n });\n //#region Schema\n TableRow.styleProperty = new card_elements_1.ContainerStyleProperty(serialization_1.Versions.v1_5, \"style\");\n TableRow.horizontalCellContentAlignmentProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_5, \"horizontalCellContentAlignment\", enums_1.HorizontalAlignment);\n TableRow.verticalCellContentAlignmentProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_5, \"verticalCellContentAlignment\", enums_1.VerticalAlignment);\n __decorate([\n (0, serialization_1.property)(TableRow.horizontalCellContentAlignmentProperty)\n ], TableRow.prototype, \"horizontalCellContentAlignment\", void 0);\n __decorate([\n (0, serialization_1.property)(TableRow.verticalCellContentAlignmentProperty)\n ], TableRow.prototype, \"verticalCellContentAlignment\", void 0);\n return TableRow;\n}(StylableContainer));\nexports.TableRow = TableRow;\nvar Table = /** @class */ (function (_super) {\n __extends(Table, _super);\n function Table() {\n //#region Schema\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._columns = [];\n _this.firstRowAsHeaders = true;\n _this.showGridLines = true;\n return _this;\n }\n Object.defineProperty(Table.prototype, \"gridStyle\", {\n get: function () {\n var style = this.getValue(Table.gridStyleProperty);\n if (style && this.hostConfig.containerStyles.getStyleByName(style)) {\n return style;\n }\n return undefined;\n },\n set: function (value) {\n this.setValue(Table.gridStyleProperty, value);\n },\n enumerable: false,\n configurable: true\n });\n //#endregion\n Table.prototype.ensureRowsHaveEnoughCells = function () {\n for (var i = 0; i < this.getItemCount(); i++) {\n this.getItemAt(i).ensureHasEnoughCells(this.getColumnCount());\n }\n };\n Table.prototype.removeCellsFromColumn = function (columnIndex) {\n for (var i = 0; i < this.getItemCount(); i++) {\n this.getItemAt(i).removeCellAt(columnIndex);\n }\n };\n Table.prototype.getCollectionPropertyName = function () {\n return \"rows\";\n };\n Table.prototype.createItemInstance = function (typeName) {\n return !typeName || typeName === \"TableRow\" ? new TableRow() : undefined;\n };\n Table.prototype.internalParse = function (source, context) {\n _super.prototype.internalParse.call(this, source, context);\n this.ensureRowsHaveEnoughCells();\n };\n Table.prototype.internalRender = function () {\n if (this.getItemCount() > 0) {\n var totalWeights = 0;\n for (var _i = 0, _a = this._columns; _i < _a.length; _i++) {\n var column = _a[_i];\n if (column.width.unit === enums_1.SizeUnit.Weight) {\n totalWeights += column.width.physicalSize;\n }\n }\n for (var _b = 0, _c = this._columns; _b < _c.length; _b++) {\n var column = _c[_b];\n if (column.width.unit === enums_1.SizeUnit.Pixel) {\n column.computedWidth = new shared_1.SizeAndUnit(column.width.physicalSize, enums_1.SizeUnit.Pixel);\n }\n else {\n column.computedWidth = new shared_1.SizeAndUnit((100 / totalWeights) * column.width.physicalSize, enums_1.SizeUnit.Weight);\n }\n }\n var tableElement = document.createElement(\"div\");\n tableElement.setAttribute(\"role\", \"table\");\n tableElement.style.display = \"flex\";\n tableElement.style.flexDirection = \"column\";\n if (this.showGridLines) {\n var styleDefinition = this.hostConfig.containerStyles.getStyleByName(this.gridStyle);\n if (styleDefinition.borderColor) {\n var borderColor = (0, utils_1.stringToCssColor)(styleDefinition.borderColor);\n if (borderColor) {\n tableElement.style.borderTop = \"1px solid \" + borderColor;\n tableElement.style.borderLeft = \"1px solid \" + borderColor;\n }\n }\n }\n var cellSpacing = this.hostConfig.table.cellSpacing;\n for (var i = 0; i < this.getItemCount(); i++) {\n var renderedRow = this.getItemAt(i).render();\n if (renderedRow) {\n if (i > 0 && !this.showGridLines && cellSpacing > 0) {\n var separatorRow = document.createElement(\"div\");\n separatorRow.setAttribute(\"aria-hidden\", \"true\");\n separatorRow.style.height = cellSpacing + \"px\";\n tableElement.appendChild(separatorRow);\n }\n tableElement.appendChild(renderedRow);\n }\n }\n return tableElement;\n }\n return undefined;\n };\n Table.prototype.addColumn = function (column) {\n this._columns.push(column);\n this.ensureRowsHaveEnoughCells();\n };\n Table.prototype.removeColumn = function (column) {\n var index = this._columns.indexOf(column);\n if (index >= 0) {\n this.removeCellsFromColumn(index);\n this._columns.splice(index, 1);\n }\n };\n Table.prototype.getColumnCount = function () {\n return this._columns.length;\n };\n Table.prototype.getColumnAt = function (index) {\n return this._columns[index];\n };\n Table.prototype.addRow = function (row) {\n this.internalAddItem(row);\n row.ensureHasEnoughCells(this.getColumnCount());\n };\n Table.prototype.indexOf = function (cardElement) {\n return cardElement instanceof TableRow ? this.internalIndexOf(cardElement) : -1;\n };\n Table.prototype.getJsonTypeName = function () {\n return \"Table\";\n };\n Table._columnsProperty = new serialization_1.SerializableObjectCollectionProperty(serialization_1.Versions.v1_5, \"columns\", TableColumnDefinition);\n Table.firstRowAsHeadersProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_5, \"firstRowAsHeaders\", true);\n Table.showGridLinesProperty = new serialization_1.BoolProperty(serialization_1.Versions.v1_5, \"showGridLines\", true);\n Table.gridStyleProperty = new card_elements_1.ContainerStyleProperty(serialization_1.Versions.v1_5, \"gridStyle\");\n Table.horizontalCellContentAlignmentProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_5, \"horizontalCellContentAlignment\", enums_1.HorizontalAlignment);\n Table.verticalCellContentAlignmentProperty = new serialization_1.EnumProperty(serialization_1.Versions.v1_5, \"verticalCellContentAlignment\", enums_1.VerticalAlignment);\n __decorate([\n (0, serialization_1.property)(Table._columnsProperty)\n ], Table.prototype, \"_columns\", void 0);\n __decorate([\n (0, serialization_1.property)(Table.firstRowAsHeadersProperty)\n ], Table.prototype, \"firstRowAsHeaders\", void 0);\n __decorate([\n (0, serialization_1.property)(Table.showGridLinesProperty)\n ], Table.prototype, \"showGridLines\", void 0);\n __decorate([\n (0, serialization_1.property)(Table.gridStyleProperty)\n ], Table.prototype, \"gridStyle\", null);\n __decorate([\n (0, serialization_1.property)(Table.horizontalCellContentAlignmentProperty)\n ], Table.prototype, \"horizontalCellContentAlignment\", void 0);\n __decorate([\n (0, serialization_1.property)(Table.verticalCellContentAlignmentProperty)\n ], Table.prototype, \"verticalCellContentAlignment\", void 0);\n return Table;\n}(StylableContainer));\nexports.Table = Table;\nregistry_1.GlobalRegistry.defaultElements.register(\"Table\", Table, serialization_1.Versions.v1_5);\n//# sourceMappingURL=table.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.formatText = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar AbstractTextFormatter = /** @class */ (function () {\n function AbstractTextFormatter(regularExpression) {\n this._regularExpression = regularExpression;\n }\n AbstractTextFormatter.prototype.format = function (lang, input) {\n var matches;\n if (input) {\n var result = input;\n while ((matches = this._regularExpression.exec(input)) != null) {\n result = result.replace(matches[0], this.internalFormat(lang, matches));\n }\n return result;\n }\n else {\n return input;\n }\n };\n return AbstractTextFormatter;\n}());\nvar DateFormatter = /** @class */ (function (_super) {\n __extends(DateFormatter, _super);\n function DateFormatter() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n DateFormatter.prototype.internalFormat = function (lang, matches) {\n var date = new Date(Date.parse(matches[1]));\n var format = matches[2] !== undefined ? matches[2].toLowerCase() : \"compact\";\n if (format !== \"compact\") {\n return date.toLocaleDateString(lang, {\n day: \"numeric\",\n weekday: format,\n month: format,\n year: \"numeric\"\n });\n }\n else {\n return date.toLocaleDateString();\n }\n };\n return DateFormatter;\n}(AbstractTextFormatter));\nvar TimeFormatter = /** @class */ (function (_super) {\n __extends(TimeFormatter, _super);\n function TimeFormatter() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n TimeFormatter.prototype.internalFormat = function (lang, matches) {\n var date = new Date(Date.parse(matches[1]));\n return date.toLocaleTimeString(lang, { hour: \"numeric\", minute: \"2-digit\" });\n };\n return TimeFormatter;\n}(AbstractTextFormatter));\nfunction formatText(lang, text) {\n var formatters = [\n new DateFormatter(/\\{{2}DATE\\((\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:Z|(?:(?:-|\\+)\\d{2}:\\d{2})))(?:, ?(COMPACT|LONG|SHORT))?\\)\\}{2}/g),\n new TimeFormatter(/\\{{2}TIME\\((\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:Z|(?:(?:-|\\+)\\d{2}:\\d{2})))\\)\\}{2}/g)\n ];\n var result = text;\n for (var _i = 0, formatters_1 = formatters; _i < formatters_1.length; _i++) {\n var formatter = formatters_1[_i];\n result = formatter.format(lang, result);\n }\n return result;\n}\nexports.formatText = formatText;\n//# sourceMappingURL=text-formatters.js.map","\"use strict\";\nvar _a;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.debounce = exports.addCancelSelectActionEventHandler = exports.clearElementChildren = exports.getScrollY = exports.getScrollX = exports.getFitStatus = exports.truncate = exports.truncateText = exports.stringToCssColor = exports.parseEnum = exports.getEnumValueByName = exports.parseBool = exports.parseNumber = exports.parseString = exports.appendChild = exports.generateUniqueId = exports.isMobileOS = exports.isInternetExplorer = void 0;\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nvar Enums = require(\"./enums\");\nvar Shared = require(\"./shared\");\nfunction isInternetExplorer() {\n // The documentMode property only exists in IE\n return window.document.documentMode !== undefined;\n}\nexports.isInternetExplorer = isInternetExplorer;\nfunction isMobileOS() {\n var userAgent = window.navigator.userAgent;\n return (!!userAgent.match(/Android/i) || !!userAgent.match(/iPad/i) || !!userAgent.match(/iPhone/i));\n}\nexports.isMobileOS = isMobileOS;\n/**\n * Generate a UUID prepended with \"__ac-\"\n */\nfunction generateUniqueId() {\n return \"__ac-\" + Shared.UUID.generate();\n}\nexports.generateUniqueId = generateUniqueId;\nfunction appendChild(node, child) {\n if (child) {\n node.appendChild(child);\n }\n}\nexports.appendChild = appendChild;\nfunction parseString(obj, defaultValue) {\n return typeof obj === \"string\" ? obj : defaultValue;\n}\nexports.parseString = parseString;\nfunction parseNumber(obj, defaultValue) {\n return typeof obj === \"number\" ? obj : defaultValue;\n}\nexports.parseNumber = parseNumber;\nfunction parseBool(value, defaultValue) {\n if (typeof value === \"boolean\") {\n return value;\n }\n else if (typeof value === \"string\") {\n switch (value.toLowerCase()) {\n case \"true\":\n return true;\n case \"false\":\n return false;\n default:\n return defaultValue;\n }\n }\n return defaultValue;\n}\nexports.parseBool = parseBool;\nfunction getEnumValueByName(enumType, name) {\n // eslint-disable-next-line guard-for-in\n for (var key in enumType) {\n var keyAsNumber = parseInt(key, 10);\n if (keyAsNumber >= 0) {\n var value = enumType[key];\n if (value && typeof value === \"string\" && value.toLowerCase() === name.toLowerCase()) {\n return keyAsNumber;\n }\n }\n }\n return undefined;\n}\nexports.getEnumValueByName = getEnumValueByName;\nfunction parseEnum(enumType, name, defaultValue) {\n if (!name) {\n return defaultValue;\n }\n var enumValue = getEnumValueByName(enumType, name);\n return enumValue !== undefined ? enumValue : defaultValue;\n}\nexports.parseEnum = parseEnum;\nfunction stringToCssColor(color) {\n if (color) {\n var regEx = /#([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})?/gi;\n var matches = regEx.exec(color);\n if (matches && matches[4]) {\n var a = parseInt(matches[1], 16) / 255;\n var r = parseInt(matches[2], 16);\n var g = parseInt(matches[3], 16);\n var b = parseInt(matches[4], 16);\n return \"rgba(\" + r + \",\" + g + \",\" + b + \",\" + a + \")\";\n }\n }\n return color;\n}\nexports.stringToCssColor = stringToCssColor;\nfunction truncateWorker(element, maxHeight, fullText, truncateAt, lineHeight) {\n var fits = function () {\n // Allow a one pixel overflow to account for rounding differences\n // between browsers\n return maxHeight - element.scrollHeight >= -1.0;\n };\n if (fits()) {\n return;\n }\n var breakableIndices = findBreakableIndices(fullText);\n var lo = 0;\n var hi = breakableIndices.length;\n var bestBreakIdx = 0;\n // Do a binary search for the longest string that fits\n while (lo < hi) {\n var mid = Math.floor((lo + hi) / 2);\n truncateAt(fullText, breakableIndices[mid]);\n if (fits()) {\n bestBreakIdx = breakableIndices[mid];\n lo = mid + 1;\n }\n else {\n hi = mid;\n }\n }\n truncateAt(fullText, bestBreakIdx);\n // If we have extra room, try to expand the string letter by letter\n // (covers the case where we have to break in the middle of a long word)\n if (lineHeight && maxHeight - element.scrollHeight >= lineHeight - 1.0) {\n var idx = findNextCharacter(fullText, bestBreakIdx);\n while (idx < fullText.length) {\n truncateAt(fullText, idx);\n if (fits()) {\n bestBreakIdx = idx;\n idx = findNextCharacter(fullText, idx);\n }\n else {\n break;\n }\n }\n truncateAt(fullText, bestBreakIdx);\n }\n}\nfunction truncateText(element, maxHeight, lineHeight) {\n truncateWorker(element, maxHeight, element.innerText, function (text, idx) {\n element.innerText = text.substring(0, idx) + \"...\";\n }, lineHeight);\n}\nexports.truncateText = truncateText;\n/**\n * {@link truncate} has been deprecated and is no longer in use internally. This policy passes\n * content through as it always has, which is _supposed_ to be dealing with text only (see {@link\n * TextBlock.truncateIfSupported}), but had a bug where it might actually pass through an element\n * for which innerHTML yielded actual HTML (since fixed).\n */\nvar ttDeprecatedPolicy = (typeof window === 'undefined') ? undefined : (_a = window.trustedTypes) === null || _a === void 0 ? void 0 : _a.createPolicy(\"adaptivecards#deprecatedExportedFunctionPolicy\", {\n createHTML: function (value) { return value; }\n});\n/** @deprecated Use {@link truncateText} instead. */\nfunction truncate(element, maxHeight, lineHeight) {\n truncateWorker(element, maxHeight, element.innerHTML, function (text, idx) {\n var _a;\n var truncatedString = text.substring(0, idx) + \"...\";\n var truncatedHTML = (_a = ttDeprecatedPolicy === null || ttDeprecatedPolicy === void 0 ? void 0 : ttDeprecatedPolicy.createHTML(truncatedString)) !== null && _a !== void 0 ? _a : truncatedString;\n element.innerHTML = truncatedHTML;\n }, lineHeight);\n}\nexports.truncate = truncate;\nfunction findBreakableIndices(html) {\n var results = [];\n var idx = findNextCharacter(html, -1);\n while (idx < html.length) {\n if (html[idx] === \" \") {\n results.push(idx);\n }\n idx = findNextCharacter(html, idx);\n }\n return results;\n}\nfunction findNextCharacter(html, currIdx) {\n currIdx += 1;\n // If we found the start of an HTML tag, keep advancing until we get\n // past it, so we don't end up truncating in the middle of the tag\n while (currIdx < html.length && html[currIdx] === \"<\") {\n while (currIdx < html.length && html[currIdx++] !== \">\") {\n continue;\n }\n }\n return currIdx;\n}\nfunction getFitStatus(element, containerEnd) {\n var start = element.offsetTop;\n var end = start + element.clientHeight;\n if (end <= containerEnd) {\n return Enums.ContainerFitStatus.FullyInContainer;\n }\n else if (start < containerEnd) {\n return Enums.ContainerFitStatus.Overflowing;\n }\n else {\n return Enums.ContainerFitStatus.FullyOutOfContainer;\n }\n}\nexports.getFitStatus = getFitStatus;\nfunction getScrollX() {\n return window.pageXOffset;\n}\nexports.getScrollX = getScrollX;\nfunction getScrollY() {\n return window.pageYOffset;\n}\nexports.getScrollY = getScrollY;\nfunction clearElementChildren(element) {\n while (element.firstChild) {\n element.removeChild(element.firstChild);\n }\n}\nexports.clearElementChildren = clearElementChildren;\nfunction addCancelSelectActionEventHandler(element) {\n element.onclick = function (e) {\n e.preventDefault();\n e.cancelBubble = true;\n };\n}\nexports.addCancelSelectActionEventHandler = addCancelSelectActionEventHandler;\nfunction debounce(fn, delay) {\n var timer;\n function debouncedFn() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n if (timer) {\n clearTimeout(timer);\n }\n timer = setTimeout(function () {\n fn.apply(void 0, args);\n }, delay);\n }\n return debouncedFn;\n}\nexports.debounce = debounce;\n//# sourceMappingURL=utils.js.map"],"names":["n","g","e","t","r","d","Brand","I","ConversationItemType","D","ConversationType","M","DirectLineHooks","i","EventName","R","default","sr","i18n","xo","useSendEvent","qe","useSendInitialActivity","Fe","useSendMessage","Be","useSendMessageBack","Pe","useSendPostBack","ze","useSetDocumentBranding","Le","o","a","s","l","u","c","concat","window","CACxBotOptions","url","m","createApi","reducerPath","baseQuery","fetchBaseQuery","baseUrl","endpoints","getBotToken","query","getSkillsByKeyword","searchParam","language","method","body","cultureCode","SkillName","transformResponse","map","Object","keys","value","label","description","getJobsByKeyword","professionName","getJobTitlesByKeyword","jobTitleName","getLanguageSkillsByKeyword","languageSkillName","getCountriesByKeyword","CountryName","countryEnglishName","defaultValue","getIndustriesWithCategories","categories","getCitiesByZipCode","inputText","culture","__assign","city","getSimplifiedAddress","mutation","street","streetNumber","country","postalCode","join","trackJobLinkClick","trackLinkClick","uploadDocument","v","useGetBotTokenQuery","useLazyGetBotTokenQuery","useLazyGetSkillsByKeywordQuery","f","useLazyGetJobsByKeywordQuery","p","useLazyGetJobTitlesByKeywordQuery","h","useGetIndustriesWithCategoriesQuery","useLazyGetLanguageSkillsByKeywordQuery","y","useLazyGetCountriesByKeywordQuery","b","useLazyGetCitiesByZipCodeQuery","x","useGetSimplifiedAddressMutation","_","useTrackJobLinkClickMutation","w","useTrackLinkClickMutation","C","useUploadDocumentMutation","j","k","S","createSlice","name","initialState","currentOptions","allOptions","reducers","setCurrentOptions","payload","setAllOptions","filter","find","__spreadArray","__read","resetCurrentOptions","resetAllOptions","E","actions","T","A","N","O","reducer","F","B","CANDIDATECAPTURE","CONVERSATION","ADECCO","ADECCOFAQ","ADECCOFULL","ADECCOGROUP","ADECCOMEDICAL","AMAZON","WHITELABEL","CEOFORONEMONTH","DISAG","EUROPASSISTANCE","FOCORE","LHH","AKKODIS","PONTOON","QAPA","EVENT","MESSAGE","TYPING","ENDOFCONVERSATION","REQUESTWELCOMEDIALOG","REQUESTVIEWCONVERSATIONHISTORY","INPUTFOR","CONVERSATIONRATING","CONVERSATIONPROGRESSION","RESTARTBOTVIEW","REDIRECT","REDIRECTV2","REDIRECTRCWITHNPS","REDIRECTRCGLOBAL","ASKCALENDAR","ADAPTIVE","HERO","FEEDBACK","TIMEOUT","SENT","DELIVERED","FAILED","P","q","z","L","V","U","env","JEST_WORKER_ID","Y","conversation","conversationProgress","newMessageCount","conversationId","candidateId","isTyping","isEndOfConversation","error","addConversationItem","timestamp","id","log","findIndex","channelData","clientActivityID","type","push","from","sort","Date","resetNewMessageCount","updateConversationStatus","activity","status","setConversationId","setCandidateId","setError","resetConversationState","G","J","W","K","H","Q","Z","X","$","apiError","onApiError","ee","ne","te","ie","combineReducers","autoComplete","cxBot","errors","oe","isRejectedWithValue","dispatch","ae","configureStore","devTools","middleware","re","useDispatch","se","le","ue","ce","de","createContext","me","children","model","directline","useState","ConnectionStatus","Uninitialized","useEffect","entityId","Online","activity$","subscribe","toString","connectionStatus$","useMemo","jsx","Provider","ve","useContext","Error","fe","pe","isBotExpanded","setBotExpanded","he","ge","ye","be","xe","adecco","adeccofaq","adeccofull","amazon","adeccomedical","adeccogroup","akkodis","whitelabel","ceoforonemonth","disag","disconsulting","europassistance","focore","lhh","pontoon","proserv","qapa","ke","brand","className","toLowerCase","jsxs","Se","Ee","useRef","usePDF","page","margin","Margin","LARGE","toPDF","targetRef","useCallback","__awaiter","__generator","this","document","createElement","render","current","insertBefore","firstChild","removeChild","onExportPdf","Te","Ae","Ne","Oe","Me","Ie","De","Re","useSelector","reverse","getTimezoneOffset","channelId","getTime","substr","entities","requiresBotState","supportsListening","supportsTts","locale","localTimestamp","localTimezone","Intl","DateTimeFormat","resolvedOptions","timeZone","replyToId","toUTCString","postActivity","response","text","textFormat","attachments","contentType","contentUrl","thumbnailUrl","messageBack","displayText","postBack","useTranslation","querySelectorAll","forEach","parentNode","rel","href","head","appendChild","getElementById","content","getComputedStyle","getPropertyValue","title","Ve","Ue","Ye","Ge","We","__rest","$e","fullheight","en","nn","tn","on","an","rn","sn","ln","un","cn","dn","mn","vn","fn","pn","hn","wn","Cn","role","jn","kn","Sn","footerComponent","useScrollToBottom","scrollToBottom","scrollRef","scrollContainerRef","Composer","ref","Panel","En","Tn","An","Skills","SkillsV2","Jobs","Languages","ConversationRating","Countries","PreferredJobTitle","Location","Industries","Nn","CH","DE","ES","GB","IT","US","On","wrapper","expanded","buttonContainer","secondary","selectedItems","loaderContainer","searchBox","sendButton","closeButton","list","numberInput","autoCompleteWithCategories","confirmation","titleText","chipContainer","chip","isExpanded","Mn","In","Dn","Rn","Fn","Bn","Vn","placeholder","onChange","onClear","isLoading","target","onClick","Gn","useField","touched","checked","setValue","setTouched","Jn","Wn","Kn","Hn","$n","Number","min","onKeyDown","test","key","preventDefault","max","et","isSuccess","inputFor","singleValue","useFormikContext","setFieldValue","resetForm","values","length","listItem","Fragment","boundaries","nt","tabIndex","years","tt","placeholderText","addText","skipText","getAutoCompleteData","onSkip","isValid","submitForm","trigger","sent","data","ot","at","rt","st","mt","header","vt","skip","reduce","apply","ft","inputData","onClose","ids","trim","names","skillCode","months","includes","slice","countryCode","county","zipCode","extendedPostalCode","useLayoutEffect","style","height","languageCode","Formik","initialValues","onSubmit","validate","every","it","validateOnMount","Form","pt","botContainer","materialIcons","loader","accessibleText","banner","logo","isWhiteLabel","controls","expandIcon","progress","progressBar","progressValue","percentage","interviewIntroduction","scrollContainer","chatContainer","chatBubble","isInputOpen","isAutoCompleteOpen","chatBubbleContainer","fromBot","link","openInNewIcon","hasContent","fromUser","hasFeedbackAttachment","chatBubbleItem","attachment","adaptiveCard","feedback","retryLink","input","typingIndicator","errorIndicator","isPdfDownloadEnabled","saveButton","suggestedActions","dropdownContainer","dropdown","buttonBar","bt","memo","useAtBottom","useAnimating","focus","wt","Math","scrollHeight","call","Nt","info","success","warning","Ot","Mt","It","Dt","Rt","lastMessage","heroCardAttachment","isFromBot","hasAttachements","feedbackAttachment","hasSuggestedActions","lastEvent","lastItem","isNPSOpen","eventNpsRedirect","Lt","Xt","loaderText","$t","tootipText","isSelected","onMouseEnter","onMouseLeave","ei","setCommentValue","comment","ni","location","Promise","setTimeout","feedbackType","feedbackValue","campaignId","questionText","feedbackMessage","answerMessage","feedbackAnswer","updatesConversationStatus","disabled","Array","show","ti","ii","oi","ai","ri","si","li","ui","ci","yi","bi","xi","isFeebackFormOpen","setFeebackFormOpen","selectedIcon","setSelectedIcon","_i","wi","Ci","comments","category","isSilent","validationSchema","object","shape","string","required","ji","ki","Si","Ei","onRetry","navigator","setInterval","clearInterval","Ti","Ai","Ni","Mi","Ri","innerProps","components","Option","Fi","Input","selectProps","Bi","options","onInputChange","isSearchable","isDismissable","onDismiss","compact","menu","zIndex","marginBottom","option","backgroundColor","isFocused","fontFamily","color","cursor","control","borderRadius","border","fontWeight","fontSize","boxShadow","padding","minHeight","indicatorSeparator","display","noOptionsMessage","transform","dropdownIndicator","loadingIndicator","inputId","styles","isDisabled","loadingMessage","Pi","onSuggestedActionClick","selctedAction","enableReinitialize","onMenuOpen","onMenuClose","v4","qi","zi","Li","Vi","Ui","Yi","Gi","Ji","Wi","Ki","Hi","Qi","Zi","Xi","$i","eo","no","to","io","oo","bo","fallbackLng","supportedLngs","debug","keySeparator","interpolation","escapeValue","resources","common","enter","confirm","return","close","dateFormat","submit","cxbot","failedToConnect","typeYourMessage","send","downloadConversation","typing","careerAssistantSays","youReplied","newMessages","veryLikely","notLikely","ratingLeaveCommentOptional","pleaseWait","loaderRedirect","noResultsFound","yearsOfExperience","with","atleastOneRequired","confirmSkills","confirmJobs","confirmLanguages","confirmCountries","addMore","sendStatus","sending","failed","retry","up","down","validations","commentsForm","InadequateAnswers","MoreDetailsNeeded","TechnischesProblem","hint","accessibility","playVideo","chat","chatLog","phoneCountryCode","clear","expandBot","collapseBot","endOfChat","fileUpload","fileSizeExceedsLimit","attachFile","allowedFileformats","TechnicalProblem","es","fr","nuoviMessaggi","ja","nl","sluiten","pl","nadequateAnswers","use","initReactI18next","init","changeLanguage","_o","wo","Co","No","selectedDates","hasOwnProperty","replace","format","lastDayOfMonth","previousMonday","parse","nextSunday","isFutureDisabled","isPastDisabled","isTodayDisabled","isWeekendDisabled","minDate","maxDate","isBefore","isAfter","isFuture","isPast","isWeekend","isToday","isSameMonth","addMonths","subMonths","stopPropagation","eachYearOfInterval","start","subYears","end","addYears","getYear","getMonth","getDay","eachDayOfInterval","isSameDay","right","getUnixTime","Oo","Mo","Ro","Bo","weekdaysOnly","disabledDates","contains","addEventListener","removeEventListener","toISOString","DateTime","fromMillis","toFormat","currentTarget","fromFormat","valueOf","activeDates","undefined","Po","qo","zo","arguments","_value","__extends","defineProperty","prototype","get","set","enumerable","configurable","isSet","updateInputControlAriaLabeledBy","internalRender","getState","getJsonTypeName","createRoot","formatLong","date","width","DateInput","Lo","getRootElement","getAllActions","innerHTML","_items","TextBlock","setAttribute","ChoiceSetInput","Vo","SubmitAction","Uo","Yo","Qo","ea","src","getEmbedVideoUrl","YouTubePlayer","na","Media","customMediaPlayers","urlPatterns","createMediaPlayer","Strings","defaults","youTubeVideoPlayer","VimeoPlayer","vimeoVideoPlayer","DailymotionPlayer","dailymotionVideoPlayer","displayPoster","renderedElement","poster","_mediaPlayer","posterUrl","hostConfig","media","defaultPoster","makeCssClassName","empty","altText","mediaPlayerAriaLabel","alt","handlePlayButtonInvoke","supportsInteractivity","canPlay","onKeyUp","code","ta","getElementsByTagName","Image","ia","wrap","oa","aa","ra","sa","la","ua","ca","MaxFileSize","fileFormats","file","_parent","onExecuteAction","click","hidden","accept","files","size","JsonTypeName","AdaptiveCard","onProcessMarkdown","outputHtml","sanitize","marked","gfm","breaks","ADD_ATTR","didProcess","ma","onActionSubmit","onActionOpenUrl","onActionShowCard","onActionExecute","onError","OpenUrlAction","open","ShowCardAction","getElementsByClassName","removeAttribute","HostConfig","GlobalRegistry","elements","register","message","Ca","Aa","Na","Ia","item","maxLines","WebkitLineClamp","weight","Da","choices","sumbitAction","isLast","split","initialValue","Ra","Fa","Ba","Pa","sources","some","match","fetch","json","video_id","thumbnail_url","autoPlay","qa","za","La","selectAction","columns","Ya","Va","FormData","append","Ua","items","Ga","action","jobUrl","Ja","Ka","isNewAdaptiveCardEnabled","choiceSetInputValueSeparator","_processedData","Qa","renderer","paragraph","heading","speak","ALLOWED_TAGS","attribs","domToReact","buttons","replaceAll","Xa","$a","er","nr","tr","ir","userAgent","indexOf","or","ar","overflowY","clientHeight","screen","shiftKey","rr","initialActivity","toggleExpanded","timeoutPeriod","clearTimeout","nextStepName","closeIcon","left","I18nextProvider","store","console","warn","stack","inspect","ok","exports","run","fun","array","nextTick","browser","argv","version","versions","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","umask","globalThis","self","Symbol","Blob","ArrayBuffer","isView","String","TypeError","next","shift","done","iterator","isArray","getOwnPropertyNames","_noBody","bodyUsed","reject","onload","result","onerror","FileReader","readAsArrayBuffer","Uint8Array","byteLength","buffer","_initBody","_bodyInit","_bodyText","isPrototypeOf","_bodyBlob","_bodyFormData","URLSearchParams","DataView","_bodyArrayBuffer","headers","blob","resolve","arrayBuffer","byteOffset","then","exec","readAsText","fromCharCode","formData","JSON","delete","has","entries","credentials","mode","signal","toUpperCase","AbortController","referrer","cache","decodeURIComponent","RangeError","statusText","clone","redirect","DOMException","create","constructor","aborted","XMLHttpRequest","abort","getAllResponseHeaders","responseURL","responseText","ontimeout","onabort","withCredentials","responseType","Headers","setRequestHeader","onreadystatechange","readyState","polyfill","Request","Response","__esModule","toStringTag","module","extendStatics","setPrototypeOf","__proto__","__","LoginRequestResponse","ErrorResponse","SuccessResponse","ActivityResponse","ActivityRequestError","ActivityRequestTrigger","request","_super","rawContent","_this","auth","_auth","_a","button","URL","signinButton","tokenExchangeResource","thisArg","_arguments","generator","fulfilled","step","rejected","trys","ops","verb","op","pop","AdaptiveApplet","Enums","Utils","shared_1","activity_request_1","strings_1","card_elements_1","serialization_1","logEvent","level","optionalParams","GlobalSettings","applets","logEnabled","onLogEvent","LogLevel","Warning","ActivityRequest","consecutiveActions","attemptNumber","retryAsync","onSend","_allowAutomaticCardUpdate","position","flexDirection","_cardHostElement","_refreshButtonHostElement","displayCard","card","clearElementChildren","showManualRefreshButton","refreshAction","onShowManualRefreshButton","renderedRefreshButton","onRenderManualRefreshButton","runtime","refreshThisCard","refresh","RefreshMode","Automatic","autoRefreshPausedMessage","automaticRefreshPaused","clckToRestartAutomaticRefresh","cardPayload","horizontalAlignment","inlines","SerializationContext","Versions","v1_2","internalExecuteAction","removeProperty","createActivityRequest","request_1","sender","internalSendActivityRequestAsync","onPrepareActivityRequest","createMagicCodeInputCard","_submitMagicCodeActionId","_cancelMagicCodeAuthActionId","cancelAutomaticRefresh","createSerializationContext","onCreateSerializationContext","internalSetCard","_cardPayload","serializationContext","onCardChanging","_card","authentication","onPrefetchSSOToken","Manual","onInputValueChanged","_b","_c","isDynamicTypeahead","getFilterForDynamicSearch","dataQueryAction","DataQuery","dataset","choicesData","count","_choiceSet","onCardChanged","maximumConsecutiveAutomaticRefreshes","timeBetweenAutomaticRefreshes","Info","action_1","Disabled","allowManualRefreshesAfterAutomaticRefreshes","UniversalAction","channelAdapter","onAction","createProgressOverlay","_progressOverlay","onCreateProgressOverlay","spinner","removeProgressOverlay","onRemoveProgressOverlay","activityRequestSucceeded","parsedContent","onActivityRequestSucceeded","activityRequestFailed","onActivityRequestFailed","defaultTimeBetweenRetryAttempts","showAuthCodeInputDialog","onShowAuthCodeInputDialog","authCodeInputCard","submitMagicCodeAction","authCode","alert","magicCodeInputCard","somethingWentWrong","ExecuteAction","internalSendExecuteRequestAsync","internalSendDataQueryRequestAsync","overlay","_loop_1","this_1","error_1","retryIn_1","attemptOAuth","top_1","sendRequestAsync","maximumRetryAttempts","_reject","onSSOTokenNeeded","onShowSigninPrompt","screenX","outerWidth","authPromptWidth","screenY","outerHeight","authPromptHeight","authenticationFailed","stringify","error_2","rawResponse","parsedResponse","showLoadingIndicator","showErrorIndicator","removeLoadingIndicator","renderChoices","refreshCard","setCard","__createBinding","k2","desc","getOwnPropertyDescriptor","writable","__exportStar","__decorate","decorators","Reflect","decorate","BackgroundImage","ContainerBase","StylableCardElementContainer","ContainerStyleProperty","ActionSet","HttpAction","HttpHeader","ToggleVisibilityAction","SubmitActionBase","Action","TimeInput","TimeProperty","NumberInput","FilteredChoiceSet","ChoiceSetInputDataQuery","Choice","ToggleInput","TextInput","IFrameMediaMediaPlayer","CustomMediaPlayer","HTML5MediaPlayer","MediaPlayer","MediaSource","CaptionSource","ContentSource","ImageSet","CardElementContainer","FactSet","Fact","RichTextBlock","TextRun","BaseTextBlock","ActionProperty","CardElement","renderSeparation","Authentication","TokenExchangeResource","AuthCardButton","RefreshDefinition","RefreshActionProperty","ContainerWithActions","ColumnSet","Column","Container","host_config_1","TextFormatters","card_object_1","registry_1","controls_1","clearElement","element","trustedHtml","trustedTypes","emptyHTML","separationDefinition","orientation","spacing","lineThickness","separator","Orientation","Horizontal","lineColor","stringToCssColor","paddingTop","borderBottom","paddingLeft","marginRight","borderRight","overflow","flex","_truncatedDueToOverflow","lang","getValue","langProperty","parent","isVisibleProperty","useAdvancedCardBottomTruncation","undoOverflowTruncation","isVisible","updateRenderedElementVisibility","_renderedElement","raiseElementVisibilityChangedEvent","internalRenderSeparator","renderedSeparator","getEffectiveSpacing","separatorOrientation","alwaysBleedSeparators","parentContainer","getParentContainer","getEffectivePadding","parentPhysicalPadding","paddingDefinitionToSpacingDefinition","marginLeft","displayMode","isDesignMode","_defaultRenderedElementDisplayMode","_separatorElement","isFirstElement","hideElementDueToOverflow","visibility","showElementHiddenDueToOverflow","handleOverflow","maxHeight","isHiddenDueToOverflow","handled","truncateOverflow","resetOverflow","sizeChanged","getDefaultSerializationContext","createPlaceholderElement","styleDefinition","getEffectiveStyleDefinition","foregroundCssColor","foregroundColors","subtle","innerText","emptyElementText","adjustRenderedElementSize","updateInputsVisualState","hover","allInputs","getAllInputs","inputEventType","InputEventType","MouseEnterOnCard","MouseLeaveOnCard","updateVisualState","isDisplayed","offsetHeight","overrideInternalRender","applyPadding","separatorElement","isBleeding","PaddingDefinition","getImmediateSurroundingPadding","physicalPadding","_maxHeight","getDefaultPadding","getHasBackground","ignoreBackgroundImages","getHasBorder","getPadding","_padding","setPadding","shouldSerialize","context","elementRegistry","findByName","ContainerStyle","Default","source","asString","getEffectiveStyle","defaultStyle","containerStyles","getStyleByName","getEffectiveTextStyleDefinition","textStyles","getForbiddenActionTypes","processTop","processRight","processBottom","processLeft","doProcessTop","isTopElement","doProcessRight","isRightMostElement","doProcessBottom","isBottomElement","doProcessLeft","isLeftMostElement","effectivePadding","top","Spacing","None","bottom","getActionCount","getActionAt","index","indexOutOfRange","indexOfAction","remove","removeItem","customCssSelector","classList","add","boxSizing","updateLayout","_processChildren","updateActionsEnabledState","allActions_1","updateEnabledState","_cardElement","rootElement","designMode","_element","isLastElement","isAtTheVeryLeft","isAtTheVeryRight","isAtTheVeryTop","isAtTheVeryBottom","isBleedingAtTop","isBleedingAtBottom","getRootObject","currentElement","processActions","getResourceInformation","getActionById","_id","getElementByIdFromAction","getEffectiveHorizontalAlignment","HorizontalAlignment","Left","_hostConfig","defaultHostConfig","StringProperty","v1_1","BoolProperty","separatorProperty","v1_0","heightProperty","ValueSetProperty","horizontalAlignmentProperty","EnumProperty","spacingProperty","property","CardObject","targetVersion","forbiddenActionTypes","parseAction","toJSON","serializeValue","PropertyDefinition","ariaHidden","populateSchema","schema","selectActionProperty","textProperty","setText","getFontSize","fontType","effectiveSize","TextSize","Small","fontSizes","small","Medium","medium","Large","large","ExtraLarge","extraLarge","getColorDefinition","colorSet","TextColor","Accent","accent","Dark","dark","Light","light","Good","good","Attention","attention","textDefinition","isSubtle","applyStylesTo","targetElement","getFontTypeDefinition","effectiveFontType","colorDefinition","effectiveColor","targetColor","effectiveIsSubtle","effectiveWeight","TextWeight","Lighter","fontWeights","lighter","Bolder","bolder","sizeProperty","weightProperty","colorProperty","isSubtleProperty","fontTypeProperty","FontType","_treatAsPlainText","useMarkdown","restoreOriginalContent","_computedLineHeight","originalHtml","_ttRoundtripPolicy","createHTML","_originalInnerHtml","truncateIfSupported","isTextOnly","tagName","truncateText","_processedText","preProcessedText","preProcessPropertyValue","forElementId","labelElement","htmlFor","headingLevel","textBlock","onclick","isEffectivelyEnabled","cancelBubble","execute","setupElementForAccessibility","formattedText","formatText","allowMarkForTextHighlighting","markdownProcessingResult","applyMarkdown","markStyle","effectiveStyle","highlightBackgroundColor","highlightForegroundColor","processedHtml","_ttMarkdownPolicy","firstElementChild","HTMLElement","marginTop","textOverflow","lastElementChild","anchors","anchor","raiseAnchorClickedEvent","oncontextmenu","wordWrap","isInternetExplorer","useWebkitLineClamp","webkitBoxOrient","webkitLineClamp","whiteSpace","useAdvancedTextBlockTruncation","Center","textAlign","Right","lineHeights","lineHeight","processChildren","wrapProperty","maxLinesProperty","NumProperty","styleProperty","v1_5","createPolicy","italic","strikethrough","highlight","underline","getHref","fontStyle","textDecoration","highlightColors","italicProperty","strikethroughProperty","highlightProperty","underlineProperty","v1_3","_inlines","internalAddInline","inline","forceAdd","isInline","elementCannotBeUsedAsInline","inlineAlreadyParented","setParent","internalParse","jsonInline","textRun","parseElement","internalToJSON","jsonInlines","renderedInlines","renderedInline","getInlineCount","getInlineAt","addInline","removeInline","splice","getSchemaKey","titleProperty","valueProperty","SerializableObject","facts","borderWidth","borderSpacing","borderStyle","borderCollapse","trElement","factSet","tdElement","maxWidth","verticalAlign","factsProperty","SerializableObjectCollectionProperty","ImageDimensionProperty","internalName","fallbackProperty","getInternalName","sourceValue","SizeAndUnit","unit","SizeUnit","Pixel","physicalSize","isValidValue","logParseEvent","ValidationEvent","InvalidPropertyValue","invalidPropertyValue","isNaN","Size","Auto","ImageStyle","applySize","pixelWidth","pixelHeight","imageSizes","Stretch","alignItems","justifyContent","imageElement","renderedImageElement","_e","raiseImageLoadedEvent","errorElement","minWidth","onkeypress","Person","backgroundPosition","backgroundRepeat","setImageSource","altTextProperty","mimeType","imageForceLoader","ImageForceLoader","forceLoad","configureImage","urlProperty","resetImage","backgroundColorProperty","pixelWidthProperty","pixelHeightProperty","shouldForceLoadProperty","v1_6","doForceLoad","uniqueHash","now","urlWithForceLoadOption","image","allowVerticalOverflow","isSelectable","isElementAllowed","isInteractive","SpacingDefinition","paddingRight","paddingBottom","forbiddenChildElements","releaseDOMResources","getItemCount","getItemAt","internalValidateProperties","addFailure","InteractivityNotAllowed","interactivityNotAllowed","elementTypeNotAllowed","_selectAction","overflowX","findDOMNodeOwner","node","_images","imageSize","ImageSize","presentationStyle","ImageSetPresentationStyle","pixelOffset","flexWrap","imageSet","maxImageHeight","renderedImage","Stacked","applyStackedPresentationStyle","dimension","StackedImageConfigurator","parseNumericPixelDimension","bgColor","getEffectiveBackgroundColor","configureImagesArrayAsStackedLayout","getFirstVisibleRenderedItem","getLastVisibleRenderedItem","itemIndex","addImage","cardElement","imagesProperty","imageSizeProperty","imagePresentationStyle","offset","sign45","maxImageCounts","normalizationConstant","moveImageRight","moveImageUp","moveImageDown","makeImageRound","applyBorder","configureImageForBottomLeft","configureImageForTopRight","substring","parseInt","mimeTypeProperty","kind","labelProperty","play","_posterUrl","owner","_selectedSources","_captionSources","processSources","_selectedMediaType","mimeComponents","supportedMediaTypes","captionSources","fetchVideoDetails","_mediaElement","autoplay","isMobileOS","muted","preload","renderedSource","captionSource","renderedCaptionSource","matches","iFrameTitle","_videoId","container","iFrame","frameBorder","allow","allowFullscreen","oEmbedUrl","videoId","apiUrl","_startTimeIndex","provider","_d","_f","event","allowInlinePlayback","mediaPlayerElement","onPlay","posterRootElement_1","posterImageElement_1","playButtonOuterElement","playButtonInnerElement","playButtonContainer","mediaPlayerPlayMedia","playButtonArrowWidth","playButtonArrowHeight","borderTopWidth","borderBottomWidth","borderLeftWidth","borderRightWidth","borderTopColor","borderRightColor","borderBottomColor","mediaSource","selectedMediaType","sourcesProperty","captionSourcesProperty","posterProperty","inputStyle","InputStyle","getAllLabelIds","labelIds","labelledBy","_renderedLabelElement","_renderedErrorMessageElement","updateInputControlAriaLabelledBy","_renderedInputControlElement","_inputControlContainerElement","_outerContainerElement","labelPosition","InputLabelPosition","Inline","renderedInputControlId","generateUniqueId","labelRichTextBlock","labelInline","isRequired","inputs","requiredInputs","isRequiredCueInline","suffix","suffixColor","optionalInputs","alignSelf","inputSpacing","isNullable","labelWidth","Weight","labelWidthInPercent","labelWidthInPixel","defaultLabelWidth","InitialRender","onblur","ev","FocusLeave","resetDirtyState","valueChanged","onInputValueChangedHandler","resetValidationFailureCue","onValueChanged","renderedInputControlElement","showValidationErrorMessage","errorMessage","displayInputValidationErrors","errorMessageTextBlock","allowRevealOnHoverStyle","shouldHideInputAdornersForRevealOnHover","eventType","isInputInFocus","activeElement","inputHoverClassName","isMouseOverCard","RevealOnHover","isDirty","_oldValue","PropertyCantBeNull","inputsMustHaveUniqueId","RequiredInputsShouldHaveLabel","RequiredInputsShouldHaveErrorMessage","validateValue","isRequiredProperty","errorMessageProperty","inputStyleProperty","labelWidthProperty","CustomProperty","prop","invalidLabelWidth","invalidInputLabelWidth","serializeNumber","labelPositionProperty","Above","isMultiline","InputTextStyle","Text","setupInput","maxLength","oninput","ctrlKey","inlineAction","Password","renderedInputControl","button_1","iconUrl","icon_1","textContent","inlineActionTitle","inputControlContainerElement","regex","RegExp","maxLengthProperty","isMultilineProperty","placeholderProperty","Tel","Url","Email","inlineActionProperty","regexProperty","valueOn","valueOff","_checkboxInputElement","joinedLabelIds","_checkboxInputLabelElement","_oldCheckboxValue","onchange","useMarkdownInRadioButtonAndCheckbox","spacerElement","valueOnProperty","valueOffProperty","typeProperty","datasetProperty","countProperty","skipProperty","isMultiSelect","getUniqueCategoryName","uniqueCategoryName","_uniqueCategoryCounter","_filteredChoiceSet","textInput","fetchedChoices","processResponse","createPlaceholderOptionWhenValueDoesNotExist","placeholderOption","selected","internalApplyAriaCurrent","_selectElement","renderCompoundInput","cssClassName","defaultValues","_toggleInputs","_labels","choice","_uniqueCategoryName","compoundInput","filteredChoiceSet_1","_textInput","onInputChangeEventHandler","debounce","processStaticChoices","debounceTimeInMilliSeconds","inputContainer","dataList","isCompact","appearance","CollectionCantBeEmpty","choiceSetMustHaveAtLeastOneChoice","choiceSetChoicesMustHaveTitleAndValue","dynamicChoices","toggleInput","selectedIndex","choicesProperty","choicesDataProperty","SerializableObjectProperty","isMultiSelectProperty","choiceSetId","_choiceSetId","_choices","_dynamicChoices","_visibleChoiceCount","choiceSetContainer","onkeydown","focusChoice","_dropdown","child","nextSibling","createChoice","onmouseover","textLength","setSelectionRange","filterChoices","isDynamic","choices_1","matchIndex","matchedText","choiceContainer","getStatusIndicator","_errorIndicator","_loadingIndicator","resetDropdown","showDropdown","hasChildNodes","_numberInputElement","valueAsNumber","minProperty","maxProperty","_dateInputElement","hideDatePicker","updateInputAdornersVisibility","valueAsDate","convertTimeStringToDate","timeString","_timeInputElement","hideTimePicker","ActionStyle","ActionMode","Primary","_state","_isFocusable","renderButtonContent","titleElement","iconPlacement","ActionIconPlacement","AboveTitle","allowTitleToWrap","iconElement","iconSize","updateCssClasses","parentContainerStyle","isFocusable","Positive","makeCssClassNames","internalGetReferencedInputs","internalPrepareForExecution","_inputs","internalValidateInputs","referencedInputs","actionRegistry","raiseExecuteActionEvent","onExecuteActionHandler","onExecute","prepareForExecution","internalAfterExecute","rootObject","getAriaRole","ariaRole","getAriaRoleFromEnum","ActionRole","Button","Link","Menu","MenuItem","Tab","promoteTooltipToLabel","HTMLButtonElement","tooltip","buttonElement","_actionCollection","actionExecuted","getReferencedInputs","invalidInputs","removeAction","validateInputs","isEnabled","iconUrlProperty","Destructive","modeProperty","Secondary","tooltipProperty","isEnabledProperty","roleProperty","disabledUnlessAssociatedInputsChange","_isPrepared","_areReferencedInputsDirty","associatedInputs","inputs_1","_originalData","resetInputsDirtyStateAfterActionExecution","resetReferencedInputsDirtyState","dataProperty","associatedInputsProperty","disabledUnlessAssociatedInputsChangeProperty","verbProperty","v1_4","filterProperty","propertyMustBeSet","targetElements","updateAriaControlsAttribute","elementIds","elementId","addTargetElement","removeTargetElement","targetElementsProperty","parseBool","serializeArray","StringWithSubstitutionProperty","StringWithSubstitutions","parseString","getOriginal","substituteInputValues","ContentTypes","applicationXWwwFormUrlencoded","newValue","nameProperty","_ignoreInputValidation","_url","_body","applicationJson","actionHttpHeadersMustHaveNameAndValue","bodyProperty","methodProperty","headersProperty","ignoreInputValidationProperty","InlineAdaptiveCard","effectiveHostConfig","state","jsonCard","showCardMustHaveCard","showCard","actionMode","ShowCardActionMode","Popup","OverflowAction","_actions","overflowButtonText","overflowButtonTooltip","getActions","onDisplayOverflowActionMenuHandler","onDisplayOverflowActionMenu","contextMenu_1","PopupMenu","_loop_2","menuItem","actionToExecute","closePopup","popup","ActionCollection","_renderedActions","_owner","isActionAllowed","forbiddenTypes","forbiddenTypes_1","forbiddenType","refreshContainer","_actionCardContainer","_actionCard","renderedActionCount","inlineTopMargin","layoutChanged","showActionCard","suppressStyle","raiseEvent","renderedCard","_expandedAction","raiseInlineCardExpandedEvent","collapseExpandedAction","previouslyExpandedAction","expandShowCardAction","afterSelectedAction","renderedAction","actionsOrientation","source_1","jsonAction","forbiddenActions","getForbiddenActionNames","addAction","propertyName","validateProperties","maxActions","TooManyActions","tooManyActions","ActionTypeNotAllowed","actionTypeNotAllowed","preExpandSingleShowCardAction","buttonStrip","actionAlignment","ActionAlignment","allowedActions","bind","primaryActions_1","secondaryActions_1","overflowPrimaryActions","allowMoreThanMaxActionsInOverflowMenu","shouldRenderOverflowActionButton","_overflowAction","isRootAction","isAtRootLevelActions","onRenderOverflowActionsHandler","onRenderOverflowActions","raiseRenderOverflowActionsEvent","buttonSpacing","spacer","buttonStripContainer","actionAlreadyParented","expandedAction","actionIndex","orientationProperty","onGetInitialValue","Emphasis","allowCustomStyle","applyBackground","surroundingPadding","currentElementHasBackgroundImage","backgroundImage","hasExplicitStyle","Padding","explicitStyle","_bleed","minPixelHeight","getHasExpandedAction","getBleed","setBleed","alwaysAllowBleed","bleedProperty","minHeightProperty","PixelSizeProperty","resetDefaultValues","fillMode","FillMode","Repeat","RepeatHorizontally","RepeatVertically","Cover","backgroundSize","backgroundPositionX","verticalAlignment","VerticalAlignment","Top","backgroundPositionY","Bottom","fillModeProperty","verticalAlignmentProperty","_renderedItems","backgroundImageProperty","insertItemAt","forceInsert","elementAlreadyParented","isStandalone","elementTypeNotStandalone","getItemsCollectionPropertyName","applyRTL","rtl","dir","getEffectiveVerticalContentAlignment","renderedItem","placeholderElement","boundary_1","offsetTop","handleElement_1","elt","getFitStatus","ContainerFitStatus","FullyInContainer","Overflowing","containerMaxHeight","FullyOutOfContainer","setShouldFallback","jsonItems","jsonItems_1","collectionPropertyName","removePaddingFromContainersWithBackgroundImage","verticalContentAlignment","isRtl","firstRenderedItem","lastRenderedItem","addItem","insertItemBefore","insertItemAfter","insertAfter","verticalContentAlignmentProperty","rtlProperty","_computedWeight","_context","Vertical","widthProperty","invalidWidth","compareTo","invalidColumnWidth","_columns","createColumnInstance","parseCardObject","typeName","_errorType","ElementTypeNotAllowed","_renderedColumns","totalWeight","column","computedWeight","renderedColumn","jsonColumns","jsonColumns_1","getColumnAt","weightedColumns","stretchedColumns","Hint","hints","dontUseWeightedAndStrecthedColumnsInSameSet","addColumn","columnAlreadyBelongsToAnotherSet","onImageLoadedHandler","onImageLoaded","onAnchorClickedHandler","onAnchorClicked","onInlineCardExpandedHandler","onInlineCardExpanded","shouldUpdateLayout","onElementVisibilityChangedHandler","onElementVisibilityChanged","hide","readOnly","parseActions","renderedActions","renderIfEmpty","actionProperty","userIdsProperty","StringArrayProperty","imageProperty","idProperty","uriProperty","providerIdProperty","connectionNameProperty","buttonsProperty","tokenExchangeResourceProperty","refreshProperty","processMarkdownEventRemoved","markdownit","markdownIt","_haveWarnedAboutNoMarkdownProcessing","markdownProcessingNotEnabled","isVersionSupported","bypassVersionCheck","maxVersion","major","minor","_fallbackCard","fallbackElement","versionProperty","typeNameProperty","MissingCardType","invalidCardType","UnsupportedCardVersion","unsupportedCardVersion","shouldFallback","setTabIndexAtCardRoot","onmouseenter","onmouseleave","schemaUrl","$schemaProperty","Version","latest","invalidCardVersion","fallbackTextProperty","speakProperty","authenticationProperty","_forbiddenTypes","Set","internalParseCardObject","allowFallback","createInstanceCallback","oldForbiddenTypes_1","TypeErrorType","ForbiddenType","tryToFallback","enableFallback","UnknownType","fallback","cardObjectParsed","onParseAction","onParseElement","forbiddenTypeNames","createInstance","errorType","UnknownElementType","unknownElementType","UnknownActionType","unknownActionType","_elementRegistry","setElementRegistry","_actionRegistry","setActionRegistry","BaseSerializationContext","defaultElements","defaultActions","ValidationResults","host_capabilities_1","allIds","validationEvents","cardObject","phase","ValidationPhase","Validation","_shouldFallback","requiresProperty","propertyValue","allowPreProcessingPropertyValues","currentObject","onPreProcessPropertyValue","requires","areAllMet","hostCapabilities","DuplicateId","duplicateId","HostCapabilities","pack","CarouselEvent","Carousel","CarouselPage","enums_1","swiper_1","carouselSlide","getForbiddenChildElements","carouselLoop","carouselOrientation","_pages","_currentIndex","_previousEventType","CarouselInteractionEvent","Pagination","timer","timerProperty","carousel","minAutoplayDelay","tooLittleTimeDelay","initialPageProperty","isValidParsedPageIndex","invalidInitialPageIndex","isValidPageIndex","isValidRenderedPageIndex","_renderedPages","collectionSize","_containerForAdorners","carouselHeight","_carouselPageContainer","addPage","_carousel","slides","activeIndex","realIndex","jsonPages","jsonPages_1","createCarouselPageInstance","validateParsing","initialPageIndex","validateOrientationProperties","cardLevelContainer","carouselContainer","containerForAdorners","navigationContainer","carouselWrapper","prevElementDiv","nextElementDiv","updateCssForHorizontalCarousel","updateCssForVerticalCarousel","pagination","addCancelSelectActionEventHandler","requestedNumberOfPages","maxCarouselPages","tooManyCarouselPages","initializeCarouselControl","nextElement","prevElement","paginationElement","nextElementAdjustedForRtl","prevElementAdjustedForRtl","prevElementAdjustedForOrientation","nextElementAdjustedForOrientation","swiperOptions","loop","modules","Navigation","Scrollbar","A11y","History","Keyboard","el","clickable","navigation","prevEl","nextEl","a11y","enabled","keyboard","onlyInViewport","direction","resizeObserver","initialSlide","Autoplay","delay","pauseOnMouseEnter","Swiper","_event","stop","swiper","raiseCarouselEvent","NavigationNext","NavigationPrevious","currentIndex","paginationEl","bullets","bullet","slideTo","destroyResizeObserver","ariaLabel","carouselNavigationPreviousTooltip","carouselNavigationNextTooltip","createResizeObserver","createCarouselEvent","currentPageId","currentPageIndex","onCarouselEventHandler","onCarouselEvent","previousEventType","checkIfCarouselInValidStateForResizeEvent","_observer","ResizeObserver","newWidth","newHeight","contentBoxSize","contentRect","inlineSize","blockSize","observe","unobserve","destroyed","loopProperty","carouselHeightProperty","carouselId","activeCarouselPageId","activeCarouselPageIndex","ChannelAdapter","Collection","onItemAdded","onItemRemoved","Constants","tab","escape","space","constants_1","_isEnabled","onmouseup","PopupControl","_isOpen","keyDown","_rootElementBounds","renderContent","_popupElement","_overlayElement","documentElement","scrollWidth","onfocus","rootElementBounds","getBoundingClientRect","rootElementLabel","getAttribute","popupElementBounds","availableSpaceBelow","innerHeight","availableSpaceAbove","availableSpaceRight","innerWidth","availableSpaceLeft","getScrollX","actualPopupHeight","getScrollY","actualPopupWidth","wasCancelled","collection_1","_selectedIndex","selectedItemIndex","_capabilities","name_1","jsonVersion","addCapability","removeCapability","hasCapability","capabilityName","CarouselConfig","FontTypeSet","FontTypeDefinition","ContainerStyleSet","ContainerStyleDefinition","ColorSetDefinition","ActionsConfig","ShowCardActionConfig","FactSetConfig","FactTitleDefinition","FactTextDefinition","InputConfig","InputLabelConfig","RequiredInputLabelTextDefinition","TextBlockConfig","TextStyleSet","TextStyleDefinition","BaseTextDefinition","TableConfig","MediaConfig","ImageSetConfig","AdaptiveCardConfig","TextColorDefinition","ColorDefinition","Shared","parseHostConfigEnum","targetEnum","parsedValue","parseEnum","defaultColor","subtleColor","obj","parseNumber","cellSpacing","getDefaultWeight","columnHeader","LeftOfTitle","sizeAndUnit","parseSingleColor","borderColor","BuiltInContainerStyleDefinition","_allStyles","customStyleArray","customStyleArray_1","customStyle","styleName","isBuiltIn","emphasis","customStyles","monospace","getStyleDefinition","Monospace","table","_legacyFontType","fontTypes","paddingDefinition","classNames","classNames_1","cssClassNamePrefix","minAutoplayDuration","CardObjectRegistry","copyTo","keys_1","typeRegistration","objectType","schemaVersion","registrationInfo","unregister","populateWithDefaultElements","registry","populateWithDefaultActions","_elements","reset","SerializableObjectSchema","isVersionLessOrEqual","_isValid","_major","_minor","_label","versionString","_versionString","invalidVersionString","otherVersion","getAllDeclaredVersions","ctor","properties","v1","v2","_validationEvents","isTemplateString","startsWith","tryDeleteValue","enableFullJsonRoundTrip","tryDeleteDefaultValue","forceDeleteIfNullOrDefault","serializeString","serializeBool","serializeEnum","enumType","propertyValue_1","serializedItem","clearEvents","Parse","getEventAt","SimpleSerializationContext","isSerializationEnabled","sequentialNumber","_sequentialNumber","treatEmptyAsUndefined","regEx","sourceValue_1","versionedValue","propertyValueNotSupported","invalidValue","ToJSON","_values","keyAsNumber","enumValue","getEnumValueByName","nullable","serializedValue","hasAllDefaultValues","sourceCollection","sourceCollection_1","sourceItem","onParse","onToJSON","_properties","properties_1","properties_2","getCount","propertyKey","descriptor","_propertyBag","_rawProperties","defaultMaxVersion","getSchema","sortedProperties","p1","p2","onRegisterCustomProperties","UnsupportedProperty","propertyNotSupported","serializedProperties","effectiveContext","toJSONOriginalParam","hasDefaultValue","setCustomProperty","getCustomProperty","_schemaCache","UUID","logLevel","_isProcessed","_original","_processed","matchedInput","valueForReplace","encodeURIComponent","requireUnitSpecifier","expectedMatchCount","generate","d0","random","d1","d2","d3","lut","initialize","defaultingToVersion","supportedInVersion","versionUsed","maximumActions","maxSupportedVersion","tryAgain","pleaseLogin","enterMagicCode","pleaseEnterMagicCodeYouReceived","cancel","elementType","Table","TableRow","TableCell","StylableContainer","TableColumnDefinition","utils_1","horizontalCellContentAlignmentProperty","verticalCellContentAlignmentProperty","parseItem","createItemInstance","internalAddItem","internalRemoveItem","internalIndexOf","getCollectionPropertyName","items_1","instance","_columnIndex","_cellType","parentRow","parentTable","showGridLines","gridStyle","cellElement","cellType","horizontalCellContentAlignment","columnIndex","verticalCellContentAlignment","isFirstRow","getIsFirstRow","rowElement","getColumnCount","cell","firstRowAsHeaders","renderedCell","computedWidth","addCell","removeCellAt","ensureHasEnoughCells","cellCount","gridStyleProperty","ensureRowsHaveEnoughCells","removeCellsFromColumn","totalWeights","tableElement","borderTop","borderLeft","renderedRow","separatorRow","removeColumn","addRow","row","_columnsProperty","firstRowAsHeadersProperty","showGridLinesProperty","AbstractTextFormatter","regularExpression","_regularExpression","internalFormat","DateFormatter","toLocaleDateString","day","weekday","month","year","TimeFormatter","toLocaleTimeString","hour","minute","formatters_1","truncate","truncateWorker","fullText","truncateAt","fits","breakableIndices","html","results","idx","findNextCharacter","findBreakableIndices","lo","hi","bestBreakIdx","mid","floor","documentMode","ttDeprecatedPolicy","currIdx","truncatedString","truncatedHTML","containerEnd","pageXOffset","pageYOffset","args"],"sourceRoot":""}