@atlassian/aui 7.10.2 → 7.10.4

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 (115) hide show
  1. package/changelog.md +35 -0
  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 +13 -13
  12. package/dist/aui/js/aui-datepicker.min.js +1 -1
  13. package/dist/aui/js/aui-experimental.js +275 -275
  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 +2278 -1544
  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.map +1 -1
  42. package/lib/js/aui/dialog.js.map +1 -1
  43. package/lib/js/aui/dialog2.js.map +1 -1
  44. package/lib/js/aui/drop-down.js.map +1 -1
  45. package/lib/js/aui/dropdown2.js.map +1 -1
  46. package/lib/js/aui/fancy-file-input.js.map +1 -1
  47. package/lib/js/aui/flag.js.map +1 -1
  48. package/lib/js/aui/focus-manager-global.js.map +1 -1
  49. package/lib/js/aui/focus-manager.js.map +1 -1
  50. package/lib/js/aui/form-notification.js.map +1 -1
  51. package/lib/js/aui/form-validation/basic-validators.js.map +1 -1
  52. package/lib/js/aui/form-validation/validator-register.js.map +1 -1
  53. package/lib/js/aui/form-validation.js.map +1 -1
  54. package/lib/js/aui/header-async.js.map +1 -1
  55. package/lib/js/aui/i18n.js.map +1 -1
  56. package/lib/js/aui/inline-dialog.js.map +1 -1
  57. package/lib/js/aui/inline-dialog2.js.map +1 -1
  58. package/lib/js/aui/internal/alignment.js.map +1 -1
  59. package/lib/js/aui/internal/deprecation.js.map +1 -1
  60. package/lib/js/aui/internal/globalize.js.map +1 -1
  61. package/lib/js/aui/internal/header/create-header.js.map +1 -1
  62. package/lib/js/aui/internal/select/suggestion-model.js.map +1 -1
  63. package/lib/js/aui/internal/select/suggestions-view.js.map +1 -1
  64. package/lib/js/aui/internal/skate.js.map +1 -1
  65. package/lib/js/aui/internal/widget.js.map +1 -1
  66. package/lib/js/aui/label.js.map +1 -1
  67. package/lib/js/aui/layer-manager-global.js.map +1 -1
  68. package/lib/js/aui/layer-manager.js.map +1 -1
  69. package/lib/js/aui/layer.js.map +1 -1
  70. package/lib/js/aui/messages.js.map +1 -1
  71. package/lib/js/aui/navigation.js.map +1 -1
  72. package/lib/js/aui/polyfills/placeholder.js.map +1 -1
  73. package/lib/js/aui/populate-parameters.js.map +1 -1
  74. package/lib/js/aui/progress-indicator.js.map +1 -1
  75. package/lib/js/aui/progressive-data-set.js.map +1 -1
  76. package/lib/js/aui/query-input.js.map +1 -1
  77. package/lib/js/aui/restful-table/custom-create-view.js.map +1 -1
  78. package/lib/js/aui/restful-table/custom-edit-view.js.map +1 -1
  79. package/lib/js/aui/restful-table/custom-read-view.js.map +1 -1
  80. package/lib/js/aui/restful-table/edit-row.js.map +1 -1
  81. package/lib/js/aui/restful-table/entry-model.js.map +1 -1
  82. package/lib/js/aui/restful-table/row.js.map +1 -1
  83. package/lib/js/aui/restful-table.js.map +1 -1
  84. package/lib/js/aui/result-set.js.map +1 -1
  85. package/lib/js/aui/results-list.js.map +1 -1
  86. package/lib/js/aui/select.js.map +1 -1
  87. package/lib/js/aui/select2.js.map +1 -1
  88. package/lib/js/aui/setup.js.map +1 -1
  89. package/lib/js/aui/sidebar.js.map +1 -1
  90. package/lib/js/aui/spin.js.map +1 -1
  91. package/lib/js/aui/spinner.js.map +1 -1
  92. package/lib/js/aui/tables-sortable.js.map +1 -1
  93. package/lib/js/aui/tabs.js.map +1 -1
  94. package/lib/js/aui/template.js.map +1 -1
  95. package/lib/js/aui/toggle.js.map +1 -1
  96. package/lib/js/aui/tooltip.js.map +1 -1
  97. package/lib/js/aui/trigger.js.map +1 -1
  98. package/lib/js/aui/truncating-progressive-data-set.js.map +1 -1
  99. package/lib/js/aui/unbind-text-resize.js.map +1 -1
  100. package/lib/js/aui/underscore.js.map +1 -1
  101. package/lib/js/aui/version.js +1 -1
  102. package/lib/js/aui/version.js.map +1 -1
  103. package/lib/js/aui/when-i-type.js.map +1 -1
  104. package/lib/js/aui-css-deprecations.js.map +1 -1
  105. package/lib/js-vendor/jquery/plugins/jquery.form.js +7 -1
  106. package/package.json +64 -44
  107. package/src/js-vendor/jquery/plugins/jquery.form.js +7 -1
  108. package/src/less/imports/aui-theme/core/atlaskit-theme/borders.less +1 -0
  109. package/src/less/imports/aui-theme/core/atlaskit-theme/colors.less +112 -0
  110. package/src/less/imports/aui-theme/core/atlaskit-theme/fonts.less +3 -0
  111. package/src/less/imports/aui-theme/core/colors.less +1 -1
  112. package/src/less/imports/aui-theme/core/text.less +1 -1
  113. package/yarn.lock +8354 -3893
  114. package/lib/js-vendor/underscorejs/underscore.js +0 -1287
  115. package/src/js-vendor/underscorejs/underscore.js +0 -1287
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui/when-i-type.js"],"names":["logger","isMac","navigator","platform","indexOf","isSafari","userAgent","multiCharRegex","triggerClickEvent","$el","element","window","event","bubbles","cancelable","MouseEvent","document","createEvent","initEvent","dispatchEvent","trigger","whenIType","keys","boundKeyCombos","executor","Callbacks","keypressHandler","e","current","fire","defaultPreventionHandler","preventDefault","bindKeys","keyCombos","split","trim","forEach","keyCombo","bindKeyCombo","hasUnprintables","keysArr","i","length","Array","keyComboArrayFromString","toString","eventType","push","bind","keyString","currModifiers","modifierMatch","match","multiCharMatch","substring","addShortcutsToTitle","selector","elem","title","attr","slice","existingCombos","data","shortcutInstructions","isFirst","originalTitle","shift","comboAlreadyExists","some","existingCombo","isEqual","appendKeyComboInstructions","replace","concat","removeShortcutsFromTitle","shortcuts","removeData","AJS","I18n","getText","key","makeShortcut","options","selectorsWithTitlesModified","makeMoveToFunction","getNewFocus","focusedClass","wrapAround","hasOwnProperty","escToCancel","add","$items","$focusedElem","filter","moveToOptions","undefined","transition","one","keyCode","ESCAPE","removeClass","addClass","moveTo","is","focus","find","moveToNextItem","index","eq","inArray","get","moveToPrevItem","click","goTo","location","href","followLink","nodeName","toLowerCase","execute","func","self","apply","arguments","evaluate","command","call","moveToAndClick","moveToAndFocus","$elem","or","unbind","len","fromJSON","json","switchCtrlToMetaOnMac","each","item","operation","op","param","params","Function","test","JSON","parse","error","isArray","shortcutList","map","shortcutString","newShortcut","iframe","load","target","contents","type"],"mappings":"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","file":"when-i-type.js","sourcesContent":["'use strict';\n\nimport $ from './jquery';\nimport '../jquery/jquery.hotkeys';\nimport '../jquery/jquery.moveto';\nimport * as logger from './internal/log';\nimport { popup } from './dialog';\nimport globalize from './internal/globalize';\nimport { supportsNewMouseEvent } from './internal/browser';\nimport keyCode from './key-code';\nimport _ from './underscore';\n\nvar isMac = navigator.platform.indexOf('Mac') !== -1;\nvar isSafari = navigator.userAgent.indexOf('Safari') !== -1;\nvar multiCharRegex = /^(backspace|tab|r(ight|eturn)|s(hift|pace|croll)|c(trl|apslock)|alt|pa(use|ge(up|down))|e(sc|nd)|home|left|up|d(el|own)|insert|f\\d\\d?|numlock|meta)/i;\n\n/**\n * Trigger native click event.\n * @param $el\n */\nconst triggerClickEvent = ($el) => {\n const element = $el[0];\n\n // if we find the element and Native MouseEvents are available, change it!\n if (element && 'MouseEvent' in window) {\n // Native event bubbles are compatible with Synthetic Event from React\n let event;\n const bubbles = true;\n const cancelable = true;\n if (supportsNewMouseEvent()) {\n event = new MouseEvent('click', {bubbles, cancelable});\n } else {\n // `document.createEvent` is deprecated and may be removed by some browsers in future\n // (https://developer.mozilla.org/en-US/docs/Web/API/Document/createEvent).\n // As of 2016-12-28, all browsers still support `document.createEvent`\n event = document.createEvent('MouseEvent');\n event.initEvent('click', bubbles, cancelable);\n }\n\n element.dispatchEvent(event);\n } else {\n // otherwise just use the original jquery code.\n $el.trigger('click');\n }\n};\n\n\n/**\n * Keyboard commands with syntactic sugar.\n *\n * <strong>Usage:</strong>\n * <pre>\n * whenIType(\"gh\").or(\"gd\").goTo(\"/secure/Dashboard.jspa\");\n * whenIType(\"c\").click(\"#create_link\");\n * </pre>\n *\n * @param keys - Key combinations, modifier keys are \"+\" deliminated. e.g \"ctrl+b\"\n */\nfunction whenIType (keys) {\n var boundKeyCombos = [];\n var executor = $.Callbacks();\n\n function keypressHandler(e) {\n if (!popup.current && executor) {\n executor.fire(e);\n }\n }\n\n function defaultPreventionHandler(e) {\n e.preventDefault();\n }\n\n // Bind an arbitrary set of keys by calling bindKeyCombo on each triggering key combo.\n // A string like \"abc 123\" means (a then b then c) OR (1 then 2 then 3). abc is one key combo, 123 is another.\n function bindKeys(keys) {\n var keyCombos = keys && keys.split ? $.trim(keys).split(' ') : [keys];\n\n keyCombos.forEach(function (keyCombo) {\n bindKeyCombo(keyCombo);\n });\n }\n\n function hasUnprintables(keysArr) {\n // a bit of a heuristic, but works for everything we have. Only the unprintable characters are represented with > 1-character names.\n var i = keysArr.length;\n while (i--) {\n if (keysArr[i].length > 1 && keysArr[i] !== 'space') {\n return true;\n }\n }\n return false;\n }\n\n // bind a single key combo to this handler\n // A string like \"abc 123\" means (a then b then c) OR (1 then 2 then 3). abc is one key combo, 123 is another.\n function bindKeyCombo(keyCombo) {\n var keysArr = keyCombo instanceof Array ?\n keyCombo :\n keyComboArrayFromString(keyCombo.toString());\n var eventType = hasUnprintables(keysArr) ? 'keydown' : 'keypress';\n\n boundKeyCombos.push(keysArr);\n $(document).bind(eventType, keysArr, keypressHandler);\n\n // Override browser/plugins\n $(document).bind(eventType + ' keyup', keysArr, defaultPreventionHandler);\n }\n\n // parse out an array of (modifier+key) presses from a single string\n // e.g. \"12ctrl+3\" becomes [ \"1\", \"2\", \"ctrl+3\" ]\n function keyComboArrayFromString(keyString) {\n var keysArr = [];\n var currModifiers = '';\n\n while (keyString.length) {\n var modifierMatch = keyString.match(/^(ctrl|meta|shift|alt)\\+/i);\n var multiCharMatch = keyString.match(multiCharRegex);\n\n if (modifierMatch) {\n currModifiers += modifierMatch[0];\n keyString = keyString.substring(modifierMatch[0].length);\n\n } else if (multiCharMatch) {\n keysArr.push(currModifiers + multiCharMatch[0]);\n keyString = keyString.substring(multiCharMatch[0].length);\n currModifiers = '';\n\n } else {\n keysArr.push(currModifiers + keyString[0]);\n keyString = keyString.substring(1);\n currModifiers = '';\n }\n }\n\n return keysArr;\n }\n\n function addShortcutsToTitle(selector) {\n var elem = $(selector);\n var title = elem.attr('title') || '';\n var keyCombos = boundKeyCombos.slice();\n var existingCombos = elem.data('boundKeyCombos') || [];\n var shortcutInstructions = elem.data('kbShortcutAppended') || '';\n var isFirst = !shortcutInstructions;\n var originalTitle = isFirst ? title : title.substring(0, title.length - shortcutInstructions.length);\n\n while (keyCombos.length) {\n var keyCombo = keyCombos.shift();\n var comboAlreadyExists = existingCombos.some(function(existingCombo) {\n return _.isEqual(keyCombo, existingCombo);\n });\n if (!comboAlreadyExists) {\n shortcutInstructions = appendKeyComboInstructions(keyCombo.slice(), shortcutInstructions, isFirst);\n isFirst = false;\n }\n }\n\n if (isMac) {\n shortcutInstructions = shortcutInstructions\n .replace(/Meta/ig, '\\u2318') //Apple cmd key\n .replace(/Shift/ig, '\\u21E7'); //Apple Shift symbol\n }\n\n elem.attr('title', originalTitle + shortcutInstructions);\n elem.data('kbShortcutAppended', shortcutInstructions);\n elem.data('boundKeyCombos', existingCombos.concat(boundKeyCombos));\n }\n\n function removeShortcutsFromTitle(selector) {\n var elem = $(selector);\n var shortcuts = elem.data('kbShortcutAppended');\n\n if (!shortcuts) {\n return;\n }\n\n var title = elem.attr('title');\n elem.attr('title', title.replace(shortcuts, ''));\n elem.removeData('kbShortcutAppended');\n elem.removeData('boundKeyCombos');\n }\n\n //\n function appendKeyComboInstructions(keyCombo, title, isFirst) {\n if (isFirst) {\n title += ' (' + AJS.I18n.getText('aui.keyboard.shortcut.type.x', keyCombo.shift());\n } else {\n title = title.replace(/\\)$/, '');\n title += AJS.I18n.getText('aui.keyboard.shortcut.or.x', keyCombo.shift());\n }\n\n keyCombo.forEach(function (key) {\n title += ' ' + AJS.I18n.getText('aui.keyboard.shortcut.then.x', key);\n });\n title += ')';\n\n return title;\n }\n\n bindKeys(keys);\n\n return whenIType.makeShortcut({\n executor: executor,\n bindKeys: bindKeys,\n addShortcutsToTitle: addShortcutsToTitle,\n removeShortcutsFromTitle: removeShortcutsFromTitle,\n keypressHandler: keypressHandler,\n defaultPreventionHandler: defaultPreventionHandler\n });\n}\n\nwhenIType.makeShortcut = function (options) {\n var executor = options.executor;\n var bindKeys = options.bindKeys;\n var addShortcutsToTitle = options.addShortcutsToTitle;\n var removeShortcutsFromTitle = options.removeShortcutsFromTitle;\n var keypressHandler = options.keypressHandler;\n var defaultPreventionHandler = options.defaultPreventionHandler;\n\n var selectorsWithTitlesModified = [];\n\n function makeMoveToFunction(getNewFocus) {\n return function (selector, options) {\n options = options || {};\n var focusedClass = options.focusedClass || 'focused';\n var wrapAround = options.hasOwnProperty('wrapAround') ? options.wrapAround : true;\n var escToCancel = options.hasOwnProperty('escToCancel') ? options.escToCancel : true;\n\n executor.add(function () {\n\n const $items = $(selector);\n let $focusedElem = $items.filter('.' + focusedClass);\n const moveToOptions = $focusedElem.length === 0 ? undefined : {transition: true};\n\n if (escToCancel) {\n $(document).one('keydown', function (e) {\n if (e.keyCode === keyCode.ESCAPE && $focusedElem) {\n $focusedElem.removeClass(focusedClass);\n }\n });\n }\n\n if ($focusedElem.length) {\n $focusedElem.removeClass(focusedClass);\n }\n\n $focusedElem = getNewFocus($focusedElem, $items, wrapAround);\n\n if ($focusedElem && $focusedElem.length > 0) {\n $focusedElem.addClass(focusedClass);\n $focusedElem.moveTo(moveToOptions);\n if ($focusedElem.is('a')) {\n $focusedElem.focus();\n } else {\n $focusedElem.find('a:first').focus();\n }\n }\n });\n return this;\n };\n }\n\n return {\n\n /**\n * Scrolls to and adds <em>focused</em> class to the next item in the jQuery collection\n *\n * @method moveToNextItem\n * @param selector\n * @param options\n * @return {Object}\n */\n moveToNextItem: makeMoveToFunction(function ($focusedElem, $items, wrapAround) {\n var index;\n\n if (wrapAround && $focusedElem.length === 0) {\n return $items.eq(0);\n\n } else {\n index = $.inArray($focusedElem.get(0), $items);\n if (index < $items.length - 1) {\n index = index + 1;\n return $items.eq(index);\n } else if (wrapAround) {\n return $items.eq(0);\n }\n }\n\n return $focusedElem;\n }),\n /**\n * Scrolls to and adds <em>focused</em> class to the previous item in the jQuery collection\n *\n * @method moveToPrevItem\n * @param selector\n * @param focusedClass\n * @return {Object}\n */\n moveToPrevItem: makeMoveToFunction(function ($focusedElem, $items, wrapAround) {\n var index;\n if (wrapAround && $focusedElem.length === 0) {\n return $items.filter(':last');\n\n } else {\n index = $.inArray($focusedElem.get(0), $items);\n if (index > 0) {\n index = index - 1;\n return $items.eq(index);\n } else if (wrapAround) {\n return $items.filter(':last');\n }\n }\n\n return $focusedElem;\n }),\n\n /**\n * Clicks the element specified by the <em>selector</em> argument.\n *\n * @method click\n * @param selector - jQuery selector for element\n * @return {Object}\n */\n click: function (selector) {\n selectorsWithTitlesModified.push(selector);\n addShortcutsToTitle(selector);\n\n executor.add(function () {\n const $el = $(selector);\n triggerClickEvent($el);\n });\n return this;\n },\n\n /**\n * Navigates to specified <em>location</em>\n *\n * @method goTo\n * @param {String} location - http location\n * @return {Object}\n */\n goTo: function (location) {\n executor.add(function () {\n window.location.href = location;\n });\n return this;\n },\n\n /**\n * navigates browser window to link href\n *\n * @method followLink\n * @param selector - jQuery selector for element\n * @return {Object}\n */\n followLink: function (selector) {\n selectorsWithTitlesModified.push(selector);\n addShortcutsToTitle(selector);\n\n executor.add(function () {\n var elem = $(selector)[0];\n if (elem && {'a': true, 'link': true}[ elem.nodeName.toLowerCase() ]) {\n window.location.href = elem.href;\n }\n });\n return this;\n },\n\n /**\n * Executes function\n *\n * @method execute\n * @param {function} func\n * @return {Object}\n */\n execute: function (func) {\n var self = this;\n executor.add(function () {\n func.apply(self, arguments);\n });\n return this;\n },\n\n /**\n * @deprecated This implementation is uncool. Kept around to satisfy Confluence plugin devs in the short term.\n *\n * Executes the javascript provided by the shortcut plugin point _immediately_.\n *\n * @method evaluate\n * @param {Function} command - the function provided by the shortcut key plugin point\n */\n evaluate: function (command) {\n command.call(this);\n },\n\n /**\n * Scrolls to element if out of view, then clicks it.\n *\n * @method moveToAndClick\n * @param selector - jQuery selector for element\n * @return {Object}\n */\n moveToAndClick: function (selector) {\n selectorsWithTitlesModified.push(selector);\n addShortcutsToTitle(selector);\n\n executor.add(function () {\n const $el = $(selector);\n if ($el.length > 0) {\n triggerClickEvent($el);\n $el.moveTo();\n }\n });\n return this;\n },\n\n /**\n * Scrolls to element if out of view, then focuses it\n *\n * @method moveToAndFocus\n * @param selector - jQuery selector for element\n * @return {Object}\n */\n moveToAndFocus: function (selector) {\n selectorsWithTitlesModified.push(selector);\n addShortcutsToTitle(selector);\n\n executor.add(function (e) {\n var $elem = $(selector);\n if ($elem.length > 0) {\n $elem.focus();\n if ($elem.moveTo) {\n $elem.moveTo();\n }\n if ($elem.is(':input')) {\n e.preventDefault();\n }\n }\n });\n return this;\n },\n\n /**\n * Binds additional keyboard controls\n *\n * @method or\n * @param {String} keys - keys to bind\n * @return {Object}\n */\n or: function (keys) {\n bindKeys(keys);\n return this;\n },\n\n /**\n * Unbinds shortcut keys\n *\n * @method unbind\n */\n unbind: function () {\n $(document)\n .unbind('keydown keypress', keypressHandler)\n .unbind('keydown keypress keyup', defaultPreventionHandler);\n\n for (var i = 0, len = selectorsWithTitlesModified.length; i < len; i++) {\n removeShortcutsFromTitle(selectorsWithTitlesModified[i]);\n }\n selectorsWithTitlesModified = [];\n }\n };\n};\n\n/**\n * Creates keyboard commands and their actions from json data. Format looks like:\n *\n * <pre>\n * [\n * {\n * \"keys\":[[\"g\", \"d\"]],\n * \"context\":\"global\",\n * \"op\":\"followLink\",\n * \"param\":\"#home_link\"\n * },\n * {\n * \"keys\":[[\"g\", \"i\"]],\n * \"context\":\"global\",\n * \"op\":\"followLink\",\n * \"param\":\"#find_link\"\n * },\n * {\n * \"keys\":[[\"/\"]],\n * \"context\":\"global\",\n * \"op\":\"moveToAndFocus\",\n * \"param\":\"#quickSearchInput\"\n * },\n * {\n * \"keys\":[[\"c\"]],\n * \"context\":\"global\",\n * \"op\":\"moveToAndClick\",\n * \"param\":\"#create_link\"\n * }\n * ]\n * </pre>\n *\n * @method fromJSON\n * @static\n * @param json\n */\nwhenIType.fromJSON = function (json, switchCtrlToMetaOnMac) {\n var shortcuts = [];\n\n if (json) {\n $.each(json, function (i,item) {\n const operation = item.op;\n const param = item.param;\n let params;\n\n if (operation === 'execute' || operation === 'evaluate') {\n // need to turn function string into function object\n params = [new Function(param)];\n\n } else if (/^\\[[^\\]\\[]*,[^\\]\\[]*\\]$/.test(param)) {\n // pass in an array to send multiple params\n try {\n params = JSON.parse(param);\n } catch (e) {\n logger.error('When using a parameter array, array must be in strict JSON format: ' + param);\n }\n\n if (!$.isArray(params)) {\n logger.error('Badly formatted shortcut parameter. String or JSON Array of parameters required: ' + param);\n }\n\n } else {\n params = [param];\n }\n\n $.each(item.keys, function () {\n\n var shortcutList = this;\n if (switchCtrlToMetaOnMac && isMac) {\n shortcutList = $.map(shortcutList, function (shortcutString) {\n return shortcutString.replace(/ctrl/i, 'meta');\n });\n }\n\n var newShortcut = whenIType(shortcutList);\n newShortcut[operation].apply(newShortcut, params);\n shortcuts.push(newShortcut);\n });\n\n });\n }\n\n return shortcuts;\n};\n\n// Trigger this event on an iframe if you want its keypress events to be propagated (Events to work in iframes).\n$(document).bind('iframeAppended', function (e, iframe) {\n $(iframe).load(function () {\n var target = $(iframe).contents();\n\n target.bind('keyup keydown keypress', function (e) {\n // safari propagates keypress events from iframes\n if (isSafari && e.type === 'keypress') {\n return;\n }\n\n if (!$(e.target).is(':input')) {\n $.event.trigger(\n e,\n arguments, // Preserve original event data.\n document, // Bubble this event from the iframe's document to its parent document.\n true // Use the capturing phase to preserve original event.target.\n );\n }\n });\n });\n});\n\nglobalize('whenIType', whenIType);\n\nexport default whenIType;\n"]}
1
+ {"version":3,"sources":["js/aui/when-i-type.js"],"names":["logger","isMac","navigator","platform","indexOf","isSafari","userAgent","multiCharRegex","triggerClickEvent","$el","element","window","event","bubbles","cancelable","MouseEvent","document","createEvent","initEvent","dispatchEvent","trigger","whenIType","keys","boundKeyCombos","executor","$","Callbacks","keypressHandler","e","popup","current","fire","defaultPreventionHandler","preventDefault","bindKeys","keyCombos","split","trim","forEach","keyCombo","bindKeyCombo","hasUnprintables","keysArr","i","length","Array","keyComboArrayFromString","toString","eventType","push","bind","keyString","currModifiers","modifierMatch","match","multiCharMatch","substring","addShortcutsToTitle","selector","elem","title","attr","slice","existingCombos","data","shortcutInstructions","isFirst","originalTitle","shift","comboAlreadyExists","some","existingCombo","_","isEqual","appendKeyComboInstructions","replace","concat","removeShortcutsFromTitle","shortcuts","removeData","AJS","I18n","getText","key","makeShortcut","options","selectorsWithTitlesModified","makeMoveToFunction","getNewFocus","focusedClass","wrapAround","hasOwnProperty","escToCancel","add","$items","$focusedElem","filter","moveToOptions","undefined","transition","one","keyCode","ESCAPE","removeClass","addClass","moveTo","is","focus","find","moveToNextItem","index","eq","inArray","get","moveToPrevItem","click","goTo","location","href","followLink","nodeName","toLowerCase","execute","func","self","apply","arguments","evaluate","command","call","moveToAndClick","moveToAndFocus","$elem","or","unbind","len","fromJSON","json","switchCtrlToMetaOnMac","each","item","operation","op","param","params","Function","test","JSON","parse","error","isArray","shortcutList","map","shortcutString","newShortcut","iframe","load","target","contents","type"],"mappings":"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","file":"when-i-type.js","sourcesContent":["'use strict';\n\nimport $ from './jquery';\nimport '../jquery/jquery.hotkeys';\nimport '../jquery/jquery.moveto';\nimport * as logger from './internal/log';\nimport { popup } from './dialog';\nimport globalize from './internal/globalize';\nimport { supportsNewMouseEvent } from './internal/browser';\nimport keyCode from './key-code';\nimport _ from './underscore';\n\nvar isMac = navigator.platform.indexOf('Mac') !== -1;\nvar isSafari = navigator.userAgent.indexOf('Safari') !== -1;\nvar multiCharRegex = /^(backspace|tab|r(ight|eturn)|s(hift|pace|croll)|c(trl|apslock)|alt|pa(use|ge(up|down))|e(sc|nd)|home|left|up|d(el|own)|insert|f\\d\\d?|numlock|meta)/i;\n\n/**\n * Trigger native click event.\n * @param $el\n */\nconst triggerClickEvent = ($el) => {\n const element = $el[0];\n\n // if we find the element and Native MouseEvents are available, change it!\n if (element && 'MouseEvent' in window) {\n // Native event bubbles are compatible with Synthetic Event from React\n let event;\n const bubbles = true;\n const cancelable = true;\n if (supportsNewMouseEvent()) {\n event = new MouseEvent('click', {bubbles, cancelable});\n } else {\n // `document.createEvent` is deprecated and may be removed by some browsers in future\n // (https://developer.mozilla.org/en-US/docs/Web/API/Document/createEvent).\n // As of 2016-12-28, all browsers still support `document.createEvent`\n event = document.createEvent('MouseEvent');\n event.initEvent('click', bubbles, cancelable);\n }\n\n element.dispatchEvent(event);\n } else {\n // otherwise just use the original jquery code.\n $el.trigger('click');\n }\n};\n\n\n/**\n * Keyboard commands with syntactic sugar.\n *\n * <strong>Usage:</strong>\n * <pre>\n * whenIType(\"gh\").or(\"gd\").goTo(\"/secure/Dashboard.jspa\");\n * whenIType(\"c\").click(\"#create_link\");\n * </pre>\n *\n * @param keys - Key combinations, modifier keys are \"+\" deliminated. e.g \"ctrl+b\"\n */\nfunction whenIType (keys) {\n var boundKeyCombos = [];\n var executor = $.Callbacks();\n\n function keypressHandler(e) {\n if (!popup.current && executor) {\n executor.fire(e);\n }\n }\n\n function defaultPreventionHandler(e) {\n e.preventDefault();\n }\n\n // Bind an arbitrary set of keys by calling bindKeyCombo on each triggering key combo.\n // A string like \"abc 123\" means (a then b then c) OR (1 then 2 then 3). abc is one key combo, 123 is another.\n function bindKeys(keys) {\n var keyCombos = keys && keys.split ? $.trim(keys).split(' ') : [keys];\n\n keyCombos.forEach(function (keyCombo) {\n bindKeyCombo(keyCombo);\n });\n }\n\n function hasUnprintables(keysArr) {\n // a bit of a heuristic, but works for everything we have. Only the unprintable characters are represented with > 1-character names.\n var i = keysArr.length;\n while (i--) {\n if (keysArr[i].length > 1 && keysArr[i] !== 'space') {\n return true;\n }\n }\n return false;\n }\n\n // bind a single key combo to this handler\n // A string like \"abc 123\" means (a then b then c) OR (1 then 2 then 3). abc is one key combo, 123 is another.\n function bindKeyCombo(keyCombo) {\n var keysArr = keyCombo instanceof Array ?\n keyCombo :\n keyComboArrayFromString(keyCombo.toString());\n var eventType = hasUnprintables(keysArr) ? 'keydown' : 'keypress';\n\n boundKeyCombos.push(keysArr);\n $(document).bind(eventType, keysArr, keypressHandler);\n\n // Override browser/plugins\n $(document).bind(eventType + ' keyup', keysArr, defaultPreventionHandler);\n }\n\n // parse out an array of (modifier+key) presses from a single string\n // e.g. \"12ctrl+3\" becomes [ \"1\", \"2\", \"ctrl+3\" ]\n function keyComboArrayFromString(keyString) {\n var keysArr = [];\n var currModifiers = '';\n\n while (keyString.length) {\n var modifierMatch = keyString.match(/^(ctrl|meta|shift|alt)\\+/i);\n var multiCharMatch = keyString.match(multiCharRegex);\n\n if (modifierMatch) {\n currModifiers += modifierMatch[0];\n keyString = keyString.substring(modifierMatch[0].length);\n\n } else if (multiCharMatch) {\n keysArr.push(currModifiers + multiCharMatch[0]);\n keyString = keyString.substring(multiCharMatch[0].length);\n currModifiers = '';\n\n } else {\n keysArr.push(currModifiers + keyString[0]);\n keyString = keyString.substring(1);\n currModifiers = '';\n }\n }\n\n return keysArr;\n }\n\n function addShortcutsToTitle(selector) {\n var elem = $(selector);\n var title = elem.attr('title') || '';\n var keyCombos = boundKeyCombos.slice();\n var existingCombos = elem.data('boundKeyCombos') || [];\n var shortcutInstructions = elem.data('kbShortcutAppended') || '';\n var isFirst = !shortcutInstructions;\n var originalTitle = isFirst ? title : title.substring(0, title.length - shortcutInstructions.length);\n\n while (keyCombos.length) {\n var keyCombo = keyCombos.shift();\n var comboAlreadyExists = existingCombos.some(function(existingCombo) {\n return _.isEqual(keyCombo, existingCombo);\n });\n if (!comboAlreadyExists) {\n shortcutInstructions = appendKeyComboInstructions(keyCombo.slice(), shortcutInstructions, isFirst);\n isFirst = false;\n }\n }\n\n if (isMac) {\n shortcutInstructions = shortcutInstructions\n .replace(/Meta/ig, '\\u2318') //Apple cmd key\n .replace(/Shift/ig, '\\u21E7'); //Apple Shift symbol\n }\n\n elem.attr('title', originalTitle + shortcutInstructions);\n elem.data('kbShortcutAppended', shortcutInstructions);\n elem.data('boundKeyCombos', existingCombos.concat(boundKeyCombos));\n }\n\n function removeShortcutsFromTitle(selector) {\n var elem = $(selector);\n var shortcuts = elem.data('kbShortcutAppended');\n\n if (!shortcuts) {\n return;\n }\n\n var title = elem.attr('title');\n elem.attr('title', title.replace(shortcuts, ''));\n elem.removeData('kbShortcutAppended');\n elem.removeData('boundKeyCombos');\n }\n\n //\n function appendKeyComboInstructions(keyCombo, title, isFirst) {\n if (isFirst) {\n title += ' (' + AJS.I18n.getText('aui.keyboard.shortcut.type.x', keyCombo.shift());\n } else {\n title = title.replace(/\\)$/, '');\n title += AJS.I18n.getText('aui.keyboard.shortcut.or.x', keyCombo.shift());\n }\n\n keyCombo.forEach(function (key) {\n title += ' ' + AJS.I18n.getText('aui.keyboard.shortcut.then.x', key);\n });\n title += ')';\n\n return title;\n }\n\n bindKeys(keys);\n\n return whenIType.makeShortcut({\n executor: executor,\n bindKeys: bindKeys,\n addShortcutsToTitle: addShortcutsToTitle,\n removeShortcutsFromTitle: removeShortcutsFromTitle,\n keypressHandler: keypressHandler,\n defaultPreventionHandler: defaultPreventionHandler\n });\n}\n\nwhenIType.makeShortcut = function (options) {\n var executor = options.executor;\n var bindKeys = options.bindKeys;\n var addShortcutsToTitle = options.addShortcutsToTitle;\n var removeShortcutsFromTitle = options.removeShortcutsFromTitle;\n var keypressHandler = options.keypressHandler;\n var defaultPreventionHandler = options.defaultPreventionHandler;\n\n var selectorsWithTitlesModified = [];\n\n function makeMoveToFunction(getNewFocus) {\n return function (selector, options) {\n options = options || {};\n var focusedClass = options.focusedClass || 'focused';\n var wrapAround = options.hasOwnProperty('wrapAround') ? options.wrapAround : true;\n var escToCancel = options.hasOwnProperty('escToCancel') ? options.escToCancel : true;\n\n executor.add(function () {\n\n const $items = $(selector);\n let $focusedElem = $items.filter('.' + focusedClass);\n const moveToOptions = $focusedElem.length === 0 ? undefined : {transition: true};\n\n if (escToCancel) {\n $(document).one('keydown', function (e) {\n if (e.keyCode === keyCode.ESCAPE && $focusedElem) {\n $focusedElem.removeClass(focusedClass);\n }\n });\n }\n\n if ($focusedElem.length) {\n $focusedElem.removeClass(focusedClass);\n }\n\n $focusedElem = getNewFocus($focusedElem, $items, wrapAround);\n\n if ($focusedElem && $focusedElem.length > 0) {\n $focusedElem.addClass(focusedClass);\n $focusedElem.moveTo(moveToOptions);\n if ($focusedElem.is('a')) {\n $focusedElem.focus();\n } else {\n $focusedElem.find('a:first').focus();\n }\n }\n });\n return this;\n };\n }\n\n return {\n\n /**\n * Scrolls to and adds <em>focused</em> class to the next item in the jQuery collection\n *\n * @method moveToNextItem\n * @param selector\n * @param options\n * @return {Object}\n */\n moveToNextItem: makeMoveToFunction(function ($focusedElem, $items, wrapAround) {\n var index;\n\n if (wrapAround && $focusedElem.length === 0) {\n return $items.eq(0);\n\n } else {\n index = $.inArray($focusedElem.get(0), $items);\n if (index < $items.length - 1) {\n index = index + 1;\n return $items.eq(index);\n } else if (wrapAround) {\n return $items.eq(0);\n }\n }\n\n return $focusedElem;\n }),\n /**\n * Scrolls to and adds <em>focused</em> class to the previous item in the jQuery collection\n *\n * @method moveToPrevItem\n * @param selector\n * @param focusedClass\n * @return {Object}\n */\n moveToPrevItem: makeMoveToFunction(function ($focusedElem, $items, wrapAround) {\n var index;\n if (wrapAround && $focusedElem.length === 0) {\n return $items.filter(':last');\n\n } else {\n index = $.inArray($focusedElem.get(0), $items);\n if (index > 0) {\n index = index - 1;\n return $items.eq(index);\n } else if (wrapAround) {\n return $items.filter(':last');\n }\n }\n\n return $focusedElem;\n }),\n\n /**\n * Clicks the element specified by the <em>selector</em> argument.\n *\n * @method click\n * @param selector - jQuery selector for element\n * @return {Object}\n */\n click: function (selector) {\n selectorsWithTitlesModified.push(selector);\n addShortcutsToTitle(selector);\n\n executor.add(function () {\n const $el = $(selector);\n triggerClickEvent($el);\n });\n return this;\n },\n\n /**\n * Navigates to specified <em>location</em>\n *\n * @method goTo\n * @param {String} location - http location\n * @return {Object}\n */\n goTo: function (location) {\n executor.add(function () {\n window.location.href = location;\n });\n return this;\n },\n\n /**\n * navigates browser window to link href\n *\n * @method followLink\n * @param selector - jQuery selector for element\n * @return {Object}\n */\n followLink: function (selector) {\n selectorsWithTitlesModified.push(selector);\n addShortcutsToTitle(selector);\n\n executor.add(function () {\n var elem = $(selector)[0];\n if (elem && {'a': true, 'link': true}[ elem.nodeName.toLowerCase() ]) {\n window.location.href = elem.href;\n }\n });\n return this;\n },\n\n /**\n * Executes function\n *\n * @method execute\n * @param {function} func\n * @return {Object}\n */\n execute: function (func) {\n var self = this;\n executor.add(function () {\n func.apply(self, arguments);\n });\n return this;\n },\n\n /**\n * @deprecated This implementation is uncool. Kept around to satisfy Confluence plugin devs in the short term.\n *\n * Executes the javascript provided by the shortcut plugin point _immediately_.\n *\n * @method evaluate\n * @param {Function} command - the function provided by the shortcut key plugin point\n */\n evaluate: function (command) {\n command.call(this);\n },\n\n /**\n * Scrolls to element if out of view, then clicks it.\n *\n * @method moveToAndClick\n * @param selector - jQuery selector for element\n * @return {Object}\n */\n moveToAndClick: function (selector) {\n selectorsWithTitlesModified.push(selector);\n addShortcutsToTitle(selector);\n\n executor.add(function () {\n const $el = $(selector);\n if ($el.length > 0) {\n triggerClickEvent($el);\n $el.moveTo();\n }\n });\n return this;\n },\n\n /**\n * Scrolls to element if out of view, then focuses it\n *\n * @method moveToAndFocus\n * @param selector - jQuery selector for element\n * @return {Object}\n */\n moveToAndFocus: function (selector) {\n selectorsWithTitlesModified.push(selector);\n addShortcutsToTitle(selector);\n\n executor.add(function (e) {\n var $elem = $(selector);\n if ($elem.length > 0) {\n $elem.focus();\n if ($elem.moveTo) {\n $elem.moveTo();\n }\n if ($elem.is(':input')) {\n e.preventDefault();\n }\n }\n });\n return this;\n },\n\n /**\n * Binds additional keyboard controls\n *\n * @method or\n * @param {String} keys - keys to bind\n * @return {Object}\n */\n or: function (keys) {\n bindKeys(keys);\n return this;\n },\n\n /**\n * Unbinds shortcut keys\n *\n * @method unbind\n */\n unbind: function () {\n $(document)\n .unbind('keydown keypress', keypressHandler)\n .unbind('keydown keypress keyup', defaultPreventionHandler);\n\n for (var i = 0, len = selectorsWithTitlesModified.length; i < len; i++) {\n removeShortcutsFromTitle(selectorsWithTitlesModified[i]);\n }\n selectorsWithTitlesModified = [];\n }\n };\n};\n\n/**\n * Creates keyboard commands and their actions from json data. Format looks like:\n *\n * <pre>\n * [\n * {\n * \"keys\":[[\"g\", \"d\"]],\n * \"context\":\"global\",\n * \"op\":\"followLink\",\n * \"param\":\"#home_link\"\n * },\n * {\n * \"keys\":[[\"g\", \"i\"]],\n * \"context\":\"global\",\n * \"op\":\"followLink\",\n * \"param\":\"#find_link\"\n * },\n * {\n * \"keys\":[[\"/\"]],\n * \"context\":\"global\",\n * \"op\":\"moveToAndFocus\",\n * \"param\":\"#quickSearchInput\"\n * },\n * {\n * \"keys\":[[\"c\"]],\n * \"context\":\"global\",\n * \"op\":\"moveToAndClick\",\n * \"param\":\"#create_link\"\n * }\n * ]\n * </pre>\n *\n * @method fromJSON\n * @static\n * @param json\n */\nwhenIType.fromJSON = function (json, switchCtrlToMetaOnMac) {\n var shortcuts = [];\n\n if (json) {\n $.each(json, function (i,item) {\n const operation = item.op;\n const param = item.param;\n let params;\n\n if (operation === 'execute' || operation === 'evaluate') {\n // need to turn function string into function object\n params = [new Function(param)];\n\n } else if (/^\\[[^\\]\\[]*,[^\\]\\[]*\\]$/.test(param)) {\n // pass in an array to send multiple params\n try {\n params = JSON.parse(param);\n } catch (e) {\n logger.error('When using a parameter array, array must be in strict JSON format: ' + param);\n }\n\n if (!$.isArray(params)) {\n logger.error('Badly formatted shortcut parameter. String or JSON Array of parameters required: ' + param);\n }\n\n } else {\n params = [param];\n }\n\n $.each(item.keys, function () {\n\n var shortcutList = this;\n if (switchCtrlToMetaOnMac && isMac) {\n shortcutList = $.map(shortcutList, function (shortcutString) {\n return shortcutString.replace(/ctrl/i, 'meta');\n });\n }\n\n var newShortcut = whenIType(shortcutList);\n newShortcut[operation].apply(newShortcut, params);\n shortcuts.push(newShortcut);\n });\n\n });\n }\n\n return shortcuts;\n};\n\n// Trigger this event on an iframe if you want its keypress events to be propagated (Events to work in iframes).\n$(document).bind('iframeAppended', function (e, iframe) {\n $(iframe).load(function () {\n var target = $(iframe).contents();\n\n target.bind('keyup keydown keypress', function (e) {\n // safari propagates keypress events from iframes\n if (isSafari && e.type === 'keypress') {\n return;\n }\n\n if (!$(e.target).is(':input')) {\n $.event.trigger(\n e,\n arguments, // Preserve original event data.\n document, // Bubble this event from the iframe's document to its parent document.\n true // Use the capturing phase to preserve original event.target.\n );\n }\n });\n });\n});\n\nglobalize('whenIType', whenIType);\n\nexport default whenIType;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["js/aui-css-deprecations.js"],"names":["displayName","alternativeName","removeVersion","fiveNineZero","name","Object","hasOwnProperty","call","sinceVersion","extraInfo","forEach","newName","oldName","removeInVersion"],"mappings":"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","file":"aui-css-deprecations.js","sourcesContent":["'use strict';\n\nimport { css } from './aui/internal/deprecation';\nimport amdify from './aui/internal/amdify';\nimport deprecatedAdg2Icons from './aui/internal/deprecation/deprecated-adg2-icons';\n\ncss('.aui-badge', {\n displayName: 'AUI Badges class'\n});\ncss('.aui-dropdown2-trigger.aui-style-dropdown2triggerlegacy1', {\n displayName: 'Dropdown2 legacy trigger'\n});\ncss('.aui-message span.aui-icon', {\n displayName: 'Message icon span'\n});\ncss('.aui-zebra', {\n displayName: 'Zebra table rows'\n});\ncss('.aui-nav-pagination > li.aui-nav-current', {\n alternativeName: 'aui-nav-selected'\n});\ncss('.aui-tabs.vertical-tabs', {\n displayName: 'Vertical tabs'\n});\ncss('form.aui span.content');\ncss([\n 'form.aui .button',\n 'form.aui .buttons-container'\n], {\n displayName: 'Unprefixed buttons',\n alternativeName: 'aui-button and aui-buttons'\n});\ncss([\n 'form.aui .icon-date',\n 'form.aui .icon-range',\n 'form.aui .icon-help',\n 'form.aui .icon-required',\n 'form.aui .icon-inline-help',\n 'form.aui .icon-users',\n '.aui-icon-date',\n '.aui-icon-range',\n '.aui-icon-help',\n '.aui-icon-required',\n '.aui-icon-users',\n '.aui-icon-inline-help'\n], {\n displayName: 'Form icons'\n});\ncss([\n '.aui-icon.icon-move-d',\n '.aui-icon.icon-move',\n '.aui-icon.icon-dropdown-d',\n '.aui-icon.icon-dropdown',\n '.aui-icon.icon-dropdown-active-d',\n '.aui-icon.icon-dropdown-active',\n '.aui-icon.icon-minimize-d',\n '.aui-icon.icon-minimize',\n '.aui-icon.icon-maximize-d',\n '.aui-icon.icon-maximize'\n], {\n displayName: 'Core icons'\n});\ncss([\n '.aui-message.error',\n '.aui-message.warning',\n '.aui-message.hint',\n '.aui-message.info',\n '.aui-message.success'\n], {\n displayName: 'Unprefixed message types AUI-2150'\n});\ncss([\n '.aui-dropdown2 .active',\n '.aui-dropdown2 .checked',\n '.aui-dropdown2 .disabled',\n '.aui-dropdown2 .interactive'\n], {\n displayName: 'Unprefixed dropdown2 css AUI-2150'\n});\n\ncss([\n '.aui-page-header-marketing',\n '.aui-page-header-hero'\n], {\n displayName: 'Marketing style headings',\n removeVersion: '8.0.0',\n});\n\n\n\n// 5.9.0\n// -----\n\nvar fiveNineZero = {\n // Inline Dialog\n 'arrow': 'aui-inline-dialog-arrow',\n 'contents': 'aui-inline-dialog-contents',\n\n // Messages\n 'error': 'aui-message-error',\n 'generic': 'aui-message-generic',\n 'hint': 'aui-message-hint',\n 'info': 'aui-message-info',\n 'success': 'aui-message-success',\n 'warning': 'aui-message-warning'\n};\nvar name;\n\nfor (name in fiveNineZero) {\n if (Object.hasOwnProperty.call(fiveNineZero, name)) {\n css(name, {\n alternativeName: fiveNineZero[name],\n removeVersion: '8.0.0',\n sinceVersion: '5.9.0'\n });\n }\n}\n\n// 6.1.0\n// -----\n\ncss([\n '.aui-header-logo-atlassian',\n '.aui-header-logo-aui',\n '.aui-header-logo-bamboo',\n '.aui-header-logo-bitbucket',\n '.aui-header-logo-stash',\n '.aui-header-logo-clover',\n '.aui-header-logo-confluence',\n '.aui-header-logo-crowd',\n '.aui-header-logo-crucible',\n '.aui-header-logo-fecru',\n '.aui-header-logo-fisheye',\n '.aui-header-logo-hipchat',\n '.aui-header-logo-jira',\n '.aui-header-logo-jira-core',\n '.aui-header-logo-jira-software',\n '.aui-header-logo-jira-service-desk',\n '.aui-header-logo-answer',\n '.aui-header-logo-community',\n '.aui-header-logo-developers',\n '.aui-header-logo-expert',\n '.aui-header-logo-partner-program',\n '.aui-header-logo-marketplace',\n '.aui-header-logo-support',\n '.aui-header-logo-university',\n '.aui-header-logo-cloud',\n], {\n displayName: 'Atlassian Brand Logos'\n});\n\n// 7.1.0\n// -----\n\ncss('.aui-badge', {\n displayName: 'AUI Badge CSS class',\n alternativeName: 'aui-badge',\n sinceVersion: '7.1.0',\n extraInfo: 'The badge pattern is best used as a web component instead of a CSS class'\n});\n\n// 7.5.0\n// -----\n\ncss([\n '.aui-iconfont-image-extrasmall',\n], {\n displayName: 'Special size icon names',\n sinceVersion: '7.5.0',\n extraInfo: 'The only size variant allowed for icon names is `-small`.'\n});\n\ncss('.aui-icon-dropdown', {\n displayName: 'AUI dropdown icon element',\n alternativeName: '.aui-icon-chevron-down',\n sinceVersion: '7.5.0',\n extraInfo: 'Use of an explicit element for the dropdown icon is part of a ' +\n 'deprecated markup pattern for dropdowns and should not be used. If you must ' +\n 'render an explicit icon element for a dropdown trigger, use the new ' +\n 'alternative class name.'\n});\n\n// New ADGS names for the old ADG2 icon\ndeprecatedAdg2Icons.forEach(({ newName, oldName }) => (\n css(`.aui-iconfont-${oldName}`, {\n displayName: 'ADG2 icon',\n alternativeName: `.aui-iconfont-${newName}`,\n sinceVersion: '7.5.0',\n removeVersion: '8.0.0',\n extraInfo: 'Use the new ADGS icon CSS class name'\n })\n));\n\n// 7.8.0\ncss('.aui-table-interactive', {\n alternativeName: '.aui-table-list',\n sinceVersion: '7.8.0',\n removeInVersion: '8.0.0',\n extraInfo: 'The \"interactive\" suffix caused some confusion when contrasted with sortable tables.' +\n 'The name has been updated to reflect its intended purpose: displaying lists of data in a tabular format.'\n});\n\n// 7.9.4\ncss('aui-spinner[filled]', {\n sinceVersion: '7.9.4',\n removeInVersion: '9',\n extraInfo: `Add CSS to the parent element of the <aui-spinner>.\nUse CSS flexbox or grid to vertically align it.\nSee https://css-tricks.com/centering-css-complete-guide/ for techniques.`\n});\n\n// Export the warnings\namdify('aui/css-deprecation-warnings');\n"]}
1
+ {"version":3,"sources":["js/aui-css-deprecations.js"],"names":["displayName","alternativeName","removeVersion","fiveNineZero","name","Object","hasOwnProperty","call","sinceVersion","extraInfo","deprecatedAdg2Icons","forEach","newName","oldName","removeInVersion"],"mappings":"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","file":"aui-css-deprecations.js","sourcesContent":["'use strict';\n\nimport { css } from './aui/internal/deprecation';\nimport amdify from './aui/internal/amdify';\nimport deprecatedAdg2Icons from './aui/internal/deprecation/deprecated-adg2-icons';\n\ncss('.aui-badge', {\n displayName: 'AUI Badges class'\n});\ncss('.aui-dropdown2-trigger.aui-style-dropdown2triggerlegacy1', {\n displayName: 'Dropdown2 legacy trigger'\n});\ncss('.aui-message span.aui-icon', {\n displayName: 'Message icon span'\n});\ncss('.aui-zebra', {\n displayName: 'Zebra table rows'\n});\ncss('.aui-nav-pagination > li.aui-nav-current', {\n alternativeName: 'aui-nav-selected'\n});\ncss('.aui-tabs.vertical-tabs', {\n displayName: 'Vertical tabs'\n});\ncss('form.aui span.content');\ncss([\n 'form.aui .button',\n 'form.aui .buttons-container'\n], {\n displayName: 'Unprefixed buttons',\n alternativeName: 'aui-button and aui-buttons'\n});\ncss([\n 'form.aui .icon-date',\n 'form.aui .icon-range',\n 'form.aui .icon-help',\n 'form.aui .icon-required',\n 'form.aui .icon-inline-help',\n 'form.aui .icon-users',\n '.aui-icon-date',\n '.aui-icon-range',\n '.aui-icon-help',\n '.aui-icon-required',\n '.aui-icon-users',\n '.aui-icon-inline-help'\n], {\n displayName: 'Form icons'\n});\ncss([\n '.aui-icon.icon-move-d',\n '.aui-icon.icon-move',\n '.aui-icon.icon-dropdown-d',\n '.aui-icon.icon-dropdown',\n '.aui-icon.icon-dropdown-active-d',\n '.aui-icon.icon-dropdown-active',\n '.aui-icon.icon-minimize-d',\n '.aui-icon.icon-minimize',\n '.aui-icon.icon-maximize-d',\n '.aui-icon.icon-maximize'\n], {\n displayName: 'Core icons'\n});\ncss([\n '.aui-message.error',\n '.aui-message.warning',\n '.aui-message.hint',\n '.aui-message.info',\n '.aui-message.success'\n], {\n displayName: 'Unprefixed message types AUI-2150'\n});\ncss([\n '.aui-dropdown2 .active',\n '.aui-dropdown2 .checked',\n '.aui-dropdown2 .disabled',\n '.aui-dropdown2 .interactive'\n], {\n displayName: 'Unprefixed dropdown2 css AUI-2150'\n});\n\ncss([\n '.aui-page-header-marketing',\n '.aui-page-header-hero'\n], {\n displayName: 'Marketing style headings',\n removeVersion: '8.0.0',\n});\n\n\n\n// 5.9.0\n// -----\n\nvar fiveNineZero = {\n // Inline Dialog\n 'arrow': 'aui-inline-dialog-arrow',\n 'contents': 'aui-inline-dialog-contents',\n\n // Messages\n 'error': 'aui-message-error',\n 'generic': 'aui-message-generic',\n 'hint': 'aui-message-hint',\n 'info': 'aui-message-info',\n 'success': 'aui-message-success',\n 'warning': 'aui-message-warning'\n};\nvar name;\n\nfor (name in fiveNineZero) {\n if (Object.hasOwnProperty.call(fiveNineZero, name)) {\n css(name, {\n alternativeName: fiveNineZero[name],\n removeVersion: '8.0.0',\n sinceVersion: '5.9.0'\n });\n }\n}\n\n// 6.1.0\n// -----\n\ncss([\n '.aui-header-logo-atlassian',\n '.aui-header-logo-aui',\n '.aui-header-logo-bamboo',\n '.aui-header-logo-bitbucket',\n '.aui-header-logo-stash',\n '.aui-header-logo-clover',\n '.aui-header-logo-confluence',\n '.aui-header-logo-crowd',\n '.aui-header-logo-crucible',\n '.aui-header-logo-fecru',\n '.aui-header-logo-fisheye',\n '.aui-header-logo-hipchat',\n '.aui-header-logo-jira',\n '.aui-header-logo-jira-core',\n '.aui-header-logo-jira-software',\n '.aui-header-logo-jira-service-desk',\n '.aui-header-logo-answer',\n '.aui-header-logo-community',\n '.aui-header-logo-developers',\n '.aui-header-logo-expert',\n '.aui-header-logo-partner-program',\n '.aui-header-logo-marketplace',\n '.aui-header-logo-support',\n '.aui-header-logo-university',\n '.aui-header-logo-cloud',\n], {\n displayName: 'Atlassian Brand Logos'\n});\n\n// 7.1.0\n// -----\n\ncss('.aui-badge', {\n displayName: 'AUI Badge CSS class',\n alternativeName: 'aui-badge',\n sinceVersion: '7.1.0',\n extraInfo: 'The badge pattern is best used as a web component instead of a CSS class'\n});\n\n// 7.5.0\n// -----\n\ncss([\n '.aui-iconfont-image-extrasmall',\n], {\n displayName: 'Special size icon names',\n sinceVersion: '7.5.0',\n extraInfo: 'The only size variant allowed for icon names is `-small`.'\n});\n\ncss('.aui-icon-dropdown', {\n displayName: 'AUI dropdown icon element',\n alternativeName: '.aui-icon-chevron-down',\n sinceVersion: '7.5.0',\n extraInfo: 'Use of an explicit element for the dropdown icon is part of a ' +\n 'deprecated markup pattern for dropdowns and should not be used. If you must ' +\n 'render an explicit icon element for a dropdown trigger, use the new ' +\n 'alternative class name.'\n});\n\n// New ADGS names for the old ADG2 icon\ndeprecatedAdg2Icons.forEach(({ newName, oldName }) => (\n css(`.aui-iconfont-${oldName}`, {\n displayName: 'ADG2 icon',\n alternativeName: `.aui-iconfont-${newName}`,\n sinceVersion: '7.5.0',\n removeVersion: '8.0.0',\n extraInfo: 'Use the new ADGS icon CSS class name'\n })\n));\n\n// 7.8.0\ncss('.aui-table-interactive', {\n alternativeName: '.aui-table-list',\n sinceVersion: '7.8.0',\n removeInVersion: '8.0.0',\n extraInfo: 'The \"interactive\" suffix caused some confusion when contrasted with sortable tables.' +\n 'The name has been updated to reflect its intended purpose: displaying lists of data in a tabular format.'\n});\n\n// 7.9.4\ncss('aui-spinner[filled]', {\n sinceVersion: '7.9.4',\n removeInVersion: '9',\n extraInfo: `Add CSS to the parent element of the <aui-spinner>.\nUse CSS flexbox or grid to vertically align it.\nSee https://css-tricks.com/centering-css-complete-guide/ for techniques.`\n});\n\n// Export the warnings\namdify('aui/css-deprecation-warnings');\n"]}
@@ -136,6 +136,9 @@ $.fn.ajaxSubmit = function(options) {
136
136
  var oldSuccess = options.success || function(){};
137
137
  callbacks.push(function(data) {
138
138
  var fn = options.replaceTarget ? 'replaceWith' : 'html';
139
+ // Validate `data` through `HTML encoding` when passed `data` is passed
140
+ // to `html()`, as suggested in https://github.com/jquery-form/form/issues/464
141
+ fn == 'html' ? data = $.parseHTML($("<div>").text(data).html()) : '';
139
142
  $(options.target)[fn](data).each(oldSuccess, arguments);
140
143
  });
141
144
  }
@@ -428,7 +431,10 @@ $.fn.ajaxSubmit = function(options) {
428
431
  return (doc && doc.documentElement && doc.documentElement.nodeName != 'parsererror') ? doc : null;
429
432
  };
430
433
  var parseJSON = $.parseJSON || function(s) {
431
- return window['eval']('(' + s + ')');
434
+ // Arise an error resolvable including jquery instead of
435
+ // making a new function using unsanitized inputs
436
+ window.console.error('jquery.parseJSON is undefined');
437
+ return null;
432
438
  };
433
439
 
434
440
  var httpData = function( xhr, type, s ) { // mostly lifted from jq1.4.4
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@atlassian/aui",
3
3
  "description": "Atlassian User Interface Framework",
4
- "version": "7.10.2",
4
+ "version": "7.10.4",
5
5
  "author": "Atlassian Pty Ltd.",
6
6
  "homepage": "https://docs.atlassian.com/aui/latest/",
7
7
  "license": "SEE LICENSE IN LICENSE.md",
@@ -35,12 +35,11 @@
35
35
  "skatejs-template-html": "0.0.0",
36
36
  "tether": "atlassian/tether#amd-with-global",
37
37
  "trim-extra-html-whitespace": "1.3.0",
38
- "underscore": "1.6.0",
38
+ "underscore": "1.13.1",
39
39
  "webcomponents.js": "0.7.20",
40
- "yarn-version-bump": "0.0.3"
40
+ "yarn-version-bump": "0.0.4"
41
41
  },
42
42
  "devDependencies": {
43
- "@atlaskit/util-shared-styles": "2.10.4",
44
43
  "@atlassian/atlassian-soy-loader": "2.1.1",
45
44
  "@atlassian/eslint-config-atlassian-fecq": "*",
46
45
  "@atlassian/soy-template-plugin-js": "4.3.0",
@@ -59,69 +58,66 @@
59
58
  "eslint-plugin-mocha": "4.11.0",
60
59
  "extract-text-webpack-plugin": "^3.0.2",
61
60
  "file-loader": "1.1.5",
62
- "galvatron": "treshugart/galvatron#2e399eb",
61
+ "galvatron": "treshugart/galvatron#d140aeb",
63
62
  "glob": "7.1.2",
64
- "gulp": "gulpjs/gulp#4ed9a4a32755",
63
+ "gulp": "4.0.2",
65
64
  "gulp-auto-task": "treshugart/gulp-auto-task#f58bcb5",
66
65
  "gulp-babel": "7.0.0",
67
66
  "gulp-batch": "1.0.5",
68
- "gulp-cli": "1.4.0",
69
- "gulp-clone": "1.0.0",
67
+ "gulp-cli": "2.3.0",
68
+ "gulp-clone": "2.0.1",
70
69
  "gulp-concat": "2.6.1",
71
70
  "gulp-cssnano": "2.1.3",
72
- "gulp-debug": "3.1.0",
73
- "gulp-dedupe": "0.0.2",
74
- "gulp-eslint": "4.0.0",
75
- "gulp-filter": "5.0.1",
76
- "gulp-header": "1.8.9",
77
- "gulp-if": "2.0.2",
78
- "gulp-less": "3.3.2",
71
+ "gulp-debug": "4.0.0",
72
+ "gulp-eslint": "6.0.0",
73
+ "gulp-filter": "6.0.0",
74
+ "gulp-header": "2.0.9",
75
+ "gulp-if": "3.0.0",
76
+ "gulp-less": "4.0.1",
79
77
  "gulp-native2ascii": "0.0.3",
80
- "gulp-rename": "1.2.2",
81
- "gulp-replace": "^0.6.1",
82
- "gulp-sourcemaps": "2.6.1",
83
- "gulp-tap": "1.0.1",
84
- "gulp-uglify": "3.0.0",
85
- "gulp-watch": "4.3.11",
86
- "gulp-watch-less": "treshugart/gulp-watch-less#b647b49",
78
+ "gulp-rename": "2.0.0",
79
+ "gulp-sourcemaps": "3.0.0",
80
+ "gulp-tap": "2.0.0",
81
+ "gulp-uglify": "3.0.2",
82
+ "gulp-watch": "5.0.1",
83
+ "gulp-watch-less": "1.0.1",
87
84
  "gulp-webserver": "0.9.1",
88
- "gulp-zip": "4.0.0",
85
+ "gulp-zip": "5.1.0",
89
86
  "jquery": "2.2.0",
90
87
  "jquery-migrate": "1.4.1",
91
88
  "jstransformer-handlebars": "^1.1.0",
92
- "karma": "1.7.1",
93
- "karma-chrome-launcher": "2.2.0",
94
- "karma-coverage": "1.1.1",
95
- "karma-firefox-launcher": "1.0.1",
96
- "karma-junit-reporter": "1.2.0",
89
+ "karma": "6.2.0",
90
+ "karma-chrome-launcher": "3.1.0",
91
+ "karma-coverage": "2.0.3",
92
+ "karma-firefox-launcher": "2.1.0",
93
+ "karma-junit-reporter": "2.0.1",
97
94
  "karma-less-preprocessor": "0.3.3",
98
- "karma-mocha": "1.3.0",
95
+ "karma-mocha": "2.0.1",
99
96
  "karma-safari-launcher": "1.0.0",
100
- "karma-sauce-launcher": "1.2.0",
101
- "karma-sinon-chai": "1.2.0",
102
- "karma-spec-reporter": "0.0.31",
97
+ "karma-sauce-launcher": "4.3.6",
98
+ "karma-sinon-chai": "2.0.2",
99
+ "karma-spec-reporter": "0.0.32",
103
100
  "lazypipe": "1.0.1",
104
101
  "less": "^2.7.3",
105
102
  "less-loader": "^4.0.5",
106
- "less-plugin-npm-import": "2.1.0",
107
103
  "lolex": "1.4.0",
108
104
  "map-stream": "0.0.7",
109
105
  "md5": "2.2.1",
110
106
  "merge-stream": "1.0.1",
111
107
  "metalsmith": "2.3.0",
112
- "metalsmith-define": "^2.0.1",
113
- "metalsmith-discover-helpers": "^0.1.0",
114
- "metalsmith-discover-partials": "^0.1.0",
115
- "metalsmith-in-place": "^4.1.1",
116
- "metalsmith-layouts": "1.8.1",
117
- "metalsmith-markdown": "0.2.1",
118
- "metalsmith-rootpath": "^1.0.4",
108
+ "metalsmith-define": "2.1.3",
109
+ "metalsmith-discover-helpers": "0.1.1",
110
+ "metalsmith-discover-partials": "0.1.2",
111
+ "metalsmith-in-place": "4.4.2",
112
+ "metalsmith-layouts": "2.3.1",
113
+ "metalsmith-markdown": "1.3.0",
114
+ "metalsmith-rootpath": "1.0.4",
119
115
  "mime": "2.0.3",
120
116
  "minimatch": "3.0.4",
121
- "mkdirp": "0.5.1",
122
- "mocha": "2.4.5",
123
- "multimatch": "2.1.0",
124
- "phantomcss": "^1.1.5",
117
+ "mkdirp": "1.0.4",
118
+ "mocha": "8.3.2",
119
+ "multimatch": "5.0.0",
120
+ "phantomcss": "^1.6.0",
125
121
  "pre-commit": "1.2.2",
126
122
  "request": "2.83.0",
127
123
  "sandy": "0.6.1",
@@ -136,6 +132,30 @@
136
132
  "webpack": "3.10.0",
137
133
  "webpack-merge": "4.1.1"
138
134
  },
135
+ "resolutions": {
136
+ "cryptiles": "4.1.3",
137
+ "cssnano": "4.1.0",
138
+ "gulp-auto-task/**/glob": "5.0.15",
139
+ "gulp": "4.0.2",
140
+ "gulp-filter": "6.0.0",
141
+ "gulp-watch": "5.0.1",
142
+ "gulp-webserver/**/tiny-lr": "2.0.0",
143
+ "less/**/hoek": "4.2.1",
144
+ "micromatch": "4.0.2",
145
+ "open": "8.0.2",
146
+ "uglifyjs-webpack-plugin/**/serialize-javascript": "3.1.0",
147
+ "webfonts-generator/**/xmldom": "0.5.0",
148
+ "webpack/**/yargs": "11.1.1",
149
+ "yargs-parser": "20.2.7",
150
+ "**/ansi-regex": "5.0.1",
151
+ "**/tar": "4.4.18",
152
+ "**/dateformat/**/trim-newlines": "3.0.1",
153
+ "**/unset-value": "2.0.1",
154
+ "**/jsprim/json-schema": "0.4.0",
155
+ "**/resemblejs/**/simple-get": "3.1.1",
156
+ "**/metalsmith-markdown/**/marked": "4.0.12",
157
+ "**/async": "3.2.2"
158
+ },
139
159
  "repository": {
140
160
  "type": "git",
141
161
  "url": "https://bitbucket.org/atlassian/aui"
@@ -136,6 +136,9 @@ $.fn.ajaxSubmit = function(options) {
136
136
  var oldSuccess = options.success || function(){};
137
137
  callbacks.push(function(data) {
138
138
  var fn = options.replaceTarget ? 'replaceWith' : 'html';
139
+ // Validate `data` through `HTML encoding` when passed `data` is passed
140
+ // to `html()`, as suggested in https://github.com/jquery-form/form/issues/464
141
+ fn == 'html' ? data = $.parseHTML($("<div>").text(data).html()) : '';
139
142
  $(options.target)[fn](data).each(oldSuccess, arguments);
140
143
  });
141
144
  }
@@ -428,7 +431,10 @@ $.fn.ajaxSubmit = function(options) {
428
431
  return (doc && doc.documentElement && doc.documentElement.nodeName != 'parsererror') ? doc : null;
429
432
  };
430
433
  var parseJSON = $.parseJSON || function(s) {
431
- return window['eval']('(' + s + ')');
434
+ // Arise an error resolvable including jquery instead of
435
+ // making a new function using unsanitized inputs
436
+ window.console.error('jquery.parseJSON is undefined');
437
+ return null;
432
438
  };
433
439
 
434
440
  var httpData = function( xhr, type, s ) { // mostly lifted from jq1.4.4
@@ -0,0 +1 @@
1
+ @ak-border-radius: 3px;
@@ -0,0 +1,112 @@
1
+ // Primary color palette
2
+ @ak-color-primary1: @ak-color-N800;
3
+ @ak-color-primary2: @ak-color-B500;
4
+ @ak-color-primary3: @ak-color-N0;
5
+
6
+ // Secondary color palette
7
+ @ak-color-secondary1: @ak-color-R300;
8
+ @ak-color-secondary2: @ak-color-Y300;
9
+ @ak-color-secondary3: @ak-color-G300;
10
+ @ak-color-secondary4: @ak-color-P300;
11
+ @ak-color-secondary5: @ak-color-T300;
12
+
13
+ // Reds
14
+ @ak-color-R50: #FFEBE6;
15
+ @ak-color-R75: #FFBDAD;
16
+ @ak-color-R100: #FF8F73;
17
+ @ak-color-R200: #FF7452;
18
+ @ak-color-R300: #FF5630;
19
+ @ak-color-R400: #DE350B;
20
+ @ak-color-R500: #BF2600;
21
+
22
+ // Yellows
23
+ @ak-color-Y50: #FFFAE6;
24
+ @ak-color-Y75: #FFF0B3;
25
+ @ak-color-Y100: #FFE380;
26
+ @ak-color-Y200: #FFC400;
27
+ @ak-color-Y300: #FFAB00;
28
+ @ak-color-Y400: #FF991F;
29
+ @ak-color-Y500: #FF8B00;
30
+
31
+ // Greens
32
+ @ak-color-G50: #E3FCEF;
33
+ @ak-color-G75: #ABF5D1;
34
+ @ak-color-G100: #79F2C0;
35
+ @ak-color-G200: #57D9A3;
36
+ @ak-color-G300: #36B37E;
37
+ @ak-color-G400: #00875A;
38
+ @ak-color-G500: #006644;
39
+
40
+ // Blues
41
+ @ak-color-B50: #DEEBFF;
42
+ @ak-color-B75: #B3D4FF;
43
+ @ak-color-B100: #4C9AFF;
44
+ @ak-color-B200: #2684FF;
45
+ @ak-color-B300: #0065FF;
46
+ @ak-color-B400: #0052CC;
47
+ @ak-color-B500: #0747A6;
48
+
49
+ // Purples
50
+ @ak-color-P50: #EAE6FF;
51
+ @ak-color-P75: #C0B6F2;
52
+ @ak-color-P100: #998DD9;
53
+ @ak-color-P200: #8777D9;
54
+ @ak-color-P300: #6554C0;
55
+ @ak-color-P400: #5243AA;
56
+ @ak-color-P500: #403294;
57
+
58
+ // Teals
59
+ @ak-color-T50: #E6FCFF;
60
+ @ak-color-T75: #B3F5FF;
61
+ @ak-color-T100: #79E2F2;
62
+ @ak-color-T200: #00C7E6;
63
+ @ak-color-T300: #00B8D9;
64
+ @ak-color-T400: #00A3BF;
65
+ @ak-color-T500: #008DA6;
66
+
67
+ @ak-color-N0: #FFFFFF;
68
+ @ak-color-N10: #FAFBFC;
69
+ @ak-color-N20: #F4F5F7;
70
+ @ak-color-N30: #EBECF0;
71
+ @ak-color-N40: #DFE1E6;
72
+ @ak-color-N50: #C1C7D0;
73
+ @ak-color-N60: #B3BAC5;
74
+ @ak-color-N70: #A5ADBA;
75
+ @ak-color-N80: #97A0AF;
76
+ @ak-color-N90: #8993A4;
77
+ @ak-color-N100: #7A869A;
78
+ @ak-color-N200: #6B778C;
79
+ @ak-color-N300: #5E6C84;
80
+ @ak-color-N400: #505F79;
81
+ @ak-color-N500: #42526E;
82
+ @ak-color-N600: #344563;
83
+ @ak-color-N700: #253858;
84
+ @ak-color-N800: #172B4D;
85
+
86
+ // ATTENTION: update the tints this if you update this one
87
+ @ak-color-N900: #091E42;
88
+
89
+
90
+ // Each tint is made of N900 and an alpha channel
91
+ // ak-color-NXXXA: rgba(red(@ak-color-N900), green(@ak-color-N900), 66, ALPHA);
92
+ // but we can't use this, because the JS export would not transform it properly
93
+ // so it follows:
94
+ // ak-color-N900 -> rgb(9,30,66)
95
+
96
+ @ak-color-N10A: rgba(9, 30, 66, 0.02);
97
+ @ak-color-N20A: rgba(9, 30, 66, 0.04);
98
+ @ak-color-N30A: rgba(9, 30, 66, 0.08);
99
+ @ak-color-N40A: rgba(9, 30, 66, 0.13);
100
+ @ak-color-N50A: rgba(9, 30, 66, 0.25);
101
+ @ak-color-N60A: rgba(9, 30, 66, 0.31);
102
+ @ak-color-N70A: rgba(9, 30, 66, 0.36);
103
+ @ak-color-N80A: rgba(9, 30, 66, 0.42);
104
+ @ak-color-N90A: rgba(9, 30, 66, 0.48);
105
+ @ak-color-N100A: rgba(9, 30, 66, 0.54);
106
+ @ak-color-N200A: rgba(9, 30, 66, 0.60);
107
+ @ak-color-N300A: rgba(9, 30, 66, 0.66);
108
+ @ak-color-N400A: rgba(9, 30, 66, 0.71);
109
+ @ak-color-N500A: rgba(9, 30, 66, 0.77);
110
+ @ak-color-N600A: rgba(9, 30, 66, 0.82);
111
+ @ak-color-N700A: rgba(9, 30, 66, 0.89);
112
+ @ak-color-N800A: rgba(9, 30, 66, 0.95);
@@ -0,0 +1,3 @@
1
+ @ak-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
2
+ @ak-font-size-default: 14px;
3
+ @ak-code-font-family: "SFMono-Medium", "SF Mono", "Segoe UI Mono", "Roboto Mono", "Ubuntu Mono", Menlo, Courier, monospace;
@@ -1,4 +1,4 @@
1
- @import '~@atlaskit/util-shared-styles/src/colors';
1
+ @import 'atlaskit-theme/colors';
2
2
 
3
3
  //
4
4
  // ADG3 Compatible Colours Palette
@@ -1,4 +1,4 @@
1
- @import '~@atlaskit/util-shared-styles/src/fonts';
1
+ @import 'atlaskit-theme/fonts';
2
2
  @import 'colors';
3
3
 
4
4
  @aui-text-color: @ak-color-N800;