@atlassian/aui 9.9.6 → 9.9.7

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 (287) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +7 -9
  3. package/dist/aui/aui-css-deprecations.js.map +1 -1
  4. package/dist/aui/aui-prototyping-browserfocus.css +2 -651
  5. package/dist/aui/aui-prototyping-browserfocus.css.map +1 -0
  6. package/dist/aui/aui-prototyping-darkmode.css +2 -285
  7. package/dist/aui/aui-prototyping-darkmode.css.map +1 -0
  8. package/dist/aui/aui-prototyping-design-tokens-api-full.js +1 -1
  9. package/dist/aui/aui-prototyping-design-tokens-api-full.js.map +1 -1
  10. package/dist/aui/aui-prototyping-design-tokens-api.js +1 -1
  11. package/dist/aui/aui-prototyping-design-tokens-api.js.map +1 -1
  12. package/dist/aui/aui-prototyping-design-tokens-base-themes-css.css +2 -2
  13. package/dist/aui/aui-prototyping-design-tokens-base-themes-css.css.map +1 -1
  14. package/dist/aui/aui-prototyping-design-tokens-base-themes-css.js +1 -1
  15. package/dist/aui/aui-prototyping-design-tokens-base-themes.js +1 -1
  16. package/dist/aui/aui-prototyping-design-tokens-compatibility.css +2 -115
  17. package/dist/aui/aui-prototyping-design-tokens-compatibility.css.map +1 -0
  18. package/dist/aui/aui-prototyping.css +10 -10
  19. package/dist/aui/aui-prototyping.css.map +1 -1
  20. package/dist/aui/aui-prototyping.js +4 -4
  21. package/dist/aui/aui-prototyping.js.map +1 -1
  22. package/dist/aui/aui-prototyping.nodeps.css +10 -10
  23. package/dist/aui/aui-prototyping.nodeps.css.map +1 -1
  24. package/dist/aui/aui-prototyping.nodeps.js +4 -4
  25. package/dist/aui/aui-prototyping.nodeps.js.map +1 -1
  26. package/dist/aui/fonts/adgs-icons.eot +0 -0
  27. package/dist/aui/fonts/adgs-icons.ttf +0 -0
  28. package/dist/aui/fonts/adgs-icons.woff +0 -0
  29. package/entry/aui.batch.components.js +23 -23
  30. package/entry/aui.batch.page.js +3 -3
  31. package/entry/aui.batch.patterns.js +20 -20
  32. package/entry/aui.batch.prototyping.js +3 -11
  33. package/entry/aui.component.nav.js +1 -1
  34. package/entry/aui.component.progressbar.js +4 -1
  35. package/entry/aui.side-effects.js +2 -2
  36. package/entry/behaviours/aui.behaviour.format.js +1 -1
  37. package/entry/behaviours/aui.behaviour.i18n.js +1 -1
  38. package/entry/behaviours/aui.behaviour.keyboard-shortcuts.js +1 -1
  39. package/entry/behaviours/aui.behaviour.progressive-data-set.js +1 -1
  40. package/entry/behaviours/aui.behaviour.version.js +1 -1
  41. package/entry/deprecated/aui.component.inline-dialog1.js +1 -1
  42. package/entry/styles/aui-design-tokens-compatibility.less +114 -115
  43. package/package.json +3 -7
  44. package/src/js/aui/alphanum.js +1 -1
  45. package/src/js/aui/avatar-badged.js +4 -5
  46. package/src/js/aui/avatar-group.js +58 -28
  47. package/src/js/aui/avatar.js +16 -14
  48. package/src/js/aui/banner.js +5 -4
  49. package/src/js/aui/blanket.js +11 -14
  50. package/src/js/aui/button.js +5 -5
  51. package/src/js/aui/checkbox-multiselect.js +79 -76
  52. package/src/js/aui/clone.js +1 -1
  53. package/src/js/aui/close-button.js +2 -6
  54. package/src/js/aui/contain-dropdown.js +5 -5
  55. package/src/js/aui/contains.js +1 -1
  56. package/src/js/aui/cookie.js +12 -16
  57. package/src/js/aui/date-picker.js +84 -69
  58. package/src/js/aui/debounce.js +5 -8
  59. package/src/js/aui/design-tokens/design-tokens-full.js +4 -13
  60. package/src/js/aui/design-tokens/design-tokens-init.js +3 -5
  61. package/src/js/aui/design-tokens/design-tokens-testing-theme.js +12 -18
  62. package/src/js/aui/design-tokens/design-tokens.js +2 -4
  63. package/src/js/aui/dialog.js +206 -172
  64. package/src/js/aui/dialog2.js +36 -25
  65. package/src/js/aui/dropdown2.js +221 -189
  66. package/src/js/aui/escape-html.js +2 -2
  67. package/src/js/aui/escape.js +1 -1
  68. package/src/js/aui/event.js +4 -8
  69. package/src/js/aui/expander.js +15 -13
  70. package/src/js/aui/flag.js +14 -16
  71. package/src/js/aui/focus-manager.js +19 -18
  72. package/src/js/aui/form-notification.js +15 -14
  73. package/src/js/aui/form-validation/basic-validators.js +39 -30
  74. package/src/js/aui/form-validation/validator-register.js +9 -5
  75. package/src/js/aui/form-validation.js +12 -13
  76. package/src/js/aui/format.js +9 -6
  77. package/src/js/aui/forms/create-forms-component-body.js +6 -9
  78. package/src/js/aui/forms/custom-checkbox.js +2 -6
  79. package/src/js/aui/forms/custom-radio.js +2 -6
  80. package/src/js/aui/forms.js +4 -8
  81. package/src/js/aui/header-async.js +1 -1
  82. package/src/js/aui/header.js +2 -2
  83. package/src/js/aui/i18n.js +2 -5
  84. package/src/js/aui/index-of.js +1 -1
  85. package/src/js/aui/inline-dialog.js +171 -117
  86. package/src/js/aui/inline-dialog2.js +40 -33
  87. package/src/js/aui/internal/add-id.js +1 -1
  88. package/src/js/aui/internal/alignment.js +57 -49
  89. package/src/js/aui/internal/amdify.js +0 -1
  90. package/src/js/aui/internal/animation.js +2 -5
  91. package/src/js/aui/internal/attributes.js +2 -3
  92. package/src/js/aui/internal/browser.js +5 -6
  93. package/src/js/aui/internal/constants.js +1 -3
  94. package/src/js/aui/internal/deduplicateIDs.js +8 -7
  95. package/src/js/aui/internal/deprecation/deprecated-adg2-icons.js +132 -132
  96. package/src/js/aui/internal/deprecation.js +53 -31
  97. package/src/js/aui/internal/detect-children-change.js +3 -2
  98. package/src/js/aui/internal/elements.js +2 -5
  99. package/src/js/aui/internal/enforcer.js +11 -13
  100. package/src/js/aui/internal/globalize.js +3 -3
  101. package/src/js/aui/internal/has-touch.js +1 -2
  102. package/src/js/aui/internal/header/create-header.js +54 -30
  103. package/src/js/aui/internal/i18n/aui.js +10 -6
  104. package/src/js/aui/internal/i18n/aui_af.js +31 -31
  105. package/src/js/aui/internal/i18n/aui_ar.js +31 -31
  106. package/src/js/aui/internal/i18n/aui_ar_DZ.js +31 -31
  107. package/src/js/aui/internal/i18n/aui_az.js +31 -31
  108. package/src/js/aui/internal/i18n/aui_bg.js +31 -31
  109. package/src/js/aui/internal/i18n/aui_bs.js +31 -31
  110. package/src/js/aui/internal/i18n/aui_ca.js +31 -31
  111. package/src/js/aui/internal/i18n/aui_cs.js +31 -31
  112. package/src/js/aui/internal/i18n/aui_da.js +31 -31
  113. package/src/js/aui/internal/i18n/aui_de.js +31 -31
  114. package/src/js/aui/internal/i18n/aui_el.js +31 -31
  115. package/src/js/aui/internal/i18n/aui_en_AU.js +31 -31
  116. package/src/js/aui/internal/i18n/aui_en_GB.js +31 -31
  117. package/src/js/aui/internal/i18n/aui_en_NZ.js +31 -31
  118. package/src/js/aui/internal/i18n/aui_eo.js +31 -31
  119. package/src/js/aui/internal/i18n/aui_es.js +31 -31
  120. package/src/js/aui/internal/i18n/aui_et.js +31 -31
  121. package/src/js/aui/internal/i18n/aui_eu.js +31 -31
  122. package/src/js/aui/internal/i18n/aui_fa.js +31 -31
  123. package/src/js/aui/internal/i18n/aui_fi.js +31 -31
  124. package/src/js/aui/internal/i18n/aui_fo.js +31 -31
  125. package/src/js/aui/internal/i18n/aui_fr.js +31 -31
  126. package/src/js/aui/internal/i18n/aui_fr_CH.js +31 -31
  127. package/src/js/aui/internal/i18n/aui_gl.js +31 -31
  128. package/src/js/aui/internal/i18n/aui_he.js +31 -31
  129. package/src/js/aui/internal/i18n/aui_hr.js +31 -31
  130. package/src/js/aui/internal/i18n/aui_hu.js +31 -31
  131. package/src/js/aui/internal/i18n/aui_hy.js +31 -31
  132. package/src/js/aui/internal/i18n/aui_id.js +31 -31
  133. package/src/js/aui/internal/i18n/aui_is.js +31 -31
  134. package/src/js/aui/internal/i18n/aui_it.js +31 -31
  135. package/src/js/aui/internal/i18n/aui_ja.js +31 -31
  136. package/src/js/aui/internal/i18n/aui_ko.js +31 -31
  137. package/src/js/aui/internal/i18n/aui_kz.js +31 -31
  138. package/src/js/aui/internal/i18n/aui_lt.js +31 -31
  139. package/src/js/aui/internal/i18n/aui_lv.js +31 -31
  140. package/src/js/aui/internal/i18n/aui_ml.js +31 -31
  141. package/src/js/aui/internal/i18n/aui_ms.js +31 -31
  142. package/src/js/aui/internal/i18n/aui_nl.js +31 -31
  143. package/src/js/aui/internal/i18n/aui_no.js +31 -31
  144. package/src/js/aui/internal/i18n/aui_pl.js +31 -31
  145. package/src/js/aui/internal/i18n/aui_pt.js +31 -31
  146. package/src/js/aui/internal/i18n/aui_pt_BR.js +31 -31
  147. package/src/js/aui/internal/i18n/aui_rm.js +31 -31
  148. package/src/js/aui/internal/i18n/aui_ro.js +31 -31
  149. package/src/js/aui/internal/i18n/aui_ru.js +31 -31
  150. package/src/js/aui/internal/i18n/aui_sk.js +31 -31
  151. package/src/js/aui/internal/i18n/aui_sl.js +31 -31
  152. package/src/js/aui/internal/i18n/aui_sq.js +31 -31
  153. package/src/js/aui/internal/i18n/aui_sr.js +31 -31
  154. package/src/js/aui/internal/i18n/aui_sr_SR.js +31 -31
  155. package/src/js/aui/internal/i18n/aui_sv.js +31 -31
  156. package/src/js/aui/internal/i18n/aui_ta.js +31 -31
  157. package/src/js/aui/internal/i18n/aui_th.js +31 -31
  158. package/src/js/aui/internal/i18n/aui_tj.js +31 -31
  159. package/src/js/aui/internal/i18n/aui_tr.js +31 -31
  160. package/src/js/aui/internal/i18n/aui_uk.js +31 -31
  161. package/src/js/aui/internal/i18n/aui_vi.js +31 -31
  162. package/src/js/aui/internal/i18n/aui_zh_CN.js +31 -31
  163. package/src/js/aui/internal/i18n/aui_zh_HK.js +31 -31
  164. package/src/js/aui/internal/i18n/aui_zh_TW.js +31 -31
  165. package/src/js/aui/internal/log.js +2 -6
  166. package/src/js/aui/internal/mediaQuery.js +2 -3
  167. package/src/js/aui/internal/select/option.js +3 -3
  168. package/src/js/aui/internal/select/suggestion-model.js +1 -1
  169. package/src/js/aui/internal/select/suggestions-model.js +4 -5
  170. package/src/js/aui/internal/select/suggestions-view.js +17 -12
  171. package/src/js/aui/internal/state.js +2 -3
  172. package/src/js/aui/is-clipped.js +2 -2
  173. package/src/js/aui/key-code.js +1 -1
  174. package/src/js/aui/label.js +6 -6
  175. package/src/js/aui/layer.js +101 -89
  176. package/src/js/aui/messages.js +57 -41
  177. package/src/js/aui/navigation.js +7 -9
  178. package/src/js/aui/on-text-resize.js +7 -5
  179. package/src/js/aui/params.js +11 -8
  180. package/src/js/aui/polyfills/custom-event.js +7 -7
  181. package/src/js/aui/polyfills/placeholder.js +4 -4
  182. package/src/js/aui/populate-parameters.js +4 -4
  183. package/src/js/aui/progress-indicator.js +35 -27
  184. package/src/js/aui/progressive-data-set.js +13 -8
  185. package/src/js/aui/query-input.js +1 -1
  186. package/src/js/aui/restful-table/class-names.js +1 -1
  187. package/src/js/aui/restful-table/data-keys.js +1 -1
  188. package/src/js/aui/restful-table/edit-row.js +63 -63
  189. package/src/js/aui/restful-table/entry-model.js +6 -13
  190. package/src/js/aui/restful-table/event-handlers.js +4 -8
  191. package/src/js/aui/restful-table/event-names.js +1 -1
  192. package/src/js/aui/restful-table/row.js +41 -23
  193. package/src/js/aui/restful-table.js +101 -72
  194. package/src/js/aui/result-set.js +5 -5
  195. package/src/js/aui/results-list.js +3 -3
  196. package/src/js/aui/select.js +72 -51
  197. package/src/js/aui/select2.js +16 -8
  198. package/src/js/aui/sidebar.js +81 -51
  199. package/src/js/aui/spin.js +61 -49
  200. package/src/js/aui/spinner.js +11 -12
  201. package/src/js/aui/tables-sortable.js +21 -10
  202. package/src/js/aui/tabs.js +108 -77
  203. package/src/js/aui/to-init.js +1 -1
  204. package/src/js/aui/toggle.js +55 -43
  205. package/src/js/aui/tooltip.js +35 -34
  206. package/src/js/aui/trigger.js +20 -18
  207. package/src/js/aui/truncating-progressive-data-set.js +1 -1
  208. package/src/js/aui/unbind-text-resize.js +1 -1
  209. package/src/js/aui/unique-id.js +1 -1
  210. package/src/js/aui/when-i-type.js +66 -39
  211. package/src/js/aui-css-deprecations.js +52 -51
  212. package/src/js/jquery/jquery.hotkeys.js +124 -49
  213. package/src/js/jquery/jquery.moveto.js +18 -12
  214. package/src/less/adg-fancy-file-input.less +2 -3
  215. package/src/less/adg-header-quicksearch.less +4 -1
  216. package/src/less/adg-iconfont.less +242 -242
  217. package/src/less/adgs-icons.less +262 -262
  218. package/src/less/aui-appheader.less +11 -7
  219. package/src/less/aui-avatars.less +1 -1
  220. package/src/less/aui-banner.less +2 -1
  221. package/src/less/aui-buttons.less +6 -5
  222. package/src/less/aui-dark-mode.less +1 -1
  223. package/src/less/aui-date-picker.less +9 -6
  224. package/src/less/aui-experimental-expander.less +3 -3
  225. package/src/less/aui-experimental-labels.less +1 -1
  226. package/src/less/aui-experimental-progress-indicator.less +10 -4
  227. package/src/less/aui-experimental-progress-tracker.less +9 -6
  228. package/src/less/aui-experimental-restfultable.less +11 -3
  229. package/src/less/aui-experimental-tables-sortable.less +5 -3
  230. package/src/less/aui-experimental-tooltip.less +1 -1
  231. package/src/less/aui-link.less +0 -1
  232. package/src/less/aui-lozenge.less +6 -3
  233. package/src/less/aui-navigation.less +13 -13
  234. package/src/less/aui-page-layout.less +3 -4
  235. package/src/less/aui-page-typography.less +8 -3
  236. package/src/less/aui-reset.less +22 -6
  237. package/src/less/aui-select2.less +11 -8
  238. package/src/less/aui-sidebar-badges.less +1 -2
  239. package/src/less/aui-sidebar-config.less +7 -2
  240. package/src/less/aui-sidebar-grouping.less +16 -6
  241. package/src/less/aui-sidebar-navigation.less +7 -5
  242. package/src/less/aui-sidebar-skeleton.less +12 -7
  243. package/src/less/aui-skip-link.less +2 -1
  244. package/src/less/aui-spinner.less +2 -2
  245. package/src/less/aui-toggle.less +2 -2
  246. package/src/less/aui-toolbar2.less +1 -1
  247. package/src/less/checkbox-multiselect.less +13 -13
  248. package/src/less/dialog.less +3 -3
  249. package/src/less/dialog2.less +11 -10
  250. package/src/less/dropdown2-temp.css +4 -4
  251. package/src/less/dropdown2.less +4 -4
  252. package/src/less/flag.less +2 -2
  253. package/src/less/form-notification.less +10 -6
  254. package/src/less/forms-current.less +6 -5
  255. package/src/less/forms-legacy.less +4 -2
  256. package/src/less/forms-radios-and-checkboxes.less +18 -16
  257. package/src/less/forms.less +2 -4
  258. package/src/less/iconfont-mixin.less +7 -4
  259. package/src/less/imports/aui-theme/adg/adg-colors.less +40 -40
  260. package/src/less/imports/aui-theme/adg/adg-neutral-dark.less +20 -20
  261. package/src/less/imports/aui-theme/adg/adg-neutral-light.less +20 -20
  262. package/src/less/imports/aui-theme/components/buttons.less +5 -1
  263. package/src/less/imports/aui-theme/components/dropdown.less +3 -1
  264. package/src/less/imports/aui-theme/components/flag.less +1 -1
  265. package/src/less/imports/aui-theme/components/form-notification.less +2 -1
  266. package/src/less/imports/aui-theme/components/forms.less +20 -3
  267. package/src/less/imports/aui-theme/components/inline-dialog2.less +1 -1
  268. package/src/less/imports/aui-theme/components/navigation.less +3 -3
  269. package/src/less/imports/aui-theme/components/progress-tracker.less +6 -2
  270. package/src/less/imports/aui-theme/components/tables.less +3 -2
  271. package/src/less/imports/aui-theme/components/toggle.less +8 -3
  272. package/src/less/imports/aui-theme/core/icons.less +22 -22
  273. package/src/less/imports/aui-theme/core/spaces.less +1 -1
  274. package/src/less/imports/aui-theme/core/text.less +6 -3
  275. package/src/less/imports/aui-theme/theme.less +1 -3
  276. package/src/less/imports/mixins/dropdown2-trigger-chevron-icon.less +0 -1
  277. package/src/less/imports/mixins/focus.less +12 -4
  278. package/src/less/imports/mixins/media-queries.less +2 -2
  279. package/src/less/imports/mixins/shadows.less +3 -1
  280. package/src/less/imports/mixins/tab-indicator.less +2 -2
  281. package/src/less/imports/mixins.less +11 -4
  282. package/src/less/inline-dialog.less +21 -19
  283. package/src/less/layer.less +0 -2
  284. package/src/less/messages.less +2 -1
  285. package/src/less/single-select.less +15 -10
  286. package/src/less/tables.less +3 -2
  287. package/src/less/tabs.less +4 -3
@@ -42,11 +42,11 @@ function hasResults(element) {
42
42
  return element._suggestionModel.getNumberOfResults();
43
43
  }
44
44
 
45
- function waitForAssistive (callback) {
45
+ function waitForAssistive(callback) {
46
46
  setTimeout(callback, ASSISTIVE_STATUS_DELAY_MS);
47
47
  }
48
48
 
49
- function setBusyState (element) {
49
+ function setBusyState(element) {
50
50
  if (!element._button.isBusy()) {
51
51
  element._button.busy();
52
52
  element._input.setAttribute('aria-busy', 'true');
@@ -54,30 +54,30 @@ function setBusyState (element) {
54
54
  }
55
55
  }
56
56
 
57
- function setIdleState (element) {
57
+ function setIdleState(element) {
58
58
  element._button.idle();
59
59
  element._input.setAttribute('aria-busy', 'false');
60
60
  element._dropdown.setAttribute('aria-busy', 'false');
61
61
  }
62
62
 
63
- function matchPrefix (model, query) {
63
+ function matchPrefix(model, query) {
64
64
  var value = model.get('label').toLowerCase();
65
65
  return value.indexOf(query.toLowerCase()) === 0;
66
66
  }
67
67
 
68
- function resetDropdown (element) {
68
+ function resetDropdown(element) {
69
69
  element._input.setAttribute('aria-expanded', 'false');
70
70
  element._button.setAttribute('aria-expanded', 'false');
71
71
  element._input.removeAttribute('aria-activedescendant');
72
72
  updateAssistiveStatus(element, '');
73
73
  }
74
74
 
75
- function resetAndCloseDropdown (element) {
75
+ function resetAndCloseDropdown(element) {
76
76
  element._suggestionsView.hide();
77
77
  resetDropdown(element);
78
78
  }
79
79
 
80
- function setInitialVisualState (element) {
80
+ function setInitialVisualState(element) {
81
81
  var initialHighlightedItem = hasResults(element) ? 0 : NO_HIGHLIGHT;
82
82
 
83
83
  element._suggestionModel.highlight(initialHighlightedItem);
@@ -85,12 +85,12 @@ function setInitialVisualState (element) {
85
85
  resetAndCloseDropdown(element);
86
86
  }
87
87
 
88
- function setElementImage (element, imageSource) {
88
+ function setElementImage(element, imageSource) {
89
89
  $(element._input).addClass('aui-select-has-inline-image');
90
90
  element._input.setAttribute('style', 'background-image: url(' + encodeURI(imageSource) + ')');
91
91
  }
92
92
 
93
- function suggest (element, autoHighlight, query) {
93
+ function suggest(element, autoHighlight, query) {
94
94
  element._autoHighlight = autoHighlight;
95
95
 
96
96
  if (query === undefined) {
@@ -100,14 +100,16 @@ function suggest (element, autoHighlight, query) {
100
100
  element._progressiveDataSet.query(query);
101
101
  }
102
102
 
103
- function setInputImageToHighlightedSuggestion (element) {
104
- var imageSource = (element._suggestionModel.highlighted() && element._suggestionModel.highlighted().get('img-src'));
103
+ function setInputImageToHighlightedSuggestion(element) {
104
+ var imageSource =
105
+ element._suggestionModel.highlighted() &&
106
+ element._suggestionModel.highlighted().get('img-src');
105
107
  if (imageSource) {
106
108
  setElementImage(element, imageSource);
107
109
  }
108
110
  }
109
111
 
110
- function setValueAndDisplayFromModel (element, model) {
112
+ function setValueAndDisplayFromModel(element, model) {
111
113
  if (!model) {
112
114
  return;
113
115
  }
@@ -126,25 +128,25 @@ function setValueAndDisplayFromModel (element, model) {
126
128
 
127
129
  select.innerHTML = '';
128
130
  select.options.add(option);
129
- select.dispatchEvent(new CustomEvent('change', {bubbles: true}));
131
+ select.dispatchEvent(new CustomEvent('change', { bubbles: true }));
130
132
  }
131
133
 
132
- function clearValue (element) {
134
+ function clearValue(element) {
133
135
  element._input.value = '';
134
136
  element._select.innerHTML = '';
135
137
  }
136
138
 
137
- function selectHighlightedSuggestion (element) {
139
+ function selectHighlightedSuggestion(element) {
138
140
  setValueAndDisplayFromModel(element, element._suggestionModel.highlighted());
139
141
  setInputImageToHighlightedSuggestion(element);
140
142
  resetAndCloseDropdown(element);
141
143
  }
142
144
 
143
- function convertOptionToModel (option) {
145
+ function convertOptionToModel(option) {
144
146
  return new SuggestionModel(option.serialize());
145
147
  }
146
148
 
147
- function convertOptionsToModels (element) {
149
+ function convertOptionsToModels(element) {
148
150
  var models = [];
149
151
 
150
152
  for (var i = 0; i < element._datalist.children.length; i++) {
@@ -161,7 +163,7 @@ function convertOptionsToModels (element) {
161
163
  * @param data
162
164
  * @returns {boolean} true if the results are different from the previous set; false otherwise.
163
165
  */
164
- function clearAndSet (element, data) {
166
+ function clearAndSet(element, data) {
165
167
  const before = element._suggestionModel.getNumberOfResults();
166
168
  element._suggestionModel.set();
167
169
  element._suggestionModel.set(data.results);
@@ -169,12 +171,12 @@ function clearAndSet (element, data) {
169
171
  return before !== after;
170
172
  }
171
173
 
172
- function getActiveId (select) {
174
+ function getActiveId(select) {
173
175
  var active = select._dropdown.querySelector('.aui-select-active');
174
176
  return active && active.id;
175
177
  }
176
178
 
177
- function getIndexInResults (id, results) {
179
+ function getIndexInResults(id, results) {
178
180
  var resultsIds = $.map(results, function (result) {
179
181
  return result.id;
180
182
  });
@@ -182,7 +184,7 @@ function getIndexInResults (id, results) {
182
184
  return resultsIds.indexOf(id);
183
185
  }
184
186
 
185
- function createNewValueModel (element) {
187
+ function createNewValueModel(element) {
186
188
  var option = new Option();
187
189
  option.setAttribute('value', element._input.value);
188
190
  var newValueSuggestionModel = convertOptionToModel(option);
@@ -190,12 +192,12 @@ function createNewValueModel (element) {
190
192
  return newValueSuggestionModel;
191
193
  }
192
194
 
193
- function initialiseProgressiveDataSet (element) {
195
+ function initialiseProgressiveDataSet(element) {
194
196
  element._progressiveDataSet = new ProgressiveDataSet(convertOptionsToModels(element), {
195
197
  model: SuggestionModel,
196
198
  matcher: matchPrefix,
197
199
  queryEndpoint: element._queryEndpoint,
198
- maxResults: DEFAULT_SS_PDS_SIZE
200
+ maxResults: DEFAULT_SS_PDS_SIZE,
199
201
  });
200
202
 
201
203
  element._isSync = !element._queryEndpoint;
@@ -268,20 +270,27 @@ function initialiseProgressiveDataSet (element) {
268
270
  element._button.setAttribute('aria-expanded', 'true');
269
271
 
270
272
  // If the response is async (append operation), has elements to append and has a highlighted element, we need to update the status.
271
- if (!element._isSync && resultsChanged && element._suggestionsView.getActive() && state(element).get('should-flag-new-suggestions')) {
272
- element.querySelector('.aui-select-status').innerHTML = I18n.getText('aui.select.new.suggestions');
273
+ if (
274
+ !element._isSync &&
275
+ resultsChanged &&
276
+ element._suggestionsView.getActive() &&
277
+ state(element).get('should-flag-new-suggestions')
278
+ ) {
279
+ element.querySelector('.aui-select-status').innerHTML = I18n.getText(
280
+ 'aui.select.new.suggestions'
281
+ );
273
282
  }
274
283
 
275
284
  element._suggestionsView.show();
276
285
  });
277
286
  }
278
287
 
279
- function associateDropdownAndTrigger (element) {
288
+ function associateDropdownAndTrigger(element) {
280
289
  element._dropdown.id = element._listId;
281
290
  element.querySelector('button').setAttribute('aria-controls', element._listId);
282
291
  }
283
292
 
284
- function bindHighlightMouseover (element) {
293
+ function bindHighlightMouseover(element) {
285
294
  $(element._dropdown).on('mouseover', 'li', function (e) {
286
295
  if (hasResults(element)) {
287
296
  element._suggestionModel.highlight($(e.target).index());
@@ -289,10 +298,10 @@ function bindHighlightMouseover (element) {
289
298
  });
290
299
  }
291
300
 
292
- export function bindSelectMousedown (element) {
301
+ export function bindSelectMousedown(element) {
293
302
  let preventClosingContainerLayer = false;
294
303
 
295
- $(document).on('aui-close-layers-on-outer-click.single-select', e => {
304
+ $(document).on('aui-close-layers-on-outer-click.single-select', (e) => {
296
305
  if (preventClosingContainerLayer) {
297
306
  e.preventDefault();
298
307
  preventClosingContainerLayer = false;
@@ -313,7 +322,7 @@ export function bindSelectMousedown (element) {
313
322
  });
314
323
  }
315
324
 
316
- function updateAssistiveStatus (element, status) {
325
+ function updateAssistiveStatus(element, status) {
317
326
  clearTimeout(element.assistiveStatusTimerId);
318
327
  element.assistiveStatusTimerId = setTimeout(() => {
319
328
  const assistiveStatusText = element._assistiveStatus.innerText;
@@ -323,7 +332,7 @@ function updateAssistiveStatus (element, status) {
323
332
  }, ASSISTIVE_STATUS_DELAY_MS);
324
333
  }
325
334
 
326
- function initialiseValue (element) {
335
+ function initialiseValue(element) {
327
336
  var option = element._datalist.querySelector('aui-option[selected]');
328
337
 
329
338
  if (option) {
@@ -331,18 +340,18 @@ function initialiseValue (element) {
331
340
  }
332
341
  }
333
342
 
334
- function isQueryInProgress (element) {
343
+ function isQueryInProgress(element) {
335
344
  return element._progressiveDataSet.activeQueryCount > 0;
336
345
  }
337
346
 
338
- function focusInHandler (element) {
347
+ function focusInHandler(element) {
339
348
  //if there is a selected value the single select should do an empty
340
349
  //search and return everything
341
350
  const searchValue = element.value ? '' : element._input.value;
342
351
  suggest(element, true, searchValue);
343
352
  }
344
353
 
345
- function cancelInProgressQueries (element) {
354
+ function cancelInProgressQueries(element) {
346
355
  if (isQueryInProgress(element)) {
347
356
  state(element).set('should-cancel-response', true);
348
357
  }
@@ -354,7 +363,7 @@ function getSelectedLabel(element) {
354
363
  }
355
364
  }
356
365
 
357
- function handleInvalidInputOnFocusOut (element) {
366
+ function handleInvalidInputOnFocusOut(element) {
358
367
  var selectCanBeEmpty = !element.hasAttribute('no-empty-values');
359
368
  var selectionIsEmpty = !element._input.value;
360
369
  var selectionNotExact = element._input.value !== getSelectedLabel(element);
@@ -379,7 +388,7 @@ function handleHighlightOnFocusOut(element) {
379
388
  element._suggestionModel.highlight(NO_HIGHLIGHT);
380
389
  }
381
390
 
382
- function focusOutHandler (element) {
391
+ function focusOutHandler(element) {
383
392
  cancelInProgressQueries(element);
384
393
  handleInvalidInputOnFocusOut(element);
385
394
  handleHighlightOnFocusOut(element);
@@ -403,7 +412,9 @@ const SelectEl = skate('aui-select', {
403
412
  const suggestionsToAdd = [];
404
413
 
405
414
  element._suggestionModel._suggestions.forEach(function (newSuggestion) {
406
- const inArray = oldSuggestions.some((oldSuggestion) => newSuggestion.id === oldSuggestion.id);
415
+ const inArray = oldSuggestions.some(
416
+ (oldSuggestion) => newSuggestion.id === oldSuggestion.id
417
+ );
407
418
  if (!inArray) {
408
419
  suggestionsToAdd.push(newSuggestion);
409
420
  }
@@ -413,7 +424,12 @@ const SelectEl = skate('aui-select', {
413
424
  const numberOfItems = oldSuggestions.length + suggestionsToAdd.length;
414
425
  const status = numberOfItems ? '' : `${I18n.getText('aui.select.no.suggestions')}`;
415
426
 
416
- element._suggestionsView.render(suggestionsToAdd, oldSuggestions.length, element._listId, indexOfValueInResults);
427
+ element._suggestionsView.render(
428
+ suggestionsToAdd,
429
+ oldSuggestions.length,
430
+ element._listId,
431
+ indexOfValueInResults
432
+ );
417
433
  updateAssistiveStatus(element, status);
418
434
  };
419
435
 
@@ -461,7 +477,9 @@ const SelectEl = skate('aui-select', {
461
477
  element.querySelector('select').setAttribute('name', data.newValue);
462
478
  element.querySelector('select').setAttribute('aria-label', `${data.newValue} list`);
463
479
  element.querySelector('button').setAttribute('aria-label', `${data.newValue} list`);
464
- element.querySelector('ul[role="listbox"]').setAttribute('aria-label', `${data.newValue} list`);
480
+ element
481
+ .querySelector('ul[role="listbox"]')
482
+ .setAttribute('aria-label', `${data.newValue} list`);
465
483
  },
466
484
 
467
485
  placeholder(element, data) {
@@ -470,7 +488,7 @@ const SelectEl = skate('aui-select', {
470
488
 
471
489
  src(element, data) {
472
490
  element._queryEndpoint = data.newValue;
473
- }
491
+ },
474
492
  },
475
493
 
476
494
  events: {
@@ -479,7 +497,10 @@ const SelectEl = skate('aui-select', {
479
497
  },
480
498
 
481
499
  'mousedown button': function (element) {
482
- if (document.activeElement === element._input && !element._dropdown.hasAttribute('hidden')) {
500
+ if (
501
+ document.activeElement === element._input &&
502
+ !element._dropdown.hasAttribute('hidden')
503
+ ) {
483
504
  state(element).set('prevent-open-on-button-click', true);
484
505
  }
485
506
  },
@@ -499,7 +520,7 @@ const SelectEl = skate('aui-select', {
499
520
  }
500
521
  },
501
522
 
502
- input: function (element) {
523
+ 'input': function (element) {
503
524
  if (!element._input.value) {
504
525
  if (state(element).get('button-clicked-prevent-dropdown-hide')) {
505
526
  state(element).set('button-clicked-prevent-dropdown-hide', false);
@@ -548,21 +569,21 @@ const SelectEl = skate('aui-select', {
548
569
  }
549
570
 
550
571
  handled = handled || e.defaultPrevented;
551
- setTimeout(function emulateCrossBrowserInputEvent () {
572
+ setTimeout(function emulateCrossBrowserInputEvent() {
552
573
  if (element._input.value !== currentValue && !handled) {
553
- element.dispatchEvent(new CustomEvent('input', {bubbles: true}));
574
+ element.dispatchEvent(new CustomEvent('input', { bubbles: true }));
554
575
  }
555
576
  }, 0);
556
- }
577
+ },
557
578
  },
558
579
 
559
580
  prototype: {
560
- get value () {
581
+ get value() {
561
582
  var selected = this._select.options[this._select.selectedIndex];
562
583
  return selected ? selected.value : '';
563
584
  },
564
585
 
565
- set value (value) {
586
+ set value(value) {
566
587
  if (value === '') {
567
588
  clearValue(this);
568
589
  } else if (value) {
@@ -571,7 +592,7 @@ const SelectEl = skate('aui-select', {
571
592
 
572
593
  // Create a new value if allowed and the value doesn't exist.
573
594
  if (!model && this.hasAttribute('can-create-values')) {
574
- model = new SuggestionModel({value: value, label: value});
595
+ model = new SuggestionModel({ value: value, label: value });
575
596
  }
576
597
 
577
598
  setValueAndDisplayFromModel(this, model);
@@ -579,7 +600,7 @@ const SelectEl = skate('aui-select', {
579
600
  return this;
580
601
  },
581
602
 
582
- get displayValue () {
603
+ get displayValue() {
583
604
  return this._input.value;
584
605
  },
585
606
 
@@ -593,8 +614,8 @@ const SelectEl = skate('aui-select', {
593
614
  this._input.focus();
594
615
  focusInHandler(this);
595
616
  return this;
596
- }
597
- }
617
+ },
618
+ },
598
619
  });
599
620
 
600
621
  amdify('aui/select', SelectEl);
@@ -30,15 +30,23 @@ $.fn.auiSelect2 = function (first) {
30
30
  const auiOpts = $.extend({}, first);
31
31
  const auiAvatarClass = auiOpts.hasAvatar ? ' ' + auiHasAvatar : '';
32
32
  //add our classes in addition to those the caller specified
33
- auiOpts.containerCssClass = auiContainer + auiAvatarClass + (auiOpts.containerCssClass ? ' ' + auiOpts.containerCssClass : '');
34
- auiOpts.dropdownCssClass = auiDropdown + auiAvatarClass + (auiOpts.dropdownCssClass ? ' ' + auiOpts.dropdownCssClass : '');
33
+ auiOpts.containerCssClass =
34
+ auiContainer +
35
+ auiAvatarClass +
36
+ (auiOpts.containerCssClass ? ' ' + auiOpts.containerCssClass : '');
37
+ auiOpts.dropdownCssClass =
38
+ auiDropdown +
39
+ auiAvatarClass +
40
+ (auiOpts.dropdownCssClass ? ' ' + auiOpts.dropdownCssClass : '');
35
41
  updatedArgs = Array.prototype.slice.call(arguments, 1);
36
42
  updatedArgs.unshift(auiOpts);
37
43
  } else if (!arguments.length) {
38
- updatedArgs = [{
39
- containerCssClass: auiContainer,
40
- dropdownCssClass: auiDropdown
41
- }];
44
+ updatedArgs = [
45
+ {
46
+ containerCssClass: auiContainer,
47
+ dropdownCssClass: auiDropdown,
48
+ },
49
+ ];
42
50
  } else {
43
51
  updatedArgs = arguments;
44
52
  }
@@ -66,10 +74,10 @@ $.fn.auiSelect2 = function (first) {
66
74
  }
67
75
  let originalTransport = options.ajax.transport;
68
76
  if (!originalTransport) {
69
- originalTransport = originalSelect2.ajaxDefaults.transport
77
+ originalTransport = originalSelect2.ajaxDefaults.transport;
70
78
  }
71
79
 
72
- const newTransport = function(...args) {
80
+ const newTransport = function (...args) {
73
81
  args[0].error = [args[0].error, ...customErrorHandlers];
74
82
  return originalTransport(...args);
75
83
  };