@atlassian/aui 7.10.0 → 7.10.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/changelog.md +51 -5
  2. package/dist/aui/css/aui-experimental.css.map +1 -1
  3. package/dist/aui/css/aui-experimental.min.css +1 -1
  4. package/dist/aui/css/aui-experimental.min.css.map +1 -1
  5. package/dist/aui/css/aui-iconfonts.min.css.map +1 -1
  6. package/dist/aui/css/aui.css.map +1 -1
  7. package/dist/aui/css/aui.min.css +8 -8
  8. package/dist/aui/css/aui.min.css.map +1 -1
  9. package/dist/aui/js/aui-css-deprecations.js +6 -6
  10. package/dist/aui/js/aui-css-deprecations.min.js +1 -1
  11. package/dist/aui/js/aui-datepicker.js +81 -39
  12. package/dist/aui/js/aui-datepicker.min.js +1 -1
  13. package/dist/aui/js/aui-experimental.js +279 -277
  14. package/dist/aui/js/aui-experimental.min.js +1 -1
  15. package/dist/aui/js/aui-header-async.js +6 -6
  16. package/dist/aui/js/aui-header-async.min.js +1 -1
  17. package/dist/aui/js/aui-soy.js +56 -56
  18. package/dist/aui/js/aui-soy.min.js +1 -1
  19. package/dist/aui/js/aui.js +2283 -1540
  20. package/dist/aui/js/aui.min.js +1 -1
  21. package/lib/css/aui-date-picker.css.map +1 -1
  22. package/lib/css/aui-experimental-tooltip.css.map +1 -1
  23. package/lib/css/aui-page-typography-legacy1.css.map +1 -1
  24. package/lib/css/aui-page-typography.css.map +1 -1
  25. package/lib/css/batch/aui-experimental.css.map +1 -1
  26. package/lib/css/batch/aui.css.map +1 -1
  27. package/lib/css/forms.css.map +1 -1
  28. package/lib/css/imports/aui-theme/core/atlaskit-theme/borders.css +2 -0
  29. package/lib/css/imports/aui-theme/core/atlaskit-theme/borders.css.map +1 -0
  30. package/lib/css/imports/aui-theme/core/atlaskit-theme/colors.css +2 -0
  31. package/lib/css/imports/aui-theme/core/atlaskit-theme/colors.css.map +1 -0
  32. package/lib/css/imports/aui-theme/core/atlaskit-theme/fonts.css +2 -0
  33. package/lib/css/imports/aui-theme/core/atlaskit-theme/fonts.css.map +1 -0
  34. package/lib/css/imports/aui-theme/core/colors.css.map +1 -1
  35. package/lib/css/imports/aui-theme/core/text.css.map +1 -1
  36. package/lib/js/aui/backbone.js.map +1 -1
  37. package/lib/js/aui/binder.js.map +1 -1
  38. package/lib/js/aui/binders/placeholder.js.map +1 -1
  39. package/lib/js/aui/button.js.map +1 -1
  40. package/lib/js/aui/checkbox-multiselect.js.map +1 -1
  41. package/lib/js/aui/date-picker.js +72 -26
  42. package/lib/js/aui/date-picker.js.map +1 -1
  43. package/lib/js/aui/dialog.js.map +1 -1
  44. package/lib/js/aui/dialog2.js.map +1 -1
  45. package/lib/js/aui/drop-down.js.map +1 -1
  46. package/lib/js/aui/dropdown2.js +7 -5
  47. package/lib/js/aui/dropdown2.js.map +1 -1
  48. package/lib/js/aui/fancy-file-input.js.map +1 -1
  49. package/lib/js/aui/flag.js.map +1 -1
  50. package/lib/js/aui/focus-manager-global.js.map +1 -1
  51. package/lib/js/aui/focus-manager.js.map +1 -1
  52. package/lib/js/aui/form-notification.js.map +1 -1
  53. package/lib/js/aui/form-validation/basic-validators.js.map +1 -1
  54. package/lib/js/aui/form-validation/validator-register.js.map +1 -1
  55. package/lib/js/aui/form-validation.js.map +1 -1
  56. package/lib/js/aui/header-async.js.map +1 -1
  57. package/lib/js/aui/i18n.js.map +1 -1
  58. package/lib/js/aui/inline-dialog.js.map +1 -1
  59. package/lib/js/aui/inline-dialog2.js.map +1 -1
  60. package/lib/js/aui/internal/alignment.js.map +1 -1
  61. package/lib/js/aui/internal/deprecation.js.map +1 -1
  62. package/lib/js/aui/internal/globalize.js.map +1 -1
  63. package/lib/js/aui/internal/header/create-header.js.map +1 -1
  64. package/lib/js/aui/internal/select/option.js +1 -1
  65. package/lib/js/aui/internal/select/option.js.map +1 -1
  66. package/lib/js/aui/internal/select/suggestion-model.js.map +1 -1
  67. package/lib/js/aui/internal/select/suggestions-view.js.map +1 -1
  68. package/lib/js/aui/internal/skate.js.map +1 -1
  69. package/lib/js/aui/internal/widget.js.map +1 -1
  70. package/lib/js/aui/label.js.map +1 -1
  71. package/lib/js/aui/layer-manager-global.js.map +1 -1
  72. package/lib/js/aui/layer-manager.js.map +1 -1
  73. package/lib/js/aui/layer.js.map +1 -1
  74. package/lib/js/aui/messages.js.map +1 -1
  75. package/lib/js/aui/navigation.js.map +1 -1
  76. package/lib/js/aui/polyfills/placeholder.js.map +1 -1
  77. package/lib/js/aui/populate-parameters.js.map +1 -1
  78. package/lib/js/aui/progress-indicator.js.map +1 -1
  79. package/lib/js/aui/progressive-data-set.js.map +1 -1
  80. package/lib/js/aui/query-input.js.map +1 -1
  81. package/lib/js/aui/restful-table/custom-create-view.js.map +1 -1
  82. package/lib/js/aui/restful-table/custom-edit-view.js.map +1 -1
  83. package/lib/js/aui/restful-table/custom-read-view.js.map +1 -1
  84. package/lib/js/aui/restful-table/edit-row.js.map +1 -1
  85. package/lib/js/aui/restful-table/entry-model.js.map +1 -1
  86. package/lib/js/aui/restful-table/row.js.map +1 -1
  87. package/lib/js/aui/restful-table.js +3 -1
  88. package/lib/js/aui/restful-table.js.map +1 -1
  89. package/lib/js/aui/result-set.js.map +1 -1
  90. package/lib/js/aui/results-list.js.map +1 -1
  91. package/lib/js/aui/select.js.map +1 -1
  92. package/lib/js/aui/select2.js.map +1 -1
  93. package/lib/js/aui/setup.js.map +1 -1
  94. package/lib/js/aui/sidebar.js.map +1 -1
  95. package/lib/js/aui/spin.js.map +1 -1
  96. package/lib/js/aui/spinner.js.map +1 -1
  97. package/lib/js/aui/tables-sortable.js.map +1 -1
  98. package/lib/js/aui/tabs.js +6 -1
  99. package/lib/js/aui/tabs.js.map +1 -1
  100. package/lib/js/aui/template.js.map +1 -1
  101. package/lib/js/aui/toggle.js.map +1 -1
  102. package/lib/js/aui/tooltip.js.map +1 -1
  103. package/lib/js/aui/trigger.js.map +1 -1
  104. package/lib/js/aui/truncating-progressive-data-set.js.map +1 -1
  105. package/lib/js/aui/unbind-text-resize.js.map +1 -1
  106. package/lib/js/aui/underscore.js.map +1 -1
  107. package/lib/js/aui/version.js +1 -1
  108. package/lib/js/aui/version.js.map +1 -1
  109. package/lib/js/aui/when-i-type.js.map +1 -1
  110. package/lib/js/aui-css-deprecations.js.map +1 -1
  111. package/lib/js-vendor/jquery/jquery-ui/jquery.ui.dialog.js +30 -3
  112. package/package.json +57 -44
  113. package/src/js/aui/date-picker.js +64 -25
  114. package/src/js/aui/dropdown2.js +2 -1
  115. package/src/js/aui/internal/select/option.js +1 -1
  116. package/src/js/aui/restful-table.js +3 -1
  117. package/src/js/aui/tabs.js +6 -1
  118. package/src/js-vendor/jquery/jquery-ui/jquery.ui.dialog.js +30 -3
  119. package/src/less/imports/aui-theme/core/atlaskit-theme/borders.less +1 -0
  120. package/src/less/imports/aui-theme/core/atlaskit-theme/colors.less +112 -0
  121. package/src/less/imports/aui-theme/core/atlaskit-theme/fonts.less +3 -0
  122. package/src/less/imports/aui-theme/core/colors.less +1 -1
  123. package/src/less/imports/aui-theme/core/text.less +1 -1
  124. package/yarn.lock +8161 -3856
  125. package/lib/js-vendor/jquery/jquery-ui/jquery-ui.js +0 -11396
  126. package/lib/js-vendor/underscorejs/underscore.js +0 -1287
  127. package/src/js-vendor/jquery/jquery-ui/jquery-ui.js +0 -11396
  128. package/src/js-vendor/underscorejs/underscore.js +0 -1287
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/internal/header/create-header.js"],"names":["$window","window","Header","element","that","$element","index","$secondaryNav","find","first","menuItems","totalWidth","$moreMenu","undefined","rightMostNavItemIndex","$applicationLogo","moreMenuWidth","primaryButtonsWidth","$headerFind","$header","querySelector","selector","prototype","init","setAttribute","parent","each","outerWidth","$this","push","length","on","_resizeHandler","constructResponsiveDropdown","$logoImg","attr","css","destroy","off","calculateAvailableWidth","rightMostBoundary","is","offset","left","primaryNavRight","showResponsiveDropdown","createResponsiveDropdownTrigger","hideResponsiveDropdown","remainingWidth","availableWidth","showAll","newRightMostNavItemIndex","moveToResponsiveDropdown","moveOutOfResponsiveDropdown","moreNavItemEl","document","createElement","dropdownEl","id","dropdownSectionEl","wrap","appendChild","triggerEl","createTriggerAndAssociate","append","before","numItems","$moreDropdown","leftMostIndexToMove","rightMostIndexToMove","i","$navItem","$navItemTrigger","children","$navItemDropdown","getElementById","removeClass","remove","insertBefore","moreDropdownSectionEl","moreDropdownItemEl","addClass","appendTo","textContent","text","detach","firstChild","dispatchEvent","bubbles","detail","originalItem","newItem","dropdown","trigger","innerHTML","getText","createHeader","header","_header"],"mappings":"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","file":"create-header.js","sourcesContent":["'use strict';\n\nimport $ from '../../jquery';\nimport CustomEvent from '../../polyfills/custom-event';\nimport debounce from '../../debounce';\nimport i18n from '../../i18n';\nimport skate from '../skate';\nimport template from 'skatejs-template-html';\n\nconst $window = $(window);\n\nfunction Header (element) {\n var that = this;\n\n this.element = element;\n this.$element = $(element);\n this.index = $('aui-header, .aui-header').index(element);\n this.$secondaryNav = this.$element.find('.aui-header-secondary .aui-nav').first();\n this.menuItems = [];\n this.totalWidth = 0;\n this.$moreMenu = undefined;\n this.rightMostNavItemIndex = undefined;\n this.$applicationLogo = this.$element.find('#logo');\n this.moreMenuWidth = 0;\n this.primaryButtonsWidth = 0;\n\n // to cache the selector and give .find convenience\n this.$headerFind = (function () {\n var $header = $(that.$element[0].querySelector('.aui-header-primary'));\n\n return function (selector) {\n return $header.find(selector);\n };\n }());\n}\n\nHeader.prototype = {\n init: function () {\n var that = this;\n\n this.element.setAttribute('data-aui-responsive', 'true');\n this.$headerFind('.aui-button').parent().each(function () {\n that.primaryButtonsWidth += $(this).outerWidth(true);\n });\n\n // remember the widths of all the menu items\n this.$headerFind('.aui-nav > li > a:not(.aui-button)').each(function () {\n var $this = $(this).parent();\n var outerWidth = $this.outerWidth(true);\n\n that.totalWidth += outerWidth;\n that.menuItems.push({\n $element: $this,\n outerWidth: outerWidth\n });\n });\n\n /** The zero based index of the right-most visible nav menu item. */\n this.rightMostNavItemIndex = this.menuItems.length - 1;\n\n $window.on('resize', this._resizeHandler = debounce(function () {\n that.constructResponsiveDropdown();\n }, 100));\n\n // So that the header logo doesn't mess things up. (size is unknown before the image loads)\n var $logoImg = this.$applicationLogo.find('img');\n\n if ($logoImg.length !== 0) {\n $logoImg.attr('data-aui-responsive-header-index', this.index);\n $logoImg.on('load', function () {\n that.constructResponsiveDropdown();\n });\n }\n\n this.constructResponsiveDropdown();\n\n // show the aui nav (hidden via css on load)\n this.$headerFind('.aui-nav').css('width', 'auto');\n },\n\n destroy: function () {\n $window.off('resize', this._resizeHandler);\n },\n\n // calculate widths based on the current state of the page\n calculateAvailableWidth: function () {\n // if there is no secondary nav, use the right of the screen as the boundary instead\n var rightMostBoundary = this.$secondaryNav.is(':visible') ? this.$secondaryNav.offset().left : this.$element.outerWidth();\n\n // the right most side of the primary nav, this is assumed to exists if this code is running\n var primaryNavRight = this.$applicationLogo.offset().left + this.$applicationLogo.outerWidth(true) + this.primaryButtonsWidth;\n\n return rightMostBoundary - primaryNavRight;\n },\n\n showResponsiveDropdown: function () {\n if (this.$moreMenu === undefined) {\n this.$moreMenu = this.createResponsiveDropdownTrigger();\n }\n this.$moreMenu.css('display', '');\n },\n\n hideResponsiveDropdown: function () {\n if (this.$moreMenu !== undefined) {\n this.$moreMenu.css('display', 'none');\n }\n },\n\n constructResponsiveDropdown: function () {\n if (!this.menuItems.length) {\n return;\n }\n\n var remainingWidth;\n var availableWidth = this.calculateAvailableWidth(this.$element, this.primaryButtonsWidth);\n\n if (availableWidth > this.totalWidth) {\n this.showAll();\n } else {\n this.showResponsiveDropdown();\n remainingWidth = availableWidth - this.moreMenuWidth;\n\n // Figure out how many nav menu items fit into the available space.\n var newRightMostNavItemIndex = -1;\n while (remainingWidth - this.menuItems[newRightMostNavItemIndex + 1].outerWidth >= 0) {\n remainingWidth -= this.menuItems[newRightMostNavItemIndex + 1].outerWidth;\n newRightMostNavItemIndex++;\n }\n\n if (newRightMostNavItemIndex < this.rightMostNavItemIndex) {\n this.moveToResponsiveDropdown(this.rightMostNavItemIndex - newRightMostNavItemIndex);\n } else if (this.rightMostNavItemIndex < newRightMostNavItemIndex) {\n this.moveOutOfResponsiveDropdown(newRightMostNavItemIndex - this.rightMostNavItemIndex);\n }\n }\n },\n\n // creates the trigger and content elements for the show more dropdown\n createResponsiveDropdownTrigger: function () {\n var moreNavItemEl = document.createElement('li');\n var dropdownEl = document.createElement('aui-dropdown-menu');\n dropdownEl.id = `aui-responsive-header-dropdown-${this.index}`;\n skate.init(dropdownEl);\n\n var dropdownSectionEl = document.createElement('aui-section');\n dropdownSectionEl.id = `aui-responsive-header-dropdown-list-${this.index}`;\n skate.init(dropdownSectionEl);\n\n template.wrap(dropdownEl).appendChild(dropdownSectionEl);\n\n var triggerEl = createTriggerAndAssociate(dropdownEl);\n moreNavItemEl.appendChild(triggerEl);\n moreNavItemEl.appendChild(dropdownEl);\n\n // Append the More menu before any primary buttons.\n if (this.primaryButtonsWidth === 0) {\n this.$headerFind('.aui-nav').append(moreNavItemEl);\n } else {\n this.$headerFind('.aui-nav > li > .aui-button:first').parent().before(moreNavItemEl);\n }\n\n this.moreMenuWidth = $(moreNavItemEl).outerWidth(true);\n return $(moreNavItemEl);\n },\n\n // function that handles moving items out of the show more menu into the app header\n moveOutOfResponsiveDropdown: function (numItems) {\n if (numItems <= 0) {\n return;\n }\n\n var $moreDropdown = $(`#aui-responsive-header-dropdown-${this.index}`);\n\n // Move items (working top-to-bottom) from the more menu into the nav bar.\n var leftMostIndexToMove = this.rightMostNavItemIndex + 1;\n var rightMostIndexToMove = this.rightMostNavItemIndex + numItems;\n for (var i = leftMostIndexToMove; i <= rightMostIndexToMove; i++) {\n var $navItem = this.menuItems[i].$element;\n var $navItemTrigger = $navItem.children('a');\n\n if ($navItemTrigger.attr('aria-controls')) {\n var $navItemDropdown = $(document.getElementById($navItemTrigger.attr('aria-controls')));\n $navItemDropdown.removeClass('aui-dropdown2-sub-menu');\n $navItem.append($navItemDropdown);\n }\n\n $moreDropdown.find('aui-item-link:first').remove();\n $navItem.insertBefore(this.$moreMenu);\n }\n\n this.rightMostNavItemIndex += numItems;\n },\n\n // function that handles moving items into the show more menu\n moveToResponsiveDropdown: function (numItems) {\n if (numItems <= 0) {\n return;\n }\n\n var moreDropdownSectionEl = template.wrap(this.$moreMenu[0].querySelector('aui-section'));\n\n // Move items (working right-to-left) from the nav bar to the more menu.\n var rightMostIndexToMove = this.rightMostNavItemIndex;\n var leftMostIndexToMove = this.rightMostNavItemIndex - numItems + 1;\n for (var i = rightMostIndexToMove; i >= leftMostIndexToMove; i--) {\n var $navItem = this.menuItems[i].$element;\n var $navItemTrigger = $navItem.children('a');\n skate.init($navItemTrigger); // ensure all triggers have gone through their lifecycle before we check for submenus\n\n var moreDropdownItemEl = document.createElement('aui-item-link');\n moreDropdownItemEl.setAttribute('href', $navItemTrigger.attr('href'));\n if ($navItemTrigger.attr('aria-controls')) {\n var $navItemDropdown = $(document.getElementById($navItemTrigger.attr('aria-controls')));\n moreDropdownItemEl.setAttribute('for', $navItemTrigger.attr('aria-controls'));\n $navItemDropdown.addClass('aui-dropdown2-sub-menu');\n $navItemDropdown.appendTo('body');\n }\n skate.init(moreDropdownItemEl);\n template.wrap(moreDropdownItemEl).textContent = $navItemTrigger.text();\n\n $navItem.detach();\n moreDropdownSectionEl.insertBefore(moreDropdownItemEl, moreDropdownSectionEl.firstChild);\n this.element.dispatchEvent(new CustomEvent('aui-responsive-menu-item-created', {\n bubbles: true,\n detail: {\n originalItem: $navItem[0],\n newItem: moreDropdownItemEl\n }\n }));\n }\n\n this.rightMostNavItemIndex -= numItems;\n },\n\n // function that handles show everything\n showAll: function () {\n this.moveOutOfResponsiveDropdown((this.menuItems.length - 1) - this.rightMostNavItemIndex);\n this.hideResponsiveDropdown();\n }\n};\n\nfunction createTriggerAndAssociate(dropdown) {\n var trigger = document.createElement('a');\n trigger.setAttribute('class', 'aui-dropdown2-trigger');\n trigger.setAttribute('href', '#');\n trigger.id = dropdown.id + '-trigger';\n trigger.setAttribute('aria-controls', dropdown.id);\n trigger.innerHTML = i18n.getText('aui.words.more');\n\n return trigger;\n}\n\n/**\n * Initialise a Header, or return an existing Header for an element.\n */\nfunction createHeader (element) {\n let header = element._header;\n if (!(header instanceof Header)) {\n header = new Header(element);\n header.init();\n element._header = header;\n }\n return header;\n}\n\nexport default createHeader;\n"]}
1
+ {"version":3,"sources":["js/aui/internal/header/create-header.js"],"names":["$window","window","Header","element","that","$element","index","$secondaryNav","find","first","menuItems","totalWidth","$moreMenu","undefined","rightMostNavItemIndex","$applicationLogo","moreMenuWidth","primaryButtonsWidth","$headerFind","$header","querySelector","selector","prototype","init","setAttribute","parent","each","outerWidth","$this","push","length","on","_resizeHandler","constructResponsiveDropdown","$logoImg","attr","css","destroy","off","calculateAvailableWidth","rightMostBoundary","is","offset","left","primaryNavRight","showResponsiveDropdown","createResponsiveDropdownTrigger","hideResponsiveDropdown","remainingWidth","availableWidth","showAll","newRightMostNavItemIndex","moveToResponsiveDropdown","moveOutOfResponsiveDropdown","moreNavItemEl","document","createElement","dropdownEl","id","skate","dropdownSectionEl","template","wrap","appendChild","triggerEl","createTriggerAndAssociate","append","before","numItems","$moreDropdown","leftMostIndexToMove","rightMostIndexToMove","i","$navItem","$navItemTrigger","children","$navItemDropdown","getElementById","removeClass","remove","insertBefore","moreDropdownSectionEl","moreDropdownItemEl","addClass","appendTo","textContent","text","detach","firstChild","dispatchEvent","CustomEvent","bubbles","detail","originalItem","newItem","dropdown","trigger","innerHTML","i18n","getText","createHeader","header","_header"],"mappings":"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","file":"create-header.js","sourcesContent":["'use strict';\n\nimport $ from '../../jquery';\nimport CustomEvent from '../../polyfills/custom-event';\nimport debounce from '../../debounce';\nimport i18n from '../../i18n';\nimport skate from '../skate';\nimport template from 'skatejs-template-html';\n\nconst $window = $(window);\n\nfunction Header (element) {\n var that = this;\n\n this.element = element;\n this.$element = $(element);\n this.index = $('aui-header, .aui-header').index(element);\n this.$secondaryNav = this.$element.find('.aui-header-secondary .aui-nav').first();\n this.menuItems = [];\n this.totalWidth = 0;\n this.$moreMenu = undefined;\n this.rightMostNavItemIndex = undefined;\n this.$applicationLogo = this.$element.find('#logo');\n this.moreMenuWidth = 0;\n this.primaryButtonsWidth = 0;\n\n // to cache the selector and give .find convenience\n this.$headerFind = (function () {\n var $header = $(that.$element[0].querySelector('.aui-header-primary'));\n\n return function (selector) {\n return $header.find(selector);\n };\n }());\n}\n\nHeader.prototype = {\n init: function () {\n var that = this;\n\n this.element.setAttribute('data-aui-responsive', 'true');\n this.$headerFind('.aui-button').parent().each(function () {\n that.primaryButtonsWidth += $(this).outerWidth(true);\n });\n\n // remember the widths of all the menu items\n this.$headerFind('.aui-nav > li > a:not(.aui-button)').each(function () {\n var $this = $(this).parent();\n var outerWidth = $this.outerWidth(true);\n\n that.totalWidth += outerWidth;\n that.menuItems.push({\n $element: $this,\n outerWidth: outerWidth\n });\n });\n\n /** The zero based index of the right-most visible nav menu item. */\n this.rightMostNavItemIndex = this.menuItems.length - 1;\n\n $window.on('resize', this._resizeHandler = debounce(function () {\n that.constructResponsiveDropdown();\n }, 100));\n\n // So that the header logo doesn't mess things up. (size is unknown before the image loads)\n var $logoImg = this.$applicationLogo.find('img');\n\n if ($logoImg.length !== 0) {\n $logoImg.attr('data-aui-responsive-header-index', this.index);\n $logoImg.on('load', function () {\n that.constructResponsiveDropdown();\n });\n }\n\n this.constructResponsiveDropdown();\n\n // show the aui nav (hidden via css on load)\n this.$headerFind('.aui-nav').css('width', 'auto');\n },\n\n destroy: function () {\n $window.off('resize', this._resizeHandler);\n },\n\n // calculate widths based on the current state of the page\n calculateAvailableWidth: function () {\n // if there is no secondary nav, use the right of the screen as the boundary instead\n var rightMostBoundary = this.$secondaryNav.is(':visible') ? this.$secondaryNav.offset().left : this.$element.outerWidth();\n\n // the right most side of the primary nav, this is assumed to exists if this code is running\n var primaryNavRight = this.$applicationLogo.offset().left + this.$applicationLogo.outerWidth(true) + this.primaryButtonsWidth;\n\n return rightMostBoundary - primaryNavRight;\n },\n\n showResponsiveDropdown: function () {\n if (this.$moreMenu === undefined) {\n this.$moreMenu = this.createResponsiveDropdownTrigger();\n }\n this.$moreMenu.css('display', '');\n },\n\n hideResponsiveDropdown: function () {\n if (this.$moreMenu !== undefined) {\n this.$moreMenu.css('display', 'none');\n }\n },\n\n constructResponsiveDropdown: function () {\n if (!this.menuItems.length) {\n return;\n }\n\n var remainingWidth;\n var availableWidth = this.calculateAvailableWidth(this.$element, this.primaryButtonsWidth);\n\n if (availableWidth > this.totalWidth) {\n this.showAll();\n } else {\n this.showResponsiveDropdown();\n remainingWidth = availableWidth - this.moreMenuWidth;\n\n // Figure out how many nav menu items fit into the available space.\n var newRightMostNavItemIndex = -1;\n while (remainingWidth - this.menuItems[newRightMostNavItemIndex + 1].outerWidth >= 0) {\n remainingWidth -= this.menuItems[newRightMostNavItemIndex + 1].outerWidth;\n newRightMostNavItemIndex++;\n }\n\n if (newRightMostNavItemIndex < this.rightMostNavItemIndex) {\n this.moveToResponsiveDropdown(this.rightMostNavItemIndex - newRightMostNavItemIndex);\n } else if (this.rightMostNavItemIndex < newRightMostNavItemIndex) {\n this.moveOutOfResponsiveDropdown(newRightMostNavItemIndex - this.rightMostNavItemIndex);\n }\n }\n },\n\n // creates the trigger and content elements for the show more dropdown\n createResponsiveDropdownTrigger: function () {\n var moreNavItemEl = document.createElement('li');\n var dropdownEl = document.createElement('aui-dropdown-menu');\n dropdownEl.id = `aui-responsive-header-dropdown-${this.index}`;\n skate.init(dropdownEl);\n\n var dropdownSectionEl = document.createElement('aui-section');\n dropdownSectionEl.id = `aui-responsive-header-dropdown-list-${this.index}`;\n skate.init(dropdownSectionEl);\n\n template.wrap(dropdownEl).appendChild(dropdownSectionEl);\n\n var triggerEl = createTriggerAndAssociate(dropdownEl);\n moreNavItemEl.appendChild(triggerEl);\n moreNavItemEl.appendChild(dropdownEl);\n\n // Append the More menu before any primary buttons.\n if (this.primaryButtonsWidth === 0) {\n this.$headerFind('.aui-nav').append(moreNavItemEl);\n } else {\n this.$headerFind('.aui-nav > li > .aui-button:first').parent().before(moreNavItemEl);\n }\n\n this.moreMenuWidth = $(moreNavItemEl).outerWidth(true);\n return $(moreNavItemEl);\n },\n\n // function that handles moving items out of the show more menu into the app header\n moveOutOfResponsiveDropdown: function (numItems) {\n if (numItems <= 0) {\n return;\n }\n\n var $moreDropdown = $(`#aui-responsive-header-dropdown-${this.index}`);\n\n // Move items (working top-to-bottom) from the more menu into the nav bar.\n var leftMostIndexToMove = this.rightMostNavItemIndex + 1;\n var rightMostIndexToMove = this.rightMostNavItemIndex + numItems;\n for (var i = leftMostIndexToMove; i <= rightMostIndexToMove; i++) {\n var $navItem = this.menuItems[i].$element;\n var $navItemTrigger = $navItem.children('a');\n\n if ($navItemTrigger.attr('aria-controls')) {\n var $navItemDropdown = $(document.getElementById($navItemTrigger.attr('aria-controls')));\n $navItemDropdown.removeClass('aui-dropdown2-sub-menu');\n $navItem.append($navItemDropdown);\n }\n\n $moreDropdown.find('aui-item-link:first').remove();\n $navItem.insertBefore(this.$moreMenu);\n }\n\n this.rightMostNavItemIndex += numItems;\n },\n\n // function that handles moving items into the show more menu\n moveToResponsiveDropdown: function (numItems) {\n if (numItems <= 0) {\n return;\n }\n\n var moreDropdownSectionEl = template.wrap(this.$moreMenu[0].querySelector('aui-section'));\n\n // Move items (working right-to-left) from the nav bar to the more menu.\n var rightMostIndexToMove = this.rightMostNavItemIndex;\n var leftMostIndexToMove = this.rightMostNavItemIndex - numItems + 1;\n for (var i = rightMostIndexToMove; i >= leftMostIndexToMove; i--) {\n var $navItem = this.menuItems[i].$element;\n var $navItemTrigger = $navItem.children('a');\n skate.init($navItemTrigger); // ensure all triggers have gone through their lifecycle before we check for submenus\n\n var moreDropdownItemEl = document.createElement('aui-item-link');\n moreDropdownItemEl.setAttribute('href', $navItemTrigger.attr('href'));\n if ($navItemTrigger.attr('aria-controls')) {\n var $navItemDropdown = $(document.getElementById($navItemTrigger.attr('aria-controls')));\n moreDropdownItemEl.setAttribute('for', $navItemTrigger.attr('aria-controls'));\n $navItemDropdown.addClass('aui-dropdown2-sub-menu');\n $navItemDropdown.appendTo('body');\n }\n skate.init(moreDropdownItemEl);\n template.wrap(moreDropdownItemEl).textContent = $navItemTrigger.text();\n\n $navItem.detach();\n moreDropdownSectionEl.insertBefore(moreDropdownItemEl, moreDropdownSectionEl.firstChild);\n this.element.dispatchEvent(new CustomEvent('aui-responsive-menu-item-created', {\n bubbles: true,\n detail: {\n originalItem: $navItem[0],\n newItem: moreDropdownItemEl\n }\n }));\n }\n\n this.rightMostNavItemIndex -= numItems;\n },\n\n // function that handles show everything\n showAll: function () {\n this.moveOutOfResponsiveDropdown((this.menuItems.length - 1) - this.rightMostNavItemIndex);\n this.hideResponsiveDropdown();\n }\n};\n\nfunction createTriggerAndAssociate(dropdown) {\n var trigger = document.createElement('a');\n trigger.setAttribute('class', 'aui-dropdown2-trigger');\n trigger.setAttribute('href', '#');\n trigger.id = dropdown.id + '-trigger';\n trigger.setAttribute('aria-controls', dropdown.id);\n trigger.innerHTML = i18n.getText('aui.words.more');\n\n return trigger;\n}\n\n/**\n * Initialise a Header, or return an existing Header for an element.\n */\nfunction createHeader (element) {\n let header = element._header;\n if (!(header instanceof Header)) {\n header = new Header(element);\n header.init();\n element._header = header;\n }\n return header;\n}\n\nexport default createHeader;\n"]}
@@ -42,7 +42,7 @@
42
42
  serialize: function serialize() {
43
43
  var json = {};
44
44
  if (this.hasAttribute('img-src')) {
45
- json['img-src'] = this.getAttribute('img-src');
45
+ json['img-src'] = (0, _escapeHtml2.default)(this.getAttribute('img-src'));
46
46
  }
47
47
  json.value = this.value;
48
48
  json.label = (0, _escapeHtml2.default)(this.textContent);
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/internal/select/option.js"],"names":["created","element","Object","defineProperty","get","getAttribute","textContent","set","value","setAttribute","prototype","serialize","json","hasAttribute","label"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;sBAKe,qBAAM,YAAN,EAAoB;AAC/BA,iBAAS,iBAAUC,OAAV,EAAmB;AACxBC,mBAAOC,cAAP,CAAsBF,OAAtB,EAA+B,OAA/B,EAAwC;AACpCG,qBAAK,eAAY;AACb,2BAAOH,QAAQI,YAAR,CAAqB,OAArB,KAAiC,0BAAW,KAAKC,WAAhB,CAAxC;AACH,iBAHmC;AAIpCC,qBAAK,aAAUC,KAAV,EAAiB;AAClBP,4BAAQQ,YAAR,CAAqB,OAArB,EAA8BD,KAA9B;AACH;AANmC,aAAxC;AAQH,SAV8B;AAW/BE,mBAAW;AACPC,uBAAW,qBAAY;AACnB,oBAAIC,OAAO,EAAX;AACA,oBAAI,KAAKC,YAAL,CAAkB,SAAlB,CAAJ,EAAkC;AAC9BD,yBAAK,SAAL,IAAkB,KAAKP,YAAL,CAAkB,SAAlB,CAAlB;AACH;AACDO,qBAAKJ,KAAL,GAAa,KAAKA,KAAlB;AACAI,qBAAKE,KAAL,GAAa,0BAAW,KAAKR,WAAhB,CAAb;;AAEA,uBAAOM,IAAP;AACH;AAVM;AAXoB,KAApB,C","file":"option.js","sourcesContent":["'use strict';\n\nimport skate from '../skate';\nimport escapeHtml from '../../escape-html';\n\nexport default skate('aui-option', {\n created: function (element) {\n Object.defineProperty(element, 'value', {\n get: function () {\n return element.getAttribute('value') || escapeHtml(this.textContent);\n },\n set: function (value) {\n element.setAttribute('value', value);\n }\n });\n },\n prototype: {\n serialize: function () {\n var json = {};\n if (this.hasAttribute('img-src')) {\n json['img-src'] = this.getAttribute('img-src');\n }\n json.value = this.value;\n json.label = escapeHtml(this.textContent);\n\n return json;\n }\n }\n});\n"]}
1
+ {"version":3,"sources":["js/aui/internal/select/option.js"],"names":["created","element","Object","defineProperty","get","getAttribute","textContent","set","value","setAttribute","prototype","serialize","json","hasAttribute","label"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;sBAKe,qBAAM,YAAN,EAAoB;AAC/BA,iBAAS,iBAAUC,OAAV,EAAmB;AACxBC,mBAAOC,cAAP,CAAsBF,OAAtB,EAA+B,OAA/B,EAAwC;AACpCG,qBAAK,eAAY;AACb,2BAAOH,QAAQI,YAAR,CAAqB,OAArB,KAAiC,0BAAW,KAAKC,WAAhB,CAAxC;AACH,iBAHmC;AAIpCC,qBAAK,aAAUC,KAAV,EAAiB;AAClBP,4BAAQQ,YAAR,CAAqB,OAArB,EAA8BD,KAA9B;AACH;AANmC,aAAxC;AAQH,SAV8B;AAW/BE,mBAAW;AACPC,uBAAW,qBAAY;AACnB,oBAAIC,OAAO,EAAX;AACA,oBAAI,KAAKC,YAAL,CAAkB,SAAlB,CAAJ,EAAkC;AAC9BD,yBAAK,SAAL,IAAkB,0BAAW,KAAKP,YAAL,CAAkB,SAAlB,CAAX,CAAlB;AACH;AACDO,qBAAKJ,KAAL,GAAa,KAAKA,KAAlB;AACAI,qBAAKE,KAAL,GAAa,0BAAW,KAAKR,WAAhB,CAAb;;AAEA,uBAAOM,IAAP;AACH;AAVM;AAXoB,KAApB,C","file":"option.js","sourcesContent":["'use strict';\n\nimport skate from '../skate';\nimport escapeHtml from '../../escape-html';\n\nexport default skate('aui-option', {\n created: function (element) {\n Object.defineProperty(element, 'value', {\n get: function () {\n return element.getAttribute('value') || escapeHtml(this.textContent);\n },\n set: function (value) {\n element.setAttribute('value', value);\n }\n });\n },\n prototype: {\n serialize: function () {\n var json = {};\n if (this.hasAttribute('img-src')) {\n json['img-src'] = escapeHtml(this.getAttribute('img-src'));\n }\n json.value = this.value;\n json.label = escapeHtml(this.textContent);\n\n return json;\n }\n }\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/internal/select/suggestion-model.js"],"names":["Model","extend","idAttribute","getLabel","get"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;sBAEe,mBAASA,KAAT,CAAeC,MAAf,CAAsB;AACjCC,qBAAa,OADoB;AAEjCC,kBAAU,oBAAY;AAClB,mBAAO,KAAKC,GAAL,CAAS,OAAT,KAAqB,KAAKA,GAAL,CAAS,OAAT,CAA5B;AACH;AAJgC,KAAtB,C","file":"suggestion-model.js","sourcesContent":["import Backbone from '../../backbone';\n\nexport default Backbone.Model.extend({\n idAttribute: 'label',\n getLabel: function () {\n return this.get('label') || this.get('value');\n }\n});\n"]}
1
+ {"version":3,"sources":["js/aui/internal/select/suggestion-model.js"],"names":["Backbone","Model","extend","idAttribute","getLabel","get"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;sBAEeA,mBAASC,KAAT,CAAeC,MAAf,CAAsB;AACjCC,qBAAa,OADoB;AAEjCC,kBAAU,oBAAY;AAClB,mBAAO,KAAKC,GAAL,CAAS,OAAT,KAAqB,KAAKA,GAAL,CAAS,OAAT,CAA5B;AACH;AAJgC,KAAtB,C","file":"suggestion-model.js","sourcesContent":["import Backbone from '../../backbone';\n\nexport default Backbone.Model.extend({\n idAttribute: 'label',\n getLabel: function () {\n return this.get('label') || this.get('value');\n }\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/internal/select/suggestions-view.js"],"names":["generateListItemID","listId","index","enableAlignment","view","anchor","auiAlignment","el","enable","destroyAlignment","destroy","matchWidth","css","outerWidth","SuggestionsView","element","clearActive","find","removeClass","prototype","render","suggestions","currentLength","currListId","html","length","i","forEach","sugg","label","getLabel","imageSrc","get","image","newValueText","AJS","I18n","getText","querySelector","innerHTML","setActive","active","addClass","getActive","show","hide","isVisible","is"],"mappings":"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","file":"suggestions-view.js","sourcesContent":["'use strict';\n\nimport $ from '../../jquery';\nimport '../../i18n';\nimport Alignment from '../alignment';\nimport layer from '../../layer';\n\nfunction generateListItemID (listId, index) {\n return listId + '-' + index;\n}\n\n/**\n *\n * @param view SuggestionsView\n */\nfunction enableAlignment (view) {\n if (view.anchor && !view.auiAlignment) {\n view.auiAlignment = new Alignment(view.el, view.anchor);\n }\n\n if (view.auiAlignment) {\n view.auiAlignment.enable();\n }\n}\n\nfunction destroyAlignment (view) {\n if (view.auiAlignment) {\n view.auiAlignment.destroy();\n }\n}\n\nfunction matchWidth (view) {\n $(view.el).css('min-width', $(view.anchor).outerWidth());\n}\n\nfunction SuggestionsView (element, anchor) {\n this.el = element;\n this.anchor = anchor;\n}\n\nfunction clearActive (element) {\n $(element).find('.aui-select-active').removeClass('aui-select-active');\n}\n\nSuggestionsView.prototype = {\n render: function (suggestions, currentLength, listId) {\n this.currListId = listId;\n var html = '';\n\n // Do nothing if we have no new suggestions, otherwise append anything else we find.\n if (suggestions.length) {\n var i = currentLength;\n suggestions.forEach(function (sugg) {\n var label = sugg.getLabel();\n var imageSrc = sugg.get('img-src');\n var image = imageSrc ? `<img src=\"${imageSrc}\"/>` : '';\n var newValueText = sugg.get('new-value') ? (` (<em>${AJS.I18n.getText('aui.select.new.value')}</em>)`) : '';\n html += `<li role=\"option\" class=\"aui-select-suggestion\" id=\"${generateListItemID(listId, i)}\">${image}${label}${newValueText}</li>`;\n i++;\n });\n\n // If the old suggestions were empty, a <li> of 'No suggestions' will be appended, we need to remove it\n if (currentLength) {\n this.el.querySelector('ul').innerHTML += html;\n } else {\n this.el.querySelector('ul').innerHTML = html;\n }\n } else if (!currentLength) {\n this.el.querySelector('ul').innerHTML = `<li role=\"option\" class=\"aui-select-no-suggestions\">${AJS.I18n.getText('aui.select.no.suggestions')}</li>`;\n }\n\n return this;\n },\n setActive: function (active) {\n clearActive(this.el);\n $(this.el).find('#' + generateListItemID(this.currListId, active)).addClass('aui-select-active');\n },\n getActive: function () {\n return this.el.querySelector('.aui-select-active');\n },\n show: function () {\n matchWidth(this);\n layer(this.el).show();\n enableAlignment(this);\n },\n hide: function () {\n clearActive(this.el);\n layer(this.el).hide();\n destroyAlignment(this);\n },\n isVisible: function () {\n return $(this.el).is(':visible');\n }\n};\n\nexport default SuggestionsView;\n"]}
1
+ {"version":3,"sources":["js/aui/internal/select/suggestions-view.js"],"names":["generateListItemID","listId","index","enableAlignment","view","anchor","auiAlignment","Alignment","el","enable","destroyAlignment","destroy","matchWidth","css","outerWidth","SuggestionsView","element","clearActive","find","removeClass","prototype","render","suggestions","currentLength","currListId","html","length","i","forEach","sugg","label","getLabel","imageSrc","get","image","newValueText","AJS","I18n","getText","querySelector","innerHTML","setActive","active","addClass","getActive","show","hide","isVisible","is"],"mappings":"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","file":"suggestions-view.js","sourcesContent":["'use strict';\n\nimport $ from '../../jquery';\nimport '../../i18n';\nimport Alignment from '../alignment';\nimport layer from '../../layer';\n\nfunction generateListItemID (listId, index) {\n return listId + '-' + index;\n}\n\n/**\n *\n * @param view SuggestionsView\n */\nfunction enableAlignment (view) {\n if (view.anchor && !view.auiAlignment) {\n view.auiAlignment = new Alignment(view.el, view.anchor);\n }\n\n if (view.auiAlignment) {\n view.auiAlignment.enable();\n }\n}\n\nfunction destroyAlignment (view) {\n if (view.auiAlignment) {\n view.auiAlignment.destroy();\n }\n}\n\nfunction matchWidth (view) {\n $(view.el).css('min-width', $(view.anchor).outerWidth());\n}\n\nfunction SuggestionsView (element, anchor) {\n this.el = element;\n this.anchor = anchor;\n}\n\nfunction clearActive (element) {\n $(element).find('.aui-select-active').removeClass('aui-select-active');\n}\n\nSuggestionsView.prototype = {\n render: function (suggestions, currentLength, listId) {\n this.currListId = listId;\n var html = '';\n\n // Do nothing if we have no new suggestions, otherwise append anything else we find.\n if (suggestions.length) {\n var i = currentLength;\n suggestions.forEach(function (sugg) {\n var label = sugg.getLabel();\n var imageSrc = sugg.get('img-src');\n var image = imageSrc ? `<img src=\"${imageSrc}\"/>` : '';\n var newValueText = sugg.get('new-value') ? (` (<em>${AJS.I18n.getText('aui.select.new.value')}</em>)`) : '';\n html += `<li role=\"option\" class=\"aui-select-suggestion\" id=\"${generateListItemID(listId, i)}\">${image}${label}${newValueText}</li>`;\n i++;\n });\n\n // If the old suggestions were empty, a <li> of 'No suggestions' will be appended, we need to remove it\n if (currentLength) {\n this.el.querySelector('ul').innerHTML += html;\n } else {\n this.el.querySelector('ul').innerHTML = html;\n }\n } else if (!currentLength) {\n this.el.querySelector('ul').innerHTML = `<li role=\"option\" class=\"aui-select-no-suggestions\">${AJS.I18n.getText('aui.select.no.suggestions')}</li>`;\n }\n\n return this;\n },\n setActive: function (active) {\n clearActive(this.el);\n $(this.el).find('#' + generateListItemID(this.currListId, active)).addClass('aui-select-active');\n },\n getActive: function () {\n return this.el.querySelector('.aui-select-active');\n },\n show: function () {\n matchWidth(this);\n layer(this.el).show();\n enableAlignment(this);\n },\n hide: function () {\n clearActive(this.el);\n layer(this.el).hide();\n destroyAlignment(this);\n },\n isVisible: function () {\n return $(this.el).is(':visible');\n }\n};\n\nexport default SuggestionsView;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/internal/skate.js"],"names":["auiSkate","noConflict"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAAMA,WAAW,kBAAMC,UAAN,EAAjB;;oBAEeD,Q","file":"skate.js","sourcesContent":["import skate from 'skatejs';\n\nconst auiSkate = skate.noConflict();\n\nexport default auiSkate;\n"]}
1
+ {"version":3,"sources":["js/aui/internal/skate.js"],"names":["auiSkate","skate","noConflict"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAAMA,WAAWC,kBAAMC,UAAN,EAAjB;;oBAEeF,Q","file":"skate.js","sourcesContent":["import skate from 'skatejs';\n\nconst auiSkate = skate.noConflict();\n\nexport default auiSkate;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/internal/widget.js"],"names":["name","Ctor","dataAttr","selectorOrOptions","maybeOptions","selector","options","isPlainObject","$el","widget","data"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;sBAYe,UAAUA,IAAV,EAAgBC,IAAhB,EAAsB;AACjC,YAAIC,WAAW,iBAAiBF,IAAhC;AACA,eAAO,UAAUG,iBAAV,EAA6BC,YAA7B,EAA2C;AAC9C,gBAAIC,QAAJ;AACA,gBAAIC,OAAJ;AACA,gBAAI,iBAAEC,aAAF,CAAgBJ,iBAAhB,CAAJ,EAAwC;AACpCG,0BAAUH,iBAAV;AACH,aAFD,MAEO;AACHE,2BAAWF,iBAAX;AACAG,0BAAUF,YAAV;AACH;;AAED,gBAAII,MAAMH,YAAY,sBAAEA,QAAF,CAAtB;;AAEA,gBAAII,MAAJ;AACA,gBAAI,CAACD,GAAD,IAAQ,CAACA,IAAIE,IAAJ,CAASR,QAAT,CAAb,EAAiC;AAC7BO,yBAAS,IAAIR,IAAJ,CAASO,GAAT,EAAcF,WAAW,EAAzB,CAAT;AACAE,sBAAMC,OAAOD,GAAb;AACAA,oBAAIE,IAAJ,CAASR,QAAT,EAAmBO,MAAnB;AACH,aAJD,MAIO;AACHA,yBAASD,IAAIE,IAAJ,CAASR,QAAT,CAAT;AACA;AACH;;AAED,mBAAOO,MAAP;AACH,SAvBD;AAwBH,K","file":"widget.js","sourcesContent":["'use strict';\n\nimport $ from '../jquery';\n\n/**\n * @param {string} name The name of the widget to use in any messaging.\n * @param {function(new:{ $el: jQuery }, ?jQuery, ?Object)} Ctor\n * A constructor which will only ever be called with \"new\". It must take a JQuery object as the first\n * parameter, or generate one if not provided. The second parameter will be a configuration object.\n * The returned object must have an $el property and a setOptions function.\n * @constructor\n */\nexport default function (name, Ctor) {\n var dataAttr = '_aui-widget-' + name;\n return function (selectorOrOptions, maybeOptions) {\n var selector;\n var options;\n if ($.isPlainObject(selectorOrOptions)) {\n options = selectorOrOptions;\n } else {\n selector = selectorOrOptions;\n options = maybeOptions;\n }\n\n var $el = selector && $(selector);\n\n var widget;\n if (!$el || !$el.data(dataAttr)) {\n widget = new Ctor($el, options || {});\n $el = widget.$el;\n $el.data(dataAttr, widget);\n } else {\n widget = $el.data(dataAttr);\n // options are discarded if $el has already been constructed\n }\n\n return widget;\n };\n}\n"]}
1
+ {"version":3,"sources":["js/aui/internal/widget.js"],"names":["name","Ctor","dataAttr","selectorOrOptions","maybeOptions","selector","options","$","isPlainObject","$el","widget","data"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;sBAYe,UAAUA,IAAV,EAAgBC,IAAhB,EAAsB;AACjC,YAAIC,WAAW,iBAAiBF,IAAhC;AACA,eAAO,UAAUG,iBAAV,EAA6BC,YAA7B,EAA2C;AAC9C,gBAAIC,QAAJ;AACA,gBAAIC,OAAJ;AACA,gBAAIC,iBAAEC,aAAF,CAAgBL,iBAAhB,CAAJ,EAAwC;AACpCG,0BAAUH,iBAAV;AACH,aAFD,MAEO;AACHE,2BAAWF,iBAAX;AACAG,0BAAUF,YAAV;AACH;;AAED,gBAAIK,MAAMJ,YAAY,sBAAEA,QAAF,CAAtB;;AAEA,gBAAIK,MAAJ;AACA,gBAAI,CAACD,GAAD,IAAQ,CAACA,IAAIE,IAAJ,CAAST,QAAT,CAAb,EAAiC;AAC7BQ,yBAAS,IAAIT,IAAJ,CAASQ,GAAT,EAAcH,WAAW,EAAzB,CAAT;AACAG,sBAAMC,OAAOD,GAAb;AACAA,oBAAIE,IAAJ,CAAST,QAAT,EAAmBQ,MAAnB;AACH,aAJD,MAIO;AACHA,yBAASD,IAAIE,IAAJ,CAAST,QAAT,CAAT;AACA;AACH;;AAED,mBAAOQ,MAAP;AACH,SAvBD;AAwBH,K","file":"widget.js","sourcesContent":["'use strict';\n\nimport $ from '../jquery';\n\n/**\n * @param {string} name The name of the widget to use in any messaging.\n * @param {function(new:{ $el: jQuery }, ?jQuery, ?Object)} Ctor\n * A constructor which will only ever be called with \"new\". It must take a JQuery object as the first\n * parameter, or generate one if not provided. The second parameter will be a configuration object.\n * The returned object must have an $el property and a setOptions function.\n * @constructor\n */\nexport default function (name, Ctor) {\n var dataAttr = '_aui-widget-' + name;\n return function (selectorOrOptions, maybeOptions) {\n var selector;\n var options;\n if ($.isPlainObject(selectorOrOptions)) {\n options = selectorOrOptions;\n } else {\n selector = selectorOrOptions;\n options = maybeOptions;\n }\n\n var $el = selector && $(selector);\n\n var widget;\n if (!$el || !$el.data(dataAttr)) {\n widget = new Ctor($el, options || {});\n $el = widget.$el;\n $el.data(dataAttr, widget);\n } else {\n widget = $el.data(dataAttr);\n // options are discarded if $el has already been constructed\n }\n\n return widget;\n };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/label.js"],"names":["getLabel","element","querySelector","updateLabelFor","change","hasAttribute","setAttribute","newValue","removeAttribute","updateLabelForm","Label","template","created","_label","attached","attributeExists","attributes","form","prototype","disabled","value","events","click","e","preventDefault"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;AAOA,aAASA,QAAT,CAAkBC,OAAlB,EAA2B;AACvB,eAAOA,QAAQC,aAAR,CAAsB,OAAtB,CAAP;AACH;;AAED,aAASC,cAAT,CAAwBF,OAAxB,EAAiCG,MAAjC,EAAyC;AACrC,YAAIH,QAAQI,YAAR,CAAqB,KAArB,CAAJ,EAAiC;AAC7BL,qBAASC,OAAT,EAAkBK,YAAlB,CAA+B,KAA/B,OAAyCF,OAAOG,QAAhD;AACH,SAFD,MAEO;AACHP,qBAASC,OAAT,EAAkBO,eAAlB,CAAkC,KAAlC;AACH;AACJ;;AAED,aAASC,eAAT,CAAyBR,OAAzB,EAAkCG,MAAlC,EAA0C;AACtC,YAAIH,QAAQI,YAAR,CAAqB,MAArB,CAAJ,EAAkC;AAC9BL,qBAASC,OAAT,EAAkBK,YAAlB,CAA+B,MAA/B,EAAuCF,OAAOG,QAA9C;AACH,SAFD,MAEO;AACHP,qBAASC,OAAT,EAAkBO,eAAlB,CAAkC,MAAlC;AACH;AACJ;;AAED,QAAIE,QAAQ,qBAAM,WAAN,EAAmB;AAC3BC,kBAAU,mCAAkB,oCAAlB,CADiB;AAE3BC,iBAAS,iBAAUX,OAAV,EAAmB;AACxBA,oBAAQY,MAAR,GAAiBb,SAASC,OAAT,CAAjB,CADwB,CACe;AAC1C,SAJ0B;AAK3Ba,kBAAU,kBAAUb,OAAV,EAAmB;AACzB,oCAAQA,OAAR,EAAiBc,eAAjB,CAAiC,KAAjC;AACH,SAP0B;AAQ3BC,oBAAY;AACR,mBAAOb,cADC;AAERc,kBAAMR;AAFE,SARe;AAY3BS,mBAAW;AACP,gBAAIC,QAAJ,GAAe;AACX,uBAAO,KAAKd,YAAL,CAAkB,UAAlB,CAAP;AACH,aAHM;AAIP,gBAAIc,QAAJ,CAAaC,KAAb,EAAoB;AAChB,oBAAIA,KAAJ,EAAW;AACP,yBAAKd,YAAL,CAAkB,UAAlB,EAA8B,EAA9B;AACH,iBAFD,MAEO;AACH,yBAAKE,eAAL,CAAqB,UAArB;AACH;AACJ;AAVM,SAZgB;AAwB3Ba,gBAAQ;AACJC,mBAAO,eAAUrB,OAAV,EAAmBsB,CAAnB,EAAsB;AACzB,oBAAItB,QAAQkB,QAAZ,EAAsB;AAClBI,sBAAEC,cAAF;AACH;AACJ;AALG;AAxBmB,KAAnB,CAAZ;;sBAiCed,K","file":"label.js","sourcesContent":["'use strict';\n\nimport skate from './internal/skate';\nimport skateTemplateHtml from 'skatejs-template-html';\nimport enforce from './internal/enforcer';\nimport { INPUT_SUFFIX } from './internal/constants';\n\nfunction getLabel(element) {\n return element.querySelector('label');\n}\n\nfunction updateLabelFor(element, change) {\n if (element.hasAttribute('for')) {\n getLabel(element).setAttribute('for', `${change.newValue}${INPUT_SUFFIX}`);\n } else {\n getLabel(element).removeAttribute('for');\n }\n}\n\nfunction updateLabelForm(element, change) {\n if (element.hasAttribute('form')) {\n getLabel(element).setAttribute('form', change.newValue);\n } else {\n getLabel(element).removeAttribute('form');\n }\n}\n\nvar Label = skate('aui-label', {\n template: skateTemplateHtml('<label><content></content></label>'),\n created: function (element) {\n element._label = getLabel(element); // required for quick access from test\n },\n attached: function (element) {\n enforce(element).attributeExists('for');\n },\n attributes: {\n 'for': updateLabelFor,\n form: updateLabelForm\n },\n prototype: {\n get disabled() {\n return this.hasAttribute('disabled');\n },\n set disabled(value) {\n if (value) {\n this.setAttribute('disabled', '');\n } else {\n this.removeAttribute('disabled');\n }\n }\n },\n events: {\n click: function (element, e) {\n if (element.disabled) {\n e.preventDefault();\n }\n }\n }\n});\n\nexport default Label;\n"]}
1
+ {"version":3,"sources":["js/aui/label.js"],"names":["getLabel","element","querySelector","updateLabelFor","change","hasAttribute","setAttribute","newValue","INPUT_SUFFIX","removeAttribute","updateLabelForm","Label","template","created","_label","attached","attributeExists","attributes","form","prototype","disabled","value","events","click","e","preventDefault"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;AAOA,aAASA,QAAT,CAAkBC,OAAlB,EAA2B;AACvB,eAAOA,QAAQC,aAAR,CAAsB,OAAtB,CAAP;AACH;;AAED,aAASC,cAAT,CAAwBF,OAAxB,EAAiCG,MAAjC,EAAyC;AACrC,YAAIH,QAAQI,YAAR,CAAqB,KAArB,CAAJ,EAAiC;AAC7BL,qBAASC,OAAT,EAAkBK,YAAlB,CAA+B,KAA/B,OAAyCF,OAAOG,QAAhD,GAA2DC,uBAA3D;AACH,SAFD,MAEO;AACHR,qBAASC,OAAT,EAAkBQ,eAAlB,CAAkC,KAAlC;AACH;AACJ;;AAED,aAASC,eAAT,CAAyBT,OAAzB,EAAkCG,MAAlC,EAA0C;AACtC,YAAIH,QAAQI,YAAR,CAAqB,MAArB,CAAJ,EAAkC;AAC9BL,qBAASC,OAAT,EAAkBK,YAAlB,CAA+B,MAA/B,EAAuCF,OAAOG,QAA9C;AACH,SAFD,MAEO;AACHP,qBAASC,OAAT,EAAkBQ,eAAlB,CAAkC,MAAlC;AACH;AACJ;;AAED,QAAIE,QAAQ,qBAAM,WAAN,EAAmB;AAC3BC,kBAAU,mCAAkB,oCAAlB,CADiB;AAE3BC,iBAAS,iBAAUZ,OAAV,EAAmB;AACxBA,oBAAQa,MAAR,GAAiBd,SAASC,OAAT,CAAjB,CADwB,CACe;AAC1C,SAJ0B;AAK3Bc,kBAAU,kBAAUd,OAAV,EAAmB;AACzB,oCAAQA,OAAR,EAAiBe,eAAjB,CAAiC,KAAjC;AACH,SAP0B;AAQ3BC,oBAAY;AACR,mBAAOd,cADC;AAERe,kBAAMR;AAFE,SARe;AAY3BS,mBAAW;AACP,gBAAIC,QAAJ,GAAe;AACX,uBAAO,KAAKf,YAAL,CAAkB,UAAlB,CAAP;AACH,aAHM;AAIP,gBAAIe,QAAJ,CAAaC,KAAb,EAAoB;AAChB,oBAAIA,KAAJ,EAAW;AACP,yBAAKf,YAAL,CAAkB,UAAlB,EAA8B,EAA9B;AACH,iBAFD,MAEO;AACH,yBAAKG,eAAL,CAAqB,UAArB;AACH;AACJ;AAVM,SAZgB;AAwB3Ba,gBAAQ;AACJC,mBAAO,eAAUtB,OAAV,EAAmBuB,CAAnB,EAAsB;AACzB,oBAAIvB,QAAQmB,QAAZ,EAAsB;AAClBI,sBAAEC,cAAF;AACH;AACJ;AALG;AAxBmB,KAAnB,CAAZ;;sBAiCed,K","file":"label.js","sourcesContent":["'use strict';\n\nimport skate from './internal/skate';\nimport skateTemplateHtml from 'skatejs-template-html';\nimport enforce from './internal/enforcer';\nimport { INPUT_SUFFIX } from './internal/constants';\n\nfunction getLabel(element) {\n return element.querySelector('label');\n}\n\nfunction updateLabelFor(element, change) {\n if (element.hasAttribute('for')) {\n getLabel(element).setAttribute('for', `${change.newValue}${INPUT_SUFFIX}`);\n } else {\n getLabel(element).removeAttribute('for');\n }\n}\n\nfunction updateLabelForm(element, change) {\n if (element.hasAttribute('form')) {\n getLabel(element).setAttribute('form', change.newValue);\n } else {\n getLabel(element).removeAttribute('form');\n }\n}\n\nvar Label = skate('aui-label', {\n template: skateTemplateHtml('<label><content></content></label>'),\n created: function (element) {\n element._label = getLabel(element); // required for quick access from test\n },\n attached: function (element) {\n enforce(element).attributeExists('for');\n },\n attributes: {\n 'for': updateLabelFor,\n form: updateLabelForm\n },\n prototype: {\n get disabled() {\n return this.hasAttribute('disabled');\n },\n set disabled(value) {\n if (value) {\n this.setAttribute('disabled', '');\n } else {\n this.removeAttribute('disabled');\n }\n }\n },\n events: {\n click: function (element, e) {\n if (element.disabled) {\n e.preventDefault();\n }\n }\n }\n});\n\nexport default Label;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/layer-manager-global.js"],"names":["global"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;oBACe,uBAAaA,M","file":"layer-manager-global.js","sourcesContent":["import LayerManager from './layer-manager';\nexport default LayerManager.global;\n"]}
1
+ {"version":3,"sources":["js/aui/layer-manager-global.js"],"names":["LayerManager","global"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;oBACeA,uBAAaC,M","file":"layer-manager-global.js","sourcesContent":["import LayerManager from './layer-manager';\nexport default LayerManager.global;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/layer-manager.js"],"names":["Manager"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;AAKA,2BAAU,cAAV,EAA0B,gBAAMA,OAAhC;;oBAEe,gBAAMA,O","file":"layer-manager.js","sourcesContent":["'use strict';\n\nimport globalize from './internal/globalize';\nimport layer from './layer';\n\nglobalize('LayerManager', layer.Manager);\n\nexport default layer.Manager;\n"]}
1
+ {"version":3,"sources":["js/aui/layer-manager.js"],"names":["layer","Manager"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;AAKA,2BAAU,cAAV,EAA0BA,gBAAMC,OAAhC;;oBAEeD,gBAAMC,O","file":"layer-manager.js","sourcesContent":["'use strict';\n\nimport globalize from './internal/globalize';\nimport layer from './layer';\n\nglobalize('LayerManager', layer.Manager);\n\nexport default layer.Manager;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/layer.js"],"names":["EVENT_PREFIX","GLOBAL_EVENT_PREFIX","LAYER_EVENT_PREFIX","AUI_EVENT_PREFIX","$doc","document","isTransitioning","el","prop","transition","window","getComputedStyle","transitionProperty","indexOf","onTransitionEnd","func","once","handler","e","propertyName","call","removeEventListener","addEventListener","oneTransitionEnd","ariaHide","$el","attr","ariaShow","triggerEvent","deprecatedName","newNativeName","e1","Event","e2","nativeEvent","bubbles","cancelable","nativeEvent2","trigger","dispatchEvent","isDefaultPrevented","defaultPrevented","Layer","selector","addClass","prototype","below","LayerManager","global","item","above","changeSize","width","height","css","on","event","fn","off","show","isVisible","push","hide","thisLayer","get","style","display","popUntil","remove","isBlanketed","isPersistent","modal","hasAttribute","_hideLayer","triggerBeforeEvents","exit","data","_showLayer","zIndex","parent","is","appendTo","body","enter","createLayer","eventName","getTrigger","$layer","hasTrigger","length","topIndexWhere","layerArr","i","layerIndex","topBlanketedIndex","nextZIndex","_nextZIndex","$topEl","parseInt","isNaN","Math","max","updateBlanket","stack","oldBlanketIndex","newTopBlanketedIndex","popLayers","stopIndex","forceClosePersistent","a","layer","splice","getParentLayer","$childLayer","$layerTrigger","closest","_stack","element","Error","popLayersBeside","blanketedIndex","$parentLayer","parentIndex","index","hideAll","reverse","forEach","getNextLowerNonPersistentOrBlanketedLayer","$nextEl","getNextHigherNonPeristentAndNonBlanketedLayer","oldTopBlanketedIndex","getTopLayer","$topLayer","popTopIfNonPersistent","popUntilTopBlanketed","$topBlanketedLayer","$next","popUntilTopPersistent","$toPop","toPop","initCloseLayerOnEscPress","keyCode","ESCAPE","preventDefault","initCloseLayerOnBlanketClick","hasLayer","$trigger","getElementById","initCloseLayerOnOuterClick","$target","target","Manager"],"mappings":"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","file":"layer.js","sourcesContent":["'use strict';\n\nimport $ from './jquery';\nimport { dim, undim } from './blanket';\nimport FocusManager from './focus-manager';\nimport globalize from './internal/globalize';\nimport keyCode from './key-code';\nimport widget from './internal/widget';\nimport CustomEvent from './polyfills/custom-event';\n\nconst EVENT_PREFIX = '_aui-internal-layer-';\nconst GLOBAL_EVENT_PREFIX = '_aui-internal-layer-global-';\nconst LAYER_EVENT_PREFIX = 'aui-layer-';\nconst AUI_EVENT_PREFIX = 'aui-';\nvar $doc = $(document);\n\n// AUI-3708 - Abstracted to reflect code implemented upstream.\nfunction isTransitioning (el, prop) {\n var transition = window.getComputedStyle(el).transitionProperty;\n return transition ? transition.indexOf(prop) > -1 : false;\n}\n\nfunction onTransitionEnd (el, prop, func, once) {\n function handler (e) {\n if (prop !== e.propertyName) {\n return;\n }\n\n func.call(el);\n\n if (once) {\n el.removeEventListener('transitionend', handler);\n }\n }\n\n if (isTransitioning(el, prop)) {\n el.addEventListener('transitionend', handler);\n } else {\n func.call(el);\n }\n}\n\nfunction oneTransitionEnd (el, prop, func) {\n onTransitionEnd(el, prop, func, true);\n}\n// end AUI-3708\n\nfunction ariaHide ($el) {\n $el.attr('aria-hidden', 'true');\n}\n\nfunction ariaShow ($el) {\n $el.attr('aria-hidden', 'false');\n}\n\n/**\n* @return {bool} Returns false if at least one of the event handlers called .preventDefault(). Returns true otherwise.\n*/\nfunction triggerEvent ($el, deprecatedName, newNativeName) {\n var e1 = $.Event(EVENT_PREFIX + deprecatedName);\n var e2 = $.Event(GLOBAL_EVENT_PREFIX + deprecatedName);\n // TODO: Remove this 'aui-layer-' prefixed event once it is no longer used by inline dialog and dialog2.\n var nativeEvent = new CustomEvent(LAYER_EVENT_PREFIX + newNativeName, {\n bubbles: true,\n cancelable: true\n });\n var nativeEvent2 = new CustomEvent(AUI_EVENT_PREFIX + newNativeName, {\n bubbles: true,\n cancelable: true\n });\n\n $el.trigger(e1);\n $el.trigger(e2, [$el]);\n $el[0].dispatchEvent(nativeEvent);\n $el[0].dispatchEvent(nativeEvent2);\n\n return !e1.isDefaultPrevented() &&\n !e2.isDefaultPrevented() &&\n !nativeEvent.defaultPrevented &&\n !nativeEvent2.defaultPrevented;\n}\n\nfunction Layer (selector) {\n this.$el = $(selector || '<div class=\"aui-layer\" aria-hidden=\"true\"></div>');\n this.$el.addClass('aui-layer');\n}\n\nLayer.prototype = {\n /**\n * Returns the layer below the current layer if it exists.\n *\n * @returns {jQuery | undefined}\n */\n below: function () {\n return LayerManager.global.item(LayerManager.global.indexOf(this.$el) - 1);\n },\n\n /**\n * Returns the layer above the current layer if it exists.\n *\n * @returns {jQuery | undefined}\n */\n above: function () {\n return LayerManager.global.item(LayerManager.global.indexOf(this.$el) + 1);\n },\n\n /**\n * Sets the width and height of the layer.\n *\n * @param {Integer} width The width to set.\n * @param {Integer} height The height to set.\n *\n * @returns {Layer}\n */\n changeSize: function (width, height) {\n this.$el.css('width', width);\n this.$el.css('height', height === 'content' ? '' : height);\n return this;\n },\n\n /**\n * Binds a layer event.\n *\n * @param {String} event The event name to listen to.\n * @param {Function} fn The event handler.\n *\n * @returns {Layer}\n */\n on: function (event, fn) {\n this.$el.on(EVENT_PREFIX + event, fn);\n return this;\n },\n\n\n /**\n * Unbinds a layer event.\n *\n * @param {String} event The event name to unbind=.\n * @param {Function} fn Optional. The event handler.\n *\n * @returns {Layer}\n */\n off: function (event, fn) {\n this.$el.off(EVENT_PREFIX + event, fn);\n return this;\n },\n\n /**\n * Shows the layer.\n *\n * @returns {Layer}\n */\n show: function () {\n if (this.isVisible()) {\n ariaShow(this.$el);\n return this;\n }\n\n if (!triggerEvent(this.$el, 'beforeShow', 'show')) {\n return this;\n }\n\n // AUI-3708\n // Ensures that the display property is removed if it's been added\n // during hiding.\n if (this.$el.css('display') === 'none') {\n this.$el.css('display', '');\n }\n\n LayerManager.global.push(this.$el);\n\n return this;\n },\n\n /**\n * Hides the layer.\n *\n * @returns {Layer}\n */\n hide: function () {\n if (!this.isVisible()) {\n ariaHide(this.$el);\n return this;\n }\n\n if (!triggerEvent(this.$el, 'beforeHide', 'hide')) {\n return this;\n }\n\n // AUI-3708\n const thisLayer = this;\n oneTransitionEnd(this.$el.get(0), 'opacity', function () {\n if (!thisLayer.isVisible()) {\n this.style.display = 'none';\n }\n });\n\n LayerManager.global.popUntil(this.$el);\n\n return this;\n },\n\n /**\n * Checks to see if the layer is visible.\n *\n * @returns {Boolean}\n */\n isVisible: function () {\n return this.$el.attr('aria-hidden') === 'false';\n },\n\n /**\n * Removes the layer and cleans up internal state.\n *\n * @returns {undefined}\n */\n remove: function () {\n this.hide();\n this.$el.remove();\n this.$el = null;\n },\n\n /**\n * Returns whether or not the layer is blanketed.\n *\n * @returns {Boolean}\n */\n isBlanketed: function () {\n return this.$el.attr('data-aui-blanketed') === 'true';\n },\n\n /**\n * Returns whether or not the layer is persistent.\n *\n * @returns {Boolean}\n */\n isPersistent: function () {\n var modal = this.$el.attr('modal') || this.$el.attr('data-aui-modal');\n var isPersistent = this.$el[0].hasAttribute('persistent');\n\n return modal === 'true' || isPersistent;\n },\n\n _hideLayer: function (triggerBeforeEvents) {\n if (this.isPersistent() || this.isBlanketed()) {\n FocusManager.global.exit(this.$el);\n }\n\n if (triggerBeforeEvents) {\n triggerEvent(this.$el, 'beforeHide', 'hide');\n }\n\n this.$el.attr('aria-hidden', 'true');\n this.$el.css('z-index', this.$el.data('_aui-layer-cached-z-index') || '');\n this.$el.data('_aui-layer-cached-z-index', '');\n this.$el.trigger(EVENT_PREFIX + 'hide');\n this.$el.trigger(GLOBAL_EVENT_PREFIX + 'hide', [this.$el]);\n },\n\n _showLayer: function (zIndex) {\n if (!this.$el.parent().is('body')) {\n this.$el.appendTo(document.body);\n }\n\n this.$el.data('_aui-layer-cached-z-index', this.$el.css('z-index'));\n this.$el.css('z-index', zIndex);\n this.$el.attr('aria-hidden', 'false');\n\n if (this.isPersistent() || this.isBlanketed()) {\n FocusManager.global.enter(this.$el);\n }\n\n this.$el.trigger(EVENT_PREFIX + 'show');\n this.$el.trigger(GLOBAL_EVENT_PREFIX + 'show', [this.$el]);\n }\n};\n\nvar createLayer = widget('layer', Layer);\n\ncreateLayer.on = function (eventName, selector, fn) {\n $doc.on(GLOBAL_EVENT_PREFIX + eventName, selector, fn);\n return this;\n};\n\ncreateLayer.off = function (eventName, selector, fn) {\n $doc.off(GLOBAL_EVENT_PREFIX + eventName, selector, fn);\n return this;\n};\n\n\n\n// Layer Manager\n// -------------\n\n/**\n * Manages layers.\n *\n * There is a single global layer manager.\n * Additional instances can be created however this should generally only be used in tests.\n *\n * Layers are added by the push($el) method. Layers are removed by the\n * popUntil($el) method.\n *\n * popUntil's contract is that it pops all layers above & including the given\n * layer. This is used to support popping multiple layers.\n * Say we were showing a dropdown inside an inline dialog inside a dialog - we\n * have a stack of dialog layer, inline dialog layer, then dropdown layer. Calling\n * popUntil(dialog.$el) would hide all layers above & including the dialog.\n */\n\nfunction getTrigger ($layer) {\n return $('[aria-controls=\"' + $layer.attr('id') + '\"]');\n}\n\nfunction hasTrigger ($layer) {\n return getTrigger($layer).length > 0;\n}\n\nfunction topIndexWhere (layerArr, fn) {\n var i = layerArr.length;\n\n while (i--) {\n if (fn(layerArr[i])) {\n return i;\n }\n }\n\n return -1;\n}\n\nfunction layerIndex (layerArr, $el) {\n return topIndexWhere(layerArr, function ($layer) {\n return $layer[0] === $el[0];\n });\n}\n\nfunction topBlanketedIndex (layerArr) {\n return topIndexWhere(layerArr, function ($layer) {\n return createLayer($layer).isBlanketed();\n });\n}\n\nfunction nextZIndex (layerArr) {\n var _nextZIndex;\n\n if (layerArr.length) {\n var $topEl = layerArr[layerArr.length - 1];\n var zIndex = parseInt($topEl.css('z-index'), 10);\n _nextZIndex = (isNaN(zIndex) ? 0 : zIndex) + 100;\n } else {\n _nextZIndex = 0;\n }\n\n return Math.max(3000, _nextZIndex);\n}\n\nfunction updateBlanket (stack, oldBlanketIndex) {\n var newTopBlanketedIndex = topBlanketedIndex(stack);\n\n if (oldBlanketIndex !== newTopBlanketedIndex) {\n if (newTopBlanketedIndex > -1) {\n dim(false, stack[newTopBlanketedIndex].css('z-index') - 20);\n } else {\n undim();\n }\n }\n}\n\nfunction popLayers (stack, stopIndex, forceClosePersistent) {\n if (stopIndex < 0) {\n return;\n }\n\n for (var a = stack.length - 1; a >= stopIndex; a--) {\n var $layer = stack[a];\n var layer = createLayer($layer);\n\n if (forceClosePersistent || !layer.isPersistent()) {\n layer._hideLayer(true);\n stack.splice(a, 1);\n }\n }\n}\n\nfunction getParentLayer ($childLayer) {\n var $layerTrigger = getTrigger($childLayer);\n\n if ($layerTrigger.length > 0) {\n return $layerTrigger.closest('.aui-layer');\n }\n}\n\nfunction LayerManager () {\n this._stack = [];\n}\n\nLayerManager.prototype = {\n /**\n * Pushes a layer onto the stack. The same element cannot be opened as a layer multiple times - if the given\n * element is already an open layer, this method throws an exception.\n *\n * @param {HTMLElement | String | jQuery} element The element to push onto the stack.\n *\n * @returns {LayerManager}\n */\n push: function (element) {\n var $el = (element instanceof $) ? element : $(element);\n if (layerIndex(this._stack, $el) >= 0) {\n throw new Error('The given element is already an active layer.');\n }\n\n this.popLayersBeside($el);\n\n var layer = createLayer($el);\n var zIndex = nextZIndex(this._stack);\n\n layer._showLayer(zIndex);\n\n if (layer.isBlanketed()) {\n dim(false, zIndex - 20);\n }\n\n this._stack.push($el);\n\n return this;\n },\n\n popLayersBeside: function (element) {\n var $layer = (element instanceof $) ? element : $(element);\n if (!hasTrigger($layer)) {\n // We can't find this layer's trigger, we will pop all non-persistent until a blanket or the document\n var blanketedIndex = topBlanketedIndex(this._stack);\n popLayers(this._stack, ++blanketedIndex, false);\n return;\n }\n\n var $parentLayer = getParentLayer($layer);\n if ($parentLayer) {\n var parentIndex = this.indexOf($parentLayer);\n popLayers(this._stack, ++parentIndex, false);\n } else {\n popLayers(this._stack, 0, false);\n }\n\n },\n\n /**\n * Returns the index of the specified layer in the layer stack.\n *\n * @param {HTMLElement | String | jQuery} element The element to find in the stack.\n *\n * @returns {Number} the (zero-based) index of the element, or -1 if not in the stack.\n */\n indexOf: function (element) {\n return layerIndex(this._stack, $(element));\n },\n\n /**\n * Returns the item at the particular index or false.\n *\n * @param {Number} index The index of the element to get.\n *\n * @returns {jQuery | Boolean}\n */\n item: function (index) {\n return this._stack[index];\n },\n\n /**\n * Hides all layers in the stack.\n *\n * @returns {LayerManager}\n */\n hideAll: function () {\n this._stack.reverse().forEach(function (element) {\n var layer = createLayer(element);\n if (layer.isBlanketed() || layer.isPersistent()) {\n return;\n }\n layer.hide();\n });\n\n return this;\n },\n\n /**\n * Gets the previous layer below the given layer, which is non modal and non persistent. If it finds a blanketed layer on the way\n * it returns it regardless if it is modal or not\n *\n * @param {HTMLElement | String | jQuery} element layer to start the search from.\n *\n * @returns {jQuery | null} the next matching layer or null if none found.\n */\n getNextLowerNonPersistentOrBlanketedLayer: function (element) {\n var $el = (element instanceof $) ? element : $(element);\n var index = layerIndex(this._stack, $el);\n\n if (index < 0) {\n return null;\n }\n\n var $nextEl;\n index--;\n while (index >= 0) {\n $nextEl = this._stack[index];\n var layer = createLayer($nextEl);\n\n if (!layer.isPersistent() || layer.isBlanketed()) {\n return $nextEl;\n }\n index--;\n }\n\n return null;\n },\n\n /**\n * Gets the next layer which is neither modal or blanketed, from the given layer.\n *\n * @param {HTMLElement | String | jQuery} element layer to start the search from.\n *\n * @returns {jQuery | null} the next non modal non blanketed layer or null if none found.\n */\n getNextHigherNonPeristentAndNonBlanketedLayer: function (element) {\n var $el = (element instanceof $) ? element : $(element);\n var index = layerIndex(this._stack, $el);\n\n if (index < 0) {\n return null;\n }\n\n var $nextEl;\n index++;\n while (index < this._stack.length) {\n $nextEl = this._stack[index];\n var layer = createLayer($nextEl);\n\n if (!(layer.isPersistent() || layer.isBlanketed())) {\n return $nextEl;\n }\n index++;\n }\n\n return null;\n },\n\n /**\n * Removes all non-modal layers above & including the given element. If the given element is not an active layer, this method\n * is a no-op. The given element will be removed regardless of whether or not it is modal.\n *\n * @param {HTMLElement | String | jQuery} element layer to pop.\n *\n * @returns {jQuery} The last layer that was popped, or null if no layer matching the given $el was found.\n */\n popUntil: function (element) {\n var $el = (element instanceof $) ? element : $(element);\n var index = layerIndex(this._stack, $el);\n\n if (index === -1) {\n return null;\n }\n\n var oldTopBlanketedIndex = topBlanketedIndex(this._stack);\n\n // Removes all layers above the current one.\n popLayers(this._stack, index + 1, createLayer($el).isBlanketed());\n\n // Removes the current layer.\n createLayer($el)._hideLayer();\n this._stack.splice(index, 1);\n\n updateBlanket(this._stack, oldTopBlanketedIndex);\n\n return $el;\n },\n\n /**\n * Gets the top layer, if it exists.\n *\n * @returns The layer on top of the stack, if it exists, otherwise null.\n */\n getTopLayer: function () {\n if (!this._stack.length) {\n return null;\n }\n\n var $topLayer = this._stack[this._stack.length - 1];\n\n return $topLayer;\n },\n\n /**\n * Pops the top layer, if it exists and it is non modal and non persistent.\n *\n * @returns The layer that was popped, if it was popped.\n */\n popTopIfNonPersistent: function () {\n var $topLayer = this.getTopLayer();\n var layer = createLayer($topLayer);\n\n if (!$topLayer || layer.isPersistent()) {\n return null;\n }\n\n return this.popUntil($topLayer);\n },\n\n /**\n * Pops all layers above and including the top blanketed layer. If layers exist but none are blanketed, this method\n * does nothing.\n *\n * @returns The blanketed layer that was popped, if it exists, otherwise null.\n */\n popUntilTopBlanketed: function () {\n var i = topBlanketedIndex(this._stack);\n\n if (i < 0) {\n return null;\n }\n\n var $topBlanketedLayer = this._stack[i];\n var layer = createLayer($topBlanketedLayer);\n\n if (layer.isPersistent()) {\n // We can't pop the blanketed layer, only the things ontop\n var $next = this.getNextHigherNonPeristentAndNonBlanketedLayer($topBlanketedLayer);\n if ($next) {\n var stopIndex = layerIndex(this._stack, $next);\n popLayers(this._stack, stopIndex, true);\n return $next;\n }\n return null;\n }\n\n popLayers(this._stack, i, true);\n updateBlanket(this._stack, i);\n return $topBlanketedLayer;\n },\n\n /**\n * Pops all layers above and including the top persistent layer. If layers exist but none are persistent, this method\n * does nothing.\n */\n popUntilTopPersistent: function () {\n var $toPop = LayerManager.global.getTopLayer();\n if (!$toPop) {\n return;\n }\n\n var stopIndex;\n var oldTopBlanketedIndex = topBlanketedIndex(this._stack);\n\n var toPop = createLayer($toPop);\n if (toPop.isPersistent()) {\n if (toPop.isBlanketed()) {\n return;\n } else {\n // Get the closest non modal layer below, stop at the first blanketed layer though, we don't want to pop below that\n $toPop = LayerManager.global.getNextLowerNonPersistentOrBlanketedLayer($toPop);\n toPop = createLayer($toPop);\n\n if ($toPop && !toPop.isPersistent()) {\n stopIndex = layerIndex(this._stack, $toPop);\n popLayers(this._stack, stopIndex, true);\n updateBlanket(this._stack, oldTopBlanketedIndex);\n } else {\n // Here we have a blanketed persistent layer\n return;\n }\n }\n } else {\n stopIndex = layerIndex(this._stack, $toPop);\n popLayers(this._stack, stopIndex, true);\n updateBlanket(this._stack, oldTopBlanketedIndex);\n }\n }\n};\n\n// LayerManager.global\n// -------------------\n\nfunction initCloseLayerOnEscPress() {\n $doc.on('keydown', function (e) {\n if (e.keyCode === keyCode.ESCAPE) {\n LayerManager.global.popUntilTopPersistent();\n e.preventDefault();\n }\n });\n}\n\nfunction initCloseLayerOnBlanketClick() {\n $doc.on('click', '.aui-blanket', function (e) {\n if (LayerManager.global.popUntilTopBlanketed()) {\n e.preventDefault();\n }\n });\n}\n\nfunction hasLayer($trigger) {\n if (!$trigger.length) {\n return false;\n }\n\n var layer = document.getElementById($trigger.attr('aria-controls'));\n return LayerManager.global.indexOf(layer) > -1;\n}\n\n// If it's a click on a trigger, do nothing.\n// If it's a click on a layer, close all layers above.\n// Otherwise, close all layers.\nfunction initCloseLayerOnOuterClick () {\n $doc.on('click', function (e) {\n var $target = $(e.target);\n if ($target.closest('.aui-blanket').length) {\n return;\n }\n\n var $trigger = $target.closest('[aria-controls]');\n var $layer = $target.closest('.aui-layer');\n if (!$layer.length && !hasLayer($trigger)) {\n LayerManager.global.hideAll();\n return;\n }\n\n // Triggers take precedence over layers\n if (hasLayer($trigger)) {\n return;\n }\n\n if ($layer.length) {\n // We dont want to explicitly call close on a modal dialog if it happens to be next.\n // All blanketed layers should be below us, as otherwise the blanket should have caught the click.\n // We make sure we dont close a blanketed one explicitly as a hack, this is to fix the problem arising\n // from dialog2 triggers inside dialog2's having no aria controls, where the dialog2 that was just\n // opened would be closed instantly\n var $next = LayerManager.global.getNextHigherNonPeristentAndNonBlanketedLayer($layer);\n\n if ($next) {\n createLayer($next).hide();\n }\n }\n });\n}\n\ninitCloseLayerOnEscPress();\ninitCloseLayerOnBlanketClick();\ninitCloseLayerOnOuterClick();\n\nLayerManager.global = new LayerManager();\ncreateLayer.Manager = LayerManager;\n\nglobalize('layer', createLayer);\n\nexport default createLayer;\n"]}
1
+ {"version":3,"sources":["js/aui/layer.js"],"names":["EVENT_PREFIX","GLOBAL_EVENT_PREFIX","LAYER_EVENT_PREFIX","AUI_EVENT_PREFIX","$doc","document","isTransitioning","el","prop","transition","window","getComputedStyle","transitionProperty","indexOf","onTransitionEnd","func","once","handler","e","propertyName","call","removeEventListener","addEventListener","oneTransitionEnd","ariaHide","$el","attr","ariaShow","triggerEvent","deprecatedName","newNativeName","e1","$","Event","e2","nativeEvent","CustomEvent","bubbles","cancelable","nativeEvent2","trigger","dispatchEvent","isDefaultPrevented","defaultPrevented","Layer","selector","addClass","prototype","below","LayerManager","global","item","above","changeSize","width","height","css","on","event","fn","off","show","isVisible","push","hide","thisLayer","get","style","display","popUntil","remove","isBlanketed","isPersistent","modal","hasAttribute","_hideLayer","triggerBeforeEvents","FocusManager","exit","data","_showLayer","zIndex","parent","is","appendTo","body","enter","createLayer","eventName","getTrigger","$layer","hasTrigger","length","topIndexWhere","layerArr","i","layerIndex","topBlanketedIndex","nextZIndex","_nextZIndex","$topEl","parseInt","isNaN","Math","max","updateBlanket","stack","oldBlanketIndex","newTopBlanketedIndex","popLayers","stopIndex","forceClosePersistent","a","layer","splice","getParentLayer","$childLayer","$layerTrigger","closest","_stack","element","Error","popLayersBeside","blanketedIndex","$parentLayer","parentIndex","index","hideAll","reverse","forEach","getNextLowerNonPersistentOrBlanketedLayer","$nextEl","getNextHigherNonPeristentAndNonBlanketedLayer","oldTopBlanketedIndex","getTopLayer","$topLayer","popTopIfNonPersistent","popUntilTopBlanketed","$topBlanketedLayer","$next","popUntilTopPersistent","$toPop","toPop","initCloseLayerOnEscPress","keyCode","ESCAPE","preventDefault","initCloseLayerOnBlanketClick","hasLayer","$trigger","getElementById","initCloseLayerOnOuterClick","$target","target","Manager"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;AAUA,QAAMA,eAAe,sBAArB;AACA,QAAMC,sBAAsB,6BAA5B;AACA,QAAMC,qBAAqB,YAA3B;AACA,QAAMC,mBAAmB,MAAzB;AACA,QAAIC,OAAO,sBAAEC,QAAF,CAAX;;AAEA;AACA,aAASC,eAAT,CAA0BC,EAA1B,EAA8BC,IAA9B,EAAoC;AAChC,YAAIC,aAAaC,OAAOC,gBAAP,CAAwBJ,EAAxB,EAA4BK,kBAA7C;AACA,eAAOH,aAAaA,WAAWI,OAAX,CAAmBL,IAAnB,IAA2B,CAAC,CAAzC,GAA6C,KAApD;AACH;;AAED,aAASM,eAAT,CAA0BP,EAA1B,EAA8BC,IAA9B,EAAoCO,IAApC,EAA0CC,IAA1C,EAAgD;AAC5C,iBAASC,OAAT,CAAkBC,CAAlB,EAAqB;AACjB,gBAAIV,SAASU,EAAEC,YAAf,EAA6B;AACzB;AACH;;AAEDJ,iBAAKK,IAAL,CAAUb,EAAV;;AAEA,gBAAIS,IAAJ,EAAU;AACNT,mBAAGc,mBAAH,CAAuB,eAAvB,EAAwCJ,OAAxC;AACH;AACJ;;AAED,YAAIX,gBAAgBC,EAAhB,EAAoBC,IAApB,CAAJ,EAA+B;AAC3BD,eAAGe,gBAAH,CAAoB,eAApB,EAAqCL,OAArC;AACH,SAFD,MAEO;AACHF,iBAAKK,IAAL,CAAUb,EAAV;AACH;AACJ;;AAED,aAASgB,gBAAT,CAA2BhB,EAA3B,EAA+BC,IAA/B,EAAqCO,IAArC,EAA2C;AACvCD,wBAAgBP,EAAhB,EAAoBC,IAApB,EAA0BO,IAA1B,EAAgC,IAAhC;AACH;AACD;;AAEA,aAASS,QAAT,CAAmBC,GAAnB,EAAwB;AACpBA,YAAIC,IAAJ,CAAS,aAAT,EAAwB,MAAxB;AACH;;AAED,aAASC,QAAT,CAAmBF,GAAnB,EAAwB;AACpBA,YAAIC,IAAJ,CAAS,aAAT,EAAwB,OAAxB;AACH;;AAED;;;AAGA,aAASE,YAAT,CAAuBH,GAAvB,EAA4BI,cAA5B,EAA4CC,aAA5C,EAA2D;AACvD,YAAIC,KAAKC,iBAAEC,KAAF,CAAQjC,eAAe6B,cAAvB,CAAT;AACA,YAAIK,KAAKF,iBAAEC,KAAF,CAAQhC,sBAAsB4B,cAA9B,CAAT;AACA;AACA,YAAIM,cAAc,IAAIC,qBAAJ,CAAgBlC,qBAAqB4B,aAArC,EAAoD;AAClEO,qBAAS,IADyD;AAElEC,wBAAY;AAFsD,SAApD,CAAlB;AAIA,YAAIC,eAAe,IAAIH,qBAAJ,CAAgBjC,mBAAmB2B,aAAnC,EAAkD;AACjEO,qBAAS,IADwD;AAEjEC,wBAAY;AAFqD,SAAlD,CAAnB;;AAKAb,YAAIe,OAAJ,CAAYT,EAAZ;AACAN,YAAIe,OAAJ,CAAYN,EAAZ,EAAgB,CAACT,GAAD,CAAhB;AACAA,YAAI,CAAJ,EAAOgB,aAAP,CAAqBN,WAArB;AACAV,YAAI,CAAJ,EAAOgB,aAAP,CAAqBF,YAArB;;AAEA,eAAO,CAACR,GAAGW,kBAAH,EAAD,IACH,CAACR,GAAGQ,kBAAH,EADE,IAEH,CAACP,YAAYQ,gBAFV,IAGH,CAACJ,aAAaI,gBAHlB;AAIH;;AAED,aAASC,KAAT,CAAgBC,QAAhB,EAA0B;AACtB,aAAKpB,GAAL,GAAW,sBAAEoB,YAAY,kDAAd,CAAX;AACA,aAAKpB,GAAL,CAASqB,QAAT,CAAkB,WAAlB;AACH;;AAEDF,UAAMG,SAAN,GAAkB;AACd;;;;;AAKAC,eAAO,iBAAY;AACf,mBAAOC,aAAaC,MAAb,CAAoBC,IAApB,CAAyBF,aAAaC,MAAb,CAAoBrC,OAApB,CAA4B,KAAKY,GAAjC,IAAwC,CAAjE,CAAP;AACH,SARa;;AAUd;;;;;AAKA2B,eAAO,iBAAY;AACf,mBAAOH,aAAaC,MAAb,CAAoBC,IAApB,CAAyBF,aAAaC,MAAb,CAAoBrC,OAApB,CAA4B,KAAKY,GAAjC,IAAwC,CAAjE,CAAP;AACH,SAjBa;;AAmBd;;;;;;;;AAQA4B,oBAAY,oBAAUC,KAAV,EAAiBC,MAAjB,EAAyB;AACjC,iBAAK9B,GAAL,CAAS+B,GAAT,CAAa,OAAb,EAAsBF,KAAtB;AACA,iBAAK7B,GAAL,CAAS+B,GAAT,CAAa,QAAb,EAAuBD,WAAW,SAAX,GAAuB,EAAvB,GAA4BA,MAAnD;AACA,mBAAO,IAAP;AACH,SA/Ba;;AAiCd;;;;;;;;AAQAE,YAAI,YAAUC,KAAV,EAAiBC,EAAjB,EAAqB;AACrB,iBAAKlC,GAAL,CAASgC,EAAT,CAAYzD,eAAe0D,KAA3B,EAAkCC,EAAlC;AACA,mBAAO,IAAP;AACH,SA5Ca;;AA+Cd;;;;;;;;AAQAC,aAAK,aAAUF,KAAV,EAAiBC,EAAjB,EAAqB;AACtB,iBAAKlC,GAAL,CAASmC,GAAT,CAAa5D,eAAe0D,KAA5B,EAAmCC,EAAnC;AACA,mBAAO,IAAP;AACH,SA1Da;;AA4Dd;;;;;AAKAE,cAAM,gBAAY;AACd,gBAAI,KAAKC,SAAL,EAAJ,EAAsB;AAClBnC,yBAAS,KAAKF,GAAd;AACA,uBAAO,IAAP;AACH;;AAED,gBAAI,CAACG,aAAa,KAAKH,GAAlB,EAAuB,YAAvB,EAAqC,MAArC,CAAL,EAAmD;AAC/C,uBAAO,IAAP;AACH;;AAED;AACA;AACA;AACA,gBAAI,KAAKA,GAAL,CAAS+B,GAAT,CAAa,SAAb,MAA4B,MAAhC,EAAwC;AACpC,qBAAK/B,GAAL,CAAS+B,GAAT,CAAa,SAAb,EAAwB,EAAxB;AACH;;AAEDP,yBAAaC,MAAb,CAAoBa,IAApB,CAAyB,KAAKtC,GAA9B;;AAEA,mBAAO,IAAP;AACH,SArFa;;AAuFd;;;;;AAKAuC,cAAM,gBAAY;AACd,gBAAI,CAAC,KAAKF,SAAL,EAAL,EAAuB;AACnBtC,yBAAS,KAAKC,GAAd;AACA,uBAAO,IAAP;AACH;;AAED,gBAAI,CAACG,aAAa,KAAKH,GAAlB,EAAuB,YAAvB,EAAqC,MAArC,CAAL,EAAmD;AAC/C,uBAAO,IAAP;AACH;;AAED;AACA,gBAAMwC,YAAY,IAAlB;AACA1C,6BAAiB,KAAKE,GAAL,CAASyC,GAAT,CAAa,CAAb,CAAjB,EAAkC,SAAlC,EAA6C,YAAY;AACrD,oBAAI,CAACD,UAAUH,SAAV,EAAL,EAA4B;AACxB,yBAAKK,KAAL,CAAWC,OAAX,GAAqB,MAArB;AACH;AACJ,aAJD;;AAMAnB,yBAAaC,MAAb,CAAoBmB,QAApB,CAA6B,KAAK5C,GAAlC;;AAEA,mBAAO,IAAP;AACH,SAjHa;;AAmHd;;;;;AAKAqC,mBAAW,qBAAY;AACnB,mBAAO,KAAKrC,GAAL,CAASC,IAAT,CAAc,aAAd,MAAiC,OAAxC;AACH,SA1Ha;;AA4Hd;;;;;AAKA4C,gBAAQ,kBAAY;AAChB,iBAAKN,IAAL;AACA,iBAAKvC,GAAL,CAAS6C,MAAT;AACA,iBAAK7C,GAAL,GAAW,IAAX;AACH,SArIa;;AAuId;;;;;AAKA8C,qBAAa,uBAAY;AACrB,mBAAO,KAAK9C,GAAL,CAASC,IAAT,CAAc,oBAAd,MAAwC,MAA/C;AACH,SA9Ia;;AAgJd;;;;;AAKA8C,sBAAc,wBAAY;AACtB,gBAAIC,QAAQ,KAAKhD,GAAL,CAASC,IAAT,CAAc,OAAd,KAA0B,KAAKD,GAAL,CAASC,IAAT,CAAc,gBAAd,CAAtC;AACA,gBAAI8C,eAAe,KAAK/C,GAAL,CAAS,CAAT,EAAYiD,YAAZ,CAAyB,YAAzB,CAAnB;;AAEA,mBAAOD,UAAU,MAAV,IAAoBD,YAA3B;AACH,SA1Ja;;AA4JdG,oBAAY,oBAAUC,mBAAV,EAA+B;AACvC,gBAAI,KAAKJ,YAAL,MAAuB,KAAKD,WAAL,EAA3B,EAA+C;AAC3CM,uCAAa3B,MAAb,CAAoB4B,IAApB,CAAyB,KAAKrD,GAA9B;AACH;;AAED,gBAAImD,mBAAJ,EAAyB;AACrBhD,6BAAa,KAAKH,GAAlB,EAAuB,YAAvB,EAAqC,MAArC;AACH;;AAED,iBAAKA,GAAL,CAASC,IAAT,CAAc,aAAd,EAA6B,MAA7B;AACA,iBAAKD,GAAL,CAAS+B,GAAT,CAAa,SAAb,EAAwB,KAAK/B,GAAL,CAASsD,IAAT,CAAc,2BAAd,KAA8C,EAAtE;AACA,iBAAKtD,GAAL,CAASsD,IAAT,CAAc,2BAAd,EAA2C,EAA3C;AACA,iBAAKtD,GAAL,CAASe,OAAT,CAAiBxC,eAAe,MAAhC;AACA,iBAAKyB,GAAL,CAASe,OAAT,CAAiBvC,sBAAsB,MAAvC,EAA+C,CAAC,KAAKwB,GAAN,CAA/C;AACH,SA1Ka;;AA4KduD,oBAAY,oBAAUC,MAAV,EAAkB;AAC1B,gBAAI,CAAC,KAAKxD,GAAL,CAASyD,MAAT,GAAkBC,EAAlB,CAAqB,MAArB,CAAL,EAAmC;AAC/B,qBAAK1D,GAAL,CAAS2D,QAAT,CAAkB/E,SAASgF,IAA3B;AACH;;AAED,iBAAK5D,GAAL,CAASsD,IAAT,CAAc,2BAAd,EAA2C,KAAKtD,GAAL,CAAS+B,GAAT,CAAa,SAAb,CAA3C;AACA,iBAAK/B,GAAL,CAAS+B,GAAT,CAAa,SAAb,EAAwByB,MAAxB;AACA,iBAAKxD,GAAL,CAASC,IAAT,CAAc,aAAd,EAA6B,OAA7B;;AAEA,gBAAI,KAAK8C,YAAL,MAAuB,KAAKD,WAAL,EAA3B,EAA+C;AAC3CM,uCAAa3B,MAAb,CAAoBoC,KAApB,CAA0B,KAAK7D,GAA/B;AACH;;AAED,iBAAKA,GAAL,CAASe,OAAT,CAAiBxC,eAAe,MAAhC;AACA,iBAAKyB,GAAL,CAASe,OAAT,CAAiBvC,sBAAsB,MAAvC,EAA+C,CAAC,KAAKwB,GAAN,CAA/C;AACH;AA3La,KAAlB;;AA8LA,QAAI8D,cAAc,sBAAO,OAAP,EAAgB3C,KAAhB,CAAlB;;AAEA2C,gBAAY9B,EAAZ,GAAiB,UAAU+B,SAAV,EAAqB3C,QAArB,EAA+Bc,EAA/B,EAAmC;AAChDvD,aAAKqD,EAAL,CAAQxD,sBAAsBuF,SAA9B,EAAyC3C,QAAzC,EAAmDc,EAAnD;AACA,eAAO,IAAP;AACH,KAHD;;AAKA4B,gBAAY3B,GAAZ,GAAkB,UAAU4B,SAAV,EAAqB3C,QAArB,EAA+Bc,EAA/B,EAAmC;AACjDvD,aAAKwD,GAAL,CAAS3D,sBAAsBuF,SAA/B,EAA0C3C,QAA1C,EAAoDc,EAApD;AACA,eAAO,IAAP;AACH,KAHD;;AAOA;AACA;;AAEA;;;;;;;;;;;;;;;;AAgBA,aAAS8B,UAAT,CAAqBC,MAArB,EAA6B;AACzB,eAAO,sBAAE,qBAAqBA,OAAOhE,IAAP,CAAY,IAAZ,CAArB,GAAyC,IAA3C,CAAP;AACH;;AAED,aAASiE,UAAT,CAAqBD,MAArB,EAA6B;AACzB,eAAOD,WAAWC,MAAX,EAAmBE,MAAnB,GAA4B,CAAnC;AACH;;AAED,aAASC,aAAT,CAAwBC,QAAxB,EAAkCnC,EAAlC,EAAsC;AAClC,YAAIoC,IAAID,SAASF,MAAjB;;AAEA,eAAOG,GAAP,EAAY;AACR,gBAAIpC,GAAGmC,SAASC,CAAT,CAAH,CAAJ,EAAqB;AACjB,uBAAOA,CAAP;AACH;AACJ;;AAED,eAAO,CAAC,CAAR;AACH;;AAED,aAASC,UAAT,CAAqBF,QAArB,EAA+BrE,GAA/B,EAAoC;AAChC,eAAOoE,cAAcC,QAAd,EAAwB,UAAUJ,MAAV,EAAkB;AAC7C,mBAAOA,OAAO,CAAP,MAAcjE,IAAI,CAAJ,CAArB;AACH,SAFM,CAAP;AAGH;;AAED,aAASwE,iBAAT,CAA4BH,QAA5B,EAAsC;AAClC,eAAOD,cAAcC,QAAd,EAAwB,UAAUJ,MAAV,EAAkB;AAC7C,mBAAOH,YAAYG,MAAZ,EAAoBnB,WAApB,EAAP;AACH,SAFM,CAAP;AAGH;;AAED,aAAS2B,UAAT,CAAqBJ,QAArB,EAA+B;AAC3B,YAAIK,WAAJ;;AAEA,YAAIL,SAASF,MAAb,EAAqB;AACjB,gBAAIQ,SAASN,SAASA,SAASF,MAAT,GAAkB,CAA3B,CAAb;AACA,gBAAIX,SAASoB,SAASD,OAAO5C,GAAP,CAAW,SAAX,CAAT,EAAgC,EAAhC,CAAb;AACA2C,0BAAc,CAACG,MAAMrB,MAAN,IAAgB,CAAhB,GAAoBA,MAArB,IAA+B,GAA7C;AACH,SAJD,MAIO;AACHkB,0BAAc,CAAd;AACH;;AAED,eAAOI,KAAKC,GAAL,CAAS,IAAT,EAAeL,WAAf,CAAP;AACH;;AAED,aAASM,aAAT,CAAwBC,KAAxB,EAA+BC,eAA/B,EAAgD;AAC5C,YAAIC,uBAAuBX,kBAAkBS,KAAlB,CAA3B;;AAEA,YAAIC,oBAAoBC,oBAAxB,EAA8C;AAC1C,gBAAIA,uBAAuB,CAAC,CAA5B,EAA+B;AAC3B,kCAAI,KAAJ,EAAWF,MAAME,oBAAN,EAA4BpD,GAA5B,CAAgC,SAAhC,IAA6C,EAAxD;AACH,aAFD,MAEO;AACH;AACH;AACJ;AACJ;;AAED,aAASqD,SAAT,CAAoBH,KAApB,EAA2BI,SAA3B,EAAsCC,oBAAtC,EAA4D;AACxD,YAAID,YAAY,CAAhB,EAAmB;AACf;AACH;;AAED,aAAK,IAAIE,IAAIN,MAAMd,MAAN,GAAe,CAA5B,EAA+BoB,KAAKF,SAApC,EAA+CE,GAA/C,EAAoD;AAChD,gBAAItB,SAASgB,MAAMM,CAAN,CAAb;AACA,gBAAIC,QAAQ1B,YAAYG,MAAZ,CAAZ;;AAEA,gBAAIqB,wBAAwB,CAACE,MAAMzC,YAAN,EAA7B,EAAmD;AAC/CyC,sBAAMtC,UAAN,CAAiB,IAAjB;AACA+B,sBAAMQ,MAAN,CAAaF,CAAb,EAAgB,CAAhB;AACH;AACJ;AACJ;;AAED,aAASG,cAAT,CAAyBC,WAAzB,EAAsC;AAClC,YAAIC,gBAAgB5B,WAAW2B,WAAX,CAApB;;AAEA,YAAIC,cAAczB,MAAd,GAAuB,CAA3B,EAA8B;AAC1B,mBAAOyB,cAAcC,OAAd,CAAsB,YAAtB,CAAP;AACH;AACJ;;AAED,aAASrE,YAAT,GAAyB;AACrB,aAAKsE,MAAL,GAAc,EAAd;AACH;;AAEDtE,iBAAaF,SAAb,GAAyB;AACrB;;;;;;;;AAQAgB,cAAM,cAAUyD,OAAV,EAAmB;AACrB,gBAAI/F,MAAO+F,mBAAmBxF,gBAApB,GAAyBwF,OAAzB,GAAmC,sBAAEA,OAAF,CAA7C;AACA,gBAAIxB,WAAW,KAAKuB,MAAhB,EAAwB9F,GAAxB,KAAgC,CAApC,EAAuC;AACnC,sBAAM,IAAIgG,KAAJ,CAAU,+CAAV,CAAN;AACH;;AAED,iBAAKC,eAAL,CAAqBjG,GAArB;;AAEA,gBAAIwF,QAAQ1B,YAAY9D,GAAZ,CAAZ;AACA,gBAAIwD,SAASiB,WAAW,KAAKqB,MAAhB,CAAb;;AAEAN,kBAAMjC,UAAN,CAAiBC,MAAjB;;AAEA,gBAAIgC,MAAM1C,WAAN,EAAJ,EAAyB;AACrB,kCAAI,KAAJ,EAAWU,SAAS,EAApB;AACH;;AAED,iBAAKsC,MAAL,CAAYxD,IAAZ,CAAiBtC,GAAjB;;AAEA,mBAAO,IAAP;AACH,SA7BoB;;AA+BrBiG,yBAAiB,yBAAUF,OAAV,EAAmB;AAChC,gBAAI9B,SAAU8B,mBAAmBxF,gBAApB,GAAyBwF,OAAzB,GAAmC,sBAAEA,OAAF,CAAhD;AACA,gBAAI,CAAC7B,WAAWD,MAAX,CAAL,EAAyB;AACrB;AACA,oBAAIiC,iBAAiB1B,kBAAkB,KAAKsB,MAAvB,CAArB;AACAV,0BAAU,KAAKU,MAAf,EAAuB,EAAEI,cAAzB,EAAyC,KAAzC;AACA;AACH;;AAED,gBAAIC,eAAeT,eAAezB,MAAf,CAAnB;AACA,gBAAIkC,YAAJ,EAAkB;AACd,oBAAIC,cAAc,KAAKhH,OAAL,CAAa+G,YAAb,CAAlB;AACAf,0BAAU,KAAKU,MAAf,EAAuB,EAAEM,WAAzB,EAAsC,KAAtC;AACH,aAHD,MAGO;AACHhB,0BAAU,KAAKU,MAAf,EAAuB,CAAvB,EAA0B,KAA1B;AACH;AAEJ,SAhDoB;;AAkDrB;;;;;;;AAOA1G,iBAAS,iBAAU2G,OAAV,EAAmB;AACxB,mBAAOxB,WAAW,KAAKuB,MAAhB,EAAwB,sBAAEC,OAAF,CAAxB,CAAP;AACH,SA3DoB;;AA6DrB;;;;;;;AAOArE,cAAM,cAAU2E,KAAV,EAAiB;AACnB,mBAAO,KAAKP,MAAL,CAAYO,KAAZ,CAAP;AACH,SAtEoB;;AAwErB;;;;;AAKAC,iBAAS,mBAAY;AACjB,iBAAKR,MAAL,CAAYS,OAAZ,GAAsBC,OAAtB,CAA8B,UAAUT,OAAV,EAAmB;AAC7C,oBAAIP,QAAQ1B,YAAYiC,OAAZ,CAAZ;AACA,oBAAIP,MAAM1C,WAAN,MAAuB0C,MAAMzC,YAAN,EAA3B,EAAiD;AAC7C;AACH;AACDyC,sBAAMjD,IAAN;AACH,aAND;;AAQA,mBAAO,IAAP;AACH,SAvFoB;;AAyFrB;;;;;;;;AAQAkE,mDAA2C,mDAAUV,OAAV,EAAmB;AAC1D,gBAAI/F,MAAO+F,mBAAmBxF,gBAApB,GAAyBwF,OAAzB,GAAmC,sBAAEA,OAAF,CAA7C;AACA,gBAAIM,QAAQ9B,WAAW,KAAKuB,MAAhB,EAAwB9F,GAAxB,CAAZ;;AAEA,gBAAIqG,QAAQ,CAAZ,EAAe;AACX,uBAAO,IAAP;AACH;;AAED,gBAAIK,OAAJ;AACAL;AACA,mBAAOA,SAAS,CAAhB,EAAmB;AACfK,0BAAU,KAAKZ,MAAL,CAAYO,KAAZ,CAAV;AACA,oBAAIb,QAAQ1B,YAAY4C,OAAZ,CAAZ;;AAEA,oBAAI,CAAClB,MAAMzC,YAAN,EAAD,IAAyByC,MAAM1C,WAAN,EAA7B,EAAkD;AAC9C,2BAAO4D,OAAP;AACH;AACDL;AACH;;AAED,mBAAO,IAAP;AACH,SAtHoB;;AAwHrB;;;;;;;AAOAM,uDAA+C,uDAAUZ,OAAV,EAAmB;AAC9D,gBAAI/F,MAAO+F,mBAAmBxF,gBAApB,GAAyBwF,OAAzB,GAAmC,sBAAEA,OAAF,CAA7C;AACA,gBAAIM,QAAQ9B,WAAW,KAAKuB,MAAhB,EAAwB9F,GAAxB,CAAZ;;AAEA,gBAAIqG,QAAQ,CAAZ,EAAe;AACX,uBAAO,IAAP;AACH;;AAED,gBAAIK,OAAJ;AACAL;AACA,mBAAOA,QAAQ,KAAKP,MAAL,CAAY3B,MAA3B,EAAmC;AAC/BuC,0BAAU,KAAKZ,MAAL,CAAYO,KAAZ,CAAV;AACA,oBAAIb,QAAQ1B,YAAY4C,OAAZ,CAAZ;;AAEA,oBAAI,EAAElB,MAAMzC,YAAN,MAAwByC,MAAM1C,WAAN,EAA1B,CAAJ,EAAoD;AAChD,2BAAO4D,OAAP;AACH;AACDL;AACH;;AAED,mBAAO,IAAP;AACH,SApJoB;;AAsJrB;;;;;;;;AAQAzD,kBAAU,kBAAUmD,OAAV,EAAmB;AACzB,gBAAI/F,MAAO+F,mBAAmBxF,gBAApB,GAAyBwF,OAAzB,GAAmC,sBAAEA,OAAF,CAA7C;AACA,gBAAIM,QAAQ9B,WAAW,KAAKuB,MAAhB,EAAwB9F,GAAxB,CAAZ;;AAEA,gBAAIqG,UAAU,CAAC,CAAf,EAAkB;AACd,uBAAO,IAAP;AACH;;AAED,gBAAIO,uBAAuBpC,kBAAkB,KAAKsB,MAAvB,CAA3B;;AAEA;AACAV,sBAAU,KAAKU,MAAf,EAAuBO,QAAQ,CAA/B,EAAkCvC,YAAY9D,GAAZ,EAAiB8C,WAAjB,EAAlC;;AAEA;AACAgB,wBAAY9D,GAAZ,EAAiBkD,UAAjB;AACA,iBAAK4C,MAAL,CAAYL,MAAZ,CAAmBY,KAAnB,EAA0B,CAA1B;;AAEArB,0BAAc,KAAKc,MAAnB,EAA2Bc,oBAA3B;;AAEA,mBAAO5G,GAAP;AACH,SAlLoB;;AAoLrB;;;;;AAKA6G,qBAAa,uBAAY;AACrB,gBAAI,CAAC,KAAKf,MAAL,CAAY3B,MAAjB,EAAyB;AACrB,uBAAO,IAAP;AACH;;AAED,gBAAI2C,YAAY,KAAKhB,MAAL,CAAY,KAAKA,MAAL,CAAY3B,MAAZ,GAAqB,CAAjC,CAAhB;;AAEA,mBAAO2C,SAAP;AACH,SAjMoB;;AAmMrB;;;;;AAKAC,+BAAuB,iCAAY;AAC/B,gBAAID,YAAY,KAAKD,WAAL,EAAhB;AACA,gBAAIrB,QAAQ1B,YAAYgD,SAAZ,CAAZ;;AAEA,gBAAI,CAACA,SAAD,IAActB,MAAMzC,YAAN,EAAlB,EAAwC;AACpC,uBAAO,IAAP;AACH;;AAED,mBAAO,KAAKH,QAAL,CAAckE,SAAd,CAAP;AACH,SAjNoB;;AAmNrB;;;;;;AAMAE,8BAAsB,gCAAY;AAC9B,gBAAI1C,IAAIE,kBAAkB,KAAKsB,MAAvB,CAAR;;AAEA,gBAAIxB,IAAI,CAAR,EAAW;AACP,uBAAO,IAAP;AACH;;AAED,gBAAI2C,qBAAqB,KAAKnB,MAAL,CAAYxB,CAAZ,CAAzB;AACA,gBAAIkB,QAAQ1B,YAAYmD,kBAAZ,CAAZ;;AAEA,gBAAIzB,MAAMzC,YAAN,EAAJ,EAA0B;AACtB;AACA,oBAAImE,QAAQ,KAAKP,6CAAL,CAAmDM,kBAAnD,CAAZ;AACA,oBAAIC,KAAJ,EAAW;AACP,wBAAI7B,YAAYd,WAAW,KAAKuB,MAAhB,EAAwBoB,KAAxB,CAAhB;AACA9B,8BAAU,KAAKU,MAAf,EAAuBT,SAAvB,EAAkC,IAAlC;AACA,2BAAO6B,KAAP;AACH;AACD,uBAAO,IAAP;AACH;;AAED9B,sBAAU,KAAKU,MAAf,EAAuBxB,CAAvB,EAA0B,IAA1B;AACAU,0BAAc,KAAKc,MAAnB,EAA2BxB,CAA3B;AACA,mBAAO2C,kBAAP;AACH,SAjPoB;;AAmPrB;;;;AAIAE,+BAAuB,iCAAY;AAC/B,gBAAIC,SAAS5F,aAAaC,MAAb,CAAoBoF,WAApB,EAAb;AACA,gBAAI,CAACO,MAAL,EAAa;AACT;AACH;;AAED,gBAAI/B,SAAJ;AACA,gBAAIuB,uBAAuBpC,kBAAkB,KAAKsB,MAAvB,CAA3B;;AAEA,gBAAIuB,QAAQvD,YAAYsD,MAAZ,CAAZ;AACA,gBAAIC,MAAMtE,YAAN,EAAJ,EAA0B;AACtB,oBAAIsE,MAAMvE,WAAN,EAAJ,EAAyB;AACrB;AACH,iBAFD,MAEO;AACH;AACAsE,6BAAS5F,aAAaC,MAAb,CAAoBgF,yCAApB,CAA8DW,MAA9D,CAAT;AACAC,4BAAQvD,YAAYsD,MAAZ,CAAR;;AAEA,wBAAIA,UAAU,CAACC,MAAMtE,YAAN,EAAf,EAAqC;AACjCsC,oCAAYd,WAAW,KAAKuB,MAAhB,EAAwBsB,MAAxB,CAAZ;AACAhC,kCAAU,KAAKU,MAAf,EAAuBT,SAAvB,EAAkC,IAAlC;AACAL,sCAAc,KAAKc,MAAnB,EAA2Bc,oBAA3B;AACH,qBAJD,MAIO;AACH;AACA;AACH;AACJ;AACJ,aAjBD,MAiBO;AACHvB,4BAAYd,WAAW,KAAKuB,MAAhB,EAAwBsB,MAAxB,CAAZ;AACAhC,0BAAU,KAAKU,MAAf,EAAuBT,SAAvB,EAAkC,IAAlC;AACAL,8BAAc,KAAKc,MAAnB,EAA2Bc,oBAA3B;AACH;AACJ;AAvRoB,KAAzB;;AA0RA;AACA;;AAEA,aAASU,wBAAT,GAAoC;AAChC3I,aAAKqD,EAAL,CAAQ,SAAR,EAAmB,UAAUvC,CAAV,EAAa;AAC5B,gBAAIA,EAAE8H,OAAF,KAAcA,kBAAQC,MAA1B,EAAkC;AAC9BhG,6BAAaC,MAAb,CAAoB0F,qBAApB;AACA1H,kBAAEgI,cAAF;AACH;AACJ,SALD;AAMH;;AAED,aAASC,4BAAT,GAAwC;AACpC/I,aAAKqD,EAAL,CAAQ,OAAR,EAAiB,cAAjB,EAAiC,UAAUvC,CAAV,EAAa;AAC1C,gBAAI+B,aAAaC,MAAb,CAAoBuF,oBAApB,EAAJ,EAAgD;AAC5CvH,kBAAEgI,cAAF;AACH;AACJ,SAJD;AAKH;;AAED,aAASE,QAAT,CAAkBC,QAAlB,EAA4B;AACxB,YAAI,CAACA,SAASzD,MAAd,EAAsB;AAClB,mBAAO,KAAP;AACH;;AAED,YAAIqB,QAAQ5G,SAASiJ,cAAT,CAAwBD,SAAS3H,IAAT,CAAc,eAAd,CAAxB,CAAZ;AACA,eAAOuB,aAAaC,MAAb,CAAoBrC,OAApB,CAA4BoG,KAA5B,IAAqC,CAAC,CAA7C;AACH;;AAED;AACA;AACA;AACA,aAASsC,0BAAT,GAAuC;AACnCnJ,aAAKqD,EAAL,CAAQ,OAAR,EAAiB,UAAUvC,CAAV,EAAa;AAC1B,gBAAIsI,UAAU,sBAAEtI,EAAEuI,MAAJ,CAAd;AACA,gBAAID,QAAQlC,OAAR,CAAgB,cAAhB,EAAgC1B,MAApC,EAA4C;AACxC;AACH;;AAED,gBAAIyD,WAAWG,QAAQlC,OAAR,CAAgB,iBAAhB,CAAf;AACA,gBAAI5B,SAAS8D,QAAQlC,OAAR,CAAgB,YAAhB,CAAb;AACA,gBAAI,CAAC5B,OAAOE,MAAR,IAAkB,CAACwD,SAASC,QAAT,CAAvB,EAA2C;AACvCpG,6BAAaC,MAAb,CAAoB6E,OAApB;AACA;AACH;;AAED;AACA,gBAAIqB,SAASC,QAAT,CAAJ,EAAwB;AACpB;AACH;;AAED,gBAAI3D,OAAOE,MAAX,EAAmB;AACf;AACA;AACA;AACA;AACA;AACA,oBAAI+C,QAAQ1F,aAAaC,MAAb,CAAoBkF,6CAApB,CAAkE1C,MAAlE,CAAZ;;AAEA,oBAAIiD,KAAJ,EAAW;AACPpD,gCAAYoD,KAAZ,EAAmB3E,IAAnB;AACH;AACJ;AACJ,SA9BD;AA+BH;;AAED+E;AACAI;AACAI;;AAEAtG,iBAAaC,MAAb,GAAsB,IAAID,YAAJ,EAAtB;AACAsC,gBAAYmE,OAAZ,GAAsBzG,YAAtB;;AAEA,6BAAU,OAAV,EAAmBsC,WAAnB;;sBAEeA,W","file":"layer.js","sourcesContent":["'use strict';\n\nimport $ from './jquery';\nimport { dim, undim } from './blanket';\nimport FocusManager from './focus-manager';\nimport globalize from './internal/globalize';\nimport keyCode from './key-code';\nimport widget from './internal/widget';\nimport CustomEvent from './polyfills/custom-event';\n\nconst EVENT_PREFIX = '_aui-internal-layer-';\nconst GLOBAL_EVENT_PREFIX = '_aui-internal-layer-global-';\nconst LAYER_EVENT_PREFIX = 'aui-layer-';\nconst AUI_EVENT_PREFIX = 'aui-';\nvar $doc = $(document);\n\n// AUI-3708 - Abstracted to reflect code implemented upstream.\nfunction isTransitioning (el, prop) {\n var transition = window.getComputedStyle(el).transitionProperty;\n return transition ? transition.indexOf(prop) > -1 : false;\n}\n\nfunction onTransitionEnd (el, prop, func, once) {\n function handler (e) {\n if (prop !== e.propertyName) {\n return;\n }\n\n func.call(el);\n\n if (once) {\n el.removeEventListener('transitionend', handler);\n }\n }\n\n if (isTransitioning(el, prop)) {\n el.addEventListener('transitionend', handler);\n } else {\n func.call(el);\n }\n}\n\nfunction oneTransitionEnd (el, prop, func) {\n onTransitionEnd(el, prop, func, true);\n}\n// end AUI-3708\n\nfunction ariaHide ($el) {\n $el.attr('aria-hidden', 'true');\n}\n\nfunction ariaShow ($el) {\n $el.attr('aria-hidden', 'false');\n}\n\n/**\n* @return {bool} Returns false if at least one of the event handlers called .preventDefault(). Returns true otherwise.\n*/\nfunction triggerEvent ($el, deprecatedName, newNativeName) {\n var e1 = $.Event(EVENT_PREFIX + deprecatedName);\n var e2 = $.Event(GLOBAL_EVENT_PREFIX + deprecatedName);\n // TODO: Remove this 'aui-layer-' prefixed event once it is no longer used by inline dialog and dialog2.\n var nativeEvent = new CustomEvent(LAYER_EVENT_PREFIX + newNativeName, {\n bubbles: true,\n cancelable: true\n });\n var nativeEvent2 = new CustomEvent(AUI_EVENT_PREFIX + newNativeName, {\n bubbles: true,\n cancelable: true\n });\n\n $el.trigger(e1);\n $el.trigger(e2, [$el]);\n $el[0].dispatchEvent(nativeEvent);\n $el[0].dispatchEvent(nativeEvent2);\n\n return !e1.isDefaultPrevented() &&\n !e2.isDefaultPrevented() &&\n !nativeEvent.defaultPrevented &&\n !nativeEvent2.defaultPrevented;\n}\n\nfunction Layer (selector) {\n this.$el = $(selector || '<div class=\"aui-layer\" aria-hidden=\"true\"></div>');\n this.$el.addClass('aui-layer');\n}\n\nLayer.prototype = {\n /**\n * Returns the layer below the current layer if it exists.\n *\n * @returns {jQuery | undefined}\n */\n below: function () {\n return LayerManager.global.item(LayerManager.global.indexOf(this.$el) - 1);\n },\n\n /**\n * Returns the layer above the current layer if it exists.\n *\n * @returns {jQuery | undefined}\n */\n above: function () {\n return LayerManager.global.item(LayerManager.global.indexOf(this.$el) + 1);\n },\n\n /**\n * Sets the width and height of the layer.\n *\n * @param {Integer} width The width to set.\n * @param {Integer} height The height to set.\n *\n * @returns {Layer}\n */\n changeSize: function (width, height) {\n this.$el.css('width', width);\n this.$el.css('height', height === 'content' ? '' : height);\n return this;\n },\n\n /**\n * Binds a layer event.\n *\n * @param {String} event The event name to listen to.\n * @param {Function} fn The event handler.\n *\n * @returns {Layer}\n */\n on: function (event, fn) {\n this.$el.on(EVENT_PREFIX + event, fn);\n return this;\n },\n\n\n /**\n * Unbinds a layer event.\n *\n * @param {String} event The event name to unbind=.\n * @param {Function} fn Optional. The event handler.\n *\n * @returns {Layer}\n */\n off: function (event, fn) {\n this.$el.off(EVENT_PREFIX + event, fn);\n return this;\n },\n\n /**\n * Shows the layer.\n *\n * @returns {Layer}\n */\n show: function () {\n if (this.isVisible()) {\n ariaShow(this.$el);\n return this;\n }\n\n if (!triggerEvent(this.$el, 'beforeShow', 'show')) {\n return this;\n }\n\n // AUI-3708\n // Ensures that the display property is removed if it's been added\n // during hiding.\n if (this.$el.css('display') === 'none') {\n this.$el.css('display', '');\n }\n\n LayerManager.global.push(this.$el);\n\n return this;\n },\n\n /**\n * Hides the layer.\n *\n * @returns {Layer}\n */\n hide: function () {\n if (!this.isVisible()) {\n ariaHide(this.$el);\n return this;\n }\n\n if (!triggerEvent(this.$el, 'beforeHide', 'hide')) {\n return this;\n }\n\n // AUI-3708\n const thisLayer = this;\n oneTransitionEnd(this.$el.get(0), 'opacity', function () {\n if (!thisLayer.isVisible()) {\n this.style.display = 'none';\n }\n });\n\n LayerManager.global.popUntil(this.$el);\n\n return this;\n },\n\n /**\n * Checks to see if the layer is visible.\n *\n * @returns {Boolean}\n */\n isVisible: function () {\n return this.$el.attr('aria-hidden') === 'false';\n },\n\n /**\n * Removes the layer and cleans up internal state.\n *\n * @returns {undefined}\n */\n remove: function () {\n this.hide();\n this.$el.remove();\n this.$el = null;\n },\n\n /**\n * Returns whether or not the layer is blanketed.\n *\n * @returns {Boolean}\n */\n isBlanketed: function () {\n return this.$el.attr('data-aui-blanketed') === 'true';\n },\n\n /**\n * Returns whether or not the layer is persistent.\n *\n * @returns {Boolean}\n */\n isPersistent: function () {\n var modal = this.$el.attr('modal') || this.$el.attr('data-aui-modal');\n var isPersistent = this.$el[0].hasAttribute('persistent');\n\n return modal === 'true' || isPersistent;\n },\n\n _hideLayer: function (triggerBeforeEvents) {\n if (this.isPersistent() || this.isBlanketed()) {\n FocusManager.global.exit(this.$el);\n }\n\n if (triggerBeforeEvents) {\n triggerEvent(this.$el, 'beforeHide', 'hide');\n }\n\n this.$el.attr('aria-hidden', 'true');\n this.$el.css('z-index', this.$el.data('_aui-layer-cached-z-index') || '');\n this.$el.data('_aui-layer-cached-z-index', '');\n this.$el.trigger(EVENT_PREFIX + 'hide');\n this.$el.trigger(GLOBAL_EVENT_PREFIX + 'hide', [this.$el]);\n },\n\n _showLayer: function (zIndex) {\n if (!this.$el.parent().is('body')) {\n this.$el.appendTo(document.body);\n }\n\n this.$el.data('_aui-layer-cached-z-index', this.$el.css('z-index'));\n this.$el.css('z-index', zIndex);\n this.$el.attr('aria-hidden', 'false');\n\n if (this.isPersistent() || this.isBlanketed()) {\n FocusManager.global.enter(this.$el);\n }\n\n this.$el.trigger(EVENT_PREFIX + 'show');\n this.$el.trigger(GLOBAL_EVENT_PREFIX + 'show', [this.$el]);\n }\n};\n\nvar createLayer = widget('layer', Layer);\n\ncreateLayer.on = function (eventName, selector, fn) {\n $doc.on(GLOBAL_EVENT_PREFIX + eventName, selector, fn);\n return this;\n};\n\ncreateLayer.off = function (eventName, selector, fn) {\n $doc.off(GLOBAL_EVENT_PREFIX + eventName, selector, fn);\n return this;\n};\n\n\n\n// Layer Manager\n// -------------\n\n/**\n * Manages layers.\n *\n * There is a single global layer manager.\n * Additional instances can be created however this should generally only be used in tests.\n *\n * Layers are added by the push($el) method. Layers are removed by the\n * popUntil($el) method.\n *\n * popUntil's contract is that it pops all layers above & including the given\n * layer. This is used to support popping multiple layers.\n * Say we were showing a dropdown inside an inline dialog inside a dialog - we\n * have a stack of dialog layer, inline dialog layer, then dropdown layer. Calling\n * popUntil(dialog.$el) would hide all layers above & including the dialog.\n */\n\nfunction getTrigger ($layer) {\n return $('[aria-controls=\"' + $layer.attr('id') + '\"]');\n}\n\nfunction hasTrigger ($layer) {\n return getTrigger($layer).length > 0;\n}\n\nfunction topIndexWhere (layerArr, fn) {\n var i = layerArr.length;\n\n while (i--) {\n if (fn(layerArr[i])) {\n return i;\n }\n }\n\n return -1;\n}\n\nfunction layerIndex (layerArr, $el) {\n return topIndexWhere(layerArr, function ($layer) {\n return $layer[0] === $el[0];\n });\n}\n\nfunction topBlanketedIndex (layerArr) {\n return topIndexWhere(layerArr, function ($layer) {\n return createLayer($layer).isBlanketed();\n });\n}\n\nfunction nextZIndex (layerArr) {\n var _nextZIndex;\n\n if (layerArr.length) {\n var $topEl = layerArr[layerArr.length - 1];\n var zIndex = parseInt($topEl.css('z-index'), 10);\n _nextZIndex = (isNaN(zIndex) ? 0 : zIndex) + 100;\n } else {\n _nextZIndex = 0;\n }\n\n return Math.max(3000, _nextZIndex);\n}\n\nfunction updateBlanket (stack, oldBlanketIndex) {\n var newTopBlanketedIndex = topBlanketedIndex(stack);\n\n if (oldBlanketIndex !== newTopBlanketedIndex) {\n if (newTopBlanketedIndex > -1) {\n dim(false, stack[newTopBlanketedIndex].css('z-index') - 20);\n } else {\n undim();\n }\n }\n}\n\nfunction popLayers (stack, stopIndex, forceClosePersistent) {\n if (stopIndex < 0) {\n return;\n }\n\n for (var a = stack.length - 1; a >= stopIndex; a--) {\n var $layer = stack[a];\n var layer = createLayer($layer);\n\n if (forceClosePersistent || !layer.isPersistent()) {\n layer._hideLayer(true);\n stack.splice(a, 1);\n }\n }\n}\n\nfunction getParentLayer ($childLayer) {\n var $layerTrigger = getTrigger($childLayer);\n\n if ($layerTrigger.length > 0) {\n return $layerTrigger.closest('.aui-layer');\n }\n}\n\nfunction LayerManager () {\n this._stack = [];\n}\n\nLayerManager.prototype = {\n /**\n * Pushes a layer onto the stack. The same element cannot be opened as a layer multiple times - if the given\n * element is already an open layer, this method throws an exception.\n *\n * @param {HTMLElement | String | jQuery} element The element to push onto the stack.\n *\n * @returns {LayerManager}\n */\n push: function (element) {\n var $el = (element instanceof $) ? element : $(element);\n if (layerIndex(this._stack, $el) >= 0) {\n throw new Error('The given element is already an active layer.');\n }\n\n this.popLayersBeside($el);\n\n var layer = createLayer($el);\n var zIndex = nextZIndex(this._stack);\n\n layer._showLayer(zIndex);\n\n if (layer.isBlanketed()) {\n dim(false, zIndex - 20);\n }\n\n this._stack.push($el);\n\n return this;\n },\n\n popLayersBeside: function (element) {\n var $layer = (element instanceof $) ? element : $(element);\n if (!hasTrigger($layer)) {\n // We can't find this layer's trigger, we will pop all non-persistent until a blanket or the document\n var blanketedIndex = topBlanketedIndex(this._stack);\n popLayers(this._stack, ++blanketedIndex, false);\n return;\n }\n\n var $parentLayer = getParentLayer($layer);\n if ($parentLayer) {\n var parentIndex = this.indexOf($parentLayer);\n popLayers(this._stack, ++parentIndex, false);\n } else {\n popLayers(this._stack, 0, false);\n }\n\n },\n\n /**\n * Returns the index of the specified layer in the layer stack.\n *\n * @param {HTMLElement | String | jQuery} element The element to find in the stack.\n *\n * @returns {Number} the (zero-based) index of the element, or -1 if not in the stack.\n */\n indexOf: function (element) {\n return layerIndex(this._stack, $(element));\n },\n\n /**\n * Returns the item at the particular index or false.\n *\n * @param {Number} index The index of the element to get.\n *\n * @returns {jQuery | Boolean}\n */\n item: function (index) {\n return this._stack[index];\n },\n\n /**\n * Hides all layers in the stack.\n *\n * @returns {LayerManager}\n */\n hideAll: function () {\n this._stack.reverse().forEach(function (element) {\n var layer = createLayer(element);\n if (layer.isBlanketed() || layer.isPersistent()) {\n return;\n }\n layer.hide();\n });\n\n return this;\n },\n\n /**\n * Gets the previous layer below the given layer, which is non modal and non persistent. If it finds a blanketed layer on the way\n * it returns it regardless if it is modal or not\n *\n * @param {HTMLElement | String | jQuery} element layer to start the search from.\n *\n * @returns {jQuery | null} the next matching layer or null if none found.\n */\n getNextLowerNonPersistentOrBlanketedLayer: function (element) {\n var $el = (element instanceof $) ? element : $(element);\n var index = layerIndex(this._stack, $el);\n\n if (index < 0) {\n return null;\n }\n\n var $nextEl;\n index--;\n while (index >= 0) {\n $nextEl = this._stack[index];\n var layer = createLayer($nextEl);\n\n if (!layer.isPersistent() || layer.isBlanketed()) {\n return $nextEl;\n }\n index--;\n }\n\n return null;\n },\n\n /**\n * Gets the next layer which is neither modal or blanketed, from the given layer.\n *\n * @param {HTMLElement | String | jQuery} element layer to start the search from.\n *\n * @returns {jQuery | null} the next non modal non blanketed layer or null if none found.\n */\n getNextHigherNonPeristentAndNonBlanketedLayer: function (element) {\n var $el = (element instanceof $) ? element : $(element);\n var index = layerIndex(this._stack, $el);\n\n if (index < 0) {\n return null;\n }\n\n var $nextEl;\n index++;\n while (index < this._stack.length) {\n $nextEl = this._stack[index];\n var layer = createLayer($nextEl);\n\n if (!(layer.isPersistent() || layer.isBlanketed())) {\n return $nextEl;\n }\n index++;\n }\n\n return null;\n },\n\n /**\n * Removes all non-modal layers above & including the given element. If the given element is not an active layer, this method\n * is a no-op. The given element will be removed regardless of whether or not it is modal.\n *\n * @param {HTMLElement | String | jQuery} element layer to pop.\n *\n * @returns {jQuery} The last layer that was popped, or null if no layer matching the given $el was found.\n */\n popUntil: function (element) {\n var $el = (element instanceof $) ? element : $(element);\n var index = layerIndex(this._stack, $el);\n\n if (index === -1) {\n return null;\n }\n\n var oldTopBlanketedIndex = topBlanketedIndex(this._stack);\n\n // Removes all layers above the current one.\n popLayers(this._stack, index + 1, createLayer($el).isBlanketed());\n\n // Removes the current layer.\n createLayer($el)._hideLayer();\n this._stack.splice(index, 1);\n\n updateBlanket(this._stack, oldTopBlanketedIndex);\n\n return $el;\n },\n\n /**\n * Gets the top layer, if it exists.\n *\n * @returns The layer on top of the stack, if it exists, otherwise null.\n */\n getTopLayer: function () {\n if (!this._stack.length) {\n return null;\n }\n\n var $topLayer = this._stack[this._stack.length - 1];\n\n return $topLayer;\n },\n\n /**\n * Pops the top layer, if it exists and it is non modal and non persistent.\n *\n * @returns The layer that was popped, if it was popped.\n */\n popTopIfNonPersistent: function () {\n var $topLayer = this.getTopLayer();\n var layer = createLayer($topLayer);\n\n if (!$topLayer || layer.isPersistent()) {\n return null;\n }\n\n return this.popUntil($topLayer);\n },\n\n /**\n * Pops all layers above and including the top blanketed layer. If layers exist but none are blanketed, this method\n * does nothing.\n *\n * @returns The blanketed layer that was popped, if it exists, otherwise null.\n */\n popUntilTopBlanketed: function () {\n var i = topBlanketedIndex(this._stack);\n\n if (i < 0) {\n return null;\n }\n\n var $topBlanketedLayer = this._stack[i];\n var layer = createLayer($topBlanketedLayer);\n\n if (layer.isPersistent()) {\n // We can't pop the blanketed layer, only the things ontop\n var $next = this.getNextHigherNonPeristentAndNonBlanketedLayer($topBlanketedLayer);\n if ($next) {\n var stopIndex = layerIndex(this._stack, $next);\n popLayers(this._stack, stopIndex, true);\n return $next;\n }\n return null;\n }\n\n popLayers(this._stack, i, true);\n updateBlanket(this._stack, i);\n return $topBlanketedLayer;\n },\n\n /**\n * Pops all layers above and including the top persistent layer. If layers exist but none are persistent, this method\n * does nothing.\n */\n popUntilTopPersistent: function () {\n var $toPop = LayerManager.global.getTopLayer();\n if (!$toPop) {\n return;\n }\n\n var stopIndex;\n var oldTopBlanketedIndex = topBlanketedIndex(this._stack);\n\n var toPop = createLayer($toPop);\n if (toPop.isPersistent()) {\n if (toPop.isBlanketed()) {\n return;\n } else {\n // Get the closest non modal layer below, stop at the first blanketed layer though, we don't want to pop below that\n $toPop = LayerManager.global.getNextLowerNonPersistentOrBlanketedLayer($toPop);\n toPop = createLayer($toPop);\n\n if ($toPop && !toPop.isPersistent()) {\n stopIndex = layerIndex(this._stack, $toPop);\n popLayers(this._stack, stopIndex, true);\n updateBlanket(this._stack, oldTopBlanketedIndex);\n } else {\n // Here we have a blanketed persistent layer\n return;\n }\n }\n } else {\n stopIndex = layerIndex(this._stack, $toPop);\n popLayers(this._stack, stopIndex, true);\n updateBlanket(this._stack, oldTopBlanketedIndex);\n }\n }\n};\n\n// LayerManager.global\n// -------------------\n\nfunction initCloseLayerOnEscPress() {\n $doc.on('keydown', function (e) {\n if (e.keyCode === keyCode.ESCAPE) {\n LayerManager.global.popUntilTopPersistent();\n e.preventDefault();\n }\n });\n}\n\nfunction initCloseLayerOnBlanketClick() {\n $doc.on('click', '.aui-blanket', function (e) {\n if (LayerManager.global.popUntilTopBlanketed()) {\n e.preventDefault();\n }\n });\n}\n\nfunction hasLayer($trigger) {\n if (!$trigger.length) {\n return false;\n }\n\n var layer = document.getElementById($trigger.attr('aria-controls'));\n return LayerManager.global.indexOf(layer) > -1;\n}\n\n// If it's a click on a trigger, do nothing.\n// If it's a click on a layer, close all layers above.\n// Otherwise, close all layers.\nfunction initCloseLayerOnOuterClick () {\n $doc.on('click', function (e) {\n var $target = $(e.target);\n if ($target.closest('.aui-blanket').length) {\n return;\n }\n\n var $trigger = $target.closest('[aria-controls]');\n var $layer = $target.closest('.aui-layer');\n if (!$layer.length && !hasLayer($trigger)) {\n LayerManager.global.hideAll();\n return;\n }\n\n // Triggers take precedence over layers\n if (hasLayer($trigger)) {\n return;\n }\n\n if ($layer.length) {\n // We dont want to explicitly call close on a modal dialog if it happens to be next.\n // All blanketed layers should be below us, as otherwise the blanket should have caught the click.\n // We make sure we dont close a blanketed one explicitly as a hack, this is to fix the problem arising\n // from dialog2 triggers inside dialog2's having no aria controls, where the dialog2 that was just\n // opened would be closed instantly\n var $next = LayerManager.global.getNextHigherNonPeristentAndNonBlanketedLayer($layer);\n\n if ($next) {\n createLayer($next).hide();\n }\n }\n });\n}\n\ninitCloseLayerOnEscPress();\ninitCloseLayerOnBlanketClick();\ninitCloseLayerOnOuterClick();\n\nLayerManager.global = new LayerManager();\ncreateLayer.Manager = LayerManager;\n\nglobalize('layer', createLayer);\n\nexport default createLayer;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/messages.js"],"names":["deprecate","logger","DEFAULT_FADEOUT_DURATION","DEFAULT_FADEOUT_DELAY","FADEOUT_RESTORE_DURATION","MESSAGE_TEMPLATE","MESSAGE_WITHOUT_TITLE_TEMPLATE","createMessageConstructor","type","messages","context","obj","closeable","shadowed","title","toString","trim","$message","renderMessageElement","template","templateAlt","insertMessageIntoContext","insert","makeCloseable","fadeout","makeFadeout","delay","duration","message","each","$this","$closeIcons","find","$icon","length","first","addClass","append","initCloseMessageBoxOnClickAndKeypress","hasFocus","isHover","fadeOut","stop","closeMessage","resetFadeOut","fadeTo","shouldStartFadeOut","focusin","focusout","hover","setup","createMessage","unbind","on","e","target","closest","which","ENTER","SPACE","preventDefault","insertWhere","prependTo","appendTo","templateString","options","fill","body","id","test","warn","attr","fn","hasClass","trigger","remove","document","created","element","innerHTML","getAttribute","prop","extraInfo"],"mappings":"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","file":"messages.js","sourcesContent":["'use strict';\n\nimport $ from './jquery';\nimport * as deprecate from './internal/deprecation';\nimport * as logger from './internal/log';\nimport globalize from './internal/globalize';\nimport keyCode from './key-code';\nimport skate from './internal/skate';\nimport template from './template';\n\nvar DEFAULT_FADEOUT_DURATION = 500;\nvar DEFAULT_FADEOUT_DELAY = 5000;\nvar FADEOUT_RESTORE_DURATION = 100;\n\nconst MESSAGE_TEMPLATE =\n '<div class=\"aui-message aui-message-{type} {closeable} {shadowed} {fadeout}\">' +\n '<p class=\"title\">' +\n '<strong>{title}</strong>' +\n '</p>' +\n '{body}<!-- .aui-message -->' +\n '</div>';\nconst MESSAGE_WITHOUT_TITLE_TEMPLATE =\n '<div class=\"aui-message aui-message-{type} {closeable} {shadowed} {fadeout}\">' +\n '{body}<!-- .aui-message -->' +\n '</div>';\n\nfunction createMessageConstructor(type) {\n /**\n *\n * @param context\n * @param {Object} obj - message configuration\n * @param {String} [obj.id] - ID to add to the message.\n * @param {String} [obj.title] - Plain-text title of the message. If provided, will appear above the message body.\n * @param {String} obj.body - Content of the message. Can be HTML content.\n * @param {boolean} [obj.closeable] - If true, the message can be manually closed by the end-user via the UI.\n * @param {boolean} [obj.shadowed]\n * @param {boolean} [obj.fadeout]\n * @param {boolean} [obj.duration]\n * @param {boolean} [obj.delay]\n * @returns {*|HTMLElement}\n */\n messages[type] = function (context, obj) {\n if (!obj) {\n obj = context;\n context = '#aui-message-bar';\n }\n\n // Set up our template options\n obj.closeable = obj.closeable !== null && obj.closeable !== false;\n\n // shadowed no longer does anything but left in so it doesn't break\n obj.shadowed = obj.shadowed !== null && obj.shadowed !== false;\n\n let title = (obj.title || '').toString().trim();\n let $message = renderMessageElement(title ? this.template : this.templateAlt, obj, type);\n insertMessageIntoContext($message, obj.insert, context);\n\n // Attach the optional extra behaviours\n if (obj.closeable) {\n makeCloseable($message);\n }\n\n if (obj.fadeout) {\n makeFadeout($message, obj.delay, obj.duration);\n }\n\n return $message;\n };\n}\n\nfunction makeCloseable(message) {\n $(message || 'div.aui-message.closeable').each(function () {\n var $this = $(this);\n var $closeIcons = $this.find('.aui-icon.icon-close');\n var $icon = $closeIcons.length > 0 ? $closeIcons.first() : $('<span class=\"aui-icon icon-close\" role=\"button\" tabindex=\"0\"></span>');\n\n $this.addClass('closeable');\n $this.append($icon);\n\n initCloseMessageBoxOnClickAndKeypress($this);\n });\n}\n\nfunction makeFadeout(message, delay, duration) {\n delay = (typeof delay !== 'undefined') ? delay : DEFAULT_FADEOUT_DELAY;\n duration = (typeof duration !== 'undefined') ? duration : DEFAULT_FADEOUT_DURATION;\n\n $(message || 'div.aui-message.fadeout').each(function () {\n var $this = $(this);\n\n //Store the component state to avoid collisions between animations\n var hasFocus = false;\n var isHover = false;\n\n //Small functions to keep the code easier to read and avoid code duplication\n function fadeOut(){\n //Algorithm:\n //1. Stop all running animations (first arg), including any fade animation and delay\n // Do not jump to the end of the animation (second arg). This prevents the message to abruptly\n // jump to opacity:0 or opacity:1\n //2. Wait <delay> ms before starting the fadeout\n //3. Start the fadeout with a duration of <duration> ms\n //4. Close the message at the end of the animation\n $this.stop(true,false).delay(delay).fadeOut(duration, function () {\n $this.closeMessage();\n });\n }\n function resetFadeOut(){\n //Algorithm:\n //1. Stop all running animations (first arg), including any fade animation and delay\n // Do not jump to the end of the animation (second arg). This prevents the message to abruptly\n // jump to opacity:0 or opacity:1\n //2. Fast animation to opacity:1\n $this.stop(true,false).fadeTo(FADEOUT_RESTORE_DURATION, 1);\n }\n function shouldStartFadeOut(){\n return !hasFocus && !isHover;\n }\n\n //Attach handlers for user interactions (focus and hover)\n $this\n .focusin(function () {\n hasFocus = true;\n resetFadeOut();\n })\n .focusout(function () {\n hasFocus = false;\n if (shouldStartFadeOut()) {\n fadeOut();\n }\n })\n .hover(\n function () { //should be called .hoverin(), but jQuery does not implement that method\n isHover = true;\n resetFadeOut();\n },\n function () { //should be called .hoverout(), but jQuery does not implement that method\n isHover = false;\n if (shouldStartFadeOut()) {\n fadeOut();\n }\n }\n );\n\n //Initial animation\n fadeOut();\n });\n}\n\n/**\n * Utility methods to display different message types to the user.\n * Usage:\n * <pre>\n * messages.info(\"#container\", {\n * title: \"Info\",\n * body: \"You can choose to have messages without Close functionality.\",\n * closeable: false,\n * shadowed: false\n * });\n * </pre>\n */\nvar messages = {\n setup: function () {\n makeCloseable();\n makeFadeout();\n },\n makeCloseable: makeCloseable,\n makeFadeout: makeFadeout,\n template: MESSAGE_TEMPLATE,\n templateAlt: MESSAGE_WITHOUT_TITLE_TEMPLATE,\n createMessage: createMessageConstructor\n};\n\nfunction initCloseMessageBoxOnClickAndKeypress($message) {\n $message.unbind('click.aui-message').unbind('keydown.aui-message');\n\n $message.on('click.aui-message', '.aui-icon.icon-close', function (e) {\n $(e.target).closest('.aui-message').closeMessage();\n }).on('keydown.aui-message', '.aui-icon.icon-close', function (e) {\n if ((e.which === keyCode.ENTER) || (e.which === keyCode.SPACE)) {\n $(e.target).closest('.aui-message').closeMessage();\n e.preventDefault(); // this is especially important when handling the space bar, as we don't want to page down\n }\n });\n}\n\nfunction insertMessageIntoContext($message, insertWhere, context) {\n if (insertWhere === 'prepend') {\n $message.prependTo(context);\n } else {\n $message.appendTo(context);\n }\n}\n\nfunction renderMessageElement (templateString, options, type) {\n // Append the message using template\n var $message = $(template(templateString).fill({\n type: type,\n closeable: options.closeable ? 'closeable' : '',\n shadowed: options.shadowed ? 'shadowed' : '',\n fadeout: options.fadeout ? 'fadeout' : '',\n title: options.title || '',\n 'body:html': options.body || ''\n }).toString());\n\n // Add ID if supplied\n if (options.id) {\n if (/[#\\'\\\"\\.\\s]/g.test(options.id)) {\n // reject IDs that don't comply with style guide (ie. they'll break stuff)\n logger.warn('Messages error: ID rejected, must not include spaces, hashes, dots or quotes.');\n } else {\n $message.attr('id', options.id);\n }\n }\n\n return $message;\n}\n\n$.fn.closeMessage = function () {\n var $message = $(this);\n if ($message.hasClass('aui-message') && $message.hasClass('closeable')) {\n $message.stop(true); //Stop any running animation\n $message.trigger('messageClose', [this]); //messageClose event Deprecated as of 5.3\n $message.remove();\n $(document).trigger('aui-message-close', [this]); //must trigger on document since the element has been removed\n }\n};\n\ncreateMessageConstructor('generic'); //Deprecated Oct 2017\ncreateMessageConstructor('error');\ncreateMessageConstructor('warning');\ncreateMessageConstructor('info');\ncreateMessageConstructor('success');\ncreateMessageConstructor('hint'); //Deprecated Oct 2017\n\nskate('aui-message', {\n created: function (element) {\n var body = element.innerHTML;\n var type = element.getAttribute('type') || 'info';\n\n element.innerHTML = '';\n messages[type](element, {\n body: body,\n closeable: element.getAttribute('closeable'),\n delay: element.getAttribute('delay'),\n duration: element.getAttribute('duration'),\n fadeout: element.getAttribute('fadeout'),\n title: element.getAttribute('title')\n });\n }\n});\n\n$(function () {\n messages.setup();\n});\n\ndeprecate.prop(messages, 'makeCloseable', {\n extraInfo: 'Use the \"closeable\" option in the constructor instead. Docs: https://docs.atlassian.com/aui/latest/docs/messages.html'\n});\n\ndeprecate.prop(messages, 'createMessage', {\n extraInfo: 'Use the provided convenience methods instead e.g. messages.info(). Docs: https://docs.atlassian.com/aui/latest/docs/messages.html'\n});\n\ndeprecate.prop(messages, 'makeFadeout', {\n extraInfo: 'Use the \"fadeout\" option in the constructor instead. Docs: https://docs.atlassian.com/aui/latest/docs/messages.html'\n});\n\ndeprecate.prop(messages, 'generic', {\n extraInfo: 'use the messages.info() method instead. Docs: https://docs.atlassian.com/aui/latest/docs/messages.html'\n});\n\ndeprecate.prop(messages, 'hint', {\n extraInfo: 'use the messages.info() method instead. Docs: https://docs.atlassian.com/aui/latest/docs/messages.html'\n});\n\n// Exporting\n// ---------\nglobalize('messages', messages);\n\nexport default messages;\n"]}
1
+ {"version":3,"sources":["js/aui/messages.js"],"names":["deprecate","logger","DEFAULT_FADEOUT_DURATION","DEFAULT_FADEOUT_DELAY","FADEOUT_RESTORE_DURATION","MESSAGE_TEMPLATE","MESSAGE_WITHOUT_TITLE_TEMPLATE","createMessageConstructor","type","messages","context","obj","closeable","shadowed","title","toString","trim","$message","renderMessageElement","template","templateAlt","insertMessageIntoContext","insert","makeCloseable","fadeout","makeFadeout","delay","duration","message","each","$this","$closeIcons","find","$icon","length","first","addClass","append","initCloseMessageBoxOnClickAndKeypress","hasFocus","isHover","fadeOut","stop","closeMessage","resetFadeOut","fadeTo","shouldStartFadeOut","focusin","focusout","hover","setup","createMessage","unbind","on","e","target","closest","which","keyCode","ENTER","SPACE","preventDefault","insertWhere","prependTo","appendTo","templateString","options","fill","body","id","test","warn","attr","$","fn","hasClass","trigger","remove","document","created","element","innerHTML","getAttribute","prop","extraInfo"],"mappings":"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","file":"messages.js","sourcesContent":["'use strict';\n\nimport $ from './jquery';\nimport * as deprecate from './internal/deprecation';\nimport * as logger from './internal/log';\nimport globalize from './internal/globalize';\nimport keyCode from './key-code';\nimport skate from './internal/skate';\nimport template from './template';\n\nvar DEFAULT_FADEOUT_DURATION = 500;\nvar DEFAULT_FADEOUT_DELAY = 5000;\nvar FADEOUT_RESTORE_DURATION = 100;\n\nconst MESSAGE_TEMPLATE =\n '<div class=\"aui-message aui-message-{type} {closeable} {shadowed} {fadeout}\">' +\n '<p class=\"title\">' +\n '<strong>{title}</strong>' +\n '</p>' +\n '{body}<!-- .aui-message -->' +\n '</div>';\nconst MESSAGE_WITHOUT_TITLE_TEMPLATE =\n '<div class=\"aui-message aui-message-{type} {closeable} {shadowed} {fadeout}\">' +\n '{body}<!-- .aui-message -->' +\n '</div>';\n\nfunction createMessageConstructor(type) {\n /**\n *\n * @param context\n * @param {Object} obj - message configuration\n * @param {String} [obj.id] - ID to add to the message.\n * @param {String} [obj.title] - Plain-text title of the message. If provided, will appear above the message body.\n * @param {String} obj.body - Content of the message. Can be HTML content.\n * @param {boolean} [obj.closeable] - If true, the message can be manually closed by the end-user via the UI.\n * @param {boolean} [obj.shadowed]\n * @param {boolean} [obj.fadeout]\n * @param {boolean} [obj.duration]\n * @param {boolean} [obj.delay]\n * @returns {*|HTMLElement}\n */\n messages[type] = function (context, obj) {\n if (!obj) {\n obj = context;\n context = '#aui-message-bar';\n }\n\n // Set up our template options\n obj.closeable = obj.closeable !== null && obj.closeable !== false;\n\n // shadowed no longer does anything but left in so it doesn't break\n obj.shadowed = obj.shadowed !== null && obj.shadowed !== false;\n\n let title = (obj.title || '').toString().trim();\n let $message = renderMessageElement(title ? this.template : this.templateAlt, obj, type);\n insertMessageIntoContext($message, obj.insert, context);\n\n // Attach the optional extra behaviours\n if (obj.closeable) {\n makeCloseable($message);\n }\n\n if (obj.fadeout) {\n makeFadeout($message, obj.delay, obj.duration);\n }\n\n return $message;\n };\n}\n\nfunction makeCloseable(message) {\n $(message || 'div.aui-message.closeable').each(function () {\n var $this = $(this);\n var $closeIcons = $this.find('.aui-icon.icon-close');\n var $icon = $closeIcons.length > 0 ? $closeIcons.first() : $('<span class=\"aui-icon icon-close\" role=\"button\" tabindex=\"0\"></span>');\n\n $this.addClass('closeable');\n $this.append($icon);\n\n initCloseMessageBoxOnClickAndKeypress($this);\n });\n}\n\nfunction makeFadeout(message, delay, duration) {\n delay = (typeof delay !== 'undefined') ? delay : DEFAULT_FADEOUT_DELAY;\n duration = (typeof duration !== 'undefined') ? duration : DEFAULT_FADEOUT_DURATION;\n\n $(message || 'div.aui-message.fadeout').each(function () {\n var $this = $(this);\n\n //Store the component state to avoid collisions between animations\n var hasFocus = false;\n var isHover = false;\n\n //Small functions to keep the code easier to read and avoid code duplication\n function fadeOut(){\n //Algorithm:\n //1. Stop all running animations (first arg), including any fade animation and delay\n // Do not jump to the end of the animation (second arg). This prevents the message to abruptly\n // jump to opacity:0 or opacity:1\n //2. Wait <delay> ms before starting the fadeout\n //3. Start the fadeout with a duration of <duration> ms\n //4. Close the message at the end of the animation\n $this.stop(true,false).delay(delay).fadeOut(duration, function () {\n $this.closeMessage();\n });\n }\n function resetFadeOut(){\n //Algorithm:\n //1. Stop all running animations (first arg), including any fade animation and delay\n // Do not jump to the end of the animation (second arg). This prevents the message to abruptly\n // jump to opacity:0 or opacity:1\n //2. Fast animation to opacity:1\n $this.stop(true,false).fadeTo(FADEOUT_RESTORE_DURATION, 1);\n }\n function shouldStartFadeOut(){\n return !hasFocus && !isHover;\n }\n\n //Attach handlers for user interactions (focus and hover)\n $this\n .focusin(function () {\n hasFocus = true;\n resetFadeOut();\n })\n .focusout(function () {\n hasFocus = false;\n if (shouldStartFadeOut()) {\n fadeOut();\n }\n })\n .hover(\n function () { //should be called .hoverin(), but jQuery does not implement that method\n isHover = true;\n resetFadeOut();\n },\n function () { //should be called .hoverout(), but jQuery does not implement that method\n isHover = false;\n if (shouldStartFadeOut()) {\n fadeOut();\n }\n }\n );\n\n //Initial animation\n fadeOut();\n });\n}\n\n/**\n * Utility methods to display different message types to the user.\n * Usage:\n * <pre>\n * messages.info(\"#container\", {\n * title: \"Info\",\n * body: \"You can choose to have messages without Close functionality.\",\n * closeable: false,\n * shadowed: false\n * });\n * </pre>\n */\nvar messages = {\n setup: function () {\n makeCloseable();\n makeFadeout();\n },\n makeCloseable: makeCloseable,\n makeFadeout: makeFadeout,\n template: MESSAGE_TEMPLATE,\n templateAlt: MESSAGE_WITHOUT_TITLE_TEMPLATE,\n createMessage: createMessageConstructor\n};\n\nfunction initCloseMessageBoxOnClickAndKeypress($message) {\n $message.unbind('click.aui-message').unbind('keydown.aui-message');\n\n $message.on('click.aui-message', '.aui-icon.icon-close', function (e) {\n $(e.target).closest('.aui-message').closeMessage();\n }).on('keydown.aui-message', '.aui-icon.icon-close', function (e) {\n if ((e.which === keyCode.ENTER) || (e.which === keyCode.SPACE)) {\n $(e.target).closest('.aui-message').closeMessage();\n e.preventDefault(); // this is especially important when handling the space bar, as we don't want to page down\n }\n });\n}\n\nfunction insertMessageIntoContext($message, insertWhere, context) {\n if (insertWhere === 'prepend') {\n $message.prependTo(context);\n } else {\n $message.appendTo(context);\n }\n}\n\nfunction renderMessageElement (templateString, options, type) {\n // Append the message using template\n var $message = $(template(templateString).fill({\n type: type,\n closeable: options.closeable ? 'closeable' : '',\n shadowed: options.shadowed ? 'shadowed' : '',\n fadeout: options.fadeout ? 'fadeout' : '',\n title: options.title || '',\n 'body:html': options.body || ''\n }).toString());\n\n // Add ID if supplied\n if (options.id) {\n if (/[#\\'\\\"\\.\\s]/g.test(options.id)) {\n // reject IDs that don't comply with style guide (ie. they'll break stuff)\n logger.warn('Messages error: ID rejected, must not include spaces, hashes, dots or quotes.');\n } else {\n $message.attr('id', options.id);\n }\n }\n\n return $message;\n}\n\n$.fn.closeMessage = function () {\n var $message = $(this);\n if ($message.hasClass('aui-message') && $message.hasClass('closeable')) {\n $message.stop(true); //Stop any running animation\n $message.trigger('messageClose', [this]); //messageClose event Deprecated as of 5.3\n $message.remove();\n $(document).trigger('aui-message-close', [this]); //must trigger on document since the element has been removed\n }\n};\n\ncreateMessageConstructor('generic'); //Deprecated Oct 2017\ncreateMessageConstructor('error');\ncreateMessageConstructor('warning');\ncreateMessageConstructor('info');\ncreateMessageConstructor('success');\ncreateMessageConstructor('hint'); //Deprecated Oct 2017\n\nskate('aui-message', {\n created: function (element) {\n var body = element.innerHTML;\n var type = element.getAttribute('type') || 'info';\n\n element.innerHTML = '';\n messages[type](element, {\n body: body,\n closeable: element.getAttribute('closeable'),\n delay: element.getAttribute('delay'),\n duration: element.getAttribute('duration'),\n fadeout: element.getAttribute('fadeout'),\n title: element.getAttribute('title')\n });\n }\n});\n\n$(function () {\n messages.setup();\n});\n\ndeprecate.prop(messages, 'makeCloseable', {\n extraInfo: 'Use the \"closeable\" option in the constructor instead. Docs: https://docs.atlassian.com/aui/latest/docs/messages.html'\n});\n\ndeprecate.prop(messages, 'createMessage', {\n extraInfo: 'Use the provided convenience methods instead e.g. messages.info(). Docs: https://docs.atlassian.com/aui/latest/docs/messages.html'\n});\n\ndeprecate.prop(messages, 'makeFadeout', {\n extraInfo: 'Use the \"fadeout\" option in the constructor instead. Docs: https://docs.atlassian.com/aui/latest/docs/messages.html'\n});\n\ndeprecate.prop(messages, 'generic', {\n extraInfo: 'use the messages.info() method instead. Docs: https://docs.atlassian.com/aui/latest/docs/messages.html'\n});\n\ndeprecate.prop(messages, 'hint', {\n extraInfo: 'use the messages.info() method instead. Docs: https://docs.atlassian.com/aui/latest/docs/messages.html'\n});\n\n// Exporting\n// ---------\nglobalize('messages', messages);\n\nexport default messages;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/navigation.js"],"names":["Navigation","selector","$el","closest","length","map","idx","elm","data","$treeParent","parent","$subtreeToggleIcon","children","hideMoreItems","addClass","$selected","parents","add","filter","each","nav","navigationWidget","expand","find","on","siblings","toggle","prototype","isNested","isCollapsed","attr","removeClass","collapse","is","moreText","AJS","I18n","getText","limit","Math","abs","parseInt","$listElements","lessThanTwoToHide","selectedElementPresent","alreadyInitialised","append","e","preventDefault","remove","insertAfter","eq","type","CLASSNAME","attached","element","detached","removeData"],"mappings":"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","file":"navigation.js","sourcesContent":["'use strict';\n\nimport './i18n';\nimport $ from './jquery';\nimport skate from './internal/skate';\nimport globalize from './internal/globalize';\nimport widget from './internal/widget';\n\n/**\n * Navigation (\".aui-nav\" elements).\n *\n * @param {(string|HtmlElement|jQuery)} selector - An expression\n * representing a single .aui-nav element; you may also pass an expression\n * for a descendent element, in which case the closest containing\n * .aui-nav element is used.\n * @constructor\n */\nfunction Navigation (selector) {\n this.$el = $(selector).closest('.aui-nav');\n\n // If there are multiple objects, initialise them separately\n if (this.$el.length > 1) {\n return this.$el.map(function (idx, elm) {\n return new Navigation(elm);\n })[0];\n }\n\n // If already initialised, return existing object\n if (this.$el.data('aui-navigation')) {\n return this.$el.data('aui-navigation');\n }\n\n this.$el.data('aui-navigation', this);\n\n this.$treeParent = this.$el.parent('li[aria-expanded]');\n this.$subtreeToggleIcon = this.$treeParent\n .children('.aui-nav-subtree-toggle')\n .children('span.aui-icon');\n\n // Hide extra items under a 'More...' link\n this.hideMoreItems();\n\n // Add child-selected class to relevant attributes\n this.$el.children('li:has(.aui-nav-selected)').addClass('aui-nav-child-selected');\n\n // Auto-expand if child is selected\n var $selected = this.$el.children('.aui-nav-selected');\n $selected\n .parents('.aui-nav > [aria-expanded=false]')\n .add($selected.filter('[aria-expanded=false]'))\n .each(function () {\n var nav = navigationWidget($(this).children('.aui-nav'));\n nav.expand();\n });\n\n // Toggle expand on click\n this.$el.find('> li[aria-expanded] > .aui-nav-subtree-toggle').on('click', function () {\n var nav = navigationWidget($(this).siblings('.aui-nav'));\n nav.toggle();\n });\n\n return this;\n}\n\nNavigation.prototype.isNested = function () {\n return this.$treeParent.length === 1;\n};\n\nNavigation.prototype.isCollapsed = function () {\n return this.$treeParent.attr('aria-expanded') === 'false';\n};\n\nNavigation.prototype.expand = function () {\n this.$treeParent.attr('aria-expanded', 'true');\n this.$subtreeToggleIcon\n .removeClass('aui-iconfont-collapsed')\n .addClass('aui-iconfont-expanded');\n this.hideMoreItems();\n return this;\n};\n\nNavigation.prototype.collapse = function () {\n this.$treeParent.attr('aria-expanded', 'false');\n this.$subtreeToggleIcon\n .removeClass('aui-iconfont-expanded')\n .addClass('aui-iconfont-collapsed');\n return this;\n};\n\nNavigation.prototype.toggle = function () {\n if (this.isCollapsed()) {\n this.expand();\n } else {\n this.collapse();\n }\n return this;\n};\n\nNavigation.prototype.hideMoreItems = function () {\n if (this.$el.is('.aui-nav:not([aria-expanded=false]) [data-more]')) {\n var moreText = this.$el.attr('data-more') || AJS.I18n.getText('aui.words.moreitem');\n var limit = Math.abs(parseInt(this.$el.attr('data-more-limit'))) || 5;\n var $listElements = this.$el.children('li');\n\n // Only add 'More...' if there is more than one element to hide and there are no selected elements\n var lessThanTwoToHide = $listElements.length <= limit + 1;\n var selectedElementPresent = $listElements.filter('.aui-nav-selected').length;\n var alreadyInitialised = $listElements.filter('.aui-nav-more').length;\n if (lessThanTwoToHide || selectedElementPresent || alreadyInitialised) {\n return this;\n }\n\n $('<li>', {\n 'class': 'aui-nav-more',\n 'aria-hidden': 'true'\n }).append($('<a>', {\n 'href': '#',\n 'class': 'aui-nav-item',\n 'text': moreText,\n 'click': function (e) {\n e.preventDefault();\n $(this).parent().remove();\n }\n })).insertAfter($listElements.eq(limit - 1));\n }\n\n return this;\n};\n\n\nvar navigationWidget = widget('navigation', Navigation);\n\n// Initialise nav elements\nskate('aui-nav', {\n type: skate.type.CLASSNAME,\n attached: function (element) {\n new Navigation(element);\n },\n detached: function (element) {\n $(element).removeData();\n }\n});\n\nglobalize('navigation', navigationWidget);\n\nexport default navigationWidget;\n"]}
1
+ {"version":3,"sources":["js/aui/navigation.js"],"names":["Navigation","selector","$el","closest","length","map","idx","elm","data","$treeParent","parent","$subtreeToggleIcon","children","hideMoreItems","addClass","$selected","parents","add","filter","each","nav","navigationWidget","expand","find","on","siblings","toggle","prototype","isNested","isCollapsed","attr","removeClass","collapse","is","moreText","AJS","I18n","getText","limit","Math","abs","parseInt","$listElements","lessThanTwoToHide","selectedElementPresent","alreadyInitialised","append","e","preventDefault","remove","insertAfter","eq","type","skate","CLASSNAME","attached","element","detached","removeData"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;AAQA;;;;;;;;;AASA,aAASA,UAAT,CAAqBC,QAArB,EAA+B;AAC3B,aAAKC,GAAL,GAAW,sBAAED,QAAF,EAAYE,OAAZ,CAAoB,UAApB,CAAX;;AAEA;AACA,YAAI,KAAKD,GAAL,CAASE,MAAT,GAAkB,CAAtB,EAAyB;AACrB,mBAAO,KAAKF,GAAL,CAASG,GAAT,CAAa,UAAUC,GAAV,EAAeC,GAAf,EAAoB;AACpC,uBAAO,IAAIP,UAAJ,CAAeO,GAAf,CAAP;AACH,aAFM,EAEJ,CAFI,CAAP;AAGH;;AAED;AACA,YAAI,KAAKL,GAAL,CAASM,IAAT,CAAc,gBAAd,CAAJ,EAAqC;AACjC,mBAAO,KAAKN,GAAL,CAASM,IAAT,CAAc,gBAAd,CAAP;AACH;;AAED,aAAKN,GAAL,CAASM,IAAT,CAAc,gBAAd,EAAgC,IAAhC;;AAEA,aAAKC,WAAL,GAAmB,KAAKP,GAAL,CAASQ,MAAT,CAAgB,mBAAhB,CAAnB;AACA,aAAKC,kBAAL,GAA0B,KAAKF,WAAL,CACrBG,QADqB,CACZ,yBADY,EAErBA,QAFqB,CAEZ,eAFY,CAA1B;;AAIA;AACA,aAAKC,aAAL;;AAEA;AACA,aAAKX,GAAL,CAASU,QAAT,CAAkB,2BAAlB,EAA+CE,QAA/C,CAAwD,wBAAxD;;AAEA;AACA,YAAIC,YAAY,KAAKb,GAAL,CAASU,QAAT,CAAkB,mBAAlB,CAAhB;AACAG,kBACKC,OADL,CACa,kCADb,EAEKC,GAFL,CAESF,UAAUG,MAAV,CAAiB,uBAAjB,CAFT,EAGKC,IAHL,CAGU,YAAY;AACd,gBAAIC,MAAMC,iBAAiB,sBAAE,IAAF,EAAQT,QAAR,CAAiB,UAAjB,CAAjB,CAAV;AACAQ,gBAAIE,MAAJ;AACH,SANL;;AAQA;AACA,aAAKpB,GAAL,CAASqB,IAAT,CAAc,+CAAd,EAA+DC,EAA/D,CAAkE,OAAlE,EAA2E,YAAY;AACnF,gBAAIJ,MAAMC,iBAAiB,sBAAE,IAAF,EAAQI,QAAR,CAAiB,UAAjB,CAAjB,CAAV;AACAL,gBAAIM,MAAJ;AACH,SAHD;;AAKA,eAAO,IAAP;AACH;;AAED1B,eAAW2B,SAAX,CAAqBC,QAArB,GAAgC,YAAY;AACxC,eAAO,KAAKnB,WAAL,CAAiBL,MAAjB,KAA4B,CAAnC;AACH,KAFD;;AAIAJ,eAAW2B,SAAX,CAAqBE,WAArB,GAAmC,YAAY;AAC3C,eAAO,KAAKpB,WAAL,CAAiBqB,IAAjB,CAAsB,eAAtB,MAA2C,OAAlD;AACH,KAFD;;AAIA9B,eAAW2B,SAAX,CAAqBL,MAArB,GAA8B,YAAY;AACtC,aAAKb,WAAL,CAAiBqB,IAAjB,CAAsB,eAAtB,EAAuC,MAAvC;AACA,aAAKnB,kBAAL,CACKoB,WADL,CACiB,wBADjB,EAEKjB,QAFL,CAEc,uBAFd;AAGA,aAAKD,aAAL;AACA,eAAO,IAAP;AACH,KAPD;;AASAb,eAAW2B,SAAX,CAAqBK,QAArB,GAAgC,YAAY;AACxC,aAAKvB,WAAL,CAAiBqB,IAAjB,CAAsB,eAAtB,EAAuC,OAAvC;AACA,aAAKnB,kBAAL,CACKoB,WADL,CACiB,uBADjB,EAEKjB,QAFL,CAEc,wBAFd;AAGA,eAAO,IAAP;AACH,KAND;;AAQAd,eAAW2B,SAAX,CAAqBD,MAArB,GAA8B,YAAY;AACtC,YAAI,KAAKG,WAAL,EAAJ,EAAwB;AACpB,iBAAKP,MAAL;AACH,SAFD,MAEO;AACH,iBAAKU,QAAL;AACH;AACD,eAAO,IAAP;AACH,KAPD;;AASAhC,eAAW2B,SAAX,CAAqBd,aAArB,GAAqC,YAAY;AAC7C,YAAI,KAAKX,GAAL,CAAS+B,EAAT,CAAY,iDAAZ,CAAJ,EAAoE;AAChE,gBAAIC,WAAW,KAAKhC,GAAL,CAAS4B,IAAT,CAAc,WAAd,KAA8BK,IAAIC,IAAJ,CAASC,OAAT,CAAiB,oBAAjB,CAA7C;AACA,gBAAIC,QAAQC,KAAKC,GAAL,CAASC,SAAS,KAAKvC,GAAL,CAAS4B,IAAT,CAAc,iBAAd,CAAT,CAAT,KAAwD,CAApE;AACA,gBAAIY,gBAAgB,KAAKxC,GAAL,CAASU,QAAT,CAAkB,IAAlB,CAApB;;AAEA;AACA,gBAAI+B,oBAAoBD,cAActC,MAAd,IAAwBkC,QAAQ,CAAxD;AACA,gBAAIM,yBAAyBF,cAAcxB,MAAd,CAAqB,mBAArB,EAA0Cd,MAAvE;AACA,gBAAIyC,qBAAqBH,cAAcxB,MAAd,CAAqB,eAArB,EAAsCd,MAA/D;AACA,gBAAIuC,qBAAqBC,sBAArB,IAA+CC,kBAAnD,EAAuE;AACnE,uBAAO,IAAP;AACH;;AAED,kCAAE,MAAF,EAAU;AACN,yBAAS,cADH;AAEN,+BAAe;AAFT,aAAV,EAGGC,MAHH,CAGU,sBAAE,KAAF,EAAS;AACf,wBAAQ,GADO;AAEf,yBAAS,cAFM;AAGf,wBAAQZ,QAHO;AAIf,yBAAS,eAAUa,CAAV,EAAa;AAClBA,sBAAEC,cAAF;AACA,0CAAE,IAAF,EAAQtC,MAAR,GAAiBuC,MAAjB;AACH;AAPc,aAAT,CAHV,EAWIC,WAXJ,CAWgBR,cAAcS,EAAd,CAAiBb,QAAQ,CAAzB,CAXhB;AAYH;;AAED,eAAO,IAAP;AACH,KA7BD;;AAgCA,QAAIjB,mBAAmB,sBAAO,YAAP,EAAqBrB,UAArB,CAAvB;;AAEA;AACA,yBAAM,SAAN,EAAiB;AACboD,cAAMC,gBAAMD,IAAN,CAAWE,SADJ;AAEbC,kBAAU,kBAAUC,OAAV,EAAmB;AACzB,gBAAIxD,UAAJ,CAAewD,OAAf;AACH,SAJY;AAKbC,kBAAU,kBAAUD,OAAV,EAAmB;AACzB,kCAAEA,OAAF,EAAWE,UAAX;AACH;AAPY,KAAjB;;AAUA,6BAAU,YAAV,EAAwBrC,gBAAxB;;sBAEeA,gB","file":"navigation.js","sourcesContent":["'use strict';\n\nimport './i18n';\nimport $ from './jquery';\nimport skate from './internal/skate';\nimport globalize from './internal/globalize';\nimport widget from './internal/widget';\n\n/**\n * Navigation (\".aui-nav\" elements).\n *\n * @param {(string|HtmlElement|jQuery)} selector - An expression\n * representing a single .aui-nav element; you may also pass an expression\n * for a descendent element, in which case the closest containing\n * .aui-nav element is used.\n * @constructor\n */\nfunction Navigation (selector) {\n this.$el = $(selector).closest('.aui-nav');\n\n // If there are multiple objects, initialise them separately\n if (this.$el.length > 1) {\n return this.$el.map(function (idx, elm) {\n return new Navigation(elm);\n })[0];\n }\n\n // If already initialised, return existing object\n if (this.$el.data('aui-navigation')) {\n return this.$el.data('aui-navigation');\n }\n\n this.$el.data('aui-navigation', this);\n\n this.$treeParent = this.$el.parent('li[aria-expanded]');\n this.$subtreeToggleIcon = this.$treeParent\n .children('.aui-nav-subtree-toggle')\n .children('span.aui-icon');\n\n // Hide extra items under a 'More...' link\n this.hideMoreItems();\n\n // Add child-selected class to relevant attributes\n this.$el.children('li:has(.aui-nav-selected)').addClass('aui-nav-child-selected');\n\n // Auto-expand if child is selected\n var $selected = this.$el.children('.aui-nav-selected');\n $selected\n .parents('.aui-nav > [aria-expanded=false]')\n .add($selected.filter('[aria-expanded=false]'))\n .each(function () {\n var nav = navigationWidget($(this).children('.aui-nav'));\n nav.expand();\n });\n\n // Toggle expand on click\n this.$el.find('> li[aria-expanded] > .aui-nav-subtree-toggle').on('click', function () {\n var nav = navigationWidget($(this).siblings('.aui-nav'));\n nav.toggle();\n });\n\n return this;\n}\n\nNavigation.prototype.isNested = function () {\n return this.$treeParent.length === 1;\n};\n\nNavigation.prototype.isCollapsed = function () {\n return this.$treeParent.attr('aria-expanded') === 'false';\n};\n\nNavigation.prototype.expand = function () {\n this.$treeParent.attr('aria-expanded', 'true');\n this.$subtreeToggleIcon\n .removeClass('aui-iconfont-collapsed')\n .addClass('aui-iconfont-expanded');\n this.hideMoreItems();\n return this;\n};\n\nNavigation.prototype.collapse = function () {\n this.$treeParent.attr('aria-expanded', 'false');\n this.$subtreeToggleIcon\n .removeClass('aui-iconfont-expanded')\n .addClass('aui-iconfont-collapsed');\n return this;\n};\n\nNavigation.prototype.toggle = function () {\n if (this.isCollapsed()) {\n this.expand();\n } else {\n this.collapse();\n }\n return this;\n};\n\nNavigation.prototype.hideMoreItems = function () {\n if (this.$el.is('.aui-nav:not([aria-expanded=false]) [data-more]')) {\n var moreText = this.$el.attr('data-more') || AJS.I18n.getText('aui.words.moreitem');\n var limit = Math.abs(parseInt(this.$el.attr('data-more-limit'))) || 5;\n var $listElements = this.$el.children('li');\n\n // Only add 'More...' if there is more than one element to hide and there are no selected elements\n var lessThanTwoToHide = $listElements.length <= limit + 1;\n var selectedElementPresent = $listElements.filter('.aui-nav-selected').length;\n var alreadyInitialised = $listElements.filter('.aui-nav-more').length;\n if (lessThanTwoToHide || selectedElementPresent || alreadyInitialised) {\n return this;\n }\n\n $('<li>', {\n 'class': 'aui-nav-more',\n 'aria-hidden': 'true'\n }).append($('<a>', {\n 'href': '#',\n 'class': 'aui-nav-item',\n 'text': moreText,\n 'click': function (e) {\n e.preventDefault();\n $(this).parent().remove();\n }\n })).insertAfter($listElements.eq(limit - 1));\n }\n\n return this;\n};\n\n\nvar navigationWidget = widget('navigation', Navigation);\n\n// Initialise nav elements\nskate('aui-nav', {\n type: skate.type.CLASSNAME,\n attached: function (element) {\n new Navigation(element);\n },\n detached: function (element) {\n $(element).removeData();\n }\n});\n\nglobalize('navigation', navigationWidget);\n\nexport default navigationWidget;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/polyfills/placeholder.js"],"names":["document","createElement","applyDefaultText","input","value","String","trim","length","getAttribute","addClass","type","ATTRIBUTE","events","blur","focus","removeClass","created"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;AAKC,iBAAY;AACT,YAAI,iBAAiBA,SAASC,aAAT,CAAuB,OAAvB,CAArB,EAAsD;AAClD;AACH;;AAED,iBAASC,gBAAT,CAA2BC,KAA3B,EAAkC;AAC9B,gBAAIC,QAAQC,OAAOF,MAAMC,KAAb,EAAoBE,IAApB,EAAZ;AACA,gBAAI,CAACF,MAAMG,MAAX,EAAmB;AACfJ,sBAAMC,KAAN,GAAcD,MAAMK,YAAN,CAAmB,aAAnB,CAAd;AACA,sCAAEL,KAAF,EAASM,QAAT,CAAkB,uBAAlB;AACH;AACJ;;AAED,6BAAM,aAAN,EAAqB;AACjBC,kBAAM,gBAAMA,IAAN,CAAWC,SADA;AAEjBC,oBAAQ;AACJC,sBAAMX,gBADF;AAEJY,uBAAO,eAAUX,KAAV,EAAiB;AACpB,wBAAIA,MAAMC,KAAN,KAAgBD,MAAMK,YAAN,CAAmB,aAAnB,CAApB,EAAuD;AACnDL,8BAAMC,KAAN,GAAc,EAAd;AACA,8CAAED,KAAF,EAASY,WAAT,CAAqB,uBAArB;AACH;AACJ;AAPG,aAFS;AAWjBC,qBAASd;AAXQ,SAArB;AAaH,KA1BA,GAAD","file":"placeholder.js","sourcesContent":["'use strict';\n\nimport $ from '../jquery';\nimport skate from '../internal/skate';\n\n(function () {\n if ('placeholder' in document.createElement('input')) {\n return;\n }\n\n function applyDefaultText (input) {\n var value = String(input.value).trim();\n if (!value.length) {\n input.value = input.getAttribute('placeholder');\n $(input).addClass('aui-placeholder-shown');\n }\n }\n\n skate('placeholder', {\n type: skate.type.ATTRIBUTE,\n events: {\n blur: applyDefaultText,\n focus: function (input) {\n if (input.value === input.getAttribute('placeholder')) {\n input.value = '';\n $(input).removeClass('aui-placeholder-shown');\n }\n }\n },\n created: applyDefaultText\n });\n}());\n"]}
1
+ {"version":3,"sources":["js/aui/polyfills/placeholder.js"],"names":["document","createElement","applyDefaultText","input","value","String","trim","length","getAttribute","addClass","type","skate","ATTRIBUTE","events","blur","focus","removeClass","created"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;AAKC,iBAAY;AACT,YAAI,iBAAiBA,SAASC,aAAT,CAAuB,OAAvB,CAArB,EAAsD;AAClD;AACH;;AAED,iBAASC,gBAAT,CAA2BC,KAA3B,EAAkC;AAC9B,gBAAIC,QAAQC,OAAOF,MAAMC,KAAb,EAAoBE,IAApB,EAAZ;AACA,gBAAI,CAACF,MAAMG,MAAX,EAAmB;AACfJ,sBAAMC,KAAN,GAAcD,MAAMK,YAAN,CAAmB,aAAnB,CAAd;AACA,sCAAEL,KAAF,EAASM,QAAT,CAAkB,uBAAlB;AACH;AACJ;;AAED,6BAAM,aAAN,EAAqB;AACjBC,kBAAMC,gBAAMD,IAAN,CAAWE,SADA;AAEjBC,oBAAQ;AACJC,sBAAMZ,gBADF;AAEJa,uBAAO,eAAUZ,KAAV,EAAiB;AACpB,wBAAIA,MAAMC,KAAN,KAAgBD,MAAMK,YAAN,CAAmB,aAAnB,CAApB,EAAuD;AACnDL,8BAAMC,KAAN,GAAc,EAAd;AACA,8CAAED,KAAF,EAASa,WAAT,CAAqB,uBAArB;AACH;AACJ;AAPG,aAFS;AAWjBC,qBAASf;AAXQ,SAArB;AAaH,KA1BA,GAAD","file":"placeholder.js","sourcesContent":["'use strict';\n\nimport $ from '../jquery';\nimport skate from '../internal/skate';\n\n(function () {\n if ('placeholder' in document.createElement('input')) {\n return;\n }\n\n function applyDefaultText (input) {\n var value = String(input.value).trim();\n if (!value.length) {\n input.value = input.getAttribute('placeholder');\n $(input).addClass('aui-placeholder-shown');\n }\n }\n\n skate('placeholder', {\n type: skate.type.ATTRIBUTE,\n events: {\n blur: applyDefaultText,\n focus: function (input) {\n if (input.value === input.getAttribute('placeholder')) {\n input.value = '';\n $(input).removeClass('aui-placeholder-shown');\n }\n }\n },\n created: applyDefaultText\n });\n}());\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/populate-parameters.js"],"names":["populateParameters","parameters","each","value","id","title","hasClass","push","match","toLowerCase"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;AAMA,aAASA,kBAAT,CAA6BC,UAA7B,EAAyC;AACrC,YAAI,CAACA,UAAL,EAAiB;AACbA;AACH;;AAED,8BAAE,mBAAF,EAAuBC,IAAvB,CAA4B,YAAY;AACpC,gBAAIC,QAAQ,KAAKA,KAAjB;AACA,gBAAIC,KAAK,KAAKC,KAAL,IAAc,KAAKD,EAA5B;;AAEA,gBAAI,sBAAE,IAAF,EAAQE,QAAR,CAAiB,MAAjB,CAAJ,EAA8B;AAC1B,oBAAIL,WAAWG,EAAX,CAAJ,EAAoB;AAChBH,+BAAWG,EAAX,EAAeG,IAAf,CAAoBJ,KAApB;AACH,iBAFD,MAEO;AACHF,+BAAWG,EAAX,IAAiB,CAACD,KAAD,CAAjB;AACH;AACJ,aAND,MAMO;AACHF,2BAAWG,EAAX,IAAkBD,MAAMK,KAAN,CAAY,gBAAZ,IAAgCL,MAAMM,WAAN,OAAwB,MAAxD,GAAiEN,KAAnF;AACH;AACJ,SAbD;AAcH;;AAED,6BAAU,oBAAV,EAAgCH,kBAAhC;;sBAEeA,kB","file":"populate-parameters.js","sourcesContent":["'use strict';\n\nimport $ from './jquery';\nimport globalize from './internal/globalize';\nimport params from './params';\n\nfunction populateParameters (parameters) {\n if (!parameters) {\n parameters = params;\n }\n\n $('.parameters input').each(function () {\n var value = this.value;\n var id = this.title || this.id;\n\n if ($(this).hasClass('list')) {\n if (parameters[id]) {\n parameters[id].push(value);\n } else {\n parameters[id] = [value];\n }\n } else {\n parameters[id] = (value.match(/^(tru|fals)e$/i) ? value.toLowerCase() === 'true' : value);\n }\n });\n}\n\nglobalize('populateParameters', populateParameters);\n\nexport default populateParameters;\n"]}
1
+ {"version":3,"sources":["js/aui/populate-parameters.js"],"names":["populateParameters","parameters","params","each","value","id","title","hasClass","push","match","toLowerCase"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;AAMA,aAASA,kBAAT,CAA6BC,UAA7B,EAAyC;AACrC,YAAI,CAACA,UAAL,EAAiB;AACbA,yBAAaC,gBAAb;AACH;;AAED,8BAAE,mBAAF,EAAuBC,IAAvB,CAA4B,YAAY;AACpC,gBAAIC,QAAQ,KAAKA,KAAjB;AACA,gBAAIC,KAAK,KAAKC,KAAL,IAAc,KAAKD,EAA5B;;AAEA,gBAAI,sBAAE,IAAF,EAAQE,QAAR,CAAiB,MAAjB,CAAJ,EAA8B;AAC1B,oBAAIN,WAAWI,EAAX,CAAJ,EAAoB;AAChBJ,+BAAWI,EAAX,EAAeG,IAAf,CAAoBJ,KAApB;AACH,iBAFD,MAEO;AACHH,+BAAWI,EAAX,IAAiB,CAACD,KAAD,CAAjB;AACH;AACJ,aAND,MAMO;AACHH,2BAAWI,EAAX,IAAkBD,MAAMK,KAAN,CAAY,gBAAZ,IAAgCL,MAAMM,WAAN,OAAwB,MAAxD,GAAiEN,KAAnF;AACH;AACJ,SAbD;AAcH;;AAED,6BAAU,oBAAV,EAAgCJ,kBAAhC;;sBAEeA,kB","file":"populate-parameters.js","sourcesContent":["'use strict';\n\nimport $ from './jquery';\nimport globalize from './internal/globalize';\nimport params from './params';\n\nfunction populateParameters (parameters) {\n if (!parameters) {\n parameters = params;\n }\n\n $('.parameters input').each(function () {\n var value = this.value;\n var id = this.title || this.id;\n\n if ($(this).hasClass('list')) {\n if (parameters[id]) {\n parameters[id].push(value);\n } else {\n parameters[id] = [value];\n }\n } else {\n parameters[id] = (value.match(/^(tru|fals)e$/i) ? value.toLowerCase() === 'true' : value);\n }\n });\n}\n\nglobalize('populateParameters', populateParameters);\n\nexport default populateParameters;\n"]}