{"version":3,"file":"/uxab/e512a9de87e53ed4fdbdeb1e3fbb3515.map.jsdbx","sections":[{"offset":{"line":18,"column":0},"map":{"mappings":"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","file":"externals/@devsnc/sn-carousel/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_sn_translate_index_jsdbx_813c3733__","BUTTON","CAROUSEL_TRACK_ELM","CAROUSEL_WIDTH","CURRENT_INDEX","DISABLE_LOOPING","HAS_STARTED","HORIZONTAL","INDICATOR","INDICATOR_CLICKED_IDX","INDICATORS","IS_TRANSITION_PENDING","LARGE","MEDIUM","NAME","NONE","SET","SCROLL_DIRECTION","CONTENT","SN_CAROUSEL","CONTENT_CONTAINER_ELM","RTL","TITLE","ENABLE_AUTOSCROLL","PAUSE_AUTOSCROLL","ACTION_INDICATOR_CLICKED","ACTION_LINK_CLICKED","ACTION_INDICATOR_INDEX_UPDATED","ACTION_RECALCULATE_INDICATORS","ACTION_SLOT_CHANGE","ACTION_SCROLL","ACTION_TOUCH_END","ACTION_TRANSITION_END","ACTION_UPDATE_INDICATORS","ACTION_FOCUS_IN_ITEM","NOW_BUTTON_BARE_CLICKED","NOW_BUTTON_ICONIC_CLICKED","METRIC_TRACKED","ACTION_ARROW_KEY_PRESSED","ACTION_AUTO_SCROLL_START","ACTION_AUTO_SCROLL_STOP","ACTION_AUTO_SCROLL_PAUSED","CAROUSEL_INITIAL_LOAD","NAVIGATION_INTERACTION","ARROW","ARROWS","CAROUSEL_LABEL","CAROUSEL_FOOTER","CAROUSEL_HEADER","CAROUSEL_HEADER_ABSENT","CAROUSEL_TRACK","CAROUSEL_WRAPPER","DISABLED","EMPTY_STATE","GRADIENT","HEADER_LINK","HIDE","ICON","MARGIN_LEFT","MARGIN_RIGHT","SCROLLING","SELECTED","SHOW","SHOW_ARROWS","TITLE_WRAPPER","BADGE","TRANSITION_TIME","ADD_ATTACHMENT","ADD_DATA","COMPLETED_TASKS","ERROR","FIRST_TIME_USER","INTERRUPTED","NO_ACTIVITIES","NO_DATA","NO_SEARCH_RESULTS","OFFLINE","PERMISSIONS","UNCONFIGURED","EMPTY_STATE_LABEL","EMPTY_STATE_MESSAGE","DARK","PRIMARY","SECONDARY","TERTIARY","GRADIENT_WIDTH","LEFT_MOST_PADDING","RIGHT_MARGIN_WIDTH","LEFT_ARROW_ICON","NEXT","FORWARD","PREVIOUS","BACKWARD","RIGHT_ARROW_ICON","PAUSE_LABEL","PLAY_LABEL","PAUSE_ICON","PLAY_ICON","PAUSE","PLAY","BOTTOM_LEFT","BOTTOM_RIGHT","BOTTOM_SPLIT","CENTER","FILL","OUTLINE","ITEMS_IN_VIEW","MULTIPLE_ITEMS_IN_VIEW","SINGLE_ITEM_IN_VIEW","SINGLE_ITEM_ON_ZOOM","BOOLEAN","JSON","INTEGER","STRING","NEXT_SET_OF_ITEMS","SINGLE_ITEM","SLIDING_TYPE","TITLE_LEVEL_1","TITLE_LEVEL_2","TITLE_LEVEL_3","TITLE_LEVEL_4","TITLE_LEVEL_5","TITLE_LEVEL_6","HEADER_PRIMARY","HEADER_SECONDARY","HEADER_TERTIARY","TITLE_PRIMARY","TITLE_SECONDARY","TITLE_TERTIARY","LEFT","RIGHT","ENTER_KEY","ARROW_LEFT","ARROW_RIGHT","AUTO_SCROLL_INTERVAL_ID_DEFAULT","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_core_index_jsdbx_65e0859f__","actionTypes","createCustomElement","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__","duplicateComponent","component","duplicateNode","node","clone","cloneNode","getProperties","props","keys","forEach","children","idx","appendChild","setDuplicateAttribute","attribute","suffix","getAttribute","setAttribute","setupDuplicate","duplicate","deleteDuplicates","hostNode","contentContainerElm","resetPositions","deleted","assignedNodes","removeChild","createDuplicates","contentElms","itemsInView","slidingType","carouselWidth","onResize","getRootNode","host","allComponents","filter","_node$style","style","display","componentsAdded","c","duplicateLastItem","prepend","duplicateFirstItem","firstSet","lastSet","currentSetWidth","currentSet","remainingLength","offsetWidth","findDuplicates","components","original","isDuplicate","swap","index","array","_node$getAttribute","_node$getAttribute2","prePosition","includes","originalIndex","findIndex","sibling","nextElementSibling","insertBefore","removeAttribute","getContentWidth","disableLooping","width","transformComponents","state","updateState","transition","performSwap","properties","dir","swapDuplicates","some","path","operation","shouldRender","originalComponent","find","getComponentsInView","direction","transform","getTranslation","transformValue","matchValue","match","Math","abs","parseInt","calculateIndicators","carouselTrackElm","contentCount","indicators","contentWidth","translate","findOriginals","duplicates","_component$getAttribu","_component$getAttribu2","indicator","currentComponentIdx","checkWidth","firstIndicator","lastIndicator","loopTranslate","includePartials","inViewComponents","componentIdx","hiddenWidth","prevHiddenWidth","parseFloat","marginRight","marginLeft","accumalatedWidth","totalWidth","componentWidth","getActionType","scrollDirection","actionType","updateComponentStyle","margin","maxWidth","minWidth","copyStyle","setComponentMargins","marginWidth","setupComponents","dispatch","loopingChanged","addDuplicatesOnResize","isSwapping","el","offsetParent","newContentElms","newContentCount","_node$style2","focusinEventHandler","carouselItemFocusinHandler","removeEventListener","addEventListener","contentChanged","isSameNode","areComponentsInitialized","setTimeout","fitsContainer","slotChangeEvent","recalculateIndicators","currentIndex","originalIndicators","prevContentWidth","widthChanged","newIndex","numIndicators","scrollEffect","isTransitionPending","enableAutoScroll","metadata","type","looped","useLoopTranslate","eventName","updateNavigationFocus","shadowRoot","activeElement","querySelector","focus","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_devsnc_ux_metrics_index_jsdbx_eca31ced__","COMPONENT_DOM_READY","COMPONENT_TREE_RENDERED","COMPONENT_PROPERTY_CHANGED","updateItemsInView","window","devicePixelRatio","actionHandlers","effect","_ref","updateProperties","pauseAutoScroll","_ref2","singleItemOnZoom","handleResize","prevWidth","currentWidth","_ref3","action","propertyChanged","payload","propItemsInView","classList","remove","stopPropagation","_ref4","_ref5","autoScrollAction","isPaused","add","_ref6","indicatorClickedEffect","indicatorClickedIdx","nextIndicator","_ref7","transitionEndEffect","_ref8","_ref9","_ref10","touchStart","touchMove","touchEnd","swipeEffect","_ref11","setupIndicators","hasStarted","startingIndex","selectedIndex","position","didRender","title","carouselTitle","titleVariant","titlePosition","hideLink","linkIcon","navStyle","enableAdvancedNavConfig","navButtonConfig","leftNavButtonIcon","rightNavButtonIcon","navPosition","gradientStyle","hideDotIndicator","numberOfIndicators","_ref12","meta","appended","coeffects","track","indicatorIdx","_ref13","autoScrollSpeed","autoScrollIntervalId","setInterval","autoScrollStart","_ref14","clearInterval","autoScrollStop","initialState","errorMessage","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__","__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_renderer_snabbdom_index_jsdbx_9af105b3__","Fragment","createElement","getDisplayArrowClass","arrowType","hideArrow","showTitle","hideTitle","trim","showHeaderLink","linkText","displayHeader","className","disableTextWrapping","titleLevel","badgeConfig","badge","label","color","variant","level","wontWrap","hasNoMargin","displayTitle","size","hidePadding","configAria","button","displayHeaderLink","displayFooter","indicatorClasses","getIndicators","indicatorSelected","items","indicatorId","on-click","event","ulElem","target","parentElement","nextIdx","view","showCompactView","isLooping","leftGradientStyle","rightGradientStyle","roleDesc","ariaLabelledBy","role","emptyStateLabel","emptyStateContent","emptyStateIllustration","headingLevel","heading","alignment","illustration","displayEmptyState","ref","changedTouches","clientX","on-touchmove","icon","bare","getNavigationControls","displayLeftArrow","displayRightArrow","navButtonProps","tooltipContent","disabled","name","on-slotchange","on-transitionend","schema","enum","setInitialState","renderer","snabbdom","styles","behaviors","behavior","resizeBehavior","rtlBehavior","slots","__TECTONIC__$devsnc_sn_carousel"],"sources":["webpack:///css-loader/6.7.1/dist/runtime/api.js","webpack:///css-loader/6.7.1/dist/runtime/noSourceMaps.js","webpack:///@devsnc/sn-carousel/src/sn-carousel/carousel.scss","webpack:///./src/sn-carousel/carousel.scss?5ab7","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/sn-translate/index.jsdbx\"","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-carousel-constants.js","webpack:///external module \"/uxasset/externals/@servicenow/ui-core/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/ui-utils/index.jsdbx\"","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-carousel-duplicates.js","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-carousel-common.js","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-carousel-setup.js","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-carousel-resize.js","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-carousel-scroll.js","webpack:///external module \"/uxasset/externals/@devsnc/ux-metrics/index.jsdbx\"","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-carousel-action-handlers.js","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-initial-state.js","webpack:///external module \"/uxasset/externals/@servicenow/behavior-resize/29.0.0/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/behavior-rtl/29.0.0/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/ui-renderer-snabbdom/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/now-button/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/now-heading/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/now-icon/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/now-template-message/index.jsdbx\"","webpack:///external module \"/uxasset/externals/@servicenow/now-highlighted-value/index.jsdbx\"","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-carousel-nav.js","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-carousel-view.js","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-carousel-indicators.js","webpack:///@devsnc/sn-carousel/src/sn-carousel/sn-carousel.js","webpack:///@devsnc/sn-carousel/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, \":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-a11y-label{clip:rect(0 0 0 0);block-size:1px;border:none;clip-path:inset(50%);inline-size:1px;margin:0;overflow:hidden;padding:0;position:absolute;white-space:nowrap}.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}.now-m-block--xxs{margin-block-end:.125rem}.now-m-block--xxs,.now-m-block-start--xxs{margin-block-start:.125rem}.now-m-block-end--xxs{margin-block-end:.125rem}.now-m-inline--xxs{margin-inline-end:.125rem}.now-m-inline--xxs,.now-m-inline-start--xxs{margin-inline-start:.125rem}.now-m-inline-end--xxs{margin-inline-end:.125rem}.now-m-block--xs{margin-block-end:.25rem}.now-m-block--xs,.now-m-block-start--xs{margin-block-start:.25rem}.now-m-block-end--xs{margin-block-end:.25rem}.now-m-inline--xs{margin-inline-end:.25rem}.now-m-inline--xs,.now-m-inline-start--xs{margin-inline-start:.25rem}.now-m-inline-end--xs{margin-inline-end:.25rem}.now-m-block--sm{margin-block-end:.5rem}.now-m-block--sm,.now-m-block-start--sm{margin-block-start:.5rem}.now-m-block-end--sm{margin-block-end:.5rem}.now-m-inline--sm{margin-inline-end:.5rem}.now-m-inline--sm,.now-m-inline-start--sm{margin-inline-start:.5rem}.now-m-inline-end--sm{margin-inline-end:.5rem}.now-m-block--md{margin-block-end:.75rem}.now-m-block--md,.now-m-block-start--md{margin-block-start:.75rem}.now-m-block-end--md{margin-block-end:.75rem}.now-m-inline--md{margin-inline-end:.75rem}.now-m-inline--md,.now-m-inline-start--md{margin-inline-start:.75rem}.now-m-inline-end--md{margin-inline-end:.75rem}.now-m-block--lg{margin-block-end:1rem}.now-m-block--lg,.now-m-block-start--lg{margin-block-start:1rem}.now-m-block-end--lg{margin-block-end:1rem}.now-m-inline--lg{margin-inline-end:1rem}.now-m-inline--lg,.now-m-inline-start--lg{margin-inline-start:1rem}.now-m-inline-end--lg{margin-inline-end:1rem}.now-m-block--xl{margin-block-end:1.5rem}.now-m-block--xl,.now-m-block-start--xl{margin-block-start:1.5rem}.now-m-block-end--xl{margin-block-end:1.5rem}.now-m-inline--xl{margin-inline-end:1.5rem}.now-m-inline--xl,.now-m-inline-start--xl{margin-inline-start:1.5rem}.now-m-inline-end--xl{margin-inline-end:1.5rem}.now-m-block--xxl{margin-block-end:2rem}.now-m-block--xxl,.now-m-block-start--xxl{margin-block-start:2rem}.now-m-block-end--xxl{margin-block-end:2rem}.now-m-inline--xxl{margin-inline-end:2rem}.now-m-inline--xxl,.now-m-inline-start--xxl{margin-inline-start:2rem}.now-m-inline-end--xxl{margin-inline-end:2rem}.now-m-block--3xl{margin-block-end:2.5rem}.now-m-block--3xl,.now-m-block-start--3xl{margin-block-start:2.5rem}.now-m-block-end--3xl{margin-block-end:2.5rem}.now-m-inline--3xl{margin-inline-end:2.5rem}.now-m-inline--3xl,.now-m-inline-start--3xl{margin-inline-start:2.5rem}.now-m-inline-end--3xl{margin-inline-end:2.5rem}.now-m-block--0{margin-block-end:0}.now-m-block--0,.now-m-block-start--0{margin-block-start:0}.now-m-block-end--0{margin-block-end:0}.now-m-inline--0{margin-inline-end:0}.now-m-inline--0,.now-m-inline-start--0{margin-inline-start:0}.now-m-inline-end--0{margin-inline-end:0}.now-p-block--xxs{padding-block-end:.125rem}.now-p-block--xxs,.now-p-block-start--xxs{padding-block-start:.125rem}.now-p-block-end--xxs{padding-block-end:.125rem}.now-p-inline--xxs{padding-inline-end:.125rem}.now-p-inline--xxs,.now-p-inline-start--xxs{padding-inline-start:.125rem}.now-p-inline-end--xxs{padding-inline-end:.125rem}.now-p-block--xs{padding-block-end:.25rem}.now-p-block--xs,.now-p-block-start--xs{padding-block-start:.25rem}.now-p-block-end--xs{padding-block-end:.25rem}.now-p-inline--xs{padding-inline-end:.25rem}.now-p-inline--xs,.now-p-inline-start--xs{padding-inline-start:.25rem}.now-p-inline-end--xs{padding-inline-end:.25rem}.now-p-block--sm{padding-block-end:.5rem}.now-p-block--sm,.now-p-block-start--sm{padding-block-start:.5rem}.now-p-block-end--sm{padding-block-end:.5rem}.now-p-inline--sm{padding-inline-end:.5rem}.now-p-inline--sm,.now-p-inline-start--sm{padding-inline-start:.5rem}.now-p-inline-end--sm{padding-inline-end:.5rem}.now-p-block--md{padding-block-end:.75rem}.now-p-block--md,.now-p-block-start--md{padding-block-start:.75rem}.now-p-block-end--md{padding-block-end:.75rem}.now-p-inline--md{padding-inline-end:.75rem}.now-p-inline--md,.now-p-inline-start--md{padding-inline-start:.75rem}.now-p-inline-end--md{padding-inline-end:.75rem}.now-p-block--lg{padding-block-end:1rem}.now-p-block--lg,.now-p-block-start--lg{padding-block-start:1rem}.now-p-block-end--lg{padding-block-end:1rem}.now-p-inline--lg{padding-inline-end:1rem}.now-p-inline--lg,.now-p-inline-start--lg{padding-inline-start:1rem}.now-p-inline-end--lg{padding-inline-end:1rem}.now-p-block--xl{padding-block-end:1.5rem}.now-p-block--xl,.now-p-block-start--xl{padding-block-start:1.5rem}.now-p-block-end--xl{padding-block-end:1.5rem}.now-p-inline--xl{padding-inline-end:1.5rem}.now-p-inline--xl,.now-p-inline-start--xl{padding-inline-start:1.5rem}.now-p-inline-end--xl{padding-inline-end:1.5rem}.now-p-block--xxl{padding-block-end:2rem}.now-p-block--xxl,.now-p-block-start--xxl{padding-block-start:2rem}.now-p-block-end--xxl{padding-block-end:2rem}.now-p-inline--xxl{padding-inline-end:2rem}.now-p-inline--xxl,.now-p-inline-start--xxl{padding-inline-start:2rem}.now-p-inline-end--xxl{padding-inline-end:2rem}.now-p-block--3xl{padding-block-end:2.5rem}.now-p-block--3xl,.now-p-block-start--3xl{padding-block-start:2.5rem}.now-p-block-end--3xl{padding-block-end:2.5rem}.now-p-inline--3xl{padding-inline-end:2.5rem}.now-p-inline--3xl,.now-p-inline-start--3xl{padding-inline-start:2.5rem}.now-p-inline-end--3xl{padding-inline-end:2.5rem}.now-p-block--0{padding-block-end:0}.now-p-block--0,.now-p-block-start--0{padding-block-start:0}.now-p-block-end--0{padding-block-end:0}.now-p-inline--0{padding-inline-end:0}.now-p-inline--0,.now-p-inline-start--0{padding-inline-start:0}.now-p-inline-end--0{padding-inline-end:0}.now-line-height-crop{display:block}.now-line-height-crop:after,.now-line-height-crop:before{block-size:0;content:\\\"\\\";display:block}.now-line-height-crop:before{margin-block-start:calc(var(--now-line-height-crop--before, -.25em)*1)}.now-line-height-crop:after{margin-block-end:calc(var(--now-line-height-crop--after, -.125em)*1)}.now-line-height-crop+.now-line-height-crop{margin-block-start:calc(var(--now-line-height-crop--after, -.125em)*1*-1)}.now-line-height-crop--sm{display:block}.now-line-height-crop--sm:after,.now-line-height-crop--sm:before{block-size:0;content:\\\"\\\";display:block}.now-line-height-crop--sm:before{margin-block-start:calc(var(--now-line-height-crop--before, -.25em)*1.06664)}.now-line-height-crop--sm:after{margin-block-end:calc(var(--now-line-height-crop--after, -.125em)*1.06664)}.now-line-height-crop--sm+.now-line-height-crop--sm{margin-block-start:calc(var(--now-line-height-crop--after, -.125em)*1.06664*-1)}.now-heading--lg,.now-heading--md,.now-heading--xl{color:RGB(var(--now-color_text--primary,var(--now-color--neutral-18,22,27,28)));font-weight:600}.now-heading--md{font-size:var(--now-font-size--md1,1rem)}.now-heading--lg{font-size:var(--now-font-size--lg,1.25rem)}.now-heading--xl{font-size:var(--now-font-size--xl,2.5rem)}.now-text--normal{font-weight:400}.now-text--semibold{font-weight:600}.now-text--bold{font-weight:700}.now-text--sm{font-size:var(--now-font-size--sm,.75rem)}.now-text--md{font-size:var(--now-font-size--md1,1rem)}.now-text--lg{font-size:var(--now-font-size--lg,1.25rem)}.now-text--primary{color:RGB(var(--now-color_text--primary,var(--now-color--neutral-18,22,27,28)))}.now-text--secondary{color:RGB(var(--now-color_text--secondary,var(--now-color--neutral-15,44,53,55)))}.now-text--tertiary{color:RGB(var(--now-color_text--tertiary,var(--now-color--neutral-12,66,80,81)))}:host{display:grid;width:100%}.carousel-wrapper{display:flex;flex-direction:column;overflow:hidden;width:100%}.carousel-title{overflow:hidden}.carousel-header{align-items:center;display:flex;height:100%;justify-content:space-between;overflow:hidden;padding-bottom:.75rem;width:100%}.carousel-header .title-wrapper{align-items:center;display:inline-flex;overflow:hidden}:host(:not([dir=rtl])) .carousel-header .title-wrapper.right,:root:not([dir=rtl]) .carousel-header .title-wrapper.right{margin-left:auto}:host([dir=rtl]) .carousel-header .title-wrapper.right,:root[dir=rtl] .carousel-header .title-wrapper.right{margin-right:auto}.carousel-header .title-badge{flex:1 0 0px;min-width:0}:host(:not([dir=rtl])) .carousel-header .title-badge,:root:not([dir=rtl]) .carousel-header .title-badge{padding-left:.5rem}:host([dir=rtl]) .carousel-header .title-badge,:root[dir=rtl] .carousel-header .title-badge{padding-right:.5rem}:host(:not([dir=rtl])) .carousel-header .header-link,:root:not([dir=rtl]) .carousel-header .header-link{padding-left:3.25rem}:host([dir=rtl]) .carousel-header .header-link,:root[dir=rtl] .carousel-header .header-link{padding-right:3.25rem}.carousel-track{display:flex;justify-content:flex-start;overflow-x:clip;position:relative}.content-container{display:flex;height:100%;width:100%}::slotted(*){flex:none;height:100%;width:auto}.arrows.bottom-left{bottom:-.75rem;display:inherit;position:absolute}:host(:not([dir=rtl])) .arrows.bottom-left,:root:not([dir=rtl]) .arrows.bottom-left{left:.25rem}:host([dir=rtl]) .arrows.bottom-left,:root[dir=rtl] .arrows.bottom-left{right:.25rem}.arrows.bottom-right{bottom:-.75rem;display:inherit;position:absolute}:host(:not([dir=rtl])) .arrows.bottom-right,:root:not([dir=rtl]) .arrows.bottom-right{right:.25rem}:host([dir=rtl]) .arrows.bottom-right,:root[dir=rtl] .arrows.bottom-right{left:.25rem}.arrows .arrow{z-index:2}.arrows .arrow .nav-button{background-color:RGB(var(--now-view-control_item--primary--background-color,var(--now-color_background--primary,var(--now-color--neutral-0,255,255,255))));border-radius:1.25rem;position:absolute}.arrows .arrow.left.center{height:100%;position:absolute;width:1.5rem}.arrows .arrow.left.center .nav-button{left:50%;top:50%;transform:translate(-50%,-50%)}:host(:not([dir=rtl])) .arrows .arrow.left.center.compact,:root:not([dir=rtl]) .arrows .arrow.left.center.compact{left:3.25rem}:host([dir=rtl]) .arrows .arrow.left.center.compact,:root[dir=rtl] .arrows .arrow.left.center.compact{right:3.25rem}:host(:not([dir=rtl])) .arrows .arrow.left.center.not-compact,:root:not([dir=rtl]) .arrows .arrow.left.center.not-compact{left:1rem}:host([dir=rtl]) .arrows .arrow.left.center.not-compact,:root[dir=rtl] .arrows .arrow.left.center.not-compact{right:1rem}.arrows .arrow.left.bottom-left .nav-button{top:0}:host(:not([dir=rtl])) .arrows .arrow.left.bottom-left .nav-button,:root:not([dir=rtl]) .arrows .arrow.left.bottom-left .nav-button{left:0}:host([dir=rtl]) .arrows .arrow.left.bottom-left .nav-button,:root[dir=rtl] .arrows .arrow.left.bottom-left .nav-button{right:0}.arrows .arrow.left.bottom-right .nav-button{top:0}:host(:not([dir=rtl])) .arrows .arrow.left.bottom-right .nav-button,:root:not([dir=rtl]) .arrows .arrow.left.bottom-right .nav-button{right:2.5rem}:host([dir=rtl]) .arrows .arrow.left.bottom-right .nav-button,:root[dir=rtl] .arrows .arrow.left.bottom-right .nav-button{left:2.5rem}.arrows .arrow.left.bottom-split{bottom:-.75rem;position:absolute}:host(:not([dir=rtl])) .arrows .arrow.left.bottom-split,:root:not([dir=rtl]) .arrows .arrow.left.bottom-split{left:.25rem}:host([dir=rtl]) .arrows .arrow.left.bottom-split,:root[dir=rtl] .arrows .arrow.left.bottom-split{right:.25rem}.arrows .arrow.left.bottom-split .nav-button{top:0}:host(:not([dir=rtl])) .arrows .arrow.left.bottom-split .nav-button,:root:not([dir=rtl]) .arrows .arrow.left.bottom-split .nav-button{left:0}:host([dir=rtl]) .arrows .arrow.left.bottom-split .nav-button,:root[dir=rtl] .arrows .arrow.left.bottom-split .nav-button{right:0}.arrows .arrow.left.hide{visibility:hidden}.arrows .arrow.left.show{display:inline-block}.arrows .arrow.right.bottom-left .nav-button{top:0}:host(:not([dir=rtl])) .arrows .arrow.right.bottom-left .nav-button,:root:not([dir=rtl]) .arrows .arrow.right.bottom-left .nav-button{left:2.5rem}:host([dir=rtl]) .arrows .arrow.right.bottom-left .nav-button,:root[dir=rtl] .arrows .arrow.right.bottom-left .nav-button{right:2.5rem}.arrows .arrow.right.bottom-right .nav-button{top:0}:host(:not([dir=rtl])) .arrows .arrow.right.bottom-right .nav-button,:root:not([dir=rtl]) .arrows .arrow.right.bottom-right .nav-button{right:0}:host([dir=rtl]) .arrows .arrow.right.bottom-right .nav-button,:root[dir=rtl] .arrows .arrow.right.bottom-right .nav-button{left:0}.arrows .arrow.right.center{height:100%;position:absolute;width:1.5rem}:host(:not([dir=rtl])) .arrows .arrow.right.center,:root:not([dir=rtl]) .arrows .arrow.right.center{right:1rem}:host([dir=rtl]) .arrows .arrow.right.center,:root[dir=rtl] .arrows .arrow.right.center{left:1rem}.arrows .arrow.right.center .nav-button{left:50%;top:50%;transform:translate(-50%,-50%)}.arrows .arrow.right.bottom-split{bottom:-.75rem;position:absolute}:host(:not([dir=rtl])) .arrows .arrow.right.bottom-split,:root:not([dir=rtl]) .arrows .arrow.right.bottom-split{right:.25rem}:host([dir=rtl]) .arrows .arrow.right.bottom-split,:root[dir=rtl] .arrows .arrow.right.bottom-split{left:.25rem}.arrows .arrow.right.bottom-split .nav-button{top:0}:host(:not([dir=rtl])) .arrows .arrow.right.bottom-split .nav-button,:root:not([dir=rtl]) .arrows .arrow.right.bottom-split .nav-button{right:0}:host([dir=rtl]) .arrows .arrow.right.bottom-split .nav-button,:root[dir=rtl] .arrows .arrow.right.bottom-split .nav-button{left:0}.arrows .arrow.right.hide{visibility:hidden}.arrows .arrow.right.show{display:inline-block}.carousel-footer{margin-top:.75rem;position:relative}.carousel-footer .show-arrows{height:1.875rem}@media(forced-colors:active){.indicators nav div button{background-color:buttonface!important}.indicators nav div button:focus,.indicators nav div button:hover{border-color:highlight!important}.indicators nav div button.selected{background-color:selecteditem!important;border-color:selecteditemtext!important;color:selecteditemtext!important}}:host(:not([dir=rtl])) .indicators.bottom-left,:root:not([dir=rtl]) .indicators.bottom-left{float:right}:host([dir=rtl]) .indicators.bottom-left,:root[dir=rtl] .indicators.bottom-left{float:left}:host(:not([dir=rtl])) .indicators.bottom-right,:root:not([dir=rtl]) .indicators.bottom-right{float:left}:host([dir=rtl]) .indicators.bottom-right,:root[dir=rtl] .indicators.bottom-right{float:right}.indicators.bottom-split,.indicators.center{margin-left:auto;margin-right:auto}.indicators.center nav{margin-bottom:0;margin-top:0}.indicators nav{display:flex;justify-content:center;list-style:none;margin-bottom:.25rem;margin-top:.25rem;padding:0}.indicators nav div{height:.75rem;width:.75rem}:host(:not([dir=rtl])) .indicators nav div,:root:not([dir=rtl]) .indicators nav div{margin-right:.5rem}:host([dir=rtl]) .indicators nav div,:root[dir=rtl] .indicators nav div{margin-left:.5rem}:host(:not([dir=rtl])) .indicators nav div:last-child,:root:not([dir=rtl]) .indicators nav div:last-child{margin-right:0}:host([dir=rtl]) .indicators nav div:last-child,:root[dir=rtl] .indicators nav div:last-child{margin-left:0}.indicators nav div button{background-color:transparent;border:1px solid RGB(var(--now-actionable--primary--border-color,var(--now-color--primary-1,30,133,109)));border-radius:.75rem;cursor:pointer;height:.75rem;padding:0;position:absolute;width:.75rem}.indicators nav div button.selected{background-color:RGB(var(--now-color--primary-1,30,133,109));border:1px solid RGB(var(--now-color--primary-1,30,133,109))}.indicators nav div button:hover:not(.selected){background-color:RGB(var(--now-actionable--primary--background-color--hover,var(--now-color--primary-2,23,100,82)));border:1px solid RGB(var(--now-actionable--primary--border-color--hover,var(--now-color--primary-2,23,100,82)))}.indicators nav div button:focus{border:.125rem solid RGB(var(--now-color--focus-2,1,119,142));box-shadow:inset 0 0 0 1px #fff}.indicators nav div button:focus-visible{outline:none}.indicators nav div button:active{background-color:RGB(var(--now-actionable--primary--background-color--active,var(--now-color--primary-3,15,67,55)));border:1px solid RGB(var(--now-actionable--primary--background-color--active,var(--now-color--primary-3,15,67,55)))}.gradient{height:100%;position:absolute;width:56px;z-index:1}:host(:not([dir=rtl])) .gradient.left,:root:not([dir=rtl]) .gradient.left{left:0}:host([dir=rtl]) .gradient.left,:root[dir=rtl] .gradient.left{right:0}:host(:not([dir=rtl])) .gradient.left.primary,:root:not([dir=rtl]) .gradient.left.primary{background-image:linear-gradient(to left,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--primary--background-color,var(--now-color_background--primary,var(--now-color--neutral-0,255,255,255)))))}:host([dir=rtl]) .gradient.left.primary,:root[dir=rtl] .gradient.left.primary{background-image:linear-gradient(to right,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--primary--background-color,var(--now-color_background--primary,var(--now-color--neutral-0,255,255,255)))))}:host(:not([dir=rtl])) .gradient.left.secondary,:root:not([dir=rtl]) .gradient.left.secondary{background-image:linear-gradient(to left,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--secondary--background-color,var(--now-color_background--secondary,var(--now-color--neutral-1,246,247,247)))))}:host([dir=rtl]) .gradient.left.secondary,:root[dir=rtl] .gradient.left.secondary{background-image:linear-gradient(to right,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--secondary--background-color,var(--now-color_background--secondary,var(--now-color--neutral-1,246,247,247)))))}:host(:not([dir=rtl])) .gradient.left.tertiary,:root:not([dir=rtl]) .gradient.left.tertiary{background-image:linear-gradient(to left,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--secondary--background-color--focus,var(--now-color_background--tertiary,var(--now-color--neutral-2,228,230,231)))))}:host([dir=rtl]) .gradient.left.tertiary,:root[dir=rtl] .gradient.left.tertiary{background-image:linear-gradient(to right,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--secondary--background-color--focus,var(--now-color_background--tertiary,var(--now-color--neutral-2,228,230,231)))))}.gradient.left.dark{opacity:.1}:host(:not([dir=rtl])) .gradient.left.dark,:root:not([dir=rtl]) .gradient.left.dark{background-image:linear-gradient(to left,hsla(0,0%,100%,0),RGB(var(--now-color--neutral-16,37,45,46)))}:host([dir=rtl]) .gradient.left.dark,:root[dir=rtl] .gradient.left.dark{background-image:linear-gradient(to right,hsla(0,0%,100%,0),RGB(var(--now-color--neutral-16,37,45,46)))}.gradient.left.none{visibility:hidden}:host(:not([dir=rtl])) .gradient.right,:root:not([dir=rtl]) .gradient.right{right:0}:host([dir=rtl]) .gradient.right,:root[dir=rtl] .gradient.right{left:0}:host(:not([dir=rtl])) .gradient.right.primary,:root:not([dir=rtl]) .gradient.right.primary{background-image:linear-gradient(to right,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--primary--background-color,var(--now-color_background--primary,var(--now-color--neutral-0,255,255,255)))))}:host([dir=rtl]) .gradient.right.primary,:root[dir=rtl] .gradient.right.primary{background-image:linear-gradient(to left,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--primary--background-color,var(--now-color_background--primary,var(--now-color--neutral-0,255,255,255)))))}:host(:not([dir=rtl])) .gradient.right.secondary,:root:not([dir=rtl]) .gradient.right.secondary{background-image:linear-gradient(to right,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--secondary--background-color,var(--now-color_background--secondary,var(--now-color--neutral-1,246,247,247)))))}:host([dir=rtl]) .gradient.right.secondary,:root[dir=rtl] .gradient.right.secondary{background-image:linear-gradient(to left,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--secondary--background-color,var(--now-color_background--secondary,var(--now-color--neutral-1,246,247,247)))))}:host(:not([dir=rtl])) .gradient.right.tertiary,:root:not([dir=rtl]) .gradient.right.tertiary{background-image:linear-gradient(to right,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--secondary--background-color--focus,var(--now-color_background--tertiary,var(--now-color--neutral-2,228,230,231)))))}:host([dir=rtl]) .gradient.right.tertiary,:root[dir=rtl] .gradient.right.tertiary{background-image:linear-gradient(to left,hsla(0,0%,100%,0),RGB(var(--now-view-control_item--secondary--background-color--focus,var(--now-color_background--tertiary,var(--now-color--neutral-2,228,230,231)))))}.gradient.right.dark{opacity:.1}:host(:not([dir=rtl])) .gradient.right.dark,:root:not([dir=rtl]) .gradient.right.dark{background-image:linear-gradient(to right,hsla(0,0%,100%,0),RGB(var(--now-color--neutral-16,37,45,46)))}:host([dir=rtl]) .gradient.right.dark,:root[dir=rtl] .gradient.right.dark{background-image:linear-gradient(to left,hsla(0,0%,100%,0),RGB(var(--now-color--neutral-16,37,45,46)))}.gradient.right.none{visibility:hidden}.pause-play-button{position:absolute;z-index:3}.pause-play-button.not-compact{padding-left:1rem;padding-top:.25rem}.pause-play-button.compact{height:100%;margin-top:-.8125rem;top:50%;width:1.5rem}:host(:not([dir=rtl])) .pause-play-button.compact,:root:not([dir=rtl]) .pause-play-button.compact{left:1rem}:host([dir=rtl]) .pause-play-button.compact,:root[dir=rtl] .pause-play-button.compact{right:1rem}\", \"\"]);\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]!./carousel.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({ [\"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 {t} from 'sn-translate';\n\nexport default {\n\tBUTTON: 'button',\n\tCAROUSEL_TRACK_ELM: 'carouselTrackElm',\n\tCAROUSEL_WIDTH: 'carouselWidth',\n\tCURRENT_INDEX: 'currentIndex',\n\tDISABLE_LOOPING: 'disableLooping',\n  \tHAS_STARTED: 'hasStarted',\n\tHORIZONTAL: 'adaptive',\n\tINDICATOR: 'indicator',\n\tINDICATOR_CLICKED_IDX: 'indicatorClickedIdx',\n\tINDICATORS: 'indicators',\n\tIS_TRANSITION_PENDING: 'isTransitionPending',\n\tLARGE: 'lg',\n\tMEDIUM: 'md',\n\tNAME: 'name',\n\tNONE: 'none',\n\tSET: 'set',\n\tSCROLL_DIRECTION: 'scrollDirection',\n\tCONTENT: 'content',\n\tSN_CAROUSEL: 'sn-carousel',\n\tCONTENT_CONTAINER_ELM: 'contentContainerElm',\n\tRTL: 'rtl',\n\tTITLE: 'carousel-title',\n\tENABLE_AUTOSCROLL: 'enableAutoScroll',\n\tPAUSE_AUTOSCROLL: 'pauseAutoScroll',\n\n\t//Actions\n\tACTION_INDICATOR_CLICKED: 'SN_CAROUSEL#INDICATOR_CLICKED',\n\tACTION_LINK_CLICKED: 'SN_CAROUSEL#LINK_CLICKED',\n\tACTION_INDICATOR_INDEX_UPDATED: 'SN_CAROUSEL#INDICATOR_INDEX_UPDATED',\n\tACTION_RECALCULATE_INDICATORS: 'SN_CAROUSEL#ACTION_RECALCULATE_INDICATORS',\n\tACTION_SLOT_CHANGE: 'SN_CAROUSEL#SLOT_CHANGE',\n\tACTION_SCROLL: 'SN_CAROUSEL#SCROLL',\n\tACTION_TOUCH_END: 'SN_CAROUSEL#TOUCH_END',\n\tACTION_TRANSITION_END: 'SN_CAROUSEL#TRANSITION_END',\n\tACTION_UPDATE_INDICATORS: 'SN_CAROUSEL#UPDATE_INDICATORS',\n\tACTION_FOCUS_IN_ITEM: 'SN_CAROUSEL#FOCUS_IN_ITEM',\n\tNOW_BUTTON_BARE_CLICKED: 'NOW_BUTTON_BARE#CLICKED',\n\tNOW_BUTTON_ICONIC_CLICKED: 'NOW_BUTTON_ICONIC#CLICKED',\n\tMETRIC_TRACKED: 'SN_CAROUSEL#METRIC_TRACKED',\n\tACTION_ARROW_KEY_PRESSED: 'SN_CAROUSEL#ACTION_ARROW_KEY_PRESSED',\n\tACTION_AUTO_SCROLL_START: 'SN_CAROUSEL#AUTO_SCROLL_START',\n\tACTION_AUTO_SCROLL_STOP: 'SN_CAROUSEL#AUTO_SCROLL_STOP',\n\tACTION_AUTO_SCROLL_PAUSED: 'SN_CAROUSEL#AUTO_SCROLL_PAUSED',\n\n\t//Metric Names\n\tCAROUSEL_INITIAL_LOAD:'Initial Carousel View',\n\tNAVIGATION_INTERACTION:'Navigate Carousel Items',\n\n\t//CSS Classes/Values\n\tARROW: 'arrow',\n\tARROWS: 'arrows',\n\tCAROUSEL_LABEL : 'Carousel',\n\tCAROUSEL_FOOTER: 'carousel-footer',\n\tCAROUSEL_HEADER: 'carousel-header',\n\tCAROUSEL_HEADER_ABSENT: 'carousel-header-absent',\n\tCAROUSEL_TRACK: 'carousel-track',\n\tCAROUSEL_WRAPPER: 'carousel-wrapper',\n\tDISABLED: 'disabled',\n\tEMPTY_STATE: 'empty-state',\n\tGRADIENT: 'gradient',\n\tHEADER_LINK: 'header-link',\n\tHIDE: 'hide',\n\tICON: 'icon',\n\tMARGIN_LEFT: 'margin-left',\n\tMARGIN_RIGHT: 'margin-right',\n\tSCROLLING: 'scrolling',\n\tSELECTED: 'selected',\n\tSHOW: 'show',\n\tSHOW_ARROWS: 'show-arrows',\n\tTITLE_WRAPPER: 'title-wrapper',\n\tBADGE: 'title-badge',\n\tTRANSITION_TIME: 'all 0.3s',\n\n\t//Empty State Illustrations\n\tADD_ATTACHMENT: 'add-attachment',\n\tADD_DATA: 'add-data',\n\tCOMPLETED_TASKS: 'completed-tasks',\n\tERROR: 'error',\n\tFIRST_TIME_USER: 'first-time-user',\n\tINTERRUPTED: 'interrupted',\n\tNO_ACTIVITIES: 'no-activities',\n\tNO_DATA: 'no-data',\n\tNO_SEARCH_RESULTS: 'no-search-results',\n\tOFFLINE: 'offline',\n\tPERMISSIONS: 'permissions',\n\tUNCONFIGURED: 'unconfigured',\n\n\t//Empty State Label\n\tEMPTY_STATE_LABEL: t('No content to display'),\n\n\t//Empty State Message\n\tEMPTY_STATE_MESSAGE: t('Please add components into the carousel'),\n\n\t//Gradient Styles\n\tDARK: 'dark',\n\tPRIMARY: 'primary',\n\tSECONDARY: 'secondary',\n\tTERTIARY: 'tertiary',\n\n\t//Margin/Padding constants\n\tGRADIENT_WIDTH: 56,\n\tLEFT_MOST_PADDING: 76,\n\tRIGHT_MARGIN_WIDTH: 12,\n\n\t//Navigation\n\tLEFT_ARROW_ICON: 'circle-chevron-start',\n\tNEXT: t('Next'),\n\tFORWARD: t('Move carousel forward'),\n\tPREVIOUS: t('Previous'),\n\tBACKWARD: t('Move carousel backward'),\n\tRIGHT_ARROW_ICON: 'circle-chevron-end',\n\tPAUSE_LABEL: t('Pause autoscroll'),\n\tPLAY_LABEL: t('Play autoscroll'),\n\tPAUSE_ICON : 'circle-pause',\n\tPLAY_ICON: 'circle-play',\n\n\t//Action constants\n\tPAUSE : 'pause',\n\tPLAY: 'play',\n\n\t//Navigation Position\n\tBOTTOM_LEFT: 'bottom-left',\n\tBOTTOM_RIGHT: 'bottom-right',\n\tBOTTOM_SPLIT: 'bottom-split',\n\tCENTER: 'center',\n\n\t//Navigation Styles\n\tFILL: 'fill',\n\tOUTLINE: 'outline',\n\n\t//Number of Items in View\n\tITEMS_IN_VIEW: 'itemsInView',\n\tMULTIPLE_ITEMS_IN_VIEW: 'multiple-content-items',\n\tSINGLE_ITEM_IN_VIEW: 'single-content-item',\n\n\t//Single Items in View When Zoomed In\n\tSINGLE_ITEM_ON_ZOOM: 'singleItemOnZoom',\n\n\t//Property Types\n\tBOOLEAN: 'boolean',\n\tJSON: 'json',\n\tINTEGER: 'integer',\n\tSTRING: 'string',\n\n\t//Sliding Type\n\tNEXT_SET_OF_ITEMS: 'next-set-of-items',\n\tSINGLE_ITEM: 'single-item',\n\tSLIDING_TYPE: 'slidingType',\n\n\t//Title Levels\n\tTITLE_LEVEL_1: '1',\n\tTITLE_LEVEL_2: '2',\n\tTITLE_LEVEL_3: '3',\n\tTITLE_LEVEL_4: '4',\n\tTITLE_LEVEL_5: '5',\n\tTITLE_LEVEL_6: '6',\n\n\t//Title Styles\n\tHEADER_PRIMARY: 'header-primary',\n\tHEADER_SECONDARY: 'header-secondary',\n\tHEADER_TERTIARY: 'header-tertiary',\n\tTITLE_PRIMARY: 'title-primary',\n\tTITLE_SECONDARY: 'title-secondary',\n\tTITLE_TERTIARY: 'title-tertiary',\n\n\t//Title Position\n\tLEFT: 'left',\n\tRIGHT: 'right',\n\n\t// Keyboard Key Name\n\tENTER_KEY: 'Enter',\n\tARROW_LEFT: 'ArrowLeft',\n\tARROW_RIGHT: 'ArrowRight',\n\n\t//Auto scroll interval ID\n\tAUTO_SCROLL_INTERVAL_ID_DEFAULT: -1\n};\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({ [\"get\"]: () => {\n\t\t\t\t\tconst cjsModule = __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__.__esModule\n\t\t\t\t\tif (cjsModule && 'get' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__[\"default\"].get;\n\t\t\t\t\t} else if ('get' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__.get || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_ui_utils_index_jsdbx_9b965695__[\"default\"].get;\n\t\t\t\t} });","import c from './sn-carousel-constants';\n\n/**\n *  All methods in this file involve the duplication of components required to\n *  make smooth translation if looping is enabled\n */\n\n/**\n * duplicateComponent\n *\n * duplicates a component for use in looping\n */\nconst duplicateComponent = component => {\n\tconst duplicateNode = node => {\n\t\tlet clone = node.cloneNode();\n\n\t\t//if node is a service now component, it will have properties\n\t\tif (node.getProperties !== undefined) {\n\t\t\tconst props = node.getProperties();\n\t\t\tif (props) {\n\t\t\t\tObject.keys(props).forEach(key => {\n\t\t\t\t\tif (node[key])\n\t\t\t\t\t\tclone[key] = node[key];\n\t\t\t\t});\n\t\t\t}\n\n\t\t//otherwise it is pure HTML\n\t\t} else \n\t\t\tclone = node.cloneNode(false);\n\t\t\n\n\t\t//clone any children nodes\n\t\tif (node.children.length > 0) {\n\t\t\tfor (let idx = 0; idx < node.children.length; idx++)\n\t\t\t\tclone.appendChild(duplicateNode(node.children[idx]));\n\t\t}\n\t\treturn clone;\n\t};\n\n\treturn duplicateNode(component);\n};\n\n/**\n * setDuplicateAttribute\n *\n * sets attributes on the duplicated node\n */\nconst setDuplicateAttribute = (component, attribute, suffix) => {\n\tif (component.getAttribute(attribute))\n\t\tcomponent.setAttribute(attribute, component.getAttribute(attribute) + suffix);\n};\n\n/**\n * setupDuplicate\n *\n * sets all the attributes on the duplicated node\n */\nconst setupDuplicate = (duplicate, suffix) => {\n\tsetDuplicateAttribute(duplicate, 'id', suffix);\n\tsetDuplicateAttribute(duplicate, 'now-id', suffix);\n\tsetDuplicateAttribute(duplicate, 'component-id', suffix);\n\tduplicate.setAttribute('is-clone', 'true');\n\tduplicate.setAttribute('tabindex', '-1');\n};\n\n/**\n * deleteDuplicates\n *\n * deletes any duplicated nodes that were created\n * returns true if anything was deleted, false if not\n */\nexport const deleteDuplicates = (hostNode, contentContainerElm) => {\n\t/*\n\t * put any components that have been swapped back into original position before deleting\n\t *  if -pre is after original, or -post is before\n\t */\n\n\tresetPositions(hostNode, contentContainerElm);\n\n\tlet deleted = false;\n\tcontentContainerElm.assignedNodes().forEach(node => {\n\t\tif (node.getAttribute('is-clone') === 'true') {\n\t\t\tdeleted = true;\n\t\t\thostNode.removeChild(node);\n\t\t}\n\t});\n\treturn deleted;\n};\n\n/**\n * createDuplicates\n *\n * creates duplicate nodes for looping\n */\nexport const createDuplicates = (contentContainerElm, contentElms, itemsInView, slidingType, carouselWidth, onResize = false) => {\n\tconst hostNode = contentContainerElm.getRootNode().host;\n\tconst allComponents = contentContainerElm.assignedNodes().filter(node => node.style?.display !== 'none');\n\tlet componentsAdded = false;\n\n\t//If only showing one item at a time, just one duplicate is needed at the front and end\n\tif (itemsInView === c.SINGLE_ITEM_IN_VIEW) {\n\n\t\t//No need to create duplicates on resizing since it's already been create on setup\n\t\tif (onResize) \n\t\t\treturn componentsAdded;\n\n\t\t//Add a duplicate of the last item to the front\n\t\tconst duplicateLastItem = duplicateComponent(contentElms[contentElms.length - 1]);\n\t\tsetupDuplicate(duplicateLastItem, '-pre');\n\t\thostNode.prepend(duplicateLastItem);\n\n\t\t//Add a duplicate of the first item to the end\n\t\tconst duplicateFirstItem = duplicateComponent(contentElms[0]);\n\t\tsetupDuplicate(duplicateFirstItem, '-post');\n\t\thostNode.appendChild(duplicateFirstItem);\n\n\t\tcomponentsAdded = true;\n\n\t} else {\n\n\t\tif (slidingType === c.NEXT_SET_OF_ITEMS) {\n\t\t\t/*\n\t\t\t * For sliding by sets, we need to add the components of the last set and the component before\n\t\t\t * it to the front.  we need the components of the first set and the next component after to add\n\t\t\t *  to the end\n\t\t\t */\n\t\t\tlet firstSet = [];\n\t\t\tlet lastSet = [];\n\t\t\tlet currentSetWidth = 0;\n\t\t\tlet currentSet = [];\n\t\t\tconst remainingLength = carouselWidth - c.LEFT_MOST_PADDING - c.GRADIENT_WIDTH;\n\t\t\tfor (let idx = 0; idx < contentElms.length; idx++) {\n\t\t\t\tcurrentSetWidth += contentElms[idx].offsetWidth;\n\t\t\t\t//far right component could be covered by gradient\n\t\t\t\tif (currentSetWidth > remainingLength) {\n\t\t\t\t\tif (firstSet.length == 0)\n\t\t\t\t\t\tfirstSet = [...currentSet];\n\t\t\t\t\t//since the width is larger, we want to move to the next set\n\t\t\t\t\tcurrentSetWidth = contentElms[idx].offsetWidth;\n\t\t\t\t\tcurrentSet = [];\n\t\t\t\t}\n\t\t\t\tcurrentSetWidth += c.RIGHT_MARGIN_WIDTH;\n\t\t\t\tcurrentSet.push(idx);\n\t\t\t}\n\t\t\tlastSet = [...currentSet];\n\n\t\t\t//The sets may change drastically, so delete all duplicates and recreate if resizing\n\t\t\tif (onResize)\n\t\t\t\tdeleteDuplicates(hostNode, contentContainerElm);\n\n\t\t\tfor (let idx = lastSet[lastSet.length - 1]; idx >= lastSet[0] - 1; idx--) {\n\t\t\t\tconst duplicate = duplicateComponent(contentElms[idx]);\n\t\t\t\tsetupDuplicate(duplicate, '-pre');\n\t\t\t\thostNode.prepend(duplicate);\n\t\t\t}\n\n\t\t\tfor (let idx = firstSet[0]; idx <= firstSet[firstSet.length - 1] + 1; idx++) {\n\t\t\t\tconst duplicate = duplicateComponent(contentElms[idx]);\n\t\t\t\tsetupDuplicate(duplicate, '-post');\n\t\t\t\thostNode.appendChild(duplicate);\n\t\t\t}\n\n\t\t\tcomponentsAdded = true;\n\t\t} else {\n\t\t\t/*\n\t\t\t * For sliding by one item at a time, we need to add the last two items to the front\n\t\t\t * and we need to add the number of items in view based on the position\n\t\t\t * of where the last item ends and the remaining width of the carousel\n\t\t\t */\n\n\t\t\t//Create duplicates components before start of window\n\t\t\tif (!onResize) {\n\t\t\t\tfor (let idx = contentElms.length - 1; idx >= contentElms.length - 2; idx--) {\n\t\t\t\t\tconst duplicate = duplicateComponent(contentElms[idx]);\n\t\t\t\t\tsetupDuplicate(duplicate, '-pre');\n\t\t\t\t\thostNode.prepend(duplicate);\n\t\t\t\t}\n\t\t\t\tcomponentsAdded = true;\n\t\t\t}\n\n\t\t\tlet remainingLength = carouselWidth - c.LEFT_MOST_PADDING;\n\t\t\tfor (let idx = 0; idx < contentElms.length; idx++) {\n\t\t\t\tif (!onResize || findDuplicates(allComponents, contentElms[idx], '-post').length === 0) {\n\t\t\t\t\tconst duplicate = duplicateComponent(contentElms[idx]);\n\t\t\t\t\tsetupDuplicate(duplicate, '-post');\n\t\t\t\t\thostNode.appendChild(duplicate);\n\t\t\t\t\tcomponentsAdded = true;\n\t\t\t\t}\n\n\t\t\t\tremainingLength -= (contentElms[idx].offsetWidth + c.RIGHT_MARGIN_WIDTH);\n\t\t\t\tif (remainingLength < 0)\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t}\n\n\t}\n\n\treturn componentsAdded;\n};\n\n/**\n * findDuplicates\n *\n * returns any duplicated components from components that were created from the original component\n */\nexport const findDuplicates = (components, original, suffix) => {\n\tconst isDuplicate = (component, original, suffix) => {\n\t\tif (suffix === '-pre' || suffix === '-post') {\n\t\t\treturn (component.getAttribute('id') === `${original.getAttribute('id')}${suffix}`) ||\n\t\t\t\t(component.getAttribute('component-id') === `${original.getAttribute('component-id')}${suffix}`);\n\t\t}\n\n\t\treturn (component.getAttribute('id') === `${original.getAttribute('id') }-pre`) ||\n\t\t\t(component.getAttribute('id') === `${original.getAttribute('id') }-post`) ||\n\t\t\t(component.getAttribute('component-id') === `${original.getAttribute('component-id') }-pre`) ||\n\t\t\t(component.getAttribute('component-id') === `${original.getAttribute('component-id') }-post`);\n\t};\n\treturn components.filter( component => isDuplicate(component, original, suffix));\n};\n\nexport const findStartingDuplicates = components => components.filter(component => (component.getAttribute('id')?.includes('-pre') || component.getAttribute('component-id')?.includes('-pre')));\n\nexport const findOriginals = (duplicates, components) => duplicates.map(duplicate => components.find(component => (duplicate.getAttribute('id') === `${component.getAttribute('id') }-pre`) ||\n\t\t\t(duplicate.getAttribute('id') === `${component.getAttribute('id') }-post`) ||\n\t\t\t(duplicate.getAttribute('component-id') === `${component.getAttribute('component-id') }-pre`) ||\n\t\t\t(duplicate.getAttribute('component-id') === `${component.getAttribute('component-id') }-post`)));\n\nexport const swapDuplicates = (components, contentContainerElm, updateState) => {\n\tconst swapRequired = components.some(component => component.getAttribute('is-clone') === 'true');\n\n\tif (swapRequired) {\n\t\tconst hostNode = contentContainerElm.getRootNode().host;\n\t\tupdateState({path: 'isSwapping', value: true, operation: c.SET, shouldRender: false});\n\n\t\t//See if any duplicates exist in the components\n\t\tfor (let idx = 0; idx < components.length; idx++) {\n\t\t\tif (components[idx].getAttribute('is-clone')) {\n\t\t\t\t//Find the original\n\t\t\t\tconst originalComponent = contentContainerElm.assignedNodes().find(node => (`${node.getAttribute('id') }-pre`) === components[idx].getAttribute('id') ||\n\t\t\t\t\t\t(`${node.getAttribute('id') }-post`) === components[idx].getAttribute('id') ||\n\t\t\t\t\t\t(`${node.getAttribute('component-id') }-pre`) === components[idx].getAttribute('component-id') ||\n\t\t\t\t\t\t(`${node.getAttribute('component-id') }-post`) === components[idx].getAttribute('component-id'));\n\t\t\t\tconst sibling = originalComponent.nextElementSibling;\n\t\t\t\thostNode.insertBefore(originalComponent, components[idx]);\n\t\t\t\thostNode.insertBefore(components[idx], sibling);\n\n\t\t\t\t// swapped items should be excluded from tab order, so tab focus doesn't loop\n\t\t\t\tif (originalComponent.getAttribute('is-swap')) {\n\t\t\t\t\toriginalComponent.removeAttribute('is-swap');\n\t\t\t\t\toriginalComponent.removeAttribute('tabindex');\n\t\t\t\t} else {\n\t\t\t\t\toriginalComponent.setAttribute('is-swap', 'true');\n\t\t\t\t\toriginalComponent.setAttribute('tabindex', '-1');\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\t}\n};\n\n/*\n * resetPositions\n *\n * puts components back into original position if they have been swapped\n */\nexport const resetPositions = (hostNode, contentContainerElm) => {\n\tlet swap = false;\n\tcontentContainerElm.assignedNodes().forEach((node, index, array) => {\n\t\tif (node.getAttribute('is-clone') === 'true') {\n\t\t\tconst prePosition = node.getAttribute('id')?.includes('-pre') || node.getAttribute('component-id')?.includes('-pre');\n\t\t\tconst originalIndex = array.findIndex(original =>\n\t\t\t\t(`${original.getAttribute('id') }-pre`) === node.getAttribute('id') ||\n\t\t\t\t(`${original.getAttribute('id') }-post`) === node.getAttribute('id') ||\n\t\t\t\t(`${original.getAttribute('component-id') }-pre`) === node.getAttribute('component-id') ||\n\t\t\t\t(`${original.getAttribute('component-id') }-post`) === node.getAttribute('component-id'));\n\t\t\t//swap original back to position if required\n\t\t\tif ((prePosition && originalIndex < index) || (!prePosition && originalIndex > index)) {\n\t\t\t\tswap = true;\n\t\t\t\tconst sibling = array[originalIndex].nextElementSibling;\n\t\t\t\thostNode.insertBefore(array[originalIndex], node);\n\t\t\t\thostNode.insertBefore(node, sibling);\n\t\t\t\tarray[originalIndex].removeAttribute('tabindex');\n\t\t\t\tarray[originalIndex].removeAttribute('is-swap');\n\t\t\t}\n\t\t}\n\t});\n\treturn swap;\n};\n","import {findOriginals, findStartingDuplicates, swapDuplicates} from './sn-carousel-duplicates';\nimport c from './sn-carousel-constants';\n\n/**\n * isElementVisible\n *\n * checks if the element is actually rendered on the page (not display: none, visibility: hidden, etc.)\n */\nexport const isElementVisible = el => !!(el && el.offsetParent !== null);\n\n/**\n * getContentWidth\n *\n * returns the width of all the components with spacing inside the carousel\n */\nexport const getContentWidth = (contentElms, itemsInView, disableLooping, carouselWidth) => {\n\tlet width = 0;\n\tfor (let idx = 0; idx < contentElms.length; idx++) {\n\t\tif (itemsInView === c.SINGLE_ITEM_IN_VIEW)\n\t\t\twidth += carouselWidth;\n\t\t else\n\t\t\twidth += contentElms[idx].offsetWidth + c.RIGHT_MARGIN_WIDTH;\n\n\n\t}\n\tif (itemsInView === c.MULTIPLE_ITEMS_IN_VIEW && disableLooping)\n\t\twidth -= c.RIGHT_MARGIN_WIDTH;\n\n\treturn width;\n};\n\n/**\n * getContentWidth\n *\n * returns false if the width of a component is 0\n */\nexport const areComponentsInitialized = contentElms => !contentElms.some(component => component.offsetWidth === 0);\n\n/**\n * transformComponents\n *\n * moves the carousel to the given position\n */\nexport const transformComponents = (state, updateState, length, transition = c.TRANSITION_TIME, performSwap = true) => {\n\tconst {contentContainerElm, itemsInView, properties: {dir, disableLooping}} = state;\n\n\t//If duplicate entries will be in view, swap them before translating\n\tif (!disableLooping && itemsInView === c.MULTIPLE_ITEMS_IN_VIEW && performSwap) {\n\t\tconst inViewComponents = getComponentsInView(state, length);\n\t\tswapDuplicates(inViewComponents, contentContainerElm, updateState);\n\t}\n\n\tconst direction = (dir === c.RTL) ? '' : '-';\n\tcontentContainerElm.style.transition = transition;\n\tcontentContainerElm.style.transform = `translate(${direction}${length}px)`;\n};\n\nexport const getTranslation = contentContainerElm => {\n\tlet transformValue = 0;\n\tconst matchValue = contentContainerElm.style.transform.match(/-+[0-9]+/);\n\tif (matchValue !== null)\n\t\ttransformValue = Math.abs(parseInt(matchValue[0]));\n\n\treturn transformValue;\n};\n\n\n/**\n * calculateIndicators\n *\n * This determines how many indicators are required and how to move the carousel\n *\n * For Hard Stop\n * --------------\n *\n * If itemsInView is single-content-item, we show one component at a time.  The margins are calculated when\n * added into the slot.  On each click, the content is moved the width of the carousel\n *\n * If itemsInView is multi-content-items, we show multiple components at a time.  The width of each component can\n * be varied.\n * - If moving one component at a time, we move the frame by adding the previous components width and subtracting LEFT_MOST_PADDING\n * so that part of the component is still on screen\n * - If moving more than one component at a time, we add the next set of components width until they are greater than the\n * width of the carousel.  We then add the width of those components to the translation and subtract LEFT_MOST_PADDING\n * so that part of the component is still on screen\n *\n * For Looping\n * -----------\n *\n * We do the same calculations for looping as we do for hardstop.\n * However, since we have added a duplicate component for each component to the front and end of the list,\n * we add the content width to the translation and subtract the LEFT_MOST_PADDING for each position\n *\n * When we move from the start to the end (clicking left on first position), we move to the first indicator's\n * starting position plus the width of all the components.\n * When we move from the end to start (clicking right at last position), we move to the last indicator's position\n * and subtract the width of all the components\n * After the transition is complete, we move back to the indicator's position without animation\n *\n *\n * TBD\n */\nexport const calculateIndicators = state => {\n\tconst {\n\t\tcarouselTrackElm,\n\t\tcontentContainerElm,\n\t\tcontentCount,\n\t\tcontentElms,\n\t\titemsInView,\n\t\tproperties: {\n\t\t\tslidingType,\n\t\t\tdisableLooping\n\t\t}\n\t} = state;\n\tconst indicators = [];\n\tconst carouselWidth = carouselTrackElm.offsetWidth;\n\tconst contentWidth = getContentWidth(contentElms, itemsInView, disableLooping, carouselWidth);\n\n\tlet translate = 0;\n\tif (!disableLooping) {\n\t\tif (itemsInView === c.SINGLE_ITEM_IN_VIEW) \n\t\t\ttranslate = carouselWidth;\n\t\t else {\n\t\t\tconst startingDuplicates = findStartingDuplicates(contentContainerElm.assignedNodes());\n\t\t\tfindOriginals(startingDuplicates, contentContainerElm.assignedNodes()).forEach(component => {\n\t\t\t\ttranslate += component.offsetWidth + c.RIGHT_MARGIN_WIDTH;\n\t\t\t});\n\t\t}\n\t}\n\n\t//If contentWidth <= carouselWidth, return one indicator at starting position\n\tif (contentWidth <= carouselWidth) {\n\t\treturn [{\n\t\t\ttranslate: 0,\n\t\t\tcontent: 0\n\t\t}];\n\t}\n\n\t//if only showing one item at a time, then we need one indicator per item\n\tif (itemsInView === c.SINGLE_ITEM_IN_VIEW) {\n\t\tfor (let idx = 0; idx < contentCount; idx++) {\n\t\t\tconst indicator = {\n\t\t\t\ttranslate,\n\t\t\t\tcontent: idx\n\t\t\t};\n\t\t\tindicators.push(indicator);\n\n\t\t\t//Update translate for next component starting point\n\t\t\ttranslate += carouselWidth;\n\t\t}\n\t} else {\n\t\tlet currentComponentIdx = 0;\n\t\tfor (let idx = 0; idx < contentCount; idx++) {\n\t\t\t//If looped through all the components, then break\n\t\t\tif (currentComponentIdx >= contentCount)\n\t\t\t\tbreak;\n\n\t\t\tconst indicator = {\n\t\t\t\ttranslate,\n\t\t\t\tcontent: currentComponentIdx\n\t\t\t};\n\t\t\tindicators.push(indicator);\n\n\t\t\t//Update the translate to account for padding\n\t\t\tif (disableLooping) {\n\t\t\t\tif (idx !== 0) {\n\t\t\t\t\tif (translate - c.LEFT_MOST_PADDING < contentWidth - carouselWidth) \n\t\t\t\t\t\tindicators[idx].translate = translate - c.LEFT_MOST_PADDING;\n\t\t\t\t\t else {\n\t\t\t\t\t\t//We've reached the farthest right position\n\t\t\t\t\t\tindicators[idx].translate = contentWidth - carouselWidth;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else \n\t\t\t\tindicators[idx].translate = translate - c.LEFT_MOST_PADDING;\n\t\t\t\n\n\t\t\t//If sliding a single item, just add its width and margin to the translation\n\t\t\tif (slidingType === c.SINGLE_ITEM) {\n\t\t\t\ttranslate += contentElms[idx].offsetWidth + c.RIGHT_MARGIN_WIDTH;\n\t\t\t\tcurrentComponentIdx++;\n\t\t\t//otherwise, need to add the width of the set of items to translate\n\t\t\t} else {\n\t\t\t\tlet currentSetWidth = 0;\n\t\t\t\tfor (currentComponentIdx; currentComponentIdx < contentCount; currentComponentIdx++) {\n\t\t\t\t\tcurrentSetWidth += contentElms[currentComponentIdx].offsetWidth;\n\t\t\t\t\tlet checkWidth = currentSetWidth;\n\t\t\t\t\tif (idx !== 0 || !disableLooping)\n\t\t\t\t\t\tcheckWidth += c.LEFT_MOST_PADDING;\n\n\t\t\t\t\t//far right component could be covered by gradient\n\t\t\t\t\tif (checkWidth >= carouselWidth - c.GRADIENT_WIDTH) {\n\t\t\t\t\t\t//since the width is larger, we want to move to the next set\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\ttranslate += contentElms[currentComponentIdx].offsetWidth + c.RIGHT_MARGIN_WIDTH;\n\t\t\t\t\tcurrentSetWidth += c.RIGHT_MARGIN_WIDTH;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t//Add looping parameters to first and last indicators to handle scrolling\n\tif (!disableLooping && indicators.length > 1) {\n\t\tconst firstIndicator = indicators[0];\n\t\tconst lastIndicator = indicators[indicators.length - 1];\n\n\t\tif (itemsInView === c.SINGLE_ITEM_IN_VIEW) {\n\t\t\tfirstIndicator.loopTranslate = lastIndicator.translate + carouselWidth;\n\t\t\tlastIndicator.loopTranslate = 0;\n\t\t} else {\n\t\t\tfirstIndicator.loopTranslate = firstIndicator.translate + contentWidth;\n\t\t\tlastIndicator.loopTranslate = lastIndicator.translate - contentWidth;\n\t\t}\n\n\t}\n\n\treturn indicators;\n};\n/**\n * getComponentsInView\n *\n * This returns the components that will be in view when transform happens according to transformValue.\n *\n * includePartials=true would include components that are partially visible, false, would ignore partially visible components\n *\n */\nexport const getComponentsInView = (state, transformValue, includePartials = true) => {\n\tconst {\n\t\tcarouselTrackElm,\n\t\tcontentContainerElm\n\t} = state;\n\n\tconst inViewComponents = [];\n\tif (contentContainerElm === null)\n\t\treturn inViewComponents;\n\n\t//Get content of slot\n\tconst allComponents = contentContainerElm.assignedNodes().filter(node => node.style?.display !== 'none');\n\tif (allComponents.length === 0)\n\t\treturn inViewComponents;\n\n\tlet componentIdx = 0;\n\tlet hiddenWidth = 0;\n\tfor (; componentIdx < allComponents.length; componentIdx++) {\n\t\tconst component = allComponents[componentIdx];\n\t\tconst componentWidth = component.offsetWidth + parseFloat(component.style.marginRight || 0) + parseFloat(component.style.marginLeft || 0);\n\t\tconst prevHiddenWidth = hiddenWidth;\n\t\thiddenWidth += componentWidth;\n\t\tif (hiddenWidth\t> transformValue) {\n\t\t\tif (includePartials || prevHiddenWidth >= transformValue)\n\t\t\t\tinViewComponents.push(component);\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tlet accumalatedWidth = hiddenWidth - transformValue;\n\tconst totalWidth = carouselTrackElm.offsetWidth;\n\n\tcomponentIdx++;\n\tfor (; componentIdx < allComponents.length; componentIdx++) {\n\t\tconst component = allComponents[componentIdx];\n\t\tconst componentWidth = component.offsetWidth + parseFloat(component.style.marginRight || 0) + parseFloat(component.style.marginLeft || 0);\n\t\tif (accumalatedWidth + componentWidth > totalWidth) {\n\t\t\tif (includePartials)\n\t\t\t\tinViewComponents.push(component);\n\t\t\tbreak;\n\t\t}\n\t\taccumalatedWidth += componentWidth;\n\t\tinViewComponents.push(component);\n\t}\n\n\treturn inViewComponents;\n};\n\nexport function autoScrollStart(state, updateState, dispatch) {\n\tconst {\n\t\tproperties: {enableAutoScroll, autoScrollSpeed, pauseAutoScroll}\n\t} = state;\n\n\tlet {\n\t\tautoScrollIntervalId\n\t} = state;\n\n\tif (!enableAutoScroll || pauseAutoScroll || autoScrollIntervalId !== c.AUTO_SCROLL_INTERVAL_ID_DEFAULT)\n\t\treturn;\n\n\tautoScrollIntervalId = setInterval(() => {\n\t\tdispatch(c.ACTION_SCROLL, {scrollDirection: c.RIGHT});\n\t}, autoScrollSpeed);\n\n\tupdateState({\n\t\tpath: 'autoScrollIntervalId',\n\t\tvalue: autoScrollIntervalId,\n\t\toperation: c.SET,\n\t\tshouldRender: false\n\t});\n}\n\nexport function autoScrollStop(state, updateState) {\n\tconst {autoScrollIntervalId} = state;\n\tif (autoScrollIntervalId === c.AUTO_SCROLL_INTERVAL_ID_DEFAULT)\n\t\treturn;\n\tclearInterval(autoScrollIntervalId);\n\t// Now that we have cleared the interval, reset the value to default.\n\tupdateState({\n\t\tpath: 'autoScrollIntervalId', value: c.AUTO_SCROLL_INTERVAL_ID_DEFAULT, operation: c.SET, shouldRender: false\n\t});\n}\n\nexport function getActionType(scrollDirection) {\n\tlet actionType = null;\n\tswitch (scrollDirection) {\n\t\tcase c.RIGHT:\n\t\t\tactionType = 'right_arrow_selected';\n\t\t\tbreak;\n\t\tcase c.LEFT:\n\t\t\tactionType = 'left_arrow_selected';\n\t\t\tbreak;\n\t\tcase c.INDICATOR:\n\t\t\tactionType = 'indicator_selected';\n\t\t\tbreak;\n\t}\n\treturn actionType;\n}","import {\n\tareComponentsInitialized,\n\tcalculateIndicators,\n\tgetContentWidth,\n\ttransformComponents,\n\tisElementVisible\n} from './sn-carousel-common';\nimport {\n\tcreateDuplicates,\n\tdeleteDuplicates,\n\tfindDuplicates\n} from './sn-carousel-duplicates';\nimport {get} from '@servicenow/ui-utils';\nimport c from './sn-carousel-constants';\n\n/**\n * updateComponentStyle\n *\n * configures the style for margin, max width and min width on the component\n */\nconst updateComponentStyle = (component, margin, maxWidth) => {\n\tcomponent.style.margin = margin;\n\n\t//Set max width if width is larger\n\tif (component.offsetWidth > maxWidth) {\n\t\tcomponent.style.maxWidth = `${maxWidth}px`;\n\n\t\t//If there is a min width make sure it is less than max width\n\t\tif (component.style.minWidth && component.offsetWidth > maxWidth)\n\t\t\tcomponent.style.minWidth = `${maxWidth}px`;\n\n\t} else {\n\t\t//Otherwise, update maxWidth if it has been set in case the set width is larger\n\t\tif (component.style.maxWidth)\n\t\t\tcomponent.style.maxWidth = `${maxWidth}px`;\n\t}\n};\n\n/**\n * copyStyle\n *\n * copies the set style of the component for its duplicate\n */\nconst copyStyle = (duplicate, component) => {\n\tduplicate.style.margin = component.style.margin;\n\tif (component.style.maxWidth)\n\t\tduplicate.style.maxWidth = component.style.maxWidth;\n\tif (component.style.minWidth)\n\t\tduplicate.style.minWidth = component.style.minWidth;\n};\n\n/**\n * setComponentMargins\n *\n * sets the margins on the components so that the spacing between them is correct\n */\nexport const setComponentMargins = state => {\n\tconst {contentContainerElm, carouselTrackElm, contentElms, itemsInView, properties: {disableLooping, dir}} = state;\n\tconst components = contentContainerElm.assignedNodes().filter(node => node.style?.display !== 'none');\n\n\tfor (let idx = 0; idx < contentElms.length; idx++) {\n\t\tif (contentElms[idx].offsetWidth === 0)\n\t\t\treturn false;\n\n\t\tlet margin = '0';\n\t\tlet maxWidth = carouselTrackElm.offsetWidth - (2 * c.LEFT_MOST_PADDING);\n\n\t\tif (itemsInView === c.SINGLE_ITEM_IN_VIEW) {\n\t\t\tmaxWidth = carouselTrackElm.offsetWidth;\n\t\t\t//Need to set the max width before getting the offsetWidth in case width is %\n\t\t\tcontentElms[idx].style.maxWidth = `${maxWidth}px`;\n\t\t\t//keep margin 0 if width is 100%\n\t\t\tif (contentElms[idx].style.width !== '100%') {\n\t\t\t\tconst marginWidth = (carouselTrackElm.offsetWidth - contentElms[idx].offsetWidth) / 2;\n\t\t\t\tif (marginWidth > 0)\n\t\t\t\t\tmargin = `0 ${marginWidth}px`;\n\t\t\t}\n\n\t\t} else if (!disableLooping || idx !== contentElms.length - 1) {\n\t\t\tif (dir === c.RTL)\n\t\t\t\tmargin = `0 0 0 ${c.RIGHT_MARGIN_WIDTH}px`;\n\t\t\telse\n\t\t\t\tmargin = `0 ${c.RIGHT_MARGIN_WIDTH}px 0 0 `;\n\t\t}\n\n\t\tupdateComponentStyle(contentElms[idx], margin, maxWidth);\n\n\t\t/*\n\t\t * Need to update the margins and widths of the duplicates\n\t\t * Using the style of the original components, as the duplicate components\n\t\t * might not be fully loaded yet\n\t\t *\n\t\t * Make sure duplicates exist before changing the style\n\t\t */\n\t\tif (!disableLooping) {\n\t\t\tfindDuplicates(components, contentElms[idx]).forEach(duplicate => {\n\t\t\t\tcopyStyle(duplicate, contentElms[idx]);\n\t\t\t});\n\t\t}\n\t}\n\n\treturn true;\n};\n\n/**\n * setupComponents\n *\n * Called in initialization or if there was a on slot change event\n * Stores references of the components\n * Checks to see if there was a change to the components\n * If so, update duplicates if need be\n * If no duplicating required, then setup indicators\n */\nexport const setupComponents = (host, state, updateState, dispatch, loopingChanged = false) => {\n\tconst {\n\t\taddDuplicatesOnResize,\n\t\tcarouselTrackElm,\n\t\tcontentContainerElm,\n\t\tcontentElms,\n\t\tcontentCount,\n\t\tisSwapping,\n\t\titemsInView,\n\t\tproperties: {\n\t\t\tdisableLooping,\n\t\t\tslidingType\n\t\t}\n\t} = state;\n\n\tif (contentContainerElm === null || !isElementVisible(host))\n\t\treturn;\n\n\tif (isSwapping) {\n\t\tupdateState({path: 'isSwapping', value: false, operation: c.SET, shouldRender: false});\n\t\treturn;\n\t}\n\n\tif (addDuplicatesOnResize) {\n\t\tupdateState({path: 'addDuplicatesOnResize', value: false, operation: c.SET, shouldRender: false});\n\t\tdispatch(c.ACTION_RECALCULATE_INDICATORS);\n\t\treturn;\n\t}\n\n\t//Get the new contents of the slot\n\tconst newContentElms = [];\n\tlet newContentCount = 0;\n\tif (contentContainerElm.assignedNodes().length !== 0) {\n\t\tcontentContainerElm.style.transition = c.TRANSITION_TIME;\n\t\tcontentContainerElm.assignedNodes().forEach(node => {\n\t\t\tif (!node.getAttribute('is-clone') && node.style?.display !== 'none')\n\t\t\t\tnewContentElms.push(node);\n\n\t\t});\n\t\tnewContentCount = newContentElms.length;\n\t}\n\n\tnewContentElms.forEach((node, idx) => {\n\t\tconst focusinEventHandler = () => {\n\t\t\tdispatch(c.ACTION_FOCUS_IN_ITEM, {node, idx});\n\t\t};\n\n\t\tif (node.carouselItemFocusinHandler)\n\t\t\tnode.removeEventListener('focusin', node.carouselItemFocusinHandler);\n\n\t\tnode.addEventListener('focusin', focusinEventHandler);\n\t\tnode.carouselItemFocusinHandler = focusinEventHandler;\n\t});\n\n\t//Check to see if there was any change\n\tlet contentChanged = false;\n\tif (contentCount !== newContentCount) \n\t\tcontentChanged = true;\n\t else {\n\t\tfor (let i = 0; i < contentElms.length; i++) {\n\t\t\tif (!contentElms[i].isSameNode(newContentElms[i])) {\n\t\t\t\tcontentChanged = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tif (!areComponentsInitialized(newContentElms)) {\n\t\tsetTimeout(() => {\n\t\t\tdispatch(c.ACTION_SLOT_CHANGE);\n\t\t}, 100);\n\n\t\treturn;\n\t}\n\n\t//Check to see if content fits the carousel\n\tconst contentWidth = getContentWidth(newContentElms, itemsInView, disableLooping, carouselTrackElm.offsetWidth);\n\tconst fitsContainer = (contentWidth <= carouselTrackElm.offsetWidth);\n\n\tupdateState([\n\t\t{path: 'contentCount', value: newContentCount, operation: c.SET, shouldRender: false},\n\t\t{path: 'contentElms', value: newContentElms, operation: c.SET, shouldRender: false}\n\t]);\n\n\tif (loopingChanged || contentChanged) {\n\t\tlet slotChangeEvent = false;\n\t\t//remove any duplicate components\n\t\tconst hostNode = contentContainerElm.getRootNode().host;\n\t\tslotChangeEvent = deleteDuplicates(hostNode, contentContainerElm);\n\n\t\t//If looping, add duplicate components if content changed\n\t\tif (!disableLooping && !fitsContainer) {\n\t\t\t//Create duplicates components before start of window\n\t\t\tcreateDuplicates(contentContainerElm, newContentElms, itemsInView, slidingType, carouselTrackElm.offsetWidth);\n\t\t\tslotChangeEvent = true;\n\t\t}\n\n\t\t/*\n\t\t * Deleting or creating duplicates will fire another on slot change event,\n\t\t * so we don't want to update the indicators\n\t\t * If no duplicates were deleted or created, then update the indicators\n\t\t */\n\t\tif (!slotChangeEvent)\n\t\t\tdispatch(c.ACTION_UPDATE_INDICATORS);\n\t} else {\n\t\t//update the indicators now that the components have been setup\n\t\tdispatch(c.ACTION_UPDATE_INDICATORS);\n\t}\n\tdispatch(c.ACTION_TRANSITION_END);\n};\n\n/**\n * setupIndicators\n *\n * sets the margins on the components, then calculates the indicators and moves the carousel to\n * the starting position\n */\nexport const setupIndicators = (state, updateProperties, updateState, dispatch) => {\n\tconst {contentContainerElm, currentIndex, hasStarted, properties: {startingIndex}} = state;\n\n\t//If settings the margins failed, stop setting up the indicators and try again after waiting 100ms\n\tif (!setComponentMargins(state)) {\n\t\tsetTimeout(() => {\n\t\t\tdispatch(c.ACTION_UPDATE_INDICATORS);\n\t\t}, 100);\n\n\t\treturn;\n\t}\n\n\t//calculate indicators and add to state\n\tconst indicators = calculateIndicators(state);\n\n\t//Update index\n\tlet selectedIndex = 0;\n\tif (indicators.length > 1) {\n\t\tconst position = hasStarted ? currentIndex : startingIndex;\n\t\tif (position >= indicators.length)\n\t\t\tselectedIndex = indicators.length - 1;\n\t\telse if (position < 0)\n\t\t\tselectedIndex = 0;\n\t\telse\n\t\t\tselectedIndex = position;\n\t}\n\n\tupdateState([\n\t\t{path: c.INDICATORS, value: indicators, operation: c.SET, shouldRender: true},\n\t\t{path: c.CURRENT_INDEX, value: selectedIndex, operation: c.SET, shouldRender: false},\n\t\t{path: c.HAS_STARTED, value: ( indicators.length > 1 ), operation: c.SET, shouldRender: false}\n\t]);\n\n\t//Move components to starting position\n\tif (contentContainerElm !== null && indicators.length !== 0)\n\t\ttransformComponents(state, updateState, `${indicators[selectedIndex].translate}`, c.NONE);\n\n\tdispatch(c.ACTION_INDICATOR_INDEX_UPDATED, {indicator: selectedIndex, numIndicators: indicators.length});\n\n\t//Metric Event for Initial Load\n\tif (state.didRender === false && (state.indicators.length > 0 || state.contentCount === 0)) {\n\t\tconst metadata = {\n\t\t\ttitle: !!state.properties.carouselTitle,\n\t\t\ttitleVariant: state.properties.titleVariant,\n\t\t\ttitlePosition: state.properties.titlePosition,\n\t\t\thideLink: state.properties.hideLink,\n\t\t\tlinkIcon: !!state.properties.linkIcon,\n\t\t\titemsInView: state.properties.itemsInView,\n\t\t\tslidingType: state.properties.slidingType,\n\t\t\tdisableLooping: state.properties.disableLooping,\n\t\t\tnavStyle: state.properties.navStyle,\n\t\t\tenableAdvancedNavConfig: state.properties.enableAdvancedNavConfig,\n\t\t\tnavButtonConfig: state.properties.navButtonConfig,\n\t\t\tleftNavButtonIcon: state.properties.leftNavButtonIcon,\n\t\t\trightNavButtonIcon: state.properties.rightNavButtonIcon,\n\t\t\tnavPosition: state.properties.navPosition,\n\t\t\tgradientStyle: state.properties.gradientStyle,\n\t\t\thideDotIndicator: state.properties.hideDotIndicator,\n\t\t\tstartingIndex: state.properties.startingIndex,\n\t\t\tcontentCount: state.contentCount,\n\t\t\tnumberOfIndicators: state.indicators.length,\n\t\t\tcurrentIndex: state.currentIndex\n\t\t};\n\t\tdispatch(c.METRIC_TRACKED, {eventName: c.CAROUSEL_INITIAL_LOAD, metadata});\n\t\tupdateState([\n\t\t\t{path: 'didRender', value: true, operation: c.SET, shouldRender: false}\n\t\t]);\n\t}\n};\n","import {\n\tcalculateIndicators,\n\tgetComponentsInView,\n\tgetContentWidth,\n\tgetTranslation,\n\ttransformComponents\n} from './sn-carousel-common';\nimport {\n\tcreateDuplicates,\n\tdeleteDuplicates\n} from './sn-carousel-duplicates';\nimport {setComponentMargins} from './sn-carousel-setup';\nimport c from './sn-carousel-constants';\n\n/**\n * recalculateIndicators\n *\n * when the carousel is resized, we need to update the indicators to reflect the new size\n * may need to adjust the carousel's components position\n */\nexport const recalculateIndicators = (state, updateState, dispatch) => {\n\tconst {\n\t\tcarouselTrackElm,\n\t\tcontentContainerElm,\n\t\tcontentElms,\n\t\tcurrentIndex: originalIndex,\n\t\tindicators: originalIndicators,\n\t\titemsInView,\n\t\tproperties: {\n\t\t\tdisableLooping,\n\t\t\tslidingType\n\t\t}\n\t} = state;\n\n\tconst prevContentWidth = getContentWidth(contentElms, itemsInView, disableLooping, carouselTrackElm.offsetWidth);\n\n\t//The max width might need to be updated\n\tsetComponentMargins(state);\n\n\tconst currentContentWidth = getContentWidth(contentElms, itemsInView, disableLooping, carouselTrackElm.offsetWidth);\n\tconst widthChanged = (prevContentWidth !== currentContentWidth);\n\n\tconst indicators = calculateIndicators(state);\n\tlet newIndex = originalIndex;\n\tif (newIndex >= indicators.length)\n\t\tnewIndex = indicators.length - 1;\n\n\tif (indicators.length > 1) {\n\n\t\t//If only one item is in view, move it to its proper position after updating spacing\n\t\tif (itemsInView === c.SINGLE_ITEM_IN_VIEW) \n\t\t\ttransformComponents(state, updateState, `${indicators[newIndex].translate}`, c.NONE);\n\n\t\t//If at the right most index, keep it in that position\n\t\t else if ((originalIndex !== 0 && originalIndex === originalIndicators.length - 1) || newIndex >= indicators.length - 1) {\n\t\t\tnewIndex = indicators.length - 1;\n\t\t\ttransformComponents(state, updateState, `${indicators[newIndex].translate}`, c.NONE);\n\n\t\t//If the width was changed, move the component to its new position (NOTE: May change which component is in view)\n\t\t} else if (widthChanged) \n\t\t\ttransformComponents(state, updateState, `${indicators[newIndex].translate}`, c.NONE);\n\n\t\t//if sliding type is next set of items and translations are not the same\n\t\t else if (slidingType === c.NEXT_SET_OF_ITEMS && getTranslation(contentContainerElm) !== indicators[newIndex].translate) \n\t\t\ttransformComponents(state, updateState, `${indicators[newIndex].translate}`, c.NONE);\n\t\t\n\n\t\t//Otherwise, don't change the positioning of the components\n\n\t} else {\n\t\t//Moving components back to starting position\n\t\tnewIndex = 0;\n\t\ttransformComponents(state, updateState, 0, c.NONE);\n\t}\n\n\tupdateState([\n\t\t{path: c.INDICATORS, value: indicators, operation: c.SET, shouldRender: true},\n\t\t{path: c.CURRENT_INDEX, value: newIndex, operation: c.SET, shouldRender: false}\n\t]);\n\n\tdispatch(c.ACTION_INDICATOR_INDEX_UPDATED, {indicator: newIndex, numIndicators: indicators.length});\n};\n\n/**\n * handleResize\n *\n * determine if we need to remove/add duplicates while looping which\n * will move the carousel back to the starting position if required\n * otherwise, update the indicators\n */\nexport const handleResize = (state, updateState, dispatch, prevWidth, currentWidth) => {\n\tconst {\n\t\tcontentContainerElm,\n\t\tcontentElms,\n\t\titemsInView,\n\t\tproperties: {\n\t\t\tdisableLooping,\n\t\t\tslidingType\n\t\t}\n\t} = state;\n\n\tconst contentWidth = getContentWidth(contentElms, itemsInView, disableLooping, currentWidth);\n\n\t//Carousel size was made larger\n\tif (currentWidth > prevWidth) {\n\t\t//Check if content now fits the carousel\n\t\tif (contentWidth < currentWidth && contentWidth > prevWidth) {\n\t\t\t//remove duplicates if looping\n\t\t\tif (!disableLooping) {\n\t\t\t\tconst hostNode = contentContainerElm.getRootNode().host;\n\t\t\t\tdeleteDuplicates(hostNode, contentContainerElm);\n\n\t\t\t\t//Deleting duplicates will cause slot change event\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\t//if duplicates were added due to the width change, there will be a slot change event\n\t\tif (!disableLooping && createDuplicates(contentContainerElm, contentElms, itemsInView, slidingType, currentWidth, true)) {\n\t\t\tupdateState({path: 'addDuplicatesOnResize', value: true, operation: c.SET, shouldRender: false});\n\t\t\treturn;\n\t\t}\n\n\t//Carousel size was made smaller\n\t} else {\n\t\t//Check if content now fits the carousel\n\t\tif (contentWidth > currentWidth && contentWidth < prevWidth) {\n\t\t\t//Add duplicates for looping\n\t\t\tif (!disableLooping) {\n\t\t\t\tcreateDuplicates(contentContainerElm, contentElms, itemsInView, slidingType, currentWidth, true);\n\n\t\t\t\t//adding duplicates will cause slot change event\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t}\n\n\trecalculateIndicators(state, updateState, dispatch);\n\t\n\t//DEF0595372 - update `IS_TRANSITION_PENDING` state to false\n\t//To make sure transition state doesn't end up in weird state, while autoscroll & resize happens at the same time\n\tupdateState({path: c.IS_TRANSITION_PENDING, value: false, operation: c.SET, shouldRender: false});\n};\n","import {transformComponents, getActionType} from './sn-carousel-common';\nimport c from './sn-carousel-constants';\n\n/**\n * updateNavigationFocus\n *\n * if the focus is on one of the arrows, but that arrow disappears after clicking it, set\n * the focus on the other arrow\n */\nconst updateNavigationFocus = (host, scrollDirection, disableLooping, index, indicators) => {\n\tif (disableLooping) {\n\t\tif (host.shadowRoot.activeElement === host.shadowRoot.querySelector(`.${c.ARROW}.${scrollDirection} now-button-iconic`)) {\n\t\t\tif (scrollDirection === c.LEFT) {\n\t\t\t\tif (index === 0) {\n\t\t\t\t\t//using setTimeout in case the right arrow is not visible yet (only two indicators)\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\thost.shadowRoot.querySelector(`.${c.ARROW}.${c.RIGHT} now-button-iconic`).focus();\n\t\t\t\t\t}, 100);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (index === indicators.length - 1) {\n\t\t\t\t\t//using setTimeout in case the left arrow is not visible yet (only two indicators)\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\thost.shadowRoot.querySelector(`.${c.ARROW}.${c.LEFT} now-button-iconic`).focus();\n\t\t\t\t\t}, 100);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\n/**\n * scrollEffect\n *\n * move the carousel to the proper position based on which arrow was clicked\n */\nexport const scrollEffect = (scrollDirection, host, state, updateState, dispatch, actionType) => {\n\n\tconst {\n\t\tcontentContainerElm, indicators, isTransitionPending,\n\t\tcurrentIndex: originalIndex,\n\t\tproperties: {disableLooping, dir, enableAutoScroll}\n\t} = state;\n\tconst metadata = {\n\t\ttype: scrollDirection === 'left' ? 'previous' : 'next',\n\t\tlooped: state.properties.disableLooping ? 'not configured' : false\n\t};\n\n\t// Avoid additional scrolls until the transitionEnd has executed for the previous scroll\n\tif (isTransitionPending)\n\t\treturn;\n\n\tlet newIndex = originalIndex;\n\tlet useLoopTranslate = false;\n\n\tif (scrollDirection === c.RIGHT) {\n\t\tnewIndex++;\n\t\tif (newIndex >= indicators.length) {\n\t\t\tif (enableAutoScroll || !disableLooping) {\n\t\t\t\tnewIndex = 0;\n\t\t\t\tuseLoopTranslate = true;\n\t\t\t\tmetadata.looped = true;\n\t\t\t} else \n\t\t\t\tnewIndex = indicators.length - 1;\n\t\t\t\n\t\t}\n\t} else {\n\t\tnewIndex--;\n\t\tif (newIndex < 0) {\n\t\t\tif (disableLooping) \n\t\t\t\tnewIndex = 0;\n\t\t\t else {\n\t\t\t\tnewIndex = indicators.length - 1;\n\t\t\t\tuseLoopTranslate = true;\n\t\t\t\tmetadata.looped = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tif (useLoopTranslate)\n\t\ttransformComponents(state, updateState, `${indicators[newIndex].loopTranslate}`, c.TRANSITION_TIME, false);\n\telse\n\t\ttransformComponents(state, updateState, `${indicators[newIndex].translate}`);\n\n\tupdateState([\n\t\t{path: c.CURRENT_INDEX, value: newIndex, operation: c.SET, shouldRender: true},\n\t\t{path: c.IS_TRANSITION_PENDING, value: true, operation: c.SET, shouldRender: false}\n\t]);\n\n\tdispatch(c.ACTION_INDICATOR_INDEX_UPDATED, {indicator: newIndex, numIndicators: indicators.length, actionType});\n\tdispatch(c.METRIC_TRACKED, {eventName: c.NAVIGATION_INTERACTION, metadata});\n\n\tupdateNavigationFocus(host, scrollDirection, disableLooping, newIndex, indicators);\n};\n\n/**\n * indicatorClickedEffect\n *\n * move the carousel to the proper position based on which indicator was clicked\n */\nexport const indicatorClickedEffect = (action, state, updateState, dispatch, actionType) => {\n\tconst {payload: {indicatorClickedIdx, nextIndicator}} = action;\n\tconst {\n\t\tindicators, isTransitionPending, contentContainerElm\n\t} = state;\n\tconst metadata = {\n\t\ttype: 'dot indicator'\n\t};\n\n\t// Avoid additional scrolls until the transitionEnd has executed for the previous scroll\n\tif (isTransitionPending)\n\t\treturn;\n\n\ttransformComponents(state, updateState, `${indicators[indicatorClickedIdx].translate}`);\n\n\tupdateState([\n\t\t{path: c.CURRENT_INDEX, value: indicatorClickedIdx, operation: c.SET, shouldRender: true},\n\t\t{path: c.IS_TRANSITION_PENDING, value: true, operation: c.SET, shouldRender: false}\n\t]);\n\n\tdispatch(c.ACTION_INDICATOR_INDEX_UPDATED, {indicator: indicatorClickedIdx, numIndicators: indicators.length, actionType});\n\n\tdispatch(c.METRIC_TRACKED, {eventName: c.NAVIGATION_INTERACTION, metadata});\n\n\tif (nextIndicator)\n\t\tdispatch(c.ACTION_ARROW_KEY_PRESSED, {nextIndicator});\n};\n\n/**\n * transitionEndEffect\n *\n * removes the scrolling class added to the carousel track\n * If looping and moving from start to end (or vice versa), update the position to original indicator position\n */\nexport const transitionEndEffect = (dispatch, state, updateState) => {\n\tconst {\n\t\tcontentContainerElm, carouselTrackElm, isSwapping,\n\t\tindicators, currentIndex, properties: {disableLooping, dir}\n\t} = state;\n\n\tif (indicators.length === 0)\n\t\treturn;\n\n\n\t/*\n\t * When Javascript interprets the code, i.e. especially with transitions, it messes up with order as it executes\n\t * super-fast. To make sure the following effect happens, we are doing the setTimeout way.\n\t *\n\t * 100ms wait is executed to avoid jerky movements of the components\n\t */\n\tsetTimeout(() => {\n\n\t\t//If looping, we want to reset the translations if scrolling before the beginning or after the end\n\n\t\tif (!disableLooping && (currentIndex === 0 || currentIndex === indicators.length - 1))\n\t\t\ttransformComponents(state, updateState, `${indicators[currentIndex].translate}`, c.NONE);\n\n\n\t\t/*\n\t\t * We would like to update isTransitionPending only when we enable transition i.e. by setting the value\n\t\t * of contentContainerElm.style.transition. If not there are issues with scroll\n\t\t */\n\t\tupdateState({path: c.IS_TRANSITION_PENDING, value: false, operation: c.SET, shouldRender: false});\n\n\t\t/*\n\t\t * The scrolling class has been added in arrow or indicator click\n\t\t * It needs to be removed once the transition has completed so the user can scroll\n\t\t * the carousel again\n\t\t */\n\t\tcarouselTrackElm.classList.remove(c.SCROLLING);\n\t}, 100);\n};\n\n/**\n * swipeEffect\n *\n * determines which way to scroll when swiping and then calls scrollEffect\n */\nexport const swipeEffect = (touchStart, touchEnd, touchMove, host, state, updateState, dispatch) => {\n\tconst {\n\t\tcarouselTrackElm, currentIndex, indicators,\n\t\tproperties: {disableLooping}\n\t} = state;\n\n\tif (touchEnd === touchStart || !touchMove) \n\t\treturn;\n\n\tlet scrollDirection = c.RIGHT;\n\t//if swipe right, scroll left\n\tif (touchEnd > touchStart)\n\t\tscrollDirection = c.LEFT;\n\n\t//do not want to scroll past end positions\n\tif (disableLooping && ((currentIndex === 0 && scrollDirection === c.LEFT) ||\n\t\t(currentIndex === indicators.length - 1 && scrollDirection === c.RIGHT)))\n\t\treturn;\n\n\t//c.SCROLLING class is added before transition and is removed on-transitionend\n\tcarouselTrackElm.classList.add(c.SCROLLING);\n\n\tconst actionType = getActionType(scrollDirection);\n\tscrollEffect(scrollDirection, host, state, updateState, dispatch, actionType);\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} });","import c from './sn-carousel-constants';\n// noinspection ES6CheckImport\nimport {actionTypes} from '@servicenow/ui-core';\nimport {get} from '@servicenow/ui-utils';\nimport {getComponentsInView, getTranslation, transformComponents, autoScrollStart, autoScrollStop, getActionType} from './sn-carousel-common';\nimport {handleResize, recalculateIndicators} from './sn-carousel-resize';\nimport {\n\tindicatorClickedEffect,\n\tscrollEffect,\n\tswipeEffect,\n\ttransitionEndEffect\n} from './sn-carousel-scroll';\nimport {resetPositions} from './sn-carousel-duplicates';\nimport {setupComponents, setupIndicators} from './sn-carousel-setup';\nimport track from '@devsnc/ux-metrics';\n\nconst {COMPONENT_DOM_READY, COMPONENT_TREE_RENDERED, COMPONENT_PROPERTY_CHANGED} = actionTypes;\n\nconst isZoomedIn = () => window.devicePixelRatio >= 4;\n\nconst updateItemsInView = (updateState, itemsInView) => {\n\tif (isZoomedIn()) {\n\t\tupdateState([\n\t\t\t{path: c.ITEMS_IN_VIEW, value: c.SINGLE_ITEM_IN_VIEW, operation: c.SET, shouldRender: false}\n\t\t]);\n\t\treturn c.SINGLE_ITEM_IN_VIEW;\n\t} \n\tupdateState([\n\t\t{path: c.ITEMS_IN_VIEW, value: itemsInView, operation: c.SET, shouldRender: false}\n\t]);\n\treturn itemsInView;\n\t\n};\n\nexport const actionHandlers = {\n\t[COMPONENT_DOM_READY]: {\n\t\teffect({state, dispatch, updateProperties}) {\n\t\t\tconst {enableAutoScroll, pauseAutoScroll} = state.properties;\n\t\t\tif (enableAutoScroll) {\n\t\t\t\tupdateProperties({\n\t\t\t\t\tdisableLooping: false\n\t\t\t\t});\n\t\t\t\tif (!pauseAutoScroll)\n\t\t\t\t\tdispatch(c.ACTION_AUTO_SCROLL_START);\n\t\t\t}\n\t\t}\n\t},\n\t[COMPONENT_TREE_RENDERED]: {\n\t\teffect({host, state, updateState, dispatch}) {\n\t\t\tconst {carouselTrackElm, carouselWidth, properties: {singleItemOnZoom, itemsInView}} = state;\n\t\t\t//For UIB, set up components once the width is non zero\n\t\t\tif (carouselTrackElm && carouselWidth === 0 && carouselWidth !== carouselTrackElm.offsetWidth) {\n\t\t\t\tupdateState({path: c.CAROUSEL_WIDTH, value: carouselTrackElm.offsetWidth, operation: c.SET, shouldRender: false});\n\t\t\t\tif (singleItemOnZoom) \n\t\t\t\t\tstate.itemsInView = updateItemsInView(updateState, itemsInView);\n\t\t\t\t\n\t\t\t\tsetupComponents(host, state, updateState, dispatch);\n\t\t\t}\n\n\t\t\t//When the carousel width changes, handle resize\n\t\t\tif (carouselWidth !== 0 && carouselWidth !== carouselTrackElm.offsetWidth && carouselTrackElm.offsetWidth !== 0) {\n\t\t\t\tif (singleItemOnZoom) \n\t\t\t\t\tstate.itemsInView = updateItemsInView(updateState, itemsInView);\n\t\t\t\t\n\t\t\t\tupdateState({path: c.CAROUSEL_WIDTH, value: carouselTrackElm.offsetWidth, operation: c.SET, shouldRender: false});\n\t\t\t\thandleResize(state, updateState, dispatch, carouselWidth, carouselTrackElm.offsetWidth);\n\t\t\t}\n\n\t\t}\n\t},\n\t[COMPONENT_PROPERTY_CHANGED]: {\n\t\teffect({host, action, state, updateState, dispatch, updateProperties}) {\n\t\t\tconst propertyChanged = get(action.payload, c.NAME);\n\t\t\tconst {\n\t\t\t\tcarouselTrackElm, contentContainerElm, itemsInView,\n\t\t\t\tproperties: {disableLooping, singleItemOnZoom, itemsInView: propItemsInView, pauseAutoScroll}\n\t\t\t} = state;\n\n\t\t\t//If property changes scrolling logic, reset everything\n\t\t\tif (propertyChanged === c.DISABLE_LOOPING || propertyChanged === c.ITEMS_IN_VIEW\n\t\t\t\t|| propertyChanged === c.SLIDING_TYPE || propertyChanged === c.SINGLE_ITEM_ON_ZOOM) {\n\n\t\t\t\tif (carouselTrackElm !== null)\n\t\t\t\t\tcarouselTrackElm.classList.remove(c.SCROLLING);\n\n\t\t\t\tif (propertyChanged === c.DISABLE_LOOPING || propertyChanged === c.SLIDING_TYPE ) {\n\t\t\t\t\tif (contentContainerElm && getTranslation(contentContainerElm) !== 0) {\n\t\t\t\t\t\tcontentContainerElm.style.transition = c.NONE;\n\t\t\t\t\t\tcontentContainerElm.style.transform = 'translate(0px)';\n\t\t\t\t\t}\n\n\t\t\t\t\tupdateState({\n\t\t\t\t\t\tcurrentIndex: 0,\n\t\t\t\t\t\tisTransitionPending: false\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tif (singleItemOnZoom) \n\t\t\t\t\t\tupdateItemsInView(updateState, propItemsInView);\n\t\t\t\t\t else {\n\t\t\t\t\t\tupdateState([\n\t\t\t\t\t\t\t{path: 'itemsInView', value: propItemsInView, operation: c.SET, shouldRender: false}\n\t\t\t\t\t\t]);\n\t\t\t\t\t}\n\t\t\t\t\tupdateState({\n\t\t\t\t\t\tisTransitionPending: false\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif (propertyChanged !== c.DISABLE_LOOPING && !disableLooping)\n\t\t\t\t\tresetPositions(contentContainerElm.getRootNode().host, contentContainerElm);\n\n\t\t\t\tsetupComponents(host, state, updateState, dispatch, (propertyChanged === c.DISABLE_LOOPING || !disableLooping));\n\t\t\t}\n\n\t\t\tif (propertyChanged === c.ENABLE_AUTOSCROLL) {\n\t\t\t\tif (action.payload.value) {\n\t\t\t\t\tupdateProperties({\n\t\t\t\t\t\tdisableLooping: false\n\t\t\t\t\t});\n\t\t\t\t\tif (!pauseAutoScroll) \n\t\t\t\t\t\tdispatch(c.ACTION_AUTO_SCROLL_START);\n\t\t\t\t\telse \n\t\t\t\t\t\tdispatch(c.ACTION_AUTO_SCROLL_STOP);\n\t\t\t\t} else {\n\t\t\t\t\tupdateProperties({\n\t\t\t\t\t\tdisableLooping: true\n\t\t\t\t\t});\n\t\t\t\t\tdispatch(c.ACTION_AUTO_SCROLL_STOP);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\n\t\t\tif (propertyChanged === c.PAUSE_AUTOSCROLL) {\n\t\t\t\tif (!action.payload.value) \n\t\t\t\t\tdispatch(c.ACTION_AUTO_SCROLL_START);\n\t\t\t\t else \n\t\t\t\t\tdispatch(c.ACTION_AUTO_SCROLL_STOP);\n\t\t\t\t\n\t\t\t}\n\t\t}\n\t},\n\t[c.ACTION_SCROLL]: {\n\t\tstopPropagation: true,\n\t\teffect({action, state, host, updateState, dispatch}) {\n\t\t\tconst {payload: {scrollDirection}} = action;\n\t\t\tscrollEffect(scrollDirection, host, state, updateState, dispatch);\n\t\t}\n\t},\n\t[c.NOW_BUTTON_ICONIC_CLICKED]: {\n\t\teffect({action, state, host, updateState, dispatch, updateProperties}) {\n\t\t\tconst {currentIndex, indicators} = state;\n\t\t\tconst {pauseAutoScroll} = state.properties;\n\t\t\tconst {payload: {carouselTrackElm, scrollDirection, autoScrollAction}} = action;\n\n\t\t\tif (autoScrollAction === c.PAUSE || autoScrollAction === c.PLAY) {\n\t\t\t\tupdateProperties({\n\t\t\t\t\tpauseAutoScroll: !pauseAutoScroll\n\t\t\t\t});\n\t\t\t\tdispatch(c.ACTION_AUTO_SCROLL_PAUSED, {isPaused: !pauseAutoScroll, indicator: currentIndex, numIndicators: indicators.length});\n\t\t\t\taction.stopPropagation();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst actionType = getActionType(scrollDirection);\n\n\t\t\t// stop event propagation for now-button-iconic, only if click is from navigation buttons\n\t\t\tif (carouselTrackElm && scrollDirection) {\n\t\t\t\t//c.SCROLLING class is added before transition and is removed on-transitionend\n\t\t\t\tcarouselTrackElm.classList.add(c.SCROLLING);\n\t\t\t\tscrollEffect(scrollDirection, host, state, updateState, dispatch, actionType);\n\t\t\t\taction.stopPropagation();\n\t\t\t}\n\t\t}\n\t},\n\t[c.ACTION_INDICATOR_CLICKED]: {\n\t\tstopPropagation: true,\n\t\teffect({action, state, updateState, dispatch}) {\n\t\t\tconst actionType = getActionType(c.INDICATOR);\n\t\t\tindicatorClickedEffect(action, state, updateState, dispatch, actionType);\n\t\t}\n\t},\n\t[c.ACTION_TRANSITION_END]: {\n\t\tstopPropagation: true,\n\t\teffect({dispatch, state, updateState}) {\n\t\t\ttransitionEndEffect(dispatch, state, updateState);\n\t\t}\n\t},\n\t[c.ACTION_RECALCULATE_INDICATORS]: {\n\t\tstopPropagation: true,\n\t\teffect({dispatch, state, updateState}) {\n\t\t\trecalculateIndicators(state, updateState, dispatch);\n\t\t}\n\t},\n\t[c.ACTION_SLOT_CHANGE]: {\n\t\tstopPropagation: true,\n\t\teffect({host, dispatch, state, updateState}) {\n\t\t\tsetupComponents(host, state, updateState, dispatch);\n\t\t}\n\t},\n\t[c.ACTION_TOUCH_END]: {\n\t\tstopPropagation: true,\n\t\teffect({action, state, host, updateState, dispatch}) {\n\t\t\tconst {touchStart, touchMove} = state;\n\t\t\tconst {payload: {touchEnd}} = action;\n\t\t\tswipeEffect(touchStart, touchEnd, touchMove, host, state, updateState, dispatch);\n\t\t\tupdateState({path: 'touchMove', value: false, operation: c.SET, shouldRender: false});\n\t\t}\n\t},\n\t[c.ACTION_UPDATE_INDICATORS]: {\n\t\tstopPropagation: true,\n\t\teffect ({state, updateProperties, updateState, dispatch}) {\n\t\t\tsetupIndicators(state, updateProperties, updateState, dispatch);\n\t\t}\n\t},\n\t[c.NOW_BUTTON_BARE_CLICKED]: {\n\t\teffect({action, dispatch}) {\n\t\t\tconst metadata = {\n\t\t\t\ttype: 'viewAllLink'\n\t\t\t};\n\t\t\t//Only dispatch ACTION_LINK_CLICKED if the 'view all' link was clicked\n\t\t\tif (action.meta.appended) {\n\t\t\t\tconst {component} = action.meta.appended;\n\t\t\t\tif (component === c.SN_CAROUSEL) {\n\t\t\t\t\taction.stopPropagation();\n\t\t\t\t\tdispatch(c.ACTION_LINK_CLICKED);\n\t\t\t\t\tdispatch(c.METRIC_TRACKED, {eventName: c.NAVIGATION_INTERACTION, metadata});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\t[c.METRIC_TRACKED]:{\n\t\tstopPropagation: true,\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\t\t\ttrack(coeffects, eventName, metadata);\n\t\t}\n\t},\n\t[c.ACTION_ARROW_KEY_PRESSED]:{\n\t\tstopPropagation: true,\n\t\teffect(coeffects) {\n\t\t\tconst {\n\t\t\t\taction: {\n\t\t\t\t\tpayload: {nextIndicator}\n\t\t\t\t}\n\t\t\t} = coeffects;\n\t\t\tnextIndicator.focus();\n\t\t}\n\t},\n\t[c.ACTION_FOCUS_IN_ITEM]:{\n\t\tstopPropagation: true,\n\t\teffect(coeffects) {\n\t\t\tconst {\n\t\t\t\taction: {\n\t\t\t\t\tpayload: {node, idx}\n\t\t\t\t},\n\t\t\t\tstate, host, updateState, dispatch\n\t\t\t} = coeffects;\n\t\t\tconst {indicators, carouselTrackElm, currentIndex\n\t\t\t} = state;\n\t\t\tconst inViewComponents = getComponentsInView(state, indicators[currentIndex].translate, false);\n\t\t\tlet indicatorIdx = 0;\n\t\t\twhile (indicatorIdx < indicators.length - 1 && indicators[indicatorIdx + 1].content <= idx)\n\t\t\t\tindicatorIdx += 1;\n\n\t\t\tif (!inViewComponents.includes(node)) {\n\t\t\t\tcarouselTrackElm.classList.add(c.SCROLLING);\n\n\t\t\t\ttransformComponents(state, updateState, `${indicators[indicatorIdx].translate}`);\n\n\t\t\t\tupdateState([\n\t\t\t\t\t{path: c.CURRENT_INDEX, value: indicatorIdx, operation: c.SET, shouldRender: true},\n\t\t\t\t\t{path: c.IS_TRANSITION_PENDING, value: true, operation: c.SET, shouldRender: false}\n\t\t\t\t]);\n\t\t\t\tdispatch(c.ACTION_INDICATOR_INDEX_UPDATED, {indicator: indicatorIdx, numIndicators: indicators.length});\n\t\t\t\tdispatch(c.METRIC_TRACKED, {eventName: c.NAVIGATION_INTERACTION, metadata: {type: 'tab focus'}});\n\t\t\t}\n\t\t}\n\t},\n\t[c.ACTION_AUTO_SCROLL_START]: {\n\t\tstopPropagation: true,\n\t\teffect({dispatch, state, updateState}) {\n\t\t\tautoScrollStart(state, updateState, dispatch);\n\t\t}\n\t},\n\n\t[c.ACTION_AUTO_SCROLL_STOP]: {\n\t\tstopPropagation: true,\n\t\teffect({state, updateState}) {\n\t\t\tautoScrollStop(state, updateState);\n\t\t}\n\t}\n};\n","import c from './sn-carousel-constants';\n\nexport const initialState = {\n\taddDuplicatesOnResize: false,\n\tcarouselTrackElm: null,\n\tcarouselWidth: 0,\n\tcontentContainerElm: null,\n\tcontentCount: 0,\n\tcontentElms: [],\n\tcurrentIndex: 0,\n\tdidRender: false,\n\terrorMessage: null,\n\tindicators: [],\n\tisSwapping: false,\n\tisTransitionPending: false,\n  \thasStarted: false,\n\ttouchStart: 0,\n\tautoScrollIntervalId: c.AUTO_SCROLL_INTERVAL_ID_DEFAULT\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_resize_29_0_0_index_jsdbx_ef64f19d__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__.__esModule\n\t\t\t\t\tif (cjsModule && 'default' === 'default') {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__[\"default\"];\n\t\t\t\t\t} else if (cjsModule)  {\n\t\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__[\"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_resize_29_0_0_index_jsdbx_ef64f19d__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__[\"default\"] || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_resize_29_0_0_index_jsdbx_ef64f19d__[\"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_29_0_0_index_jsdbx_24a6f5a6__.default && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__.__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_29_0_0_index_jsdbx_24a6f5a6__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__[\"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_29_0_0_index_jsdbx_24a6f5a6__[\"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_29_0_0_index_jsdbx_24a6f5a6__[\"default\"] ? (__WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__[\"default\"][\"default\"] ? __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__[\"default\"][\"default\"] : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__[\"default\"]) : __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__;\n\t\t\t\t\t}\n\t\t\t\t\treturn __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__[\"default\"] || __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__[\"default\"] && __WEBPACK_EXTERNAL_MODULE__uxasset_externals_servicenow_behavior_rtl_29_0_0_index_jsdbx_24a6f5a6__[\"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({ [\"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}, [\"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({  });","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 c from './sn-carousel-constants';\n\nconst getDisplayArrowClass = (state, arrowType) => {\n\tconst {currentIndex, indicators, properties: {disableLooping, navPosition}} = state;\n\n\t//if looping, we always show the arrows\n\tif (!disableLooping)\n\t\treturn c.SHOW;\n\n\tlet hideArrow = false;\n\tif (arrowType === c.LEFT)\n\t\thideArrow = (currentIndex === 0);\n\telse\n\t\thideArrow = (currentIndex === indicators.length - 1);\n\n\tif (!hideArrow)\n\t\treturn c.SHOW;\n\n\tif (navPosition === c.CENTER)\n\t\treturn c.HIDE;\n\n\treturn c.DISABLED;\n};\n\nexport const getNavigationControls = (state, dispatch) => {\n\tconst {contentCount, indicators, carouselTrackElm, properties: {navPosition, showCompactView, navStyle, navButtonConfig, enableAdvancedNavConfig, leftNavButtonIcon, rightNavButtonIcon}} = state;\n\n\t//If there are no components or if all of the components fit the width of the carousel, don't show arrows\n\tif (contentCount === 0 || indicators.length <= 1)\n\t\treturn '';\n\n\tconst displayLeftArrow = getDisplayArrowClass(state, c.LEFT);\n\tconst displayRightArrow = getDisplayArrowClass(state, c.RIGHT);\n\n\tlet navButtonProps = {\n\t\tsize: 'lg',\n\t\tbare: 'true',\n\t\tvariant: 'primary',\n\t\thidePadding: 'true',\n\t\tclassName:'nav-button',\n\t};\n\n\tif (enableAdvancedNavConfig) {\n\t\tnavButtonProps = {...navButtonProps, ...navButtonConfig};\n\t\t// solution for large button being clipped - a fix for this is in a new stry\n\t\tif (navPosition.includes(\"bottom\")) {\n\t\t\tnavButtonProps['hidePadding'] = 'true';\n\t\t}\n\t\n\t}\n\n\treturn (\n\t\t<div className={`${c.ARROWS} ${navPosition}`}>\n\t\t\t<span className={`${c.ARROW} ${c.LEFT} ${navPosition} ${showCompactView ? 'compact' : 'not-compact'} ${displayLeftArrow}`}>\n\t\t\t\t<now-button-iconic\n\t\t\t\t\t{...navButtonProps}\n\t\t\t\t\ticon={enableAdvancedNavConfig ? leftNavButtonIcon : `${c.LEFT_ARROW_ICON}-${navStyle}`}\n\t\t\t\t\ttooltipContent={c.BACKWARD}\n\t\t\t\t\tdisabled={displayLeftArrow === c.DISABLED}\n\t\t\t\t\tconfigAria={{\n\t\t\t\t\t\tbutton: {\n\t\t\t\t\t\t\t'aria-label': c.BACKWARD,\n\t\t\t\t\t\t\t...(displayLeftArrow === c.DISABLED && {'aria-disabled': 'true'})\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t\t\tappend-to-payload={{\n\t\t\t\t\t\tscrollDirection: c.LEFT,\n\t\t\t\t\t\tcarouselTrackElm\n\t\t\t\t\t}}\n\t\t\t\t><\/now-button-iconic>\n\t\t\t<\/span>\n\t\t\t<span className={`${c.ARROW} ${c.RIGHT} ${navPosition} ${displayRightArrow}`}>\n\t\t\t\t<now-button-iconic\n\t\t\t\t\t{...navButtonProps}\n\t\t\t\t\ticon={enableAdvancedNavConfig ? rightNavButtonIcon : `${c.RIGHT_ARROW_ICON}-${navStyle}`}\n\t\t\t\t\ttooltipContent={c.FORWARD}\n\t\t\t\t\tdisabled={displayRightArrow === c.DISABLED}\n\t\t\t\t\tconfigAria={{\n\t\t\t\t\t\tbutton: {\n\t\t\t\t\t\t\t'aria-label': c.FORWARD,\n\t\t\t\t\t\t\t...(displayRightArrow === c.DISABLED && {'aria-disabled': 'true'})\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t\t\tappend-to-payload={{\n\t\t\t\t\t\tscrollDirection: c.RIGHT,\n\t\t\t\t\t\tcarouselTrackElm\n\t\t\t\t\t}}\n\t\t\t\t><\/now-button-iconic>\n\t\t\t<\/span>\n\t\t<\/div>\n\t);\n};\n","import '@servicenow/now-button';\nimport '@servicenow/now-heading';\nimport '@servicenow/now-icon';\nimport '@servicenow/now-template-message';\nimport '@servicenow/now-highlighted-value';\n\nimport {t} from 'sn-translate';\n\nimport {Fragment} from '@servicenow/ui-renderer-snabbdom';\nimport {getIndicators} from './sn-carousel-indicators';\nimport {getNavigationControls} from './sn-carousel-nav';\nimport c from './sn-carousel-constants';\n\nconst showTitle = state => {\n\tconst {properties: {hideTitle, carouselTitle}} = state;\n\treturn !(hideTitle || carouselTitle.trim().length === 0);\n};\n\nconst displayTitle = state => {\n\tconst {properties: {carouselTitle, disableTextWrapping, titleLevel, titlePosition, titleVariant, badgeConfig}} = state;\n\n\tif (!showTitle(state))\n\t\treturn (<div id={c.TITLE_WRAPPER} className={c.TITLE_WRAPPER}/>);\n\n\tconst badge = badgeConfig.label ? <now-highlighted-value id={c.BADGE} className={c.BADGE} label={badgeConfig.label} color={badgeConfig.color} variant={badgeConfig.variant}/> : null;\n\n\treturn (\n\t\t<div id={c.TITLE_WRAPPER} className={`${c.TITLE_WRAPPER} ${titlePosition}`}>\n\t\t\t<now-heading className={c.TITLE} label={carouselTitle} level={titleLevel} variant={titleVariant} wontWrap={disableTextWrapping} hasNoMargin={true}/> \n\t\t\t{badge}\n\t\t<\/div>\n\t);\n};\n\nconst showHeaderLink = state => {\n\tconst {properties: {hideLink, linkText, linkIcon}} = state;\n\treturn !(hideLink || (!linkText && !linkIcon));\n};\n\nconst displayHeaderLink = state => {\n\tconst {properties: {linkText, linkIcon}} = state;\n\n\tif (!showHeaderLink(state))\n\t\treturn '';\n\n\treturn (\n\t\t<span className={`${c.HEADER_LINK}`}>\n\t\t\t<now-button-bare\n\t\t\t\tlabel={linkText ? t(linkText) : ''}\n\t\t\t\ticon-end={linkIcon ? linkIcon : ''}\n\t\t\t\tvariant={c.SECONDARY}\n\t\t\t\tsize={c.MEDIUM}\n\t\t\t\tclassName={c.BUTTON}\n\t\t\t\thidePadding={true}\n\t\t\t\tconfigAria={{button: {'aria-roledescription': 'link'}}}\n\t\t\t\tappend-to-meta={{component: c.SN_CAROUSEL}}>\n\t\t\t<\/now-button-bare>\n\t\t<\/span>\n\t);\n};\n\nconst displayHeader = state => {\n\tconst {properties: {titlePosition}} = state;\n\tif (!showTitle(state) && !showHeaderLink(state))\n\t\treturn <div className={c.CAROUSEL_HEADER_ABSENT}/>;\n\n\treturn (\n\t\t<div className={`${c.CAROUSEL_HEADER} carousel-${titlePosition}`}>\n\t\t\t{displayTitle(state)}\n\t\t\t{displayHeaderLink(state)}\n\t\t<\/div>\n\t);\n};\n\nconst displayFooter = (state, dispatch) => {\n\tconst {contentCount, indicators, properties: {navPosition}} = state;\n\tlet indicatorClasses = `${c.INDICATORS} ${navPosition}`;\n\tif (navPosition !== c.CENTER && (contentCount > 0 && indicators.length > 1))\n\t\tindicatorClasses += ` ${c.SHOW_ARROWS}`;\n\n\treturn (\n\t\t<div className={c.CAROUSEL_FOOTER}>\n\t\t\t<div className={indicatorClasses}>{getIndicators(state, dispatch)}<\/div>\n\t\t<\/div>\n\t);\n};\n\nconst displayEmptyState = state => {\n\tconst {\n\t\temptyStateLabel,\n\t\temptyStateContent,\n\t\temptyStateIllustration,\n\t\ttitleLevel\n\t} = state.properties;\n\n\t//The empty state heading level should be lower than the title heading level\n\tconst headingLevel = (titleLevel === c.TITLE_LEVEL_6 ? parseInt(titleLevel) : parseInt(titleLevel) + 1);\n\treturn (\n\t\t<now-template-message-empty-state\n\t\t\tclassName={c.EMPTY_STATE}\n\t\t\theading={{label: emptyStateLabel, level: headingLevel}}\n\t\t\tcontent={emptyStateContent}\n\t\t\talignment={c.HORIZONTAL}\n\t\t\tillustration={emptyStateIllustration}\n\t\t/>\n\t);\n};\n\nconst view = (state, {\n\tdispatch,\n\tupdateState\n}) => {\n\tconst {\n\t\tcontentContainerElm,\n\t\tcontentCount,\n\t\tcurrentIndex,\n\t\tindicators,\n\t\tproperties: {\n\t\t\tdisableLooping,\n\t\t\tgradientStyle,\n\t\t\tnavStyle,\n\t\t\tenableAdvancedNavConfig,\n\t\t\tnavPosition,\n\t\t\tenableAutoScroll,\n\t\t\tshowCompactView,\n\t\t\tpauseAutoScroll\n\t\t}\n\t} = state;\n\n\tlet isLooping = !disableLooping;\n\tif (contentContainerElm !== null && contentCount > 0)\n\t\tisLooping = (contentContainerElm.assignedNodes().filter(node => node.style?.display !== 'none').length > contentCount);\n\n\tconst leftGradientStyle = (isLooping || (currentIndex > 0)) ? gradientStyle : c.NONE;\n\tconst rightGradientStyle = (isLooping || (currentIndex < indicators.length - 1)) ? gradientStyle : c.NONE;\n\tconst roleDesc = t('Carousel of {0} items', contentCount);\n\n\tconst ariaLabelledBy = showTitle(state) ? c.TITLE_WRAPPER : '';\n\n\treturn (\n\t\t<Fragment> \n\t\t\t<div className={c.CAROUSEL_WRAPPER} aria-label={t(c.CAROUSEL_LABEL)}\n\t\t\t\t role=\"group\" aria-roledescription={roleDesc} aria-labelledby={ariaLabelledBy}> \n\t\t\t\t{displayHeader(state)} \n\t\t\t\t{(contentCount === 0) ? displayEmptyState(state) : ''}\n\t\t\t\t<div className={c.CAROUSEL_TRACK}\n\t\t\t\t\tref={carouselTrackElm => {\n\t\t\t\t\t\tupdateState(\n\t\t\t\t\t\t\t{path: c.CAROUSEL_TRACK_ELM, value: carouselTrackElm, operation: c.SET, shouldRender: true});\n\n\t\t\t\t\t}}\n\t\t\t\t\ton-touchstart={e => {\n\t\t\t\t\t\tupdateState(\n\t\t\t\t\t\t\t{path: 'touchStart', value: e.changedTouches[0].clientX, operation: c.SET, shouldRender: false});\n\t\t\t\t\t}}\n\t\t\t\t\ton-touchend={e => {\n\t\t\t\t\t\tdispatch(c.ACTION_TOUCH_END, {touchEnd: e.changedTouches[0].clientX});\n\t\t\t\t\t}}\n\t\t\t\t\ton-touchmove={() => {\n\t\t\t\t\t\tupdateState(\n\t\t\t\t\t\t\t{path: 'touchMove', value: true, operation: c.SET, shouldRender: false});\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<div className={`${c.GRADIENT} ${c.LEFT} ${leftGradientStyle}`}/>\n\t\t\t\t\t<div className={`${c.GRADIENT} ${c.RIGHT} ${rightGradientStyle}`}/>\n\t\t\t\t\t{enableAutoScroll ? <div className={`pause-play-button ${showCompactView ? 'compact' : 'not-compact'}`}>\n\t\t\t\t\t\t<now-button-iconic\n\t\t\t\t\t\t\ticon={`${!pauseAutoScroll ? c.PAUSE_ICON : c.PLAY_ICON}-${enableAdvancedNavConfig ? \"fill\" : navStyle}`}\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tbare={true}\n\t\t\t\t\t\t\tsize=\"lg\"\n\t\t\t\t\t\t\thide-padding={true}\n\t\t\t\t\t\t\tconfig-aria={{button: {'aria-label': !pauseAutoScroll ? c.PAUSE_LABEL : c.PLAY_LABEL}}}\n\t\t\t\t\t\t\ttooltip-content={!pauseAutoScroll ? c.PAUSE_LABEL : c.PLAY_LABEL}\n\t\t\t\t\t\t\tappend-to-payload={{\n\t\t\t\t\t\t\t\tautoScrollAction: !pauseAutoScroll ? c.PAUSE : c.PLAY\n\t\t\t\t\t\t\t}}>\n\t\t\t\t\t\t<\/now-button-iconic>\n\t\t\t\t\t<\/div> : ''}\n\t\t\t\t\t{getNavigationControls(state, dispatch)}\n\t\t\t\t\t<slot name={c.CONTENT} className='content-container'\n\t\t\t\t\t\tref={contentContainerElm => {\n\t\t\t\t\t\t\tupdateState(\n\t\t\t\t\t\t\t\t{path: c.CONTENT_CONTAINER_ELM, value: contentContainerElm, operation: c.SET, shouldRender: true});\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ton-slotchange={() => {\n\t\t\t\t\t\t\tdispatch(c.ACTION_SLOT_CHANGE);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ton-transitionend={() => {\n\t\t\t\t\t\t\tdispatch(c.ACTION_TRANSITION_END);\n\t\t\t\t\t\t}}>\n\n\t\t\t\t\t<\/slot>\n\n\t\t\t\t<\/div>\n\t\t\t\t{displayFooter(state, dispatch)}\n\t\t\t<\/div>\n\n\t\t<\/Fragment>\n\t);\n};\n\nexport default view;","import {t} from 'sn-translate';\nimport c from './sn-carousel-constants';\n\nexport const getIndicators = (state, dispatch) => {\n\tconst {\n\t\tindicators, currentIndex, carouselTrackElm, itemsInView,\n\t\tproperties: {hideDotIndicator}\n\t} = state;\n\n\tconst indicatorSelected = (idx, currentIndex, nextIndicator) => {\n\t\tif (idx !== currentIndex) {\n\t\t\t//c.SCROLLING class is added before transition and is removed on-transitionend\n\t\t\tcarouselTrackElm.classList.add(c.SCROLLING);\n\t\t\tdispatch(c.ACTION_INDICATOR_CLICKED, {indicatorClickedIdx: idx, nextIndicator});\n\t\t}\n\t};\n\n\t//hide if true\n\tif (hideDotIndicator)\n\t\treturn '';\n\n\t// We hide indicators if the number of indicators is greater than 10.\n\tif (indicators.length <= 1 || indicators.length > 10)\n\t\treturn '';\n\n\tconst items = [];\n\tfor (let idx = 0; idx < indicators.length; ++idx) {\n\t\tconst indicatorId = `${c.INDICATOR}${idx + 1}`;\n\t\tconst label = itemsInView === c.SINGLE_ITEM_IN_VIEW ?\n\t\t\tt('Carousel navigation, {0} of {1}', idx + 1, indicators.length) :\n\t\t\tt('Carousel navigation, screen {0} of {1}', idx + 1, indicators.length);\n\t\titems.push(\n\t\t\t<div key={indicatorId} id={indicatorId}>\n\t\t\t\t<button\n\t\t\t\t\tclassName={idx === currentIndex ? c.SELECTED : ''}\n\t\t\t\t\taria-label={label}\n\t\t\t\t\taria-current={idx === currentIndex ? 'true' : 'false'}\n\t\t\t\t\ttitle={label}\n\t\t\t\t\ton-click={() => {\n\t\t\t\t\t\tindicatorSelected(idx, currentIndex);\n\t\t\t\t\t}}\n\t\t\t\t\ton-keydown={event => {\n\t\t\t\t\t\tif (event.key === c.ENTER_KEY) \n\t\t\t\t\t\t\tindicatorSelected(idx, currentIndex);\n\t\t\t\t\t\t else if (event.key === c.ARROW_LEFT || event.key === c.ARROW_RIGHT) {\n\t\t\t\t\t\t\tconst ulElem = event.target.parentElement.parentElement;\n\t\t\t\t\t\t\tconst nextIdx = (currentIndex + (event.key === c.ARROW_RIGHT ? 1 : -1) + indicators.length) % indicators.length;\n\t\t\t\t\t\t\tconst nextIndicator = ulElem.querySelector(`#${c.INDICATOR}${nextIdx + 1} > button`);\n\t\t\t\t\t\t\tindicatorSelected(nextIdx, currentIndex, nextIndicator);\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t<\/div>\n\t\t);\n\t}\n\n\treturn <nav aria-label=\"Carousel Slider\">{items}<\/nav>;\n};\n","import {actionHandlers} from './sn-carousel-action-handlers';\nimport {createCustomElement} from '@servicenow/ui-core';\nimport {initialState} from './sn-initial-state';\nimport c from './sn-carousel-constants';\nimport resizeBehavior from '@servicenow/behavior-resize';\nimport rtlBehavior from '@servicenow/behavior-rtl';\nimport snabbdom from '@servicenow/ui-renderer-snabbdom';\nimport styles from './carousel.scss';\nimport view from './sn-carousel-view';\n\n/**\n * Carousel is a component that allows the user to cycle through a list of components.\n *\n * The carousel component shows a subset of components on the page.\n * The user can click on the arrows or indicators to move some of the\n * components out of view and other components into view.\n *\n * Note: In the example below, it does not need to be a now-card component.\n * It can be any type of component as long as it is in the slot.\n *\n * ```jsx\n *\t<sn-carousel>\n * \t\t<now-card slot=\"content\" size=\"lg\">\n *\t\t\t<now-card-header\n *\t\t\t\theading={{label: 'Content 1'}}\n *\t\t/>\n *\t\t<\/now-card>\n *\t\t<now-card slot=\"content\" size=\"lg\">\n *\t\t\t<now-card-header\n *\t\t\t\theading={{label: 'Content 2'}}\n *\t\t\t/>\n *\t\t<\/now-card>\n *\t<\/sn-carousel>\n * ```\n *\n * @seismicElement sn-carousel\n * @summary a container that allows some of the content to display if it is larger\n * than the page\n */\nexport default createCustomElement('sn-carousel', {\n\tproperties: {\n\t\t/**\n\t\t * When true, the title is hidden.\n\t\t *\n\t\t * If hideTitle and hideLink are true, the header will be hidden.\n\t\t *\n\t\t * @type {boolean}\n\t\t */\n\t\thideTitle: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: c.BOOLEAN\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * The content for the title.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\tcarouselTitle: {\n\t\t\tdefault: 'Title',\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Customizable badge, primarily used to display number of items in the Carousel.\n\t\t *\n\t\t * @type {label: string, color: string, variant: string}\n\t\t */\n\t\tbadgeConfig: {\n\t\t\tdefault: {label: '', color: 'low', variant: 'tertiary'},\n\t\t\tschema: {\n\t\t\t\ttype: c.JSON\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Disables title text from wrapping and truncates the title instead.\n\t\t * \n\t\t * @type {boolean}\n\t\t */\n\t\tdisableTextWrapping: {\n\t\t\tdefault: true,\n\t\t\tschema: {\n\t\t\t\ttype: c.BOOLEAN\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Sets the HTML <hx> heading element used to render the title.\n\t\t * The property is based on the Heading component.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\ttitleLevel: {\n\t\t\tdefault: c.TITLE_LEVEL_2,\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING,\n\t\t\t\tenum: [c.TITLE_LEVEL_1,\n\t\t\t\t\tc.TITLE_LEVEL_2,\n\t\t\t\t\tc.TITLE_LEVEL_3,\n\t\t\t\t\tc.TITLE_LEVEL_4,\n\t\t\t\t\tc.TITLE_LEVEL_5,\n\t\t\t\t\tc.TITLE_LEVEL_6\n\t\t\t\t]\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Sets the style variant that is applied to the title.\n\t\t * The property is based on the Heading component.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\ttitleVariant: {\n\t\t\tdefault: c.HEADER_TERTIARY,\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING,\n\t\t\t\tenum: [c.HEADER_PRIMARY,\n\t\t\t\t\tc.HEADER_SECONDARY,\n\t\t\t\t\tc.HEADER_TERTIARY,\n\t\t\t\t\tc.TITLE_PRIMARY,\n\t\t\t\t\tc.TITLE_SECONDARY,\n\t\t\t\t\tc.TITLE_TERTIARY\n\t\t\t\t]\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Sets the position of the title. The title can be left-aligned or right-aligned.\n\t\t *\n\t\t * If the space available for the title is not sufficient, the title will be truncated\n\t\t * to the space and 3 ellipses will be shown at the end.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\ttitlePosition: {\n\t\t\tdefault: c.LEFT,\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING,\n\t\t\t\tenum: [c.LEFT, c.RIGHT]\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * When true, the link is hidden.\n\t\t *\n\t\t * If hideTitle and hideLink are true, the header will be hidden.\n\t\t *\n\t\t * @type {boolean}\n\t\t */\n\t\thideLink: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: c.BOOLEAN\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * The icon to display at the end of the link text.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\tlinkIcon: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * The content for the link.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\tlinkText: {\n\t\t\tdefault: '',\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * The heading to display if there is no content.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\temptyStateLabel: {\n\t\t\tdefault: c.EMPTY_STATE_LABEL,\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * The message to display if there is no content.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\temptyStateContent: {\n\t\t\tdefault: c.EMPTY_STATE_MESSAGE,\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * The illustration to display if there is no content.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\temptyStateIllustration: {\n\t\t\tdefault:c.COMPLETED_TASKS,\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING,\n\t\t\t\tenum: [\n\t\t\t\t\tc.ADD_ATTACHMENT,\n\t\t\t\t\tc.ADD_DATA,\n\t\t\t\t\tc.COMPLETED_TASKS,\n\t\t\t\t\tc.ERROR,\n\t\t\t\t\tc.FIRST_TIME_USER,\n\t\t\t\t\tc.INTERRUPTED,\n\t\t\t\t\tc.NO_ACTIVITIES,\n\t\t\t\t\tc.NO_DATA,\n\t\t\t\t\tc.NO_SEARCH_RESULTS,\n\t\t\t\t\tc.OFFLINE,\n\t\t\t\t\tc.PERMISSIONS,\n\t\t\t\t\tc.UNCONFIGURED\n\t\t\t\t]\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Indicates how to display the items in a carousel: one at a time or multiple times.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\titemsInView: {\n\t\t\tdefault: c.MULTIPLE_ITEMS_IN_VIEW,\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING,\n\t\t\t\tenum: [c.MULTIPLE_ITEMS_IN_VIEW, c.SINGLE_ITEM_IN_VIEW]\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Indicates how many items move when you click next: a single item or a set of items.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\tslidingType: {\n\t\t\tdefault: c.SINGLE_ITEM,\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING,\n\t\t\t\tenum: [c.NEXT_SET_OF_ITEMS, c.SINGLE_ITEM]\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t *\n\t\t * When true, the left arrow on the first component and the right arrow on the last component\n\t\t * are not visible.\n\t\t *\n\t\t * @type {boolean}\n\t\t */\n\t\tdisableLooping: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: c.BOOLEAN\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * The navigation controls can be positioned as follows:\n\t\t *  - center: Vertically centered and displayed on either end\n\t\t *  - bottom-right: Bottom-right aligned\n\t\t *  - bottom-left: Bottom-left aligned\n\t\t *  - bottom-split: Bottom aligned and displayed on either end\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\tnavPosition: {\n\t\t\tdefault: c.CENTER,\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING,\n\t\t\t\tenum: [c.CENTER, c.BOTTOM_LEFT, c.BOTTOM_RIGHT, c.BOTTOM_SPLIT]\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * The color of the gradient surrounding the sides of the carousel.\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\tgradientStyle: {\n\t\t\tdefault: c.PRIMARY,\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING,\n\t\t\t\tenum: [c.PRIMARY, c.SECONDARY, c.TERTIARY, c.DARK, c.NONE]\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines how the navigation controls look.\n\t\t *  - fill: The icon is filled in.\n\t\t *  - outline: The icon is outlined and the background is filled in.\n\t\t * @type {string}\n\t\t */\n\t\tnavStyle: {\n\t\t\tdefault: c.FILL,\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING,\n\t\t\t\tenum: [c.FILL, c.OUTLINE]\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Enables advanced configuration of the navigation control buttons.\n\t\t * \n\t\t * @type {boolean}\n\t\t */\n\t\tenableAdvancedNavConfig: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: c.BOOLEAN\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the config for navigation buttons.\n\t\t * \n\t\t * @type {JSON} \n\t\t */\n\t\tnavButtonConfig: {\n\t\t\tdefault: {\n\t\t\t\tbare: true,\n\t\t\t\thidePadding: false,\n\t\t\t\tsize: 'lg'\n\t\t\t},\n\t\t\tschema: {type: 'object'}\n\t\t},\n\t\t/**\n\t\t * Defines the left navigation button icon.\n\t\t * \n\t\t * @type {String}\n\t\t */\n\t\tleftNavButtonIcon: {\n\t\t\tdefault: 'circle-chevron-start-fill',\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Defines the right navigation button icon.\n\t\t * \n\t\t * @type {String}\n\t\t */\n\t\trightNavButtonIcon: {\n\t\t\tdefault: 'circle-chevron-end-fill',\n\t\t\tschema: {\n\t\t\t\ttype: c.STRING\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * When true, the dot indicators will be hidden.\n\t\t *\n\t\t * The dots will also be hidden if there are more than 10.\n\t\t *\n\t\t * @type {boolean}\n\t\t */\n\t\thideDotIndicator: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: c.BOOLEAN\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Index of the indicators to move the carousel to when initially loaded/refreshed.\n\t\t *\n\t\t * @type {boolean}\n\t\t */\n\t\tstartingIndex: {\n\t\t\tdefault: 0,\n\t\t\tschema: {\n\t\t\t\ttype: c.INTEGER\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * When true, the content view will change to single item when zoomed-in to 400%\n\t\t *\n\t\t *\n\t\t * @type {boolean}\n\t\t */\n\t\tsingleItemOnZoom: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: c.BOOLEAN\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t *\n\t\t * When true, carousel content is scrolled automatically at default interval(1000ms)\n\t\t *\n\t\t * @type {boolean}\n\t\t */\n\t\tenableAutoScroll: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: c.BOOLEAN\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * \n\t\t * Enabling compact view, the 'Autoplay' button is shown before the left arrow button.\n\t\t *\n\t\t * @type {boolean}\n\t\t */\n\t\tshowCompactView: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: c.BOOLEAN\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Carousel content auto scroll speed interval\n\t\t *\n\t\t * @type {number}\n\t\t */\n\t\tautoScrollSpeed: {\n\t\t\tdefault: 3000,\n\t\t\tschema: {\n\t\t\t\ttype: c.INTEGER\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t *\n\t\t * When true, carousel content autoscroll will be paused\n\t\t *\n\t\t * @type {boolean}\n\t\t */\n\t\tpauseAutoScroll: {\n\t\t\tdefault: false,\n\t\t\tschema: {\n\t\t\t\ttype: c.BOOLEAN\n\t\t\t}\n\t\t}\n\t},\n\tsetInitialState({properties}) {\n\t\treturn {\n\t\t\t...initialState,\n\t\t\titemsInView: properties.itemsInView\n\t\t};\n\t},\n\tactionHandlers,\n\trenderer: {\n\t\ttype: snabbdom,\n\t\tview\n\t},\n\tstyles,\n\tbehaviors: [\n\t\t{\n\t\t\tbehavior: resizeBehavior\n\t\t},\n\t\t{\n\t\t\tbehavior: rtlBehavior\n\t\t}\n\t],\n\tslots: {\n\t\t/**\n\t\t * The content for the slots.\n\t\t */\n\t\tcontent: {}\n\t}\n});","import * as exports from '../index.js';\nwindow.__TECTONIC__$devsnc_sn_carousel=exports;\nexport * from '../index.js';\n\n"],"version":3}},{"offset":{"line":40,"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}}]}