{"version":3,"file":"/uxab/fb75e40f1b28aa90897565b1604bcb9a.map.jsdbx","sections":[{"offset":{"line":18,"column":0},"map":{"mappings":"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","file":"externals/@devsnc/sn-learning-core/index.min.js","names":["module","exports","cssWithMappingToString","list","toString","this","map","item","content","needLayer","concat","length","join","i","modules","media","dedupe","supports","layer","undefined","alreadyImportedModules","k","id","_k","push","___CSS_LOADER_EXPORT___","result","__esModule","default","_extends","Object","assign","bind","n","e","arguments","t","r","hasOwnProperty","call","apply","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getter","d","a","definition","key","o","defineProperty","enumerable","get","obj","prop","prototype","Symbol","toStringTag","value","y","x","cjsModule","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__","actionTypes","createCustomElement","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__","Fragment","createElement","createRef","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__","parseJSON","data","JSON","parse","status","cardType","cardSubType","getStarted","link","video","course","survey","skill","tour","displayType","deliveryEnvironment","dueDateLevelColorMap","high","medium","cardTypeTitleClassMap","iconRtlMap","getIconRtlSupport","iconName","IMAGE_RTL_SUPPORT","createCardPropertyGetter","configMap","type","subType","getCardIcon","path","powerSkill","ilt","achievement","aiPath","guidedSimulation","assessment","careerJourney","getCardColor","recommendationAchievement","getCardBackground","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__","_ref","cardTypeTag","mandatoryText","additionalType","additionalTypeTag","language","setTargetRef","languageRef","isNew","className","icon","size","supportRtl","style","background","code","_ref2","elm","hook-destroy","code_dv","stopPropagation","name","i18nMessages","completed","resume","view","markAsComplete","left","moduleProgress","current","total","getFooterText","remainingTime","LEARNER_STATUS","ctaButtonLabel","dispatch","iconSize","properties","payload","title","shouldDispatch","disabled","getButtonLabel","labelText","trim","CompletedIndicator","showMarkAsComplete","isCompleted","MarkAsCompleteButton","FooterButton","completionTime","footerTimerRef","completedDateRef","_ref3","CARD_TYPE","GetStartedCardFooter","CardFooter","createCardClickHandler","shouldShowCompletedBadge","imageURL","hasBadgeClass","props","description","totalModules","DISPLAY_TYPE","CardType","src","alt","loading","Footer","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__","toEmbeddableUrl","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__","isEmpty","isEqual","isFinite","isNull","isNumber","isString","reduce","toNumber","toValidPixelsOrUndefined","v","width","height","imageClass","fit","position","objectFit","objectPosition","inlineSize","blockSize","contentType","Image","dueDateInfo","titleClass","cardStatus","keys","showImage","UnEnrolled","Title","text","pills","tags","updateState","remainingCount","hasBadge","pillsRef","updateSkills","containerWidth","maxRows","Math","floor","containerHeight","usedWidth","currentRow","fitSkills","skills","skillElements","children","skillElement","skillWidth","offsetWidth","visibleSkills","ref","Pill","currentModule","percentageCompletion","currentModulePercent","modulesPercentage","_currentModulePercent","element","max","round","showProgressBar","deliveryEnv","ProgressBarLabel","ProgressBar","parsedVisibleSkills","parsedTags","shouldShowImage","shouldShowPills","Pills","Completed","color","level","Enrolled","CARD_RENDERERS","CareerJourneyRenderer","GetStartedRenderer","StandardRenderer","parsed","CardRenderer","stateKey","setTimeout","renderer","snabbdom","styles","behaviors","rtlBehavior","slots","menu","schema","enum","setInitialState","dispatches","mainMenu","exploreCatalog","exploreCatalogLabel","close","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__","COMPONENT_DISCONNECTED","state","_state$behaviors2","catalogData","referenceTopSpaceElement","closeModal","handleKeyDown","callback","event","preventDefault","getShadowElement","elementClassName","traverser","node","nodeType","Node","ELEMENT_NODE","classList","contains","child","found","shadowRoot","shadowChild","document","body","calculateAndUpdateTopSpace","bannerElement","topSpace","getBoundingClientRect","bottom","init","initialized","setupTouchOutsideListener","handleTouchStart","_state$behaviors","modalContent","composedPath","mediaQuery","smallQuery","includes","addEventListener","touchHandler","handleMouseOver","itemName","contentIndex","activeHover","handleExpandItem","currentExpanded","mobileExpandedItem","selectCatalogItem","href","window","location","catalogSelectedXS","goBack","isMobile","topSpaceStyle","_ref4","catalogContent","footer","selectedCategory","role","tabindex","contentItem","on-click","image","footerItem","label","items","isExpanded","products","product","Array","isArray","col","_col$items$","some","it","getDefaultActiveHover","activeProducts","getActiveProducts","find","idx","_contentItem$items$","isActiveColumn","isActive","on-mouseover","on-focus","target","opensWindow","rel","override","additionalProperties","behavior","mediaQueryBehavior","options","actionHandlers","removeEventListener","SN_BANNER_ANNOUNCEMENT_CLICKED","TOGGLE_ANNOUNCEMENT_EXPANDED","ANNOUNCEMENT_FETCH_REQUESTED","ANNOUNCEMENT_FETCH_SUCCEEDED","ANNOUNCEMENT_FETCH_EXECUTED","ANNOUNCEMENT_DISMISS_SUCCEEDED","ANNOUNCEMENT_DISMISS_EXECUTED","ANNOUNCEMENTS_UPDATED","ANNOUNCEMENTS_EXPIRED","ANNOUNCEMENTS_ADDED","ANNOUNCEMENT_DISMISSED","ANNOUNCEMENT_SESSION_DISMISSED","LINK_OPENED","SESSION_TIMED_OUT","METRIC_TRACKED","ANNOUNCEMENT_CHANGED","UPDATE_M2M_ANNOUNCEMENTS","ADD_ANNOUNCEMENT","DELETE_ANNOUNCEMENT","EDIT_ANNOUNCEMENT","MEDIUM","LARGE","BANNER_ANNOUNCEMENT_TABLE_NAME","CHANGE_ACTION","DELETE_ACTION","LOAD_ANNOUNCEMENT_UPDATE","DISMISS_ANNOUNCEMENT","ANNOUNCEMENTS_ADDED_ACTION","ANNOUNCEMENTS_REMOVED_ACTION","ANNOUNCEMENTS_UPDATED_ACTION","STORAGE_PREFIX","dispatchToggle","numAnnouncements","stackType","abs","toggleCollapseExpandIcon","expanded","caretIconRef","displayStyle","_calculateAnnouncemen","caretIconTooltip","announcementCountDisplay","calculateAnnouncementCountDisplay","announcementNumLabel","expandCollapseLabel","foregroundColor","backgroundColor","renderIcon","iconRef","iconTooltip","renderHeading","heading","renderSummary","summary","renderDismissButton","sysId","dismissOption","dismissSessionAnnouncement","dismissAnnouncement","renderButtonLink","isNarrowLink","newWindow","url","linkWrapperClass","BannerAnnouncement","componentSize","isPeek","contentPosition","index","isWideScreen","showDismiss","showCollapse","showControls","textAlign","alignment","clickBehavior","initialState","nonDismissible","action","setLocalStorageData","localStorage","setItem","getLocalStorageData","getItem","removeLocalStorageData","removeItem","storage","storageKey","addDismissedAnnouncement","announcementId","sessionId","resetDismiss","announcement","removeItemFromEntry","itemToRemove","_items","filter","getTimeNowUTC","now","Date","getTime","getTimezoneOffset","getActiveAnnouncements","announcements","timeNowUTC","activeAnnouncements","startDate","endDate","filterDismissedAnnouncements","filteredAnnouncements","forEach","groupAnnouncementsByTime","dateType","announcementsDict","timeDue","addRemoveFutureAnnouncements","time","entries","configTableEdit","configId","currentConfigActive","operation","createNewAnnouncementFromRecord","new_record","icon_tooltip","link_url","link_label","link_click_behavior","start","end","nonStackable","handleAnnouncementChange","current_announcement_sys_id","currentAnnouncementSysId","previous_announcement_sys_id","previousAnnouncementSysId","mappedConfigIds","newRecord","old_record","oldRecord","current_announcement_config_id","currentAnnouncementConfigId","previous_announcement_config_id","previousAnnouncementConfigId","incorrect_dates","incorrectDates","annComingSoon","annExpiringSoon","tableName","split","announcementTableAddEdit","propertiesChanged","sort","transformedAnn","annComingOrExpiringSoonDict","announcementTableDelete","m2mTableAddEdit","m2mTableDelete","current_config_active","configTableDelete","getUpdatedAriaMessage","updateCount","currentCount","announcementAction","isMultiple","isNonDismissible","isNonStackable","BannerAnnouncementList","ariaMessage","dismissibleStackExpanded","nonDismissibleStackExpanded","ariaLabel","renderAnnouncements","getList","count","slice","categorizedAnnouncements","acc","ann","nonDismissNonStack","dismissNonStack","nonDismissStack","dismissStack","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__","createAmbSubscriptionEffect","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__","createHttpEffect","subscriptionChangedEffect","subscribeStartedActionType","subscribeSucceededActionType","subscribeFailedActionType","messageReceivedActionType","fetchAllAnnouncements","currentWindowTimeLimit","currentAnnouncements","announcementsExpiringSoon","getAnnouncementsExpiringSoon","announcementsComingSoon","getAnnouncementsComingSoon","COMPONENT_BOOTSTRAPPED","dataUrl","effect","table","subscribe","metadata","eventName","interceptors","effects","coeffects","httpEffect","method","batch","startActionType","successActionType","errorActionType","args","_ref5","dismissUrl","pathParams","_ref13","sessionTimeout","realTimeEnabled","removeInactiveSessionsDismissed","hasErrors","errors","sessionTimeoutInMilliSeconds","initializeDateConstant","MILLISECONDS_IN_MINUTE","numberofAnnouncements","numberOfAnnouncementsWithLinks","updateFutureAnnouncements","announcementsExpiryDict","announcementsArrivalDict","announcementDismissSucceededEffect","_ref6","_ref7","announcementIds","changeType","sysIds","source","_ref8","SUBSCRIPTION_CHANGED","_ref12","updatedAnnouncements","announcementToAdd","metadataAdded","metadataRemoved","_ref9","_ref10","_ref11","getUpdatedAnnouncements","add_link","addLink","curr","track","mediumQuery","styleAttributes","ContentSlot","flipped","renderCardFace","front","back","inputRef","config","viewTypeahead","focus","multiSelect","selectedItem","bindVariables","variable","showInSelectedCard","primary","dropDownPlaceholder","isLoading","placeholder","searchPlaceholder","required","autofocus","minlength","align","identifier","selected","dangerouslySetInnerHTML","__html","searchTerm","enableHighlight","enableSearchHighlight","replace","RegExp","COMPONENT_CONNECTED","fieldValue","TableColumnHeaders","columns","selectAllValue","selectable","checked","column","TableRow","rowData","onToggleSelection","onActionTriggered","isSelected","rowClassName","disabledKey","cursor","opacity","dynamicIcon","referenceProperty","iconValue","readonly","selectedKey","variant","handleToggleSelection","selectedValue","handleActionTriggered","tableLayout","row","selectedRows","removalReasons","showModal","currentRowId","modalInput","modalError","indexOf","payloadParts","context","__TECTONIC__$devsnc_sn_learning_core"],"sources":["webpack:///css-loader/6.7.1/dist/runtime/api.js","webpack:///css-loader/6.7.1/dist/runtime/noSourceMaps.js","webpack:///@devsnc/sn-learning-core/src/components/sn-nl-explore-catalog/sn-nl-explore-catalog.scss","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement-list/styles.scss","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement/styles.scss","webpack:///@devsnc/sn-learning-core/src/components/snu-flip-card/style.scss","webpack:///@devsnc/sn-learning-core/src/components/snu-generic-table/style.scss","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/styles.scss","webpack:///@devsnc/sn-learning-core/src/components/snu-typeahead/style.scss","webpack:///./src/components/sn-nl-explore-catalog/sn-nl-explore-catalog.scss?8ba8","webpack:///./src/components/snu-announcement-list/styles.scss?7c02","webpack:///./src/components/snu-announcement/styles.scss?223f","webpack:///./src/components/snu-flip-card/style.scss?2057","webpack:///./src/components/snu-generic-table/style.scss?3a1e","webpack:///./src/components/snu-learning-card/styles.scss?3954","webpack:///./src/components/snu-typeahead/style.scss?c1f6","webpack:///@babel/runtime/7.25.7/helpers/extends.js","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object","webpack:///external module \"/uxasset/externals/@servicenow/ui-core/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/ui-renderer-snabbdom/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/behavior-rtl/27.0.28/index.jsdbx\"","webpack:///@devsnc/sn-learning-core/src/utils/index.js","webpack:///external module \"/uxasset/externals/@servicenow/now-icon/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/now-tooltip/index.jsdbx\"","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/constants.js","webpack:///external module \"/uxasset/externals/sn-translate/index.jsdbx\"","webpack:///@devsnc/sn-learning-core/src/components/common/card-type/index.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/utils.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/footer/utils.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/footer/FooterButton.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/footer/MarkAsCompleteButton.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/footer/CompletedIndicator.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/footer/GetStartedCardFooter.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/footer/CardFooter.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/footer/index.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/renderers/base-card-renderer.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/renderers/career-journey-renderer.js","webpack:///external module \"/uxasset/externals/@servicenow/library-enhanced-utils/27.0.28/index.jsdbx\"","webpack:///external module \"/uxasset/externals/lodash/4.17.21/index.jsdbx\"","webpack:///@devsnc/sn-learning-core/src/components/common/image/index.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/unenrolled/index.js","webpack:///@devsnc/sn-learning-core/src/components/common/card-title/index.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/renderers/get-started-renderer.js","webpack:///@devsnc/sn-learning-core/src/components/common/pills/pill/index.js","webpack:///@devsnc/sn-learning-core/src/components/common/pills/index.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/completed/index.js","webpack:///external module \"/uxasset/externals/@servicenow/now-progress-bar/index.jsdbx\"","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/enrolled/progressBar.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/enrolled/progressBarLabel.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/enrolled/index.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/renderers/standard-renderer.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/renderers/index.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/view.js","webpack:///@devsnc/sn-learning-core/src/components/snu-learning-card/index.js","webpack:///@devsnc/sn-learning-core/src/components/sn-nl-explore-catalog/utils.js","webpack:///external module \"/uxasset/externals/@servicenow/behavior-media-query/27.0.28/index.jsdbx\"","webpack:///@devsnc/sn-learning-core/src/components/sn-nl-explore-catalog/sn-nl-explore-catalog.js","webpack:///@devsnc/sn-learning-core/src/components/sn-nl-explore-catalog/view/view.js","webpack:///external module \"/uxasset/externals/@servicenow/now-text-link/index.jsdbx\"","webpack:///@devsnc/sn-learning-core/src/constants.js","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement/utils.js","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement/view.js","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement/index.js","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement-list/utils/storageUtils.js","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement-list/utils/announcementStorageUtils.js","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement-list/utils/effectsUtils.js","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement-list/utils/ambHandlerUtils.js","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement-list/utils/utils.js","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement-list/view.js","webpack:///external module \"/uxasset/externals/@devsnc/ux-metrics/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/ui-effect-amb/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/ui-effect-http/index.jsdbx\"","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement-list/effects.js","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement-list/actions.js","webpack:///@devsnc/sn-learning-core/src/components/snu-announcement-list/index.js","webpack:///@devsnc/sn-learning-core/src/components/sn-dynamic-css-variable-override/sn-dynamic-css-variable-override.js","webpack:///@devsnc/sn-learning-core/src/components/sn-dynamic-css-variable-override/view/view.js","webpack:///@devsnc/sn-learning-core/src/components/snu-flip-card/view.js","webpack:///@devsnc/sn-learning-core/src/components/snu-flip-card/index.js","webpack:///external module \"/uxasset/externals/@servicenow/now-input/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/now-loader/index.jsdbx\"","webpack:///@devsnc/sn-learning-core/src/components/snu-typeahead/view.js","webpack:///@devsnc/sn-learning-core/src/components/snu-typeahead/index.js","webpack:///external module \"/uxasset/externals/@servicenow/now-button/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/now-checkbox/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/now-modal/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/now-dropdown/index.jsdbx\"","webpack:///@devsnc/sn-learning-core/src/components/snu-generic-table/view.js","webpack:///@devsnc/sn-learning-core/src/components/snu-generic-table/index.js","webpack:///@devsnc/sn-learning-core/src/__imaginary__/entry-wrapper.js"],"sourcesContent":["\"use strict\";\n\n/*\n  MIT License http://www.opensource.org/licenses/mit-license.php\n  Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n  var list = []; // return the list of modules as css string\n\n  list.toString = function toString() {\n    return this.map(function (item) {\n      var content = \"\";\n      var needLayer = typeof item[5] !== \"undefined\";\n\n      if (item[4]) {\n        content += \"@supports (\".concat(item[4], \") {\");\n      }\n\n      if (item[2]) {\n        content += \"@media \".concat(item[2], \" {\");\n      }\n\n      if (needLayer) {\n        content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n      }\n\n      content += cssWithMappingToString(item);\n\n      if (needLayer) {\n        content += \"}\";\n      }\n\n      if (item[2]) {\n        content += \"}\";\n      }\n\n      if (item[4]) {\n        content += \"}\";\n      }\n\n      return content;\n    }).join(\"\");\n  }; // import a list of modules into the list\n\n\n  list.i = function i(modules, media, dedupe, supports, layer) {\n    if (typeof modules === \"string\") {\n      modules = [[null, modules, undefined]];\n    }\n\n    var alreadyImportedModules = {};\n\n    if (dedupe) {\n      for (var k = 0; k < this.length; k++) {\n        var id = this[k][0];\n\n        if (id != null) {\n          alreadyImportedModules[id] = true;\n        }\n      }\n    }\n\n    for (var _k = 0; _k < modules.length; _k++) {\n      var item = [].concat(modules[_k]);\n\n      if (dedupe && alreadyImportedModules[item[0]]) {\n        continue;\n      }\n\n      if (typeof layer !== \"undefined\") {\n        if (typeof item[5] === \"undefined\") {\n          item[5] = layer;\n        } else {\n          item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n          item[5] = layer;\n        }\n      }\n\n      if (media) {\n        if (!item[2]) {\n          item[2] = media;\n        } else {\n          item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n          item[2] = media;\n        }\n      }\n\n      if (supports) {\n        if (!item[4]) {\n          item[4] = \"\".concat(supports);\n        } else {\n          item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n          item[4] = supports;\n        }\n      }\n\n      list.push(item);\n    }\n  };\n\n  return list;\n};","\"use strict\";\n\nmodule.exports = function (i) {\n  return i[1];\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".sn-nl-explore-catalog,.sn-nl-explore-catalog *{-webkit-font-smoothing:antialiased}.modal-container{background:var(--now--nl-ec-white--color,#fff);clear:both;display:flex;flex-direction:column;min-height:450px}.auto-scroll{overflow:auto}.catalog-container{height:100%}.dt-canvas-user-menu-dropdown-panel-container .modal-backdrop{align-items:center;background:var(--now--nl-ec-modal-xl-backdropcolor,rgba(0,0,0,.5));display:flex;inset:0;justify-content:center;position:fixed;z-index:400}.dt-canvas-user-menu-dropdown-panel-container .modal-backdrop .modal-container{height:var(--now--nl-ec-modal-xl-width,auto);overflow:hidden;position:relative;width:var(--now--nl-ec-modal-xl-height,1170px)}@media(min-width:1024px){.dt-canvas-user-menu-dropdown-panel-container .modal-backdrop .modal-container{border-radius:var(--now--nl-ec-modal-border-radius,24px)}}@media(min-width:768px)and (max-width:1023px){.dt-canvas-user-menu-dropdown-panel-container .modal-backdrop .modal-container{border-radius:var(--now--nl-ec-modal-border-radius-md,16px)}}.height-100{height:100%}.flex-1{flex:1}.modal-content{display:flex;flex-direction:row;justify-content:space-between;padding:20px 20px 0 20px}.modal-content .modal-column,.modal-content .modal-column-secondary{width:100%}.modal-content .column-title,.modal-content .column-title-empty{align-items:center;display:flex;font-size:16px;font-weight:600;gap:4px;padding-bottom:10px}.modal-content .column-title-empty{height:32px}.modal-content .content-modal-icon{cursor:pointer;inset-block-start:10px;inset-inline-end:10px;padding:10px;position:absolute}.modal-content .selectedChildGroup{height:calc(100% - 32px);padding-bottom:2px}.modal-content .mouse-over-bg-grey,.modal-content .selectedChildGroup{background-color:var(--now--nl-ec-semi-white--color,#f3f3f3)}.modal-content .scrollable{height:46vh;overflow-y:auto}.modal-content .font-bold{font-weight:700}.modal-content .list-item{align-items:center;display:flex;font-size:14px;justify-content:space-between;padding:10px 10px 10px 10px}.modal-content .list-item,.modal-content a{color:var(--now-nl-ec-list-item-color,#032d42);cursor:pointer}.modal-content a{background-color:transparent;text-decoration:none}.modal-content .column-border{border-inline-start:1px solid var(--now--nl-ec-border--color,#e0e0e0);padding-inline-start:15px}.modal-footer{background-color:var(--now--nl-ec-semi-white--color,#f3f3f3);border-top:0 solid var(--now-nl-ec-footer-border,#e3e3e3);font-size:var(--now-nl-ec-action-button-font-size,14px);padding-block:var(--now-nl-ec-footer-padding-block,10px);padding-inline:var(--now-nl-ec-footer-padding-inline,10px)}.modal-footer .explore-view-all-action-button{background-color:var(--now--nl-ec-white--color,#fff);border:var(--now-nl-ec-action-button-border-width,2px) solid var(--now-nl-ec-action-button-border,#02506b);border-radius:var(--now-nl-ec-action-button-border-radius,50px);color:var(--now-nl-ec-action-button-color,#293e40);cursor:pointer;display:inline-block;font-family:var(--now-font-family-gilroy,inherit);font-size:var(--now-nl-ec-action-button-font-size,14px);font-weight:var(--now-nl-ec-action-button-font-weight,450);letter-spacing:0;line-height:var(--now-nl-ec-action-button-line-height,1.2);margin-inline-start:0;padding-block:var(--now-nl-ec-action-button-padding-block,11px);padding-inline:var(--now-nl-ec-action-button-padding-inline,20px);text-align:center;text-decoration:none;transition:background-color .2s ease,border-color .2s ease}.modal-footer .explore-view-all-action-button:focus,.modal-footer .explore-view-all-action-button:hover{background-color:var(--now-nl-ec-action-button-hover-bg,#f3f3f3);text-decoration:none}@media(min-width:767px){.visible-xs{display:none!important}.hidden-xs{display:flex!important}}@media(max-width:767px){.visible-xs{display:inherit!important;height:100vh}.visible-xs.modal-container{height:calc(100vh - var(--now-sn-cx-banner-overlay--top, 100px) - var(--now-sn-cx-navigation-overlay--top, 100px));inset-block-start:calc(var(--now-sn-cx-banner-overlay--top, 100px) + var(--now-sn-cx-navigation-overlay--top, 100px));inset-inline-end:0;inset-inline-start:0;position:fixed;z-index:400}.visible-xs .modal-content{flex-direction:column;justify-content:flex-start;padding:0}.visible-xs .explore-heading{cursor:pointer;display:flex;flex-direction:row;gap:7px}.visible-xs .scrollable{height:auto}.list-item{font-size:12px}.hidden-xs{display:none!important}.main-menu-header-container{border-bottom:1px solid var(--now--nl-ec-color-text--primary,#dee5e7);display:flex;gap:5px;justify-content:space-between;padding:10px;text-decoration:underline}.modal-content .column-title,.modal-content .column-title-empty{font-size:14px;padding-bottom:0}.explore-catalog-content-item{align-items:center;display:flex;justify-content:space-between}.explore-catalog-content{display:flex;flex:1;flex-direction:column;gap:10px;margin-top:10px}.explore-catalog-content-container{padding-block:10px 0;padding-inline:10px}.expanded-view{max-height:0;overflow:hidden;transition:max-height .3s ease-in-out}.expanded{max-height:2000px}.expand-arrow{transition:transform .2s ease-in-out}.list-expanded-container{border-bottom:1px solid var(--now--nl-ec-border--color,#e0e0e0)}}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":host{box-sizing:border-box;font-family:var(--now-font-family,\\\"Source Sans Pro\\\",Arial,sans-serif);line-height:var(--now-line-height,1.25)}:host([hidden]){display:none}*,:after,:before{box-sizing:border-box}.now-align{display:flex}.now-align.-row.-reverse{flex-direction:row-reverse}.now-align.-column{flex-direction:column}.now-align.-column.-reverse{flex-direction:column-reverse}.now-align.-wrap{flex-wrap:wrap}.now-align.-inline{justify-content:space-between}.now-align.-inline-center{justify-content:center}.now-align.-inline-end{justify-content:flex-end}.now-align.-block-start{align-items:flex-start}.now-align.-block-center{align-items:center}.now-align.-block-end{align-items:flex-end}.announcement-wrapper{max-height:40vh;overflow-y:auto}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":host{box-sizing:border-box;font-family:var(--now-font-family,\\\"Source Sans Pro\\\",Arial,sans-serif);line-height:var(--now-line-height,1.25)}:host([hidden]){display:none}*,:after,:before{box-sizing:border-box}.now-align{display:flex}.now-align.-row.-reverse{flex-direction:row-reverse}.now-align.-column{flex-direction:column}.now-align.-column.-reverse{flex-direction:column-reverse}.now-align.-wrap{flex-wrap:wrap}.now-align.-inline{justify-content:space-between}.now-align.-inline-center{justify-content:center}.now-align.-inline-end{justify-content:flex-end}.now-align.-block-start{align-items:flex-start}.now-align.-block-center{align-items:center}.now-align.-block-end{align-items:flex-end}.banner-root-element{align-items:flex-start;border:2px solid transparent;display:flex;flex-direction:row;position:relative}.banner-root-element .flex-direction-column{flex-direction:column}.banner-root-element .gap-20{gap:20px}.banner-root-element.peek-announcement{border-top:0;height:.5rem;z-index:-1}.banner-root-element.show-shadow{box-shadow:0 .125rem .25rem 0 RGB(56,56,56,var(--now-opacity--less,.25))}.banner-root-element.critical{background-color:#d3003f;border-color:#d3003f;color:#fff;text-align:left}.banner-root-element.high{background-color:RGB(var(--now-color_alert--high-0,247,228,200));border-color:RGB(var(--now-color_alert--high-1,234,186,117))}.banner-root-element.warning{background-color:#ffe5bf;border-color:#ffe5bf;color:#1d1d1d;text-align:left}.banner-root-element.moderate{background-color:RGB(var(--now-color_alert--moderate-0,212,213,243));border-color:RGB(var(--now-color_alert--moderate-1,148,149,225))}.banner-root-element.info{background-color:#006ed5;border-color:#006ed5;color:#fff;text-align:left}.banner-root-element.positive{background-color:RGB(var(--now-color_alert--positive-0,201,224,202));border-color:RGB(var(--now-color_alert--positive-1,119,178,123))}.banner-root-element.low{background-color:RGB(var(--now-color_alert--low-0,217,217,217));border-color:RGB(var(--now-color_alert--low-1,159,159,159))}.content{align-items:baseline;display:flex;flex:1;justify-content:space-between;padding:20px 30px 20px 0}.announcement-text{flex:1}.expand-collapse-icon{align-items:center;display:flex;flex:1;justify-content:center;width:100%}.expand-collapse-icon button{border:2px solid transparent;cursor:pointer;filter:brightness(90%);font-size:12px;font-weight:700;padding-bottom:3px;padding-top:3px;text-align:center;width:100%}.expand-collapse-icon.critical{background-color:#d3003f;color:#fff;filter:brightness(90%)}.expand-collapse-icon.info{background-color:#006ed5;color:#fff;filter:brightness(90%)}.expand-collapse-icon.warning{background-color:#ffe5bf;filter:brightness(90%)}.icon{display:inline;min-height:18px;min-width:18px;padding:0 10px}.announcement-heading{display:inline;font-size:18px;font-weight:700;padding-right:38px}.announcement-summary{font-size:16px;line-height:1.42857;margin:0 0;padding-left:38px;padding-right:10px}.narrow-screen-link{padding-left:38px}:host(:not([dir=rtl])) .narrow-screen-link,:root:not([dir=rtl]) .narrow-screen-link{margin-right:.5rem}:host([dir=rtl]) .narrow-screen-link,:root[dir=rtl] .narrow-screen-link{margin-left:.5rem}.link{align-self:center;display:flex;flex-direction:column;padding:12px 0 12px 20px;white-space:nowrap}:host(:not([dir=rtl])) .link,:root:not([dir=rtl]) .link{margin-left:.75rem}:host([dir=rtl]) .link,:root[dir=rtl] .link{margin-right:.75rem}:host(:not([dir=rtl])) .link,:root:not([dir=rtl]) .link{margin-right:.75rem}:host([dir=rtl]) .link,:root[dir=rtl] .link{margin-left:.75rem}.info-link{border:1px solid;border-radius:5px;color:#fff;display:inline-block;max-width:30ch;padding:2px 6px 2px 6px;text-align:center;text-decoration:none;word-break:break-word}.info-link.warning{color:#000}.controls{align-items:center;align-self:normal;display:flex;flex-direction:column;justify-content:center;text-align:-webkit-center;text-align:-moz-center}.controls.no-dismiss{flex-direction:column-reverse}.controls.critical{border-color:RGB(var(--now-color_alert--critical-1,221,133,129))}.controls.high{border-color:RGB(var(--now-color_alert--high-1,234,186,117))}.controls.warning{border-color:RGB(var(--now-color_alert--warning-1,227,218,96))}.controls.moderate{border-color:RGB(var(--now-color_alert--moderate-1,148,149,225))}.controls.info{border-color:RGB(var(--now-color_alert--info-1,104,171,218))}.controls.positive{border-color:RGB(var(--now-color_alert--positive-1,119,178,123))}.controls.low{border-color:RGB(var(--now-color_alert--low-1,159,159,159))}.close{color:#fff;display:block;font-size:26px;position:absolute;right:15px;text-decoration:none;top:3px}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":host{box-sizing:border-box;font-family:var(--now-font-family,\\\"Source Sans Pro\\\",Arial,sans-serif);line-height:var(--now-line-height,1.25)}:host([hidden]){display:none}*,:after,:before{box-sizing:border-box}.flip-card,.snu-flip-card{height:var(--snu-custom-card-height,288px);width:var(--snu-custom-card-width,260px)}.flip-card{border:var(--snu-flip-card-border-normal,1px solid);border-color:var(--snu-flip-card-border-color,#ddd);border-radius:var(--snu-flip-card-border-radius-normal,16px);position:relative;transform-style:preserve-3d;transition:var(--snu-flip-card-transition-default,transform .5s ease-in-out)}.flip-card.flipped{transform:rotateY(180deg)}.card-face{-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;height:var(--snu-flip-card-height-normal,100%);overflow:hidden;position:absolute;transform:rotateX(0deg);width:var(--snu-flip-card-width-normal,100%)}.card-front{z-index:2}.card-back{transform:rotateY(180deg);z-index:1}.card-front:after{border-color:transparent transparent transparent transparent;border-radius:0 var(--snu-flip-card-hover-border-radius,6px) 0 0;border-style:solid;border-width:0 var(--snu-flip-card-hover-border-width,20px) var(--snu-flip-card-hover-border-width,20px) 0;bottom:0;content:\\\"\\\";height:0;left:0;opacity:0;pointer-events:none;position:absolute;transition:border-color .3s ease,opacity .3s ease;width:0}.card-front:hover:after{border-color:transparent var(--snu-flip-card-hover-border-top-color,#e1f3ff) var(--snu-flip-card-hover-border-bottom-color,#0a2737) transparent;opacity:var(--snu-flip-card-hover-opacity,1)}.card-back:after{border-color:transparent transparent transparent transparent;border-radius:0 0 0 var(--snu-flip-card-hover-border-radius,6px);border-style:solid;border-width:0 var(--snu-flip-card-hover-border-width,20px) var(--snu-flip-card-hover-border-width,20px) 0;content:\\\"\\\";height:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:border-color .3s ease,opacity .3s ease;width:0}.card-back:hover:after{border-color:transparent var(--snu-flip-card-hover-border-bottom-color,#0a2737) var(--snu-flip-card-hover-border-left-color,#c2e6ff) transparent;opacity:var(--snu-flip-card-hover-opacity,1)}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":host{box-sizing:border-box;font-family:var(--now-font-family,\\\"Source Sans Pro\\\",Arial,sans-serif);line-height:var(--now-line-height,1.25)}:host([hidden]){display:none}*,:after,:before{box-sizing:border-box}.snu-generic-table-container{background-color:var(--snu-generic-table-bg-color,#fff);border-radius:var(--snu-generic-table-border-radius,8px);color:var(--snu-generic-table-text-color,#007393);font-family:var(--now-font-family,-apple-system,BlinkMacSystemFont,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif)}.snu-generic-table-container .snu-generic-table{border:1px solid var(--snu-generic-table-border-color,rgba(3,45,66,.4));border-radius:var(--snu-generic-table-border-radius,8px);border-spacing:0;overflow:hidden;table-layout:fixed;width:100%}.snu-generic-table-container .snu-generic-table .snu-generic-table-column-headers{background-color:var(--snu-generic-table-header-bg-color,#032d42);border-bottom:1px solid var(--snu-generic-table-border-color,rgba(3,45,66,.4));color:var(--snu-generic-table-secondary-text-color,#fff);font-size:var(--snu-generic-table-heading-font-size,16px);font-weight:600}.snu-generic-table-container .snu-generic-table .snu-generic-table-column-headers .snu-generic-table-cell{padding:var(--snu-generic-table-cell-padding,12px)}.snu-generic-table-container .snu-generic-table .snu-generic-table-body{font-size:var(--snu-generic-table-content-font-size,16px)}.snu-generic-table-container .snu-generic-table .snu-generic-table-body .snu-generic-table-row{border-bottom:1px solid var(--snu-generic-table-border-color,rgba(3,45,66,.4))}.snu-generic-table-container .snu-generic-table .snu-generic-table-body .snu-generic-table-row:last-child{border-bottom:none}.snu-generic-table-container .snu-generic-table .snu-generic-table-body .snu-generic-table-row:hover{background-color:var(--snu-generic-table-row-hover-bg-color,rgba(3,45,66,.2))}.snu-generic-table-container .snu-generic-table .snu-generic-table-body .snu-generic-table-row.marked-for-removal{background-color:var(--snu-generic-table-marked-color,rgba(255,77,79,.2));color:var(--snu-generic-table-marked-color,#741717)}.snu-generic-table-container .snu-generic-table .snu-generic-table-body .snu-generic-table-row.marked-for-removal .snu-generic-table-cell{opacity:.7;text-decoration:line-through}.snu-generic-table-container .snu-generic-table .snu-generic-table-body .snu-generic-table-row.marked-for-removal .snu-generic-table-cell.snu-generic-table-action-cell,.snu-generic-table-container .snu-generic-table .snu-generic-table-body .snu-generic-table-row.marked-for-removal .snu-generic-table-cell.snu-generic-table-checkbox-cell{opacity:1;text-decoration:none}.snu-generic-table-container .snu-generic-table .snu-generic-table-body .snu-generic-table-row.marked-as-new{background-color:var(--snu-generic-table-marked-new-background,rgba(0,128,0,.2));color:var(--snu-generic-table-marked-new-color,green)}.snu-generic-table-container .snu-generic-table .snu-generic-table-cell{align-items:center;flex-grow:0;flex-shrink:0;padding:var(--snu-generic-table-cell-padding,12px)}.snu-generic-table-container .snu-generic-table .snu-generic-table-cell.snu-generic-table-checkbox-cell{flex-basis:40px;text-align:center;vertical-align:middle}.snu-generic-table-container .snu-generic-table .snu-generic-table-cell.snu-generic-table-action-cell{text-align:center;vertical-align:middle}.snu-generic-table-container .snu-generic-table .snu-generic-table-cell.snu-generic-table-action-cell .snu-generic-table-action-btn{zoom:1.3;background:transparent;border:0;border:none;border-radius:4px;color:var(--snu-generic-table-text-color,#007393);cursor:pointer;padding:0}.snu-generic-table-container .snu-generic-table .snu-generic-table-cell.snu-generic-table-action-cell .snu-generic-table-action-btn:hover{background-color:rgba(var(--snu-generic-table-text-color,rgb(0,115,147)),.1)}.snu-generic-table-container .snu-generic-table .snu-generic-table-cell.snu-generic-table-score-cell{width:80px}.snu-generic-table-container .snu-generic-table .snu-generic-table-cell.snu-generic-table-score-cell .snu-generic-table-score{align-items:center;display:flex;gap:8px}.snu-generic-table-container .snu-generic-table .snu-generic-table-cell.snu-generic-table-trigger-cell{text-align:center;vertical-align:middle}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":host{box-sizing:border-box;font-family:var(--now-font-family,\\\"Source Sans Pro\\\",Arial,sans-serif);line-height:var(--now-line-height,1.25)}:host([hidden]){display:none}*,:after,:before{box-sizing:border-box}.snu-learning-card{align-items:flex-start;align-self:stretch;background-color:var(--now--nl-ec-white--color,#fff);border:1px solid var(--now--nl-ec-white--color,#fff);border-radius:12px;display:flex;flex:1 0 0;flex-direction:column;font-family:var(--now-font-family-gilroy);gap:8px;height:288px;padding:12px;position:relative;text-overflow:ellipsis;transform:translate(0);width:260px}.snu-learning-card .card-header{align-items:flex-start;display:flex;flex-direction:row;justify-content:space-between;min-height:44px;width:var(--now-card-header-width,100%)}.snu-learning-card .card-header .card-header-start-section{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:.25rem}.snu-learning-card .card-header .card-header-start-section .mandatory-tag{color:var(--now--nl-ld-course-card-mandatory-tag--color,red);font-family:var(--now-card-font-family,\\\"ServiceNow Sans\\\");font-size:.75rem;font-style:normal;font-weight:400;line-height:normal}.snu-learning-card .card-header span{display:inline-block}.snu-learning-card .card-header .card-menu{cursor:pointer}.snu-learning-card .card-title{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;color:var(--now--nl-ld-text-primary--color,#0a3639);display:-webkit-box;font-size:18px;font-style:normal;font-weight:700;height:60px;letter-spacing:-.27px;line-height:19.8px;overflow:hidden;text-overflow:ellipsis}.snu-learning-card .gs-card-title{-webkit-line-clamp:2;line-clamp:2;height:40px;margin-top:-8px}.snu-learning-card .unenrolled-title{margin-top:-8px}.snu-learning-card .course-with-due-date{-webkit-line-clamp:2;-webkit-box-orient:vertical;height:39px;margin-bottom:.5rem}.snu-learning-card .card-type{align-items:center;border-radius:4px;color:var(--now--nl-ld-text-primary-on-light-color,#1d1d1d);display:flex;flex-direction:row;font-size:12px;font-style:normal;font-weight:400;gap:4px;height:20px;justify-content:center;line-height:normal;padding:0 4px}.snu-learning-card .language-badge{background:var(--now--nl-ld-language-badge-background--color,#dbdbdb)!important;color:var(--now--nl-ld-language-badge-text--color,#1d1d1d)!important}.snu-learning-card .new-tag{background:var(--now--nl-ld-new-tag-background--color,#ff53e4)!important;color:var(--now--nl-ld-new-tag-text--color,#000)!important}.snu-learning-card .card-type-lable{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.snu-learning-card .pills-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:4px;height:40px;overflow:hidden}.snu-learning-card .pills-container .pill{align-items:center;background-color:var(--now--nl-ld-background-pill--color,#e8eaea);border-radius:12px;display:flex;font-size:12px;height:16px;justify-content:center;max-width:222px;min-width:0;overflow:hidden;padding:0 4px}.snu-learning-card .pills-container .pill .pill-text{display:block;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.snu-learning-card .now-progress-bar{height:8px}.snu-learning-card .due-date-and-progress-bar-wrapper{align-content:end;flex-grow:1;width:100%}.snu-learning-card .due-date-and-progress-bar-wrapper .due-date-and-progress-bar-inner-wrapper{display:flex;flex-direction:column;row-gap:.5rem}.snu-learning-card .due-date-and-progress-bar-wrapper .due-date-and-progress-bar-inner-wrapper .due-date-wrapper{column-gap:.25rem;display:flex;flex-direction:row}.snu-learning-card .due-date-and-progress-bar-wrapper .due-date-and-progress-bar-inner-wrapper .due-date-wrapper .due-date{color:var(--now--nl-ld-text-primary-on-light-color,#1d1d1d);font-family:var(--now-card-font-family,\\\"ServiceNow Sans\\\");font-size:.75rem;font-style:normal;font-weight:700;line-height:normal}.snu-learning-card .progressbar-wrapper{align-content:end;flex-grow:1;width:100%}.snu-learning-card .progress-bar-label-container{display:flex;flex-direction:column}.snu-learning-card .progress-bar-label-container .progress-bar-label-modules{color:var(--now--nl-ld-text-primary-on-light-color,#1d1d1d);font-size:12px;font-style:normal;font-weight:500}.snu-learning-card .progress-bar-label-container .progress-bar-label{color:var(--now--nl-black--color,#000);font-family:var(--now-font-family-gilroy);font-size:18px;font-style:normal;font-weight:700;letter-spacing:-.27px;overflow:hidden;white-space:nowrap}.snu-learning-card .enrolled-section{display:flex;flex-direction:column;gap:4px;justify-content:flex-end;padding-bottom:4px;width:100%}.snu-learning-card .unenrolled-section{height:130px;margin-inline-start:-13px;margin-bottom:4px;margin-top:-13px;width:calc(100% + 26px)}.snu-learning-card .unenrolled-section img{border:1px;border-radius:12px 12px 0 0;max-height:135px;object-fit:cover;object-position:center;width:100%}.snu-learning-card .unenrolled-section .unenrolled-section-image{border:1px;border-radius:12px 12px 0 0;height:135px;object-fit:cover;object-position:center;width:100%}.snu-learning-card .unenrolled-section .recommendation-image-bg-color{background-color:var(--now--nl-card-achievement-img-bg--color,#013e5c)}.snu-learning-card .footer{align-self:var(--now-card-footer-align-self,flex-end);display:flex;flex-direction:row;font-size:12px;justify-content:space-between;margin-top:auto;width:var(--now-card-footer-width,99%)}.snu-learning-card .footer.gs-footer{align-items:flex-end;margin-top:-5px}.snu-learning-card .footer.gs-footer .footer-left-section{align-items:flex-start;display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.snu-learning-card .footer.gs-footer .footer-left-section .footer-duration{color:var(--now--nl-ld-text-primary-on-light-color,#1d1d1d);font-family:var(--now-font-family-gilroy);font-size:12px;font-style:normal;font-weight:400;line-height:normal}.snu-learning-card .footer.gs-footer .footer-left-section .mark-as-complete-button{align-items:center;background:none;border:none;color:var(--now--nl-ld-text-primary-on-light-color,#1d1d1d);cursor:pointer;display:flex;font-family:var(--now-font-family-gilroy);font-size:12px;font-style:normal;font-weight:600;gap:4px;line-height:normal;outline:none;padding:0}.snu-learning-card .footer.gs-footer .footer-left-section .mark-as-complete-button:hover{color:var(--now-card-footer-button--color--hover,#517285)}.snu-learning-card .footer.gs-footer .footer-left-section .completed-indicator{align-items:center;color:var(--now--nl-ld-text-primary-on-light-color,#1d1d1d);display:flex;gap:4px}.snu-learning-card .footer.gs-footer .footer-left-section .completed-indicator .completed-text{font-family:var(--now-font-family-gilroy);font-size:12px;font-style:normal;font-weight:700;line-height:normal}.snu-learning-card .footer .footer-button{font-feature-settings:\\\"liga\\\" off,\\\"clig\\\" off;align-items:center;background:none;border:none;color:var(--now--nl-ld-text-primary-on-light-color,#1d1d1d);cursor:pointer;display:flex;font-family:var(--now-font-family-gilroy);font-size:12px;font-style:normal;font-weight:600;gap:3px;justify-content:center;line-height:1;outline:none}.snu-learning-card .footer .footer-button:hover{color:var(--now-card-footer-button--color--hover,#517285)}.snu-learning-card .footer .footer-time{align-items:center;color:var(--now--nl-ld-text-primary-on-light-color,#1d1d1d);display:flex;flex:1;gap:4px;justify-content:center;min-width:0}.snu-learning-card .footer .footer-time span{display:block;flex:1}.snu-learning-card .footer .footer-timer-text{font-family:var(--now-font-family-gilroy);font-size:12px;font-style:normal;font-weight:400;line-height:normal;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.snu-learning-card .footer-completed{align-items:center;display:flex;flex:1;flex-direction:row;font-size:12px;gap:4px;justify-content:center;margin-top:auto;min-width:0}.snu-learning-card .footer-completed span{display:block}.snu-learning-card .footer-completed .completed-date{flex:1;font-family:var(--now-font-family-gilroy);font-size:12px;font-style:normal;font-weight:700;line-height:normal;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.snu-learning-card .flex-bars{background:var(--now--nl-black--color,#000);border-radius:8px;display:flex;flex-direction:row;flex-wrap:nowrap;gap:2px;inline-size:100%;padding:2px;width:100%}.snu-learning-card .width-100p{width:100%}.snu-learning-card .badge_image{align-items:flex-end;display:flex;justify-content:flex-end}.snu-learning-card .badge_image .badge_container{flex-shrink:0;height:72px;object-fit:contain;width:72px}.snu-learning-card.vertical{height:295px}.snu-learning-card.vertical .card-title-image-container{display:flex;flex-direction:column;flex-grow:1;position:relative;width:100%}.snu-learning-card.vertical .card-title-image-container .badge_image{bottom:0;inset-inline-end:0;position:absolute}.snu-learning-card.vertical .card-title-image-container.has-badge .pills-container{width:calc(100% - 80px)}.snu-learning-card.horizontal{height:170px}.snu-learning-card.horizontal .card-title-image-container{align-items:center;display:flex;flex-direction:row}.snu-learning-card.career-journey{align-items:flex-start;border:none;border-radius:var(--now--nl-ld-career-journey-border-radius,19.2px);font-family:var(--now-card-font-family,\\\"ServiceNow Sans\\\");height:var(--now--nl-ld-career-journey-height,310px);padding-bottom:var(--now--nl-ld-career-journey-padding-bottom,24.75px)}.snu-learning-card.career-journey .card-header{min-height:auto}.snu-learning-card.career-journey .card-header .card-type{border-radius:var(--now--nl-ld-career-journey-tag-border-radius,4px);color:var(--now--nl-ld-career-journey-tag-text--color,#1d1d1d);font-family:var(--now-card-font-family,\\\"ServiceNow Sans\\\");font-weight:300}.snu-learning-card.career-journey .career-journey-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--now--nl-ld-career-journey-text--color,#0a2737);display:-webkit-box;font-family:var(--now-card-font-family,\\\"ServiceNow Sans\\\");font-size:var(--now--nl-ld-career-journey-title-font-size,18px);font-weight:700;line-height:var(--now--nl-ld-career-journey-title-line-height,19px);max-height:60px;overflow:hidden;text-overflow:ellipsis;width:100%}.snu-learning-card.career-journey .career-journey-content{display:flex;flex-grow:1;width:100%}.snu-learning-card.career-journey .career-journey-description{-webkit-line-clamp:9;-webkit-box-orient:vertical;color:var(--now--nl-ld-career-journey-text--color,#0a2737);display:-webkit-box;flex:1;font-family:var(--now-card-font-family,\\\"ServiceNow Sans\\\");font-size:var(--now--nl-ld-career-journey-description-font-size,12px);font-weight:400;line-height:var(--now--nl-ld-career-journey-description-line-height,16.25px);max-height:145px;min-width:0;overflow:hidden;padding-inline-end:5px}.snu-learning-card.career-journey .career-journey-badge{align-self:flex-start;flex-shrink:0}.snu-learning-card.career-journey .career-journey-badge-image{height:var(--now--nl-ld-career-journey-badge-height,72px);object-fit:contain;width:var(--now--nl-ld-career-journey-badge-width,60px)}.snu-learning-card.career-journey .footer{justify-content:flex-end}.snu-learning-card.career-journey .footer .footer-time{display:none}.snu-learning-card.career-journey .footer .footer-button{color:var(--now--nl-ld-career-journey-text--color,#0a2737);font-family:var(--now-card-font-family,\\\"ServiceNow Sans\\\");font-size:var(--now--nl-ld-career-journey-description-font-size,12px);font-weight:400;line-height:var(--now--nl-ld-career-journey-description-line-height,16.25px)}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":host{box-sizing:border-box;font-family:var(--now-font-family,\\\"Source Sans Pro\\\",Arial,sans-serif);line-height:var(--now-line-height,1.25)}:host([hidden]){display:none}*,:after,:before{box-sizing:border-box}.snu-typeahead-container{--now-card--scale-size:0.6;--snu-typeahead-card-search-input-background-color:var( --snu-typeahead-input-background-color,0,0,0 );--now-input--border-color--focus:var( --snu-typeahead-card-search-input-background-color );--now-input--border-color--hover:var( --snu-typeahead-card-search-input-background-color );--now-input_inset--color--invalid:var( --snu-typeahead-card-search-input-background-color );--now-input--background-color--invalid:var( --snu-typeahead-card-search-input-background-color );--now-input--border-color--invalid:var( --snu-typeahead-card-search-input-background-color );--now-input--background-color--invalid_hover:var( --snu-typeahead-card-search-input-background-color );--now-input--border-color--invalid_hover:var( --snu-typeahead-card-search-input-background-color );--now-input--background-color--invalid_focus:var( --snu-typeahead-card-search-input-background-color );--now-input--border-color--invalid_focus:var( --snu-typeahead-card-search-input-background-color );--now-input--border-color:var( --snu-typeahead-card-search-input-background-color );--now-input--background-color:var( --snu-typeahead-card-search-input-background-color );--now-input--background-color--hover:var( --snu-typeahead-card-search-input-background-color );--now-input--background-color--focus:var( --snu-typeahead-card-search-input-background-color );--now-input--color:var(--snu-typeahead-card-search-input-font-color);--now-input_inset--color:var( --snu-typeahead-card-search-input-background-color );--now-color_border--primary:var( --snu-typeahead-card-search-input-background-color );--now-input--border-block-end-width:0;position:relative}.snu-typeahead-container .selected-card-item-container .selected-card-item{background-color:var(--snu-typeahead-card-search-selected-card-background,#fff);border:var(--snu-typeahead-card-search-selected-card-border,1px solid #000);border-radius:6px;cursor:pointer;display:flex;flex-direction:row;gap:5px;padding:10px}.snu-typeahead-container .selected-card-item-container .selected-card-item .selected-card-data{display:flex;flex:1;flex-direction:column;gap:5px}.snu-typeahead-container .selected-card-item-container .selected-card-item .selected-card-data .selected-label{font-size:var(--snu-typeahead-search-primary-font-size,16px);font-weight:var(--snu-typeahead-search-primary-font-weight,700)}.snu-typeahead-container .selected-card-item-container .selected-card-item .selected-card-data .selected-sublabel{font-size:var(--snu-typeahead-search-secondary-font-size,14px);font-weight:var(--snu-typeahead-search-secondary-font-weight,400)}.snu-typeahead-container .selected-card-item-container .selected-card-item .open-dropdown-icon{align-items:center;display:flex;justify-content:center;width:20px}.snu-typeahead-container .typeahead-search-container{background-color:var(--snu-typeahead-search-tray-container-background,rgba(0,0,0,.7));border-radius:7px;bottom:calc(var(--snu-typeahead-search-container-max-height, 400px)*-1 - 6px);display:flex;flex-direction:column;height:0;margin-top:6px;overflow:hidden;position:absolute;width:100%;z-index:2000}.snu-typeahead-container .typeahead-search-container.expanded{height:var(--snu-typeahead-search-container-max-height,400px)}.snu-typeahead-container .typeahead-search-container .typeahead-search-item{padding:10px 10px 0 10px}.snu-typeahead-container .typeahead-search-container .typeahead-search-item now-icon,.snu-typeahead-container .typeahead-search-container .typeahead-search-item now-loader{zoom:1.2;align-items:center;color:var(--snu-typeahead-card-search-input-font-color,hsla(0,0%,100%,.7));display:flex;justify-content:center}.snu-typeahead-container .typeahead-search-container .typeahead-search-item .typeahead-search-field{align-items:center;background-color:rgb(var(--now-input--background-color));border-radius:6px;color:var(--snu-typeahead-card-search-input-font-color,hsla(0,0%,100%,.7));display:flex;padding:10px}.snu-typeahead-container .typeahead-search-container .typeahead-search-item .typeahead-search-field .typeahead-input{margin:0;width:100%}.snu-typeahead-container .typeahead-search-container .typeahead-card-list{border-radius:7px;flex:1;overflow-y:auto}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-list-items{display:flex;flex-direction:column;gap:5px;list-style:none;margin:0;padding:10px 10px 10px 10px}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-list-items .typeahead-card-list-item{border:var(--snu-typeahead-card-search-card-border,none);border-radius:6px;overflow:hidden}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item{background:inherit;border:0;box-shadow:none;cursor:pointer;display:flex;flex-direction:row;gap:5px;padding:10px 10px 10px 5px;text-align:left;text-decoration:none;width:100%}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item .typeahead-card-icon{align-items:center;display:flex;justify-content:center;width:20px}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item .typeahead-card-label{color:var(--snu-typeahead-search-card-font-color-primary,#fff);font-size:var(--snu-typeahead-search-primary-font-size,16px);font-weight:var(--snu-typeahead-search-primary-font-weight,700)}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item .typeahead-card-sublabel{color:var(--snu-typeahead-search-card-font-color-secondary,hsla(0,0%,100%,.7));font-size:var(--snu-typeahead-search-secondary-font-size,14px);font-weight:var(--snu-typeahead-search-secondary-font-weight,400)}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item.selected{background-color:var(--snu-typeahead-search-card-selected-background-color,transparent)}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item.selected .typeahead-card-label,.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item.selected now-icon{color:var(--snu-typeahead-search-card-selected-font-color-primary,#fff)}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item.selected .typeahead-card-sublabel{color:var(--snu-typeahead-search-card-selected-font-color-secondary,hsla(0,0%,100%,.7))}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item .typeahead-card-content{display:flex;flex:1;flex-direction:column}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item .typeahead-card-content .highlight{background-color:var(--snu-typeahead-search-card-highlight-background-color,#ff0);border-radius:2px;color:var(--snu-typeahead-search-card-highlight-font-color,#000)}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item:focus-visible{background-color:var(--snu-typeahead-search-card-focus-background-color,rgba(0,0,0,.3));outline:none}.snu-typeahead-container .typeahead-search-container .typeahead-card-list .typeahead-card-item:hover{background-color:var(--snu-typeahead-search-card-hover-background-color,rgba(0,0,0,.5));outline:none}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\n        var result = require(\"!!../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!../../../../../node_modules/.pnpm/postcss-loader@7.0.1_postcss@8.4.31_webpack@5.95.0/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!../../../../../node_modules/.pnpm/resolve-url-loader@5.0.0/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[2].use[3]!../../../../../node_modules/.pnpm/sass-loader@13.0.2_sass@1.53.0_webpack@5.95.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[4]!./sn-nl-explore-catalog.scss\");\n\n        if (result && result.__esModule) {\n            result = result.default;\n        }\n\n        if (typeof result === \"string\") {\n            module.exports = result;\n        } else {\n            module.exports = result.toString();\n        }\n    ","\n        var result = require(\"!!../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!../../../../../node_modules/.pnpm/postcss-loader@7.0.1_postcss@8.4.31_webpack@5.95.0/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!../../../../../node_modules/.pnpm/resolve-url-loader@5.0.0/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[2].use[3]!../../../../../node_modules/.pnpm/sass-loader@13.0.2_sass@1.53.0_webpack@5.95.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[4]!./styles.scss\");\n\n        if (result && result.__esModule) {\n            result = result.default;\n        }\n\n        if (typeof result === \"string\") {\n            module.exports = result;\n        } else {\n            module.exports = result.toString();\n        }\n    ","\n        var result = require(\"!!../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!../../../../../node_modules/.pnpm/postcss-loader@7.0.1_postcss@8.4.31_webpack@5.95.0/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!../../../../../node_modules/.pnpm/resolve-url-loader@5.0.0/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[2].use[3]!../../../../../node_modules/.pnpm/sass-loader@13.0.2_sass@1.53.0_webpack@5.95.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[4]!./styles.scss\");\n\n        if (result && result.__esModule) {\n            result = result.default;\n        }\n\n        if (typeof result === \"string\") {\n            module.exports = result;\n        } else {\n            module.exports = result.toString();\n        }\n    ","\n        var result = require(\"!!../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!../../../../../node_modules/.pnpm/postcss-loader@7.0.1_postcss@8.4.31_webpack@5.95.0/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!../../../../../node_modules/.pnpm/resolve-url-loader@5.0.0/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[2].use[3]!../../../../../node_modules/.pnpm/sass-loader@13.0.2_sass@1.53.0_webpack@5.95.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[4]!./style.scss\");\n\n        if (result && result.__esModule) {\n            result = result.default;\n        }\n\n        if (typeof result === \"string\") {\n            module.exports = result;\n        } else {\n            module.exports = result.toString();\n        }\n    ","\n        var result = require(\"!!../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!../../../../../node_modules/.pnpm/postcss-loader@7.0.1_postcss@8.4.31_webpack@5.95.0/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!../../../../../node_modules/.pnpm/resolve-url-loader@5.0.0/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[2].use[3]!../../../../../node_modules/.pnpm/sass-loader@13.0.2_sass@1.53.0_webpack@5.95.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[4]!./style.scss\");\n\n        if (result && result.__esModule) {\n            result = result.default;\n        }\n\n        if (typeof result === \"string\") {\n            module.exports = result;\n        } else {\n            module.exports = result.toString();\n        }\n    ","\n        var result = require(\"!!../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!../../../../../node_modules/.pnpm/postcss-loader@7.0.1_postcss@8.4.31_webpack@5.95.0/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!../../../../../node_modules/.pnpm/resolve-url-loader@5.0.0/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[2].use[3]!../../../../../node_modules/.pnpm/sass-loader@13.0.2_sass@1.53.0_webpack@5.95.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[4]!./styles.scss\");\n\n        if (result && result.__esModule) {\n            result = result.default;\n        }\n\n        if (typeof result === \"string\") {\n            module.exports = result;\n        } else {\n            module.exports = result.toString();\n        }\n    ","\n        var result = require(\"!!../../../../../node_modules/.pnpm/css-loader@6.7.1_webpack@5.95.0/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!../../../../../node_modules/.pnpm/postcss-loader@7.0.1_postcss@8.4.31_webpack@5.95.0/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!../../../../../node_modules/.pnpm/resolve-url-loader@5.0.0/node_modules/resolve-url-loader/index.js??ruleSet[1].rules[2].use[3]!../../../../../node_modules/.pnpm/sass-loader@13.0.2_sass@1.53.0_webpack@5.95.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[4]!./style.scss\");\n\n        if (result && result.__esModule) {\n            result = result.default;\n        }\n\n        if (typeof result === \"string\") {\n            module.exports = result;\n        } else {\n            module.exports = result.toString();\n        }\n    ","function _extends() {\n  return module.exports = _extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports, _extends.apply(null, arguments);\n}\nmodule.exports = _extends, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"actionTypes\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__.__esModule\n\t\t\t\t\tif (cjsModule && 'actionTypes' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"].actionTypes;\n\t\t\t\t\t} else if ('actionTypes' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__.actionTypes || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"].actionTypes;\n\t\t\t\t}, [\"createCustomElement\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__.__esModule\n\t\t\t\t\tif (cjsModule && 'createCustomElement' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"].createCustomElement;\n\t\t\t\t\t} else if ('createCustomElement' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__.createCustomElement || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__[\"default\"].createCustomElement;\n\t\t\t\t} });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"Fragment\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__.__esModule\n\t\t\t\t\tif (cjsModule && 'Fragment' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"].Fragment;\n\t\t\t\t\t} else if ('Fragment' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__.Fragment || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"].Fragment;\n\t\t\t\t}, [\"createElement\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__.__esModule\n\t\t\t\t\tif (cjsModule && 'createElement' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"].createElement;\n\t\t\t\t\t} else if ('createElement' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__.createElement || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"].createElement;\n\t\t\t\t}, [\"createRef\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__.__esModule\n\t\t\t\t\tif (cjsModule && 'createRef' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"].createRef;\n\t\t\t\t\t} else if ('createRef' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__.createRef || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"].createRef;\n\t\t\t\t}, [\"default\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__.__esModule\n\t\t\t\t\tif (cjsModule && 'default' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"];\n\t\t\t\t\t} else if ('default' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__[\"default\"][\"default\"];\n\t\t\t\t} });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__.__esModule\n\t\t\t\t\tif (cjsModule && 'default' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"][\"default\"];\n\t\t\t\t\t} else if ('default' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"] || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_27_0_28_index_jsdbx_e8b4e500__[\"default\"][\"default\"];\n\t\t\t\t} });","export const parseJSON = (data) =>\n\ttypeof data === 'string' ? JSON.parse(data) : data;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({  });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({  });","export const status = {\n\tenrolled: 'enrolled',\n\tcompleted: 'completed',\n\tunenrolled: 'unenrolled'\n};\n\nexport const cardType = {\n\tcourse: 'course',\n\tpath: 'path',\n\tpowerSkill: 'powerSkill',\n\tilt: 'ilt',\n\tachievement: 'achievement',\n\tguidedSimulation: 'guidedSimulation',\n\tassessment: 'assessment',\n\tcareerJourney: 'careerJourney',\n\trecommendationAchievement: 'recommendationAchievement',\n\tgetStarted: 'getStarted'\n};\n\nexport const cardSubType = {\n\tgetStarted: {\n\t\tlink: 'link',\n\t\tvideo: 'video',\n\t\tcourse: 'course',\n\t\tsurvey: 'survey',\n\t\tskill: 'skill',\n\t\ttour: 'tour'\n\t}\n};\n\nexport const displayType = {\n\tvertical: 'vertical',\n\thorizontal: 'horizontal'\n};\n\nexport const deliveryEnvironment = {\n\tintrepid: 'intrepid'\n};\n\nexport const cardIconMap = {\n\tcourse: 'book-open-outline',\n\tpath: 'catalog-builder-outline',\n\tpowerSkill: 'star-outline',\n\tilt: 'laptop-check-user-outline', // user-group-outline\n\tachievement: 'document-certificate-outline',\n\taiPath: 'ai-sparkle-fill',\n\tguidedSimulation: 'laptop-outline',\n\tassessment: 'pencil-outline',\n\tcareerJourney: 'map-outline',\n\tgetStarted: {\n\t\tlink: 'link-outline',\n\t\tvideo: 'video-outline',\n\t\tcourse: 'book-open-outline',\n\t\tsurvey: 'clipboard-check-outline',\n\t\tskill: 'star-outline',\n\t\ttour: 'tree-flow-outline'\n\t}\n};\n\nexport const cardColorMap = {\n\tcourse: '#52B8FF',\n\tpath: '#BF71F2',\n\tpowerSkill: '#43BEC7',\n\tilt: '#FF53E4',\n\tachievement: '#52B8FF',\n\taiPath: '#63DF4E',\n\tguidedSimulation: '#FCA822',\n\tassessment: '#FCA822',\n\tcareerJourney: '#BF71F2',\n\trecommendationAchievement: '#DEFFD9',\n\tgetStarted: {\n\t\tlink: '#E8FF59',\n\t\tvideo: '#FFBC39',\n\t\tcourse: '#52B8FF',\n\t\tsurvey: '#52B8FF',\n\t\tskill: '#43BEC7',\n\t\ttour: '#FF53E4'\n\t}\n};\n\nexport const dueDateLevelColorMap = {\n\thigh: '#FB7785',\n\tmedium: '#FCA822'\n};\n\nexport const cardBackgroundMap = {\n\tcourse: '#C2E6FF',\n\tpath: '#E6DBFF',\n\tpowerSkill: '#C6F7F5',\n\tachievement: '#C2E6FF',\n\tilt: '#C2E6FF',\n\tguidedSimulation: '#FFF5E6',\n\tassessment: '#FFF5E6',\n\tcareerJourney: '#FFFFFF',\n\trecommendationAchievement: '#B0E1CF',\n\tgetStarted: {\n\t\tlink: '#FFFFCC',\n\t\tvideo: '#FFEDD9',\n\t\tcourse: '#C2E6FF',\n\t\tsurvey: '#C2E6FF',\n\t\tskill: '#C6F7F5',\n\t\ttour: '#FFD4F9'\n\t}\n};\n\nexport const cardTypeTitleClassMap = {\n\tgetStarted: 'gs-card-title'\n};\n\nexport const RESUME = 'Resume';\n\nexport const VIEW = 'View';\n\n// RTL support configuration for icons\nexport const iconRtlMap = {\n\t'circle-chevron-right-outline': true,\n\t'chevron-right': true,\n\t'arrow-right': true,\n\t'arrow-left': true,\n\t'clock-outline': false,\n\t'circle-check-fill': false,\n\t'exclamation-triangle-fill': false,\n\t'book-open-outline': false,\n\t'catalog-builder-outline': false,\n\t'star-outline': false,\n\t'laptop-check-user-outline': false,\n\t'document-certificate-outline': false,\n\t'ai-sparkle-fill': false,\n\t'laptop-outline': false,\n\t'branch-fork-outline': false,\n\t'compass-outline': false,\n\t'fire-outline': false,\n\t'pencil-outline': false\n};\n\n// Helper function to get RTL support for icons\nexport const getIconRtlSupport = (iconName) => {\n\treturn iconRtlMap[iconName] || false;\n};\n\n// RTL support for images\nexport const IMAGE_RTL_SUPPORT = false;\n\nconst createCardPropertyGetter = (configMap) => (type, subType) => {\n\tif (cardSubType[type] && cardSubType[type][subType]) {\n\t\treturn configMap[type][subType];\n\t}\n\treturn configMap[type];\n};\n\nexport const getCardIcon = createCardPropertyGetter(cardIconMap);\nexport const getCardColor = createCardPropertyGetter(cardColorMap);\nexport const getCardBackground = createCardPropertyGetter(cardBackgroundMap);\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"t\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__.__esModule\n\t\t\t\t\tif (cjsModule && 't' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__[\"default\"].t;\n\t\t\t\t\t} else if ('t' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__.t || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_sn_translate_index_jsdbx_813c3733__[\"default\"].t;\n\t\t\t\t} });","import '@servicenow/now-icon';\nimport '@servicenow/now-tooltip';\nimport {Fragment} from '@servicenow/ui-renderer-snabbdom';\nimport {\n\tgetCardColor,\n\tgetCardIcon,\n\tgetIconRtlSupport\n} from '../../snu-learning-card/constants';\nimport {t} from 'sn-translate';\n\nconst CardType = ({\n\ttype,\n\tsubType,\n\tcardTypeTag,\n\tmandatoryText,\n\tadditionalType,\n\tadditionalTypeTag,\n\tlanguage,\n\tsetTargetRef,\n\tlanguageRef,\n\tisNew\n}) => {\n\treturn (\n\t\t<div className=\"card-header\">\n\t\t\t<div className=\"card-header-start-section\">\n\t\t\t\t{isNew && (\n\t\t\t\t\t<div className=\"card-type new-tag\">\n\t\t\t\t\t\t<now-icon\n\t\t\t\t\t\t\ticon=\"fire-outline\"\n\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\tsupportRtl={getIconRtlSupport('fire-outline')}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span className=\"card-type-lable\">\n\t\t\t\t\t\t\t{t('snu-learning-card:new')}\n\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/div>\n\t\t\t\t)}\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"card-type\"\n\t\t\t\t\tstyle={{background: getCardColor(type, subType)}}>\n\t\t\t\t\t<now-icon\n\t\t\t\t\t\ticon={getCardIcon(type, subType)}\n\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\tsupportRtl={getIconRtlSupport(getCardIcon(type, subType))}\n\t\t\t\t\t/>\n\t\t\t\t\t<span className=\"card-type-lable\">{t(cardTypeTag)}<\/span>\n\t\t\t\t<\/div>\n\t\t\t\t{language && language.code && (\n\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName=\"card-type language-badge\"\n\t\t\t\t\t\t\thook-insert={({elm}) => setTargetRef('languageRef', elm)}\n\t\t\t\t\t\t\thook-destroy={() => setTargetRef('languageRef', null)}>\n\t\t\t\t\t\t\t<now-icon\n\t\t\t\t\t\t\t\ticon=\"globe-outline\"\n\t\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\t\tsupportRtl={getIconRtlSupport('globe-outline')}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<span className=\"card-type-lable\">{language.code}<\/span>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<now-tooltip\n\t\t\t\t\t\t\ttarget-ref={languageRef}\n\t\t\t\t\t\t\tcontent={language.code_dv || language.code}\n\t\t\t\t\t\t/>\n\t\t\t\t\t<\/Fragment>\n\t\t\t\t)}\n\t\t\t\t{additionalType && additionalTypeTag && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"card-type\"\n\t\t\t\t\t\tstyle={{background: getCardColor(additionalType)}}>\n\t\t\t\t\t\t<now-icon\n\t\t\t\t\t\t\ticon={getCardIcon(additionalType)}\n\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\tsupportRtl={getIconRtlSupport(getCardIcon(additionalType))}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span className=\"card-type-lable\">{t(additionalTypeTag)}<\/span>\n\t\t\t\t\t<\/div>\n\t\t\t\t)}\n\t\t\t\t{mandatoryText && (\n\t\t\t\t\t<span className=\"mandatory-tag\">{mandatoryText}<\/span>\n\t\t\t\t)}\n\t\t\t<\/div>\n\t\t\t<div on-click={(e) => e.stopPropagation()}>\n\t\t\t\t<slot name=\"menu\" />\n\t\t\t<\/div>\n\t\t<\/div>\n\t);\n};\n\nexport default CardType;\n","import {t} from 'sn-translate';\n\n/**\n * Internationalized messages for the learning card component\n * Using standardized keys with failsafe defaults\n */\nexport const i18nMessages = {\n\t// Status labels\n\tenrolled: () => t('snu-learning-card:enrolled'),\n\tcompleted: () => t('snu-learning-card:completed'),\n\tinProgress: () => t('snu-learning-card:in_progress'),\n\tnotStarted: () => t('snu-learning-card:not_started'),\n\n\t// Button labels\n\tenroll: () => t('snu-learning-card:enroll'),\n\tlaunch: () => t('snu-learning-card:launch'),\n\tcontinue: () => t('snu-learning-card:continue'),\n\tresume: () => t('snu-learning-card:resume'),\n\tview: () => t('snu-learning-card:view'),\n\tviewCertificate: () => t('snu-learning-card:view_certificate'),\n\tmarkAsComplete: () => t('snu-learning-card:mark_as_complete'),\n\n\t// Card information\n\tduration: (value) => t('snu-learning-card:duration', value),\n\tdueDate: (date) => t('snu-learning-card:due_date', date),\n\trating: (value) => t('snu-learning-card:rating', value),\n\tleft: () => t('snu-learning-card:left'),\n\n\t// Progress indicators\n\tprogressPercentage: (value) =>\n\t\tt('snu-learning-card:progress_percentage', value),\n\tmoduleProgress: (current, total) =>\n\t\tt('snu-learning-card:module_x_of_y', current, total),\n\tcompletedItems: (completed, total) =>\n\t\tt('snu-learning-card:completed_items', completed, total),\n\n\t// Accessibility\n\tcardDescription: () => t('snu-learning-card:card_description'),\n\tenrollmentStatus: (status) =>\n\t\tt('snu-learning-card:enrollment_status', status),\n\n\t// Badge labels\n\tnewTag: () => t('snu-learning-card:new'),\n\n\t// Error messages\n\tloadError: () => t('snu-learning-card:load_error'),\n\tenrollError: () => t('snu-learning-card:enroll_error')\n};\n","import {t} from 'sn-translate';\nimport {status as LEARNER_STATUS} from '../constants';\nimport {i18nMessages} from '../utils';\n\nexport const getFooterText = ({remainingTime, status}) => {\n\tif (status === LEARNER_STATUS.enrolled && remainingTime)\n\t\treturn `${remainingTime || ''} ${i18nMessages.left()}`;\n\telse return remainingTime || '';\n};\n\nexport const getButtonLabel = (status, labelText) => {\n\tif (labelText && labelText.trim()) return t(labelText);\n\treturn status === LEARNER_STATUS.enrolled\n\t\t? i18nMessages.resume()\n\t\t: i18nMessages.view();\n};\n","import {getIconRtlSupport} from '../constants';\nimport {getButtonLabel} from './utils';\n\nconst FooterButton = ({status, ctaButtonLabel, dispatch, iconSize = 'md'}) => (\n\t<button\n\t\tclassName=\"footer-button\"\n\t\ton-click={(e) => {\n\t\t\te.stopPropagation();\n\t\t\tdispatch(({properties}) => ({\n\t\t\t\ttype: 'RESUME#CLICKED',\n\t\t\t\tpayload: {\n\t\t\t\t\ttype: properties.type,\n\t\t\t\t\tstatus: properties.status,\n\t\t\t\t\ttitle: properties.title\n\t\t\t\t},\n\t\t\t\tshouldDispatch: !properties.disabled\n\t\t\t}));\n\t\t}}>\n\t\t{getButtonLabel(status, ctaButtonLabel)}{' '}\n\t\t<now-icon\n\t\t\ticon=\"circle-chevron-right-outline\"\n\t\t\tsize={iconSize}\n\t\t\tsupportRtl={getIconRtlSupport('circle-chevron-right-outline')}\n\t\t/>\n\t<\/button>\n);\n\nexport default FooterButton;\n","import {getIconRtlSupport} from '../constants';\nimport {i18nMessages} from '../utils';\n\nconst MarkAsCompleteButton = ({dispatch}) => (\n\t<button\n\t\tclassName=\"mark-as-complete-button\"\n\t\ton-click={(e) => {\n\t\t\te.stopPropagation();\n\t\t\tdispatch(({properties}) => ({\n\t\t\t\ttype: 'MARK_AS_COMPLETE#CLICKED',\n\t\t\t\tpayload: {\n\t\t\t\t\ttype: properties.type,\n\t\t\t\t\ttitle: properties.title\n\t\t\t\t},\n\t\t\t\tshouldDispatch: !properties.disabled\n\t\t\t}));\n\t\t}}>\n\t\t<now-icon\n\t\t\ticon=\"check-circle-outline\"\n\t\t\tsize=\"sm\"\n\t\t\tsupportRtl={getIconRtlSupport('check-circle-outline')}\n\t\t/>\n\t\t{i18nMessages.markAsComplete()}\n\t<\/button>\n);\n\nexport default MarkAsCompleteButton;\n","import {getIconRtlSupport} from '../constants';\nimport {i18nMessages} from '../utils';\n\nconst CompletedIndicator = () => (\n\t<div className=\"completed-indicator\">\n\t\t<now-icon\n\t\t\ticon=\"circle-check-fill\"\n\t\t\tsize=\"sm\"\n\t\t\tsupportRtl={getIconRtlSupport('circle-check-fill')}\n\t\t/>\n\t\t<span className=\"completed-text\">{i18nMessages.completed()}<\/span>\n\t<\/div>\n);\n\nexport default CompletedIndicator;\n","import FooterButton from './FooterButton';\nimport MarkAsCompleteButton from './MarkAsCompleteButton';\nimport CompletedIndicator from './CompletedIndicator';\nimport {status as LEARNER_STATUS, getIconRtlSupport} from '../constants';\n\nconst GetStartedCardFooter = ({\n\tstatus,\n\tremainingTime,\n\tshowMarkAsComplete,\n\tctaButtonLabel,\n\tdispatch\n}) => {\n\tconst isCompleted = status === LEARNER_STATUS.completed;\n\n\treturn (\n\t\t<div className=\"footer gs-footer\">\n\t\t\t<div className=\"footer-left-section\">\n\t\t\t\t{remainingTime && (\n\t\t\t\t\t<div className=\"footer-time\">\n\t\t\t\t\t\t{!showMarkAsComplete && !isCompleted && (\n\t\t\t\t\t\t\t<now-icon\n\t\t\t\t\t\t\t\ticon=\"clock-outline\"\n\t\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\t\tsupportRtl={getIconRtlSupport('clock-outline')}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<div className=\"footer-duration\">{remainingTime}<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t)}\n\t\t\t\t{showMarkAsComplete && !isCompleted && (\n\t\t\t\t\t<MarkAsCompleteButton dispatch={dispatch} />\n\t\t\t\t)}\n\t\t\t\t{isCompleted && <CompletedIndicator />}\n\t\t\t<\/div>\n\t\t\t<FooterButton\n\t\t\t\tstatus={status}\n\t\t\t\tctaButtonLabel={ctaButtonLabel}\n\t\t\t\tdispatch={dispatch}\n\t\t\t\ticonSize=\"sm\"\n\t\t\t/>\n\t\t<\/div>\n\t);\n};\n\nexport default GetStartedCardFooter;\n","import {Fragment} from '@servicenow/ui-renderer-snabbdom';\nimport '@servicenow/now-tooltip';\nimport {\n\tstatus as LEARNER_STATUS,\n\tcardType,\n\tgetIconRtlSupport\n} from '../constants';\nimport {getFooterText} from './utils';\nimport FooterButton from './FooterButton';\n\nconst CardFooter = ({\n\tstatus,\n\tremainingTime,\n\tcompletionTime,\n\tctaButtonLabel,\n\tdispatch,\n\ttype,\n\tsetTargetRef,\n\tfooterTimerRef,\n\tcompletedDateRef\n}) => {\n\tconst isCompleted = status === LEARNER_STATUS.completed;\n\n\tif (isCompleted) {\n\t\treturn (\n\t\t\t<div className=\"footer\">\n\t\t\t\t<div className=\"footer-completed\">\n\t\t\t\t\t{completionTime && (\n\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t<now-icon\n\t\t\t\t\t\t\t\ticon=\"circle-check-fill\"\n\t\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\t\tsupportRtl={getIconRtlSupport('circle-check-fill')}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tclassName=\"completed-date\"\n\t\t\t\t\t\t\t\thook-insert={({elm}) => setTargetRef('completedDateRef', elm)}\n\t\t\t\t\t\t\t\thook-destroy={() => setTargetRef('completedDateRef', null)}>\n\t\t\t\t\t\t\t\t{completionTime}\n\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t<now-tooltip\n\t\t\t\t\t\t\t\ttarget-ref={completedDateRef}\n\t\t\t\t\t\t\t\tcontent={completionTime}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t<\/Fragment>\n\t\t\t\t\t)}\n\t\t\t\t<\/div>\n\t\t\t\t{type !== cardType.achievement && (\n\t\t\t\t\t<FooterButton\n\t\t\t\t\t\tstatus={status}\n\t\t\t\t\t\tctaButtonLabel={ctaButtonLabel}\n\t\t\t\t\t\tdispatch={dispatch}\n\t\t\t\t\t\ticonSize=\"md\"\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t<\/div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div className=\"footer\">\n\t\t\t<div className=\"footer-time\">\n\t\t\t\t{remainingTime && (\n\t\t\t\t\t<now-icon\n\t\t\t\t\t\ticon=\"clock-outline\"\n\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\tsupportRtl={getIconRtlSupport('clock-outline')}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t<span\n\t\t\t\t\tclassName=\"footer-timer-text\"\n\t\t\t\t\thook-insert={({elm}) => setTargetRef('footerTimerRef', elm)}\n\t\t\t\t\thook-destroy={() => setTargetRef('footerTimerRef', null)}>\n\t\t\t\t\t{getFooterText({remainingTime, status})}\n\t\t\t\t<\/span>\n\t\t\t\t<now-tooltip\n\t\t\t\t\ttarget-ref={footerTimerRef}\n\t\t\t\t\tcontent={getFooterText({remainingTime, status})}\n\t\t\t\t/>\n\t\t\t<\/div>\n\n\t\t\t<FooterButton\n\t\t\t\tstatus={status}\n\t\t\t\tctaButtonLabel={ctaButtonLabel}\n\t\t\t\tdispatch={dispatch}\n\t\t\t\ticonSize=\"md\"\n\t\t\t/>\n\t\t<\/div>\n\t);\n};\n\nexport default CardFooter;\n","import GetStartedCardFooter from './GetStartedCardFooter';\nimport CardFooter from './CardFooter';\nimport {\n\tcardType as CARD_TYPE\n} from './../constants';\n\nconst Footer = ({\n\tstatus,\n\tremainingTime,\n\tcompletionTime,\n\tctaButtonLabel,\n\tdispatch,\n\ttype,\n\tsetTargetRef,\n\tfooterTimerRef,\n\tcompletedDateRef,\n\tshowMarkAsComplete\n}) => {\n\tif (type === CARD_TYPE.getStarted) {\n\t\treturn (\n\t\t\t<GetStartedCardFooter\n\t\t\t\tstatus={status}\n\t\t\t\tremainingTime={remainingTime}\n\t\t\t\tshowMarkAsComplete={showMarkAsComplete}\n\t\t\t\tctaButtonLabel={ctaButtonLabel}\n\t\t\t\tdispatch={dispatch}\n\t\t\t/>\n\t\t);\n\t}\n\t\n\treturn (\n\t\t<CardFooter\n\t\t\tstatus={status}\n\t\t\tremainingTime={remainingTime}\n\t\t\tcompletionTime={completionTime}\n\t\t\tctaButtonLabel={ctaButtonLabel}\n\t\t\tdispatch={dispatch}\n\t\t\ttype={type}\n\t\t\tsetTargetRef={setTargetRef}\n\t\t\tfooterTimerRef={footerTimerRef}\n\t\t\tcompletedDateRef={completedDateRef}\n\t\t/>\n\t);\n};\n\nexport default Footer;\n","import {\n\tstatus as LEARNER_STATUS,\n\tdisplayType as DISPLAY_TYPE\n} from '../constants';\n\nexport const createCardClickHandler = (properties, dispatch) => () => {\n\tdispatch(() => ({\n\t\ttype: 'CARD#CLICKED',\n\t\tpayload: {\n\t\t\ttype: properties.type,\n\t\t\tstatus: properties.status,\n\t\t\ttitle: properties.title\n\t\t},\n\t\tshouldDispatch: !properties.disabled\n\t}));\n};\n\nexport const shouldShowImage = (status, displayType) => {\n\treturn status === LEARNER_STATUS.unenrolled && displayType === DISPLAY_TYPE.vertical;\n};\n\nexport const shouldShowPills = (status, displayType) => {\n\treturn displayType === DISPLAY_TYPE.vertical && \n\t       status !== LEARNER_STATUS.unenrolled;\n};\n\nexport const shouldShowCompletedBadge = (status, imageURL) => {\n\treturn status === LEARNER_STATUS.completed && !!imageURL;\n};\n\nexport const hasBadgeClass = (status, imageURL) => {\n\treturn shouldShowCompletedBadge(status, imageURL) ? ' has-badge' : '';\n};\n","import CardType from '../../common/card-type';\nimport Footer from '../footer';\nimport {\n\tdisplayType as DISPLAY_TYPE,\n\tgetCardBackground,\n\tIMAGE_RTL_SUPPORT\n} from '../constants';\nimport {createCardClickHandler} from './base-card-renderer';\n\nconst CareerJourneyRenderer = (props) => {\n\tconst {\n\t\tproperties,\n\t\tdispatch,\n\t\tsetTargetRef,\n\t\tfooterTimerRef,\n\t\tcompletedDateRef\n\t} = props;\n\n\tconst {\n\t\ttype,\n\t\tsubType,\n\t\ttitle,\n\t\tdescription,\n\t\tstatus,\n\t\timageURL,\n\t\tcardTypeTag,\n\t\tremainingTime,\n\t\tcompletionTime,\n\t\ttotalModules,\n\t\tctaButtonLabel,\n\t\tdisplayType,\n\t\tmandatoryText,\n\t\tadditionalType,\n\t\tadditionalTypeTag,\n\t\tlanguage,\n\t\tshowMarkAsComplete,\n\t\tisNew\n\t} = properties;\n\n\treturn (\n\t\t<div\n\t\t\tclassName={\n\t\t\t\t'snu-learning-card career-journey ' +\n\t\t\t\t(displayType || DISPLAY_TYPE.vertical)\n\t\t\t}\n\t\t\tstyle={{'background-color': getCardBackground(type, subType)}}\n\t\t\ton-click={createCardClickHandler(properties, dispatch)}>\n\t\t\t<CardType\n\t\t\t\tcardTypeTag={cardTypeTag}\n\t\t\t\ttype={type}\n\t\t\t\tsubType={subType}\n\t\t\t\tdispatch={dispatch}\n\t\t\t\tstatus={status}\n\t\t\t\tdisplayType={displayType}\n\t\t\t\tmandatoryText={mandatoryText}\n\t\t\t\tadditionalType={additionalType}\n\t\t\t\tadditionalTypeTag={additionalTypeTag}\n\t\t\t\tlanguage={language}\n\t\t\t\tisNew={isNew}\n\t\t\t/>\n\t\t\t<div className=\"career-journey-title\">{title}<\/div>\n\t\t\t<div className=\"career-journey-content\">\n\t\t\t\t{description && (\n\t\t\t\t\t<div className=\"career-journey-description\">{description}<\/div>\n\t\t\t\t)}\n\t\t\t\t{imageURL && (\n\t\t\t\t\t<div className=\"career-journey-badge\">\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={imageURL}\n\t\t\t\t\t\t\talt={title}\n\t\t\t\t\t\t\tclassName=\"career-journey-badge-image\"\n\t\t\t\t\t\t\tsupportRtl={IMAGE_RTL_SUPPORT}\n\t\t\t\t\t\t\tloading=\"lazy\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t<\/div>\n\t\t\t\t)}\n\t\t\t<\/div>\n\t\t\t<Footer\n\t\t\t\tremainingTime={remainingTime}\n\t\t\t\tdispatch={dispatch}\n\t\t\t\tstatus={status}\n\t\t\t\tcompletionTime={completionTime}\n\t\t\t\ttotalModules={totalModules}\n\t\t\t\tctaButtonLabel={ctaButtonLabel}\n\t\t\t\ttype={type}\n\t\t\t\tsetTargetRef={setTargetRef}\n\t\t\t\tfooterTimerRef={footerTimerRef}\n\t\t\t\tcompletedDateRef={completedDateRef}\n\t\t\t\tshowMarkAsComplete={showMarkAsComplete}\n\t\t\t/>\n\t\t<\/div>\n\t);\n};\n\nexport default CareerJourneyRenderer;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"toEmbeddableUrl\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__.__esModule\n\t\t\t\t\tif (cjsModule && 'toEmbeddableUrl' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__[\"default\"].toEmbeddableUrl;\n\t\t\t\t\t} else if ('toEmbeddableUrl' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__.toEmbeddableUrl || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_library_enhanced_utils_27_0_28_index_jsdbx_a68d588b__[\"default\"].toEmbeddableUrl;\n\t\t\t\t} });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"get\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.__esModule\n\t\t\t\t\tif (cjsModule && 'get' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].get;\n\t\t\t\t\t} else if ('get' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.get || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].get;\n\t\t\t\t}, [\"isEmpty\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.__esModule\n\t\t\t\t\tif (cjsModule && 'isEmpty' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isEmpty;\n\t\t\t\t\t} else if ('isEmpty' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.isEmpty || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isEmpty;\n\t\t\t\t}, [\"isEqual\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.__esModule\n\t\t\t\t\tif (cjsModule && 'isEqual' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isEqual;\n\t\t\t\t\t} else if ('isEqual' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.isEqual || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isEqual;\n\t\t\t\t}, [\"isFinite\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.__esModule\n\t\t\t\t\tif (cjsModule && 'isFinite' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isFinite;\n\t\t\t\t\t} else if ('isFinite' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.isFinite || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isFinite;\n\t\t\t\t}, [\"isNull\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.__esModule\n\t\t\t\t\tif (cjsModule && 'isNull' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isNull;\n\t\t\t\t\t} else if ('isNull' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.isNull || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isNull;\n\t\t\t\t}, [\"isNumber\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.__esModule\n\t\t\t\t\tif (cjsModule && 'isNumber' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isNumber;\n\t\t\t\t\t} else if ('isNumber' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.isNumber || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isNumber;\n\t\t\t\t}, [\"isString\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.__esModule\n\t\t\t\t\tif (cjsModule && 'isString' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isString;\n\t\t\t\t\t} else if ('isString' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.isString || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].isString;\n\t\t\t\t}, [\"reduce\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.__esModule\n\t\t\t\t\tif (cjsModule && 'reduce' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].reduce;\n\t\t\t\t\t} else if ('reduce' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.reduce || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].reduce;\n\t\t\t\t}, [\"toNumber\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.__esModule\n\t\t\t\t\tif (cjsModule && 'toNumber' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].toNumber;\n\t\t\t\t\t} else if ('toNumber' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__.toNumber || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_lodash_4_17_21_index_jsdbx_74640ec9__[\"default\"].toNumber;\n\t\t\t\t} });","import {toEmbeddableUrl} from '@servicenow/library-enhanced-utils';\nimport {toNumber, isString, isNumber, isFinite} from 'lodash';\nimport {IMAGE_RTL_SUPPORT} from '../../snu-learning-card/constants';\n\nconst toValidPixelsOrUndefined = (v) => {\n\t// isString or isNumber protects again toNumber(false) or toNumber(null)\n\t// v !== '' protects against toNumber('')\n\t// isFinite(toNumber(v)) protects against `Infinity` etc.\n\tif ((isString(v) || isNumber(v)) && v !== '' && isFinite(toNumber(v))) {\n\t\treturn toNumber(v) + 'px';\n\t}\n\treturn undefined;\n};\n\nconst Image = ({\n\tsrc,\n\twidth,\n\theight,\n\talt,\n\tclassName: imageClass,\n\tfit = 'contain',\n\tposition = 'static',\n\tsupportRtl = IMAGE_RTL_SUPPORT,\n\tloading = 'lazy' // Native lazy loading - 'lazy' | 'eager'\n}) => {\n\treturn (\n\t\t<img\n\t\t\tclassName={`${imageClass}`}\n\t\t\tsrc={toEmbeddableUrl(src)}\n\t\t\talt={alt}\n\t\t\tsupportRtl={supportRtl}\n\t\t\tloading={loading}\n\t\t\tstyle={{\n\t\t\t\tobjectFit: fit,\n\t\t\t\tobjectPosition: position,\n\t\t\t\tinlineSize: toValidPixelsOrUndefined(width),\n\t\t\t\tblockSize: toValidPixelsOrUndefined(height)\n\t\t\t}}\n\t\t/>\n\t);\n};\n\nexport default Image;\n","import Image from '../../common/image';\nimport {cardType as CARD_TYPE} from '../../snu-learning-card/constants';\n\nconst UnEnrolled = ({imageURL, contentType}) => {\n\treturn (\n\t\t<div className=\"unenrolled-section\">\n\t\t\t{!!imageURL && (\n\t\t\t\t<Image\n\t\t\t\t\tsrc={imageURL}\n\t\t\t\t\tfit={\n\t\t\t\t\t\tcontentType === CARD_TYPE.recommendationAchievement\n\t\t\t\t\t\t\t? 'contain'\n\t\t\t\t\t\t\t: 'cover'\n\t\t\t\t\t}\n\t\t\t\t\tclassName={`unenrolled-section-image${\n\t\t\t\t\t\tcontentType === CARD_TYPE.recommendationAchievement\n\t\t\t\t\t\t\t? ' recommendation-image-bg-color'\n\t\t\t\t\t\t\t: ''\n\t\t\t\t\t}`}\n\t\t\t\t\talt=\"img\"\n\t\t\t\t/>\n\t\t\t)}\n\t\t<\/div>\n\t);\n};\n\nexport default UnEnrolled;\n","import {\n\tstatus as cardStatus,\n\tdisplayType as DISPLAY_TYPE,\n\tcardTypeTitleClassMap\n} from '../../snu-learning-card/constants';\n\nconst Title = ({title, status, dueDateInfo, displayType, type}) => {\n\tlet titleClass =\n\t\tstatus === cardStatus.unenrolled && displayType === DISPLAY_TYPE.vertical\n\t\t\t? 'card-title unenrolled-title'\n\t\t\t: 'card-title';\n\ttitleClass =\n\t\tdueDateInfo && Object.keys(dueDateInfo).length != 0\n\t\t\t? titleClass + ' course-with-due-date' //Updated CSS to properly style cards when displaying due date information inside cards.\n\t\t\t: titleClass;\n\t\n\tif (cardTypeTitleClassMap[type]) {\n\t\ttitleClass = titleClass + ' ' + cardTypeTitleClassMap[type];\n\t}\n\t\n\treturn <div className={titleClass}>{title}<\/div>;\n};\n\nexport default Title;\n","import UnEnrolled from '../unenrolled';\nimport CardType from '../../common/card-type';\nimport Title from '../../common/card-title';\nimport Footer from '../footer';\nimport {\n\tstatus as LEARNER_STATUS,\n\tdisplayType as DISPLAY_TYPE,\n\tgetCardBackground\n} from '../constants';\nimport {createCardClickHandler} from './base-card-renderer';\n\nconst GetStartedRenderer = (props) => {\n\tconst {\n\t\tproperties,\n\t\tdispatch,\n\t\tsetTargetRef,\n\t\tfooterTimerRef,\n\t\tcompletedDateRef,\n\t\tlanguageRef\n\t} = props;\n\n\tconst {\n\t\ttype,\n\t\tsubType,\n\t\ttitle,\n\t\tstatus,\n\t\timageURL,\n\t\tcardTypeTag,\n\t\tremainingTime,\n\t\tcompletionTime,\n\t\ttotalModules,\n\t\tctaButtonLabel,\n\t\tdisplayType,\n\t\tmandatoryText,\n\t\tadditionalType,\n\t\tadditionalTypeTag,\n\t\tlanguage,\n\t\tshowMarkAsComplete,\n\t\tdueDateInfo,\n\t\tisNew\n\t} = properties;\n\n\tconst getBackgroundColor = () => {\n\t\tif (status === LEARNER_STATUS.completed) {\n\t\t\treturn {'background-color': '#FFFFFF'};\n\t\t}\n\t\treturn {'background-color': getCardBackground(type, subType)};\n\t};\n\n\tconst showImage = displayType === DISPLAY_TYPE.vertical;\n\n\treturn (\n\t\t<div\n\t\t\tclassName={'snu-learning-card ' + (displayType || DISPLAY_TYPE.vertical)}\n\t\t\tstyle={getBackgroundColor()}\n\t\t\ton-click={createCardClickHandler(properties, dispatch)}>\n\t\t\t{showImage && <UnEnrolled imageURL={imageURL} contentType={type} />}\n\n\t\t\t<CardType\n\t\t\t\tcardTypeTag={cardTypeTag}\n\t\t\t\ttype={type}\n\t\t\t\tsubType={subType}\n\t\t\t\tdispatch={dispatch}\n\t\t\t\tstatus={status}\n\t\t\t\tdisplayType={displayType}\n\t\t\t\tmandatoryText={mandatoryText}\n\t\t\t\tadditionalType={additionalType}\n\t\t\t\tadditionalTypeTag={additionalTypeTag}\n\t\t\t\tlanguage={language}\n\t\t\t\tsetTargetRef={setTargetRef}\n\t\t\t\tlanguageRef={languageRef}\n\t\t\t\tisNew={isNew}\n\t\t\t/>\n\n\t\t\t<div className=\"card-title-image-container\">\n\t\t\t\t<Title\n\t\t\t\t\ttitle={title}\n\t\t\t\t\tstatus={status}\n\t\t\t\t\tdueDateInfo={dueDateInfo}\n\t\t\t\t\tdisplayType={displayType}\n\t\t\t\t\ttype={type}\n\t\t\t\t/>\n\t\t\t<\/div>\n\n\t\t\t<Footer\n\t\t\t\tremainingTime={remainingTime}\n\t\t\t\tdispatch={dispatch}\n\t\t\t\tstatus={status}\n\t\t\t\tcompletionTime={completionTime}\n\t\t\t\ttotalModules={totalModules}\n\t\t\t\tctaButtonLabel={ctaButtonLabel}\n\t\t\t\ttype={type}\n\t\t\t\tsubType={subType}\n\t\t\t\tsetTargetRef={setTargetRef}\n\t\t\t\tfooterTimerRef={footerTimerRef}\n\t\t\t\tcompletedDateRef={completedDateRef}\n\t\t\t\tshowMarkAsComplete={showMarkAsComplete}\n\t\t\t/>\n\t\t<\/div>\n\t);\n};\n\nexport default GetStartedRenderer;\n","const Pill = ({text}) => {\n\treturn (\n\t\t<div className=\"pill\">\n\t\t\t<span className=\"pill-text\">{text}<\/span>\n\t\t<\/div>\n\t);\n};\n\nexport default Pill;\n","import Pill from './pill';\nimport {createRef} from '@servicenow/ui-renderer-snabbdom';\n\nconst CONTAINER_WIDTH = 260; // Default container width\nconst CONTAINER_WIDTH_WITH_BADGE = 180; // Container width when badge is present (260 - 80)\n\nconst Pills = ({\n\tpills,\n\ttags,\n\tupdateState,\n\tremainingCount = 0,\n\thasBadge = false\n}) => {\n\tconst pillsRef = createRef();\n\n\tconst updateSkills = () => {\n\t\tconst containerWidth = hasBadge\n\t\t\t? CONTAINER_WIDTH_WITH_BADGE\n\t\t\t: CONTAINER_WIDTH;\n\t\tconst containerHeight = 40; // Fixed container height\n\t\tconst pillHeight = 16; // Height of each pill\n\t\tconst maxRows = Math.floor(containerHeight / pillHeight);\n\t\tlet usedWidth = 0;\n\t\tlet currentRow = 1;\n\t\tconst fitSkills = [];\n\t\tconst skills = tags;\n\t\tconst skillElements = pillsRef.current.children;\n\n\t\tfor (let i = 0; i < skills.length; i++) {\n\t\t\tconst skillElement = skillElements[i];\n\t\t\tconst skillWidth = skillElement?.offsetWidth || 0;\n\n\t\t\t// Check if the skill fits within the container's width\n\t\t\tif (usedWidth + skillWidth <= containerWidth) {\n\t\t\t\tfitSkills.push(skills[i]);\n\t\t\t\tusedWidth += skillWidth + 16; // Adding gap between items\n\t\t\t} else if (currentRow < maxRows) {\n\t\t\t\t// Move to next row if max rows allow\n\t\t\t\tcurrentRow++;\n\t\t\t\tusedWidth = skillWidth + 16;\n\t\t\t\tfitSkills.push(skills[i]);\n\t\t\t} else {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\tconst remainingCount = tags.length - fitSkills.length;\n\t\tupdateState({visibleSkills: fitSkills, remainingCount});\n\t};\n\n\treturn (\n\t\t<div hook-insert={updateSkills} className=\"pills-container\" ref={pillsRef}>\n\t\t\t{pills.map((text, i) => (\n\t\t\t\t<Pill key={i} text={text} />\n\t\t\t))}\n\t\t\t{remainingCount > 0 && <Pill text={`+${remainingCount}`} />}\n\t\t<\/div>\n\t);\n};\n\nexport default Pills;\n","import Image from '../../common/image';\n\nconst LdImage = ({imageURL}) => {\n\treturn (\n\t\t<div className=\"badge_image\">\n\t\t\t<Image\n\t\t\t\tsrc={imageURL}\n\t\t\t\theight=\"72px\"\n\t\t\t\twidth=\"51px\"\n\t\t\t\tclassName=\"badge_container\"\n\t\t\t\talt=\"certificate\"\n\t\t\t/>\n\t\t<\/div>\n\t);\n};\n\nexport default LdImage;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({  });","import '@servicenow/now-progress-bar';\n\nconst ProgressBar = ({\n\tcurrentModule = 1,\n\ttotalModules = 1,\n\tpercentageCompletion,\n\tcurrentModulePercent\n}) => {\n\tif (totalModules > 20 || totalModules === undefined || totalModules === '') {\n\t\tcurrentModule = 1;\n\t\ttotalModules = 1;\n\t\tcurrentModulePercent = percentageCompletion;\n\t}\n\tconst modulesPercentage = [];\n\tfor (let i = 0; i < totalModules; i++) {\n\t\tif (i < currentModule - 1) {\n\t\t\tmodulesPercentage.push(100);\n\t\t} else if (i === currentModule - 1) {\n\t\t\tmodulesPercentage.push(currentModulePercent ?? percentageCompletion);\n\t\t} else modulesPercentage.push(0);\n\t}\n\n\treturn (\n\t\t<div className=\"flex-bars\">\n\t\t\t{modulesPercentage.map((element) => (\n\t\t\t\t<div className=\"width-100p\">\n\t\t\t\t\t<now-progress-bar\n\t\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\t\tmax=\"100\"\n\t\t\t\t\t\tvalue={element}\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t'--now-progress-bar--background-color': '54,81,94',\n\t\t\t\t\t\t\t'--now-progress-bar--border-radius': '8px',\n\t\t\t\t\t\t\t'--now-progress-bar--border-width': '0px',\n\t\t\t\t\t\t\t'--now-progress-bar_path--initial--background-color':\n\t\t\t\t\t\t\t\t'98, 216, 78, 1'\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t<\/div>\n\t\t\t))}\n\t\t<\/div>\n\t);\n};\n\nexport default ProgressBar;\n","import {cardType, status as LEARNER_STATUS} from '../constants';\nimport {i18nMessages} from '../utils';\n\nconst ProgressBarLabel = ({\n\tpercentageCompletion,\n\tstatus,\n\ttype,\n\tcurrentModule,\n\ttotalModules\n}) => {\n\treturn (\n\t\t<div className=\"progress-bar-label-container\">\n\t\t\t{type === cardType.path &&\n\t\t\t\tstatus === LEARNER_STATUS.enrolled &&\n\t\t\t\tcurrentModule &&\n\t\t\t\ttotalModules && (\n\t\t\t\t\t<label className=\"progress-bar-label-modules\">\n\t\t\t\t\t\t{i18nMessages.moduleProgress(currentModule, totalModules)}\n\t\t\t\t\t<\/label>\n\t\t\t\t)}\n\t\t\t{percentageCompletion !== undefined && (\n\t\t\t\t<label className=\"progress-bar-label\">\n\t\t\t\t\t{i18nMessages.progressPercentage(\n\t\t\t\t\t\tMath.round(+percentageCompletion || 0)\n\t\t\t\t\t)}\n\t\t\t\t<\/label>\n\t\t\t)}\n\t\t<\/div>\n\t);\n};\n\nexport default ProgressBarLabel;\n","import '@servicenow/now-icon';\nimport ProgressBar from './progressBar';\nimport ProgressBarLabel from './progressBarLabel';\nimport {cardType, deliveryEnvironment as deliveryEnv} from '../constants';\n\nconst Enrolled = ({\n\tpercentageCompletion,\n\tcurrentModule,\n\ttotalModules,\n\tstatus,\n\ttype,\n\tcurrentModulePercent,\n\tdeliveryEnvironment,\n\tshowProgressBar\n}) => {\n\tconst isNonIntrepidIlt =\n\t\ttype === cardType.ilt && deliveryEnvironment !== deliveryEnv.intrepid;\n\tconst isAssessment = type === cardType.assessment;\n\tconst shouldShowProgress = (!isNonIntrepidIlt && !isAssessment) || showProgressBar;\n\treturn (\n\t\tpercentageCompletion !== undefined &&\n\t\tpercentageCompletion !== '' &&\n\t\tshouldShowProgress && (\n\t\t\t<div className=\"progressbar-wrapper\">\n\t\t\t\t<div className=\"enrolled-section\">\n\t\t\t\t\t<ProgressBarLabel\n\t\t\t\t\t\tpercentageCompletion={percentageCompletion}\n\t\t\t\t\t\tcurrentModule={currentModule}\n\t\t\t\t\t\ttotalModules={totalModules}\n\t\t\t\t\t\ttype={type}\n\t\t\t\t\t\tstatus={status}\n\t\t\t\t\t/>\n\n\t\t\t\t\t<ProgressBar\n\t\t\t\t\t\tcurrentModule={currentModule}\n\t\t\t\t\t\ttotalModules={totalModules}\n\t\t\t\t\t\tpercentageCompletion={percentageCompletion}\n\t\t\t\t\t\tcurrentModulePercent={currentModulePercent}\n\t\t\t\t\t/>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t)\n\t);\n};\n\nexport default Enrolled;\n","import UnEnrolled from '../unenrolled';\nimport CardType from '../../common/card-type';\nimport Title from '../../common/card-title';\nimport Pills from '../../common/pills';\nimport Completed from '../completed';\nimport Enrolled from '../enrolled';\nimport Footer from '../footer';\nimport {\n\tstatus as LEARNER_STATUS,\n\tdisplayType as DISPLAY_TYPE,\n\tgetCardBackground,\n\tgetIconRtlSupport,\n\tdueDateLevelColorMap\n} from '../constants';\nimport {\n\tcreateCardClickHandler,\n\tshouldShowImage,\n\tshouldShowPills,\n\tshouldShowCompletedBadge,\n\thasBadgeClass\n} from './base-card-renderer';\n\nconst StandardRenderer = (props) => {\n\tconst {\n\t\tproperties,\n\t\tparsedVisibleSkills,\n\t\tparsedTags,\n\t\tremainingCount,\n\t\tdispatch,\n\t\tupdateState,\n\t\tsetTargetRef,\n\t\tfooterTimerRef,\n\t\tcompletedDateRef,\n\t\tlanguageRef\n\t} = props;\n\n\tconst {\n\t\ttype,\n\t\tsubType,\n\t\ttitle,\n\t\tstatus,\n\t\timageURL,\n\t\tcardTypeTag,\n\t\tremainingTime,\n\t\tcompletionTime,\n\t\tpercentageCompletion,\n\t\tcurrentModule,\n\t\ttotalModules,\n\t\tcurrentModulePercent,\n\t\tctaButtonLabel,\n\t\tdisplayType,\n\t\tmandatoryText,\n\t\tdueDateInfo,\n\t\tadditionalType,\n\t\tadditionalTypeTag,\n\t\tlanguage,\n\t\tshowMarkAsComplete,\n\t\tisNew,\n\t\tdeliveryEnvironment,\n\t\tshowProgressBar\n\t} = properties;\n\n\tconst getBackgroundColor = () => {\n\t\tif (\n\t\t\tstatus === LEARNER_STATUS.unenrolled &&\n\t\t\tdisplayType === DISPLAY_TYPE.vertical\n\t\t) {\n\t\t\treturn {'background-color': getCardBackground(type, subType)};\n\t\t}\n\t\treturn {};\n\t};\n\n\treturn (\n\t\t<div\n\t\t\tclassName={'snu-learning-card ' + (displayType || DISPLAY_TYPE.vertical)}\n\t\t\tstyle={getBackgroundColor()}\n\t\t\ton-click={createCardClickHandler(properties, dispatch)}>\n\t\t\t{shouldShowImage(status, displayType) && (\n\t\t\t\t<UnEnrolled imageURL={imageURL} contentType={type} />\n\t\t\t)}\n\n\t\t\t<CardType\n\t\t\t\tcardTypeTag={cardTypeTag}\n\t\t\t\ttype={type}\n\t\t\t\tsubType={subType}\n\t\t\t\tdispatch={dispatch}\n\t\t\t\tstatus={status}\n\t\t\t\tdisplayType={displayType}\n\t\t\t\tmandatoryText={mandatoryText}\n\t\t\t\tadditionalType={additionalType}\n\t\t\t\tadditionalTypeTag={additionalTypeTag}\n\t\t\t\tlanguage={language}\n\t\t\t\tsetTargetRef={setTargetRef}\n\t\t\t\tlanguageRef={languageRef}\n\t\t\t\tisNew={isNew}\n\t\t\t/>\n\n\t\t\t<div\n\t\t\t\tclassName={\n\t\t\t\t\t'card-title-image-container' + hasBadgeClass(status, imageURL)\n\t\t\t\t}>\n\t\t\t\t<Title\n\t\t\t\t\ttitle={title}\n\t\t\t\t\tstatus={status}\n\t\t\t\t\tdueDateInfo={dueDateInfo}\n\t\t\t\t\tdisplayType={displayType}\n\t\t\t\t\ttype={type}\n\t\t\t\t/>\n\n\t\t\t\t{shouldShowPills(status, displayType) && (\n\t\t\t\t\t<Pills\n\t\t\t\t\t\tpills={parsedVisibleSkills}\n\t\t\t\t\t\ttags={parsedTags}\n\t\t\t\t\t\tupdateState={updateState}\n\t\t\t\t\t\tremainingCount={remainingCount}\n\t\t\t\t\t\thasBadge={shouldShowCompletedBadge(status, imageURL)}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\n\t\t\t\t{shouldShowCompletedBadge(status, imageURL) && (\n\t\t\t\t\t<Completed imageURL={imageURL} />\n\t\t\t\t)}\n\t\t\t<\/div>\n\n\t\t\t<div className=\"due-date-and-progress-bar-wrapper\">\n\t\t\t\t<div className=\"due-date-and-progress-bar-inner-wrapper\">\n\t\t\t\t\t{dueDateInfo && Object.keys(dueDateInfo).length !== 0 && (\n\t\t\t\t\t\t<div className=\"due-date-wrapper\">\n\t\t\t\t\t\t\t<now-icon\n\t\t\t\t\t\t\t\ticon=\"exclamation-triangle-fill\"\n\t\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\t\tstyle={{color: dueDateLevelColorMap[dueDateInfo.level]}}\n\t\t\t\t\t\t\t\tsupportRtl={getIconRtlSupport('exclamation-triangle-fill')}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<div className=\"due-date\">{dueDateInfo.text}<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t)}\n\t\t\t\t\t{status === LEARNER_STATUS.enrolled &&\n\t\t\t\t\t\tdisplayType !== DISPLAY_TYPE.horizontal && (\n\t\t\t\t\t\t\t<Enrolled\n\t\t\t\t\t\t\t\tremainingTime={remainingTime}\n\t\t\t\t\t\t\t\tpercentageCompletion={percentageCompletion}\n\t\t\t\t\t\t\t\tcurrentModule={currentModule}\n\t\t\t\t\t\t\t\ttotalModules={totalModules}\n\t\t\t\t\t\t\t\ttype={type}\n\t\t\t\t\t\t\t\tstatus={status}\n\t\t\t\t\t\t\t\tcurrentModulePercent={currentModulePercent}\n\t\t\t\t\t\t\t\tdeliveryEnvironment={deliveryEnvironment}\n\t\t\t\t\t\t\t\tshowProgressBar={showProgressBar}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\n\t\t\t<Footer\n\t\t\t\tremainingTime={remainingTime}\n\t\t\t\tdispatch={dispatch}\n\t\t\t\tstatus={status}\n\t\t\t\tcompletionTime={completionTime}\n\t\t\t\ttotalModules={totalModules}\n\t\t\t\tctaButtonLabel={ctaButtonLabel}\n\t\t\t\ttype={type}\n\t\t\t\tsubType={subType}\n\t\t\t\tsetTargetRef={setTargetRef}\n\t\t\t\tfooterTimerRef={footerTimerRef}\n\t\t\t\tcompletedDateRef={completedDateRef}\n\t\t\t\tshowMarkAsComplete={showMarkAsComplete}\n\t\t\t/>\n\t\t<\/div>\n\t);\n};\n\nexport default StandardRenderer;\n","import CareerJourneyRenderer from './career-journey-renderer';\nimport GetStartedRenderer from './get-started-renderer';\nimport StandardRenderer from './standard-renderer';\nimport {cardType as CARD_TYPE} from '../constants';\n\nconst CARD_RENDERERS = {\n\t[CARD_TYPE.careerJourney]: CareerJourneyRenderer,\n\t[CARD_TYPE.getStarted]: GetStartedRenderer,\n\tdefault: StandardRenderer\n};\n\nexport const getCardRenderer = (type) => {\n\treturn CARD_RENDERERS[type] || CARD_RENDERERS.default;\n};\n","import {parseJSON} from '../../utils';\nimport {getCardRenderer} from './renderers';\n\nconst view = (\n\t{properties, visibleSkills, remainingCount, footerTimerRef, completedDateRef, languageRef},\n\t{dispatch, updateState}\n) => {\n\tconst setTargetRef = (stateKey, ref) =>\n\t\tsetTimeout(() => updateState({[stateKey]: ref}));\n\n\tconst parsedTags = parseJSON(properties.tags || []);\n\tconst parsedVisibleSkills = (() => {\n\t\tconst parsed = parseJSON(visibleSkills);\n\t\treturn parsed.length === 0 && remainingCount === 0 ? parsedTags : parsed;\n\t})();\n\n\tconst CardRenderer = getCardRenderer(properties.type);\n\n\treturn (\n\t\t<CardRenderer\n\t\t\tproperties={properties}\n\t\t\tparsedTags={parsedTags}\n\t\t\tparsedVisibleSkills={parsedVisibleSkills}\n\t\t\tremainingCount={remainingCount}\n\t\t\tdispatch={dispatch}\n\t\t\tupdateState={updateState}\n\t\t\tsetTargetRef={setTargetRef}\n\t\t\tfooterTimerRef={footerTimerRef}\n\t\t\tcompletedDateRef={completedDateRef}\n\t\t\tlanguageRef={languageRef}\n\t\t/>\n\t);\n};\n\nexport default view;\n","import {createCustomElement} from '@servicenow/ui-core';\nimport snabbdom from '@servicenow/ui-renderer-snabbdom';\nimport rtlBehavior from '@servicenow/behavior-rtl';\nimport styles from './styles.scss';\nimport view from './view';\nimport {parseJSON} from '../../utils';\n\ncreateCustomElement('snu-learning-card', {\n\trenderer: {type: snabbdom},\n\tview,\n\tstyles,\n\tbehaviors: [rtlBehavior],\n\tslots: {menu: {}},\n\tproperties: {\n\t\ttype: {\n\t\t\tdefault: 'course',\n\t\t\tschema: {\n\t\t\t\ttype: 'string',\n\t\t\t\tenum: [\n\t\t\t\t\t'course',\n\t\t\t\t\t'path',\n\t\t\t\t\t'powerSkill',\n\t\t\t\t\t'ilt',\n\t\t\t\t\t'achievement',\n\t\t\t\t\t'guidedSimulation',\n\t\t\t\t\t'assessment',\n\t\t\t\t\t'careerJourney',\n\t\t\t\t\t'getStarted'\n\t\t\t\t]\n\t\t\t}\n\t\t},\n\t\tsubType: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string',\n\t\t\t\tenum: ['link', 'video', 'course', 'survey', 'skill', 'tour']\n\t\t\t}\n\t\t},\n\t\tdisplayType: {\n\t\t\tdefault: 'vertical',\n\t\t\tschema: {\n\t\t\t\ttype: 'string',\n\t\t\t\tenum: ['vertical', 'horizontal']\n\t\t\t}\n\t\t},\n\t\tmandatoryText: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\tdueDateInfo: {\n\t\t\tdefault: {},\n\t\t\tschema: {\n\t\t\t\ttype: 'object'\n\t\t\t}\n\t\t},\n\t\tadditionalType: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\tadditionalTypeTag: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\tcardTypeTag: {\n\t\t\tdefault: 'Course'\n\t\t},\n\t\ttitle: {\n\t\t\tdefault: ''\n\t\t},\n\t\tdescription: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\tremainingTime: {\n\t\t\tdefault: ''\n\t\t},\n\t\tcompletionTime: {},\n\t\tpercentageCompletion: {},\n\t\ttags: {default: []},\n\t\timageURL: {default: ''},\n\t\tcurrentModule: {},\n\t\ttotalModules: {},\n\t\tcurrentModulePercent: {},\n\t\tctaButtonLabel: {},\n\t\tlanguage: {\n\t\t\tdefault: null,\n\t\t\tschema: {\n\t\t\t\ttype: 'object',\n\t\t\t\tproperties: {\n\t\t\t\t\tcode: {\n\t\t\t\t\t\ttype: 'string'\n\t\t\t\t\t},\n\t\t\t\t\tcode_dv: {\n\t\t\t\t\t\ttype: 'string'\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tstatus: {\n\t\t\tdefault: 'completed',\n\t\t\tschema: {\n\t\t\t\ttype: 'string',\n\t\t\t\tenum: ['completed', 'enrolled', 'unenrolled']\n\t\t\t}\n\t\t},\n\t\tshowMarkAsComplete: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: 'boolean'\n\t\t\t}\n\t\t},\n\t\tisNew: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: 'boolean'\n\t\t\t}\n\t\t},\n\t\tdeliveryEnvironment: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\tshowProgressBar: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: 'boolean'\n\t\t\t}\n\t\t}\n\t},\n\tsetInitialState({properties}) {\n\t\treturn {\n\t\t\tvisibleSkills: parseJSON(properties.tags),\n\t\t\tremainingCount: 0,\n\t\t\tfooterTimerRef: null,\n\t\t\tcompletedDateRef: null,\n\t\t\tlanguageRef: null\n\t\t};\n\t},\n\tdispatches: {\n\t\t'RESUME#CLICKED': {default: false, schema: {type: 'object'}},\n\t\t'CARD#CLICKED': {default: false, schema: {type: 'object'}},\n\t\t'MARK_AS_COMPLETE#CLICKED': {default: false, schema: {type: 'object'}}\n\t}\n});\n","import {t} from 'sn-translate';\n\n/**\n * Internationalized messages for the explore catalog component\n * Using standardized keys with failsafe defaults\n */\nexport const i18nMessages = {\n\t// Navigation\n\tmainMenu: () => t('sn-nl-explore-catalog:main_menu', 'Main Menu'),\n\tbackToCategories: () =>\n\t\tt('sn-nl-explore-catalog:back_to_categories', 'Back to Categories'),\n\n\t// Headers and titles\n\texploreCatalog: () =>\n\t\tt('sn-nl-explore-catalog:explore_catalog', 'Explore Catalog'),\n\texploreCatalogLabel: () =>\n\t\tt(\n\t\t\t'sn-nl-explore-catalog:explore_catalog_label',\n\t\t\t'Browse learning content by category'\n\t\t),\n\n\t// Category information\n\tcategoryCount: (count) =>\n\t\tt('sn-nl-explore-catalog:category_count', '{0} categories', count),\n\titemCount: (count) =>\n\t\tt('sn-nl-explore-catalog:item_count', '{0} items', count),\n\n\t// Status messages\n\tloading: () => t('sn-nl-explore-catalog:loading', 'Loading categories...'),\n\tnoCategories: () =>\n\t\tt('sn-nl-explore-catalog:no_categories', 'No categories available'),\n\tnoItems: () =>\n\t\tt('sn-nl-explore-catalog:no_items', 'No items in this category'),\n\n\t// Buttons and actions\n\tviewAll: () => t('sn-nl-explore-catalog:view_all', 'View All'),\n\tclose: () => t('sn-nl-explore-catalog:close', 'Close'),\n\n\t// Accessibility\n\tcategoryNavigation: () =>\n\t\tt('sn-nl-explore-catalog:category_navigation', 'Category navigation'),\n\titemsList: () => t('sn-nl-explore-catalog:items_list', 'Items in category'),\n\n\t// Error messages\n\tloadError: () =>\n\t\tt('sn-nl-explore-catalog:load_error', 'Failed to load catalog data')\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__.__esModule\n\t\t\t\t\tif (cjsModule && 'default' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"][\"default\"];\n\t\t\t\t\t} else if ('default' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"] || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_media_query_27_0_28_index_jsdbx_cc2f9edc__[\"default\"][\"default\"];\n\t\t\t\t} });","import {createCustomElement, actionTypes} from '@servicenow/ui-core';\nimport snabbdom from '@servicenow/ui-renderer-snabbdom';\nimport styles from './sn-nl-explore-catalog.scss';\nimport view from './view/view';\nimport mediaQueryBehavior from '@servicenow/behavior-media-query';\nimport rtlBehavior from '@servicenow/behavior-rtl';\nimport '@servicenow/now-icon';\n\nconst {COMPONENT_DISCONNECTED} = actionTypes;\n\ncreateCustomElement('sn-nl-explore-catalog', {\n\trenderer: {type: snabbdom},\n\tview,\n\tsetInitialState() {\n\t\treturn {\n\t\t\tcatalogSelectedXS: null,\n\t\t\ttouchHandler: null,\n\t\t\tactiveHover: null,\n\t\t\tmobileExpandedItem: null\n\t\t};\n\t},\n\tproperties: {\n\t\tcatalogData: {\n\t\t\tdefault: {\n\t\t\t\tcontent: [],\n\t\t\t\tfooter: {}\n\t\t\t},\n\t\t\toverride: true,\n\t\t\tschema: {\n\t\t\t\ttype: 'object',\n\t\t\t\tadditionalProperties: true\n\t\t\t}\n\t\t},\n\t\treferenceTopSpaceElement: {\n\t\t\tdefault: '',\n\t\t\toverride: true,\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t}\n\t},\n\tdispatches: {\n\t\t'EXPLORECATALOGMODAL#CLOSE': {default: false}\n\t},\n\tbehaviors: [\n\t\trtlBehavior,\n\t\t{\n\t\t\tbehavior: mediaQueryBehavior,\n\t\t\toptions: {\n\t\t\t\tsmallQuery: '(max-width: 767px)'\n\t\t\t}\n\t\t}\n\t],\n\tactionHandlers: {\n\t\t[COMPONENT_DISCONNECTED]: ({state}) => {\n\t\t\tif (state.touchHandler) {\n\t\t\t\tdocument.removeEventListener('touchstart', state.touchHandler);\n\t\t\t}\n\t\t}\n\t},\n\tstyles\n});\n","import {Fragment} from '@servicenow/ui-renderer-snabbdom';\nimport {i18nMessages} from '../utils';\n\nexport default (state, {updateState, dispatch}) => {\n\tconst {properties} = state;\n\tconst {catalogData, referenceTopSpaceElement} = properties;\n\n\t// ============ Event Handlers ============\n\tconst closeModal = () => {\n\t\tdispatch('EXPLORECATALOGMODAL#CLOSE');\n\t};\n\n\tconst handleKeyDown = (callback) => (event) => {\n\t\tif (event.key === 'Enter' || event.key === ' ') {\n\t\t\tevent.preventDefault();\n\t\t\tcallback();\n\t\t}\n\t};\n\n\t// ============ DOM Utilities ============\n\tconst getShadowElement = (elementClassName) => {\n\t\tconst traverser = (node) => {\n\t\t\tif (node.nodeType !== Node.ELEMENT_NODE) return null;\n\t\t\tif (node.classList.contains(elementClassName)) return node;\n\n\t\t\tfor (const child of node.children) {\n\t\t\t\tconst found = traverser(child);\n\t\t\t\tif (found) return found;\n\t\t\t}\n\n\t\t\tif (node.shadowRoot) {\n\t\t\t\tfor (const shadowChild of node.shadowRoot.children) {\n\t\t\t\t\tconst found = traverser(shadowChild);\n\t\t\t\t\tif (found) return found;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn null;\n\t\t};\n\t\treturn traverser(document.body);\n\t};\n\n\tconst calculateAndUpdateTopSpace = () => {\n\t\tif (!referenceTopSpaceElement) return;\n\t\tconst bannerElement = getShadowElement(referenceTopSpaceElement);\n\t\tif (bannerElement) {\n\t\t\tupdateState({\n\t\t\t\ttopSpace: bannerElement.getBoundingClientRect().bottom + 'px'\n\t\t\t});\n\t\t}\n\t};\n\n\t// ============ Lifecycle ============\n\tconst setupTouchOutsideListener = () => {\n\t\tconst handleTouchStart = (event) => {\n\t\t\tconst modalContent = getShadowElement('catalog-container');\n\t\t\tconst path = event.composedPath ? event.composedPath() : [];\n\t\t\tif (state.behaviors?.mediaQuery?.smallQuery) {\n\t\t\t\tcalculateAndUpdateTopSpace();\n\t\t\t}\n\t\t\tif (!path.includes(modalContent)) {\n\t\t\t\tcloseModal();\n\t\t\t}\n\t\t};\n\t\tcalculateAndUpdateTopSpace();\n\t\tdocument.addEventListener('touchstart', handleTouchStart);\n\t\tupdateState({touchHandler: handleTouchStart});\n\t};\n\n\tconst init = () => {\n\t\tupdateState({initialized: true});\n\t\tsetupTouchOutsideListener();\n\t};\n\n\t// ============ State-based Handlers (No Deep Cloning) ============\n\tconst handleMouseOver = (itemName, contentIndex) => {\n\t\tupdateState({\n\t\t\tactiveHover: {itemName, contentIndex}\n\t\t});\n\t};\n\n\tconst handleExpandItem = (itemName) => {\n\t\tconst currentExpanded = state.mobileExpandedItem;\n\t\tupdateState({\n\t\t\tmobileExpandedItem: currentExpanded === itemName ? null : itemName\n\t\t});\n\t};\n\n\tconst selectCatalogItem = (item) => {\n\t\tif (item.href) {\n\t\t\twindow.location.href = item.href;\n\t\t} else {\n\t\t\tupdateState({catalogSelectedXS: item.title});\n\t\t}\n\t};\n\n\tconst goBack = () => {\n\t\tif (state.catalogSelectedXS) {\n\t\t\tupdateState({catalogSelectedXS: null});\n\t\t} else {\n\t\t\tcloseModal();\n\t\t}\n\t};\n\n\t// ============ Helper Functions ============\n\tconst getActiveProducts = (content, activeHover) => {\n\t\tif (!activeHover) return null;\n\t\tconst {itemName, contentIndex} = activeHover;\n\t\tconst contentItem = content[contentIndex];\n\t\tif (!contentItem) return null;\n\t\tconst item = contentItem.items.find((i) => i.name === itemName);\n\t\treturn item?.products || null;\n\t};\n\n\tconst getDefaultActiveHover = (content) => {\n\t\tif (!Array.isArray(content)) return null;\n\n\t\tconst hasSubsections = (items) =>\n\t\t\tArray.isArray(items) &&\n\t\t\titems.some((it) => Array.isArray(it?.products) && it.products.length > 0);\n\n\t\tfor (let i = 0; i < content.length; i++) {\n\t\t\tconst col = content[i];\n\t\t\tif (hasSubsections(col?.items)) {\n\t\t\t\treturn {itemName: col.items[0]?.name, contentIndex: i};\n\t\t\t}\n\t\t}\n\n\t\treturn null;\n\t};\n\n\t// ============ Components ============\n\tconst CatalogFooter = ({footer}) => {\n\t\tif (!footer || footer.length === 0) return null;\n\t\treturn (\n\t\t\t<div className=\"modal-footer\">\n\t\t\t\t{footer.map((footerItem) => (\n\t\t\t\t\t<a\n\t\t\t\t\t\tclassName=\"explore-view-all-action-button\"\n\t\t\t\t\t\thref={footerItem.href}\n\t\t\t\t\t\ttarget={footerItem.opensWindow ? '_blank' : undefined}\n\t\t\t\t\t\trel={footerItem.opensWindow ? 'noopener noreferrer' : undefined}>\n\t\t\t\t\t\t{footerItem.label}\n\t\t\t\t\t<\/a>\n\t\t\t\t))}\n\t\t\t<\/div>\n\t\t);\n\t};\n\n\tconst CatalogContent = ({content}) => {\n\t\tif (!content || content.length === 0) return null;\n\n\t\tconst activeHover = state.activeHover || getDefaultActiveHover(content);\n\t\tconst activeProducts = getActiveProducts(content, activeHover);\n\n\t\treturn (\n\t\t\t<div className=\"modal-content\" role=\"menu\">\n\t\t\t\t<now-icon\n\t\t\t\t\tclassName=\"content-modal-icon\"\n\t\t\t\t\ticon=\"close-outline\"\n\t\t\t\t\tsize=\"md\"\n\t\t\t\t\trole=\"button\"\n\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\taria-label={i18nMessages.close()}\n\t\t\t\t\ton-click={closeModal}\n\t\t\t\t\ton-keydown={handleKeyDown(closeModal)}\n\t\t\t\t/>\n\t\t\t\t{content.map((contentItem, idx) => {\n\t\t\t\t\tconst isActiveColumn = activeHover?.contentIndex === idx;\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName={`modal-column ${idx !== 0 ? 'column-border' : ''}`}\n\t\t\t\t\t\t\t\trole=\"menuitem\">\n\t\t\t\t\t\t\t\t<div className=\"column-title\">\n\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\twidth=\"24\"\n\t\t\t\t\t\t\t\t\t\theight=\"32\"\n\t\t\t\t\t\t\t\t\t\tloading=\"lazy\"\n\t\t\t\t\t\t\t\t\t\trole=\"presentation\"\n\t\t\t\t\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\t\t\t\t\tsrc={contentItem.image}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{contentItem.title}\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\tclassName={`scrollable ${\n\t\t\t\t\t\t\t\t\t\tcontentItem.items[0]?.products ? 'font-bold' : ''\n\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\trole=\"menu\">\n\t\t\t\t\t\t\t\t\t{contentItem.items.map((item) => {\n\t\t\t\t\t\t\t\t\t\tconst isActive =\n\t\t\t\t\t\t\t\t\t\t\tisActiveColumn && activeHover?.itemName === item.name;\n\t\t\t\t\t\t\t\t\t\treturn item.products ? (\n\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={`list-item ${\n\t\t\t\t\t\t\t\t\t\t\t\t\tisActive ? 'mouse-over-bg-grey' : ''\n\t\t\t\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\t\t\t\trole=\"menuitem\"\n\t\t\t\t\t\t\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\t\t\t\t\t\taria-expanded={isActive}\n\t\t\t\t\t\t\t\t\t\t\t\ton-mouseover={() => handleMouseOver(item.name, idx)}\n\t\t\t\t\t\t\t\t\t\t\t\ton-focus={() => handleMouseOver(item.name, idx)}\n\t\t\t\t\t\t\t\t\t\t\t\ton-keydown={handleKeyDown(() =>\n\t\t\t\t\t\t\t\t\t\t\t\t\thandleMouseOver(item.name, idx)\n\t\t\t\t\t\t\t\t\t\t\t\t)}>\n\t\t\t\t\t\t\t\t\t\t\t\t{item.name}\n\t\t\t\t\t\t\t\t\t\t\t\t<now-icon\n\t\t\t\t\t\t\t\t\t\t\t\t\ticon=\"arrow-right-fill\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tsupportRtl\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t<div className=\"list-item\" role=\"menuitem\">\n\t\t\t\t\t\t\t\t\t\t\t\t<a href={item.href} tabindex=\"0\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t{item.name}\n\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t{isActiveColumn && activeProducts ? (\n\t\t\t\t\t\t\t\t<div className=\"modal-column-secondary\" role=\"menu\">\n\t\t\t\t\t\t\t\t\t<div className=\"column-title-empty\">&nbsp;<\/div>\n\t\t\t\t\t\t\t\t\t<div className=\"selectedChildGroup\">\n\t\t\t\t\t\t\t\t\t\t<div className=\"scrollable\">\n\t\t\t\t\t\t\t\t\t\t\t{activeProducts.map((product) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<div className=\"list-item\" role=\"menuitem\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<a href={product.href} tabindex=\"0\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{product.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t<\/Fragment>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t<\/div>\n\t\t);\n\t};\n\n\tconst XSCatalogContent = ({content: catalogContent}) => {\n\t\tif (!catalogContent) return null;\n\t\tconst {content, footer} = catalogContent;\n\t\tif (!content) return null;\n\n\t\tconst selectedCategory = state.catalogSelectedXS;\n\t\tconst mobileExpandedItem = state.mobileExpandedItem;\n\n\t\treturn (\n\t\t\t<div className=\"catalog-container\">\n\t\t\t\t<div className=\"modal-content height-100\">\n\t\t\t\t\t<div className=\"main-menu-header-container\">\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName=\"explore-heading\"\n\t\t\t\t\t\t\trole=\"button\"\n\t\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\t\tselectedCategory\n\t\t\t\t\t\t\t\t\t? i18nMessages.exploreCatalog()\n\t\t\t\t\t\t\t\t\t: i18nMessages.mainMenu()\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\ton-click={goBack}\n\t\t\t\t\t\t\ton-keydown={handleKeyDown(goBack)}>\n\t\t\t\t\t\t\t<now-icon icon=\"chevron-left-fill\" size=\"sm\" supportRtl />\n\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t{selectedCategory\n\t\t\t\t\t\t\t\t\t? i18nMessages.exploreCatalog()\n\t\t\t\t\t\t\t\t\t: i18nMessages.mainMenu()}\n\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<now-icon\n\t\t\t\t\t\t\ticon=\"close-outline\"\n\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\trole=\"button\"\n\t\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t\taria-label={i18nMessages.close()}\n\t\t\t\t\t\t\ton-click={closeModal}\n\t\t\t\t\t\t\ton-keydown={handleKeyDown(closeModal)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t<\/div>\n\n\t\t\t\t\t{!selectedCategory && (\n\t\t\t\t\t\t<div className=\"explore-catalog-content-container flex-1 auto-scroll\">\n\t\t\t\t\t\t\t<span className=\"explore-catalog-content-title\">\n\t\t\t\t\t\t\t\t{i18nMessages.exploreCatalogLabel()}\n\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t<div className=\"explore-catalog-content\" role=\"menu\">\n\t\t\t\t\t\t\t\t{content.map((contentItem) => (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"explore-catalog-content-item\"\n\t\t\t\t\t\t\t\t\t\trole=\"menuitem\"\n\t\t\t\t\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t\t\t\t\ton-click={() => selectCatalogItem(contentItem)}\n\t\t\t\t\t\t\t\t\t\ton-keydown={handleKeyDown(() =>\n\t\t\t\t\t\t\t\t\t\t\tselectCatalogItem(contentItem)\n\t\t\t\t\t\t\t\t\t\t)}>\n\t\t\t\t\t\t\t\t\t\t<div className=\"column-title\">\n\t\t\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\t\t\twidth=\"24\"\n\t\t\t\t\t\t\t\t\t\t\t\theight=\"32\"\n\t\t\t\t\t\t\t\t\t\t\t\tloading=\"lazy\"\n\t\t\t\t\t\t\t\t\t\t\t\trole=\"presentation\"\n\t\t\t\t\t\t\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\t\t\t\t\t\t\tsrc={contentItem.image}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{contentItem.title}\n\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t<now-icon icon=\"chevron-right-fill\" size=\"sm\" supportRtl />\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t{footer?.map((footerItem) => (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"explore-catalog-content-item\"\n\t\t\t\t\t\t\t\t\t\trole=\"menuitem\"\n\t\t\t\t\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t\t\t\t\ton-click={() => selectCatalogItem(footerItem)}\n\t\t\t\t\t\t\t\t\t\ton-keydown={handleKeyDown(() =>\n\t\t\t\t\t\t\t\t\t\t\tselectCatalogItem(footerItem)\n\t\t\t\t\t\t\t\t\t\t)}>\n\t\t\t\t\t\t\t\t\t\t<div className=\"column-title\">\n\t\t\t\t\t\t\t\t\t\t\t{footerItem.image && (\n\t\t\t\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\t\t\t\twidth=\"24\"\n\t\t\t\t\t\t\t\t\t\t\t\t\theight=\"32\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tloading=\"lazy\"\n\t\t\t\t\t\t\t\t\t\t\t\t\trole=\"presentation\"\n\t\t\t\t\t\t\t\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tsrc={footerItem.image}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t{footerItem.label}\n\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t)}\n\n\t\t\t\t\t<div className=\"explore-catalog-content-items-container flex-1 auto-scroll\">\n\t\t\t\t\t\t{content.map(\n\t\t\t\t\t\t\t(contentItem) =>\n\t\t\t\t\t\t\t\tselectedCategory === contentItem.title && (\n\t\t\t\t\t\t\t\t\t<div className=\"scrollable\" role=\"menu\">\n\t\t\t\t\t\t\t\t\t\t{contentItem.items.map((item) => {\n\t\t\t\t\t\t\t\t\t\t\tconst isExpanded = mobileExpandedItem === item.name;\n\n\t\t\t\t\t\t\t\t\t\t\treturn item.products ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<div className=\"list-expanded-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"list-item font-bold\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\trole=\"menuitem\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\taria-expanded={isExpanded}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ton-click={() => handleExpandItem(item.name)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ton-keydown={handleKeyDown(() =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleExpandItem(item.name)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<now-icon\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisExpanded\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'chevron-down-fill'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 'chevron-right-fill'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsupportRtl\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={`expand-arrow${\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisExpanded ? ' expanded-arrow' : ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={`expanded-view${\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisExpanded ? ' expanded' : ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\trole=\"menu\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\taria-hidden={!isExpanded}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.products.map((product) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div className=\"list-item\" role=\"menuitem\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thref={product.href}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttabindex={isExpanded ? '0' : '-1'}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{product.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t<div className=\"list-item\" role=\"menuitem\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<a href={item.href} tabindex=\"0\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t)}\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t);\n\t};\n\n\t// ============ Initialize ============\n\tif (!state.initialized) {\n\t\tinit();\n\t}\n\n\t// ============ Render ============\n\tconst isMobile = state.behaviors?.mediaQuery?.smallQuery;\n\tconst topSpaceStyle = isMobile\n\t\t? {'--now-sn-cx-banner-overlay--top': state.topSpace}\n\t\t: {};\n\n\treturn (\n\t\t<div className=\"sn-nl-explore-catalog\" style={topSpaceStyle}>\n\t\t\t{!isMobile ? (\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"dt-canvas-user-menu-dropdown-panel-container\"\n\t\t\t\t\trole=\"dialog\"\n\t\t\t\t\taria-modal=\"true\"\n\t\t\t\t\taria-label={i18nMessages.exploreCatalogLabel()}>\n\t\t\t\t\t<div className=\"modal-backdrop\" on-click={closeModal}>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName=\"modal-container hidden-xs\"\n\t\t\t\t\t\t\ton-click={(e) => e.stopPropagation()}>\n\t\t\t\t\t\t\t<CatalogContent content={catalogData?.content} />\n\t\t\t\t\t\t\t<CatalogFooter footer={catalogData?.footer} />\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t) : (\n\t\t\t\t<div className=\"modal-container visible-xs\">\n\t\t\t\t\t<XSCatalogContent content={catalogData} />\n\t\t\t\t<\/div>\n\t\t\t)}\n\t\t<\/div>\n\t);\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({  });","//Action Names\nexport const SN_BANNER_ANNOUNCEMENT_CLICKED = 'SN_BANNER_ANNOUNCEMENT_CLICKED';\nexport const TOGGLE_ANNOUNCEMENT_EXPANDED = 'TOGGLE_ANNOUNCEMENT_EXPANDED';\nexport const ANNOUNCEMENT_FETCH_REQUESTED = 'ANNOUNCEMENT_FETCH_REQUESTED';\nexport const ANNOUNCEMENT_FETCH_STARTED = 'ANNOUNCEMENT_FETCH_STARTED';\nexport const ANNOUNCEMENT_FETCH_SUCCEEDED = 'ANNOUNCEMENT_FETCH_SUCCEEDED';\nexport const ANNOUNCEMENT_FETCH_EXECUTED = 'ANNOUNCEMENT_FETCH_EXECUTED';\nexport const ANNOUNCEMENT_FETCH_FAILED = 'ANNOUNCEMENT_FETCH_FAILED';\n\nexport const ANNOUNCEMENT_DISMISS_STARTED = 'ANNOUNCEMENT_DISMISS_STARTED';\nexport const ANNOUNCEMENT_DISMISS_SUCCEEDED = 'ANNOUNCEMENT_DISMISS_SUCCEEDED';\nexport const ANNOUNCEMENT_DISMISS_EXECUTED = 'ANNOUNCEMENT_DISMISS_EXECUTED';\nexport const ANNOUNCEMENT_DISMISS_FAILED = 'ANNOUNCEMENT_DISMISS_FAILED';\n\nexport const ANNOUNCEMENTS_UPDATED = 'ANNOUNCEMENTS_UPDATED';\nexport const ANNOUNCEMENTS_EXPIRED = 'ANNOUNCEMENTS_EXPIRED';\nexport const ANNOUNCEMENTS_ADDED = 'ANNOUNCEMENTS_ADDED';\nexport const ANNOUNCEMENT_DISMISSED = 'ANNOUNCEMENT_DISMISSED';\nexport const ANNOUNCEMENT_SESSION_DISMISSED = 'ANNOUNCEMENT_SESSION_DISMISSED';\nexport const LINK_OPENED = 'LINK_OPENED';\nexport const SESSION_TIMED_OUT = 'SESSION_TIMED_OUT';\nexport const METRIC_TRACKED = 'METRIC_TRACKED';\nexport const SUBSCRIPTION_STARTED = 'SUBSCRIPTION_STARTED';\nexport const SUBSCRIPTION_SUCCEEDED = 'SUBSCRIPTION_SUCCEEDED';\nexport const SUBSCRIPTION_FAILED = 'SUBSCRIPTION_FAILED';\nexport const ANNOUNCEMENT_CHANGED = 'ANNOUNCEMENT_CHANGED';\nexport const UPDATE_M2M_ANNOUNCEMENTS = 'UPDATE_M2M_ANNOUNCEMENTS';\nexport const ADD_ANNOUNCEMENT = 'ADD_ANNOUNCEMENT';\nexport const DELETE_ANNOUNCEMENT = 'DELETE_ANNOUNCEMENT';\nexport const EDIT_ANNOUNCEMENT = 'EDIT_ANNOUNCEMENT';\n\n//Component Attributes\nexport const MEDIUM = 'md';\nexport const LARGE = 'lg';\nexport const SHOW_MORE_VARIANT = 'secondary';\nexport const DISMISS_ICON = 'close-fill';\nexport const DISMISS_SIZE = MEDIUM;\nexport const CONTROL_VARIANT = 'tertiary';\nexport const COLLAPSE_ICON = 'chevron-up-fill';\nexport const COLLAPSE_ICON_TOOLTIP = 'Collapse';\nexport const EXPAND_ICON = 'chevron-down-fill';\nexport const EXPAND_ICON_TOOLTIP = 'Expand';\nexport const LINK_BEHAVIOR = 'new';\n\nexport const MORE_THAN_NINE = '9+';\nexport const MILLISECONDS_IN_MINUTE = 60000;\n\n//Table names\nexport const BANNER_ANNOUNCEMENT_TABLE_NAME = 'sys_ux_banner_announcement';\nexport const ANNOUNCEMENT = 'announcement';\nexport const M2M = 'm2m';\nexport const CONFIG = 'config';\n\n//AMB Actions\nexport const CHANGE_ACTION = 'change';\nexport const DELETE_ACTION = 'delete';\n\n//UX Metrics Event Names\nexport const LOAD_ANNOUNCEMENT_UPDATE = 'Load Announcement Update';\nexport const EXPAND_COLLAPSE_ANNOUNCEMENT = 'Expand/Collapse Announcement';\nexport const CLICK_ANNOUNCEMENT_LINK = 'Click Announcement Link';\nexport const INITIAL_LOAD_ANNOUNCEMENT = 'Inital Load Announcement';\nexport const DISMISS_ANNOUNCEMENT = 'Dismiss Announcement';\n\n//GraphQL Constants\nexport const ANNOUNCEMENT_GQL_PATH =\n\t'data.GlideBannerAnnouncement_Query.getAnnouncements';\nexport const BANNER_ANNOUNCEMENT_QUERY = `query ($configId: String!) {\n\tGlideBannerAnnouncement_Query {\n\t  getAnnouncements(configId: $configId) {\n\t\tsessionTimeout\n\t\trealTimeEnabled\n\t\tannouncements {\n\t\t\tsysId\t\n\t\t\theading\n\t\t\tsummary\n\t\t\tlink {\n\t\t\t\turl\n\t\t\t\tlabel\n\t\t\t\tclickBehavior\n\t\t\t}\n\t\t\ticon\n\t\t\ticonTooltip\n\t\t\tstartDate\n\t\t\tendDate\n\t\t\tcolor\n\t\t\tnonDismissible\n\t\t\tnonStackable\n\t\t\tcontentPosition\n\t\t}\n\t  }\n\t}\n}`;\n\n//Aria Label Strings\nexport const ANNOUNCEMENTS_ADDED_ACTION = 'added';\nexport const ANNOUNCEMENTS_REMOVED_ACTION = 'removed';\nexport const ANNOUNCEMENTS_UPDATED_ACTION = 'updated';\nexport const ONE = 1;\n\n//Storage Constants\n\nexport const STORAGE_PREFIX = 'dismissed_announcement_';\n\n\n","import '@servicenow/now-icon';\nimport {\n\tCOLLAPSE_ICON_TOOLTIP,\n\tEXPAND_ICON_TOOLTIP,\n\tSN_BANNER_ANNOUNCEMENT_CLICKED,\n\tMORE_THAN_NINE,\n\tANNOUNCEMENT_DISMISSED,\n\tLINK_OPENED,\n\tSHOW_MORE_VARIANT,\n\tANNOUNCEMENT_SESSION_DISMISSED\n} from '../../constants';\nimport {t} from 'sn-translate';\n\nconst calculateAnnouncementCountDisplay = (numAnnouncements) => {\n\tif (Math.abs(numAnnouncements) > 9) return MORE_THAN_NINE;\n\telse if (numAnnouncements >= 1) return numAnnouncements;\n\telse if (numAnnouncements < 0)\n\t\t// in case of the last announcement in the list\n\t\treturn -numAnnouncements; // remove negative sign to get the correct display count\n\treturn null;\n};\n\nexport const dispatchToggle = (dispatch, numAnnouncements, stackType) => {\n\tif (Math.abs(numAnnouncements) >= 1)\n\t\treturn dispatch(SN_BANNER_ANNOUNCEMENT_CLICKED, {stackType});\n};\n\nexport const toggleCollapseExpandIcon = (\n\tdispatch,\n\tnumAnnouncements,\n\texpanded,\n\tsetTargetRef,\n\tcaretIconRef,\n\tstackType,\n\tcolor,\n\tdisplayStyle\n) => {\n\t// let caretIcon = EXPAND_ICON;\n\tlet caretIconTooltip = EXPAND_ICON_TOOLTIP;\n\tconst announcementCountDisplay = calculateAnnouncementCountDisplay(\n\t\tnumAnnouncements-1\n\t)?.toString();\n\tconst announcementNumLabel = t(`${announcementCountDisplay}`);\n\tlet expandCollapseLabel = numAnnouncements===1 ? 'MORE' : t(`EXPAND ALL ${announcementNumLabel}`);\n\n\tif (expanded) {\n\t\t// caretIcon = COLLAPSE_ICON;\n\t\tcaretIconTooltip = COLLAPSE_ICON_TOOLTIP;\n\t\texpandCollapseLabel = numAnnouncements===1 ? 'LESS' : t(`HIDE ALL`);\n\t}\n\n\treturn (\n\t\t<div className='expand-collapse-icon'>\n\t\t\t<button className={`expand-collapse-icon`} style={{color: displayStyle.foregroundColor, backgroundColor:displayStyle.backgroundColor}} on-click={() => dispatchToggle(dispatch, numAnnouncements, stackType)}><span>{expandCollapseLabel}<\/span><\/button>\n\t\t\t<now-tooltip target-ref={caretIconRef} content={caretIconTooltip} />\n\t\t<\/div>\n\t);\n};\n\nexport const dismissAnnouncement = (dispatch, sysId) =>\n\tdispatch(ANNOUNCEMENT_DISMISSED, {sysId});\n\nexport const dismissSessionAnnouncement = (dispatch, sysId) =>\n\tdispatch(ANNOUNCEMENT_SESSION_DISMISSED, {sysId});\n\nexport const openLink = (dispatch, newWindow, e) => {\n\te.stopPropagation();\n\tconst linkConfig = newWindow ? 'new tab/window' : 'same tab/window';\n\tlet userAction = linkConfig;\n\tif (e.metaKey || e.shiftKey) userAction = 'new tab/window';\n\tconst metadata = {\n\t\tlinkConfig,\n\t\tuserAction\n\t};\n\tdispatch(LINK_OPENED, {metadata});\n};\n\nexport const renderIcon = (iconRef, icon, iconTooltip, setTargetRef) => (\n\t<div className=\"icon\">\n\t\t<now-icon\n\t\t\thook-insert={({elm}) => setTargetRef('iconRef', elm)}\n\t\t\thook-destroy={() => setTargetRef(null)}\n\t\t\ticon={icon}\n\t\t/>\n\t\t<now-tooltip target-ref={iconRef} content={iconTooltip} />\n\t<\/div>\n);\n\nexport const renderHeading = (heading) => (\n\t<p className=\"announcement-heading\">{heading}<\/p>\n);\n\nexport const renderSummary = (summary) => (\n\t<span>\n\t\t<p className=\"announcement-summary\">{summary}<\/p>\n\t<\/span>\n);\n\nexport const renderDismissButton = (heading, dispatch, sysId, color, displayStyle, dismissOption) => {\n\t// <now-button-iconic\n\t// \tclassName=\"dismiss-icon\"\n\t// \ticon={DISMISS_ICON}\n\t// \tvariant={CONTROL_VARIANT}\n\t// \tbare\n\t// \tsize={DISMISS_SIZE}\n\t// \thidePadding\n\t// \tconfigAria={{button: {'aria-label': t(`Dismiss announcement: ${heading}`)}}}\n\t// \ton-click={() => dismissAnnouncement(dispatch, sysId)}\n\t// \ttooltipContent={t('Dismiss')}\n\t// />\n\tif(dismissOption === 'session_dismissible'){\n\t\t{/* eslint-disable-next-line jsx-a11y/anchor-is-valid */}\n\t\treturn (<a href=\"javascript:void(0)\" className={`close`} style={{color:displayStyle.foregroundColor}} on-click={() => dismissSessionAnnouncement(dispatch, sysId)}>&times;<\/a>)\n\t} else if(dismissOption === 'dismissible'){\n\t\t{/* eslint-disable-next-line jsx-a11y/anchor-is-valid */}\n\t\treturn (<a href=\"javascript:void(0)\" className={`close`} style={{color:displayStyle.foregroundColor}} on-click={() => dismissAnnouncement(dispatch, sysId)}>&times;<\/a>)\n\t}\n}\n;\n\nexport const renderLink = (isNarrowLink, link, newWindow, dispatch, color) => {\n\tconst {label = '', url = ''} = link || {};\n\tif (!label) return null;\n\n\tconst linkWrapperClass = isNarrowLink ? `narrow-screen-link ${color}` : `link ${color}`;\n\n\treturn (\n\t\t<div className={linkWrapperClass}>\n\t\t\t<now-text-link\n\t\t\t\tlabel={label}\n\t\t\t\thref={url}\n\t\t\t\tvariant={SHOW_MORE_VARIANT}\n\t\t\t\tunderlined\n\t\t\t\topensWindow={newWindow}\n\t\t\t\ton-click={(e) => openLink(dispatch, newWindow, e)}\n\t\t\t/>\n\t\t<\/div>\n\t);\n};\n\nexport const renderButtonLink = (isNarrowLink, link, newWindow, dispatch, color, displayStyle) => {\n\tconst {label = '', url = ''} = link || {};\n\tif (!label) return null;\n\n\tconst linkWrapperClass = isNarrowLink ? \"narrow-screen-link\" : \"link\";\n\treturn (\n\t\t<div className={linkWrapperClass}>\n\t\t\t<a href={url} className={`info-link`} style={{color: displayStyle.foregroundColor}} target='_blank'>{label}<\/a>\n\t\t<\/div>\n\t);\n};\n","import '@servicenow/now-icon';\nimport '@servicenow/now-tooltip';\nimport '@servicenow/now-text-link';\nimport { Fragment } from '@servicenow/ui-renderer-snabbdom';\nimport { LINK_BEHAVIOR, LARGE } from '../../constants';\nimport {\n\ttoggleCollapseExpandIcon,\n\tdispatchToggle,\n\trenderIcon,\n\trenderHeading,\n\trenderSummary,\n\trenderDismissButton,\n\trenderButtonLink\n} from './utils';\n\nconst BannerAnnouncement = (props) => {\n\tconst {\n\t\tsetTargetRef,\n\t\ticon,\n\t\ticonRef,\n\t\ticonTooltip,\n\t\texpanded,\n\t\theading,\n\t\tsummary,\n\t\tlink,\n\t\tnewWindow,\n\t\tnumAnnouncements,\n\t\tdispatch,\n\t\tcaretIconRef,\n\t\tcomponentSize,\n\t\tsysId,\n\t\tcolor,\n\t\tisPeek,\n\t\tstackType,\n\t\tcontentPosition,\n\t\tindex,\n\t\tdisplayStyle,\n\t\tdismissOption\n\t} = props;\n\tconst isWideScreen = componentSize === LARGE;\n\n\t//const showDismiss = !nonDismissible && (expanded || numAnnouncements === 1);\n\tconst showDismiss = dismissOption === 'dismissible' || dismissOption === 'session_dismissible';\n\t//dismissible, session_dismissible, not_dismissible\n\n\t//const showCollapse = (numAnnouncements > 1 && !expanded) || (numAnnouncements < 0 && expanded);\n\tconst showCollapse = (numAnnouncements < 0) || (numAnnouncements > 1 && index === 1) || (!isWideScreen && index === 1 && summary);\n\t//const showCollapse = true;\n\n\tconst showControls = showCollapse;\n\n\tif (isPeek) {\n\t\t// return (\n\t\t// \t<div\n\t\t// \t\tclassName={`banner-root-element show-shadow ${color} peek-announcement`}\n\t\t// \t/>\n\t\t// );\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Fragment>\n\t\t\t<div\n\t\t\t\tclassName={`banner-root-element ${expanded ? '' : 'show-shadow'\n\t\t\t\t\t}`} style={{ color: displayStyle.foregroundColor, backgroundColor: displayStyle.backgroundColor, textAlign: displayStyle.alignment }}>\n\t\t\t\t{isWideScreen ? (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"content\"\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t'text-align': `${contentPosition}`\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ton-click={() =>\n\t\t\t\t\t\t\tdispatchToggle(dispatch, numAnnouncements, stackType)\n\t\t\t\t\t\t}>\n\t\t\t\t\t\t<div className=\"announcement-text\">\n\t\t\t\t\t\t\t{renderIcon(iconRef, icon, iconTooltip, setTargetRef)}\n\t\t\t\t\t\t\t{renderHeading(heading)}\n\t\t\t\t\t\t\t{renderSummary(summary)}\n\t\t\t\t\t\t<\/div>\n\n\t\t\t\t\t\t{renderButtonLink(false, link, newWindow, dispatch, color, displayStyle)}\n\t\t\t\t\t<\/div>\n\t\t\t\t) : (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"content flex-direction-column gap-20\"\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t'text-align': `${contentPosition}`\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ton-click={() =>\n\t\t\t\t\t\t\tdispatchToggle(dispatch, numAnnouncements, stackType)\n\t\t\t\t\t\t}>\n\t\t\t\t\t\t<div className=\"announcement-text\">\n\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t{renderIcon(iconRef, icon, iconTooltip, setTargetRef)}\n\t\t\t\t\t\t\t\t{renderHeading(heading)}\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t{!!expanded && renderSummary(summary)}\n\t\t\t\t\t\t<\/div>\n\n\t\t\t\t\t\t{renderButtonLink(true, link, newWindow, dispatch, color, displayStyle)}\n\t\t\t\t\t<\/div>\n\t\t\t\t)}\n\t\t\t\t{showDismiss ? renderDismissButton(heading, dispatch, sysId, color, displayStyle, dismissOption) : ''}\n\t\t\t<\/div>\n\t\t\t{showControls ? (\n\t\t\t\t<div className={`controls ${showDismiss ? '' : 'no-dismiss'} ${color}`}>\n\t\t\t\t\t{showCollapse\n\t\t\t\t\t\t? toggleCollapseExpandIcon(\n\t\t\t\t\t\t\tdispatch,\n\t\t\t\t\t\t\tnumAnnouncements,\n\t\t\t\t\t\t\texpanded,\n\t\t\t\t\t\t\tsetTargetRef,\n\t\t\t\t\t\t\tcaretIconRef,\n\t\t\t\t\t\t\tstackType,\n\t\t\t\t\t\t\tcolor,\n\t\t\t\t\t\t\tdisplayStyle\n\t\t\t\t\t\t)\n\t\t\t\t\t\t: ''}\n\t\t\t\t<\/div>\n\t\t\t) : null}\n\t\t<\/Fragment>\n\t);\n};\n\nexport default (state, { updateState, dispatch }) => {\n\tconst setTargetRef = (stateKey, ref) =>\n\t\tsetTimeout(() => updateState({ [stateKey]: ref }));\n\tconst {\n\t\tproperties: { link },\n\t\ticonRef,\n\t\tcaretIconRef\n\t} = state;\n\tconst props = {\n\t\tnewWindow: link ? link.clickBehavior === LINK_BEHAVIOR : false,\n\t\tsetTargetRef,\n\t\ticonRef,\n\t\tcaretIconRef,\n\t\tdispatch,\n\t\t...state.properties\n\t};\n\treturn <BannerAnnouncement {...props} />;\n};\n","import {createCustomElement} from '@servicenow/ui-core';\nimport snabbdom from '@servicenow/ui-renderer-snabbdom';\nimport view from './view.js';\nimport styles from './styles.scss';\nimport {\n\tSN_BANNER_ANNOUNCEMENT_CLICKED,\n\tTOGGLE_ANNOUNCEMENT_EXPANDED,\n\tLARGE,\n\tMEDIUM\n} from '../../constants';\nimport rtlBehavior from '@servicenow/behavior-rtl';\n\ncreateCustomElement('snu-announcement', {\n\trenderer: {type: snabbdom},\n\tview,\n\tinitialState: {\n\t\t/**\n\t\t * Defines the icon element referenced by the icon tooltip\n\t\t */\n\t\ticonRef: null,\n\t\t/**\n\t\t * Defines the expand/collapse caret icon for its tooltip\n\t\t */\n\t\tcaretIconRef: null\n\t},\n\tproperties: {\n\t\t/**\n\t\t * Defines the icon in the announcement\n\t\t * @type {String}\n\t\t */\n\t\ticon: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the announcement heading\n\t\t * @type {String}\n\t\t */\n\t\theading: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the summary in the announcement\n\t\t * @type {String}\n\t\t */\n\t\tsummary: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the link and label in the announcement\n\t\t * @type {label: string, url: string, clickBehavior: string}\n\t\t */\n\t\tlink: {\n\t\t\tdefault: {},\n\t\t\tschema: {\n\t\t\t\ttype: 'object'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Needs to be configured if this is the first (or only) announcement in the list\n\t\t * @type {number}\n\t\t */\n\t\tnumAnnouncements: {\n\t\t\tdefault: 0,\n\t\t\tschema: {\n\t\t\t\ttype: 'number'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines whether the announcements are expanded or not\n\t\t * @type {Boolean}\n\t\t */\n\t\texpanded: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: 'boolean'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the text in tooltip over the icon\n\t\t * @type {String}\n\t\t */\n\t\ticonTooltip: {\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the layout of the announcement based on display size\n\t\t * @type {String}\n\t\t */\n\t\tcomponentSize: {\n\t\t\tdefault: LARGE,\n\t\t\tschema: {\n\t\t\t\ttype: 'string',\n\t\t\t\tenum: [MEDIUM, LARGE]\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the sysId of the announcement\n\t\t * @type {String}\n\t\t */\n\t\tsysId: {\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the color of the announcement\n\t\t * @type {String}\n\t\t */\n\t\tcolor: {\n\t\t\tschema: {\n\t\t\t\ttype: 'string',\n\t\t\t\tenum: [\n\t\t\t\t\t'critical',\n\t\t\t\t\t'high',\n\t\t\t\t\t'warning',\n\t\t\t\t\t'moderate',\n\t\t\t\t\t'info',\n\t\t\t\t\t'positive',\n\t\t\t\t\t'low'\n\t\t\t\t]\n\t\t\t}\n\t\t},\n\t\tdisplayStyle:{\n\t\t\tdefault: {},\n\t\t\tschema: {\n\t\t\t\ttype: 'object'\n\t\t\t}\n\t\t},\n\t\tdismissOption: {\n\t\t\tdefault: 'dismissible',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the visual type of the announcement whether to show it as full or peeking\n\t\t * @type {Boolean}\n\t\t */\n\t\tisPeek: {\n\t\t\tschema: {\n\t\t\t\ttype: 'boolean'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines wether the announcement can be dismissed or not\n\t\t * @type {Boolean}\n\t\t */\n\t\tnonDismissible: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: 'boolean'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the type of stack group this announcment belongs to\n\t\t * @type {String}\n\t\t */\n\t\tstackType: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the alignment of the banner text\n\t\t * @type {String}\n\t\t */\n\t\tcontentPosition: {\n\t\t\tdefault: 'start',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\tindex: {\n\t\t\tdefault: 0,\n\t\t\tschema: {\n\t\t\t\ttype: 'number'\n\t\t\t}\n\t\t}\n\t},\n\tstyles,\n\tactionHandlers: {\n\t\t[SN_BANNER_ANNOUNCEMENT_CLICKED]({dispatch, action: {payload}}) {\n\t\t\tdispatch(TOGGLE_ANNOUNCEMENT_EXPANDED, payload);\n\t\t}\n\t},\n\tdispatches: {\n\t\t/**\n\t\t * @private\n\t\t */\n\t\tTOGGLE_ANNOUNCEMENT_EXPANDED: {}\n\t},\n\tbehaviors: [\n\t\t{\n\t\t\tbehavior: rtlBehavior\n\t\t}\n\t]\n});\n","/* Utility functions for session-based servicesß\n * Assumes array types for the values stored in localStorage\n * Example - array of sysId's \n * /\n\n/* Stores JSON Object in localStorage */\nexport const setLocalStorageData = (key, value) => {\n\t//localStorage.setItem(key, JSON.stringify(value));\n\tlocalStorage.setItem(key, value);\n};\n\n/* Retrieves JSON Object from localStorage */\nexport const getLocalStorageData = (key) => {\n\t//const data = JSON.parse(localStorage.getItem(key));\n\t//return data ? data : [];\n\treturn localStorage.getItem(key);\n};\n\n/* Removes JSON Object from localStorage */\nexport const removeLocalStorageData = (key) => {\n\tlocalStorage.removeItem(key);\n};\n\n/* Add item to array in storage */\nexport const addItemToEntry = (key, item) => {\n\tconst items = getLocalStorageData(key);\n\titems.push(item);\n\tsetLocalStorageData(key, items);\n};\n\n/* Remove item from array in storage */\nexport const removeItemFromEntry = (key, itemToRemove) => {\n\tlet items = getLocalStorageData(key);\n\tif (items.includes(itemToRemove)) {\n\t\titems = items?.filter((item) => item !== itemToRemove);\n\t\tsetLocalStorageData(key, items);\n\t\treturn true;\n\t}\n\treturn false;\n};\n","import {\n\tgetLocalStorageData,\n\tremoveLocalStorageData,\n\tremoveItemFromEntry,\n\tsetLocalStorageData\n} from './storageUtils';\nimport {STORAGE_PREFIX} from '../../../constants';\n\nconst storage = window.localStorage;\n//const sessionId = window.g_ck;\n//const storageKey = STORAGE_PREFIX + sessionId; //Key for Dismissed Announcements\nconst storageKey = STORAGE_PREFIX; //Key for Dismissed Announcements\n\n/* Adds the dismissed announcement to the local storage based on the session id */\nexport const addDismissedAnnouncement = (announcementId, sessionId) => {\n\tsetLocalStorageData(storageKey + announcementId, sessionId);\n};\n\n/*\n * Checks to see if there are dismissed announcements in this session, and filters them out\n * of the current announcements that will load\n */\nexport const filterDismissedAnnouncements = (announcements, sessionId) => {\n\t// const items = getLocalStorageData(storageKey);\n\t// const filteredAnnouncements = announcements?.filter(\n\t// \t(announcement) => !items.includes(announcement.sysId)\n\t// );\n\t// return filteredAnnouncements;\n\n\tconst filteredAnnouncements = [];\n    announcements.forEach((announcement) => {\n\tconst dismissed = getLocalStorageData(STORAGE_PREFIX + announcement.sysId) === sessionId;\n      if (!dismissed) {\n\t\tfilteredAnnouncements.push(announcement);\n      }\n    });\n\treturn filteredAnnouncements;\n};\n\n/* Clears all dismissed announcements for the current sesssion */\nexport const removeCurrentSessionsDismissed = () => {\n\tremoveLocalStorageData(storageKey);\n};\n\n/* When starting a new session clears other sessions dismissed announcements */\nexport const removeInactiveSessionsDismissed = (sessionId) => {\n\tfor (let i = 0; i < storage.length; i++) {\n\t\tif (storage.key(i).includes(STORAGE_PREFIX) && getLocalStorageData(storage.key(i)) !== sessionId)\n\t\t\tremoveLocalStorageData(storage.key(i));\n\t}\n};\n\n/* Removes a dismissed announcement from localStorage */\nexport const resetDismiss = (announcement) =>\n\tremoveItemFromEntry(storageKey, announcement.sysId);\n","import isEmpty from 'lodash/isEmpty';\nimport {\n\tANNOUNCEMENTS_EXPIRED,\n\tMILLISECONDS_IN_MINUTE\n} from '../../../constants';\nimport {filterDismissedAnnouncements} from './announcementStorageUtils';\n\nexport const hasErrors = (announcements, payload) => {\n\tif (!announcements || !isEmpty(payload.errors)) return true;\n\n\treturn false;\n};\n\n//get time now UTC\nexport const getTimeNowUTC = () => {\n\tconst now = new Date(); // local time\n\tconst timeNowUTC = new Date(\n\t\tnow.getTime() + now.getTimezoneOffset() * MILLISECONDS_IN_MINUTE\n\t); // get UTC time\n\treturn timeNowUTC;\n};\n\nexport const initializeDateConstant = (\n\tsessionTimeout,\n\tMILLISECONDS_IN_MINUTE\n) => {\n\tconst timeNowUTC = getTimeNowUTC(); // get UTC time\n\tconst sessionTimeoutInMilliSeconds = sessionTimeout * MILLISECONDS_IN_MINUTE;\n\tconst currentWindowTimeLimit = new Date(\n\t\ttimeNowUTC.getTime() + sessionTimeoutInMilliSeconds\n\t);\n\treturn {timeNowUTC, sessionTimeoutInMilliSeconds, currentWindowTimeLimit};\n};\n\nexport const getActiveAnnouncements = (announcements, timeNowUTC, sessionId) => {\n\t// list of all active announcements\n\tlet activeAnnouncements = announcements?.filter(\n\t\t(item) =>\n\t\t\tnew Date(item.startDate) <= timeNowUTC &&\n\t\t\t(item.endDate === '' ? true : new Date(item.endDate) > timeNowUTC)\n\t);\n\n\t//Filter announcements that are dismissed\n\tactiveAnnouncements = filterDismissedAnnouncements(activeAnnouncements, sessionId);\n\treturn activeAnnouncements;\n};\n\n// list of announcements that are currently active but will expire before the current session timeout\nexport const getAnnouncementsExpiringSoon = (\n\tcurrentAnnouncements,\n\tcurrentWindowTimeLimit\n) =>\n\tcurrentAnnouncements?.filter(\n\t\t(item) => new Date(item.endDate) <= currentWindowTimeLimit\n\t);\n\n// list of announcements that are not currently active but will be active before the current session timeout\nexport const getAnnouncementsComingSoon = (\n\tannouncements,\n\tcurrentWindowTimeLimit,\n\ttimeNowUTC\n) =>\n\tannouncements?.filter((item) => {\n\t\tconst startDate = new Date(item.startDate);\n\t\treturn startDate <= currentWindowTimeLimit && startDate > timeNowUTC;\n\t});\n\nexport const groupAnnouncementsByTime = (\n\tannouncements,\n\ttimeNowUTC,\n\tdateType\n) => {\n\tconst announcementsDict = {};\n\tfor (const announcement of announcements) {\n\t\tconst timeDue = new Date(announcement[dateType]) - timeNowUTC;\n\t\tif (!announcementsDict[timeDue]) announcementsDict[timeDue] = [];\n\t\tannouncementsDict[timeDue] = [...announcementsDict[timeDue], announcement];\n\t}\n\treturn announcementsDict;\n};\n\n// delete the announcements that will expire within this session at their respective end times\n// add the announcements that will become active within this session at their respective start times\nexport const addRemoveFutureAnnouncements = (\n\tannouncementsDict,\n\tdispatch,\n\taction\n) => {\n\tfor (let [time, announcements] of Object.entries(announcementsDict)) {\n\t\tif (action === ANNOUNCEMENTS_EXPIRED)\n\t\t\tannouncements = announcements.map((announcement) => announcement.sysId);\n\t\tsetTimeout(() => {\n\t\t\tdispatch(action, {announcements});\n\t\t}, time);\n\t}\n};\n","import {\n\tANNOUNCEMENT_FETCH_REQUESTED,\n\tUPDATE_M2M_ANNOUNCEMENTS,\n\tADD_ANNOUNCEMENT,\n\tDELETE_ANNOUNCEMENT,\n\tEDIT_ANNOUNCEMENT,\n\tANNOUNCEMENTS_ADDED,\n\tANNOUNCEMENTS_EXPIRED\n} from '../../../constants';\nimport reduce from 'lodash/reduce';\nimport isEqual from 'lodash/isEqual';\nimport {createNewAnnouncementFromRecord} from './utils';\nimport {\n\tgetTimeNowUTC,\n\taddRemoveFutureAnnouncements,\n\tgroupAnnouncementsByTime\n} from './effectsUtils';\nimport {removeCurrentSessionsDismissed} from './announcementStorageUtils';\n\nexport const announcementTableAddEdit = (\n\tincorrectDates,\n\tcurrentAnnouncementSysId,\n\tmappedConfigIds,\n\tconfigId,\n\tannouncement,\n\toldRecord,\n\tnewRecord,\n\tdispatch,\n\tannComingSoon,\n\tannExpiringSoon\n) => {\n\tconst timeNowUTC = getTimeNowUTC();\n\t//if the user changes the dates from valid to invalid e.g. an active and visible announcement's start date is moved to the future\n\tif (incorrectDates) {\n\t\tdispatch(DELETE_ANNOUNCEMENT, {currentAnnouncementSysId});\n\t\treturn;\n\t}\n\n\t/*\n\t * if the user changes the incorrect start date, and adds the correct one\n\t * check if it's the correct configId\n\t * If an announcement's start date is in the future and is updated to start in the past\n\t * e.g. current date and time: 1/10 2pm\n\t * and announcement's start is changed from 1/11 2pm to 1/9 2pm\n\t */\n\n\tif (mappedConfigIds && mappedConfigIds.includes(configId))\n\t\tdispatch(ADD_ANNOUNCEMENT, {announcement});\n\telse {\n\t\tconst propertiesChanged = reduce(\n\t\t\toldRecord,\n\t\t\t(result, value, key) =>\n\t\t\t\tisEqual(value, newRecord[key]) ? result : result.concat(key),\n\t\t\t[]\n\t\t)\n\t\t\t.sort()\n\t\t\t.join();\n\t\tdispatch(EDIT_ANNOUNCEMENT, {newRecord, propertiesChanged});\n\t}\n\n\t//If the updated announcement is arriving soon or expiring soon:\n\tif (annComingSoon || annExpiringSoon) {\n\t\tconst transformedAnn = createNewAnnouncementFromRecord({\n\t\t\tnew_record: {...newRecord}\n\t\t});\n\t\tconst annComingOrExpiringSoonDict = groupAnnouncementsByTime(\n\t\t\t[transformedAnn],\n\t\t\ttimeNowUTC,\n\t\t\tannComingSoon ? 'startDate' : 'endDate'\n\t\t);\n\t\taddRemoveFutureAnnouncements(\n\t\t\tannComingOrExpiringSoonDict,\n\t\t\tdispatch,\n\t\t\tannComingSoon ? ANNOUNCEMENTS_ADDED : ANNOUNCEMENTS_EXPIRED\n\t\t);\n\t\tannComingSoon\n\t\t\t? dispatch(DELETE_ANNOUNCEMENT, {currentAnnouncementSysId})\n\t\t\t: '';\n\t}\n};\n\nexport const announcementTableDelete = (currentAnnouncementSysId, dispatch) => {\n\tdispatch(DELETE_ANNOUNCEMENT, {currentAnnouncementSysId});\n};\n\nexport const m2mTableAddEdit = (\n\tconfigId,\n\tcurrentAnnouncementConfigId,\n\tcurrentAnnouncementSysId,\n\tpreviousAnnouncementConfigId,\n\tpreviousAnnouncementSysId,\n\tannouncements,\n\tannouncement,\n\tdispatch\n) => {\n\t//Update announcements only if they belong to the same current configId\n\tif (configId === currentAnnouncementConfigId) {\n\t\t//when a mapping is updated, replace the current announcement with the new one, e.g. mapping changes from A1 <--> C1 to A2 <--> C1\n\t\tif (previousAnnouncementConfigId === currentAnnouncementConfigId)\n\t\t\tdispatch(UPDATE_M2M_ANNOUNCEMENTS, {\n\t\t\t\tpreviousAnnouncementSysId,\n\t\t\t\tannouncements,\n\t\t\t\tannouncement\n\t\t\t});\n\t\t//when a new mapping is created, create a new announcement\n\t\telse dispatch(ADD_ANNOUNCEMENT, {announcement});\n\n\t\t//Delete announcements only if the current_announcement_config_id is not equal to configId, e.g. mapping changes from A1 <--> C1 to A1 <--> C2\n\t} else if (previousAnnouncementConfigId === configId)\n\t\tdispatch(DELETE_ANNOUNCEMENT, {currentAnnouncementSysId});\n};\n\nexport const m2mTableDelete = (\n\tconfigId,\n\tcurrentAnnouncementConfigId,\n\tcurrentAnnouncementSysId,\n\tdispatch\n) => {\n\t//Delete announcements only if they belong to the same current configId\n\tif (configId === currentAnnouncementConfigId)\n\t\tdispatch(DELETE_ANNOUNCEMENT, {currentAnnouncementSysId});\n};\n\nexport const configTableEdit = (\n\tconfigId,\n\tcurrent,\n\tcurrentConfigActive,\n\tupdateState,\n\tdispatch\n) => {\n\t//Toggling of active flag for the config record should hide/show the announcements\n\tif (configId === current) {\n\t\tif (currentConfigActive === 'false') {\n\t\t\tremoveCurrentSessionsDismissed();\n\t\t\tupdateState({\n\t\t\t\tpath: 'announcements',\n\t\t\t\tvalue: [],\n\t\t\t\toperation: 'set'\n\t\t\t});\n\t\t} else dispatch(ANNOUNCEMENT_FETCH_REQUESTED, {configId});\n\t}\n};\n\nexport const configTableDelete = (configId, current, updateState) => {\n\tif (configId === current) {\n\t\tupdateState({\n\t\t\tpath: 'announcements',\n\t\t\tvalue: [],\n\t\t\toperation: 'set'\n\t\t});\n\t}\n};\n","import {\n\tANNOUNCEMENT,\n\tCHANGE_ACTION,\n\tCONFIG,\n\tDELETE_ACTION,\n\tM2M\n} from '../../../constants';\nimport {\n\tannouncementTableAddEdit,\n\tannouncementTableDelete,\n\tconfigTableDelete,\n\tconfigTableEdit,\n\tm2mTableAddEdit,\n\tm2mTableDelete\n} from './ambHandlerUtils';\nimport {resetDismiss} from './announcementStorageUtils';\n\nexport const getList = (\n\texpanded,\n\tannouncements,\n\tlength,\n\tcomponentSize,\n\tstackType\n) =>\n\tannouncements.map((content, count) => {\n\t\tif (!content) return;\n\n\t\t/*\n\t\t * graphQL API returns iconToolTip. AMB returns icon_tooltip\n\t\t * TODO need to make graphql and AMB return values the same naming convention\n\t\t */\n\t\tconst iconTooltip = content.iconTooltip\n\t\t\t? content.iconTooltip\n\t\t\t: content.icon_tooltip;\n\n\t\treturn (\n\t\t\t<snu-announcement\n\t\t\t\tcomponentSize={componentSize}\n\t\t\t\texpanded={expanded}\n\t\t\t\tstackType={stackType}\n\t\t\t\ticon={content.icon}\n\t\t\t\theading={content.heading}\n\t\t\t\tsummary={content.summary}\n\t\t\t\tlink={content.link}\n\t\t\t\t//set numAnnouncements to negative only for the last announcement when there are multiple announcements\n\t\t\t\tnumAnnouncements={length > 1 && count === length - 1 ? -length : length}\n\t\t\t\ticonTooltip={iconTooltip}\n\t\t\t\tsysId={content.sysId}\n\t\t\t\tcolor={content.color}\n\t\t\t\tdisplayStyle={content.displayStyle}\n\t\t\t\tisPeek={!expanded && (count === 1 || count === 2)}\n\t\t\t\tnonDismissible={content.nonDismissible}\n\t\t\t\tcontentPosition={content.contentPosition}\n\t\t\t\tindex = {count+1}\n\t\t\t\tdismissOption = {content.dismissOption}\n\t\t\t/>\n\t\t);\n\t});\n\nexport const createNewAnnouncementFromRecord = (announcement) => {\n\tconst {\n\t\tnew_record: {\n\t\t\ticon = '',\n\t\t\theading = '',\n\t\t\tsummary = '',\n\t\t\ticon_tooltip = '',\n\t\t\tsysId = '',\n\t\t\tcolor = '',\n\t\t\tlink_url = '',\n\t\t\tlink_label = '',\n\t\t\tlink_click_behavior = '',\n\t\t\tstart = '',\n\t\t\tend = '',\n\t\t\tnonDismissible = '',\n\t\t\tnonStackable = '',\n\t\t\tcontentPosition = ''\n\t\t}\n\t} = announcement;\n\n\treturn {\n\t\ticon,\n\t\theading,\n\t\tsummary,\n\t\ticonTooltip: icon_tooltip,\n\t\tsysId,\n\t\tcolor,\n\t\tlink: {\n\t\t\turl: link_url,\n\t\t\tlabel: link_label,\n\t\t\tclickBehavior: link_click_behavior\n\t\t},\n\t\tstartDate: start,\n\t\tendDate: end,\n\t\tnonDismissible,\n\t\tnonStackable,\n\t\tcontentPosition\n\t};\n};\n\nexport const getUpdatedAnnouncements = (announcements, announcement) => {\n\tconst {\n\t\tlink_url: url,\n\t\tlink_label: label,\n\t\tlink_click_behavior: clickBehavior,\n\t\tadd_link: addLink\n\t} = announcement;\n\n\t//If previously dismissed, reset the dismiss and bump announcement when updated by AMB\n\tannouncements = resetDismiss(announcement)\n\t\t? [announcement, ...announcements]\n\t\t: announcements;\n\n\treturn announcements.reduce((acc, curr) => {\n\t\t//Update link on component if \"add link\" flag is toggled\n\t\tif (announcement.sysId === curr.sysId) {\n\t\t\tif (addLink === '0') {\n\t\t\t\t//hide the link\n\t\t\t\tannouncement.link = {};\n\t\t\t} else if (addLink === '1') {\n\t\t\t\t//show the link\n\t\t\t\tannouncement.link = {\n\t\t\t\t\turl,\n\t\t\t\t\tlabel,\n\t\t\t\t\tclickBehavior\n\t\t\t\t};\n\t\t\t}\n\t\t\t//Bump announcement to top of list when heading is changed\n\t\t\treturn announcement.heading !== curr.heading\n\t\t\t\t? [announcement, ...acc]\n\t\t\t\t: [...acc, announcement];\n\t\t}\n\t\treturn [...acc, curr];\n\t}, []);\n};\n\nexport const handleAnnouncementChange = (\n\tannouncement,\n\tupdateState,\n\tstate,\n\tdispatch\n) => {\n\tconst {\n\t\toperation,\n\t\tcurrent_announcement_sys_id: currentAnnouncementSysId,\n\t\tprevious_announcement_sys_id: previousAnnouncementSysId,\n\t\tmappedConfigIds,\n\t\tnew_record: newRecord,\n\t\told_record: oldRecord,\n\t\tcurrent_announcement_config_id: currentAnnouncementConfigId,\n\t\tprevious_announcement_config_id: previousAnnouncementConfigId,\n\t\tincorrect_dates: incorrectDates,\n\t\tannComingSoon,\n\t\tannExpiringSoon\n\t} = announcement;\n\tconst {configId} = state.properties;\n\tconst {announcements} = state;\n\tconst tableName = operation.split('_')[0];\n\tconst action = operation.split('_')[1];\n\n\tswitch (tableName) {\n\t\tcase ANNOUNCEMENT:\n\t\t\tswitch (action) {\n\t\t\t\tcase CHANGE_ACTION:\n\t\t\t\t\tannouncementTableAddEdit(\n\t\t\t\t\t\tincorrectDates,\n\t\t\t\t\t\tcurrentAnnouncementSysId,\n\t\t\t\t\t\tmappedConfigIds,\n\t\t\t\t\t\tconfigId,\n\t\t\t\t\t\tannouncement,\n\t\t\t\t\t\toldRecord,\n\t\t\t\t\t\tnewRecord,\n\t\t\t\t\t\tdispatch,\n\t\t\t\t\t\tannComingSoon,\n\t\t\t\t\t\tannExpiringSoon\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase DELETE_ACTION:\n\t\t\t\t\tannouncementTableDelete(currentAnnouncementSysId, dispatch);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tbreak;\n\t\tcase M2M:\n\t\t\tswitch (action) {\n\t\t\t\tcase CHANGE_ACTION:\n\t\t\t\t\tm2mTableAddEdit(\n\t\t\t\t\t\tconfigId,\n\t\t\t\t\t\tcurrentAnnouncementConfigId,\n\t\t\t\t\t\tcurrentAnnouncementSysId,\n\t\t\t\t\t\tpreviousAnnouncementConfigId,\n\t\t\t\t\t\tpreviousAnnouncementSysId,\n\t\t\t\t\t\tannouncements,\n\t\t\t\t\t\tannouncement,\n\t\t\t\t\t\tdispatch\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase DELETE_ACTION:\n\t\t\t\t\tm2mTableDelete(\n\t\t\t\t\t\tconfigId,\n\t\t\t\t\t\tcurrentAnnouncementConfigId,\n\t\t\t\t\t\tcurrentAnnouncementSysId,\n\t\t\t\t\t\tdispatch\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tbreak;\n\t\tcase CONFIG:\n\t\t\t/* eslint-disable-next-line no-case-declarations */\n\t\t\tconst {\n\t\t\t\tcurrent_config_active: currentConfigActive,\n\t\t\t\tcurrent\n\t\t\t} = announcement;\n\t\t\tswitch (action) {\n\t\t\t\tcase CHANGE_ACTION:\n\t\t\t\t\tconfigTableEdit(\n\t\t\t\t\t\tconfigId,\n\t\t\t\t\t\tcurrent,\n\t\t\t\t\t\tcurrentConfigActive,\n\t\t\t\t\t\tupdateState,\n\t\t\t\t\t\tdispatch\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase DELETE_ACTION:\n\t\t\t\t\tconfigTableDelete(configId, current, updateState);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tbreak;\n\t}\n};\n\nexport const getUpdatedAriaMessage = (\n\tupdateCount,\n\tcurrentCount,\n\tannouncementAction,\n\tupdateState\n) => {\n\tconst isMultiple = currentCount > 1;\n\n\tconst getUpdateAriaMessage = `${updateCount} ${\n\t\tupdateCount > 1 ? 'announcements have' : 'announcement has'\n\t} been ${announcementAction}. `;\n\n\t//If there are no announcements left to display, getStatusAriaMessage should be empty\n\tconst getStatusAriaMessage =\n\t\tcurrentCount === 0\n\t\t\t? ''\n\t\t\t: `There ${isMultiple ? 'are' : 'is'} ${currentCount}\\\n ${isMultiple ? 'announcements' : 'announcement'} displayed.`;\n\n\tupdateState({\n\t\toperation: 'set',\n\t\tpath: 'ariaMessage',\n\t\tvalue: getUpdateAriaMessage + getStatusAriaMessage\n\t});\n};\n\nexport const isNonDismissible = (announcement) => {\n\treturn announcement.nonDismissible === 'true';\n};\n\nexport const isNonStackable = (announcement) => {\n\treturn announcement.nonStackable === 'true';\n};\n\nexport const nonDismissibleStackExpandedKey = 'nonDismissibleStackExpanded';\nexport const dismissibleStackExpandedKey = 'dismissibleStackExpanded';\n","import '../snu-announcement';\nimport '@servicenow/now-icon';\nimport '@servicenow/now-text-link';\nimport '@servicenow/now-tooltip';\nimport {t} from 'sn-translate';\n\nimport {\n\tgetList,\n\tisNonDismissible,\n\tisNonStackable,\n\tnonDismissibleStackExpandedKey,\n\tdismissibleStackExpandedKey\n} from './utils/utils';\nimport {LARGE, MEDIUM} from '../../constants';\n\nconst BannerAnnouncementList = (props) => {\n\tconst {\n\t\tannouncements,\n\t\tcomponentSize,\n\t\tariaMessage,\n\t\tdismissibleStackExpanded,\n\t\tnonDismissibleStackExpanded\n\t} = props;\n\n\tconst ariaLabel = ariaMessage\n\t\t? ariaMessage\n\t\t: `There are ${announcements.length} announcements displayed`;\n\n\tconst renderAnnouncements = (\n\t\texpanded,\n\t\tannouncements,\n\t\tcomponentSize,\n\t\tstackType = ''\n\t) => {\n\t\t// for the collapsed state, get top 3 announcements to show one in full and other 2 as peek cards\n\t\tconst announcementsToShow = expanded\n\t\t\t? announcements\n\t\t\t: announcements.slice(0, 3);\n\n\t\treturn getList(\n\t\t\texpanded,\n\t\t\tannouncementsToShow,\n\t\t\tannouncements.length,\n\t\t\tcomponentSize,\n\t\t\tstackType\n\t\t);\n\t};\n\n\tconst categorizedAnnouncements = announcements.reduce(\n\t\t(acc, ann) => {\n\t\t\tif (isNonDismissible(ann) && isNonStackable(ann)) {\n\t\t\t\tacc.nonDismissNonStack.push(ann);\n\t\t\t} else if (!isNonDismissible(ann) && isNonStackable(ann)) {\n\t\t\t\tacc.dismissNonStack.push(ann);\n\t\t\t} else if (isNonDismissible(ann) && !isNonStackable(ann)) {\n\t\t\t\tacc.nonDismissStack.push(ann);\n\t\t\t} else {\n\t\t\t\tacc.dismissStack.push(ann);\n\t\t\t}\n\t\t\treturn acc;\n\t\t},\n\t\t{\n\t\t\tnonDismissNonStack: [],\n\t\t\tdismissNonStack: [],\n\t\t\tnonDismissStack: [],\n\t\t\tdismissStack: []\n\t\t}\n\t);\n\n\treturn (\n\t\t<div className=\"announcement-wrapper\">\n\t\t\t<div\n\t\t\t\taria-label={t(ariaLabel)}\n\t\t\t\taria-live=\"polite\"\n\t\t\t\trole=\"region\"\n\t\t\t\taria-atomic=\"false\"\n\t\t\t/>\n\t\t\t{categorizedAnnouncements.nonDismissNonStack.map((announcement) =>\n\t\t\t\trenderAnnouncements(false, [announcement], componentSize)\n\t\t\t)}\n\t\t\t{categorizedAnnouncements.dismissNonStack.map((announcement) =>\n\t\t\t\trenderAnnouncements(false, [announcement], componentSize)\n\t\t\t)}\n\t\t\t{renderAnnouncements(\n\t\t\t\tnonDismissibleStackExpanded,\n\t\t\t\tcategorizedAnnouncements.nonDismissStack,\n\t\t\t\tcomponentSize,\n\t\t\t\tnonDismissibleStackExpandedKey\n\t\t\t)}\n\t\t\t{renderAnnouncements(\n\t\t\t\tdismissibleStackExpanded,\n\t\t\t\tcategorizedAnnouncements.dismissStack,\n\t\t\t\tcomponentSize,\n\t\t\t\tdismissibleStackExpandedKey\n\t\t\t)}\n\t\t<\/div>\n\t);\n};\n\nexport default (state) => {\n\tconst {\n\t\tannouncements,\n\t\texpanded,\n\t\tariaMessage,\n\t\tnonDismissibleStackExpanded,\n\t\tdismissibleStackExpanded\n\t} = state;\n\n\tconst props = {\n\t\tannouncements,\n\t\texpanded,\n\t\tariaMessage,\n\t\tnonDismissibleStackExpanded,\n\t\tdismissibleStackExpanded,\n\t\tcomponentSize: state.behaviors?.mediaQuery.mediumQuery ? MEDIUM : LARGE\n\t};\n\treturn <BannerAnnouncementList {...props} />;\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__.__esModule\n\t\t\t\t\tif (cjsModule && 'default' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"][\"default\"];\n\t\t\t\t\t} else if ('default' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"] || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__[\"default\"][\"default\"];\n\t\t\t\t} });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"createAmbSubscriptionEffect\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__.__esModule\n\t\t\t\t\tif (cjsModule && 'createAmbSubscriptionEffect' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__[\"default\"].createAmbSubscriptionEffect;\n\t\t\t\t\t} else if ('createAmbSubscriptionEffect' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__.createAmbSubscriptionEffect || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_amb_index_jsdbx_c4604411__[\"default\"].createAmbSubscriptionEffect;\n\t\t\t\t} });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"createHttpEffect\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__.__esModule\n\t\t\t\t\tif (cjsModule && 'createHttpEffect' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__[\"default\"].createHttpEffect;\n\t\t\t\t\t} else if ('createHttpEffect' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__.createHttpEffect || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_effect_http_index_jsdbx_efdee9e7__[\"default\"].createHttpEffect;\n\t\t\t\t} });","import {createAmbSubscriptionEffect} from '@servicenow/ui-effect-amb';\nimport {createHttpEffect} from '@servicenow/ui-effect-http';\nimport get from 'lodash/get';\nimport {\n\tANNOUNCEMENTS_ADDED,\n\tANNOUNCEMENTS_ADDED_ACTION,\n\tANNOUNCEMENTS_EXPIRED,\n\tANNOUNCEMENTS_REMOVED_ACTION,\n\tANNOUNCEMENTS_UPDATED,\n\tANNOUNCEMENTS_UPDATED_ACTION,\n\tANNOUNCEMENT_CHANGED,\n\tANNOUNCEMENT_FETCH_FAILED,\n\tANNOUNCEMENT_FETCH_STARTED,\n\tANNOUNCEMENT_FETCH_SUCCEEDED,\n\tBANNER_ANNOUNCEMENT_TABLE_NAME,\n\tDISMISS_ANNOUNCEMENT,\n\tEXPAND_COLLAPSE_ANNOUNCEMENT,\n\tINITIAL_LOAD_ANNOUNCEMENT,\n\tLOAD_ANNOUNCEMENT_UPDATE,\n\tMETRIC_TRACKED,\n\tMILLISECONDS_IN_MINUTE,\n\tONE,\n\tSESSION_TIMED_OUT,\n\tSUBSCRIPTION_FAILED,\n\tSUBSCRIPTION_STARTED,\n\tSUBSCRIPTION_SUCCEEDED,\n\tANNOUNCEMENT_DISMISS_STARTED,\n\tANNOUNCEMENT_DISMISS_SUCCEEDED,\n\tANNOUNCEMENT_DISMISS_FAILED,\n\tANNOUNCEMENT_DISMISS_EXECUTED\n} from '../../constants';\nimport {\n\taddDismissedAnnouncement,\n\tresetDismiss,\n\tremoveInactiveSessionsDismissed\n} from './utils/announcementStorageUtils';\nimport {\n\taddRemoveFutureAnnouncements,\n\tgetActiveAnnouncements,\n\tgetAnnouncementsComingSoon,\n\tgetAnnouncementsExpiringSoon,\n\tgroupAnnouncementsByTime,\n\thasErrors,\n\tinitializeDateConstant\n} from './utils/effectsUtils';\nimport {\n\tcreateNewAnnouncementFromRecord,\n\tgetUpdatedAnnouncements,\n\tgetUpdatedAriaMessage\n} from './utils/utils';\n\n//Component Behavior effects\nexport const announcementSessionDismissedEffect = ({\n\taction: {\n\t\tpayload: {sysId}\n\t},\n\tupdateState,\n\tstate,\n\tdispatch\n}) => {\n\tconst currentAnnouncements = state.announcements.filter(\n\t\t(a) => a.sysId !== sysId\n\t);\n\tdispatch(METRIC_TRACKED, {eventName: DISMISS_ANNOUNCEMENT});\n\tconst sessionId = state.sessionId;\n\taddDismissedAnnouncement(sysId, sessionId);\n\n\tupdateState({\n\t\toperation: 'set',\n\t\tpath: 'announcements',\n\t\tvalue: currentAnnouncements\n\t});\n\tgetUpdatedAriaMessage(\n\t\tONE,\n\t\tcurrentAnnouncements.length,\n\t\tANNOUNCEMENTS_REMOVED_ACTION,\n\t\tupdateState\n\t);\n};\n\nexport const announcementDismissedEffect = ({\n\taction: {\n\t\tpayload: {sysId}\n\t},\n\tupdateState,\n\tstate,\n\tdispatch\n}) => {\n\tconst currentAnnouncements = state.announcements.filter(\n\t\t(a) => a.sysId !== sysId\n\t);\n\tdispatch(METRIC_TRACKED, {eventName: DISMISS_ANNOUNCEMENT});\n\tconst sessionId = state.sessionId;\n\taddDismissedAnnouncement(sysId, sessionId);\n\n\tupdateState({\n\t\toperation: 'set',\n\t\tpath: 'announcements',\n\t\tvalue: currentAnnouncements\n\t});\n\tgetUpdatedAriaMessage(\n\t\tONE,\n\t\tcurrentAnnouncements.length,\n\t\tANNOUNCEMENTS_REMOVED_ACTION,\n\t\tupdateState\n\t);\n\t//TODO make http call\n\tdispatch(ANNOUNCEMENT_DISMISS_EXECUTED, {data: sysId});\n};\n\nexport const toggleAnnouncementExpandedEffect = ({\n\tupdateState,\n\tstate,\n\tdispatch,\n\taction: {payload}\n}) => {\n\tconst metadata = {\n\t\taction: state[`${payload.stackType}`] ? 'collapse' : 'expand'\n\t};\n\n\t// TODO: Update metric for stack type\n\tdispatch(METRIC_TRACKED, {eventName: EXPAND_COLLAPSE_ANNOUNCEMENT, metadata});\n\n\tupdateState({\n\t\toperation: 'set',\n\t\tpath: `${payload.stackType}`,\n\t\tvalue: !state[`${payload.stackType}`]\n\t});\n};\n\n//Data fetching effects\n// export const announcementFetchExecutedEffect = createGraphQLEffect(\n// \tBANNER_ANNOUNCEMENT_QUERY,\n// \t{\n// \t\tvariableList: ['configId'],\n// \t\tstartActionType: ANNOUNCEMENT_FETCH_STARTED, // gql http request started\n// \t\tsuccessActionType: ANNOUNCEMENT_FETCH_SUCCEEDED, // gql request succeeded with result\n// \t\terrorActionType: ANNOUNCEMENT_FETCH_FAILED\n// \t}\n// );\n\nexport const getHTTPInterceptor = ({ effects, coeffects }) => {\n\tconst {dataUrl} = coeffects.properties;\n\tconst httpEffect = createHttpEffect(dataUrl, {\n\t  method: 'GET',\n\t  batch: false,\n\t  startActionType: ANNOUNCEMENT_FETCH_STARTED,\n\t  successActionType: ANNOUNCEMENT_FETCH_SUCCEEDED,\n\t  errorActionType: ANNOUNCEMENT_FETCH_FAILED,\n\t});\n\treturn {\n\t  coeffects,\n\t  effects: [\n\t\t...effects,\n\t\t{\n\t\t  ...httpEffect,\n\t\t  args: [...httpEffect.args, coeffects],\n\t\t},\n\t  ],\n\t};\n  };\n\nexport const getDismissInterceptor = ({ effects, coeffects }) => {\nconst {dismissUrl} = coeffects.properties;\nconst httpEffect = createHttpEffect(dismissUrl, {\n\tmethod: 'POST',\n\tbatch: false,\n    pathParams: 'data',\n\tstartActionType: ANNOUNCEMENT_DISMISS_STARTED,\n\tsuccessActionType: ANNOUNCEMENT_DISMISS_SUCCEEDED,\n\terrorActionType: ANNOUNCEMENT_DISMISS_FAILED,\n});\nreturn {\n\tcoeffects,\n\teffects: [\n\t...effects,\n\t{\n\t\t...httpEffect,\n\t\targs: [...httpEffect.args, coeffects],\n\t},\n\t],\n};\n};\n\n// export const announcementFetchExecutedEffect = createHttpEffect(BANNER_ANNOUNCEMENT_REST_QUERY, {\n// \tmethod: 'GET',\n// \tbatch: true,\n// \tstartActionType: ANNOUNCEMENT_FETCH_STARTED,\n// \tsuccessActionType: ANNOUNCEMENT_FETCH_SUCCEEDED,\n// \terrorActionType: ANNOUNCEMENT_FETCH_FAILED,\n// });\n\n//Scheduled or Expired announcement effects\nexport const announcementsAddedEffect = ({\n\taction: {\n\t\tpayload: {announcements}\n\t},\n\tstate,\n\tdispatch,\n\tupdateState\n}) => {\n\tconst currentAnnouncements = [...announcements, ...state.announcements];\n\tconst metadata = {\n\t\tchangeType: 'added',\n\t\tsysIds: announcements.map((item) => item.sysId),\n\t\tsource: 'scheduled'\n\t};\n\tgetUpdatedAriaMessage(\n\t\tannouncements.length,\n\t\tcurrentAnnouncements.length,\n\t\tANNOUNCEMENTS_ADDED_ACTION,\n\t\tupdateState\n\t);\n\tdispatch(ANNOUNCEMENTS_UPDATED, {currentAnnouncements});\n\tdispatch(METRIC_TRACKED, {eventName: LOAD_ANNOUNCEMENT_UPDATE, metadata});\n};\n\nexport const announcementsExpiredEffect = ({\n\taction: {\n\t\tpayload: {announcements: announcementIds}\n\t},\n\tstate,\n\tdispatch,\n\tupdateState\n}) => {\n\tconst metadata = {\n\t\tchangeType: 'removed',\n\t\tsysIds: announcementIds,\n\t\tsource: 'scheduled'\n\t};\n\tconst currentAnnouncements = state.announcements.filter(\n\t\t(announcement) => !announcementIds.includes(announcement.sysId)\n\t);\n\tgetUpdatedAriaMessage(\n\t\tannouncementIds.length,\n\t\tcurrentAnnouncements.length,\n\t\tANNOUNCEMENTS_REMOVED_ACTION,\n\t\tupdateState\n\t);\n\tdispatch(ANNOUNCEMENTS_UPDATED, {currentAnnouncements});\n\tdispatch(METRIC_TRACKED, {eventName: LOAD_ANNOUNCEMENT_UPDATE, metadata});\n};\n\nexport const announcementsUpdatedEffect = ({\n\taction: {\n\t\tpayload: {currentAnnouncements}\n\t},\n\tupdateState\n}) => {\n\tupdateState({\n\t\toperation: 'set',\n\t\tpath: 'announcements',\n\t\tvalue: currentAnnouncements\n\t});\n};\n\n//AMB related effects\nexport const subscriptionChangedEffect = createAmbSubscriptionEffect(\n\t'/uxbannerannouncements',\n\t{\n\t\tsubscribeStartedActionType: SUBSCRIPTION_STARTED,\n\t\tsubscribeSucceededActionType: SUBSCRIPTION_SUCCEEDED,\n\t\tsubscribeFailedActionType: SUBSCRIPTION_FAILED,\n\t\tmessageReceivedActionType: ANNOUNCEMENT_CHANGED\n\t}\n);\n\nexport const addAnnouncementEffect = ({\n\taction: {\n\t\tpayload: {announcement}\n\t},\n\tupdateState,\n\tstate,\n\tdispatch\n}) => {\n\t//Make sure we do not add duplicate announcements with the same sysId\n\tconst hasDuplicate = state.announcements.some(\n\t\t(ann) => announcement.new_record.sysId === ann.sysId\n\t);\n\n\tif (hasDuplicate) return;\n\n\tconst announcementToAdd = createNewAnnouncementFromRecord(announcement);\n\tresetDismiss(announcementToAdd);\n\tconst currentAnnouncements = [announcementToAdd, ...state.announcements];\n\tconst metadata = {\n\t\tchangeType: 'added',\n\t\tsysId: announcementToAdd.sysId,\n\t\tsource: 'realTime'\n\t};\n\tupdateState({\n\t\tpath: 'announcements',\n\t\tvalue: currentAnnouncements,\n\t\toperation: 'set'\n\t});\n\tgetUpdatedAriaMessage(\n\t\tONE,\n\t\tcurrentAnnouncements.length,\n\t\tANNOUNCEMENTS_ADDED_ACTION,\n\t\tupdateState\n\t);\n\tdispatch(METRIC_TRACKED, {eventName: LOAD_ANNOUNCEMENT_UPDATE, metadata});\n};\n\nexport const deleteAnnouncementEffect = ({\n\taction: {\n\t\tpayload: {currentAnnouncementSysId}\n\t},\n\tupdateState,\n\tstate,\n\tdispatch\n}) => {\n\tconst metadata = {\n\t\tchangeType: 'removed',\n\t\tsysId: currentAnnouncementSysId,\n\t\tsource: 'realTime'\n\t};\n\tconst updatedAnnouncements = state.announcements.filter(\n\t\t(announcement) => currentAnnouncementSysId !== announcement.sysId\n\t);\n\tgetUpdatedAriaMessage(\n\t\tONE,\n\t\tupdatedAnnouncements.length,\n\t\tANNOUNCEMENTS_REMOVED_ACTION,\n\t\tupdateState\n\t);\n\tupdateState({\n\t\tpath: 'announcements',\n\t\tvalue: updatedAnnouncements,\n\t\toperation: 'set'\n\t});\n\tdispatch(METRIC_TRACKED, {eventName: LOAD_ANNOUNCEMENT_UPDATE, metadata});\n};\n\nexport const editAnnouncementEffect = ({\n\taction: {\n\t\tpayload: {newRecord, propertiesChanged}\n\t},\n\tupdateState,\n\tstate,\n\tdispatch\n}) => {\n\tconst {announcements} = state;\n\tconst updatedAnnouncements = getUpdatedAnnouncements(\n\t\tannouncements,\n\t\tnewRecord\n\t);\n\tconst metadata = {\n\t\tchangeType: 'modified',\n\t\tpropertiesChanged,\n\t\tsource: 'realTime'\n\t};\n\tupdateState({\n\t\tpath: 'announcements',\n\t\tvalue: updatedAnnouncements,\n\t\toperation: 'set'\n\t});\n\tgetUpdatedAriaMessage(\n\t\tONE,\n\t\tupdatedAnnouncements.length,\n\t\tANNOUNCEMENTS_UPDATED_ACTION,\n\t\tupdateState\n\t);\n\tdispatch(METRIC_TRACKED, {eventName: LOAD_ANNOUNCEMENT_UPDATE, metadata});\n};\n\nexport const updateM2mAnnouncementsEffect = ({\n\taction: {\n\t\tpayload: {previousAnnouncementSysId, announcements, announcement}\n\t},\n\tupdateState,\n\tdispatch\n}) => {\n\tconst updatedAnnouncements = announcements.filter(\n\t\t(announcement) => previousAnnouncementSysId !== announcement.sysId\n\t);\n\tconst announcementToAdd = createNewAnnouncementFromRecord(announcement);\n\tconst currentAnnouncements = [announcementToAdd, ...updatedAnnouncements];\n\n\tupdateState({\n\t\tpath: 'announcements',\n\t\tvalue: currentAnnouncements,\n\t\toperation: 'set'\n\t});\n\tconst metadataAdded = {\n\t\tchangeType: 'added',\n\t\tsysId: announcementToAdd.sysId,\n\t\tsource: 'realTime'\n\t};\n\tconst metadataRemoved = {\n\t\tchangeType: 'removed',\n\t\tsysId: previousAnnouncementSysId,\n\t\tsource: 'realTime'\n\t};\n\tgetUpdatedAriaMessage(\n\t\tONE,\n\t\tcurrentAnnouncements.length,\n\t\tANNOUNCEMENTS_UPDATED_ACTION,\n\t\tupdateState\n\t);\n\tdispatch(METRIC_TRACKED, {\n\t\teventName: LOAD_ANNOUNCEMENT_UPDATE,\n\t\tmetadataAdded\n\t});\n\tdispatch(METRIC_TRACKED, {\n\t\teventName: LOAD_ANNOUNCEMENT_UPDATE,\n\t\tmetadataRemoved\n\t});\n};\n\nexport const fetchAllAnnouncements = (\n\tannouncements,\n\ttimeNowUTC,\n\tcurrentWindowTimeLimit,\n\tsessionId\n) => {\n\t//get list of all active announcements that are not dismissed\n\tconst currentAnnouncements = getActiveAnnouncements(\n\t\tannouncements,\n\t\ttimeNowUTC,\n\t\tsessionId\n\t);\n\n\t//get list of announcements that are currently active but will expire before the current session timeout\n\tconst announcementsExpiringSoon = getAnnouncementsExpiringSoon(\n\t\tcurrentAnnouncements,\n\t\tcurrentWindowTimeLimit\n\t);\n\n\t//get list of announcements that are not currently active but will be active before the current session timeout\n\tconst announcementsComingSoon = getAnnouncementsComingSoon(\n\t\tannouncements,\n\t\tcurrentWindowTimeLimit,\n\t\ttimeNowUTC\n\t);\n\n\treturn {\n\t\tcurrentAnnouncements,\n\t\tannouncementsExpiringSoon,\n\t\tannouncementsComingSoon\n\t};\n};\n\nexport const updateFutureAnnouncements = (\n\tannouncementsExpiringSoon,\n\tannouncementsComingSoon,\n\ttimeNowUTC,\n\tdispatch\n) => {\n\t// group expring announcements by their time to expire\n\tconst announcementsExpiryDict = groupAnnouncementsByTime(\n\t\tannouncementsExpiringSoon,\n\t\ttimeNowUTC,\n\t\t'endDate'\n\t);\n\n\t// group incoming announcements by their time to arrive\n\tconst announcementsArrivalDict = groupAnnouncementsByTime(\n\t\tannouncementsComingSoon,\n\t\ttimeNowUTC,\n\t\t'startDate'\n\t);\n\n\t// delete the announcements that will expire within this session at their respective end times\n\taddRemoveFutureAnnouncements(\n\t\tannouncementsExpiryDict,\n\t\tdispatch,\n\t\tANNOUNCEMENTS_EXPIRED\n\t);\n\n\t// add the announcements that will become active within this session at their respective start times\n\taddRemoveFutureAnnouncements(\n\t\tannouncementsArrivalDict,\n\t\tdispatch,\n\t\tANNOUNCEMENTS_ADDED\n\t);\n};\n\nexport const announcementDismissSucceededEffect = () => {\n\t//Nothing..????\n};\n\n/*export const announcementDismissSucceededEffect = ({\n\taction: {payload},\n\tdispatch,\n\tupdateState,\n\tstate\n}) => {\n\t//Nothing..????\n};*/\n\nexport const announcementFetchSucceededEffect = ({\n\taction: {payload},\n\tdispatch,\n\tupdateState,\n\tstate\n}) => {\n\t// const {announcements, sessionTimeout, realTimeEnabled} = get(\n\t// \tpayload,\n\t// \tANNOUNCEMENT_GQL_PATH,\n\t// \t{}\n\t// );\n\tconst {announcements, sessionTimeout, realTimeEnabled, sessionId} = get(payload, 'result', {});\n\n\tupdateState({\n\t\tpath: 'sessionId',\n\t\tvalue: sessionId,\n\t\toperation: 'set'\n\t});\n\n\tremoveInactiveSessionsDismissed(sessionId);\n\n\t//dispatch action to subscribe to AMB if enabled\n\tdispatch('SUBSCRIPTION_CHANGED', {\n\t\ttable: BANNER_ANNOUNCEMENT_TABLE_NAME,\n\t\tsubscribe: realTimeEnabled\n\t});\n\n\tif (hasErrors(announcements, payload, state, updateState)) return;\n\n\tconst {\n\t\ttimeNowUTC,\n\t\tsessionTimeoutInMilliSeconds,\n\t\tcurrentWindowTimeLimit\n\t} = initializeDateConstant(sessionTimeout, MILLISECONDS_IN_MINUTE);\n\t//dispatch action to re-fetch announcements when session expires\n\tsetTimeout(() => {\n\t\tdispatch(SESSION_TIMED_OUT);\n\t}, sessionTimeoutInMilliSeconds);\n\n\t//fetch all announcements\n\tconst {\n\t\tcurrentAnnouncements,\n\t\tannouncementsExpiringSoon,\n\t\tannouncementsComingSoon\n\t} = fetchAllAnnouncements(announcements, timeNowUTC, currentWindowTimeLimit, sessionId);\n\t// update the existing announcements with the current active announcements\n\tdispatch(ANNOUNCEMENTS_UPDATED, {currentAnnouncements});\n\tif (currentAnnouncements.length) {\n\t\tconst metadata = {\n\t\t\tnumberofAnnouncements: currentAnnouncements.length,\n\t\t\tnumberOfAnnouncementsWithLinks: currentAnnouncements.filter(\n\t\t\t\t(item) => item.link.url !== ''\n\t\t\t).length\n\t\t};\n\t\tdispatch(METRIC_TRACKED, {eventName: INITIAL_LOAD_ANNOUNCEMENT, metadata});\n\t}\n\n\t//update future announcements that are arriving or expiring before currentWindowTimeLimit\n\tupdateFutureAnnouncements(\n\t\tannouncementsExpiringSoon,\n\t\tannouncementsComingSoon,\n\t\ttimeNowUTC,\n\t\tdispatch\n\t);\n};\n","import track from '@devsnc/ux-metrics';\nimport {actionTypes} from '@servicenow/ui-core';\nimport {isNull} from 'lodash';\nimport {\n\tADD_ANNOUNCEMENT,\n\tANNOUNCEMENTS_ADDED,\n\tANNOUNCEMENTS_EXPIRED,\n\tANNOUNCEMENTS_UPDATED,\n\tANNOUNCEMENT_CHANGED,\n\tANNOUNCEMENT_DISMISSED,\n\tANNOUNCEMENT_FETCH_EXECUTED,\n\tANNOUNCEMENT_DISMISS_EXECUTED,\n\tANNOUNCEMENT_FETCH_REQUESTED,\n\tANNOUNCEMENT_FETCH_SUCCEEDED,\n\tANNOUNCEMENT_DISMISS_SUCCEEDED,\n\tBANNER_ANNOUNCEMENT_TABLE_NAME,\n\tCLICK_ANNOUNCEMENT_LINK,\n\tDELETE_ANNOUNCEMENT,\n\tEDIT_ANNOUNCEMENT,\n\tLINK_OPENED,\n\tMETRIC_TRACKED,\n\tSESSION_TIMED_OUT,\n\tTOGGLE_ANNOUNCEMENT_EXPANDED,\n\tUPDATE_M2M_ANNOUNCEMENTS,\n\tANNOUNCEMENT_SESSION_DISMISSED\n} from '../../constants';\nimport {\n\taddAnnouncementEffect,\n\tannouncementSessionDismissedEffect,\n\tannouncementDismissedEffect,\n\tannouncementFetchSucceededEffect,\n\tannouncementsAddedEffect,\n\tannouncementsExpiredEffect,\n\tannouncementsUpdatedEffect,\n\tdeleteAnnouncementEffect,\n\teditAnnouncementEffect,\n\tsubscriptionChangedEffect,\n\ttoggleAnnouncementExpandedEffect,\n\tupdateM2mAnnouncementsEffect,\n\tgetHTTPInterceptor,\n\tgetDismissInterceptor,\n\tannouncementDismissSucceededEffect\n} from './effects';\nimport {handleAnnouncementChange} from './utils/utils';\n\nconst {COMPONENT_BOOTSTRAPPED, COMPONENT_DISCONNECTED} = actionTypes;\n\nexport const actionHandlers = {\n\t//Component life cycle actions\n\t[COMPONENT_BOOTSTRAPPED]({dispatch, properties}) {\n\t\t//removeInactiveSessionsDismissed();\n\t\tdispatch(ANNOUNCEMENT_FETCH_REQUESTED, {dataUrl: properties.dataUrl});\n\t},\n\t[COMPONENT_DISCONNECTED]: {\n\t\teffect({dispatch}) {\n\t\t\tdispatch('SUBSCRIPTION_CHANGED', {\n\t\t\t\ttable: BANNER_ANNOUNCEMENT_TABLE_NAME,\n\t\t\t\tsubscribe: false\n\t\t\t});\n\t\t},\n\t\tstopPropagation: true\n\t},\n\n\t//Component behavior actions\n\t[TOGGLE_ANNOUNCEMENT_EXPANDED]: {\n\t\teffect: toggleAnnouncementExpandedEffect,\n\t\tstopPropagation: false\n\t},\n\t[ANNOUNCEMENT_DISMISSED]: {\n\t\teffect: announcementDismissedEffect,\n\t\tstopPropagation: false\n\t},\n\t[ANNOUNCEMENT_SESSION_DISMISSED]: {\n\t\teffect: announcementSessionDismissedEffect,\n\t\tstopPropagation: false\n\t},\n\t[LINK_OPENED]({\n\t\taction: {\n\t\t\tpayload: {metadata}\n\t\t},\n\t\tdispatch\n\t}) {\n\t\tdispatch(METRIC_TRACKED, {eventName: CLICK_ANNOUNCEMENT_LINK, metadata});\n\t},\n\n\t//Data fetching actions\n\t[ANNOUNCEMENT_FETCH_REQUESTED]({dispatch, properties}) {\n\t\tif (isNull(properties.dataUrl)) return;\n\t\tdispatch(ANNOUNCEMENT_FETCH_EXECUTED, {dataUrl: properties.dataUrl});\n\t},\n\t//[ANNOUNCEMENT_FETCH_EXECUTED]: announcementFetchExecutedEffect,\n\t[ANNOUNCEMENT_FETCH_EXECUTED]: {\n\t\tinterceptors: [getHTTPInterceptor],\n\t},\n\t[ANNOUNCEMENT_DISMISS_EXECUTED]: {\n\t\tinterceptors: [getDismissInterceptor],\n\t},\n\t[ANNOUNCEMENT_FETCH_SUCCEEDED]: {\n\t\teffect: announcementFetchSucceededEffect,\n\t\tstopPropagation: true\n\t},\n\t[ANNOUNCEMENT_DISMISS_SUCCEEDED]: {\n\t\teffect: announcementDismissSucceededEffect,\n\t\tstopPropagation: true\n\t},\n\t[SESSION_TIMED_OUT]({dispatch, properties}) {\n\t\tdispatch(ANNOUNCEMENT_FETCH_REQUESTED, {dataUrl: properties.dataUrl});\n\t},\n\n\t[ANNOUNCEMENT_CHANGED]({action, updateState, state, dispatch}) {\n\t\thandleAnnouncementChange(action.payload.data, updateState, state, dispatch);\n\t},\n\n\t//Scheduled or Expired announcement actions\n\t[ANNOUNCEMENTS_EXPIRED]: {\n\t\teffect: announcementsExpiredEffect,\n\t\tstopPropagation: false\n\t},\n\t[ANNOUNCEMENTS_ADDED]: {\n\t\teffect: announcementsAddedEffect,\n\t\tstopPropagation: false\n\t},\n\t[ANNOUNCEMENTS_UPDATED]: {\n\t\teffect: announcementsUpdatedEffect,\n\t\tstopPropagation: false\n\t},\n\n\t//AMB related actions\n\tSUBSCRIPTION_CHANGED: subscriptionChangedEffect,\n\n\t[UPDATE_M2M_ANNOUNCEMENTS]: {\n\t\teffect: updateM2mAnnouncementsEffect,\n\t\tstopPropagation: false\n\t},\n\t[ADD_ANNOUNCEMENT]: {\n\t\teffect: addAnnouncementEffect,\n\t\tstopPropagation: false\n\t},\n\t[DELETE_ANNOUNCEMENT]: {\n\t\teffect: deleteAnnouncementEffect,\n\t\tstopPropagation: false\n\t},\n\t[EDIT_ANNOUNCEMENT]: {\n\t\teffect: editAnnouncementEffect,\n\t\tstopPropagation: false\n\t},\n\n\t//UX Metrics actions\n\t[METRIC_TRACKED]: {\n\t\teffect(coeffects) {\n\t\t\tconst {\n\t\t\t\taction: {\n\t\t\t\t\tpayload: {metadata, eventName}\n\t\t\t\t}\n\t\t\t} = coeffects;\n\n\t\t\ttrack(coeffects, eventName, metadata);\n\t\t}\n\t}\n};\n","import {createCustomElement} from '@servicenow/ui-core';\nimport mediaQueryBehavior from '@servicenow/behavior-media-query';\nimport snabbdom from '@servicenow/ui-renderer-snabbdom';\nimport styles from './styles.scss';\nimport view from './view.js';\nimport {actionHandlers} from './actions.js';\n\ncreateCustomElement('snu-announcement-list', {\n\trenderer: {type: snabbdom},\n\tview,\n\tinitialState: {\n\t\tnonDismissibleStackExpanded: false,\n\t\tdismissibleStackExpanded: false,\n\t\tannouncements: [],\n\t\tariaMessage: '',\n\t\tsessionId: ''\n\t},\n\tproperties: {\n\t\t/**\n\t\t * Passes the configuration id needed to pull the announcement list\n\t\t * @type {String}\n\t\t */\n\t\tdataUrl: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\t\tdismissUrl: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t}\n\t},\n\tstyles,\n\tactionHandlers,\n\tbehaviors: [\n\t\t{\n\t\t\tbehavior: mediaQueryBehavior,\n\t\t\toptions: {\n\t\t\t\tmediumQuery: '(max-width: 48em)'\n\t\t\t}\n\t\t}\n\t]\n});\n","import { createCustomElement } from '@servicenow/ui-core';\nimport snabbdom from '@servicenow/ui-renderer-snabbdom';\nimport view from './view/view';\n\ncreateCustomElement('sn-dynamic-css-variable-override', {\n\trenderer: { type: snabbdom },\n\tview,\n\tslots: {content: {}},\n\tproperties: {\n\t\tstyleAttributes: {\n\t\t\ttype: 'object',\n\t\t\tdefault: {},\n\t\t\toverride: true\n\t\t}\n\t}\n});\n","import { Fragment } from '@servicenow/ui-renderer-snabbdom';\n\nexport default (state) => {\n\tconst { properties } = state;\n\tconst { styleAttributes } = properties;\n\tconst ContentSlot = () => {\n\t\treturn (<div style={styleAttributes ? styleAttributes : undefined}><slot name=\"content\" /><\/div>)\n\t};\n\treturn (\n\t\t<Fragment>\n\t\t\t<ContentSlot />\n\t\t<\/Fragment>\n\t);\n};\n","const view = (state) => {\n\tconst {\n\t\tproperties: {flipped}\n\t} = state;\n\n\tconst renderCardFace = (name) => (\n\t\t<div className={`card-face card-${name}`}>\n\t\t\t{(flipped && name === 'back') || (!flipped && name === 'front') ? (\n\t\t\t\t<slot name={name} />\n\t\t\t) : null}\n\t\t<\/div>\n\t);\n\n\treturn (\n\t\t<div className=\"snu-flip-card\">\n\t\t\t<div className={`flip-card ${flipped ? 'flipped' : ''}`}>\n\t\t\t\t{renderCardFace('front')}\n\t\t\t\t{renderCardFace('back')}\n\t\t\t<\/div>\n\t\t<\/div>\n\t);\n};\n\nexport default view;\n","import {createCustomElement} from '@servicenow/ui-core';\nimport snabbdom from '@servicenow/ui-renderer-snabbdom';\nimport view from './view';\nimport styles from './style.scss';\n\ncreateCustomElement('snu-flip-card', {\n\trenderer: {type: snabbdom},\n\tview,\n\tstyles,\n\tslots: {\n\t\tfront: {},\n\t\tback: {}\n\t},\n\tproperties: {\n\t\tflipped: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: 'boolean'\n\t\t\t}\n\t\t}\n\t}\n});\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({  });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({  });","import { createRef } from '@servicenow/ui-renderer-snabbdom';\nimport '@servicenow/now-input';\nimport '@servicenow/now-icon';\nimport '@servicenow/now-loader';\n\nconst view = (state, { updateState, dispatch }) => {\n\tconst { properties } = state;\n\tconst inputRef = createRef();\n\tconst { config } = properties;\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"snu-typeahead-container\"\n\t\t\ton-click={(e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t}}>\n\t\t\t<div className=\"selected-card-item-container\">\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"selected-card-item\"\n\t\t\t\t\ton-click={(e) => {\n\t\t\t\t\t\tupdateState({ viewTypeahead: !state.viewTypeahead });\n\t\t\t\t\t\tif (!state.viewTypeahead)\n\t\t\t\t\t\t\tinputRef.current && inputRef.current.focus();\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t}}>\n\t\t\t\t\t<div className=\"selected-card-data single-selection\">\n\t\t\t\t\t\t{!config.multiSelect && properties.selectedItem ? (\n\t\t\t\t\t\t\tconfig.bindVariables.map(\n\t\t\t\t\t\t\t\t(variable) =>\n\t\t\t\t\t\t\t\t\tvariable.showInSelectedCard &&\n\t\t\t\t\t\t\t\t\tproperties.selectedItem[variable.key] && (\n\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t\t\tvariable.primary\n\t\t\t\t\t\t\t\t\t\t\t\t\t? 'selected-label'\n\t\t\t\t\t\t\t\t\t\t\t\t\t: 'selected-sublabel'\n\t\t\t\t\t\t\t\t\t\t\t}>\n\t\t\t\t\t\t\t\t\t\t\t{properties.selectedItem[variable.key]}\n\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) : config.multiSelect && properties.selectedItem && Array.isArray(properties.selectedItem) && properties.selectedItem.length > 0 ? (<span className=\"selected-label mutilselection\">\n\t\t\t\t\t\t\t{properties.selectedItem.length + ' selected'}\n\t\t\t\t\t\t<\/span>) : (\n\t\t\t\t\t\t\t<span className=\"selected-label placeholder\">\n\t\t\t\t\t\t\t\t{properties.config.dropDownPlaceholder}\n\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{/* {properties.selectedItem ? (\n\t\t\t\t\t\t\tconfig.bindVariables.map(\n\t\t\t\t\t\t\t\t(variable) =>\n\t\t\t\t\t\t\t\t\tvariable.showInSelectedCard &&\n\t\t\t\t\t\t\t\t\tproperties.selectedItem[variable.key] && (\n\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t\t\tvariable.primary\n\t\t\t\t\t\t\t\t\t\t\t\t\t? 'selected-label'\n\t\t\t\t\t\t\t\t\t\t\t\t\t: 'selected-sublabel'\n\t\t\t\t\t\t\t\t\t\t\t}>\n\t\t\t\t\t\t\t\t\t\t\t{properties.selectedItem[variable.key]}\n\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className=\"selected-label\">\n\t\t\t\t\t\t\t\t{properties.config.dropDownPlaceholder}\n\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t)} */}\n\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div className=\"open-dropdown-icon\">\n\t\t\t\t\t\t<now-icon icon=\"chevron-down-outline\" size=\"md\" />\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t<div\n\t\t\t\tclassName={\n\t\t\t\t\t'typeahead-search-container' +\n\t\t\t\t\t(state.viewTypeahead ? ' expanded' : '')\n\t\t\t\t}>\n\t\t\t\t<div className=\"typeahead-search-item\">\n\t\t\t\t\t<div className=\"typeahead-search-field\">\n\t\t\t\t\t\t{properties.isLoading ? (\n\t\t\t\t\t\t\t<now-loader size=\"md\" />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<now-icon icon=\"magnifying-glass-fill\" size=\"md\" />\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<now-input\n\t\t\t\t\t\t\tref={inputRef}\n\t\t\t\t\t\t\tclassName=\"typeahead-input\"\n\t\t\t\t\t\t\tsize=\"md\"\n\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\tname=\"typeahead-input\"\n\t\t\t\t\t\t\tlabel=\"\"\n\t\t\t\t\t\t\tplaceholder={properties.config.searchPlaceholder || 'Search...'}\n\t\t\t\t\t\t\tvalue=\"\"\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\tautofocus=\"true\"\n\t\t\t\t\t\t\tminlength=\"2\"\n\t\t\t\t\t\t\talign=\"start\"\n\t\t\t\t\t\t\tfield-layout='{\"layout\":\"vertical\"}'\n\t\t\t\t\t\t/>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div className=\"typeahead-card-list\">\n\t\t\t\t\t<ul className=\"typeahead-card-list-items\">\n\t\t\t\t\t\t{properties.data.map((item) => (\n\t\t\t\t\t\t\t<li className=\"typeahead-card-list-item\">\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t'typeahead-card-item' +\n\t\t\t\t\t\t\t\t\t\t((!config.multiSelect && properties.selectedItem &&\n\t\t\t\t\t\t\t\t\t\t\tproperties.selectedItem[config.identifier] ===\n\t\t\t\t\t\t\t\t\t\t\titem[config.identifier]\n\t\t\t\t\t\t\t\t\t\t\t? ' selected'\n\t\t\t\t\t\t\t\t\t\t\t: '') || (config.multiSelect && properties.selectedItem && Array.isArray(properties.selectedItem) &&\n\t\t\t\t\t\t\t\t\t\t\t\tproperties.selectedItem.some(selected => selected[config.identifier] === item[config.identifier])\n\t\t\t\t\t\t\t\t\t\t\t\t? ' selected'\n\t\t\t\t\t\t\t\t\t\t\t\t: ''))\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ton-click={() => {\n\t\t\t\t\t\t\t\t\t\t// updateProperties({selectedItem: item});\n\t\t\t\t\t\t\t\t\t\tif (!config.multiSelect)\n\t\t\t\t\t\t\t\t\t\t\tupdateState({ viewTypeahead: false });\n\t\t\t\t\t\t\t\t\t\tdispatch('SNU_TYPEAHEAD#ITEM_SELECTED', { data: item });\n\t\t\t\t\t\t\t\t\t}}>\n\t\t\t\t\t\t\t\t\t<div className=\"typeahead-card-icon\">\n\t\t\t\t\t\t\t\t\t\t{((!config.multiSelect && properties.selectedItem &&\n\t\t\t\t\t\t\t\t\t\t\tproperties.selectedItem[config.identifier] ===\n\t\t\t\t\t\t\t\t\t\t\titem[config.identifier]) || (config.multiSelect && properties.selectedItem && Array.isArray(properties.selectedItem) &&\n\t\t\t\t\t\t\t\t\t\t\t\tproperties.selectedItem.some(selected => selected[config.identifier] === item[config.identifier]))) && (\n\t\t\t\t\t\t\t\t\t\t\t\t<now-icon icon=\"check-fill\" size=\"md\" />\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div className=\"typeahead-card-content\">\n\t\t\t\t\t\t\t\t\t\t{config.bindVariables.map(\n\t\t\t\t\t\t\t\t\t\t\t(variable) =>\n\t\t\t\t\t\t\t\t\t\t\t\titem[variable.key] && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvariable.primary\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'typeahead-card-label'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 'typeahead-card-sublabel'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t__html:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstate.searchTerm &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvariable.enableHighlight &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tproperties.config.enableSearchHighlight\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? item[variable.key].replace(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tnew RegExp(`(${state.searchTerm})`, 'gi'),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'<span class=\"highlight\">$1<\/span>'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: item[variable.key]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/button>\n\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t))}\n\t\t\t\t\t<\/ul>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t);\n};\n\nexport default view;\n","import {createCustomElement, actionTypes} from '@servicenow/ui-core';\nimport snabbdom from '@servicenow/ui-renderer-snabbdom';\nimport view from './view';\nimport styles from './style.scss';\n\nconst {COMPONENT_CONNECTED} = actionTypes;\ncreateCustomElement('snu-typeahead', {\n\trenderer: {type: snabbdom},\n\tview,\n\tstyles,\n\tproperties: {\n\t\tdata: {\n\t\t\ttype: 'object',\n\t\t\tdefault: []\n\t\t},\n\t\tconfig: {\n\t\t\ttype: 'object',\n\t\t\tdefault: []\n\t\t},\n\t\tselectedItem: {\n\t\t\ttype: 'object',\n\t\t\tdefault: {}\n\t\t},\n\t\tisLoading: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false\n\t\t}\n\t},\n\tinitialState: {\n\t\tviewTypeahead: false,\n\t\tsearchTerm: null\n\t},\n\tdispatches: {\n\t\t'SNU_TYPEAHEAD#SEARCH_INPUT_TRIGGERED': {},\n\t\t'SNU_TYPEAHEAD#ITEM_SELECTED': {}\n\t},\n\tactionHandlers: {\n\t\t['NOW_INPUT#INPUT']({dispatch, action: {payload}, updateState}) {\n\t\t\tupdateState({searchTerm: payload.fieldValue});\n\t\t\tdispatch('SNU_TYPEAHEAD#SEARCH_INPUT_TRIGGERED', payload);\n\t\t},\n\t\t[COMPONENT_CONNECTED]({updateState}) {\n\t\t\twindow.addEventListener('click', () => {\n\t\t\t\tupdateState({viewTypeahead: false});\n\t\t\t});\n\t\t}\n\t}\n});\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({  });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({  });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({  });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({  });","import '@servicenow/now-button';\nimport '@servicenow/now-icon';\nimport '@servicenow/now-checkbox';\nimport '@servicenow/now-input';\nimport '@servicenow/now-modal';\nimport '@servicenow/now-dropdown';\n\n// Table column headers component\nconst TableColumnHeaders = ({ columns, selectAllValue, selectable }) => {\n    return (\n        <thead>\n            <tr className=\"snu-generic-table-column-headers\">\n                {selectable && (\n                    <th className=\"snu-generic-table-checkbox-cell snu-generic-table-cell\" style={{ width: '40px' }}>\n                        <now-checkbox\n                            checked={selectAllValue}\n                            name=\"select-all\"\n                        />\n                    <\/th>\n                )}\n                {columns.map((column) => (\n                    <th\n                        key={column.key}\n                        className=\"snu-generic-table-cell\"\n                        style={{ width: column.width }}\n                    >\n                        <span>{column.label}<\/span>\n                    <\/th>\n                ))}\n            <\/tr>\n        <\/thead>\n    );\n};\n\n// Table row component\nconst TableRow = ({\n    rowData,\n    columns,\n    selectable,\n    onToggleSelection,\n    onActionTriggered\n}) => {\n    return (\n        <tr\n            className={`snu-generic-table-row \n                ${rowData.isSelected ? 'is-selected' : ''} \n                ${rowData.rowClassName || ''}`}\n        >\n            {selectable && (\n                <td className=\"snu-generic-table-checkbox-cell  snu-generic-table-cell\" style={{ width: '40px' }}>\n                    <now-checkbox\n                        checked={rowData.isSelected}\n                        name={rowData.id}\n                        on-change={(e) => onToggleSelection(rowData, e.target.checked)}\n                    />\n                <\/td>\n            )}\n            {columns.map((column) => {\n                if (column.type === 'icon-button') {\n                    return (\n                        <td\n                            key={column.key}\n                            className=\"snu-generic-table-action-cell snu-generic-table-cell\"\n                            style={{ width: column.width, ...column.style }}\n                        >\n                            <button\n                                className=\"snu-generic-table-action-btn\" style={((rowData[column.disabledKey]))?{cursor:'not-allowed',opacity:'0.5'}:{}}\n                                disabled={rowData[column.disabledKey] || false}\n                                on-click={() => onActionTriggered(rowData, column)}\n                            >\n                                <now-icon\n                                    size=\"md\"\n                                    icon={\n                                        column.dynamicIcon\n                                            ? rowData[column.referenceProperty]\n                                            : column.iconValue\n                                    }\n                                />\n                            <\/button>\n                        <\/td>\n                    );\n                }\n                if (column.type === 'check-box') {\n                    return (\n                        <td\n                            key={column.key}\n                            className=\"snu-generic-table-trigger-cell snu-generic-table-cell\"\n                            style={{ width: column.width, ...column.style }}\n                        >\n                            <now-checkbox\n                                checked={rowData[column.key]}\n                                name={\"actionItem-\" + column.key + \"-\" + rowData.id}\n                                readonly={(rowData.disabled || rowData[column.disabledKey]) || false}\n                            />\n                        <\/td>\n                    );\n                }\n                if (column.type === 'dropdown') {\n                    return (\n                        <td\n                            key={column.key}\n                            className=\"snu-generic-table-dropdown-cell snu-generic-table-cell\"\n                            style={{ width: column.width, ...column.style }}\n                        >\n                            <now-dropdown\n                                style={{ width: '100%' }}\n                                selected-items={rowData[column.selectedKey]}\n                                items={rowData[column.key] || []}\n                                variant=\"secondary\"\n                                size=\"md\"\n                                disabled={(rowData.disabled || rowData[column.disabledKey]) || false}\n                                name={column.key}\n                            />\n                        <\/td>\n                    );\n                }\n\n                return (\n                    <td\n                        key={column.key}\n                        className=\"snu-generic-table-cell\"\n                        style={{ width: column.width }}\n                    >\n                        <span style={{ ...column.style }}>{rowData[column.key]}<\/span>\n                    <\/td>\n                );\n            })}\n        <\/tr>\n    );\n};\n\n// Main view function\nexport default (state, { dispatch }) => {\n    const {\n        properties: { data, config },\n    } = state;\n\n    const {\n        columns = [],\n        selectable = false,\n        selectAllValue = false,\n    } = config || {};\n\n    // Event handlers\n    const handleToggleSelection = (rowData, selectedValue) => {\n        dispatch('SNU_GENERIC_TABLE#TOGGLE_ROW_SELECTION', { rowData, selectedValue });\n    };\n\n    const handleActionTriggered = (rowData, metadata) => {\n        dispatch('SNU_GENERIC_TABLE#ACTION_TRIGGERED', { rowData, metadata });\n    };\n\n    return (\n        <div className=\"snu-generic-table-container\">\n            <table className=\"snu-generic-table\" style={{ tableLayout: 'fixed', width: '100%' }}>\n                <TableColumnHeaders\n                    columns={columns}\n                    selectAllValue={selectAllValue}\n                    selectable={selectable}\n                />\n                <tbody className=\"snu-generic-table-body\">\n                    {data.map((row) => (\n                        <TableRow\n                            key={row.id}\n                            rowData={row}\n                            columns={columns}\n                            selectable={selectable}\n                            onToggleSelection={handleToggleSelection}\n                            onActionTriggered={handleActionTriggered}\n                        />\n                    ))}\n                <\/tbody>\n            <\/table>\n        <\/div>\n    );\n};\n","import { createCustomElement, actionTypes } from '@servicenow/ui-core';\nimport snabbdom from '@servicenow/ui-renderer-snabbdom';\nimport view from './view';\nimport styles from './style.scss';\n\nconst { COMPONENT_CONNECTED } = actionTypes;\n\ncreateCustomElement('snu-generic-table', {\n    renderer: { type: snabbdom },\n    view,\n    styles,\n    properties: {\n        // Array of row items to display in the table\n        data: {\n            type: 'array',\n            default: [],\n            schema: {\n                type: 'array'\n            }\n        },\n        // Column configuration for the table\n        config: {\n            type: 'object',\n            default: {\n                columns: [\n                    { key: 'name', label: 'Name', width: '15%' },\n                    { key: 'description', label: 'Description', width: '25%' },\n                    { key: 'recommendation', label: 'Recommendation', width: '25%' },\n                    { key: 'notes', label: 'Notes', width: '15%' },\n                    { key: 'score', label: 'Score', width: '10%' },\n                    { key: 'trigger', label: 'Trigger', width: '5%' },\n                    { key: 'action', label: 'Action', width: '5%' }\n                ],\n                selectable: false\n            }\n        }\n    },\n    initialState: {\n        selectedRows: [],      // was selectedSkills\n        removalReasons: {},    // still usable for custom metadata\n        showModal: false,\n        currentRowId: null,    // was currentSkillId\n        modalInput: '',\n        modalError: false\n    },\n    dispatches: {\n        'SNU_GENERIC_TABLE#TOGGLE_ROW_SELECTION': {}, // generic\n        'SNU_GENERIC_TABLE#ACTION_TRIGGERED': {}\n    },\n    actionHandlers: {\n        [COMPONENT_CONNECTED]() {\n            // Initialize any necessary state when component is connected\n        },\n        ['NOW_CHECKBOX#CHECKED_SET']({ dispatch, action: { payload } }) {\n            if (payload.name.indexOf('actionItem-') === 0) {\n                const payloadParts = payload.name.split('-');\n                dispatch('SNU_GENERIC_TABLE#ACTION_TRIGGERED', { metadata: { type: 'checkbox' }, payload: { value: payload.value, context: payloadParts[1], id: payloadParts[2] } });\n            } else {\n                dispatch('SNU_GENERIC_TABLE#TOGGLE_ROW_SELECTION', payload);\n            }\n        },\n        ['NOW_DROPDOWN#ITEM_CLICKED']({ dispatch, action }) {\n            dispatch('SNU_GENERIC_TABLE#ACTION_TRIGGERED', { payload: action.payload, metadata: { type: 'dropdown' } });\n        }\n    }\n});\n","import * as exports from '../index.js';\nwindow.__TECTONIC__$devsnc_sn_learning_core=exports;\nexport * from '../index.js';\n\n"],"version":3}}]}