{"version":3,"sources":["webpack:///./scripts/components/toolbox/movers.js","webpack:///./scripts/components/toolbox/convertSavedToolbox.js","webpack:///./scripts/components/toolbox/index.js","webpack:///./scripts/components/toolbox/sortableKeyboard.js"],"names":["toolboxMove","left","$el","insertBefore","prevAll","first","focus","right","insertAfter","nextAll","toggle","window","innerWidth","parents","find","tooltip","$","popover","length","children","append","hasClass","convertSavedToolbox","savedItems","allItems","returnObj","items","remainingItems","someToolboxValid","some","savedItem","r","forEach","allItem","Id","filter","currentAllItem","i","SortOrder","push","sort","sortOrder","remaining","a","b","orderA","orderB","comparison","Toolbox","toolboxUserState","strToolboxKey","showTooltips","ev","setTimeout","currentItems","getCurrentRenderedItems","savedUserState","JSON","parse","sessionStorage","getItem","ToolboxItems","item","index","error","render","ShowTooltips","setupTooltip","err","html","evt","ui","$cbShowTooltips","prop","removeClass","addClass","fadeSmoother","fadeOut","$btnCustomise","$tipToolbox","$tipCustomise","tipCustomiseDefault","attr","enableSorting","fadeIn","$btnAddWrap","$lower","tipCustomiseClosed","$btnAdd","toggleClass","$remaining","text","noItemsMessage","handleAddClick","isModalVersion","modal","tipToolboxClosed","removeAttr","disableSorting","save","this","$btnDone","$loader","tipToolboxDefault","classMain","classRemaining","classGroup","strTipToolboxClosed","Cookies","get","stringToBoolean","strTipCustomiseClosed","init","setupCalloutEvents","setupCustomiseEvents","setupTooltipEvents","addEventListener","onUserStateUpdate","target","PageUrl","indexOf","Description","IconClass","Name","itemMarkup","remainingMarkup","itemsSeparated","remove","map","getToolboxItemHtml","$mainList","class","$remainingList","promise","done","prepend","sortable","connectWith","placeholder","stop","handleSortStop","setupCustomSortableHandlers","setupTooltips","handleCustomiseClick","on","preventDefault","self","each","tooltipText","data","getPopoverHtml","trigger","placement","content","e","not","next","getBoundingClientRect","bottom","innerHeight","document","documentElement","clientHeight","css","$remove","$up","$down","click","set","handleDoneClick","handleToggleTooltips","saveItems","userStateManager","getUserState","saveUserState","respObj","$toolbox","isCustomising","$btnAddRemoves","keypressStatus","bind","which","parent"],"mappings":"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","file":"2.0b8f43c911261019d449.js","sourcesContent":["//Moves\nexport const toolboxMove = {\n left($el){\n $el.insertBefore($el.prevAll('li').first());\n $el.focus();\n },\n right($el){\n $el.insertAfter($el.nextAll('li').first());\n $el.focus();\n },\n toggle($el){\n //Clean up any popovers and tooltips first\n if (window.innerWidth > 1200) {\n $el.parents('.toolbox').find('[data-toggle=\"tooltip\"]').tooltip('hide');\n } else {\n $('.info').popover('hide'); \n }\n\n if ($el.parents('.toolbox__remaining ul').length > 0) {\n $el.parents('.toolbox').children('ul').append($el);\n \n if (window.innerWidth > 1200) {\n $el.focus();\n }\n } else { \n $el.parents('.toolbox').find('.toolbox__remaining ul').append($el);\n if ($el.parents('.toolbox').hasClass('-customising') && window.innerWidth > 1200) {\n $el.focus();\n }\n }\n }\n}","// Helper to convert saved list of just toolbox ids to a full toolbox object ready to render\n\nexport function convertSavedToolbox(savedItems, allItems) {\n var returnObj = {};\n var items = [];\n var remainingItems = [];\n\n // First check at least one iD is valid to avoid returning an empty set if savesaved iDs somehow no longer match any items\n var someToolboxValid = savedItems.some((savedItem) => {\n let r = false;\n allItems.forEach((allItem) => {\n if (allItem.Id === savedItem.Id) {\n r = true;\n }\n });\n return r;\n });\n\n // console.log('Some valid:');\n // console.log(someToolboxValid);\n\n // Filter all items based on the saved list. This ensures content is updated and invalid ids from saved items are skipped\n if (savedItems.length > 0 && someToolboxValid) {\n items = allItems.filter((currentAllItem) => {\n let r = false;\n for (var i = 0; i < savedItems.length; i++) {\n if (savedItems[i].Id === currentAllItem.Id) {\n currentAllItem.SortOrder = savedItems[i].SortOrder; //Transfer the sort order across\n r = true;\n }\n }\n\n //Loop complete and it wasn't found, must go to remaining list\n if (!r) {\n remainingItems.push(currentAllItem);\n }\n return r;\n });\n\n items.sort(sortOrder); //Sort based on SortOrder prop\n } else {\n items = allItems;\n }\n\n returnObj.items = items;\n returnObj.remaining = remainingItems;\n // console.log('Items to push to return obj:');\n // console.log(items);\n // console.log('Saved list:');\n // console.log(savedItems);\n // console.log('Converted toolbox list:');\n // console.log(returnObj)\n\n return returnObj;\n}\n\nfunction sortOrder(a, b) {\n const orderA = a.SortOrder;\n const orderB = b.SortOrder;\n let comparison = 0;\n if (orderA > orderB) {\n comparison = 1;\n } else if (orderA < orderB) {\n comparison = -1;\n }\n return comparison;\n}\n","//Toolbox with drag and drop customisation\n\nimport { fadeSmoother, stringToBoolean } from '../../helpers/helpers';\n\nimport Cookies from 'js-cookie';\nimport { convertSavedToolbox } from './convertSavedToolbox';\nimport { setupCustomSortableHandlers } from './sortableKeyboard';\nimport { toolboxMove } from './movers';\nimport userStateManager from '../../helpers/stateManager';\n\nexport class Toolbox {\n constructor(toolboxUserState, allItems, strToolboxKey, showTooltips, $el) {\n //Data\n this.savedItems = toolboxUserState.ToolboxItems;\n this.allItems = allItems;\n this.strToolboxKey = strToolboxKey;\n this.showTooltips = showTooltips;\n\n //Element references\n this.$el = $el;\n this.$tipToolbox = this.$el.parents('.toolbox-panel').find('.callout-box--info');\n this.$btnAdd = this.$el.find('[data-toolbox-add-trigger]');\n this.$btnDone = this.$el.find('[data-toolbox-done-trigger]');\n this.$tipCustomise = this.$el.parents('.toolbox-panel').find('.callout-box--customise');\n this.$btnCustomise = this.$el.parents('.toolbox-panel').find('[data-toolbox-customise-trigger]');\n this.$cbShowTooltips = this.$el.find('.dfes-checkbox');\n this.$btnAddWrap = this.$el.find('.toolbox__add');\n this.$remaining = this.$el.find('.toolbox__remaining');\n this.$lower = this.$el.find('.toolbox__lower'); //done button container\n this.$loader = this.$el.find('.loader-2');\n this.isModalVersion = this.$el.parents('.modal').length > 0 && window.innerWidth > 1200; //Force customising state to persist\n\n //Message defaults\n this.noItemsMessage = 'Oops, it looks like you have no items in your toolbox. Please add at least one link added to continue.';\n this.tipToolboxDefault = this.$tipToolbox.find('.callout-box__content').html();\n this.tipCustomiseDefault = this.$tipCustomise.find('.callout-box__content').html();\n\n //Classes\n this.classMain = 'sortable-' + this.strToolboxKey;\n this.classRemaining = 'sortable-remaining-' + this.strToolboxKey;\n this.classGroup = 'sortable-group-' + this.strToolboxKey; //Joiner for drag and drop\n\n //Intro toolbox callout\n const strTipToolboxClosed =\n Cookies.get(this.strToolboxKey + 'tipToolboxClosed') !== 'true'\n ? 'false'\n : Cookies.get(this.strToolboxKey + 'tipToolboxClosed');\n this.tipToolboxClosed = stringToBoolean(strTipToolboxClosed);\n //Customise callout state\n const strTipCustomiseClosed =\n Cookies.get(this.strToolboxKey + 'tipCustomiseClosed') !== 'true'\n ? 'false'\n : Cookies.get(this.strToolboxKey + 'tipCustomiseClosed');\n this.tipCustomiseClosed = stringToBoolean(strTipCustomiseClosed);\n\n this.init();\n }\n\n init() {\n try {\n this.render();\n this.setupCalloutEvents(); //ToDo: Global for entire site?\n this.setupCustomiseEvents();\n this.setupTooltip();\n this.setupTooltipEvents();\n\n window.addEventListener('userStateUpdated', this.onUserStateUpdate);\n } catch (err) {\n console.error('A toolbox setup was called but there was a problem: ', err);\n if (this.$el.length > 0) {\n this.$el.html(\n '
Oops, there was a problem setting up your toolbox. Please try again later.
'\n );\n }\n }\n }\n\n getToolboxItemHtml(item) {\n const target =\n item.PageUrl !== null && typeof item.PageUrl !== 'undefined' && item.PageUrl.indexOf('/systems/') > 0 ? 'target=\"_blank\"' : '';\n\n return `\nOops, there was a problem setting up your toolbox. Please try again later.
'\n );\n }\n }\n }, 800);\n };\n\n render() {\n var itemsSeparated = convertSavedToolbox(this.savedItems, this.allItems);\n var items = itemsSeparated.items;\n var remainingItems = itemsSeparated.remaining;\n var itemMarkup = '';\n var remainingMarkup = '';\n\n //Cleanup any existing lists, in case of update\n this.$el.find('ul').remove();\n\n //Main list\n itemMarkup = items.map((item) => this.getToolboxItemHtml(item));\n var $mainList = $('