@dialpad/dialtone-vue 3.3.0 → 3.6.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.
@@ -59,7 +59,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".dt-default-list-item,.dt-default-list
59
59
 
60
60
  /***/ }),
61
61
 
62
- /***/ 63:
62
+ /***/ 854:
63
63
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
64
64
 
65
65
  "use strict";
@@ -129,6 +129,54 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".tippy-box[data-popper-escaped] .d-pop
129
129
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
130
130
 
131
131
 
132
+ /***/ }),
133
+
134
+ /***/ 660:
135
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
136
+
137
+ "use strict";
138
+ __webpack_require__.r(__webpack_exports__);
139
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
140
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
141
+ /* harmony export */ });
142
+ /* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(81);
143
+ /* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
144
+ /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(645);
145
+ /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
146
+ // Imports
147
+
148
+
149
+ var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
150
+ // Module
151
+ ___CSS_LOADER_EXPORT___.push([module.id, ".root-layout__header--sticky{position:-webkit-sticky;position:sticky;top:0}", ""]);
152
+ // Exports
153
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
154
+
155
+
156
+ /***/ }),
157
+
158
+ /***/ 385:
159
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
160
+
161
+ "use strict";
162
+ __webpack_require__.r(__webpack_exports__);
163
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
164
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
165
+ /* harmony export */ });
166
+ /* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(81);
167
+ /* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
168
+ /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(645);
169
+ /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
170
+ // Imports
171
+
172
+
173
+ var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
174
+ // Module
175
+ ___CSS_LOADER_EXPORT___.push([module.id, ".root-layout__body{display:flex;flex-wrap:wrap;gap:0}.root-layout__body--invert{flex-direction:row-reverse}.root-layout__sidebar{flex-grow:1}.root-layout__content{flex-basis:0;flex-grow:999}", ""]);
176
+ // Exports
177
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
178
+
179
+
132
180
  /***/ }),
133
181
 
134
182
  /***/ 224:
@@ -155,7 +203,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".skeleton-placeholder{display:flex;str
155
203
 
156
204
  /***/ }),
157
205
 
158
- /***/ 739:
206
+ /***/ 791:
159
207
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
160
208
 
161
209
  "use strict";
@@ -387,19 +435,19 @@ var update = add("463815e5", content, true, {"sourceMap":false,"shadowMode":fals
387
435
 
388
436
  /***/ }),
389
437
 
390
- /***/ 621:
438
+ /***/ 770:
391
439
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
392
440
 
393
441
  // style-loader: Adds some css to the DOM by adding a <style> tag
394
442
 
395
443
  // load the styles
396
- var content = __webpack_require__(63);
444
+ var content = __webpack_require__(854);
397
445
  if(content.__esModule) content = content.default;
398
446
  if(typeof content === 'string') content = [[module.id, content, '']];
399
447
  if(content.locals) module.exports = content.locals;
400
448
  // add the styles to the DOM
401
449
  var add = (__webpack_require__(402)/* ["default"] */ .Z)
402
- var update = add("51c1283c", content, true, {"sourceMap":false,"shadowMode":false});
450
+ var update = add("f006c8fc", content, true, {"sourceMap":false,"shadowMode":false});
403
451
 
404
452
  /***/ }),
405
453
 
@@ -435,6 +483,38 @@ var update = add("fc300706", content, true, {"sourceMap":false,"shadowMode":fals
435
483
 
436
484
  /***/ }),
437
485
 
486
+ /***/ 151:
487
+ /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
488
+
489
+ // style-loader: Adds some css to the DOM by adding a <style> tag
490
+
491
+ // load the styles
492
+ var content = __webpack_require__(660);
493
+ if(content.__esModule) content = content.default;
494
+ if(typeof content === 'string') content = [[module.id, content, '']];
495
+ if(content.locals) module.exports = content.locals;
496
+ // add the styles to the DOM
497
+ var add = (__webpack_require__(402)/* ["default"] */ .Z)
498
+ var update = add("10623612", content, true, {"sourceMap":false,"shadowMode":false});
499
+
500
+ /***/ }),
501
+
502
+ /***/ 304:
503
+ /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
504
+
505
+ // style-loader: Adds some css to the DOM by adding a <style> tag
506
+
507
+ // load the styles
508
+ var content = __webpack_require__(385);
509
+ if(content.__esModule) content = content.default;
510
+ if(typeof content === 'string') content = [[module.id, content, '']];
511
+ if(content.locals) module.exports = content.locals;
512
+ // add the styles to the DOM
513
+ var add = (__webpack_require__(402)/* ["default"] */ .Z)
514
+ var update = add("78ccd05f", content, true, {"sourceMap":false,"shadowMode":false});
515
+
516
+ /***/ }),
517
+
438
518
  /***/ 587:
439
519
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
440
520
 
@@ -451,19 +531,19 @@ var update = add("537a95a4", content, true, {"sourceMap":false,"shadowMode":fals
451
531
 
452
532
  /***/ }),
453
533
 
454
- /***/ 877:
534
+ /***/ 273:
455
535
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
456
536
 
457
537
  // style-loader: Adds some css to the DOM by adding a <style> tag
458
538
 
459
539
  // load the styles
460
- var content = __webpack_require__(739);
540
+ var content = __webpack_require__(791);
461
541
  if(content.__esModule) content = content.default;
462
542
  if(typeof content === 'string') content = [[module.id, content, '']];
463
543
  if(content.locals) module.exports = content.locals;
464
544
  // add the styles to the DOM
465
545
  var add = (__webpack_require__(402)/* ["default"] */ .Z)
466
- var update = add("0480d588", content, true, {"sourceMap":false,"shadowMode":false});
546
+ var update = add("72197f1c", content, true, {"sourceMap":false,"shadowMode":false});
467
547
 
468
548
  /***/ }),
469
549
 
@@ -1073,8 +1153,11 @@ __webpack_require__.d(__webpack_exports__, {
1073
1153
  "DtPopover": () => (/* reexport */ popover),
1074
1154
  "DtRadio": () => (/* reexport */ radio_radio),
1075
1155
  "DtRadioGroup": () => (/* reexport */ radio_group),
1156
+ "DtRecipeComboboxMultiSelect": () => (/* reexport */ combobox_multi_select),
1157
+ "DtRecipeComboboxWithPopover": () => (/* reexport */ combobox_with_popover),
1076
1158
  "DtRecipeContactInfo": () => (/* reexport */ contact_info),
1077
1159
  "DtRecipeTopBannerInfo": () => (/* reexport */ top_banner_info),
1160
+ "DtRootLayout": () => (/* reexport */ root_layout),
1078
1161
  "DtSelectMenu": () => (/* reexport */ select_menu),
1079
1162
  "DtSkeleton": () => (/* reexport */ skeleton_skeleton),
1080
1163
  "DtSkeletonListItem": () => (/* reexport */ skeleton_list_item),
@@ -1101,6 +1184,7 @@ __webpack_require__.d(__webpack_exports__, {
1101
1184
  "POPOVER_INITIAL_FOCUS_STRINGS": () => (/* reexport */ POPOVER_INITIAL_FOCUS_STRINGS),
1102
1185
  "POPOVER_PADDING_CLASSES": () => (/* reexport */ POPOVER_PADDING_CLASSES),
1103
1186
  "POPOVER_ROLES": () => (/* reexport */ POPOVER_ROLES),
1187
+ "ROOT_LAYOUT_SIDEBAR_POSITIONS": () => (/* reexport */ ROOT_LAYOUT_SIDEBAR_POSITIONS),
1104
1188
  "SELECT_SIZE_MODIFIERS": () => (/* reexport */ SELECT_SIZE_MODIFIERS),
1105
1189
  "SELECT_STATE_MODIFIERS": () => (/* reexport */ SELECT_STATE_MODIFIERS),
1106
1190
  "SHORTCUTS_ALIASES": () => (/* reexport */ SHORTCUTS_ALIASES),
@@ -1164,7 +1248,7 @@ if (typeof window !== 'undefined') {
1164
1248
 
1165
1249
  // EXTERNAL MODULE: external {"commonjs":"vue","commonjs2":"vue","root":"Vue"}
1166
1250
  var external_commonjs_vue_commonjs2_vue_root_Vue_ = __webpack_require__(203);
1167
- ;// 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/avatar/avatar.vue?vue&type=template&id=3dcc5cfa
1251
+ ;// 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/avatar/avatar.vue?vue&type=template&id=a43ab9f6
1168
1252
 
1169
1253
  const _hoisted_1 = ["id"];
1170
1254
  function render(_ctx, _cache, $props, $setup, $data, $options) {
@@ -1174,7 +1258,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
1174
1258
  "data-qa": "dt-avatar"
1175
1259
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "default")], 10, _hoisted_1);
1176
1260
  }
1177
- ;// CONCATENATED MODULE: ./components/avatar/avatar.vue?vue&type=template&id=3dcc5cfa
1261
+ ;// CONCATENATED MODULE: ./components/avatar/avatar.vue?vue&type=template&id=a43ab9f6
1178
1262
 
1179
1263
  ;// CONCATENATED MODULE: ./components/avatar/avatar_constants.js
1180
1264
  const AVATAR_KIND_MODIFIERS = {
@@ -1432,16 +1516,23 @@ const flushPromises = () => {
1432
1516
  const firstChild = this.$el.children[0];
1433
1517
 
1434
1518
  if (firstChild) {
1435
- this.validateElementType(firstChild);
1436
1519
  this.setKind(firstChild);
1437
1520
  this.validateImageAttrsPresence();
1438
1521
  }
1439
1522
  },
1440
1523
 
1441
1524
  setKind(element) {
1442
- if (this.isSvgType(element)) this.kind = 'icon';
1443
- if (this.isImageType(element)) this.kind = 'image';
1444
- if (this.isInitialsType(element)) this.kind = 'initials';
1525
+ if (this.isSvgType(element)) {
1526
+ this.kind = 'icon';
1527
+ return;
1528
+ }
1529
+
1530
+ if (this.isImageType(element)) {
1531
+ this.kind = 'image';
1532
+ return;
1533
+ }
1534
+
1535
+ this.kind = 'initials';
1445
1536
  },
1446
1537
 
1447
1538
  isSvgType(element) {
@@ -1456,15 +1547,6 @@ const flushPromises = () => {
1456
1547
  return (element === null || element === void 0 ? void 0 : (_element$tagName2 = element.tagName) === null || _element$tagName2 === void 0 ? void 0 : _element$tagName2.toUpperCase()) === 'IMG';
1457
1548
  },
1458
1549
 
1459
- isInitialsType(element) {
1460
- return (element === null || element === void 0 ? void 0 : element.nodeType) === Node.TEXT_NODE;
1461
- },
1462
-
1463
- validateElementType(element) {
1464
- if (this.isInitialsType(element) || this.isSvgType(element) || this.isImageType(element)) return;
1465
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.warn)('img, svg, and raw text are the only valid elements to put inside the avatar', this);
1466
- },
1467
-
1468
1550
  validateImageAttrsPresence() {
1469
1551
  if (this.kind === 'image') {
1470
1552
  // Check that default slot image required attributes are provided
@@ -3031,6 +3113,7 @@ function comboboxvue_type_template_id_4901dce5_render(_ctx, _cache, $props, $set
3031
3113
  * the root element of the component.
3032
3114
  */
3033
3115
 
3116
+ const ERROR_INVALID_LIST_ELEMENT = 'listElementKey is required or the referenced ' + 'element doesn\'t exist. Received listElement: ';
3034
3117
  /* harmony default export */ const keyboard_list_navigation = (function () {
3035
3118
  let {
3036
3119
  // Role of the list items in the component. This is used to identify the list items
@@ -3054,7 +3137,7 @@ function comboboxvue_type_template_id_4901dce5_render(_ctx, _cache, $props, $set
3054
3137
  endOfListMethod = null,
3055
3138
  // Scroll the active element into view when highlighted by a keyboard event.
3056
3139
  scrollToOnHighlight = true,
3057
- // Focus the active element on keyboard navigation
3140
+ // Focus the active element on keyboard navigation.
3058
3141
  focusOnKeyboardNavigation = false
3059
3142
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3060
3143
  return {
@@ -3088,14 +3171,25 @@ function comboboxvue_type_template_id_4901dce5_render(_ctx, _cache, $props, $set
3088
3171
  // Gets the length of all the items in the list, uses the listItemRole param to determine
3089
3172
  // whether an element is a list item.
3090
3173
  _itemsLength() {
3174
+ const listItems = this._getListItemNodes();
3175
+
3176
+ if (listItems === null) {
3177
+ return 0;
3178
+ }
3179
+
3180
+ return listItems.length;
3181
+ },
3182
+
3183
+ // Gets all the list item nodes within the list element
3184
+ _getListItemNodes() {
3091
3185
  const listElement = this._getListElement();
3092
3186
 
3093
3187
  if (!listElement) {
3094
- console.error("listElementKey is required or the referenced element doesn't exist. Received\n listElement: ", listElement);
3095
- return 0;
3188
+ console.error(ERROR_INVALID_LIST_ELEMENT, listElement);
3189
+ return null;
3096
3190
  }
3097
3191
 
3098
- return listElement.querySelectorAll("[role=\"".concat(listItemRole, "\"]")).length;
3192
+ return Array.from(listElement.querySelectorAll("[role=\"".concat(listItemRole, "\"]")));
3099
3193
  },
3100
3194
 
3101
3195
  onUpKey() {
@@ -3140,6 +3234,35 @@ function comboboxvue_type_template_id_4901dce5_render(_ctx, _cache, $props, $set
3140
3234
  this.focusActiveItemIfNeeded();
3141
3235
  },
3142
3236
 
3237
+ onNavigationKey(key) {
3238
+ const listItems = this._getListItemNodes();
3239
+
3240
+ const matchingItems = listItems.filter(item => {
3241
+ const content = item.textContent.trim().toLowerCase();
3242
+ return content.startsWith(key.toLowerCase());
3243
+ });
3244
+
3245
+ if (matchingItems.length <= 0) {
3246
+ return;
3247
+ }
3248
+
3249
+ const highlightedMatchingItemIndex = matchingItems.findIndex(item => {
3250
+ return this[indexKey] === listItems.indexOf(item);
3251
+ });
3252
+ const nextHighlightedItemIndex = listItems.indexOf(highlightedMatchingItemIndex < matchingItems.length - 1 ? matchingItems[highlightedMatchingItemIndex + 1] : matchingItems[0]);
3253
+ this.setHighlightIndex(nextHighlightedItemIndex);
3254
+ this.scrollActiveItemIntoViewIfNeeded();
3255
+ this.focusActiveItemIfNeeded();
3256
+ },
3257
+
3258
+ isValidLetter(key) {
3259
+ if (key.length > 1) {
3260
+ return false;
3261
+ }
3262
+
3263
+ return key >= 'a' && key <= 'z' || key >= 'A' && key <= 'Z';
3264
+ },
3265
+
3143
3266
  jumpToBeginning() {
3144
3267
  this.setHighlightIndex(0);
3145
3268
  },
@@ -3176,8 +3299,7 @@ function comboboxvue_type_template_id_4901dce5_render(_ctx, _cache, $props, $set
3176
3299
  }
3177
3300
 
3178
3301
  const listItems = Array.from(listElement.querySelectorAll("[role=\"".concat(listItemRole, "\"]")));
3179
- const index = listItems.indexOf(listElement.querySelector("#".concat(id)));
3180
- return index;
3302
+ return listItems.indexOf(listElement.querySelector("#".concat(id)));
3181
3303
  },
3182
3304
 
3183
3305
  _getItemId(index) {
@@ -3440,10 +3562,10 @@ const combobox_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(comboboxv
3440
3562
  /* harmony default export */ const combobox = (combobox_exports_);
3441
3563
  ;// CONCATENATED MODULE: ./components/combobox/index.js
3442
3564
 
3443
- ;// 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=071e4ebc
3565
+ ;// 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=b0e1f8ba
3444
3566
 
3445
- const dropdownvue_type_template_id_071e4ebc_hoisted_1 = ["id"];
3446
- function dropdownvue_type_template_id_071e4ebc_render(_ctx, _cache, $props, $setup, $data, $options) {
3567
+ const dropdownvue_type_template_id_b0e1f8ba_hoisted_1 = ["id"];
3568
+ function dropdownvue_type_template_id_b0e1f8ba_render(_ctx, _cache, $props, $setup, $data, $options) {
3447
3569
  const _component_dt_popover = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-popover");
3448
3570
 
3449
3571
  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)({
@@ -3451,7 +3573,7 @@ function dropdownvue_type_template_id_071e4ebc_render(_ctx, _cache, $props, $set
3451
3573
  "content-width": $props.contentWidth,
3452
3574
  open: $props.open,
3453
3575
  placement: $props.placement,
3454
- "initial-focus-element": "first",
3576
+ "initial-focus-element": $data.openedWithKeyboard ? 'first' : 'dialog',
3455
3577
  "fallback-placements": $props.fallbackPlacements,
3456
3578
  padding: "none",
3457
3579
  role: "menu",
@@ -3461,7 +3583,7 @@ function dropdownvue_type_template_id_071e4ebc_render(_ctx, _cache, $props, $set
3461
3583
  "max-width": $props.maxWidth,
3462
3584
  "open-with-arrow-keys": true,
3463
3585
  onOpened: $options.updateInitialHighlightIndex,
3464
- onKeydown: [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)($options.onEnterKey, ["enter"]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)($options.onSpaceKey, ["space"]), _cache[2] || (_cache[2] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.withModifiers)($event => $options.onKeyValidation($event, 'onUpKeyPress'), ["stop", "prevent"]), ["up"])), _cache[3] || (_cache[3] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.withModifiers)($event => $options.onKeyValidation($event, 'onDownKeyPress'), ["stop", "prevent"]), ["down"])), _cache[4] || (_cache[4] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.withModifiers)($event => $options.onKeyValidation($event, 'onHomeKeyPress'), ["stop", "prevent"]), ["home"])), _cache[5] || (_cache[5] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.withModifiers)($event => $options.onKeyValidation($event, 'onEndKeyPress'), ["stop", "prevent"]), ["end"]))]
3586
+ onKeydown: [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)($options.onEnterKey, ["enter"]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)($options.onSpaceKey, ["space"]), _cache[2] || (_cache[2] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.withModifiers)($event => $options.onKeyValidation($event, 'onUpKeyPress'), ["stop", "prevent"]), ["up"])), _cache[3] || (_cache[3] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.withModifiers)($event => $options.onKeyValidation($event, 'onDownKeyPress'), ["stop", "prevent"]), ["down"])), _cache[4] || (_cache[4] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.withModifiers)($event => $options.onKeyValidation($event, 'onHomeKeyPress'), ["stop", "prevent"]), ["home"])), _cache[5] || (_cache[5] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.withModifiers)($event => $options.onKeyValidation($event, 'onEndKeyPress'), ["stop", "prevent"]), ["end"])), _cache[6] || (_cache[6] = $event => $options.onKeyValidation($event, 'onKeyPress'))]
3465
3587
  }), {
3466
3588
  anchor: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(_ref => {
3467
3589
  let {
@@ -3488,12 +3610,12 @@ function dropdownvue_type_template_id_071e4ebc_render(_ctx, _cache, $props, $set
3488
3610
  })
3489
3611
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "list", {
3490
3612
  close: close
3491
- })], 42, dropdownvue_type_template_id_071e4ebc_hoisted_1)];
3613
+ })], 42, dropdownvue_type_template_id_b0e1f8ba_hoisted_1)];
3492
3614
  }),
3493
3615
  _: 3
3494
- }, 16, ["content-width", "open", "placement", "fallback-placements", "modal", "max-height", "max-width", "onOpened", "onKeydown"]);
3616
+ }, 16, ["content-width", "open", "placement", "initial-focus-element", "fallback-placements", "modal", "max-height", "max-width", "onOpened", "onKeydown"]);
3495
3617
  }
3496
- ;// CONCATENATED MODULE: ./components/dropdown/dropdown.vue?vue&type=template&id=071e4ebc
3618
+ ;// CONCATENATED MODULE: ./components/dropdown/dropdown.vue?vue&type=template&id=b0e1f8ba
3497
3619
 
3498
3620
  ;// 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=0656612f
3499
3621
 
@@ -8938,7 +9060,6 @@ const DROPDOWN_PADDING_CLASSES = {
8938
9060
  components: {
8939
9061
  DtPopover: popover
8940
9062
  },
8941
- inheritAttrs: false,
8942
9063
  mixins: [keyboard_list_navigation({
8943
9064
  indexKey: 'highlightIndex',
8944
9065
  idKey: 'highlightId',
@@ -8950,6 +9071,7 @@ const DROPDOWN_PADDING_CLASSES = {
8950
9071
  activeItemKey: 'activeItemEl',
8951
9072
  focusOnKeyboardNavigation: true
8952
9073
  })],
9074
+ inheritAttrs: false,
8953
9075
  props: {
8954
9076
  /**
8955
9077
  * Controls whether the dropdown is shown. Leaving this null will have the dropdown trigger on click by default.
@@ -9098,6 +9220,10 @@ const DROPDOWN_PADDING_CLASSES = {
9098
9220
 
9099
9221
  activeItemEl() {
9100
9222
  return this.getListElement().querySelector('#' + this.highlightId);
9223
+ },
9224
+
9225
+ isArrowKeyNav() {
9226
+ return this.navigationType === this.LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS;
9101
9227
  }
9102
9228
 
9103
9229
  },
@@ -9157,7 +9283,7 @@ const DROPDOWN_PADDING_CLASSES = {
9157
9283
  return;
9158
9284
  }
9159
9285
 
9160
- if (this.navigationType === this.LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS) {
9286
+ if (this.isArrowKeyNav) {
9161
9287
  return this.onUpKey();
9162
9288
  }
9163
9289
  },
@@ -9168,29 +9294,35 @@ const DROPDOWN_PADDING_CLASSES = {
9168
9294
  return;
9169
9295
  }
9170
9296
 
9171
- if (this.navigationType === this.LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS) {
9297
+ if (this.isArrowKeyNav) {
9172
9298
  return this.onDownKey();
9173
9299
  }
9174
9300
  },
9175
9301
 
9176
9302
  onHomeKeyPress() {
9177
- if (!this.isOpen) {
9303
+ if (!this.isOpen || !this.isArrowKeyNav) {
9178
9304
  return;
9179
9305
  }
9180
9306
 
9181
- if (this.navigationType === this.LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS) {
9182
- return this.onHomeKey();
9183
- }
9307
+ return this.onHomeKey();
9184
9308
  },
9185
9309
 
9186
9310
  onEndKeyPress() {
9187
- if (!this.isOpen) {
9311
+ if (!this.isOpen || !this.isArrowKeyNav) {
9188
9312
  return;
9189
9313
  }
9190
9314
 
9191
- if (this.navigationType === this.LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS) {
9192
- return this.onEndKey();
9315
+ return this.onEndKey();
9316
+ },
9317
+
9318
+ onKeyPress(e) {
9319
+ if (!this.isOpen || !this.isArrowKeyNav || !this.isValidLetter(e.key)) {
9320
+ return;
9193
9321
  }
9322
+
9323
+ e.stopPropagation();
9324
+ e.preventDefault();
9325
+ return this.onNavigationKey(e.key);
9194
9326
  },
9195
9327
 
9196
9328
  onKeyValidation(e, eventHandler) {
@@ -9211,7 +9343,7 @@ const DROPDOWN_PADDING_CLASSES = {
9211
9343
 
9212
9344
 
9213
9345
  ;
9214
- const dropdown_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(dropdownvue_type_script_lang_js, [['render',dropdownvue_type_template_id_071e4ebc_render]])
9346
+ const dropdown_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(dropdownvue_type_script_lang_js, [['render',dropdownvue_type_template_id_b0e1f8ba_render]])
9215
9347
 
9216
9348
  /* harmony default export */ const dropdown = (dropdown_exports_);
9217
9349
  ;// CONCATENATED MODULE: ./components/dropdown/index.js
@@ -9376,7 +9508,7 @@ async function codeToEmojiData(code) {
9376
9508
  // @returns {string[]}
9377
9509
 
9378
9510
  function findShortCodes(textContent) {
9379
- const shortCodes = textContent.match(/:[^:]+:/g);
9511
+ const shortCodes = textContent.match(/:\w+:/g);
9380
9512
  const filtered = shortCodes ? shortCodes.filter(code => shortcodeToEmojiData(code)) : [];
9381
9513
  return new Set(filtered);
9382
9514
  } // Finds every emoji in slot text
@@ -10125,15 +10257,15 @@ const emoji_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(emojivue_typ
10125
10257
  ;// CONCATENATED MODULE: ./components/emoji/index.js
10126
10258
 
10127
10259
 
10128
- ;// 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=0337d4a5
10260
+ ;// 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=1204d99d
10129
10261
 
10130
- const inputvue_type_template_id_0337d4a5_hoisted_1 = {
10262
+ const inputvue_type_template_id_1204d99d_hoisted_1 = {
10131
10263
  ref: "container",
10132
10264
  class: "base-input",
10133
10265
  "data-qa": "dt-input"
10134
10266
  };
10135
- const inputvue_type_template_id_0337d4a5_hoisted_2 = ["aria-details"];
10136
- const inputvue_type_template_id_0337d4a5_hoisted_3 = ["id"];
10267
+ const inputvue_type_template_id_1204d99d_hoisted_2 = ["aria-details"];
10268
+ const inputvue_type_template_id_1204d99d_hoisted_3 = ["id"];
10137
10269
  const _hoisted_4 = {
10138
10270
  key: 0
10139
10271
  };
@@ -10147,23 +10279,25 @@ const _hoisted_6 = {
10147
10279
  };
10148
10280
  const _hoisted_7 = ["value", "name", "disabled", "maxlength"];
10149
10281
  const _hoisted_8 = ["value", "name", "type", "disabled", "maxlength"];
10150
- function inputvue_type_template_id_0337d4a5_render(_ctx, _cache, $props, $setup, $data, $options) {
10282
+ function inputvue_type_template_id_1204d99d_render(_ctx, _cache, $props, $setup, $data, $options) {
10151
10283
  const _component_dt_validation_messages = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-validation-messages");
10152
10284
 
10153
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", inputvue_type_template_id_0337d4a5_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("label", {
10285
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", inputvue_type_template_id_1204d99d_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("label", {
10154
10286
  class: "base-input__label",
10155
10287
  "aria-details": _ctx.$slots.description || $props.description ? $options.descriptionKey : undefined,
10156
10288
  "data-qa": "dt-input-label-wrapper"
10157
10289
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "labelSlot", {}, () => [$props.label ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", {
10158
10290
  key: 0,
10291
+ ref: "label",
10159
10292
  "data-qa": "dt-input-label",
10160
10293
  class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['base-input__label-text', 'd-label', $data.labelSizeClasses[$props.size]])
10161
10294
  }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.label), 3)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)]), _ctx.$slots.description || $props.description || $options.shouldValidateLength ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", {
10162
10295
  key: 0,
10163
10296
  id: $options.descriptionKey,
10297
+ ref: "description",
10164
10298
  class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['base-input__description', 'd-description', 'd-fd-column', $data.descriptionSizeClasses[$props.size]]),
10165
10299
  "data-qa": "dt-input-description"
10166
- }, [_ctx.$slots.description || $props.description ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", _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", _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_0337d4a5_hoisted_3)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", _hoisted_6, [_ctx.$slots.leftIcon ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("span", {
10300
+ }, [_ctx.$slots.description || $props.description ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", _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", _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_1204d99d_hoisted_3)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", _hoisted_6, [_ctx.$slots.leftIcon ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("span", {
10167
10301
  key: 0,
10168
10302
  class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)($options.inputIconClasses('left')),
10169
10303
  "data-qa": "dt-input-left-icon-wrapper",
@@ -10196,7 +10330,7 @@ function inputvue_type_template_id_0337d4a5_render(_ctx, _cache, $props, $setup,
10196
10330
  onFocusout: _cache[1] || (_cache[1] = function () {
10197
10331
  return $options.onBlur && $options.onBlur(...arguments);
10198
10332
  })
10199
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "rightIcon")], 34)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)])], 8, inputvue_type_template_id_0337d4a5_hoisted_2), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_validation_messages, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
10333
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "rightIcon")], 34)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)])], 8, inputvue_type_template_id_1204d99d_hoisted_2), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_validation_messages, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
10200
10334
  "validation-messages": $options.validationMessages,
10201
10335
  "show-messages": _ctx.showMessages,
10202
10336
  class: _ctx.messagesClass
@@ -10204,7 +10338,7 @@ function inputvue_type_template_id_0337d4a5_render(_ctx, _cache, $props, $setup,
10204
10338
  "data-qa": "dt-input-messages"
10205
10339
  }), null, 16, ["validation-messages", "show-messages", "class"])], 512);
10206
10340
  }
10207
- ;// CONCATENATED MODULE: ./components/input/input.vue?vue&type=template&id=0337d4a5
10341
+ ;// CONCATENATED MODULE: ./components/input/input.vue?vue&type=template&id=1204d99d
10208
10342
 
10209
10343
  ;// CONCATENATED MODULE: ./components/input/input_constants.js
10210
10344
  // Valid input types, any other input types (for example: 'radio' or 'checkbox') should
@@ -11107,7 +11241,7 @@ const MessagesMixin = {
11107
11241
 
11108
11242
 
11109
11243
  ;
11110
- const input_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(inputvue_type_script_lang_js, [['render',inputvue_type_template_id_0337d4a5_render]])
11244
+ const input_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(inputvue_type_script_lang_js, [['render',inputvue_type_template_id_1204d99d_render]])
11111
11245
 
11112
11246
  /* harmony default export */ const input_input = (input_exports_);
11113
11247
  ;// CONCATENATED MODULE: ./components/input/index.js
@@ -11848,9 +11982,9 @@ const list_section_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(list_
11848
11982
  /* harmony default export */ const list_section = (list_section_exports_);
11849
11983
  ;// CONCATENATED MODULE: ./components/list_section/index.js
11850
11984
 
11851
- ;// 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/list_item/list_item.vue?vue&type=template&id=7876bc36
11985
+ ;// 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/list_item/list_item.vue?vue&type=template&id=237d2c10
11852
11986
 
11853
- function list_itemvue_type_template_id_7876bc36_render(_ctx, _cache, $props, $setup, $data, $options) {
11987
+ function list_itemvue_type_template_id_237d2c10_render(_ctx, _cache, $props, $setup, $data, $options) {
11854
11988
  return (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), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
11855
11989
  id: $props.id,
11856
11990
  class: ['dt-list-item d-ls-none focus-visible', {
@@ -11876,7 +12010,7 @@ function list_itemvue_type_template_id_7876bc36_render(_ctx, _cache, $props, $se
11876
12010
  _: 3
11877
12011
  }, 16, ["id", "class", "tabindex", "role", "aria-selected"]);
11878
12012
  }
11879
- ;// CONCATENATED MODULE: ./components/list_item/list_item.vue?vue&type=template&id=7876bc36
12013
+ ;// CONCATENATED MODULE: ./components/list_item/list_item.vue?vue&type=template&id=237d2c10
11880
12014
 
11881
12015
  ;// 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/list_item/default_list_item.vue?vue&type=template&id=4c89d4ed
11882
12016
 
@@ -12004,7 +12138,7 @@ const default_list_item_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(
12004
12138
  validator: t => Object.values(LIST_ITEM_NAVIGATION_TYPES).includes(t)
12005
12139
  }
12006
12140
  },
12007
- emits: ['click', 'keydown', 'mousemove', 'mouseleave'],
12141
+ emits: ['keydown', 'mousemove', 'mouseleave', 'mousedown'],
12008
12142
 
12009
12143
  data() {
12010
12144
  return {
@@ -12033,6 +12167,13 @@ const default_list_item_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(
12033
12167
 
12034
12168
  this.$emit('keydown', event);
12035
12169
  },
12170
+ mousedown: event => {
12171
+ if (!this.isFocusable) {
12172
+ event.preventDefault();
12173
+ }
12174
+
12175
+ this.$emit('mousedown', event);
12176
+ },
12036
12177
  mousemove: event => {
12037
12178
  this.onMouseHover(event);
12038
12179
  this.$emit('mousemove', event);
@@ -12071,6 +12212,8 @@ const default_list_item_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(
12071
12212
  },
12072
12213
  methods: {
12073
12214
  onClick(e) {
12215
+ // disabled as we do not want to override native click
12216
+ // eslint-disable-next-line vue/require-explicit-emits
12074
12217
  this.$emit('click', e);
12075
12218
  },
12076
12219
 
@@ -12086,9 +12229,9 @@ const default_list_item_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(
12086
12229
  });
12087
12230
  ;// CONCATENATED MODULE: ./components/list_item/list_item.vue?vue&type=script&lang=js
12088
12231
 
12089
- // 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/list_item/list_item.vue?vue&type=style&index=0&id=7876bc36&lang=less
12090
- var list_itemvue_type_style_index_0_id_7876bc36_lang_less = __webpack_require__(621);
12091
- ;// CONCATENATED MODULE: ./components/list_item/list_item.vue?vue&type=style&index=0&id=7876bc36&lang=less
12232
+ // 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/list_item/list_item.vue?vue&type=style&index=0&id=237d2c10&lang=less
12233
+ var list_itemvue_type_style_index_0_id_237d2c10_lang_less = __webpack_require__(770);
12234
+ ;// CONCATENATED MODULE: ./components/list_item/list_item.vue?vue&type=style&index=0&id=237d2c10&lang=less
12092
12235
 
12093
12236
  ;// CONCATENATED MODULE: ./components/list_item/list_item.vue
12094
12237
 
@@ -12098,7 +12241,7 @@ var list_itemvue_type_style_index_0_id_7876bc36_lang_less = __webpack_require__(
12098
12241
  ;
12099
12242
 
12100
12243
 
12101
- const list_item_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(list_itemvue_type_script_lang_js, [['render',list_itemvue_type_template_id_7876bc36_render]])
12244
+ const list_item_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(list_itemvue_type_script_lang_js, [['render',list_itemvue_type_template_id_237d2c10_render]])
12102
12245
 
12103
12246
  /* harmony default export */ const list_item = (list_item_exports_);
12104
12247
  ;// CONCATENATED MODULE: ./components/list_item/index.js
@@ -12438,16 +12581,31 @@ const radio_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(radiovue_typ
12438
12581
  }
12439
12582
  },
12440
12583
  emits: ['input'],
12584
+
12585
+ data() {
12586
+ return {
12587
+ internalValue: this.value
12588
+ };
12589
+ },
12590
+
12441
12591
  watch: {
12442
- /*
12443
- * watching value to support 2 way binding for slotted radios.
12444
- * need this to pass value to slotted radios if modified outside
12445
- * radio group.
12446
- */
12447
12592
  value(newValue) {
12448
- this.provideObj.selectedValue = newValue;
12449
- }
12593
+ this.internalValue = newValue;
12594
+ },
12595
+
12596
+ /*
12597
+ * watching value to support 2 way binding for slotted radios.
12598
+ * need this to pass value to slotted checkboxes if modified outside
12599
+ * radio group.
12600
+ */
12601
+ internalValue: {
12602
+ immediate: true,
12450
12603
 
12604
+ handler(newInternalValue) {
12605
+ this.provideObj.selectedValue = newInternalValue;
12606
+ }
12607
+
12608
+ }
12451
12609
  },
12452
12610
  methods: {
12453
12611
  /*
@@ -13277,79 +13435,64 @@ const checkbox_group_exports_ = checkbox_groupvue_type_script_lang_js;
13277
13435
  /* harmony default export */ const checkbox_group = (checkbox_group_exports_);
13278
13436
  ;// CONCATENATED MODULE: ./components/checkbox_group/index.js
13279
13437
 
13280
- ;// 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/chip/chip.vue?vue&type=template&id=4d7bb584
13438
+ ;// 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/chip/chip.vue?vue&type=template&id=1805ca4d
13281
13439
 
13282
- const chipvue_type_template_id_4d7bb584_hoisted_1 = ["id", "tabindex", "aria-labelledby", "aria-label"];
13283
- const chipvue_type_template_id_4d7bb584_hoisted_2 = {
13440
+ const chipvue_type_template_id_1805ca4d_hoisted_1 = {
13441
+ class: "d-chip"
13442
+ };
13443
+ const chipvue_type_template_id_1805ca4d_hoisted_2 = {
13284
13444
  key: 0,
13285
13445
  "data-qa": "dt-chip-icon",
13286
13446
  class: "d-chip__icon"
13287
13447
  };
13288
- const chipvue_type_template_id_4d7bb584_hoisted_3 = {
13448
+ const chipvue_type_template_id_1805ca4d_hoisted_3 = {
13289
13449
  key: 1,
13290
13450
  "data-qa": "dt-chip-avatar"
13291
13451
  };
13292
- const chipvue_type_template_id_4d7bb584_hoisted_4 = ["id"];
13293
- const chipvue_type_template_id_4d7bb584_hoisted_5 = {
13294
- key: 3,
13295
- class: "d-chip-btn-holder"
13296
- };
13297
- const chipvue_type_template_id_4d7bb584_hoisted_6 = {
13298
- ref: "closeBtnContainer",
13299
- class: "d-chip-btn-container"
13300
- };
13301
- function chipvue_type_template_id_4d7bb584_render(_ctx, _cache, $props, $setup, $data, $options) {
13452
+ const chipvue_type_template_id_1805ca4d_hoisted_4 = ["id"];
13453
+ function chipvue_type_template_id_1805ca4d_render(_ctx, _cache, $props, $setup, $data, $options) {
13302
13454
  const _component_icon_close = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("icon-close");
13303
13455
 
13304
13456
  const _component_dt_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-button");
13305
13457
 
13306
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("span", {
13458
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("span", chipvue_type_template_id_1805ca4d_hoisted_1, [((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.interactive ? 'button' : 'span'), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
13307
13459
  id: $props.id,
13308
- class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)($options.chipClasses()),
13460
+ type: $props.interactive && 'button',
13461
+ class: $options.chipClasses(),
13309
13462
  "data-qa": "dt-chip",
13310
- tabindex: $options.tabIndex,
13311
13463
  "aria-labelledby": $props.ariaLabel ? undefined : "".concat($props.id, "-content"),
13312
- "aria-label": $props.ariaLabel,
13313
- onMousedown: _cache[1] || (_cache[1] = function () {
13314
- return $options.onClick && $options.onClick(...arguments);
13315
- }),
13316
- onMouseup: _cache[2] || (_cache[2] = function () {
13317
- return $options.onClick && $options.onClick(...arguments);
13318
- }),
13319
- onMouseleave: _cache[3] || (_cache[3] = $event => $data.isActive = false),
13320
- onFocusout: _cache[4] || (_cache[4] = $event => $data.isActive = false),
13321
- onKeydown: _cache[5] || (_cache[5] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)(function () {
13322
- return $options.onClick && $options.onClick(...arguments);
13323
- }, ["enter"])),
13324
- onKeyup: [_cache[6] || (_cache[6] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)(function () {
13325
- return $options.onClick && $options.onClick(...arguments);
13326
- }, ["enter"])), _cache[7] || (_cache[7] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)(function () {
13327
- return $options.onClose && $options.onClose(...arguments);
13328
- }, ["delete"]))]
13329
- }, [_ctx.$slots.icon ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("span", chipvue_type_template_id_4d7bb584_hoisted_2, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "icon")])) : _ctx.$slots.avatar ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("span", chipvue_type_template_id_4d7bb584_hoisted_3, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "avatar")])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), _ctx.$slots.default ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("span", {
13330
- key: 2,
13331
- id: "".concat($props.id, "-content"),
13332
- "data-qa": "dt-chip-label",
13333
- class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['d-truncate', $props.contentClass])
13334
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "default")], 10, chipvue_type_template_id_4d7bb584_hoisted_4)) : (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_.createElementBlock)("span", chipvue_type_template_id_4d7bb584_hoisted_5)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("span", chipvue_type_template_id_4d7bb584_hoisted_6, [!$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)({
13464
+ "aria-label": $props.ariaLabel
13465
+ }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toHandlers)($options.chipListeners)), {
13466
+ default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [_ctx.$slots.icon ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("span", chipvue_type_template_id_1805ca4d_hoisted_2, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "icon")])) : _ctx.$slots.avatar ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("span", chipvue_type_template_id_1805ca4d_hoisted_3, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "avatar")])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), _ctx.$slots.default ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("span", {
13467
+ key: 2,
13468
+ id: "".concat($props.id, "-content"),
13469
+ "data-qa": "dt-chip-label",
13470
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['d-truncate', 'd-chip__text', $props.contentClass])
13471
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "default")], 10, chipvue_type_template_id_1805ca4d_hoisted_4)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)]),
13472
+ _: 3
13473
+ }, 16, ["id", "type", "class", "aria-labelledby", "aria-label"])), !$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)({
13335
13474
  key: 0
13336
13475
  }, $props.closeButtonProps, {
13476
+ class: $options.chipCloseButtonClasses(),
13337
13477
  "data-qa": "dt-chip-close",
13338
- circle: "",
13339
- importance: "clear",
13340
13478
  "aria-label": $props.closeButtonProps.ariaLabel,
13341
13479
  onClick: _cache[0] || (_cache[0] = $event => _ctx.$emit('close'))
13342
13480
  }), {
13343
- default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_icon_close)]),
13481
+ icon: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_icon_close)]),
13344
13482
  _: 1
13345
- }, 16, ["aria-label"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)], 512)], 42, chipvue_type_template_id_4d7bb584_hoisted_1);
13483
+ }, 16, ["class", "aria-label"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)]);
13346
13484
  }
13347
- ;// CONCATENATED MODULE: ./components/chip/chip.vue?vue&type=template&id=4d7bb584
13485
+ ;// CONCATENATED MODULE: ./components/chip/chip.vue?vue&type=template&id=1805ca4d
13348
13486
 
13349
13487
  ;// CONCATENATED MODULE: ./components/chip/chip_constants.js
13350
13488
  const CHIP_SIZE_MODIFIERS = {
13351
- xs: 'd-chip--xs',
13352
- sm: 'd-chip--sm',
13489
+ xs: 'd-chip__label--xs',
13490
+ sm: 'd-chip__label--sm',
13491
+ md: ''
13492
+ };
13493
+ const CHIP_CLOSE_BUTTON_SIZE_MODIFIERS = {
13494
+ xs: 'd-chip__close--xs',
13495
+ sm: 'd-chip__close--sm',
13353
13496
  md: ''
13354
13497
  };
13355
13498
  /* harmony default export */ const chip_constants = ({
@@ -13372,6 +13515,11 @@ const CHIP_SIZE_MODIFIERS = {
13372
13515
  */
13373
13516
  closeButtonProps: {
13374
13517
  type: Object,
13518
+ default: function () {
13519
+ return {
13520
+ ariaLabel: 'close'
13521
+ };
13522
+ },
13375
13523
  validator: props => {
13376
13524
  return !!props.ariaLabel;
13377
13525
  }
@@ -13433,7 +13581,7 @@ const CHIP_SIZE_MODIFIERS = {
13433
13581
  default: ''
13434
13582
  }
13435
13583
  },
13436
- emits: ['click', 'close'],
13584
+ emits: ['click', 'close', 'keyup'],
13437
13585
 
13438
13586
  data() {
13439
13587
  return {
@@ -13442,37 +13590,37 @@ const CHIP_SIZE_MODIFIERS = {
13442
13590
  },
13443
13591
 
13444
13592
  computed: {
13445
- tabIndex() {
13446
- return this.interactive ? 0 : -1;
13593
+ chipListeners() {
13594
+ return {
13595
+ click: event => {
13596
+ if (this.interactive) this.$emit('click', event);
13597
+ },
13598
+ keyup: event => {
13599
+ var _event$code;
13600
+
13601
+ if (((_event$code = event.code) === null || _event$code === void 0 ? void 0 : _event$code.toLowerCase()) === 'delete') {
13602
+ this.onClose();
13603
+ } else {
13604
+ this.$emit('keyup', event);
13605
+ }
13606
+ }
13607
+ };
13447
13608
  }
13448
13609
 
13449
13610
  },
13450
13611
  methods: {
13451
13612
  chipClasses() {
13452
- return ['d-chip', CHIP_SIZE_MODIFIERS[this.size], {
13453
- 'd-chip--interactive': this.interactive,
13454
- 'd-chip--active': this.isActive
13455
- }];
13613
+ return ['d-chip__label', CHIP_SIZE_MODIFIERS[this.size]];
13614
+ },
13615
+
13616
+ chipCloseButtonClasses() {
13617
+ return ['d-chip__close', CHIP_CLOSE_BUTTON_SIZE_MODIFIERS[this.size]];
13456
13618
  },
13457
13619
 
13458
13620
  onClose() {
13459
13621
  if (!this.hideClose) {
13460
13622
  this.$emit('close');
13461
13623
  }
13462
- },
13463
-
13464
- onClick(event) {
13465
- // Clicking on the button should not update value of isActive.
13466
- if (!this.interactive || this.$refs.closeBtnContainer.contains(event.target)) {
13467
- return;
13468
- }
13469
-
13470
- if (event.type === 'mousedown' || event.type === 'keydown') {
13471
- this.isActive = true;
13472
- } else {
13473
- this.isActive = false;
13474
- this.$emit('click');
13475
- }
13476
13624
  }
13477
13625
 
13478
13626
  }
@@ -13485,7 +13633,7 @@ const CHIP_SIZE_MODIFIERS = {
13485
13633
 
13486
13634
 
13487
13635
  ;
13488
- const chip_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(chipvue_type_script_lang_js, [['render',chipvue_type_template_id_4d7bb584_render]])
13636
+ const chip_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(chipvue_type_script_lang_js, [['render',chipvue_type_template_id_1805ca4d_render]])
13489
13637
 
13490
13638
  /* harmony default export */ const chip = (chip_exports_);
13491
13639
  ;// CONCATENATED MODULE: ./components/chip/index.js
@@ -14193,15 +14341,15 @@ const toggle_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(togglevue_t
14193
14341
  /* harmony default export */ const toggle = (toggle_exports_);
14194
14342
  ;// CONCATENATED MODULE: ./components/toggle/index.js
14195
14343
 
14196
- ;// 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/tooltip/tooltip.vue?vue&type=template&id=600c8e6a
14344
+ ;// 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/tooltip/tooltip.vue?vue&type=template&id=044c8b20
14197
14345
 
14198
- const tooltipvue_type_template_id_600c8e6a_hoisted_1 = {
14346
+ const tooltipvue_type_template_id_044c8b20_hoisted_1 = {
14199
14347
  "data-qa": "dt-tooltip-container"
14200
14348
  };
14201
- function tooltipvue_type_template_id_600c8e6a_render(_ctx, _cache, $props, $setup, $data, $options) {
14349
+ function tooltipvue_type_template_id_044c8b20_render(_ctx, _cache, $props, $setup, $data, $options) {
14202
14350
  const _component_dt_lazy_show = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-lazy-show");
14203
14351
 
14204
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", tooltipvue_type_template_id_600c8e6a_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", {
14352
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", tooltipvue_type_template_id_044c8b20_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", {
14205
14353
  ref: "anchor",
14206
14354
  "data-qa": "dt-tooltip-anchor",
14207
14355
  onFocusin: _cache[0] || (_cache[0] = function () {
@@ -14238,7 +14386,7 @@ function tooltipvue_type_template_id_600c8e6a_render(_ctx, _cache, $props, $setu
14238
14386
  _: 3
14239
14387
  }, 8, ["id", "show", "transition", "class", "onAfterLeave", "onAfterEnter"])]);
14240
14388
  }
14241
- ;// CONCATENATED MODULE: ./components/tooltip/tooltip.vue?vue&type=template&id=600c8e6a
14389
+ ;// CONCATENATED MODULE: ./components/tooltip/tooltip.vue?vue&type=template&id=044c8b20
14242
14390
 
14243
14391
  ;// CONCATENATED MODULE: ./components/tooltip/tooltip_constants.js
14244
14392
  /*
@@ -14302,7 +14450,7 @@ const TOOLTIP_HIDE_ON_CLICK_VARIANTS = [true, false, 'toggle'];
14302
14450
  */
14303
14451
  offset: {
14304
14452
  type: Array,
14305
- default: () => [0, 0]
14453
+ default: () => [0, -4]
14306
14454
  },
14307
14455
 
14308
14456
  /**
@@ -14514,9 +14662,9 @@ const TOOLTIP_HIDE_ON_CLICK_VARIANTS = [true, false, 'toggle'];
14514
14662
  });
14515
14663
  ;// CONCATENATED MODULE: ./components/tooltip/tooltip.vue?vue&type=script&lang=js
14516
14664
 
14517
- // 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/tooltip/tooltip.vue?vue&type=style&index=0&id=600c8e6a&lang=less
14518
- var tooltipvue_type_style_index_0_id_600c8e6a_lang_less = __webpack_require__(877);
14519
- ;// CONCATENATED MODULE: ./components/tooltip/tooltip.vue?vue&type=style&index=0&id=600c8e6a&lang=less
14665
+ // 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/tooltip/tooltip.vue?vue&type=style&index=0&id=044c8b20&lang=less
14666
+ var tooltipvue_type_style_index_0_id_044c8b20_lang_less = __webpack_require__(273);
14667
+ ;// CONCATENATED MODULE: ./components/tooltip/tooltip.vue?vue&type=style&index=0&id=044c8b20&lang=less
14520
14668
 
14521
14669
  ;// CONCATENATED MODULE: ./components/tooltip/tooltip.vue
14522
14670
 
@@ -14526,7 +14674,7 @@ var tooltipvue_type_style_index_0_id_600c8e6a_lang_less = __webpack_require__(87
14526
14674
  ;
14527
14675
 
14528
14676
 
14529
- const tooltip_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(tooltipvue_type_script_lang_js, [['render',tooltipvue_type_template_id_600c8e6a_render]])
14677
+ const tooltip_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(tooltipvue_type_script_lang_js, [['render',tooltipvue_type_template_id_044c8b20_render]])
14530
14678
 
14531
14679
  /* harmony default export */ const tooltip = (tooltip_exports_);
14532
14680
  ;// CONCATENATED MODULE: ./components/tooltip/index.js
@@ -14827,85 +14975,1211 @@ const keyboard_shortcut_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(
14827
14975
  ;// CONCATENATED MODULE: ./components/keyboard_shortcut/index.js
14828
14976
 
14829
14977
 
14830
- ;// 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/list_items/contact_info/contact_info.vue?vue&type=template&id=7091b031
14978
+ ;// 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/root_layout/root_layout.vue?vue&type=template&id=2e5fe0a4
14831
14979
 
14832
- const contact_infovue_type_template_id_7091b031_hoisted_1 = {
14833
- class: "d-ps-relative",
14834
- "data-qa": "contact-info-left"
14835
- };
14836
- const contact_infovue_type_template_id_7091b031_hoisted_2 = ["src", "alt"];
14837
- const contact_infovue_type_template_id_7091b031_hoisted_3 = {
14838
- "data-qa": "contact-info-header"
14839
- };
14840
- const contact_infovue_type_template_id_7091b031_hoisted_4 = {
14841
- "data-qa": "contact-info-subtitle"
14842
- };
14843
- const contact_infovue_type_template_id_7091b031_hoisted_5 = {
14844
- "data-qa": "contact-info-bottom"
14980
+ const root_layoutvue_type_template_id_2e5fe0a4_hoisted_1 = {
14981
+ class: "root-layout"
14845
14982
  };
14846
- const contact_infovue_type_template_id_7091b031_hoisted_6 = {
14847
- "data-qa": "contact-info-right"
14848
- };
14849
- function contact_infovue_type_template_id_7091b031_render(_ctx, _cache, $props, $setup, $data, $options) {
14850
- const _component_dt_avatar = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-avatar");
14851
-
14852
- const _component_dt_list_item = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-list-item");
14983
+ function root_layoutvue_type_template_id_2e5fe0a4_render(_ctx, _cache, $props, $setup, $data, $options) {
14984
+ const _component_dt_root_layout_body = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-root-layout-body");
14853
14985
 
14854
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_list_item, {
14855
- id: $props.id,
14856
- role: $props.role,
14857
- "element-type": "div",
14858
- "data-qa": "contact-info"
14986
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", root_layoutvue_type_template_id_2e5fe0a4_hoisted_1, [_ctx.$slots.header ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("header", {
14987
+ key: 0,
14988
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['root-layout__header', $props.headerClass, {
14989
+ 'root-layout__header--sticky': $props.headerSticky
14990
+ }]),
14991
+ style: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeStyle)({
14992
+ 'height': $props.headerHeight
14993
+ }),
14994
+ "data-qa": "root-layout-header"
14995
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "header")], 6)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_root_layout_body, {
14996
+ "content-class": $props.contentClass,
14997
+ "content-wrap-width-percent": $props.contentWrapWidthPercent,
14998
+ "sidebar-class": $props.sidebarClass,
14999
+ "sidebar-width": $props.sidebarWidth,
15000
+ "sidebar-position": $props.sidebarPosition
14859
15001
  }, {
14860
- left: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", contact_infovue_type_template_id_7091b031_hoisted_1, [$props.avatarSrc ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_avatar, {
14861
- key: 0,
14862
- kind: "default",
14863
- size: "lg",
14864
- "avatar-class": "d-bar2"
14865
- }, {
14866
- default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("img", {
14867
- "data-qa": "dt-contact-avatar",
14868
- src: $props.avatarSrc,
14869
- alt: $props.avatarInitials
14870
- }, null, 8, contact_infovue_type_template_id_7091b031_hoisted_2)]),
14871
- _: 1
14872
- })) : $props.avatarInitials ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_avatar, {
14873
- key: 1,
14874
- kind: "initials",
14875
- size: "lg",
14876
- color: $props.avatarColor
14877
- }, {
14878
- default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createTextVNode)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.avatarInitials), 1)]),
14879
- _: 1
14880
- }, 8, ["color"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), $options.showUserStatus ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", {
14881
- key: 2,
14882
- class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['d-ba', 'd-bc-white', 'd-baw2', 'd-bar2', 'd-ps-absolute', 'd-bn1', 'd-rn1', 'd-w20p', 'd-h20p', $data.USER_STATUS_COLOR_MODIFIERS[$props.userStatusColor]]),
14883
- "data-qa": "contact-info-user-status"
14884
- }, "   ", 2)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)])]),
14885
- default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", contact_infovue_type_template_id_7091b031_hoisted_3, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "header")])]),
14886
- subtitle: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", contact_infovue_type_template_id_7091b031_hoisted_4, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "subtitle")])]),
14887
- bottom: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", contact_infovue_type_template_id_7091b031_hoisted_5, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "bottom")])]),
14888
- right: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", contact_infovue_type_template_id_7091b031_hoisted_6, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "right")])]),
15002
+ sidebar: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "sidebar")]),
15003
+ content: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "default")]),
14889
15004
  _: 3
14890
- }, 8, ["id", "role"]);
15005
+ }, 8, ["content-class", "content-wrap-width-percent", "sidebar-class", "sidebar-width", "sidebar-position"]), _ctx.$slots.footer ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("footer", {
15006
+ key: 1,
15007
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['root-layout__footer', $props.footerClass]),
15008
+ style: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeStyle)({
15009
+ 'height': $props.footerHeight
15010
+ }),
15011
+ "data-qa": "root-layout-footer"
15012
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "footer")], 6)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)]);
14891
15013
  }
14892
- ;// CONCATENATED MODULE: ./recipes/list_items/contact_info/contact_info.vue?vue&type=template&id=7091b031
14893
-
14894
- ;// CONCATENATED MODULE: ./recipes/list_items/contact_info/contact_info_constants.js
14895
- const USER_STATUS_COLOR_MODIFIERS = {
14896
- none: '',
14897
- green: 'd-bgc-green-400',
14898
- yellow: 'd-bgc-yellow-400',
14899
- red: 'd-bgc-red-400'
14900
- };
14901
- /* harmony default export */ const contact_info_constants = ({
14902
- USER_STATUS_COLOR_MODIFIERS
14903
- });
14904
- ;// 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/list_items/contact_info/contact_info.vue?vue&type=script&lang=js
15014
+ ;// CONCATENATED MODULE: ./components/root_layout/root_layout.vue?vue&type=template&id=2e5fe0a4
14905
15015
 
15016
+ ;// 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/root_layout/root_layout_body.vue?vue&type=template&id=dfb53770
14906
15017
 
14907
-
14908
- /* harmony default export */ const contact_infovue_type_script_lang_js = ({
15018
+ function root_layout_bodyvue_type_template_id_dfb53770_render(_ctx, _cache, $props, $setup, $data, $options) {
15019
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", {
15020
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['root-layout__body', $options.bodyClass]),
15021
+ "data-qa": "root-layout-body"
15022
+ }, [_ctx.$slots.sidebar ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("aside", {
15023
+ key: 0,
15024
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['root-layout__sidebar', $props.sidebarClass]),
15025
+ style: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeStyle)({
15026
+ 'flex-basis': $props.sidebarWidth
15027
+ }),
15028
+ "data-qa": "root-layout-sidebar"
15029
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "sidebar")], 6)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), _ctx.$slots.content ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("main", {
15030
+ key: 1,
15031
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['root-layout__content', $props.contentClass]),
15032
+ style: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeStyle)({
15033
+ 'min-inline-size': $props.contentWrapWidthPercent
15034
+ }),
15035
+ "data-qa": "root-layout-content"
15036
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "content")], 6)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)], 2);
15037
+ }
15038
+ ;// CONCATENATED MODULE: ./components/root_layout/root_layout_body.vue?vue&type=template&id=dfb53770
15039
+
15040
+ ;// CONCATENATED MODULE: ./components/root_layout/root_layout_constants.js
15041
+ const ROOT_LAYOUT_SIDEBAR_POSITIONS = {
15042
+ LEFT: 'left',
15043
+ RIGHT: 'right'
15044
+ };
15045
+ /* harmony default export */ const root_layout_constants = ({
15046
+ ROOT_LAYOUT_SIDEBAR_POSITIONS
15047
+ });
15048
+ ;// 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/root_layout/root_layout_body.vue?vue&type=script&lang=js
15049
+
15050
+ /* harmony default export */ const root_layout_bodyvue_type_script_lang_js = ({
15051
+ name: 'DtRootLayoutBody',
15052
+ props: {
15053
+ /**
15054
+ * Additional class name for the content element
15055
+ */
15056
+ contentClass: {
15057
+ type: [String, Array, Object],
15058
+ default: undefined
15059
+ },
15060
+
15061
+ /**
15062
+ * Additional class name for the sidebar element
15063
+ */
15064
+ sidebarClass: {
15065
+ type: [String, Array, Object],
15066
+ default: undefined
15067
+ },
15068
+
15069
+ /**
15070
+ * The width of the sidebar
15071
+ * Possible units rem|px|%|em
15072
+ */
15073
+ sidebarWidth: {
15074
+ type: String,
15075
+ default: undefined
15076
+ },
15077
+
15078
+ /**
15079
+ * Whether the sidebar is on the left or right side
15080
+ * Possible options: 'left', 'right'
15081
+ */
15082
+ sidebarPosition: {
15083
+ type: String,
15084
+ default: undefined
15085
+ },
15086
+
15087
+ /**
15088
+ * For responsive layouts. When the main content is at the specified width percentage,
15089
+ * the sidebar will display above the content rather than beside it. Please enter a percentage string value
15090
+ *
15091
+ * ex: '50%', '30%'
15092
+ */
15093
+ contentWrapWidthPercent: {
15094
+ type: String,
15095
+ default: undefined
15096
+ }
15097
+ },
15098
+ computed: {
15099
+ bodyClass() {
15100
+ return {
15101
+ 'root-layout__body--invert': this.sidebarPosition === ROOT_LAYOUT_SIDEBAR_POSITIONS.RIGHT
15102
+ };
15103
+ }
15104
+
15105
+ }
15106
+ });
15107
+ ;// CONCATENATED MODULE: ./components/root_layout/root_layout_body.vue?vue&type=script&lang=js
15108
+
15109
+ // 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/root_layout/root_layout_body.vue?vue&type=style&index=0&id=dfb53770&lang=less
15110
+ var root_layout_bodyvue_type_style_index_0_id_dfb53770_lang_less = __webpack_require__(304);
15111
+ ;// CONCATENATED MODULE: ./components/root_layout/root_layout_body.vue?vue&type=style&index=0&id=dfb53770&lang=less
15112
+
15113
+ ;// CONCATENATED MODULE: ./components/root_layout/root_layout_body.vue
15114
+
15115
+
15116
+
15117
+
15118
+ ;
15119
+
15120
+
15121
+ const root_layout_body_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(root_layout_bodyvue_type_script_lang_js, [['render',root_layout_bodyvue_type_template_id_dfb53770_render]])
15122
+
15123
+ /* harmony default export */ const root_layout_body = (root_layout_body_exports_);
15124
+ ;// 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/root_layout/root_layout.vue?vue&type=script&lang=js
15125
+
15126
+
15127
+ /* harmony default export */ const root_layoutvue_type_script_lang_js = ({
15128
+ name: 'DtRootLayout',
15129
+ components: {
15130
+ DtRootLayoutBody: root_layout_body
15131
+ },
15132
+ props: {
15133
+ /**
15134
+ * Additional class name for the header element
15135
+ */
15136
+ headerClass: {
15137
+ type: [String, Array, Object],
15138
+ default: ''
15139
+ },
15140
+
15141
+ /**
15142
+ * The height of the header
15143
+ * Possible units rem|px|%|em
15144
+ */
15145
+ headerHeight: {
15146
+ type: String,
15147
+ default: '64px'
15148
+ },
15149
+
15150
+ /**
15151
+ * Scroll the header with the page
15152
+ */
15153
+ headerSticky: {
15154
+ type: Boolean,
15155
+ default: false
15156
+ },
15157
+
15158
+ /**
15159
+ * Additional class name for the content element
15160
+ */
15161
+ contentClass: {
15162
+ type: [String, Array, Object],
15163
+ default: ''
15164
+ },
15165
+
15166
+ /**
15167
+ * For responsive layouts. When the main content is at the specified width percentage,
15168
+ * the sidebar will display above the content rather than beside it. Please enter a percentage string value
15169
+ *
15170
+ * ex: '50%', '30%'
15171
+ */
15172
+ contentWrapWidthPercent: {
15173
+ type: String,
15174
+ default: '50%'
15175
+ },
15176
+
15177
+ /**
15178
+ * Additional class name for the sidebar element
15179
+ */
15180
+ sidebarClass: {
15181
+ type: [String, Array, Object],
15182
+ default: ''
15183
+ },
15184
+
15185
+ /**
15186
+ * The width of the sidebar
15187
+ * Possible units rem|px|%|em
15188
+ */
15189
+ sidebarWidth: {
15190
+ type: String,
15191
+ default: '256px'
15192
+ },
15193
+
15194
+ /**
15195
+ * Whether the sidebar is on the left or right side
15196
+ * Possible options: 'left', 'right'
15197
+ */
15198
+ sidebarPosition: {
15199
+ type: String,
15200
+ default: 'left',
15201
+ validator: s => Object.values(ROOT_LAYOUT_SIDEBAR_POSITIONS).includes(s)
15202
+ },
15203
+
15204
+ /**
15205
+ * Additional class name for the footer element
15206
+ */
15207
+ footerClass: {
15208
+ type: [String, Array, Object],
15209
+ default: ''
15210
+ },
15211
+
15212
+ /**
15213
+ * The height of the footer
15214
+ * Possible units rem|px|%|em
15215
+ */
15216
+ footerHeight: {
15217
+ type: String,
15218
+ default: '64px'
15219
+ }
15220
+ }
15221
+ });
15222
+ ;// CONCATENATED MODULE: ./components/root_layout/root_layout.vue?vue&type=script&lang=js
15223
+
15224
+ // 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/root_layout/root_layout.vue?vue&type=style&index=0&id=2e5fe0a4&lang=less
15225
+ var root_layoutvue_type_style_index_0_id_2e5fe0a4_lang_less = __webpack_require__(151);
15226
+ ;// CONCATENATED MODULE: ./components/root_layout/root_layout.vue?vue&type=style&index=0&id=2e5fe0a4&lang=less
15227
+
15228
+ ;// CONCATENATED MODULE: ./components/root_layout/root_layout.vue
15229
+
15230
+
15231
+
15232
+
15233
+ ;
15234
+
15235
+
15236
+ const root_layout_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(root_layoutvue_type_script_lang_js, [['render',root_layoutvue_type_template_id_2e5fe0a4_render]])
15237
+
15238
+ /* harmony default export */ const root_layout = (root_layout_exports_);
15239
+ ;// CONCATENATED MODULE: ./components/root_layout/index.js
15240
+
15241
+
15242
+ ;// 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=6e4f62a5
15243
+
15244
+ const combobox_with_popovervue_type_template_id_6e4f62a5_hoisted_1 = ["id"];
15245
+ const combobox_with_popovervue_type_template_id_6e4f62a5_hoisted_2 = ["onMouseleave", "onFocusout"];
15246
+ function combobox_with_popovervue_type_template_id_6e4f62a5_render(_ctx, _cache, $props, $setup, $data, $options) {
15247
+ const _component_dt_popover = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-popover");
15248
+
15249
+ const _component_dt_combobox = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-combobox");
15250
+
15251
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_combobox, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
15252
+ ref: "combobox",
15253
+ "show-list": $data.isListShown,
15254
+ "on-beginning-of-list": $props.onBeginningOfList,
15255
+ "on-end-of-list": $props.onEndOfList,
15256
+ "list-aria-label": $props.listAriaLabel,
15257
+ "list-rendered-outside": true,
15258
+ "list-id": $props.listId,
15259
+ "data-qa": "dt-combobox"
15260
+ }, $options.comboboxListeners), {
15261
+ input: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(_ref => {
15262
+ let {
15263
+ inputProps
15264
+ } = _ref;
15265
+ return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", {
15266
+ id: $data.externalAnchor,
15267
+ ref: "input",
15268
+ onFocusin: _cache[0] || (_cache[0] = function () {
15269
+ return $options.onFocusIn && $options.onFocusIn(...arguments);
15270
+ }),
15271
+ onFocusout: _cache[1] || (_cache[1] = function () {
15272
+ return $options.onFocusOut && $options.onFocusOut(...arguments);
15273
+ }),
15274
+ onKeydown: [_cache[2] || (_cache[2] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)($event => $options.openOnArrowKeyPress($event), ["up"])), _cache[3] || (_cache[3] = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)($event => $options.openOnArrowKeyPress($event), ["down"]))]
15275
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "input", {
15276
+ inputProps: inputProps,
15277
+ onInput: $options.handleDisplayList
15278
+ })], 40, combobox_with_popovervue_type_template_id_6e4f62a5_hoisted_1)];
15279
+ }),
15280
+ list: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(_ref2 => {
15281
+ let {
15282
+ opened,
15283
+ listProps,
15284
+ clearHighlightIndex
15285
+ } = _ref2;
15286
+ return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_popover, {
15287
+ ref: "popover",
15288
+ open: $data.isListShown,
15289
+ "onUpdate:open": _cache[6] || (_cache[6] = $event => $data.isListShown = $event),
15290
+ "hide-on-click": true,
15291
+ "max-height": $props.maxHeight,
15292
+ "max-width": $props.maxWidth,
15293
+ offset: $props.popoverOffset,
15294
+ placement: "bottom-start",
15295
+ padding: "none",
15296
+ role: "listbox",
15297
+ "external-anchor": $data.externalAnchor,
15298
+ "content-width": $props.contentWidth,
15299
+ "content-tabindex": null,
15300
+ modal: false,
15301
+ "auto-focus": false,
15302
+ onOpened: opened
15303
+ }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createSlots)({
15304
+ content: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", {
15305
+ ref: "listWrapper",
15306
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)([$data.DROPDOWN_PADDING_CLASSES[$props.padding], $props.listClass]),
15307
+ onMouseleave: clearHighlightIndex,
15308
+ onFocusout: $event => {
15309
+ clearHighlightIndex;
15310
+ $options.onFocusOut;
15311
+ }
15312
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "list", {
15313
+ listProps: listProps
15314
+ })], 42, combobox_with_popovervue_type_template_id_6e4f62a5_hoisted_2)]),
15315
+ _: 2
15316
+ }, [_ctx.$slots.header ? {
15317
+ name: "headerContent",
15318
+ fn: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", {
15319
+ ref: "header",
15320
+ onFocusout: _cache[4] || (_cache[4] = function () {
15321
+ return $options.onFocusOut && $options.onFocusOut(...arguments);
15322
+ })
15323
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "header")], 544)])
15324
+ } : undefined, _ctx.$slots.footer ? {
15325
+ name: "footerContent",
15326
+ fn: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", {
15327
+ ref: "footer",
15328
+ onFocusout: _cache[5] || (_cache[5] = function () {
15329
+ return $options.onFocusOut && $options.onFocusOut(...arguments);
15330
+ })
15331
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "footer")], 544)])
15332
+ } : undefined]), 1032, ["open", "max-height", "max-width", "offset", "external-anchor", "content-width", "onOpened"])];
15333
+ }),
15334
+ _: 3
15335
+ }, 16, ["show-list", "on-beginning-of-list", "on-end-of-list", "list-aria-label", "list-id"]);
15336
+ }
15337
+ ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue?vue&type=template&id=6e4f62a5
15338
+
15339
+ ;// 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
15340
+
15341
+
15342
+
15343
+ /* harmony default export */ const combobox_with_popovervue_type_script_lang_js = ({
15344
+ name: 'DtRecipeComboboxWithPopover',
15345
+ components: {
15346
+ DtCombobox: combobox,
15347
+ DtPopover: popover
15348
+ },
15349
+ props: {
15350
+ /**
15351
+ * String to use for the list's aria-label.
15352
+ */
15353
+ listAriaLabel: {
15354
+ type: String,
15355
+ required: true
15356
+ },
15357
+
15358
+ /**
15359
+ * Determines when to show the list element and also controls the aria-expanded attribute.
15360
+ * Leaving this null will have the combobox trigger on input focus by default.
15361
+ * If you set this value, the default trigger behavior will be disabled and you can
15362
+ * control it as you need.
15363
+ */
15364
+ showList: {
15365
+ type: Boolean,
15366
+ default: null
15367
+ },
15368
+
15369
+ /**
15370
+ * Sets an ID on the list element of the component. Used by several aria attributes
15371
+ * as well as when deriving the IDs for each item.
15372
+ */
15373
+ listId: {
15374
+ type: String,
15375
+
15376
+ default() {
15377
+ return getUniqueString();
15378
+ }
15379
+
15380
+ },
15381
+
15382
+ /**
15383
+ * Additional class for the wrapper list element.
15384
+ */
15385
+ listClass: {
15386
+ type: [String, Array, Object],
15387
+ default: ''
15388
+ },
15389
+
15390
+ /**
15391
+ * A method that will be called when the selection goes past the beginning of the list.
15392
+ */
15393
+ onBeginningOfList: {
15394
+ type: Function,
15395
+ default: null
15396
+ },
15397
+
15398
+ /**
15399
+ * A method that will be called when the selection goes past the end of the list.
15400
+ */
15401
+ onEndOfList: {
15402
+ type: Function,
15403
+ default: null
15404
+ },
15405
+
15406
+ /**
15407
+ * Determines maximum height for the popover before overflow.
15408
+ * Possible units rem|px|em
15409
+ */
15410
+ maxHeight: {
15411
+ type: String,
15412
+ default: ''
15413
+ },
15414
+
15415
+ /**
15416
+ * Determines maximum width for the popover before overflow.
15417
+ * Possible units rem|px|%|em
15418
+ */
15419
+ maxWidth: {
15420
+ type: String,
15421
+ default: ''
15422
+ },
15423
+
15424
+ /**
15425
+ * Vertical padding size around the list element.
15426
+ */
15427
+ padding: {
15428
+ type: String,
15429
+ default: 'small',
15430
+ validator: padding => {
15431
+ return Object.keys(DROPDOWN_PADDING_CLASSES).some(item => item === padding);
15432
+ }
15433
+ },
15434
+
15435
+ /**
15436
+ * Width configuration for the popover content. When its value is 'anchor',
15437
+ * the popover content will have the same width as the anchor.
15438
+ */
15439
+ contentWidth: {
15440
+ type: String,
15441
+ default: null,
15442
+ validator: contentWidth => POPOVER_CONTENT_WIDTHS.includes(contentWidth)
15443
+ },
15444
+
15445
+ /**
15446
+ * If the list should be shown by pressing up or down arrow key on the input element.
15447
+ * This can be set when not passing showList prop.
15448
+ */
15449
+ openWithArrowKeys: {
15450
+ type: Boolean,
15451
+ default: false
15452
+ },
15453
+
15454
+ /**
15455
+ * Displaces the popover content box from its anchor element
15456
+ * by the specified number of pixels.
15457
+ */
15458
+ popoverOffset: {
15459
+ type: Array,
15460
+ default: () => [0, 4]
15461
+ },
15462
+
15463
+ /**
15464
+ * Displays the list when the combobox is focused, before the user has typed anything.
15465
+ * When this is enabled the list will not close after selection.
15466
+ */
15467
+ hasSuggestionList: {
15468
+ type: Boolean,
15469
+ default: true
15470
+ }
15471
+ },
15472
+ emits: ['select', 'escape', 'highlight', 'opened'],
15473
+
15474
+ data() {
15475
+ return {
15476
+ DROPDOWN_PADDING_CLASSES: DROPDOWN_PADDING_CLASSES,
15477
+ isListShown: false,
15478
+ isInputFocused: false,
15479
+ isListFocused: false,
15480
+ externalAnchor: getUniqueString()
15481
+ };
15482
+ },
15483
+
15484
+ computed: {
15485
+ comboboxListeners() {
15486
+ return { ...this.$attrs,
15487
+ onSelect: this.onSelect,
15488
+ onEscape: this.onEscape,
15489
+ onHighlight: this.onHighlight
15490
+ };
15491
+ }
15492
+
15493
+ },
15494
+ watch: {
15495
+ showList: {
15496
+ handler: function (show) {
15497
+ if (show !== null) {
15498
+ this.isListShown = show;
15499
+ }
15500
+ },
15501
+ immediate: true
15502
+ },
15503
+
15504
+ isListShown(val) {
15505
+ this.onOpened(val);
15506
+ }
15507
+
15508
+ },
15509
+ methods: {
15510
+ async handleDisplayList(value) {
15511
+ if (this.isListShown) {
15512
+ // After the list is updated, hightlight the first item
15513
+ await this.$nextTick();
15514
+ this.$refs.combobox.setInitialHighlightIndex();
15515
+ }
15516
+
15517
+ if (!this.hasSuggestionList) {
15518
+ if (value) {
15519
+ // Displays the list after the user has typed anything
15520
+ this.showComboboxList();
15521
+ } else {
15522
+ this.closeComboboxList();
15523
+ }
15524
+ }
15525
+ },
15526
+
15527
+ showComboboxList() {
15528
+ if (this.showList != null) {
15529
+ return;
15530
+ }
15531
+
15532
+ this.isListShown = true;
15533
+ },
15534
+
15535
+ closeComboboxList() {
15536
+ if (this.showList != null) {
15537
+ return;
15538
+ }
15539
+
15540
+ this.isListShown = false;
15541
+ },
15542
+
15543
+ onSelect(highlightIndex) {
15544
+ this.$emit('select', highlightIndex);
15545
+
15546
+ if (!this.hasSuggestionList) {
15547
+ // we don't display the list before the user has typed anything
15548
+ this.closeComboboxList();
15549
+ }
15550
+ },
15551
+
15552
+ onEscape() {
15553
+ this.$emit('escape');
15554
+ this.closeComboboxList();
15555
+ },
15556
+
15557
+ onHighlight(highlightIndex) {
15558
+ this.$emit('highlight', highlightIndex);
15559
+ },
15560
+
15561
+ onOpened(opened) {
15562
+ this.$emit('opened', opened);
15563
+ },
15564
+
15565
+ onFocusIn(e) {
15566
+ if (this.hasSuggestionList && e && this.$refs.input.querySelector('input') === e.target) {
15567
+ // only trigger if we show suggestion list when focus and
15568
+ // it's the input specifically that was focused
15569
+ this.showComboboxList();
15570
+ }
15571
+ },
15572
+
15573
+ onFocusOut(e) {
15574
+ const comboboxRefs = ['input', 'header', 'footer', 'listWrapper'];
15575
+ const isComboboxStillFocused = comboboxRefs.some(ref => {
15576
+ var _this$$refs$ref;
15577
+
15578
+ return (_this$$refs$ref = this.$refs[ref]) === null || _this$$refs$ref === void 0 ? void 0 : _this$$refs$ref.contains(e.relatedTarget);
15579
+ });
15580
+
15581
+ if (!isComboboxStillFocused) {
15582
+ this.closeComboboxList();
15583
+ }
15584
+ },
15585
+
15586
+ openOnArrowKeyPress(e) {
15587
+ if (this.showList !== null || this.isListShown || !this.openWithArrowKeys) {
15588
+ return;
15589
+ }
15590
+
15591
+ this.showComboboxList();
15592
+ }
15593
+
15594
+ }
15595
+ });
15596
+ ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue?vue&type=script&lang=js
15597
+
15598
+ ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue
15599
+
15600
+
15601
+
15602
+
15603
+ ;
15604
+ const combobox_with_popover_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(combobox_with_popovervue_type_script_lang_js, [['render',combobox_with_popovervue_type_template_id_6e4f62a5_render]])
15605
+
15606
+ /* harmony default export */ const combobox_with_popover = (combobox_with_popover_exports_);
15607
+ ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_with_popover/index.js
15608
+
15609
+ ;// 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=74f7079d
15610
+
15611
+ const combobox_multi_selectvue_type_template_id_74f7079d_hoisted_1 = {
15612
+ ref: "inputSlotWrapper",
15613
+ class: "d-ps-relative"
15614
+ };
15615
+ const combobox_multi_selectvue_type_template_id_74f7079d_hoisted_2 = {
15616
+ ref: "chipsWrapper",
15617
+ class: "d-ps-absolute d-mx2"
15618
+ };
15619
+ const combobox_multi_selectvue_type_template_id_74f7079d_hoisted_3 = {
15620
+ ref: "header"
15621
+ };
15622
+ const combobox_multi_selectvue_type_template_id_74f7079d_hoisted_4 = {
15623
+ ref: "list"
15624
+ };
15625
+ const combobox_multi_selectvue_type_template_id_74f7079d_hoisted_5 = {
15626
+ key: 1,
15627
+ class: "d-ta-center d-py16"
15628
+ };
15629
+ const combobox_multi_selectvue_type_template_id_74f7079d_hoisted_6 = {
15630
+ ref: "footer"
15631
+ };
15632
+ function combobox_multi_selectvue_type_template_id_74f7079d_render(_ctx, _cache, $props, $setup, $data, $options) {
15633
+ const _component_dt_chip = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-chip");
15634
+
15635
+ const _component_dt_input = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-input");
15636
+
15637
+ const _component_dt_validation_messages = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-validation-messages");
15638
+
15639
+ const _component_dt_recipe_combobox_with_popover = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-recipe-combobox-with-popover");
15640
+
15641
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_recipe_combobox_with_popover, {
15642
+ ref: "comboboxWithPopover",
15643
+ "list-aria-label": "listAriaLabel",
15644
+ "show-list": $props.showList,
15645
+ "max-height": $props.listMaxHeight,
15646
+ "popover-offset": $data.popoverOffset,
15647
+ "has-suggestion-list": $props.hasSuggestionList,
15648
+ "content-width": "anchor",
15649
+ onSelect: $options.onComboboxSelect
15650
+ }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createSlots)({
15651
+ input: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(_ref => {
15652
+ let {
15653
+ onInput
15654
+ } = _ref;
15655
+ return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("span", combobox_multi_selectvue_type_template_id_74f7079d_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("span", combobox_multi_selectvue_type_template_id_74f7079d_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 => {
15656
+ 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)({
15657
+ ref_for: true,
15658
+ ref: "chips",
15659
+ key: item,
15660
+ class: "d-mt4 d-mx2 d-zi-base1",
15661
+ "close-button-props": {
15662
+ ariaLabel: 'close'
15663
+ }
15664
+ }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toHandlers)($options.chipListeners), {
15665
+ onKeyup: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withKeys)($event => $options.onChipRemove(item), ["backspace"]),
15666
+ onClose: $event => $options.onChipRemove(item)
15667
+ }), {
15668
+ default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createTextVNode)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)(item), 1)]),
15669
+ _: 2
15670
+ }, 1040, ["onKeyup", "onClose"]);
15671
+ }), 128))], 512), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_input, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.mergeProps)({
15672
+ ref: "input",
15673
+ modelValue: $data.value,
15674
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = $event => $data.value = $event),
15675
+ class: "d-fl-grow1 d-mb4",
15676
+ label: $props.label,
15677
+ description: $props.description,
15678
+ placeholder: $options.inputPlaceHolder,
15679
+ "show-messages": $props.showInputMessages,
15680
+ messages: $props.inputMessages
15681
+ }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toHandlers)($options.inputListeners), {
15682
+ onInput: onInput
15683
+ }), null, 16, ["modelValue", "label", "description", "placeholder", "show-messages", "messages", "onInput"]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createVNode)(_component_dt_validation_messages, {
15684
+ "validation-messages": $props.maxSelectedMessage,
15685
+ "show-messages": $data.showValidationMessages
15686
+ }, null, 8, ["validation-messages", "show-messages"])], 512)];
15687
+ }),
15688
+ list: (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_74f7079d_hoisted_4, [!$props.loading ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "list", {
15689
+ key: 0
15690
+ }) : ((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_74f7079d_hoisted_5, (0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.loadingMessage), 1))], 512)]),
15691
+ _: 2
15692
+ }, [_ctx.$slots.header ? {
15693
+ name: "header",
15694
+ 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_74f7079d_hoisted_3, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "header")], 512)])
15695
+ } : undefined, _ctx.$slots.footer ? {
15696
+ name: "footer",
15697
+ 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_74f7079d_hoisted_6, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "footer")], 512)])
15698
+ } : undefined]), 1032, ["show-list", "max-height", "popover-offset", "has-suggestion-list", "onSelect"]);
15699
+ }
15700
+ ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue?vue&type=template&id=74f7079d
15701
+
15702
+ ;// 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_multi_select/combobox_multi_select.vue?vue&type=script&lang=js
15703
+ /* eslint-disable max-lines */
15704
+
15705
+
15706
+ /* harmony default export */ const combobox_multi_selectvue_type_script_lang_js = ({
15707
+ name: 'DtRecipeComboboxMultiSelect',
15708
+ components: {
15709
+ DtRecipeComboboxWithPopover: combobox_with_popover,
15710
+ DtInput: input_input,
15711
+ DtChip: chip,
15712
+ DtValidationMessages: validation_messages
15713
+ },
15714
+ props: {
15715
+ /**
15716
+ * Label for the combobox
15717
+ */
15718
+ label: {
15719
+ type: String,
15720
+ default: null
15721
+ },
15722
+
15723
+ /**
15724
+ * Description for the combobox
15725
+ */
15726
+ description: {
15727
+ type: String,
15728
+ default: null
15729
+ },
15730
+
15731
+ /**
15732
+ * Input placeholder
15733
+ */
15734
+ placeholder: {
15735
+ type: String,
15736
+ default: 'Select one or start typing'
15737
+ },
15738
+
15739
+ /**
15740
+ * Input validation messages
15741
+ */
15742
+ inputMessages: {
15743
+ type: Array,
15744
+ default: () => [],
15745
+ validator: inputMessages => {
15746
+ return validationMessageValidator(inputMessages);
15747
+ }
15748
+ },
15749
+
15750
+ /**
15751
+ * Show input validation message
15752
+ */
15753
+ showInputMessages: {
15754
+ type: Boolean,
15755
+ default: true
15756
+ },
15757
+ // @TODO: https://dialpad.atlassian.net/browse/DP-52324
15758
+ // type: {
15759
+ // type: String,
15760
+ // values: ['input', 'select'],
15761
+ // default: 'select',
15762
+ // },
15763
+
15764
+ /**
15765
+ * Determines if the list is loading
15766
+ */
15767
+ loading: {
15768
+ type: Boolean,
15769
+ default: false
15770
+ },
15771
+
15772
+ /**
15773
+ * The message when the list is loading
15774
+ */
15775
+ loadingMessage: {
15776
+ type: String,
15777
+ default: 'loading...'
15778
+ },
15779
+
15780
+ /**
15781
+ * Determines when to show the list element and also controls the aria-expanded attribute.
15782
+ * Leaving this null will have the combobox trigger on input focus by default.
15783
+ * If you set this value, the default trigger behavior will be disabled and you can
15784
+ * control it as you need.
15785
+ */
15786
+ showList: {
15787
+ type: Boolean,
15788
+ default: null
15789
+ },
15790
+
15791
+ /**
15792
+ * Determines maximum height for the popover before overflow.
15793
+ * Possible units rem|px|em
15794
+ */
15795
+ listMaxHeight: {
15796
+ type: String,
15797
+ default: '300px'
15798
+ },
15799
+
15800
+ /**
15801
+ * The selected items
15802
+ */
15803
+ selectedItems: {
15804
+ type: Array,
15805
+ default: function () {
15806
+ return [];
15807
+ }
15808
+ },
15809
+
15810
+ /**
15811
+ * Would be the maximum number of selections you can make. 0 is unlimited
15812
+ */
15813
+ maxSelected: {
15814
+ type: Number,
15815
+ default: 0
15816
+ },
15817
+
15818
+ /**
15819
+ * Max select message when the max selections has been reached with the structure:
15820
+ * `[{"message": string, "type": VALIDATION_MESSAGE_TYPES }]`
15821
+ */
15822
+ maxSelectedMessage: {
15823
+ type: Array,
15824
+ default: function () {
15825
+ return [];
15826
+ }
15827
+ },
15828
+
15829
+ /**
15830
+ * Displays the list when the combobox is focused, before the user has typed anything.
15831
+ * When this is enabled the list will not close after selection.
15832
+ */
15833
+ hasSuggestionList: {
15834
+ type: Boolean,
15835
+ default: true
15836
+ }
15837
+ },
15838
+ emits: ['input', 'select', 'remove', 'max-selected', 'keyup'],
15839
+
15840
+ data() {
15841
+ return {
15842
+ value: '',
15843
+ popoverOffset: [0, 0],
15844
+ showValidationMessages: false,
15845
+ initialInputPadding: {},
15846
+ resizeWindowObserver: null
15847
+ };
15848
+ },
15849
+
15850
+ computed: {
15851
+ inputPlaceHolder() {
15852
+ var _this$selectedItems;
15853
+
15854
+ return ((_this$selectedItems = this.selectedItems) === null || _this$selectedItems === void 0 ? void 0 : _this$selectedItems.length) > 0 ? '' : this.placeholder;
15855
+ },
15856
+
15857
+ chipListeners() {
15858
+ return {
15859
+ keyup: event => {
15860
+ this.onChipKeyup(event);
15861
+ this.$emit('keyup', event);
15862
+ }
15863
+ };
15864
+ },
15865
+
15866
+ inputListeners() {
15867
+ return {
15868
+ input: event => {
15869
+ this.$emit('input', event);
15870
+ },
15871
+ keyup: event => {
15872
+ this.onInputKeyup(event);
15873
+ this.$emit('keyup', event);
15874
+ }
15875
+ };
15876
+ }
15877
+
15878
+ },
15879
+ watch: {
15880
+ selectedItems: {
15881
+ deep: true,
15882
+ immediate: true,
15883
+ handler: async function () {
15884
+ await this.$nextTick();
15885
+ this.setInputPadding();
15886
+ this.setInputMinWidth();
15887
+ this.checkMaxSelected();
15888
+ }
15889
+ },
15890
+
15891
+ async label() {
15892
+ await this.$nextTick(); // Adjust the chips position if label changed
15893
+
15894
+ this.setChipsTopPosition();
15895
+ },
15896
+
15897
+ async description() {
15898
+ await this.$nextTick(); // Adjust the chips position if description changed
15899
+
15900
+ this.setChipsTopPosition();
15901
+ }
15902
+
15903
+ },
15904
+
15905
+ mounted() {
15906
+ this.setChipsTopPosition(); // Recalculate chip position and input padding when resizing window
15907
+
15908
+ this.resizeWindowObserver = new ResizeObserver(() => {
15909
+ this.setChipsTopPosition();
15910
+ this.setInputPadding();
15911
+ }).observe(document.body);
15912
+ },
15913
+
15914
+ beforeUnmount() {
15915
+ var _this$resizeWindowObs;
15916
+
15917
+ (_this$resizeWindowObs = this.resizeWindowObserver) === null || _this$resizeWindowObs === void 0 ? void 0 : _this$resizeWindowObs.unobserve(document.body);
15918
+ },
15919
+
15920
+ methods: {
15921
+ onChipRemove(item) {
15922
+ this.$emit('remove', item);
15923
+ this.$refs.input.focus();
15924
+ },
15925
+
15926
+ onComboboxSelect(i) {
15927
+ this.value = '';
15928
+ this.$emit('select', i);
15929
+ },
15930
+
15931
+ getChipButtons() {
15932
+ return this.$refs.chips && this.$refs.chips.map(chip => chip.$el.querySelector('button'));
15933
+ },
15934
+
15935
+ getChips() {
15936
+ return this.$refs.chips && this.$refs.chips.map(chip => chip.$el);
15937
+ },
15938
+
15939
+ getLastChipButton() {
15940
+ return this.$refs.chips && this.getChipButtons()[this.getChipButtons().length - 1];
15941
+ },
15942
+
15943
+ getLastChip() {
15944
+ return this.$refs.chips && this.getChips()[this.getChips().length - 1];
15945
+ },
15946
+
15947
+ getFirstChip() {
15948
+ return this.$refs.chips && this.getChips()[0];
15949
+ },
15950
+
15951
+ getInput() {
15952
+ var _this$$refs$input;
15953
+
15954
+ return (_this$$refs$input = this.$refs.input) === null || _this$$refs$input === void 0 ? void 0 : _this$$refs$input.$refs.input;
15955
+ },
15956
+
15957
+ onChipKeyup(event) {
15958
+ var _event$code;
15959
+
15960
+ const key = (_event$code = event.code) === null || _event$code === void 0 ? void 0 : _event$code.toLowerCase();
15961
+
15962
+ if (key === 'arrowleft') {
15963
+ // Move to the previous chip
15964
+ this.navigateBetweenChips(event.target, true);
15965
+ } else if (key === 'arrowright') {
15966
+ if (event.target.id === this.getLastChipButton().id) {
15967
+ // Move to the input if it's the last chip
15968
+ this.moveFromChipToInput();
15969
+ } else {
15970
+ // Move to the next chip
15971
+ this.navigateBetweenChips(event.target, false);
15972
+ }
15973
+ }
15974
+ },
15975
+
15976
+ onInputKeyup(event) {
15977
+ var _event$code2;
15978
+
15979
+ const key = (_event$code2 = event.code) === null || _event$code2 === void 0 ? void 0 : _event$code2.toLowerCase(); // If the cursor is at the start of the text,
15980
+ // press 'backspace' or 'left' focuses the last chip
15981
+
15982
+ if (this.selectedItems.length > 0 && event.target.selectionStart === 0) {
15983
+ if (key === 'backspace' || key === 'arrowleft') {
15984
+ this.moveFromInputToChip();
15985
+ }
15986
+ }
15987
+ },
15988
+
15989
+ moveFromInputToChip() {
15990
+ this.getLastChipButton().focus();
15991
+ this.$refs.input.blur();
15992
+ this.$refs.comboboxWithPopover.closeComboboxList();
15993
+ },
15994
+
15995
+ moveFromChipToInput() {
15996
+ this.getLastChipButton().blur();
15997
+ this.$refs.input.focus();
15998
+ this.$refs.comboboxWithPopover.showComboboxList();
15999
+ },
16000
+
16001
+ navigateBetweenChips(target, toLeft) {
16002
+ const from = this.getChipButtons().indexOf(target);
16003
+ const to = toLeft ? from - 1 : from + 1;
16004
+
16005
+ if (to < 0 || to >= this.$refs.chips.length) {
16006
+ return;
16007
+ }
16008
+
16009
+ this.getChipButtons()[from].blur();
16010
+ this.getChipButtons()[to].focus();
16011
+ this.$refs.comboboxWithPopover.closeComboboxList();
16012
+ },
16013
+
16014
+ setChipsTopPosition() {
16015
+ // To place the chips in the input box
16016
+ // The chip "top" position should be the same line as the input box
16017
+ if (!this.$refs.input) {
16018
+ return;
16019
+ }
16020
+
16021
+ const input = this.getInput();
16022
+ if (!input) return;
16023
+ const inputSlotWrapper = this.$refs.inputSlotWrapper;
16024
+ const top = input.getBoundingClientRect().top - inputSlotWrapper.getBoundingClientRect().top;
16025
+ const chipsWrapper = this.$refs.chipsWrapper;
16026
+ chipsWrapper.style.top = top + 'px';
16027
+ },
16028
+
16029
+ setInputPadding() {
16030
+ const lastChip = this.getLastChip();
16031
+ const input = this.getInput();
16032
+ if (!input) return;
16033
+
16034
+ if (!lastChip) {
16035
+ // Revert padding if no chip
16036
+ this.revertInputPadding(input);
16037
+ return;
16038
+ } // Get the position of the last chip
16039
+ // The input cursor should be the same "top" as that chip and next besides it
16040
+
16041
+
16042
+ const left = lastChip.offsetLeft + this.getFullWidth(lastChip);
16043
+ input.style.paddingLeft = left + 'px'; // Chip has vertical margin. We add buffer to top center the input text
16044
+
16045
+ const top = lastChip.offsetTop + 3;
16046
+ input.style.paddingTop = top + 'px'; // TODO: refresh the tippy.js instance in the popover
16047
+ // If the new chip goes to the next line and the input box expands,
16048
+ // move the popover down to the next line. Same when chips are removed
16049
+
16050
+ this.popoverOffset = [0, 0];
16051
+ },
16052
+
16053
+ getFullWidth(el) {
16054
+ const styles = window.getComputedStyle(el);
16055
+ return el.offsetWidth + parseInt(styles.marginLeft) + parseInt(styles.marginRight);
16056
+ },
16057
+
16058
+ revertInputPadding(input) {
16059
+ input.style.paddingLeft = '';
16060
+ input.style.paddingTop = '';
16061
+ input.style.paddingBottom = '';
16062
+ },
16063
+
16064
+ setInputMinWidth() {
16065
+ // Ensure the width of the input is "slightly bigger" than the width of a single chip
16066
+ const firstChip = this.getFirstChip();
16067
+ const input = this.getInput();
16068
+ if (!input) return;
16069
+
16070
+ if (firstChip) {
16071
+ // Add 4px buffer for typing room
16072
+ input.style.minWidth = this.getFullWidth(firstChip) + 4 + 'px';
16073
+ } else {
16074
+ input.style.minWidth = '';
16075
+ }
16076
+ },
16077
+
16078
+ checkMaxSelected() {
16079
+ if (this.maxSelected === 0) return;
16080
+
16081
+ if (this.selectedItems.length >= this.maxSelected) {
16082
+ this.showValidationMessages = true;
16083
+ this.$emit('max-selected');
16084
+ } else {
16085
+ this.showValidationMessages = false;
16086
+ }
16087
+ }
16088
+
16089
+ }
16090
+ });
16091
+ ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue?vue&type=script&lang=js
16092
+
16093
+ ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_multi_select/combobox_multi_select.vue
16094
+
16095
+
16096
+
16097
+
16098
+ ;
16099
+ const combobox_multi_select_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(combobox_multi_selectvue_type_script_lang_js, [['render',combobox_multi_selectvue_type_template_id_74f7079d_render]])
16100
+
16101
+ /* harmony default export */ const combobox_multi_select = (combobox_multi_select_exports_);
16102
+ ;// CONCATENATED MODULE: ./recipes/comboboxes/combobox_multi_select/index.js
16103
+
16104
+ ;// 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/list_items/contact_info/contact_info.vue?vue&type=template&id=7091b031
16105
+
16106
+ const contact_infovue_type_template_id_7091b031_hoisted_1 = {
16107
+ class: "d-ps-relative",
16108
+ "data-qa": "contact-info-left"
16109
+ };
16110
+ const contact_infovue_type_template_id_7091b031_hoisted_2 = ["src", "alt"];
16111
+ const contact_infovue_type_template_id_7091b031_hoisted_3 = {
16112
+ "data-qa": "contact-info-header"
16113
+ };
16114
+ const contact_infovue_type_template_id_7091b031_hoisted_4 = {
16115
+ "data-qa": "contact-info-subtitle"
16116
+ };
16117
+ const contact_infovue_type_template_id_7091b031_hoisted_5 = {
16118
+ "data-qa": "contact-info-bottom"
16119
+ };
16120
+ const contact_infovue_type_template_id_7091b031_hoisted_6 = {
16121
+ "data-qa": "contact-info-right"
16122
+ };
16123
+ function contact_infovue_type_template_id_7091b031_render(_ctx, _cache, $props, $setup, $data, $options) {
16124
+ const _component_dt_avatar = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-avatar");
16125
+
16126
+ const _component_dt_list_item = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)("dt-list-item");
16127
+
16128
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_list_item, {
16129
+ id: $props.id,
16130
+ role: $props.role,
16131
+ "element-type": "div",
16132
+ "data-qa": "contact-info"
16133
+ }, {
16134
+ left: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", contact_infovue_type_template_id_7091b031_hoisted_1, [$props.avatarSrc ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_avatar, {
16135
+ key: 0,
16136
+ kind: "default",
16137
+ size: "lg",
16138
+ "avatar-class": "d-bar2"
16139
+ }, {
16140
+ default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("img", {
16141
+ "data-qa": "dt-contact-avatar",
16142
+ src: $props.avatarSrc,
16143
+ alt: $props.avatarInitials
16144
+ }, null, 8, contact_infovue_type_template_id_7091b031_hoisted_2)]),
16145
+ _: 1
16146
+ })) : $props.avatarInitials ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createBlock)(_component_dt_avatar, {
16147
+ key: 1,
16148
+ kind: "initials",
16149
+ size: "lg",
16150
+ color: $props.avatarColor
16151
+ }, {
16152
+ default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createTextVNode)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.toDisplayString)($props.avatarInitials), 1)]),
16153
+ _: 1
16154
+ }, 8, ["color"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true), $options.showUserStatus ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementBlock)("div", {
16155
+ key: 2,
16156
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.normalizeClass)(['d-ba', 'd-bc-white', 'd-baw2', 'd-bar2', 'd-ps-absolute', 'd-bn1', 'd-rn1', 'd-w20p', 'd-h20p', $data.USER_STATUS_COLOR_MODIFIERS[$props.userStatusColor]]),
16157
+ "data-qa": "contact-info-user-status"
16158
+ }, "   ", 2)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)("", true)])]),
16159
+ default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", contact_infovue_type_template_id_7091b031_hoisted_3, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "header")])]),
16160
+ subtitle: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", contact_infovue_type_template_id_7091b031_hoisted_4, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "subtitle")])]),
16161
+ bottom: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", contact_infovue_type_template_id_7091b031_hoisted_5, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "bottom")])]),
16162
+ right: (0,external_commonjs_vue_commonjs2_vue_root_Vue_.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.createElementVNode)("div", contact_infovue_type_template_id_7091b031_hoisted_6, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.renderSlot)(_ctx.$slots, "right")])]),
16163
+ _: 3
16164
+ }, 8, ["id", "role"]);
16165
+ }
16166
+ ;// CONCATENATED MODULE: ./recipes/list_items/contact_info/contact_info.vue?vue&type=template&id=7091b031
16167
+
16168
+ ;// CONCATENATED MODULE: ./recipes/list_items/contact_info/contact_info_constants.js
16169
+ const USER_STATUS_COLOR_MODIFIERS = {
16170
+ none: '',
16171
+ green: 'd-bgc-green-400',
16172
+ yellow: 'd-bgc-yellow-400',
16173
+ red: 'd-bgc-red-400'
16174
+ };
16175
+ /* harmony default export */ const contact_info_constants = ({
16176
+ USER_STATUS_COLOR_MODIFIERS
16177
+ });
16178
+ ;// 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/list_items/contact_info/contact_info.vue?vue&type=script&lang=js
16179
+
16180
+
16181
+
16182
+ /* harmony default export */ const contact_infovue_type_script_lang_js = ({
14909
16183
  name: 'DtRecipeContactInfo',
14910
16184
  components: {
14911
16185
  DtAvatar: avatar,
@@ -15111,11 +16385,14 @@ const top_banner_info_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(to
15111
16385
 
15112
16386
 
15113
16387
 
16388
+
15114
16389
 
15115
16390
 
15116
16391
  /// Recipes
15117
16392
 
15118
16393
 
16394
+
16395
+
15119
16396
  // Mixins
15120
16397
 
15121
16398
  // Emoji