@atlassian/aui 9.9.6 → 9.9.8

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 (288) 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 +2 -2
  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 +8 -10
  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 +12 -14
  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 +15 -21
  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 +2 -2
  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/colors.less +6 -3
  273. package/src/less/imports/aui-theme/core/icons.less +22 -22
  274. package/src/less/imports/aui-theme/core/spaces.less +1 -1
  275. package/src/less/imports/aui-theme/core/text.less +6 -3
  276. package/src/less/imports/aui-theme/theme.less +1 -3
  277. package/src/less/imports/mixins/dropdown2-trigger-chevron-icon.less +0 -1
  278. package/src/less/imports/mixins/focus.less +12 -4
  279. package/src/less/imports/mixins/media-queries.less +2 -2
  280. package/src/less/imports/mixins/shadows.less +3 -1
  281. package/src/less/imports/mixins/tab-indicator.less +2 -2
  282. package/src/less/imports/mixins.less +11 -4
  283. package/src/less/inline-dialog.less +21 -19
  284. package/src/less/layer.less +0 -2
  285. package/src/less/messages.less +2 -1
  286. package/src/less/single-select.less +15 -10
  287. package/src/less/tables.less +3 -2
  288. package/src/less/tabs.less +4 -3
@@ -5,13 +5,13 @@ const special = {
5
5
  '>': '>',
6
6
  '&': '&',
7
7
  '"': '"',
8
- '\'': ''',
8
+ "'": ''',
9
9
  '`': '`',
10
10
  };
11
11
 
12
12
  const expr = new RegExp(`[${Object.keys(special).join('')}]`, 'g');
13
13
 
14
- function escapeHtml (str) {
14
+ function escapeHtml(str) {
15
15
  return str.replace(expr, (str) => special[str]);
16
16
  }
17
17
 
@@ -8,7 +8,7 @@ import globalize from './internal/globalize';
8
8
  */
9
9
  const jsEscape = window.escape;
10
10
 
11
- function escape (string) {
11
+ function escape(string) {
12
12
  return jsEscape(string).replace(/%u\w{4}/gi, function (w) {
13
13
  return unescape(w);
14
14
  });
@@ -9,7 +9,7 @@ const $target = $(window);
9
9
  * Binds events to the window object. See jQuery bind documentation for more
10
10
  * details. Exceptions are caught and logged.
11
11
  */
12
- function bind (eventType, eventData, handler) {
12
+ function bind(eventType, eventData, handler) {
13
13
  try {
14
14
  if (typeof handler === 'function') {
15
15
  return $target.on(eventType, EMPTY_SELECTOR, eventData, handler);
@@ -25,7 +25,7 @@ function bind (eventType, eventData, handler) {
25
25
  * Unbinds event handlers from the window object. See jQuery unbind
26
26
  * documentation for more details. Exceptions are caught and logged.
27
27
  */
28
- function unbind (eventType, handler) {
28
+ function unbind(eventType, handler) {
29
29
  try {
30
30
  return $target.off(eventType, handler);
31
31
  } catch (e) {
@@ -37,7 +37,7 @@ function unbind (eventType, handler) {
37
37
  * Triggers events on the window object. See jQuery trigger documentation for
38
38
  * more details. Exceptions are caught and logged.
39
39
  */
40
- function trigger (eventType, extraParameters) {
40
+ function trigger(eventType, extraParameters) {
41
41
  try {
42
42
  return $target.trigger(eventType, extraParameters);
43
43
  } catch (e) {
@@ -49,8 +49,4 @@ globalize('bind', bind);
49
49
  globalize('trigger', trigger);
50
50
  globalize('unbind', unbind);
51
51
 
52
- export {
53
- bind,
54
- unbind,
55
- trigger
56
- };
52
+ export { bind, unbind, trigger };
@@ -2,7 +2,6 @@ import $ from './jquery';
2
2
 
3
3
  import { getMessageLogger } from './internal/deprecation';
4
4
 
5
-
6
5
  const deprecate = {
7
6
  'aria-expanded': getMessageLogger('Expander [aria-expanded] attribute', {
8
7
  removeInVersion: '10.0.0',
@@ -23,7 +22,7 @@ const deprecate = {
23
22
  sinceVersion: '9.9.0',
24
23
  deprecationType: 'EXPANDER CLASS (PATTERN)',
25
24
  }),
26
- }
25
+ };
27
26
 
28
27
  const getExpanderProperties = ($trigger) => {
29
28
  const $content = $(`#${$trigger.attr('aria-controls')}`);
@@ -55,7 +54,8 @@ const getExpanderProperties = ($trigger) => {
55
54
  };
56
55
 
57
56
  function expand($trigger) {
58
- const { $content, isTriggerParent, $shortContent, textReplacement } = getExpanderProperties($trigger);
57
+ const { $content, isTriggerParent, $shortContent, textReplacement } =
58
+ getExpanderProperties($trigger);
59
59
 
60
60
  $trigger.attr('aria-expanded', 'true');
61
61
  $content.addClass('expanded');
@@ -70,7 +70,8 @@ function expand($trigger) {
70
70
  }
71
71
 
72
72
  function collapse($trigger) {
73
- const { $content, isTriggerParent, $shortContent, textReplacement } = getExpanderProperties($trigger);
73
+ const { $content, isTriggerParent, $shortContent, textReplacement } =
74
+ getExpanderProperties($trigger);
74
75
 
75
76
  replaceText($trigger, textReplacement);
76
77
  $trigger.attr('aria-expanded', 'false');
@@ -87,7 +88,6 @@ function collapse($trigger) {
87
88
  $trigger.trigger('aui-expander-collapsed');
88
89
  }
89
90
 
90
-
91
91
  function init($trigger) {
92
92
  const { $content, isTriggerParent, isExpanded } = getExpanderProperties($trigger);
93
93
 
@@ -120,7 +120,9 @@ function init($trigger) {
120
120
  }
121
121
 
122
122
  const replaceText = ($trigger, textReplacement) => {
123
- if (!textReplacement) { return };
123
+ if (!textReplacement) {
124
+ return;
125
+ }
124
126
 
125
127
  /**
126
128
  * ! Deprecated since 9.9.0
@@ -144,7 +146,7 @@ const replaceText = ($trigger, textReplacement) => {
144
146
 
145
147
  const EXPANDER_EVENTS = {
146
148
  'aui-expander-invoke': function (event) {
147
- const $trigger = $(event.currentTarget)
149
+ const $trigger = $(event.currentTarget);
148
150
  const { isCollapsible, isExpanded } = getExpanderProperties($trigger);
149
151
 
150
152
  if (isExpanded && isCollapsible) {
@@ -155,7 +157,7 @@ const EXPANDER_EVENTS = {
155
157
  },
156
158
 
157
159
  'aui-expander-expand': function (event) {
158
- expand($(event.currentTarget))
160
+ expand($(event.currentTarget));
159
161
  },
160
162
 
161
163
  'aui-expander-collapse': function (event) {
@@ -165,13 +167,13 @@ const EXPANDER_EVENTS = {
165
167
  'click.aui-expander': function (event) {
166
168
  const $target = $(event.currentTarget);
167
169
  $target.trigger('aui-expander-invoke', event.currentTarget);
168
- }
170
+ },
169
171
  };
170
172
 
171
173
  $(document).on(EXPANDER_EVENTS, '.aui-expander-trigger');
172
- $(document).ready(function() {
173
- $('.aui-expander-trigger').each(function() {
174
+ $(document).ready(function () {
175
+ $('.aui-expander-trigger').each(function () {
174
176
  const $trigger = $(this);
175
177
  init($trigger);
176
- })
177
- })
178
+ });
179
+ });
@@ -5,7 +5,7 @@ import globalize from './internal/globalize';
5
5
  import keyCode from './key-code';
6
6
  import CustomEvent from './polyfills/custom-event';
7
7
  import escapeHtml from './escape-html';
8
- import {CLOSE_BUTTON} from './close-button';
8
+ import { CLOSE_BUTTON } from './close-button';
9
9
 
10
10
  const AUTO_CLOSE_TIME = 8000;
11
11
  const ID_FLAG_CONTAINER = 'aui-flag-container';
@@ -17,7 +17,7 @@ const DEFAULT_OPTIONS = {
17
17
  duration: AUTO_CLOSE_TIME,
18
18
  };
19
19
 
20
- function flag (flagOptions) {
20
+ function flag(flagOptions) {
21
21
  const options = { ...DEFAULT_OPTIONS, ...flagOptions };
22
22
  options.title = (options.title || '').toString().trim();
23
23
 
@@ -37,7 +37,7 @@ function flag (flagOptions) {
37
37
  return $flag.get(0);
38
38
  }
39
39
 
40
- function extendFlagElement ($flag) {
40
+ function extendFlagElement($flag) {
41
41
  const flag = $flag[0];
42
42
 
43
43
  flag.close = function () {
@@ -45,7 +45,7 @@ function extendFlagElement ($flag) {
45
45
  };
46
46
  }
47
47
 
48
- function renderFlagElement ({body, title, close, type}) {
48
+ function renderFlagElement({ body, title, close, type }) {
49
49
  const titleHtml = title ? `<p class="title"><strong>${escapeHtml(title)}</strong></p>` : '';
50
50
  const html = `<div class="aui-message">${titleHtml}</div>`;
51
51
 
@@ -56,7 +56,7 @@ function renderFlagElement ({body, title, close, type}) {
56
56
  return $('<div class="aui-flag" aria-live="polite"></div>').append($message);
57
57
  }
58
58
 
59
- function makeCloseable ($flag) {
59
+ function makeCloseable($flag) {
60
60
  const $icon = $(CLOSE_BUTTON);
61
61
 
62
62
  $icon.on('click', function () {
@@ -64,7 +64,7 @@ function makeCloseable ($flag) {
64
64
  });
65
65
 
66
66
  $icon.on('keypress', function (e) {
67
- if ((e.which === keyCode.ENTER) || (e.which === keyCode.SPACE)) {
67
+ if (e.which === keyCode.ENTER || e.which === keyCode.SPACE) {
68
68
  closeFlag($flag);
69
69
  e.preventDefault();
70
70
  }
@@ -73,47 +73,45 @@ function makeCloseable ($flag) {
73
73
  return $flag.find('.aui-message').append($icon)[0];
74
74
  }
75
75
 
76
- function makeAutoClosable ($flag, duration) {
76
+ function makeAutoClosable($flag, duration) {
77
77
  $flag.find('.aui-message').addClass('aui-will-close');
78
78
  setTimeout(function () {
79
79
  $flag[0].close();
80
80
  }, duration);
81
81
  }
82
82
 
83
- function closeFlag ($flagToClose) {
83
+ function closeFlag($flagToClose) {
84
84
  const flag = $flagToClose.get(0);
85
85
 
86
86
  flag.removeAttribute('open');
87
- flag.dispatchEvent(new CustomEvent('aui-flag-close', {bubbles: true}));
87
+ flag.dispatchEvent(new CustomEvent('aui-flag-close', { bubbles: true }));
88
88
 
89
89
  return flag;
90
90
  }
91
91
 
92
- function handleFlagContainer () {
92
+ function handleFlagContainer() {
93
93
  const container = findContainer();
94
94
 
95
95
  if (container) {
96
96
  const closedFlags = container.querySelectorAll('.aui-flag:not([open])');
97
97
 
98
- Array.from(closedFlags).map(flag => flag.parentNode.removeChild(flag));
98
+ Array.from(closedFlags).map((flag) => flag.parentNode.removeChild(flag));
99
99
  } else {
100
100
  $('body').prepend('<div id="' + ID_FLAG_CONTAINER + '"></div>');
101
101
  }
102
102
  }
103
103
 
104
- function findContainer () {
104
+ function findContainer() {
105
105
  return document.getElementById(ID_FLAG_CONTAINER);
106
106
  }
107
107
 
108
- function insertFlag ($flag) {
108
+ function insertFlag($flag) {
109
109
  const flagContainer = findContainer();
110
110
 
111
111
  $flag.appendTo(flagContainer);
112
112
  recomputeStyle($flag);
113
113
 
114
- $flag
115
- .removeAttr('hidden')
116
- .attr('open','');
114
+ $flag.removeAttr('hidden').attr('open', '');
117
115
  }
118
116
 
119
117
  amdify('aui/flag', flag);
@@ -1,19 +1,19 @@
1
1
  import $ from './jquery';
2
2
  import globalize from './internal/globalize';
3
3
  import keyCodes from './key-code';
4
- import {getTrigger} from './trigger';
4
+ import { getTrigger } from './trigger';
5
5
 
6
- (function initSelectors () {
6
+ (function initSelectors() {
7
7
  /*
8
8
  :tabbable and :focusable functions from jQuery UI v 1.10.4
9
9
  renamed to :aui-tabbable and :aui-focusable to not clash with jquery-ui if it's included.
10
10
  */
11
11
 
12
- function visible (element) {
13
- return ($.css(element, 'visibility') === 'visible') && $(element).is(':visible');
12
+ function visible(element) {
13
+ return $.css(element, 'visibility') === 'visible' && $(element).is(':visible');
14
14
  }
15
15
 
16
- function focusable (element, isTabIndexNotNaN) {
16
+ function focusable(element, isTabIndexNotNaN) {
17
17
  var nodeName = element.nodeName.toLowerCase();
18
18
 
19
19
  if (nodeName === 'aui-select') {
@@ -32,27 +32,27 @@ import {getTrigger} from './trigger';
32
32
  }
33
33
  var isFormElement = /input|select|textarea|button|object|iframe/.test(nodeName);
34
34
  var isAnchor = nodeName === 'a';
35
- var isAnchorTabbable = (element.href || isTabIndexNotNaN);
35
+ var isAnchorTabbable = element.href || isTabIndexNotNaN;
36
36
 
37
37
  return (
38
- isFormElement ? !element.disabled :
39
- (isAnchor ? isAnchorTabbable : isTabIndexNotNaN)
40
- ) && visible(element);
38
+ (isFormElement ? !element.disabled : isAnchor ? isAnchorTabbable : isTabIndexNotNaN) &&
39
+ visible(element)
40
+ );
41
41
  }
42
42
 
43
- function tabbable (element) {
43
+ function tabbable(element) {
44
44
  var tabIndex = $.attr(element, 'tabindex');
45
45
  var isTabIndexNaN = isNaN(tabIndex);
46
- var hasTabIndex = (isTabIndexNaN || tabIndex >= 0);
46
+ var hasTabIndex = isTabIndexNaN || tabIndex >= 0;
47
47
 
48
48
  return hasTabIndex && focusable(element, !isTabIndexNaN);
49
49
  }
50
50
 
51
51
  $.extend($.expr.pseudos, {
52
- 'aui-focusable': element => focusable(element, !isNaN($.attr(element, 'tabindex'))),
53
- 'aui-tabbable': tabbable
52
+ 'aui-focusable': (element) => focusable(element, !isNaN($.attr(element, 'tabindex'))),
53
+ 'aui-tabbable': tabbable,
54
54
  });
55
- }());
55
+ })();
56
56
 
57
57
  var RESTORE_FOCUS_DATA_KEY = '_aui-focus-restore';
58
58
 
@@ -62,15 +62,15 @@ var RESTORE_FOCUS_DATA_KEY = '_aui-focus-restore';
62
62
  * @param {HTMLElement} $el - element to store the data about focus
63
63
  * @param {Element} [lastFocussedEl=document.activeElement] - last focused element
64
64
  */
65
- function setLastFocus ($el, lastFocussedEl = document.activeElement) {
65
+ function setLastFocus($el, lastFocussedEl = document.activeElement) {
66
66
  $el.data(RESTORE_FOCUS_DATA_KEY, lastFocussedEl);
67
67
  }
68
68
 
69
- function getLastFocus ($el) {
69
+ function getLastFocus($el) {
70
70
  return $($el.data(RESTORE_FOCUS_DATA_KEY));
71
71
  }
72
72
 
73
- function elementTrapsFocus ($el) {
73
+ function elementTrapsFocus($el) {
74
74
  return $el.is('.aui-dialog2') || $el.is('[aui-focus-trap="true"]');
75
75
  }
76
76
 
@@ -89,7 +89,8 @@ FocusManager.prototype.enter = function ($el, $lastFocused) {
89
89
 
90
90
  // focus on new selector
91
91
  if ($el.attr('data-aui-focus') !== 'false') {
92
- var focusSelector = $el.attr('data-aui-focus-selector') || FocusManager.defaultFocusSelector;
92
+ var focusSelector =
93
+ $el.attr('data-aui-focus-selector') || FocusManager.defaultFocusSelector;
93
94
  var $focusEl = $el.is(focusSelector) ? $el : $el.find(focusSelector);
94
95
  $focusEl.first().trigger('focus');
95
96
  }
@@ -1,8 +1,8 @@
1
1
  import $ from './jquery';
2
2
  import amdify from './internal/amdify';
3
3
  import skate from './internal/skate';
4
- import './spinner'
5
- import {getMessageLogger} from './internal/deprecation'
4
+ import './spinner';
5
+ import { getMessageLogger } from './internal/deprecation';
6
6
 
7
7
  const CLASS_NOTIFICATION_INITIALISED = '_aui-form-notification-initialised';
8
8
 
@@ -20,7 +20,7 @@ const NOTIFICATION_PRIORITY = [
20
20
  ATTRIBUTE_NOTIFICATION_ERROR,
21
21
  ATTRIBUTE_NOTIFICATION_SUCCESS,
22
22
  ATTRIBUTE_NOTIFICATION_WAIT,
23
- ATTRIBUTE_NOTIFICATION_INFO
23
+ ATTRIBUTE_NOTIFICATION_INFO,
24
24
  ];
25
25
 
26
26
  function initialiseNotification($field) {
@@ -46,7 +46,7 @@ function appendDescription($field, message) {
46
46
  const existingDescription = $field.parent().find('.description');
47
47
 
48
48
  if (!existingDescription.length) {
49
- $field.after(descriptionTemplate($field, message))
49
+ $field.after(descriptionTemplate($field, message));
50
50
  }
51
51
  }
52
52
 
@@ -137,7 +137,7 @@ function updateAriaInfo($field) {
137
137
  */
138
138
  function conditionallyGetFieldTarget($field) {
139
139
  const modifiers = {
140
- 'aui-select': 'input[type="text"][role="combobox"]'
140
+ 'aui-select': 'input[type="text"][role="combobox"]',
141
141
  };
142
142
 
143
143
  for (let [source, selector] of Object.entries(modifiers)) {
@@ -160,7 +160,10 @@ function isJqueryObject(el) {
160
160
  function errorMessageTemplate($field, messages) {
161
161
  const id = $field.attr('id') || $field.attr('name');
162
162
  const list = messages
163
- .map(message => `<li><span class="aui-icon aui-icon-small aui-iconfont-error aui-icon-notification"></span>${message}</li>`)
163
+ .map(
164
+ (message) =>
165
+ `<li><span class="aui-icon aui-icon-small aui-iconfont-error aui-icon-notification"></span>${message}</li>`
166
+ )
164
167
  .join('');
165
168
 
166
169
  return `<div class="error" role="alert" id="${id}-${ARIA_ERROR_POSTFIX}"><ul>${list}</ul></div>`;
@@ -170,9 +173,7 @@ function descriptionTemplate($field, messages) {
170
173
  const id = $field.attr('id') || $field.attr('name');
171
174
 
172
175
  if (messages.length > 1) {
173
- let list = messages
174
- .map(message => `<li>${message}</li>`)
175
- .join('');
176
+ let list = messages.map((message) => `<li>${message}</li>`).join('');
176
177
  return `<div class="description" id="${id}-${ARIA_DESCRIPTION_POSTFIX}"><ul>${list}</ul></div>`;
177
178
  }
178
179
  return `<div class="description" id="${id}-${ARIA_DESCRIPTION_POSTFIX}">${messages}</div>`;
@@ -205,7 +206,7 @@ function setFieldSpinner($field, isSpinnerVisible) {
205
206
 
206
207
  const deprecationLogger = getMessageLogger('data-aui-notification-field attribute', {
207
208
  deprecationType: 'ATTRIBUTE',
208
- alternativeName: 'HTML markup'
209
+ alternativeName: 'HTML markup',
209
210
  });
210
211
 
211
212
  skate('data-aui-notification-field', {
@@ -219,8 +220,8 @@ skate('data-aui-notification-field', {
219
220
  attrs[type] = synchroniseNotificationDisplay;
220
221
  });
221
222
  return attrs;
222
- }()),
223
- type: skate.type.ATTRIBUTE
223
+ })(),
224
+ type: skate.type.ATTRIBUTE,
224
225
  });
225
226
 
226
227
  amdify('aui/form-notification');
@@ -231,5 +232,5 @@ export {
231
232
  appendDescription,
232
233
  updateAriaInfo,
233
234
  errorMessageTemplate,
234
- setFieldSpinner
235
- }
235
+ setFieldSpinner,
236
+ };
@@ -11,13 +11,19 @@ function minMaxLength(field) {
11
11
  var minlength = parseInt(field.args('minlength'), 10);
12
12
  var maxlength = parseInt(field.args('maxlength'), 10);
13
13
 
14
- if (minlength && maxlength && minlength === maxlength && (!fieldIsEmpty && fieldValueLength !== minlength)) {
14
+ if (
15
+ minlength &&
16
+ maxlength &&
17
+ minlength === maxlength &&
18
+ !fieldIsEmpty &&
19
+ fieldValueLength !== minlength
20
+ ) {
15
21
  const exactlengthMessage = makeMessage('exactlength', field.args, [minlength]);
16
22
  field.invalidate(exactlengthMessage);
17
- } else if (minlength && (fieldValueLength < minlength && !fieldIsEmpty)) {
23
+ } else if (minlength && fieldValueLength < minlength && !fieldIsEmpty) {
18
24
  const minlengthMessage = makeMessage('minlength', field.args);
19
25
  field.invalidate(minlengthMessage);
20
- } else if (maxlength && (fieldValueLength > maxlength)) {
26
+ } else if (maxlength && fieldValueLength > maxlength) {
21
27
  const maxlengthMessage = makeMessage('maxlength', field.args);
22
28
  field.invalidate(maxlengthMessage);
23
29
  } else {
@@ -33,14 +39,17 @@ validatorRegister.register(['matchingfield'], function (field) {
33
39
  var matchingField = document.getElementById(field.args('matchingfield'));
34
40
  var matchingFieldValue = matchingField.value;
35
41
 
36
- var matchingFieldMessage = makeMessage('matchingfield', field.args, [thisFieldValue, matchingFieldValue]);
42
+ var matchingFieldMessage = makeMessage('matchingfield', field.args, [
43
+ thisFieldValue,
44
+ matchingFieldValue,
45
+ ]);
37
46
 
38
47
  var shouldHidePasswords = isPasswordField(field.el) || isPasswordField(matchingField);
39
48
  if (shouldHidePasswords) {
40
49
  matchingFieldMessage = makeMessage('matchingfield-novalue', field.args);
41
50
  }
42
51
 
43
- if (!thisFieldValue || !matchingFieldValue){
52
+ if (!thisFieldValue || !matchingFieldValue) {
44
53
  field.validate();
45
54
  } else if (matchingFieldValue !== thisFieldValue) {
46
55
  field.invalidate(matchingFieldMessage);
@@ -66,12 +75,12 @@ validatorRegister.register(['doesnotcontain'], function (field) {
66
75
 
67
76
  //Matches regex
68
77
 
69
- function matchesRegex(val, regex){
78
+ function matchesRegex(val, regex) {
70
79
  var matches = val.match(regex);
71
80
  if (!matches) {
72
81
  return false;
73
82
  }
74
- var isExactMatch = (val === matches[0]);
83
+ var isExactMatch = val === matches[0];
75
84
  return isExactMatch;
76
85
  }
77
86
 
@@ -114,9 +123,9 @@ function minOrMax(field) {
114
123
  var minValue = field.args('min');
115
124
  var maxValue = field.args('max');
116
125
 
117
- if (minValue && (fieldValue < parseInt(minValue, 10))) {
126
+ if (minValue && fieldValue < parseInt(minValue, 10)) {
118
127
  field.invalidate(makeMessage('min', field.args));
119
- } else if (maxValue && (fieldValue > parseInt(maxValue, 10))){
128
+ } else if (maxValue && fieldValue > parseInt(maxValue, 10)) {
120
129
  field.invalidate(makeMessage('max', field.args));
121
130
  } else {
122
131
  field.validate();
@@ -131,12 +140,12 @@ validatorRegister.register(['dateformat'], function (field) {
131
140
  var dateFormatMessage = makeMessage('dateformat', field.args);
132
141
 
133
142
  var symbolRegexMap = {
134
- 'Y': '[0-9]{4}',
135
- 'y': '[0-9]{2}',
136
- 'm': '(0?[1-9]|10|11|12)',
137
- 'M': '[Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec]',
138
- 'D': '[Mon|Tue|Wed|Thu|Fri|Sat|Sun]',
139
- 'd': '([0-2]?[1-9]|10|20|30|31)'
143
+ Y: '[0-9]{4}',
144
+ y: '[0-9]{2}',
145
+ m: '(0?[1-9]|10|11|12)',
146
+ M: '[Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec]',
147
+ D: '[Mon|Tue|Wed|Thu|Fri|Sat|Sun]',
148
+ d: '([0-2]?[1-9]|10|20|30|31)',
140
149
  };
141
150
 
142
151
  var dateFormatSymbolArray = dateFormatSymbolic.split('');
@@ -164,8 +173,8 @@ validatorRegister.register(['dateformat'], function (field) {
164
173
  //Checkbox count
165
174
  validatorRegister.register(['minchecked', 'maxchecked'], function (field) {
166
175
  var amountChecked = $(field.el).find(':checked').length;
167
- var aboveMin = !field.args('minchecked') || (amountChecked >= field.args('minchecked'));
168
- var belowMax = !field.args('maxchecked') || (amountChecked <= field.args('maxchecked'));
176
+ var aboveMin = !field.args('minchecked') || amountChecked >= field.args('minchecked');
177
+ var belowMax = !field.args('maxchecked') || amountChecked <= field.args('maxchecked');
169
178
 
170
179
  var belowMinMessage = makeMessage('minchecked', field.args);
171
180
  var aboveMaxMessage = makeMessage('maxchecked', field.args);
@@ -213,20 +222,20 @@ function makeMessage(key, accessorFunction, customTokens) {
213
222
  must appear verbatim for the plugin I18n transformation to pick it up
214
223
  */
215
224
  var pluginI18nMessages = {
216
- minlength: I18n.getText('aui.validation.message.minlength'),
217
- maxlength: I18n.getText('aui.validation.message.maxlength'),
218
- exactlength: I18n.getText('aui.validation.message.exactlength'),
219
- matchingfield: I18n.getText('aui.validation.message.matchingfield'),
225
+ 'minlength': I18n.getText('aui.validation.message.minlength'),
226
+ 'maxlength': I18n.getText('aui.validation.message.maxlength'),
227
+ 'exactlength': I18n.getText('aui.validation.message.exactlength'),
228
+ 'matchingfield': I18n.getText('aui.validation.message.matchingfield'),
220
229
  'matchingfield-novalue': I18n.getText('aui.validation.message.matchingfield-novalue'),
221
- doesnotcontain: I18n.getText('aui.validation.message.doesnotcontain'),
222
- pattern: I18n.getText('aui.validation.message.pattern'),
223
- required: I18n.getText('aui.validation.message.required'),
224
- validnumber: I18n.getText('aui.validation.message.validnumber'),
225
- min: I18n.getText('aui.validation.message.min'),
226
- max: I18n.getText('aui.validation.message.max'),
227
- dateformat: I18n.getText('aui.validation.message.dateformat'),
228
- minchecked: I18n.getText('aui.validation.message.minchecked'),
229
- maxchecked: I18n.getText('aui.validation.message.maxchecked')
230
+ 'doesnotcontain': I18n.getText('aui.validation.message.doesnotcontain'),
231
+ 'pattern': I18n.getText('aui.validation.message.pattern'),
232
+ 'required': I18n.getText('aui.validation.message.required'),
233
+ 'validnumber': I18n.getText('aui.validation.message.validnumber'),
234
+ 'min': I18n.getText('aui.validation.message.min'),
235
+ 'max': I18n.getText('aui.validation.message.max'),
236
+ 'dateformat': I18n.getText('aui.validation.message.dateformat'),
237
+ 'minchecked': I18n.getText('aui.validation.message.minchecked'),
238
+ 'maxchecked': I18n.getText('aui.validation.message.maxchecked'),
230
239
  };
231
240
 
232
241
  amdify('aui/form-validation/basic-validators');
@@ -5,7 +5,7 @@ import amdify from '../internal/amdify';
5
5
  var ATTRIBUTE_RESERVED_ARGUMENTS = ['displayfield', 'watchfield', 'when', 'novalidate', 'state'];
6
6
  var validators = [];
7
7
 
8
- function getReservedArgument (validatorArguments) {
8
+ function getReservedArgument(validatorArguments) {
9
9
  var reservedArgument = false;
10
10
 
11
11
  validatorArguments.some(function (arg) {
@@ -28,7 +28,7 @@ function getReservedArgument (validatorArguments) {
28
28
  * field - the field that is being validated
29
29
  * args - the arguments that have been specified in HTML markup.
30
30
  */
31
- function registerValidator (trigger, validatorFunction) {
31
+ function registerValidator(trigger, validatorFunction) {
32
32
  var triggerSelector;
33
33
 
34
34
  if (typeof trigger === 'string') {
@@ -37,7 +37,11 @@ function registerValidator (trigger, validatorFunction) {
37
37
  var reservedArgument = getReservedArgument(trigger);
38
38
 
39
39
  if (reservedArgument) {
40
- logger.warn('Validators cannot be registered with the argument "' + reservedArgument + '", as it is a reserved argument.');
40
+ logger.warn(
41
+ 'Validators cannot be registered with the argument "' +
42
+ reservedArgument +
43
+ '", as it is a reserved argument.'
44
+ );
41
45
  return false;
42
46
  }
43
47
 
@@ -46,7 +50,7 @@ function registerValidator (trigger, validatorFunction) {
46
50
 
47
51
  var validator = {
48
52
  validatorFunction: validatorFunction,
49
- validatorTrigger: triggerSelector
53
+ validatorTrigger: triggerSelector,
50
54
  };
51
55
 
52
56
  validators.push(validator);
@@ -58,7 +62,7 @@ var validatorRegister = {
58
62
  register: registerValidator,
59
63
  validators: function () {
60
64
  return validators;
61
- }
65
+ },
62
66
  };
63
67
 
64
68
  amdify('aui/form-validation/validator-register', validatorRegister);