@dialpad/dialtone-vue 3.20.0 → 3.21.0

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.
@@ -35,7 +35,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".enter-active,.leave-active{overflow:h
35
35
 
36
36
  /***/ }),
37
37
 
38
- /***/ 649:
38
+ /***/ 463:
39
39
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
40
40
 
41
41
  "use strict";
@@ -179,7 +179,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".dt-list-section[tabindex=\"-1\"]:focu
179
179
 
180
180
  /***/ }),
181
181
 
182
- /***/ 397:
182
+ /***/ 796:
183
183
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
184
184
 
185
185
  "use strict";
@@ -552,19 +552,19 @@ var update = add("7e717ca0", content, true, {"sourceMap":false,"shadowMode":fals
552
552
 
553
553
  /***/ }),
554
554
 
555
- /***/ 624:
555
+ /***/ 59:
556
556
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
557
557
 
558
558
  // style-loader: Adds some css to the DOM by adding a <style> tag
559
559
 
560
560
  // load the styles
561
- var content = __webpack_require__(649);
561
+ var content = __webpack_require__(463);
562
562
  if(content.__esModule) content = content.default;
563
563
  if(typeof content === 'string') content = [[module.id, content, '']];
564
564
  if(content.locals) module.exports = content.locals;
565
565
  // add the styles to the DOM
566
566
  var add = (__webpack_require__(402)/* ["default"] */ .Z)
567
- var update = add("307e5090", content, true, {"sourceMap":false,"shadowMode":false});
567
+ var update = add("3ec377be", content, true, {"sourceMap":false,"shadowMode":false});
568
568
 
569
569
  /***/ }),
570
570
 
@@ -648,19 +648,19 @@ var update = add("2b02cf58", content, true, {"sourceMap":false,"shadowMode":fals
648
648
 
649
649
  /***/ }),
650
650
 
651
- /***/ 238:
651
+ /***/ 882:
652
652
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
653
653
 
654
654
  // style-loader: Adds some css to the DOM by adding a <style> tag
655
655
 
656
656
  // load the styles
657
- var content = __webpack_require__(397);
657
+ var content = __webpack_require__(796);
658
658
  if(content.__esModule) content = content.default;
659
659
  if(typeof content === 'string') content = [[module.id, content, '']];
660
660
  if(content.locals) module.exports = content.locals;
661
661
  // add the styles to the DOM
662
662
  var add = (__webpack_require__(402)/* ["default"] */ .Z)
663
- var update = add("213be2ee", content, true, {"sourceMap":false,"shadowMode":false});
663
+ var update = add("0330dfb4", content, true, {"sourceMap":false,"shadowMode":false});
664
664
 
665
665
  /***/ }),
666
666
 
@@ -1706,11 +1706,11 @@ const badge_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(badgevue_typ
1706
1706
  ;// CONCATENATED MODULE: ./components/badge/index.js
1707
1707
 
1708
1708
 
1709
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/banner/banner.vue?vue&type=template&id=d449ad4a
1709
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/banner/banner.vue?vue&type=template&id=a3c41ca8
1710
1710
 
1711
- const bannervue_type_template_id_d449ad4a_hoisted_1 = ["role"];
1711
+ const bannervue_type_template_id_a3c41ca8_hoisted_1 = ["role"];
1712
1712
  const _hoisted_2 = ["aria-labelledby", "aria-describedby"];
1713
- function bannervue_type_template_id_d449ad4a_render(_ctx, _cache, $props, $setup, $data, $options) {
1713
+ function bannervue_type_template_id_a3c41ca8_render(_ctx, _cache, $props, $setup, $data, $options) {
1714
1714
  const _component_dt_notice_icon = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-notice-icon");
1715
1715
 
1716
1716
  const _component_dt_notice_content = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-notice-content");
@@ -1745,13 +1745,15 @@ function bannervue_type_template_id_d449ad4a_render(_ctx, _cache, $props, $setup
1745
1745
  }, 8, ["title-id", "content-id", "title"]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_notice_action, {
1746
1746
  "hide-close": $props.hideClose,
1747
1747
  "close-button-props": $props.closeButtonProps,
1748
+ "visually-hidden-close": _ctx.visuallyHiddenClose,
1749
+ "visually-hidden-close-label": _ctx.visuallyHiddenCloseLabel,
1748
1750
  onClose: _cache[0] || (_cache[0] = $event => _ctx.$emit('close'))
1749
1751
  }, {
1750
1752
  default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "action")]),
1751
1753
  _: 3
1752
- }, 8, ["hide-close", "close-button-props"])], 10, _hoisted_2)], 46, bannervue_type_template_id_d449ad4a_hoisted_1);
1754
+ }, 8, ["hide-close", "close-button-props", "visually-hidden-close", "visually-hidden-close-label"])], 10, _hoisted_2)], 46, bannervue_type_template_id_a3c41ca8_hoisted_1);
1753
1755
  }
1754
- ;// CONCATENATED MODULE: ./components/banner/banner.vue?vue&type=template&id=d449ad4a
1756
+ ;// CONCATENATED MODULE: ./components/banner/banner.vue?vue&type=template&id=a3c41ca8
1755
1757
 
1756
1758
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/notice/notice_icon.vue?vue&type=template&id=5544041e
1757
1759
 
@@ -2026,20 +2028,23 @@ function notice_contentvue_type_template_id_45f8172a_render(_ctx, _cache, $props
2026
2028
  const notice_content_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(notice_contentvue_type_script_lang_js, [['render',notice_contentvue_type_template_id_45f8172a_render]])
2027
2029
 
2028
2030
  /* harmony default export */ const notice_content = (notice_content_exports_);
2029
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/notice/notice_action.vue?vue&type=template&id=631bfaf8
2031
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/notice/notice_action.vue?vue&type=template&id=3fb27eac
2030
2032
 
2031
- const notice_actionvue_type_template_id_631bfaf8_hoisted_1 = {
2033
+ const notice_actionvue_type_template_id_3fb27eac_hoisted_1 = {
2032
2034
  class: "d-notice__actions",
2033
2035
  "data-qa": "notice-content-actions"
2034
2036
  };
2035
- function notice_actionvue_type_template_id_631bfaf8_render(_ctx, _cache, $props, $setup, $data, $options) {
2037
+ function notice_actionvue_type_template_id_3fb27eac_render(_ctx, _cache, $props, $setup, $data, $options) {
2036
2038
  const _component_icon_close = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("icon-close");
2037
2039
 
2038
2040
  const _component_dt_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-button");
2039
2041
 
2040
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", notice_actionvue_type_template_id_631bfaf8_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "default"), !$props.hideClose ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_button, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
2042
+ const _component_sr_only_close_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("sr-only-close-button");
2043
+
2044
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", notice_actionvue_type_template_id_3fb27eac_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "default"), !$props.hideClose ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_button, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
2041
2045
  key: 0,
2042
2046
  ref: "closeButton",
2047
+ "data-qa": "dt-notice-action-close-button",
2043
2048
  size: "sm",
2044
2049
  importance: "clear",
2045
2050
  circle: "",
@@ -2049,9 +2054,13 @@ function notice_actionvue_type_template_id_631bfaf8_render(_ctx, _cache, $props,
2049
2054
  }), {
2050
2055
  icon: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_icon_close)]),
2051
2056
  _: 1
2052
- }, 16, ["aria-label", "onClick"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)]);
2057
+ }, 16, ["aria-label", "onClick"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), _ctx.showVisuallyHiddenClose ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_sr_only_close_button, {
2058
+ key: 1,
2059
+ "visually-hidden-close-label": _ctx.visuallyHiddenCloseLabel,
2060
+ onClose: $options.close
2061
+ }, null, 8, ["visually-hidden-close-label", "onClose"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)]);
2053
2062
  }
2054
- ;// CONCATENATED MODULE: ./components/notice/notice_action.vue?vue&type=template&id=631bfaf8
2063
+ ;// CONCATENATED MODULE: ./components/notice/notice_action.vue?vue&type=template&id=3fb27eac
2055
2064
 
2056
2065
  ;// CONCATENATED MODULE: ./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./node_modules/@dialpad/dialtone/lib/dist/vue/icons/IconClose.vue?vue&type=template&id=4ef5457b
2057
2066
 
@@ -2465,15 +2474,130 @@ const LINK_KIND_MODIFIERS = {
2465
2474
  const button_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(buttonvue_type_script_lang_js, [['render',buttonvue_type_template_id_6d10e472_render]])
2466
2475
 
2467
2476
  /* harmony default export */ const button_button = (button_exports_);
2477
+ ;// CONCATENATED MODULE: ./common/mixins/sr_only_close_button.js
2478
+ /**
2479
+ * @displayName Sr-Only close button mixin
2480
+ */
2481
+ /* harmony default export */ const sr_only_close_button = ({
2482
+ props: {
2483
+ /**
2484
+ * If true, a hidden close button is included for screen readers
2485
+ * @values true, false
2486
+ */
2487
+ visuallyHiddenClose: {
2488
+ type: Boolean,
2489
+ default: false
2490
+ },
2491
+
2492
+ /**
2493
+ * Label for the visually hidden close button
2494
+ * Required if visuallyHiddenClose is set to `true`
2495
+ */
2496
+ visuallyHiddenCloseLabel: {
2497
+ type: String,
2498
+ default: null
2499
+ }
2500
+ },
2501
+ watch: {
2502
+ $props: {
2503
+ immediate: true,
2504
+ deep: true,
2505
+
2506
+ handler() {
2507
+ this.validateVisuallyHiddenCloseProps();
2508
+ }
2509
+
2510
+ }
2511
+ },
2512
+ computed: {
2513
+ showVisuallyHiddenClose() {
2514
+ return this.visuallyHiddenClose && this.visuallyHiddenCloseLabel != null;
2515
+ }
2516
+
2517
+ },
2518
+ methods: {
2519
+ validateVisuallyHiddenCloseProps() {
2520
+ if (this.visuallyHiddenClose && !this.visuallyHiddenCloseLabel) {
2521
+ console.error(`If visuallyHiddenClose prop is true, the component includes
2522
+ a visually hidden close button and you must set the visuallyHiddenCloseLabel prop.`);
2523
+ }
2524
+ }
2525
+
2526
+ }
2527
+ });
2528
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./common/sr_only_close_button.vue?vue&type=template&id=3480ff70
2529
+
2530
+ function sr_only_close_buttonvue_type_template_id_3480ff70_render(_ctx, _cache, $props, $setup, $data, $options) {
2531
+ const _component_icon_close = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("icon-close");
2532
+
2533
+ const _component_dt_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-button");
2534
+
2535
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_button, {
2536
+ id: "sr-only-close-button",
2537
+ "data-qa": "dt-sr-only-close-button",
2538
+ class: "d-vi-visible-sr",
2539
+ "aria-label": $props.visuallyHiddenCloseLabel,
2540
+ onClick: $options.close,
2541
+ onKeydown: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.withModifiers)($options.close, ["prevent", "stop"]), ["space"])
2542
+ }, {
2543
+ default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_icon_close)]),
2544
+ _: 1
2545
+ }, 8, ["aria-label", "onClick", "onKeydown"]);
2546
+ }
2547
+ ;// CONCATENATED MODULE: ./common/sr_only_close_button.vue?vue&type=template&id=3480ff70
2548
+
2549
+ ;// CONCATENATED MODULE: ./components/button/index.js
2550
+
2551
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./common/sr_only_close_button.vue?vue&type=script&lang=js
2552
+
2553
+
2554
+ /* harmony default export */ const sr_only_close_buttonvue_type_script_lang_js = ({
2555
+ name: 'SrOnlyCloseButton',
2556
+ components: {
2557
+ IconClose: IconClose,
2558
+ DtButton: button_button
2559
+ },
2560
+ props: {
2561
+ /**
2562
+ * Label for the visually hidden close button
2563
+ * Required if visuallyHiddenClose is set to `true`
2564
+ */
2565
+ visuallyHiddenCloseLabel: {
2566
+ type: String,
2567
+ default: null
2568
+ }
2569
+ },
2570
+ methods: {
2571
+ close() {
2572
+ this.$emit('close');
2573
+ }
2574
+
2575
+ }
2576
+ });
2577
+ ;// CONCATENATED MODULE: ./common/sr_only_close_button.vue?vue&type=script&lang=js
2578
+
2579
+ ;// CONCATENATED MODULE: ./common/sr_only_close_button.vue
2580
+
2581
+
2582
+
2583
+
2584
+ ;
2585
+ const sr_only_close_button_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(sr_only_close_buttonvue_type_script_lang_js, [['render',sr_only_close_buttonvue_type_template_id_3480ff70_render]])
2586
+
2587
+ /* harmony default export */ const common_sr_only_close_button = (sr_only_close_button_exports_);
2468
2588
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/notice/notice_action.vue?vue&type=script&lang=js
2469
2589
 
2470
2590
 
2591
+
2592
+
2471
2593
  /* harmony default export */ const notice_actionvue_type_script_lang_js = ({
2472
2594
  name: 'DtNoticeAction',
2473
2595
  components: {
2474
2596
  IconClose: IconClose,
2475
- DtButton: button_button
2597
+ DtButton: button_button,
2598
+ SrOnlyCloseButton: common_sr_only_close_button
2476
2599
  },
2600
+ mixins: [sr_only_close_button],
2477
2601
  props: {
2478
2602
  /**
2479
2603
  * Props for the notice close button.
@@ -2499,6 +2623,17 @@ const button_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(buttonvue_t
2499
2623
  * @event close
2500
2624
  */
2501
2625
  'close'],
2626
+ watch: {
2627
+ $props: {
2628
+ immediate: true,
2629
+ deep: true,
2630
+
2631
+ handler() {
2632
+ this.validateProps();
2633
+ }
2634
+
2635
+ }
2636
+ },
2502
2637
 
2503
2638
  created() {
2504
2639
  if (!this.hideClose && !this.closeButtonProps.ariaLabel) {
@@ -2521,6 +2656,12 @@ const button_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(buttonvue_t
2521
2656
  methods: {
2522
2657
  close() {
2523
2658
  this.$emit('close');
2659
+ },
2660
+
2661
+ validateProps() {
2662
+ if (this.hideClose && !this.visuallyHiddenClose) {
2663
+ console.error('If hideClose prop is true, visuallyHiddenClose and visuallyHiddenCloseLabel props ' + 'need to be set so the component always includes a close button');
2664
+ }
2524
2665
  }
2525
2666
 
2526
2667
  }
@@ -2533,7 +2674,7 @@ const button_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(buttonvue_t
2533
2674
 
2534
2675
 
2535
2676
  ;
2536
- const notice_action_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(notice_actionvue_type_script_lang_js, [['render',notice_actionvue_type_template_id_631bfaf8_render]])
2677
+ const notice_action_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(notice_actionvue_type_script_lang_js, [['render',notice_actionvue_type_template_id_3fb27eac_render]])
2537
2678
 
2538
2679
  /* harmony default export */ const notice_action = (notice_action_exports_);
2539
2680
  ;// CONCATENATED MODULE: ./common/mixins/modal.js
@@ -2661,6 +2802,7 @@ const focusableElementsList = `button,[href],input,select,textarea,details,[tabi
2661
2802
 
2662
2803
 
2663
2804
 
2805
+
2664
2806
  /**
2665
2807
  * Banners are a type of notice, delivering system and engagement messaging.
2666
2808
  * These are highly intrusive notices and should be used sparingly and appropriately.
@@ -2674,7 +2816,7 @@ const focusableElementsList = `button,[href],input,select,textarea,details,[tabi
2674
2816
  DtNoticeContent: notice_content,
2675
2817
  DtNoticeAction: notice_action
2676
2818
  },
2677
- mixins: [modal],
2819
+ mixins: [modal, sr_only_close_button],
2678
2820
  props: {
2679
2821
  /**
2680
2822
  * Sets an ID on the title element of the component. Useful for aria-describedby
@@ -2853,7 +2995,7 @@ const focusableElementsList = `button,[href],input,select,textarea,details,[tabi
2853
2995
 
2854
2996
 
2855
2997
  ;
2856
- const banner_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(bannervue_type_script_lang_js, [['render',bannervue_type_template_id_d449ad4a_render]])
2998
+ const banner_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(bannervue_type_script_lang_js, [['render',bannervue_type_template_id_a3c41ca8_render]])
2857
2999
 
2858
3000
  /* harmony default export */ const banner = (banner_exports_);
2859
3001
  ;// CONCATENATED MODULE: ./components/banner/index.js
@@ -3106,8 +3248,6 @@ const breadcrumbs_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(breadc
3106
3248
 
3107
3249
 
3108
3250
 
3109
- ;// CONCATENATED MODULE: ./components/button/index.js
3110
-
3111
3251
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/button_group/button_group.vue?vue&type=template&id=26eb52e6
3112
3252
 
3113
3253
  function button_groupvue_type_template_id_26eb52e6_render(_ctx, _cache, $props, $setup, $data, $options) {
@@ -3526,7 +3666,7 @@ const ERROR_INVALID_LIST_ELEMENT = 'listElementKey is required or the referenced
3526
3666
  return null;
3527
3667
  }
3528
3668
 
3529
- return Array.from(listElement.querySelectorAll(`[role="${listItemRole}"]`));
3669
+ return Array.from(listElement.querySelectorAll(`[role="${listItemRole}"], #sr-only-close-button`));
3530
3670
  },
3531
3671
 
3532
3672
  onUpKey() {
@@ -3633,7 +3773,7 @@ const ERROR_INVALID_LIST_ELEMENT = 'listElementKey is required or the referenced
3633
3773
  return;
3634
3774
  }
3635
3775
 
3636
- const listItems = Array.from(listElement.querySelectorAll(`[role="${listItemRole}"]`));
3776
+ const listItems = Array.from(listElement.querySelectorAll(`[role="${listItemRole}"], #sr-only-close-button`));
3637
3777
  return listItems.indexOf(listElement.querySelector(`#${id}`));
3638
3778
  },
3639
3779
 
@@ -3646,7 +3786,7 @@ const ERROR_INVALID_LIST_ELEMENT = 'listElementKey is required or the referenced
3646
3786
  return;
3647
3787
  }
3648
3788
 
3649
- return (_listElement$querySel = listElement.querySelectorAll(`[role="${listItemRole}"]`)[index]) === null || _listElement$querySel === void 0 ? void 0 : _listElement$querySel.id;
3789
+ return (_listElement$querySel = listElement.querySelectorAll(`[role="${listItemRole}"], #sr-only-close-button`)[index]) === null || _listElement$querySel === void 0 ? void 0 : _listElement$querySel.id;
3650
3790
  },
3651
3791
 
3652
3792
  scrollActiveItemIntoViewIfNeeded() {
@@ -4836,25 +4976,25 @@ const skeleton_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(skeletonv
4836
4976
  const combobox_loading_list_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(combobox_loading_listvue_type_script_lang_js, [['render',combobox_loading_listvue_type_template_id_07d9971d_render]])
4837
4977
 
4838
4978
  /* harmony default export */ const combobox_loading_list = (combobox_loading_list_exports_);
4839
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/combobox/combobox_empty-list.vue?vue&type=template&id=d0c59b2c
4979
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/combobox/combobox_empty-list.vue?vue&type=template&id=ee5abe2c
4840
4980
 
4841
- const combobox_empty_listvue_type_template_id_d0c59b2c_hoisted_1 = {
4981
+ const combobox_empty_listvue_type_template_id_ee5abe2c_hoisted_1 = {
4842
4982
  class: "d-p0",
4843
4983
  "data-qa": "dt-combobox-empty-list"
4844
4984
  };
4845
- function combobox_empty_listvue_type_template_id_d0c59b2c_render(_ctx, _cache, $props, $setup, $data, $options) {
4985
+ function combobox_empty_listvue_type_template_id_ee5abe2c_render(_ctx, _cache, $props, $setup, $data, $options) {
4846
4986
  const _component_dt_list_item = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-list-item");
4847
4987
 
4848
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("ol", combobox_empty_listvue_type_template_id_d0c59b2c_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_list_item, {
4988
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("ol", combobox_empty_listvue_type_template_id_ee5abe2c_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_list_item, {
4849
4989
  class: "d-d-flex d-jc-center",
4850
4990
  role: "option",
4851
- "navigation-type": "arrow-keys"
4991
+ "navigation-type": "none"
4852
4992
  }, {
4853
4993
  default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("span", null, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.message), 1)]),
4854
4994
  _: 1
4855
4995
  })]);
4856
4996
  }
4857
- ;// CONCATENATED MODULE: ./components/combobox/combobox_empty-list.vue?vue&type=template&id=d0c59b2c
4997
+ ;// CONCATENATED MODULE: ./components/combobox/combobox_empty-list.vue?vue&type=template&id=ee5abe2c
4858
4998
 
4859
4999
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/combobox/combobox_empty-list.vue?vue&type=script&lang=js
4860
5000
 
@@ -4881,7 +5021,7 @@ function combobox_empty_listvue_type_template_id_d0c59b2c_render(_ctx, _cache, $
4881
5021
 
4882
5022
 
4883
5023
  ;
4884
- const combobox_empty_list_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(combobox_empty_listvue_type_script_lang_js, [['render',combobox_empty_listvue_type_template_id_d0c59b2c_render]])
5024
+ const combobox_empty_list_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(combobox_empty_listvue_type_script_lang_js, [['render',combobox_empty_listvue_type_template_id_ee5abe2c_render]])
4885
5025
 
4886
5026
  /* harmony default export */ const combobox_empty_list = (combobox_empty_list_exports_);
4887
5027
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/combobox/combobox.vue?vue&type=script&lang=js
@@ -5789,10 +5929,12 @@ const collapsible_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(collap
5789
5929
  /* harmony default export */ const collapsible = (collapsible_exports_);
5790
5930
  ;// CONCATENATED MODULE: ./components/collapsible/index.js
5791
5931
 
5792
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/dropdown/dropdown.vue?vue&type=template&id=a7e3156a
5932
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/dropdown/dropdown.vue?vue&type=template&id=2021ac9d
5933
+
5934
+ const dropdownvue_type_template_id_2021ac9d_hoisted_1 = ["id"];
5935
+ function dropdownvue_type_template_id_2021ac9d_render(_ctx, _cache, $props, $setup, $data, $options) {
5936
+ const _component_sr_only_close_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("sr-only-close-button");
5793
5937
 
5794
- const dropdownvue_type_template_id_a7e3156a_hoisted_1 = ["id"];
5795
- function dropdownvue_type_template_id_a7e3156a_render(_ctx, _cache, $props, $setup, $data, $options) {
5796
5938
  const _component_dt_popover = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-popover");
5797
5939
 
5798
5940
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_popover, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
@@ -5838,23 +5980,26 @@ function dropdownvue_type_template_id_a7e3156a_render(_ctx, _cache, $props, $set
5838
5980
  })
5839
5981
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "list", {
5840
5982
  close: close
5841
- })], 42, dropdownvue_type_template_id_a7e3156a_hoisted_1)];
5983
+ }), _ctx.showVisuallyHiddenClose ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_sr_only_close_button, {
5984
+ key: 0,
5985
+ "visually-hidden-close-label": _ctx.visuallyHiddenCloseLabel,
5986
+ tabindex: $options.isArrowKeyNav ? -1 : 0,
5987
+ onClose: close
5988
+ }, null, 8, ["visually-hidden-close-label", "tabindex", "onClose"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)], 42, dropdownvue_type_template_id_2021ac9d_hoisted_1)];
5842
5989
  }),
5843
5990
  _: 3
5844
5991
  }, 16, ["content-width", "open", "placement", "initial-focus-element", "fallback-placements", "modal", "max-height", "max-width", "open-on-context", "onOpened", "onKeydown"]);
5845
5992
  }
5846
- ;// CONCATENATED MODULE: ./components/dropdown/dropdown.vue?vue&type=template&id=a7e3156a
5993
+ ;// CONCATENATED MODULE: ./components/dropdown/dropdown.vue?vue&type=template&id=2021ac9d
5847
5994
 
5848
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/popover/popover.vue?vue&type=template&id=54b6d17a
5995
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/popover/popover.vue?vue&type=template&id=90818940
5849
5996
 
5850
- const popovervue_type_template_id_54b6d17a_hoisted_1 = ["aria-hidden"];
5851
- const popovervue_type_template_id_54b6d17a_hoisted_2 = ["id", "tabindex"];
5852
- function popovervue_type_template_id_54b6d17a_render(_ctx, _cache, $props, $setup, $data, $options) {
5997
+ const popovervue_type_template_id_90818940_hoisted_1 = ["aria-hidden"];
5998
+ const popovervue_type_template_id_90818940_hoisted_2 = ["id", "tabindex"];
5999
+ function popovervue_type_template_id_90818940_render(_ctx, _cache, $props, $setup, $data, $options) {
5853
6000
  const _component_popover_header_footer = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("popover-header-footer");
5854
6001
 
5855
- const _component_icon_close = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("icon-close");
5856
-
5857
- const _component_dt_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-button");
6002
+ const _component_sr_only_close_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("sr-only-close-button");
5858
6003
 
5859
6004
  const _component_dt_lazy_show = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-lazy-show");
5860
6005
 
@@ -5865,10 +6010,10 @@ function popovervue_type_template_id_54b6d17a_render(_ctx, _cache, $props, $setu
5865
6010
  class: "d-modal--transparent",
5866
6011
  "aria-hidden": $props.modal && $data.isOpen ? 'false' : 'true',
5867
6012
  onClick: _cache[0] || (_cache[0] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withModifiers)(() => {}, ["prevent", "stop"]))
5868
- }, null, 8, popovervue_type_template_id_54b6d17a_hoisted_1)])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveDynamicComponent)($props.elementType), {
6013
+ }, null, 8, popovervue_type_template_id_90818940_hoisted_1)])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveDynamicComponent)($props.elementType), {
5869
6014
  ref: "popover",
5870
6015
  class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['d-popover', {
5871
- 'd-popover__anchor--modal-opened': $props.modal && $data.isOpen
6016
+ 'd-popover__anchor--opened': $data.isOpen
5872
6017
  }]),
5873
6018
  "data-qa": "dt-popover-container"
5874
6019
  }, {
@@ -5898,7 +6043,7 @@ function popovervue_type_template_id_54b6d17a_render(_ctx, _cache, $props, $setu
5898
6043
  'aria-controls': $props.id,
5899
6044
  'aria-haspopup': $props.role
5900
6045
  }
5901
- })], 40, popovervue_type_template_id_54b6d17a_hoisted_2), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_lazy_show, {
6046
+ })], 40, popovervue_type_template_id_90818940_hoisted_2), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_lazy_show, {
5902
6047
  id: $props.id,
5903
6048
  ref: "content",
5904
6049
  role: $props.role,
@@ -5943,16 +6088,7 @@ function popovervue_type_template_id_54b6d17a_render(_ctx, _cache, $props, $setu
5943
6088
  class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['d-popover__content', $data.POPOVER_PADDING_CLASSES[$props.padding], $props.contentClass])
5944
6089
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "content", {
5945
6090
  close: $options.closePopover
5946
- }), $props.visuallyHiddenClose ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_button, {
5947
- key: 0,
5948
- "data-qa": "dt-popover-sr-only-close",
5949
- class: "d-vi-visible-sr",
5950
- "aria-label": $props.visuallyHiddenCloseLabel,
5951
- onClick: $options.closePopover
5952
- }, {
5953
- default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_icon_close)]),
5954
- _: 1
5955
- }, 8, ["aria-label", "onClick"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)], 2), _ctx.$slots.footerContent ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_popover_header_footer, {
6091
+ })], 2), _ctx.$slots.footerContent ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_popover_header_footer, {
5956
6092
  key: 1,
5957
6093
  ref: "popover__footer",
5958
6094
  type: "footer",
@@ -5963,13 +6099,17 @@ function popovervue_type_template_id_54b6d17a_render(_ctx, _cache, $props, $setu
5963
6099
  close: $options.closePopover
5964
6100
  })]),
5965
6101
  _: 3
5966
- }, 8, ["class", "content-class"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)]),
6102
+ }, 8, ["class", "content-class"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), _ctx.showVisuallyHiddenClose ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_sr_only_close_button, {
6103
+ key: 2,
6104
+ "visually-hidden-close-label": _ctx.visuallyHiddenCloseLabel,
6105
+ onClose: $options.closePopover
6106
+ }, null, 8, ["visually-hidden-close-label", "onClose"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)]),
5967
6107
  _: 3
5968
6108
  }, 8, ["id", "role", "aria-hidden", "aria-labelledby", "aria-label", "aria-modal", "transition", "show", "class", "style", "css", "tabindex", "onKeydownCapture", "onAfterLeave", "onAfterEnter"])]),
5969
6109
  _: 3
5970
6110
  }, 8, ["class"]))]);
5971
6111
  }
5972
- ;// CONCATENATED MODULE: ./components/popover/popover.vue?vue&type=template&id=54b6d17a
6112
+ ;// CONCATENATED MODULE: ./components/popover/popover.vue?vue&type=template&id=90818940
5973
6113
 
5974
6114
  ;// CONCATENATED MODULE: ./node_modules/@popperjs/core/lib/dom-utils/getWindow.js
5975
6115
  function getWindow(node) {
@@ -10663,16 +10803,15 @@ const popover_header_footer_exports_ = /*#__PURE__*/(0,exportHelper/* default */
10663
10803
  * CHILD COMPONENTS *
10664
10804
  ********************/
10665
10805
  components: {
10806
+ SrOnlyCloseButton: common_sr_only_close_button,
10666
10807
  DtLazyShow: lazy_show,
10667
- PopoverHeaderFooter: popover_header_footer,
10668
- DtButton: button_button,
10669
- IconClose: IconClose
10808
+ PopoverHeaderFooter: popover_header_footer
10670
10809
  },
10671
- mixins: [modal],
10810
+ mixins: [modal, sr_only_close_button],
10672
10811
  props: {
10673
10812
  /**
10674
10813
  * Controls whether the popover is shown. Leaving this null will have the popover trigger on click by default.
10675
- * If you set this value, the default trigger behavior will be disabled and you can control it as you need.
10814
+ * If you set this value, the default trigger behavior will be disabled, and you can control it as you need.
10676
10815
  * Supports v-model
10677
10816
  * @values null, true, false
10678
10817
  */
@@ -10955,7 +11094,7 @@ const popover_header_footer_exports_ = /*#__PURE__*/(0,exportHelper/* default */
10955
11094
  */
10956
11095
  initialFocusElement: {
10957
11096
  type: [String, HTMLElement],
10958
- default: 'none',
11097
+ default: 'first',
10959
11098
  validator: initialFocusElement => {
10960
11099
  return POPOVER_INITIAL_FOCUS_STRINGS.includes(initialFocusElement) || initialFocusElement instanceof HTMLElement || initialFocusElement.startsWith('#');
10961
11100
  }
@@ -10969,24 +11108,6 @@ const popover_header_footer_exports_ = /*#__PURE__*/(0,exportHelper/* default */
10969
11108
  openWithArrowKeys: {
10970
11109
  type: Boolean,
10971
11110
  default: false
10972
- },
10973
-
10974
- /**
10975
- * If true, a visually hidden close button its included in the popover.
10976
- * @values true, false
10977
- */
10978
- visuallyHiddenClose: {
10979
- type: Boolean,
10980
- default: false
10981
- },
10982
-
10983
- /**
10984
- * Label for the visually hidden close button
10985
- * Required if visuallyHiddenClose is set to `true`
10986
- */
10987
- visuallyHiddenCloseLabel: {
10988
- type: String,
10989
- default: ''
10990
11111
  }
10991
11112
  },
10992
11113
  emits: [
@@ -11034,7 +11155,7 @@ const popover_header_footer_exports_ = /*#__PURE__*/(0,exportHelper/* default */
11034
11155
 
11035
11156
  modal(modal) {
11036
11157
  this.tip.setProps({
11037
- zIndex: modal ? 650 : 300
11158
+ zIndex: this.modal ? 650 : this.calculateAnchorZindex()
11038
11159
  });
11039
11160
  },
11040
11161
 
@@ -11081,6 +11202,9 @@ const popover_header_footer_exports_ = /*#__PURE__*/(0,exportHelper/* default */
11081
11202
 
11082
11203
  isOpen(isOpen, isPrev) {
11083
11204
  if (isOpen) {
11205
+ this.tip.setProps({
11206
+ zIndex: this.modal ? 650 : this.calculateAnchorZindex()
11207
+ });
11084
11208
  this.tip.show();
11085
11209
  this.addClosePopoverEventListener();
11086
11210
  } else if (!isOpen && isPrev !== isOpen) {
@@ -11149,10 +11273,6 @@ const popover_header_footer_exports_ = /*#__PURE__*/(0,exportHelper/* default */
11149
11273
  if (this.modal && this.initialFocusElement === 'none') {
11150
11274
  console.error('If the popover is modal you must set the ' + 'initialFocusElement prop. Possible values: "dialog", "first", HTMLElement');
11151
11275
  }
11152
-
11153
- if (this.visuallyHiddenClose && !this.visuallyHiddenCloseLabel) {
11154
- console.error('If visuallyHiddenClose prop is true (default), the popover includes a visually hidden ' + 'close button and you must set the visuallyHiddenCloseLabel prop.');
11155
- }
11156
11276
  },
11157
11277
 
11158
11278
  calculateAnchorZindex() {
@@ -11313,9 +11433,9 @@ const popover_header_footer_exports_ = /*#__PURE__*/(0,exportHelper/* default */
11313
11433
  },
11314
11434
 
11315
11435
  onClickOutside() {
11316
- if (!this.hideOnClick) return; // If a modal popover is opened inside of this one, do not hide on click out
11436
+ if (!this.hideOnClick) return; // If a popover is opened inside of this one, do not hide on click out
11317
11437
 
11318
- const innerModals = this.popoverContentEl.querySelector('.d-popover__anchor--modal-opened');
11438
+ const innerModals = this.popoverContentEl.querySelector('.d-popover__anchor--opened');
11319
11439
 
11320
11440
  if (!innerModals) {
11321
11441
  this.closePopover();
@@ -11358,9 +11478,9 @@ const popover_header_footer_exports_ = /*#__PURE__*/(0,exportHelper/* default */
11358
11478
  });
11359
11479
  ;// CONCATENATED MODULE: ./components/popover/popover.vue?vue&type=script&lang=js
11360
11480
 
11361
- // EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-74.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-74.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-74.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-74.use[3]!./node_modules/less-loader/dist/cjs.js??clonedRuleSet-74.use[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/popover/popover.vue?vue&type=style&index=0&id=54b6d17a&lang=less
11362
- var popovervue_type_style_index_0_id_54b6d17a_lang_less = __webpack_require__(238);
11363
- ;// CONCATENATED MODULE: ./components/popover/popover.vue?vue&type=style&index=0&id=54b6d17a&lang=less
11481
+ // EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-74.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-74.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-74.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-74.use[3]!./node_modules/less-loader/dist/cjs.js??clonedRuleSet-74.use[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/popover/popover.vue?vue&type=style&index=0&id=90818940&lang=less
11482
+ var popovervue_type_style_index_0_id_90818940_lang_less = __webpack_require__(882);
11483
+ ;// CONCATENATED MODULE: ./components/popover/popover.vue?vue&type=style&index=0&id=90818940&lang=less
11364
11484
 
11365
11485
  ;// CONCATENATED MODULE: ./components/popover/popover.vue
11366
11486
 
@@ -11370,7 +11490,7 @@ var popovervue_type_style_index_0_id_54b6d17a_lang_less = __webpack_require__(23
11370
11490
  ;
11371
11491
 
11372
11492
 
11373
- const popover_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(popovervue_type_script_lang_js, [['render',popovervue_type_template_id_54b6d17a_render]])
11493
+ const popover_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(popovervue_type_script_lang_js, [['render',popovervue_type_template_id_90818940_render]])
11374
11494
 
11375
11495
  /* harmony default export */ const popover = (popover_exports_);
11376
11496
  ;// CONCATENATED MODULE: ./components/popover/index.js
@@ -11388,10 +11508,13 @@ const DROPDOWN_PADDING_CLASSES = {
11388
11508
 
11389
11509
 
11390
11510
 
11511
+
11512
+
11391
11513
  /* harmony default export */ const dropdownvue_type_script_lang_js = ({
11392
11514
  name: 'DtDropdown',
11393
11515
  components: {
11394
- DtPopover: popover
11516
+ DtPopover: popover,
11517
+ SrOnlyCloseButton: common_sr_only_close_button
11395
11518
  },
11396
11519
  mixins: [keyboard_list_navigation({
11397
11520
  indexKey: 'highlightIndex',
@@ -11403,7 +11526,7 @@ const DROPDOWN_PADDING_CLASSES = {
11403
11526
  endOfListMethod: 'endOfListMethod',
11404
11527
  activeItemKey: 'activeItemEl',
11405
11528
  focusOnKeyboardNavigation: true
11406
- })],
11529
+ }), sr_only_close_button],
11407
11530
  inheritAttrs: false,
11408
11531
  props: {
11409
11532
  /**
@@ -11618,6 +11741,10 @@ const DROPDOWN_PADDING_CLASSES = {
11618
11741
  },
11619
11742
 
11620
11743
  afterHighlight() {
11744
+ if (this.visuallyHiddenClose && this.highlightIndex === this._itemsLength() - 1) {
11745
+ return;
11746
+ }
11747
+
11621
11748
  this.$emit('highlight', this.highlightIndex);
11622
11749
  },
11623
11750
 
@@ -11625,7 +11752,7 @@ const DROPDOWN_PADDING_CLASSES = {
11625
11752
  this.isOpen = isPopoverOpen;
11626
11753
 
11627
11754
  if (isPopoverOpen) {
11628
- if (this.openedWithKeyboard && this.navigationType === this.LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS) {
11755
+ if (this.openedWithKeyboard && this.isArrowKeyNav) {
11629
11756
  this.setHighlightIndex(0);
11630
11757
  }
11631
11758
 
@@ -11709,9 +11836,9 @@ const DROPDOWN_PADDING_CLASSES = {
11709
11836
  });
11710
11837
  ;// CONCATENATED MODULE: ./components/dropdown/dropdown.vue?vue&type=script&lang=js
11711
11838
 
11712
- // EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-74.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-74.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-74.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-74.use[3]!./node_modules/less-loader/dist/cjs.js??clonedRuleSet-74.use[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/dropdown/dropdown.vue?vue&type=style&index=0&id=a7e3156a&lang=less
11713
- var dropdownvue_type_style_index_0_id_a7e3156a_lang_less = __webpack_require__(624);
11714
- ;// CONCATENATED MODULE: ./components/dropdown/dropdown.vue?vue&type=style&index=0&id=a7e3156a&lang=less
11839
+ // EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-74.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-74.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-74.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-74.use[3]!./node_modules/less-loader/dist/cjs.js??clonedRuleSet-74.use[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/dropdown/dropdown.vue?vue&type=style&index=0&id=2021ac9d&lang=less
11840
+ var dropdownvue_type_style_index_0_id_2021ac9d_lang_less = __webpack_require__(59);
11841
+ ;// CONCATENATED MODULE: ./components/dropdown/dropdown.vue?vue&type=style&index=0&id=2021ac9d&lang=less
11715
11842
 
11716
11843
  ;// CONCATENATED MODULE: ./components/dropdown/dropdown.vue
11717
11844
 
@@ -11721,7 +11848,7 @@ var dropdownvue_type_style_index_0_id_a7e3156a_lang_less = __webpack_require__(6
11721
11848
  ;
11722
11849
 
11723
11850
 
11724
- const dropdown_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(dropdownvue_type_script_lang_js, [['render',dropdownvue_type_template_id_a7e3156a_render]])
11851
+ const dropdown_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(dropdownvue_type_script_lang_js, [['render',dropdownvue_type_template_id_2021ac9d_render]])
11725
11852
 
11726
11853
  /* harmony default export */ const dropdown = (dropdown_exports_);
11727
11854
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/dropdown/dropdown_list.vue?vue&type=template&id=eefb7378
@@ -11806,30 +11933,30 @@ const dropdown_separator_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)
11806
11933
 
11807
11934
 
11808
11935
 
11809
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/input/input.vue?vue&type=template&id=b98a3d1e
11936
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/input/input.vue?vue&type=template&id=1ac302ae
11810
11937
 
11811
- const inputvue_type_template_id_b98a3d1e_hoisted_1 = {
11938
+ const inputvue_type_template_id_1ac302ae_hoisted_1 = {
11812
11939
  ref: "container",
11813
11940
  class: "base-input",
11814
11941
  "data-qa": "dt-input"
11815
11942
  };
11816
- const inputvue_type_template_id_b98a3d1e_hoisted_2 = ["aria-details"];
11817
- const inputvue_type_template_id_b98a3d1e_hoisted_3 = ["id"];
11818
- const inputvue_type_template_id_b98a3d1e_hoisted_4 = {
11943
+ const inputvue_type_template_id_1ac302ae_hoisted_2 = ["aria-details"];
11944
+ const inputvue_type_template_id_1ac302ae_hoisted_3 = ["id"];
11945
+ const inputvue_type_template_id_1ac302ae_hoisted_4 = {
11819
11946
  key: 0
11820
11947
  };
11821
- const inputvue_type_template_id_b98a3d1e_hoisted_5 = {
11948
+ const inputvue_type_template_id_1ac302ae_hoisted_5 = {
11822
11949
  key: 1,
11823
11950
  "data-qa": "dt-input-length-description",
11824
11951
  class: /*#__PURE__*/(0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['d-mb2'])
11825
11952
  };
11826
- const inputvue_type_template_id_b98a3d1e_hoisted_6 = ["read-only"];
11953
+ const inputvue_type_template_id_1ac302ae_hoisted_6 = ["read-only"];
11827
11954
  const _hoisted_7 = ["value", "name", "disabled", "maxlength"];
11828
11955
  const _hoisted_8 = ["value", "name", "type", "disabled", "maxlength"];
11829
- function inputvue_type_template_id_b98a3d1e_render(_ctx, _cache, $props, $setup, $data, $options) {
11956
+ function inputvue_type_template_id_1ac302ae_render(_ctx, _cache, $props, $setup, $data, $options) {
11830
11957
  const _component_dt_validation_messages = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-validation-messages");
11831
11958
 
11832
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", inputvue_type_template_id_b98a3d1e_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("label", {
11959
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", inputvue_type_template_id_1ac302ae_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("label", {
11833
11960
  class: "base-input__label",
11834
11961
  "aria-details": _ctx.$slots.description || $props.description ? $options.descriptionKey : undefined,
11835
11962
  "data-qa": "dt-input-label-wrapper"
@@ -11844,9 +11971,9 @@ function inputvue_type_template_id_b98a3d1e_render(_ctx, _cache, $props, $setup,
11844
11971
  ref: "description",
11845
11972
  class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['base-input__description', 'd-description', 'd-fd-column', $data.descriptionSizeClasses[$props.size]]),
11846
11973
  "data-qa": "dt-input-description"
11847
- }, [_ctx.$slots.description || $props.description ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", inputvue_type_template_id_b98a3d1e_hoisted_4, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "description", {}, () => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createTextVNode)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.description), 1)])])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), $options.shouldValidateLength ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", inputvue_type_template_id_b98a3d1e_hoisted_5, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($options.validationProps.length.description), 1)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)], 10, inputvue_type_template_id_b98a3d1e_hoisted_3)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", {
11974
+ }, [_ctx.$slots.description || $props.description ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", inputvue_type_template_id_1ac302ae_hoisted_4, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "description", {}, () => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createTextVNode)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.description), 1)])])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), $options.shouldValidateLength ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", inputvue_type_template_id_1ac302ae_hoisted_5, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($options.validationProps.length.description), 1)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)], 10, inputvue_type_template_id_1ac302ae_hoisted_3)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", {
11848
11975
  class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)($options.inputWrapperClasses()),
11849
- "read-only": $props.disabled
11976
+ "read-only": $props.disabled === true ? true : undefined
11850
11977
  }, [_ctx.$slots.leftIcon ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("span", {
11851
11978
  key: 0,
11852
11979
  class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)($options.inputIconClasses('left')),
@@ -11880,7 +12007,7 @@ function inputvue_type_template_id_b98a3d1e_render(_ctx, _cache, $props, $setup,
11880
12007
  onFocusout: _cache[1] || (_cache[1] = function () {
11881
12008
  return $options.onBlur && $options.onBlur(...arguments);
11882
12009
  })
11883
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "rightIcon")], 34)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)], 10, inputvue_type_template_id_b98a3d1e_hoisted_6)], 8, inputvue_type_template_id_b98a3d1e_hoisted_2), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_validation_messages, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
12010
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "rightIcon")], 34)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)], 10, inputvue_type_template_id_1ac302ae_hoisted_6)], 8, inputvue_type_template_id_1ac302ae_hoisted_2), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_validation_messages, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
11884
12011
  "validation-messages": $options.validationMessages,
11885
12012
  "show-messages": _ctx.showMessages,
11886
12013
  class: _ctx.messagesClass
@@ -11888,7 +12015,7 @@ function inputvue_type_template_id_b98a3d1e_render(_ctx, _cache, $props, $setup,
11888
12015
  "data-qa": "dt-input-messages"
11889
12016
  }), null, 16, ["validation-messages", "show-messages", "class"])], 512);
11890
12017
  }
11891
- ;// CONCATENATED MODULE: ./components/input/input.vue?vue&type=template&id=b98a3d1e
12018
+ ;// CONCATENATED MODULE: ./components/input/input.vue?vue&type=template&id=1ac302ae
11892
12019
 
11893
12020
  ;// CONCATENATED MODULE: ./components/input/input_constants.js
11894
12021
  // Valid input types, any other input types (for example: 'radio' or 'checkbox') should
@@ -12901,7 +13028,7 @@ const MessagesMixin = {
12901
13028
 
12902
13029
 
12903
13030
  ;
12904
- const input_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(inputvue_type_script_lang_js, [['render',inputvue_type_template_id_b98a3d1e_render]])
13031
+ const input_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(inputvue_type_script_lang_js, [['render',inputvue_type_template_id_1ac302ae_render]])
12905
13032
 
12906
13033
  /* harmony default export */ const input_input = (input_exports_);
12907
13034
  ;// CONCATENATED MODULE: ./components/input/index.js
@@ -13200,30 +13327,32 @@ const input_group_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(input_
13200
13327
  /* harmony default export */ const input_group_input_group = (input_group_exports_);
13201
13328
  ;// CONCATENATED MODULE: ./components/input_group/index.js
13202
13329
 
13203
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/modal/modal.vue?vue&type=template&id=d71a3468
13330
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/modal/modal.vue?vue&type=template&id=21785ac6
13204
13331
 
13205
- const modalvue_type_template_id_d71a3468_hoisted_1 = ["aria-describedby", "aria-labelledby"];
13206
- const modalvue_type_template_id_d71a3468_hoisted_2 = ["id"];
13207
- const modalvue_type_template_id_d71a3468_hoisted_3 = ["id"];
13208
- const modalvue_type_template_id_d71a3468_hoisted_4 = {
13332
+ const modalvue_type_template_id_21785ac6_hoisted_1 = ["aria-describedby", "aria-labelledby"];
13333
+ const modalvue_type_template_id_21785ac6_hoisted_2 = ["id"];
13334
+ const modalvue_type_template_id_21785ac6_hoisted_3 = ["id"];
13335
+ const modalvue_type_template_id_21785ac6_hoisted_4 = {
13209
13336
  key: 2,
13210
13337
  class: "d-modal__content",
13211
13338
  "data-qa": "dt-modal-copy"
13212
13339
  };
13213
- const modalvue_type_template_id_d71a3468_hoisted_5 = {
13340
+ const modalvue_type_template_id_21785ac6_hoisted_5 = {
13214
13341
  key: 3,
13215
13342
  class: "d-modal__content",
13216
13343
  "data-qa": "dt-modal-copy"
13217
13344
  };
13218
- const modalvue_type_template_id_d71a3468_hoisted_6 = {
13345
+ const modalvue_type_template_id_21785ac6_hoisted_6 = {
13219
13346
  key: 4,
13220
13347
  class: "d-modal__footer"
13221
13348
  };
13222
- function modalvue_type_template_id_d71a3468_render(_ctx, _cache, $props, $setup, $data, $options) {
13349
+ function modalvue_type_template_id_21785ac6_render(_ctx, _cache, $props, $setup, $data, $options) {
13223
13350
  const _component_icon_close = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("icon-close");
13224
13351
 
13225
13352
  const _component_dt_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-button");
13226
13353
 
13354
+ const _component_sr_only_close_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("sr-only-close-button");
13355
+
13227
13356
  const _component_dt_lazy_show = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-lazy-show");
13228
13357
 
13229
13358
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_lazy_show, {
@@ -13257,12 +13386,12 @@ function modalvue_type_template_id_d71a3468_render(_ctx, _cache, $props, $setup,
13257
13386
  id: $props.labelledById,
13258
13387
  class: "d-modal__header",
13259
13388
  "data-qa": "dt-modal-title"
13260
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "header")], 8, modalvue_type_template_id_d71a3468_hoisted_2)) : ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("h2", {
13389
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "header")], 8, modalvue_type_template_id_21785ac6_hoisted_2)) : ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("h2", {
13261
13390
  key: 1,
13262
13391
  id: $props.labelledById,
13263
13392
  class: "d-modal__header",
13264
13393
  "data-qa": "dt-modal-title"
13265
- }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.title), 9, modalvue_type_template_id_d71a3468_hoisted_3)), _ctx.$slots.default ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", modalvue_type_template_id_d71a3468_hoisted_4, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "default")])) : ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("p", modalvue_type_template_id_d71a3468_hoisted_5, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.copy), 1)), $options.hasFooterSlot ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("footer", modalvue_type_template_id_d71a3468_hoisted_6, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "footer")])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), !$props.hideClose ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_button, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
13394
+ }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.title), 9, modalvue_type_template_id_21785ac6_hoisted_3)), _ctx.$slots.default ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", modalvue_type_template_id_21785ac6_hoisted_4, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "default")])) : ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("p", modalvue_type_template_id_21785ac6_hoisted_5, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.copy), 1)), $options.hasFooterSlot ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("footer", modalvue_type_template_id_21785ac6_hoisted_6, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "footer")])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), !$props.hideClose ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_button, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
13266
13395
  key: 5,
13267
13396
  class: "d-modal__close",
13268
13397
  circle: "",
@@ -13275,13 +13404,17 @@ function modalvue_type_template_id_d71a3468_render(_ctx, _cache, $props, $setup,
13275
13404
  }), {
13276
13405
  icon: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_icon_close)]),
13277
13406
  _: 1
13278
- }, 16, ["aria-label", "kind", "onClick"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)], 10, modalvue_type_template_id_d71a3468_hoisted_1), [[external_commonjs_vue_commonjs2_vue_root_Vue_.vShow, $props.show]])]),
13407
+ }, 16, ["aria-label", "kind", "onClick"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), _ctx.showVisuallyHiddenClose ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_sr_only_close_button, {
13408
+ key: 6,
13409
+ "visually-hidden-close-label": _ctx.visuallyHiddenCloseLabel,
13410
+ onClose: $options.close
13411
+ }, null, 8, ["visually-hidden-close-label", "onClose"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)], 10, modalvue_type_template_id_21785ac6_hoisted_1), [[external_commonjs_vue_commonjs2_vue_root_Vue_.vShow, $props.show]])]),
13279
13412
  _: 3
13280
13413
  })]),
13281
13414
  _: 3
13282
13415
  }, 8, ["show", "class", "aria-hidden", "onClick", "onKeydown", "onAfterEnter"]);
13283
13416
  }
13284
- ;// CONCATENATED MODULE: ./components/modal/modal.vue?vue&type=template&id=d71a3468
13417
+ ;// CONCATENATED MODULE: ./components/modal/modal.vue?vue&type=template&id=21785ac6
13285
13418
 
13286
13419
  ;// CONCATENATED MODULE: ./components/modal/modal_constants.js
13287
13420
  // Modal style modifiers
@@ -13301,6 +13434,8 @@ const MODAL_SIZE_MODIFIERS = {
13301
13434
 
13302
13435
 
13303
13436
 
13437
+
13438
+
13304
13439
  /**
13305
13440
  * Modals focus the user’s attention exclusively on one task or piece of information
13306
13441
  * via a window that sits on top of the page content.
@@ -13312,9 +13447,10 @@ const MODAL_SIZE_MODIFIERS = {
13312
13447
  components: {
13313
13448
  DtLazyShow: lazy_show,
13314
13449
  DtButton: button_button,
13315
- IconClose: IconClose
13450
+ IconClose: IconClose,
13451
+ SrOnlyCloseButton: common_sr_only_close_button
13316
13452
  },
13317
- mixins: [modal],
13453
+ mixins: [modal, sr_only_close_button],
13318
13454
  props: {
13319
13455
  /**
13320
13456
  * A set of props to be passed into the modal's close button.
@@ -13494,6 +13630,15 @@ const MODAL_SIZE_MODIFIERS = {
13494
13630
  }
13495
13631
  }
13496
13632
 
13633
+ },
13634
+ $props: {
13635
+ immediate: true,
13636
+ deep: true,
13637
+
13638
+ handler() {
13639
+ this.validateProps();
13640
+ }
13641
+
13497
13642
  }
13498
13643
  },
13499
13644
  methods: {
@@ -13509,6 +13654,13 @@ const MODAL_SIZE_MODIFIERS = {
13509
13654
  if (this.show) {
13510
13655
  this.focusTrappedTabPress(e);
13511
13656
  }
13657
+ },
13658
+
13659
+ validateProps() {
13660
+ if (this.hideClose && !this.visuallyHiddenClose) {
13661
+ console.error(`If hideClose prop is true, visuallyHiddenClose and visuallyHiddenCloseLabel props
13662
+ need to be set so the component always includes a close button`);
13663
+ }
13512
13664
  }
13513
13665
 
13514
13666
  }
@@ -13521,7 +13673,7 @@ const MODAL_SIZE_MODIFIERS = {
13521
13673
 
13522
13674
 
13523
13675
  ;
13524
- const modal_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(modalvue_type_script_lang_js, [['render',modalvue_type_template_id_d71a3468_render]])
13676
+ const modal_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(modalvue_type_script_lang_js, [['render',modalvue_type_template_id_21785ac6_render]])
13525
13677
 
13526
13678
  /* harmony default export */ const modal_modal = (modal_exports_);
13527
13679
  ;// CONCATENATED MODULE: ./components/modal/index.js
@@ -13698,9 +13850,9 @@ const list_section_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(list_
13698
13850
  /* harmony default export */ const list_section = (list_section_exports_);
13699
13851
  ;// CONCATENATED MODULE: ./components/list_section/index.js
13700
13852
 
13701
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/notice/notice.vue?vue&type=template&id=1f326661
13853
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/notice/notice.vue?vue&type=template&id=28b8ab50
13702
13854
 
13703
- function noticevue_type_template_id_1f326661_render(_ctx, _cache, $props, $setup, $data, $options) {
13855
+ function noticevue_type_template_id_28b8ab50_render(_ctx, _cache, $props, $setup, $data, $options) {
13704
13856
  const _component_dt_notice_icon = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-notice-icon");
13705
13857
 
13706
13858
  const _component_dt_notice_content = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-notice-content");
@@ -13727,19 +13879,22 @@ function noticevue_type_template_id_1f326661_render(_ctx, _cache, $props, $setup
13727
13879
  }, 8, ["title-id", "content-id", "title", "role"]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_notice_action, {
13728
13880
  "hide-close": $props.hideClose,
13729
13881
  "close-button-props": $props.closeButtonProps,
13882
+ "visually-hidden-close": _ctx.visuallyHiddenClose,
13883
+ "visually-hidden-close-label": _ctx.visuallyHiddenCloseLabel,
13730
13884
  onClose: _cache[0] || (_cache[0] = $event => _ctx.$emit('close'))
13731
13885
  }, {
13732
13886
  default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "action")]),
13733
13887
  _: 3
13734
- }, 8, ["hide-close", "close-button-props"])], 2);
13888
+ }, 8, ["hide-close", "close-button-props", "visually-hidden-close", "visually-hidden-close-label"])], 2);
13735
13889
  }
13736
- ;// CONCATENATED MODULE: ./components/notice/notice.vue?vue&type=template&id=1f326661
13890
+ ;// CONCATENATED MODULE: ./components/notice/notice.vue?vue&type=template&id=28b8ab50
13737
13891
 
13738
13892
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/notice/notice.vue?vue&type=script&lang=js
13739
13893
 
13740
13894
 
13741
13895
 
13742
13896
 
13897
+
13743
13898
  /**
13744
13899
  * A notice is an informational and assistive message that appears inline with content.
13745
13900
  * @see https://dialpad.design/components/notice.html
@@ -13752,6 +13907,7 @@ function noticevue_type_template_id_1f326661_render(_ctx, _cache, $props, $setup
13752
13907
  DtNoticeContent: notice_content,
13753
13908
  DtNoticeAction: notice_action
13754
13909
  },
13910
+ mixins: [sr_only_close_button],
13755
13911
  props: {
13756
13912
  /**
13757
13913
  * Sets an ID on the title element of the component. Useful for aria-describedby
@@ -13874,7 +14030,7 @@ function noticevue_type_template_id_1f326661_render(_ctx, _cache, $props, $setup
13874
14030
 
13875
14031
 
13876
14032
  ;
13877
- const notice_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(noticevue_type_script_lang_js, [['render',noticevue_type_template_id_1f326661_render]])
14033
+ const notice_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(noticevue_type_script_lang_js, [['render',noticevue_type_template_id_28b8ab50_render]])
13878
14034
 
13879
14035
  /* harmony default export */ const notice = (notice_exports_);
13880
14036
  ;// CONCATENATED MODULE: ./components/notice/index.js
@@ -15872,13 +16028,13 @@ const select_menu_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(select
15872
16028
  ;// CONCATENATED MODULE: ./components/select_menu/index.js
15873
16029
 
15874
16030
 
15875
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/toast/toast.vue?vue&type=template&id=0507f5c2
16031
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/toast/toast.vue?vue&type=template&id=2a4e3190
15876
16032
 
15877
- const toastvue_type_template_id_0507f5c2_hoisted_1 = ["aria-hidden"];
15878
- const toastvue_type_template_id_0507f5c2_hoisted_2 = {
16033
+ const toastvue_type_template_id_2a4e3190_hoisted_1 = ["aria-hidden"];
16034
+ const toastvue_type_template_id_2a4e3190_hoisted_2 = {
15879
16035
  class: "d-toast__dialog"
15880
16036
  };
15881
- function toastvue_type_template_id_0507f5c2_render(_ctx, _cache, $props, $setup, $data, $options) {
16037
+ function toastvue_type_template_id_2a4e3190_render(_ctx, _cache, $props, $setup, $data, $options) {
15882
16038
  const _component_dt_notice_icon = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-notice-icon");
15883
16039
 
15884
16040
  const _component_dt_notice_content = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-notice-content");
@@ -15892,7 +16048,7 @@ function toastvue_type_template_id_0507f5c2_render(_ctx, _cache, $props, $setup,
15892
16048
  }]),
15893
16049
  "data-qa": "dt-toast",
15894
16050
  "aria-hidden": (!$data.isShown).toString()
15895
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", toastvue_type_template_id_0507f5c2_hoisted_2, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_notice_icon, {
16051
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", toastvue_type_template_id_2a4e3190_hoisted_2, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_notice_icon, {
15896
16052
  kind: $props.kind
15897
16053
  }, {
15898
16054
  default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "icon")]),
@@ -15909,13 +16065,15 @@ function toastvue_type_template_id_0507f5c2_render(_ctx, _cache, $props, $setup,
15909
16065
  }, 8, ["title-id", "content-id", "title", "role"]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_notice_action, {
15910
16066
  "hide-close": $props.hideClose,
15911
16067
  "close-button-props": $props.closeButtonProps,
16068
+ "visually-hidden-close": _ctx.visuallyHiddenClose,
16069
+ "visually-hidden-close-label": _ctx.visuallyHiddenCloseLabel,
15912
16070
  onClose: $options.closeToast
15913
16071
  }, {
15914
16072
  default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "action")]),
15915
16073
  _: 3
15916
- }, 8, ["hide-close", "close-button-props", "onClose"])])], 10, toastvue_type_template_id_0507f5c2_hoisted_1)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true);
16074
+ }, 8, ["hide-close", "close-button-props", "visually-hidden-close", "visually-hidden-close-label", "onClose"])])], 10, toastvue_type_template_id_2a4e3190_hoisted_1)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true);
15917
16075
  }
15918
- ;// CONCATENATED MODULE: ./components/toast/toast.vue?vue&type=template&id=0507f5c2
16076
+ ;// CONCATENATED MODULE: ./components/toast/toast.vue?vue&type=template&id=2a4e3190
15919
16077
 
15920
16078
  ;// CONCATENATED MODULE: ./components/toast/toast_constants.js
15921
16079
  const TOAST_ROLES = ['status', 'alert'];
@@ -15931,6 +16089,7 @@ const TOAST_MIN_DURATION = 6000;
15931
16089
 
15932
16090
 
15933
16091
 
16092
+
15934
16093
  /**
15935
16094
  * A toast notice, sometimes called a snackbar, is a time-based message that appears based on users' actions.
15936
16095
  * It contains at-a-glance information about outcomes and can be paired with actions.
@@ -15944,6 +16103,7 @@ const TOAST_MIN_DURATION = 6000;
15944
16103
  DtNoticeContent: notice_content,
15945
16104
  DtNoticeAction: notice_action
15946
16105
  },
16106
+ mixins: [sr_only_close_button],
15947
16107
  props: {
15948
16108
  /**
15949
16109
  * Sets an ID on the title element of the component. Useful for aria-describedby
@@ -16152,7 +16312,7 @@ const TOAST_MIN_DURATION = 6000;
16152
16312
 
16153
16313
 
16154
16314
  ;
16155
- const toast_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(toastvue_type_script_lang_js, [['render',toastvue_type_template_id_0507f5c2_render]])
16315
+ const toast_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(toastvue_type_script_lang_js, [['render',toastvue_type_template_id_2a4e3190_render]])
16156
16316
 
16157
16317
  /* harmony default export */ const toast = (toast_exports_);
16158
16318
  ;// CONCATENATED MODULE: ./components/toast/index.js
@@ -17340,11 +17500,11 @@ const root_layout_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(root_l
17340
17500
  ;// CONCATENATED MODULE: ./components/root_layout/index.js
17341
17501
 
17342
17502
 
17343
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue?vue&type=template&id=52b02dba
17503
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue?vue&type=template&id=d56f4446
17344
17504
 
17345
- const combobox_with_popovervue_type_template_id_52b02dba_hoisted_1 = ["id"];
17346
- const combobox_with_popovervue_type_template_id_52b02dba_hoisted_2 = ["onMouseleave", "onFocusout"];
17347
- function combobox_with_popovervue_type_template_id_52b02dba_render(_ctx, _cache, $props, $setup, $data, $options) {
17505
+ const combobox_with_popovervue_type_template_id_d56f4446_hoisted_1 = ["id"];
17506
+ const combobox_with_popovervue_type_template_id_d56f4446_hoisted_2 = ["onMouseleave", "onFocusout"];
17507
+ function combobox_with_popovervue_type_template_id_d56f4446_render(_ctx, _cache, $props, $setup, $data, $options) {
17348
17508
  const _component_combobox_loading_list = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("combobox-loading-list");
17349
17509
 
17350
17510
  const _component_combobox_empty_list = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("combobox-empty-list");
@@ -17383,7 +17543,7 @@ function combobox_with_popovervue_type_template_id_52b02dba_render(_ctx, _cache,
17383
17543
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "input", {
17384
17544
  inputProps: inputProps,
17385
17545
  onInput: $options.handleDisplayList
17386
- })], 40, combobox_with_popovervue_type_template_id_52b02dba_hoisted_1)];
17546
+ })], 40, combobox_with_popovervue_type_template_id_d56f4446_hoisted_1)];
17387
17547
  }),
17388
17548
  list: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(_ref2 => {
17389
17549
  let {
@@ -17401,13 +17561,16 @@ function combobox_with_popovervue_type_template_id_52b02dba_render(_ctx, _cache,
17401
17561
  offset: $props.popoverOffset,
17402
17562
  sticky: $props.popoverSticky,
17403
17563
  placement: "bottom-start",
17564
+ "initial-focus-element": "none",
17404
17565
  padding: "none",
17405
17566
  role: "listbox",
17406
17567
  "external-anchor": $data.externalAnchor,
17407
17568
  "content-width": $props.contentWidth,
17408
17569
  "content-tabindex": null,
17409
- modal: $props.modal,
17570
+ modal: false,
17410
17571
  "auto-focus": false,
17572
+ "visually-hidden-close-label": _ctx.visuallyHiddenCloseLabel,
17573
+ "visually-hidden-close": _ctx.visuallyHiddenClose,
17411
17574
  onOpened: opened
17412
17575
  }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createSlots)({
17413
17576
  content: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", {
@@ -17427,7 +17590,7 @@ function combobox_with_popovervue_type_template_id_52b02dba_render(_ctx, _cache,
17427
17590
  }), null, 16, ["message"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "list", {
17428
17591
  key: 2,
17429
17592
  listProps: listProps
17430
- })], 42, combobox_with_popovervue_type_template_id_52b02dba_hoisted_2)]),
17593
+ })], 42, combobox_with_popovervue_type_template_id_d56f4446_hoisted_2)]),
17431
17594
  _: 2
17432
17595
  }, [_ctx.$slots.header ? {
17433
17596
  name: "headerContent",
@@ -17447,12 +17610,12 @@ function combobox_with_popovervue_type_template_id_52b02dba_render(_ctx, _cache,
17447
17610
  })
17448
17611
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "footer")], 544)]),
17449
17612
  key: "1"
17450
- } : undefined]), 1032, ["open", "hide-on-click", "max-height", "max-width", "offset", "sticky", "external-anchor", "content-width", "modal", "onOpened"])];
17613
+ } : undefined]), 1032, ["open", "hide-on-click", "max-height", "max-width", "offset", "sticky", "external-anchor", "content-width", "visually-hidden-close-label", "visually-hidden-close", "onOpened"])];
17451
17614
  }),
17452
17615
  _: 3
17453
17616
  }, 16, ["loading", "empty-list", "empty-state-message", "show-list", "on-beginning-of-list", "on-end-of-list", "list-aria-label", "list-id"]);
17454
17617
  }
17455
- ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue?vue&type=template&id=52b02dba
17618
+ ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue?vue&type=template&id=d56f4446
17456
17619
 
17457
17620
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue?vue&type=script&lang=js
17458
17621
 
@@ -17461,6 +17624,7 @@ function combobox_with_popovervue_type_template_id_52b02dba_render(_ctx, _cache,
17461
17624
 
17462
17625
 
17463
17626
 
17627
+
17464
17628
  /* harmony default export */ const combobox_with_popovervue_type_script_lang_js = ({
17465
17629
  name: 'DtRecipeComboboxWithPopover',
17466
17630
  components: {
@@ -17469,6 +17633,7 @@ function combobox_with_popovervue_type_template_id_52b02dba_render(_ctx, _cache,
17469
17633
  ComboboxLoadingList: combobox_loading_list,
17470
17634
  ComboboxEmptyList: combobox_empty_list
17471
17635
  },
17636
+ mixins: [sr_only_close_button],
17472
17637
  props: {
17473
17638
  /**
17474
17639
  * String to use for the list's aria-label.
@@ -17591,15 +17756,6 @@ function combobox_with_popovervue_type_template_id_52b02dba_render(_ctx, _cache,
17591
17756
  default: false
17592
17757
  },
17593
17758
 
17594
- /**
17595
- * Determines modal state. If enabled popover has a modal overlay
17596
- * preventing interaction with elements below it, but it is invisible.
17597
- */
17598
- modal: {
17599
- type: Boolean,
17600
- default: true
17601
- },
17602
-
17603
17759
  /**
17604
17760
  * Displays the list when the combobox is focused, before the user has typed anything.
17605
17761
  * When this is enabled the list will not close after selection.
@@ -17751,7 +17907,7 @@ function combobox_with_popovervue_type_template_id_52b02dba_render(_ctx, _cache,
17751
17907
 
17752
17908
  onFocusIn(e) {
17753
17909
  if (this.hasSuggestionList && e && this.$refs.input.querySelector('input') === e.target) {
17754
- // only trigger if we show suggestion list when focus and
17910
+ // only trigger if we show suggestion list when focused, and
17755
17911
  // it's the input specifically that was focused
17756
17912
  this.showComboboxList();
17757
17913
  }
@@ -17764,7 +17920,7 @@ function combobox_with_popovervue_type_template_id_52b02dba_render(_ctx, _cache,
17764
17920
  var _this$$refs$ref;
17765
17921
 
17766
17922
  return (_this$$refs$ref = this.$refs[ref]) === null || _this$$refs$ref === void 0 ? void 0 : _this$$refs$ref.contains(e.relatedTarget);
17767
- }); // If outside of the combobox then close
17923
+ }) || this.visuallyHiddenClose; // If outside the combobox then close
17768
17924
 
17769
17925
  if (!isComboboxStillFocused) {
17770
17926
  this.closeComboboxList();
@@ -17789,32 +17945,32 @@ function combobox_with_popovervue_type_template_id_52b02dba_render(_ctx, _cache,
17789
17945
 
17790
17946
 
17791
17947
  ;
17792
- const combobox_with_popover_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(combobox_with_popovervue_type_script_lang_js, [['render',combobox_with_popovervue_type_template_id_52b02dba_render]])
17948
+ const combobox_with_popover_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(combobox_with_popovervue_type_script_lang_js, [['render',combobox_with_popovervue_type_template_id_d56f4446_render]])
17793
17949
 
17794
17950
  /* harmony default export */ const combobox_with_popover = (combobox_with_popover_exports_);
17795
17951
  ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_with_popover/index.js
17796
17952
 
17797
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue?vue&type=template&id=09911ee7
17953
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue?vue&type=template&id=478b895c
17798
17954
 
17799
- const combobox_multi_selectvue_type_template_id_09911ee7_hoisted_1 = {
17955
+ const combobox_multi_selectvue_type_template_id_478b895c_hoisted_1 = {
17800
17956
  ref: "inputSlotWrapper",
17801
17957
  class: "d-ps-relative"
17802
17958
  };
17803
- const combobox_multi_selectvue_type_template_id_09911ee7_hoisted_2 = {
17959
+ const combobox_multi_selectvue_type_template_id_478b895c_hoisted_2 = {
17804
17960
  ref: "chipsWrapper",
17805
17961
  class: "d-ps-absolute d-mx2"
17806
17962
  };
17807
- const combobox_multi_selectvue_type_template_id_09911ee7_hoisted_3 = {
17963
+ const combobox_multi_selectvue_type_template_id_478b895c_hoisted_3 = {
17808
17964
  ref: "header"
17809
17965
  };
17810
- const combobox_multi_selectvue_type_template_id_09911ee7_hoisted_4 = {
17966
+ const combobox_multi_selectvue_type_template_id_478b895c_hoisted_4 = {
17811
17967
  key: 1,
17812
17968
  class: "d-ta-center d-py16"
17813
17969
  };
17814
- const combobox_multi_selectvue_type_template_id_09911ee7_hoisted_5 = {
17970
+ const combobox_multi_selectvue_type_template_id_478b895c_hoisted_5 = {
17815
17971
  ref: "footer"
17816
17972
  };
17817
- function combobox_multi_selectvue_type_template_id_09911ee7_render(_ctx, _cache, $props, $setup, $data, $options) {
17973
+ function combobox_multi_selectvue_type_template_id_478b895c_render(_ctx, _cache, $props, $setup, $data, $options) {
17818
17974
  const _component_dt_chip = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-chip");
17819
17975
 
17820
17976
  const _component_dt_input = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-input");
@@ -17830,6 +17986,8 @@ function combobox_multi_selectvue_type_template_id_09911ee7_render(_ctx, _cache,
17830
17986
  "max-height": $props.listMaxHeight,
17831
17987
  "popover-offset": $data.popoverOffset,
17832
17988
  "has-suggestion-list": $props.hasSuggestionList,
17989
+ "visually-hidden-close-label": _ctx.visuallyHiddenCloseLabel,
17990
+ "visually-hidden-close": _ctx.visuallyHiddenClose,
17833
17991
  "content-width": "anchor",
17834
17992
  onSelect: $options.onComboboxSelect
17835
17993
  }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createSlots)({
@@ -17837,7 +17995,7 @@ function combobox_multi_selectvue_type_template_id_09911ee7_render(_ctx, _cache,
17837
17995
  let {
17838
17996
  onInput
17839
17997
  } = _ref;
17840
- return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("span", combobox_multi_selectvue_type_template_id_09911ee7_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("span", combobox_multi_selectvue_type_template_id_09911ee7_hoisted_2, [((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(true), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)(external_commonjs_vue_commonjs2_vue_root_Vue_.Fragment, null, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderList)($props.selectedItems, item => {
17998
+ return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("span", combobox_multi_selectvue_type_template_id_478b895c_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("span", combobox_multi_selectvue_type_template_id_478b895c_hoisted_2, [((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(true), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)(external_commonjs_vue_commonjs2_vue_root_Vue_.Fragment, null, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderList)($props.selectedItems, item => {
17841
17999
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_chip, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
17842
18000
  ref_for: true,
17843
18001
  ref: "chips",
@@ -17877,19 +18035,19 @@ function combobox_multi_selectvue_type_template_id_09911ee7_render(_ctx, _cache,
17877
18035
  onMousedown: _cache[1] || (_cache[1] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withModifiers)(() => {}, ["prevent"]))
17878
18036
  }, [!$props.loading ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "list", {
17879
18037
  key: 0
17880
- }) : ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", combobox_multi_selectvue_type_template_id_09911ee7_hoisted_4, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.loadingMessage), 1))], 544)]),
18038
+ }) : ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", combobox_multi_selectvue_type_template_id_478b895c_hoisted_4, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.loadingMessage), 1))], 544)]),
17881
18039
  _: 2
17882
18040
  }, [_ctx.$slots.header ? {
17883
18041
  name: "header",
17884
- fn: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", combobox_multi_selectvue_type_template_id_09911ee7_hoisted_3, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "header")], 512)]),
18042
+ fn: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", combobox_multi_selectvue_type_template_id_478b895c_hoisted_3, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "header")], 512)]),
17885
18043
  key: "0"
17886
18044
  } : undefined, _ctx.$slots.footer ? {
17887
18045
  name: "footer",
17888
- fn: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", combobox_multi_selectvue_type_template_id_09911ee7_hoisted_5, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "footer")], 512)]),
18046
+ fn: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", combobox_multi_selectvue_type_template_id_478b895c_hoisted_5, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "footer")], 512)]),
17889
18047
  key: "1"
17890
- } : undefined]), 1032, ["show-list", "max-height", "popover-offset", "has-suggestion-list", "onSelect"]);
18048
+ } : undefined]), 1032, ["show-list", "max-height", "popover-offset", "has-suggestion-list", "visually-hidden-close-label", "visually-hidden-close", "onSelect"]);
17891
18049
  }
17892
- ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue?vue&type=template&id=09911ee7
18050
+ ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue?vue&type=template&id=478b895c
17893
18051
 
17894
18052
  ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_multi_select/combobox_multi_select_story_constants.js
17895
18053
  // The item list for default story
@@ -17995,6 +18153,7 @@ const MULTI_SELECT_SIZES = {
17995
18153
 
17996
18154
 
17997
18155
 
18156
+
17998
18157
  /* harmony default export */ const combobox_multi_selectvue_type_script_lang_js = ({
17999
18158
  name: 'DtRecipeComboboxMultiSelect',
18000
18159
  components: {
@@ -18003,6 +18162,7 @@ const MULTI_SELECT_SIZES = {
18003
18162
  DtChip: chip,
18004
18163
  DtValidationMessages: validation_messages
18005
18164
  },
18165
+ mixins: [sr_only_close_button],
18006
18166
  props: {
18007
18167
  /**
18008
18168
  * Label for the combobox
@@ -18176,7 +18336,7 @@ const MULTI_SELECT_SIZES = {
18176
18336
  data() {
18177
18337
  return {
18178
18338
  value: '',
18179
- popoverOffset: [0, 0],
18339
+ popoverOffset: [0, 4],
18180
18340
  showValidationMessages: false,
18181
18341
  initialInputPadding: {},
18182
18342
  resizeWindowObserver: null
@@ -18408,7 +18568,7 @@ const MULTI_SELECT_SIZES = {
18408
18568
  // If the new chip goes to the next line and the input box expands,
18409
18569
  // move the popover down to the next line. Same when chips are removed
18410
18570
 
18411
- this.popoverOffset = [0, 0];
18571
+ this.popoverOffset = [0, 4];
18412
18572
  },
18413
18573
 
18414
18574
  getFullWidth(el) {
@@ -18457,7 +18617,7 @@ const MULTI_SELECT_SIZES = {
18457
18617
 
18458
18618
 
18459
18619
  ;
18460
- const combobox_multi_select_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(combobox_multi_selectvue_type_script_lang_js, [['render',combobox_multi_selectvue_type_template_id_09911ee7_render]])
18620
+ const combobox_multi_select_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(combobox_multi_selectvue_type_script_lang_js, [['render',combobox_multi_selectvue_type_template_id_478b895c_render]])
18461
18621
 
18462
18622
  /* harmony default export */ const combobox_multi_select = (combobox_multi_select_exports_);
18463
18623
  ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_multi_select/index.js