@dialpad/dialtone-vue 3.30.1 → 3.32.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.
@@ -33,6 +33,30 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".enter-active,.leave-active{overflow:h
33
33
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
34
34
 
35
35
 
36
+ /***/ }),
37
+
38
+ /***/ 901:
39
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
40
+
41
+ "use strict";
42
+ __webpack_require__.r(__webpack_exports__);
43
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
44
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
45
+ /* harmony export */ });
46
+ /* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(81);
47
+ /* 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__);
48
+ /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(645);
49
+ /* 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__);
50
+ // Imports
51
+
52
+
53
+ 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()));
54
+ // Module
55
+ ___CSS_LOADER_EXPORT___.push([module.id, ".d-avatar--image-loaded{background-color:initial;background-image:unset}", ""]);
56
+ // Exports
57
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
58
+
59
+
36
60
  /***/ }),
37
61
 
38
62
  /***/ 6:
@@ -347,7 +371,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".dt-recipe--callbar-button-with-popove
347
371
 
348
372
  /***/ }),
349
373
 
350
- /***/ 825:
374
+ /***/ 743:
351
375
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
352
376
 
353
377
  "use strict";
@@ -364,7 +388,7 @@ __webpack_require__.r(__webpack_exports__);
364
388
 
365
389
  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()));
366
390
  // Module
367
- ___CSS_LOADER_EXPORT___.push([module.id, ".ivr_node__width{width:280px}", ""]);
391
+ ___CSS_LOADER_EXPORT___.push([module.id, ".ivr_node__width{width:280px}.ivr_node__goto_icon{transform:rotate(90deg)}", ""]);
368
392
  // Exports
369
393
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
370
394
 
@@ -552,6 +576,22 @@ var update = add("d75292b8", content, true, {"sourceMap":false,"shadowMode":fals
552
576
 
553
577
  /***/ }),
554
578
 
579
+ /***/ 156:
580
+ /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
581
+
582
+ // style-loader: Adds some css to the DOM by adding a <style> tag
583
+
584
+ // load the styles
585
+ var content = __webpack_require__(901);
586
+ if(content.__esModule) content = content.default;
587
+ if(typeof content === 'string') content = [[module.id, content, '']];
588
+ if(content.locals) module.exports = content.locals;
589
+ // add the styles to the DOM
590
+ var add = (__webpack_require__(402)/* ["default"] */ .Z)
591
+ var update = add("49001dd1", content, true, {"sourceMap":false,"shadowMode":false});
592
+
593
+ /***/ }),
594
+
555
595
  /***/ 840:
556
596
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
557
597
 
@@ -760,19 +800,19 @@ var update = add("45697d7e", content, true, {"sourceMap":false,"shadowMode":fals
760
800
 
761
801
  /***/ }),
762
802
 
763
- /***/ 572:
803
+ /***/ 995:
764
804
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
765
805
 
766
806
  // style-loader: Adds some css to the DOM by adding a <style> tag
767
807
 
768
808
  // load the styles
769
- var content = __webpack_require__(825);
809
+ var content = __webpack_require__(743);
770
810
  if(content.__esModule) content = content.default;
771
811
  if(typeof content === 'string') content = [[module.id, content, '']];
772
812
  if(content.locals) module.exports = content.locals;
773
813
  // add the styles to the DOM
774
814
  var add = (__webpack_require__(402)/* ["default"] */ .Z)
775
- var update = add("3ff34c76", content, true, {"sourceMap":false,"shadowMode":false});
815
+ var update = add("2cc23047", content, true, {"sourceMap":false,"shadowMode":false});
776
816
 
777
817
  /***/ }),
778
818
 
@@ -1140,7 +1180,6 @@ __webpack_require__.r(__webpack_exports__);
1140
1180
 
1141
1181
  // EXPORTS
1142
1182
  __webpack_require__.d(__webpack_exports__, {
1143
- "AVATAR_COLOR_MODIFIERS": () => (/* reexport */ AVATAR_COLOR_MODIFIERS),
1144
1183
  "AVATAR_KIND_MODIFIERS": () => (/* reexport */ AVATAR_KIND_MODIFIERS),
1145
1184
  "AVATAR_SIZE_MODIFIERS": () => (/* reexport */ AVATAR_SIZE_MODIFIERS),
1146
1185
  "BADGE_KIND_MODIFIERS": () => (/* reexport */ BADGE_KIND_MODIFIERS),
@@ -1282,25 +1321,31 @@ if (typeof window !== 'undefined') {
1282
1321
 
1283
1322
  ;// CONCATENATED MODULE: external {"commonjs":"vue","commonjs2":"vue","root":"Vue"}
1284
1323
  const external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject = require("vue");
1285
- ;// 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=093957dc
1324
+ ;// 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=52a431d8
1286
1325
 
1287
1326
  const _hoisted_1 = ["id"];
1327
+ const _hoisted_2 = {
1328
+ key: 1
1329
+ };
1288
1330
  function render(_ctx, _cache, $props, $setup, $data, $options) {
1289
1331
  const _component_dt_presence = (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.resolveComponent)("dt-presence");
1290
1332
 
1291
1333
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("div", {
1292
1334
  id: $props.id,
1293
- class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.normalizeClass)(['d-avatar', $data.AVATAR_KIND_MODIFIERS[$data.kind], $data.AVATAR_SIZE_MODIFIERS[$props.size], $data.AVATAR_COLOR_MODIFIERS[$props.color], $props.avatarClass]),
1335
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.normalizeClass)(['d-avatar', $data.AVATAR_KIND_MODIFIERS[$data.kind], $data.AVATAR_SIZE_MODIFIERS[$props.size], $props.avatarClass]),
1336
+ style: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.normalizeStyle)($options.initialKindStyle),
1294
1337
  "data-qa": "dt-avatar"
1295
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "default"), $props.presence ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createBlock)(_component_dt_presence, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.mergeProps)({
1296
- key: 0,
1338
+ }, [$options.showDefaultSlot ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "default", {
1339
+ key: 0
1340
+ }) : $options.showInitials ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("span", _hoisted_2, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.toDisplayString)($data.formattedInitials), 1)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true), $props.presence ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createBlock)(_component_dt_presence, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.mergeProps)({
1341
+ key: 2,
1297
1342
  presence: $props.presence,
1298
1343
  class: ['d-avatar__presence', $data.AVATAR_PRESENCE_SIZE_MODIFIERS[$props.size]]
1299
1344
  }, $props.presenceProps, {
1300
1345
  "data-qa": "dt-presence"
1301
- }), null, 16, ["presence", "class"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true)], 10, _hoisted_1);
1346
+ }), null, 16, ["presence", "class"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true)], 14, _hoisted_1);
1302
1347
  }
1303
- ;// CONCATENATED MODULE: ./components/avatar/avatar.vue?vue&type=template&id=093957dc
1348
+ ;// CONCATENATED MODULE: ./components/avatar/avatar.vue?vue&type=template&id=52a431d8
1304
1349
 
1305
1350
  ;// CONCATENATED MODULE: ./common/constants.js
1306
1351
  /* TODO: Move and sort these in a constants directory
@@ -1387,6 +1432,15 @@ function getUniqueString() {
1387
1432
  let prefix = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : DEFAULT_PREFIX;
1388
1433
  return `${prefix}${UNIQUE_ID_COUNTER++}`;
1389
1434
  }
1435
+ /**
1436
+ * Returns a random element from array
1437
+ * @param array
1438
+ * @returns {*}
1439
+ */
1440
+
1441
+ function getRandomElement(array) {
1442
+ return array[Math.floor(Math.random() * array.length)];
1443
+ }
1390
1444
  function formatMessages(messages) {
1391
1445
  if (!messages) {
1392
1446
  return [];
@@ -1482,6 +1536,7 @@ const pascalCaseToKebabCase = string => {
1482
1536
  };
1483
1537
  /* harmony default export */ const utils = ({
1484
1538
  getUniqueString,
1539
+ getRandomElement,
1485
1540
  formatMessages,
1486
1541
  filterFormattedMessages,
1487
1542
  hasFormattedMessageOfType,
@@ -1493,7 +1548,7 @@ const pascalCaseToKebabCase = string => {
1493
1548
  ;// 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/presence/presence.vue?vue&type=template&id=85037b42
1494
1549
 
1495
1550
  const presencevue_type_template_id_85037b42_hoisted_1 = ["aria-live"];
1496
- const _hoisted_2 = {
1551
+ const presencevue_type_template_id_85037b42_hoisted_2 = {
1497
1552
  key: 0,
1498
1553
  "data-qa": "dt-presence-sr-text",
1499
1554
  class: "sr-only"
@@ -1504,7 +1559,7 @@ function presencevue_type_template_id_85037b42_render(_ctx, _cache, $props, $set
1504
1559
  "data-qa": "dt-presence",
1505
1560
  role: "status",
1506
1561
  "aria-live": _ctx.$attrs.ariaLive || 'off'
1507
- }, [$props.srText ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("span", _hoisted_2, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.toDisplayString)($props.srText), 1)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", {
1562
+ }, [$props.srText ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("span", presencevue_type_template_id_85037b42_hoisted_2, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.toDisplayString)($props.srText), 1)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", {
1508
1563
  class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.normalizeClass)(["d-presence__inner", {
1509
1564
  'd-presence__inner--active': $props.presence === 'active',
1510
1565
  'd-presence__inner--away': $props.presence === 'away',
@@ -1579,43 +1634,35 @@ const AVATAR_KIND_MODIFIERS = {
1579
1634
  initials: 'd-avatar--initials'
1580
1635
  };
1581
1636
  const AVATAR_SIZE_MODIFIERS = {
1637
+ xs: 'd-avatar--xs',
1582
1638
  sm: 'd-avatar--sm',
1583
1639
  md: 'd-avatar--md',
1584
- lg: 'd-avatar--lg'
1640
+ lg: 'd-avatar--lg',
1641
+ xl: 'd-avatar--xl'
1585
1642
  };
1586
1643
  const AVATAR_PRESENCE_SIZE_MODIFIERS = {
1587
1644
  md: 'd-avatar__presence--md',
1588
1645
  lg: 'd-avatar__presence--lg'
1589
1646
  };
1590
- const AVATAR_COLOR_MODIFIERS = {
1591
- base: '',
1592
- 'orange-200': 'd-avatar--orange-200',
1593
- 'orange-300': 'd-avatar--orange-300',
1594
- 'orange-400': 'd-avatar--orange-400',
1595
- 'orange-500': 'd-avatar--orange-500',
1596
- 'magenta-100': 'd-avatar--magenta-100',
1597
- 'magenta-200': 'd-avatar--magenta-200',
1598
- 'magenta-300': 'd-avatar--magenta-300',
1599
- 'magenta-400': 'd-avatar--magenta-400',
1600
- 'purple-200': 'd-avatar--purple-200',
1601
- 'purple-300': 'd-avatar--purple-300',
1602
- 'purple-400': 'd-avatar--purple-400',
1603
- 'purple-500': 'd-avatar--purple-500',
1604
- 'gold-100': 'd-avatar--gold-100',
1605
- 'gold-200': 'd-avatar--gold-200',
1606
- 'gold-300': 'd-avatar--gold-300',
1607
- 'gold-500': 'd-avatar--gold-500'
1608
- };
1609
1647
  const AVATAR_ICON_SIZES = {
1648
+ xs: '100',
1610
1649
  sm: '200',
1611
1650
  md: '400',
1612
- lg: '500'
1651
+ lg: '500',
1652
+ xl: '600'
1653
+ };
1654
+ const AVATAR_ANGLES = [45, -45, 90, -90, 135, -135, 180, -180];
1655
+ const GRADIENT_COLORS = {
1656
+ with100: ['purple-100', 'magenta-100', 'gold-100', 'blue-100'],
1657
+ with200: ['purple-200', 'magenta-200', 'gold-200', 'blue-200']
1613
1658
  };
1659
+ const MAX_GRADIENT_COLORS = 3;
1660
+ const MAX_GRADIENT_COLORS_100 = 2;
1614
1661
  /* harmony default export */ const avatar_constants = ({
1615
1662
  AVATAR_KIND_MODIFIERS,
1616
1663
  AVATAR_SIZE_MODIFIERS,
1617
- AVATAR_COLOR_MODIFIERS,
1618
- AVATAR_ICON_SIZES
1664
+ AVATAR_ICON_SIZES,
1665
+ AVATAR_ANGLES
1619
1666
  });
1620
1667
  ;// 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/avatar/avatar.vue?vue&type=script&lang=js
1621
1668
 
@@ -1648,7 +1695,7 @@ const AVATAR_ICON_SIZES = {
1648
1695
 
1649
1696
  /**
1650
1697
  * The size of the avatar
1651
- * @values sm, md, lg
1698
+ * @values xs, sm, md, lg, xl
1652
1699
  */
1653
1700
  size: {
1654
1701
  type: String,
@@ -1656,20 +1703,6 @@ const AVATAR_ICON_SIZES = {
1656
1703
  validator: size => Object.keys(AVATAR_SIZE_MODIFIERS).includes(size)
1657
1704
  },
1658
1705
 
1659
- /**
1660
- * The color of the avatar
1661
- * @values base
1662
- * orange-200, orange-300, orange-400, orange-500,
1663
- * pink-300, pink-400, pink-500, pink-600,
1664
- * purple-200, purple-300, purple-500, purple-600,
1665
- * yellow-200, yellow-300, yellow-400, yellow-500
1666
- */
1667
- color: {
1668
- type: String,
1669
- default: 'base',
1670
- validator: color => Object.keys(AVATAR_COLOR_MODIFIERS).includes(color)
1671
- },
1672
-
1673
1706
  /**
1674
1707
  * Used to customize the avatar container
1675
1708
  */
@@ -1694,40 +1727,98 @@ const AVATAR_ICON_SIZES = {
1694
1727
  presenceProps: {
1695
1728
  type: Object,
1696
1729
  default: () => ({})
1730
+ },
1731
+
1732
+ /**
1733
+ * Initials to be shown in the avatar. Used as fallback if image fails to load.
1734
+ */
1735
+ initials: {
1736
+ type: String,
1737
+ default: ''
1697
1738
  }
1698
1739
  },
1699
1740
 
1700
1741
  data() {
1701
1742
  return {
1702
1743
  // initials, image or icon
1703
- kind: 'initials',
1744
+ kind: 'image',
1704
1745
  AVATAR_SIZE_MODIFIERS: AVATAR_SIZE_MODIFIERS,
1705
- AVATAR_COLOR_MODIFIERS: AVATAR_COLOR_MODIFIERS,
1706
1746
  AVATAR_KIND_MODIFIERS: AVATAR_KIND_MODIFIERS,
1707
- AVATAR_PRESENCE_SIZE_MODIFIERS: AVATAR_PRESENCE_SIZE_MODIFIERS
1747
+ AVATAR_PRESENCE_SIZE_MODIFIERS: AVATAR_PRESENCE_SIZE_MODIFIERS,
1748
+ imageLoadedSuccessfully: null,
1749
+ slottedInitials: '',
1750
+ formattedInitials: ''
1708
1751
  };
1709
1752
  },
1710
1753
 
1754
+ computed: {
1755
+ showDefaultSlot() {
1756
+ return this.kind !== 'initials' && this.imageLoadedSuccessfully !== false;
1757
+ },
1758
+
1759
+ showInitials() {
1760
+ return this.kind === 'initials' || this.initials;
1761
+ },
1762
+
1763
+ initialKindStyle() {
1764
+ const randomGradientColorStops = this.randomizeGradientColorStops();
1765
+ return {
1766
+ '--avatar-gradient-angle': `${this.randomizeGradientAngle()}deg`,
1767
+ '--avatar-gradient-stop-1': `var(--${randomGradientColorStops[0]})`,
1768
+ '--avatar-gradient-stop-2': `var(--${randomGradientColorStops[1]})`,
1769
+ '--avatar-gradient-stop-3': `var(--${randomGradientColorStops[2]})`
1770
+ };
1771
+ }
1772
+
1773
+ },
1774
+
1711
1775
  mounted() {
1712
1776
  this.init();
1713
1777
  },
1714
1778
 
1715
1779
  updated() {
1716
- this.init();
1780
+ if (this.kind === 'initials') {
1781
+ this.slottedInitials = this.$el.children[0].textContent;
1782
+ this.formatInitials(this.slottedInitials);
1783
+ }
1717
1784
  },
1718
1785
 
1719
1786
  methods: {
1720
1787
  init() {
1721
- const firstChild = this.$el.children[0];
1788
+ const firstChild = this.$el.children[0] || this.$el;
1722
1789
 
1723
1790
  if (firstChild) {
1724
1791
  this.setKind(firstChild);
1725
1792
 
1726
1793
  if (this.kind === 'image') {
1727
1794
  firstChild.classList.add('d-avatar__image');
1795
+ this.validateImageAttrsPresence();
1796
+ firstChild.addEventListener('error', () => {
1797
+ this.formatInitials(this.initials);
1798
+ this.imageLoadedSuccessfully = false;
1799
+ });
1800
+ firstChild.addEventListener('load', () => {
1801
+ firstChild.classList.add('d-avatar--image-loaded');
1802
+ this.imageLoadedSuccessfully = true;
1803
+ });
1804
+ }
1805
+
1806
+ if (this.kind === 'initials') {
1807
+ this.slottedInitials = firstChild.textContent;
1808
+ this.formatInitials(this.slottedInitials);
1728
1809
  }
1810
+ }
1811
+ },
1812
+
1813
+ formatInitials(initials) {
1814
+ if (!initials) return;
1729
1815
 
1730
- this.validateImageAttrsPresence();
1816
+ if (this.size === 'xs') {
1817
+ this.formattedInitials = '';
1818
+ } else if (this.size === 'sm') {
1819
+ this.formattedInitials = initials.trim()[0];
1820
+ } else {
1821
+ this.formattedInitials = initials.trim().slice(0, 2);
1731
1822
  }
1732
1823
  },
1733
1824
 
@@ -1757,25 +1848,50 @@ const AVATAR_ICON_SIZES = {
1757
1848
  return (element === null || element === void 0 ? void 0 : (_element$tagName2 = element.tagName) === null || _element$tagName2 === void 0 ? void 0 : _element$tagName2.toUpperCase()) === 'IMG';
1758
1849
  },
1759
1850
 
1760
- validateImageAttrsPresence() {
1761
- if (this.kind === 'image') {
1762
- // Check that default slot image required attributes are provided
1763
- if (!this.$el.children[0].getAttribute('src') || !this.$el.children[0].getAttribute('alt')) {
1764
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.warn)('src and alt attributes are required for image avatars', this);
1851
+ randomizeGradientAngle() {
1852
+ return getRandomElement(AVATAR_ANGLES);
1853
+ },
1854
+
1855
+ randomizeGradientColorStops() {
1856
+ const colors = new Set(); // get 3 unique colors, 2 from colorsWith100 and one from colorsWith200
1857
+
1858
+ while (colors.size < MAX_GRADIENT_COLORS) {
1859
+ if (colors.size === MAX_GRADIENT_COLORS_100) {
1860
+ colors.add(getRandomElement(GRADIENT_COLORS.with200));
1861
+ } else {
1862
+ colors.add(getRandomElement(GRADIENT_COLORS.with100));
1765
1863
  }
1766
1864
  }
1865
+
1866
+ const shuffledColors = Array.from(colors).sort(() => 0.5 - Math.random());
1867
+ return shuffledColors;
1868
+ },
1869
+
1870
+ validateImageAttrsPresence() {
1871
+ const isSrcMissing = !this.$el.children[0].getAttribute('src');
1872
+ const isAltMissing = !this.$el.children[0].getAttribute('alt');
1873
+
1874
+ if (isSrcMissing || isAltMissing) {
1875
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.warn)('src and alt attributes are required for image avatars', this);
1876
+ }
1767
1877
  }
1768
1878
 
1769
1879
  }
1770
1880
  });
1771
1881
  ;// CONCATENATED MODULE: ./components/avatar/avatar.vue?vue&type=script&lang=js
1772
1882
 
1883
+ // 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/avatar/avatar.vue?vue&type=style&index=0&id=52a431d8&lang=less
1884
+ var avatarvue_type_style_index_0_id_52a431d8_lang_less = __webpack_require__(156);
1885
+ ;// CONCATENATED MODULE: ./components/avatar/avatar.vue?vue&type=style&index=0&id=52a431d8&lang=less
1886
+
1773
1887
  ;// CONCATENATED MODULE: ./components/avatar/avatar.vue
1774
1888
 
1775
1889
 
1776
1890
 
1777
1891
 
1778
1892
  ;
1893
+
1894
+
1779
1895
  const avatar_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(avatarvue_type_script_lang_js, [['render',render]])
1780
1896
 
1781
1897
  /* harmony default export */ const avatar = (avatar_exports_);
@@ -13669,26 +13785,16 @@ const input_group_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(input_
13669
13785
  /* harmony default export */ const input_group_input_group = (input_group_exports_);
13670
13786
  ;// CONCATENATED MODULE: ./components/input_group/index.js
13671
13787
 
13672
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/modal/modal.vue?vue&type=template&id=44704674
13788
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./components/modal/modal.vue?vue&type=template&id=2aa05149
13673
13789
 
13674
- const modalvue_type_template_id_44704674_hoisted_1 = ["aria-describedby", "aria-labelledby"];
13675
- const modalvue_type_template_id_44704674_hoisted_2 = ["id"];
13676
- const modalvue_type_template_id_44704674_hoisted_3 = ["id"];
13677
- const modalvue_type_template_id_44704674_hoisted_4 = {
13678
- key: 2,
13679
- class: "d-modal__content",
13680
- "data-qa": "dt-modal-copy"
13681
- };
13682
- const modalvue_type_template_id_44704674_hoisted_5 = {
13683
- key: 3,
13684
- class: "d-modal__content",
13685
- "data-qa": "dt-modal-copy"
13686
- };
13687
- const modalvue_type_template_id_44704674_hoisted_6 = {
13790
+ const modalvue_type_template_id_2aa05149_hoisted_1 = ["aria-describedby", "aria-labelledby"];
13791
+ const modalvue_type_template_id_2aa05149_hoisted_2 = ["id"];
13792
+ const modalvue_type_template_id_2aa05149_hoisted_3 = ["id"];
13793
+ const modalvue_type_template_id_2aa05149_hoisted_4 = {
13688
13794
  key: 4,
13689
13795
  class: "d-modal__footer"
13690
13796
  };
13691
- function modalvue_type_template_id_44704674_render(_ctx, _cache, $props, $setup, $data, $options) {
13797
+ function modalvue_type_template_id_2aa05149_render(_ctx, _cache, $props, $setup, $data, $options) {
13692
13798
  const _component_dt_icon = (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.resolveComponent)("dt-icon");
13693
13799
 
13694
13800
  const _component_dt_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.resolveComponent)("dt-button");
@@ -13725,12 +13831,20 @@ function modalvue_type_template_id_44704674_render(_ctx, _cache, $props, $setup,
13725
13831
  id: $props.labelledById,
13726
13832
  class: "d-modal__header",
13727
13833
  "data-qa": "dt-modal-title"
13728
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "header")], 8, modalvue_type_template_id_44704674_hoisted_2)) : ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("h2", {
13834
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "header")], 8, modalvue_type_template_id_2aa05149_hoisted_2)) : ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("h2", {
13729
13835
  key: 1,
13730
13836
  id: $props.labelledById,
13731
13837
  class: "d-modal__header",
13732
13838
  "data-qa": "dt-modal-title"
13733
- }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.toDisplayString)($props.title), 9, modalvue_type_template_id_44704674_hoisted_3)), _ctx.$slots.default ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("div", modalvue_type_template_id_44704674_hoisted_4, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "default")])) : ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("p", modalvue_type_template_id_44704674_hoisted_5, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.toDisplayString)($props.copy), 1)), $options.hasFooterSlot ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("footer", modalvue_type_template_id_44704674_hoisted_6, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "footer")])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true), !$props.hideClose ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createBlock)(_component_dt_button, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.mergeProps)({
13839
+ }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.toDisplayString)($props.title), 9, modalvue_type_template_id_2aa05149_hoisted_3)), _ctx.$slots.default ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("div", {
13840
+ key: 2,
13841
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.normalizeClass)(['d-modal__content', $props.contentClass]),
13842
+ "data-qa": "dt-modal-copy"
13843
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "default")], 2)) : ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("p", {
13844
+ key: 3,
13845
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.normalizeClass)(['d-modal__content', $props.contentClass]),
13846
+ "data-qa": "dt-modal-copy"
13847
+ }, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.toDisplayString)($props.copy), 3)), $options.hasFooterSlot ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("footer", modalvue_type_template_id_2aa05149_hoisted_4, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "footer")])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true), !$props.hideClose ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createBlock)(_component_dt_button, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.mergeProps)({
13734
13848
  key: 5,
13735
13849
  class: "d-modal__close",
13736
13850
  circle: "",
@@ -13749,13 +13863,13 @@ function modalvue_type_template_id_44704674_render(_ctx, _cache, $props, $setup,
13749
13863
  key: 6,
13750
13864
  "visually-hidden-close-label": _ctx.visuallyHiddenCloseLabel,
13751
13865
  onClose: $options.close
13752
- }, null, 8, ["visually-hidden-close-label", "onClose"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true)], 10, modalvue_type_template_id_44704674_hoisted_1), [[external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.vShow, $props.show]])]),
13866
+ }, null, 8, ["visually-hidden-close-label", "onClose"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true)], 10, modalvue_type_template_id_2aa05149_hoisted_1), [[external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.vShow, $props.show]])]),
13753
13867
  _: 3
13754
13868
  })]),
13755
13869
  _: 3
13756
13870
  }, 16, ["show", "class", "aria-hidden"]);
13757
13871
  }
13758
- ;// CONCATENATED MODULE: ./components/modal/modal.vue?vue&type=template&id=44704674
13872
+ ;// CONCATENATED MODULE: ./components/modal/modal.vue?vue&type=template&id=2aa05149
13759
13873
 
13760
13874
  ;// CONCATENATED MODULE: ./components/modal/modal_constants.js
13761
13875
  // Modal style modifiers
@@ -13900,6 +14014,16 @@ const MODAL_SIZE_MODIFIERS = {
13900
14014
  default: ''
13901
14015
  },
13902
14016
 
14017
+ /**
14018
+ * Additional class name for the content element within the modal.
14019
+ * Can accept String, Object, and Array, i.e. has the
14020
+ * same API as Vue's built-in handling of the class attribute.
14021
+ */
14022
+ contentClass: {
14023
+ type: [String, Object, Array],
14024
+ default: ''
14025
+ },
14026
+
13903
14027
  /**
13904
14028
  * Additional class name for the banner element within the modal.
13905
14029
  * Can accept String, Object, and Array, i.e. has the
@@ -14055,7 +14179,7 @@ const MODAL_SIZE_MODIFIERS = {
14055
14179
 
14056
14180
 
14057
14181
  ;
14058
- const modal_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(modalvue_type_script_lang_js, [['render',modalvue_type_template_id_44704674_render]])
14182
+ const modal_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(modalvue_type_script_lang_js, [['render',modalvue_type_template_id_2aa05149_render]])
14059
14183
 
14060
14184
  /* harmony default export */ const modal_modal = (modal_exports_);
14061
14185
  ;// CONCATENATED MODULE: ./components/modal/index.js
@@ -19419,26 +19543,26 @@ const callbar_button_with_popover_exports_ = /*#__PURE__*/(0,exportHelper/* defa
19419
19543
  /* harmony default export */ const callbar_button_with_popover = (callbar_button_with_popover_exports_);
19420
19544
  ;// CONCATENATED MODULE: ./recipes/buttons/callbar_button_with_popover/index.js
19421
19545
 
19422
- ;// 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=c1f377a8
19546
+ ;// 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=9fe40f88
19423
19547
 
19424
- const contact_infovue_type_template_id_c1f377a8_hoisted_1 = {
19548
+ const contact_infovue_type_template_id_9fe40f88_hoisted_1 = {
19425
19549
  class: "d-ps-relative",
19426
19550
  "data-qa": "contact-info-left"
19427
19551
  };
19428
- const contact_infovue_type_template_id_c1f377a8_hoisted_2 = ["src", "alt"];
19429
- const contact_infovue_type_template_id_c1f377a8_hoisted_3 = {
19552
+ const contact_infovue_type_template_id_9fe40f88_hoisted_2 = ["src", "alt"];
19553
+ const contact_infovue_type_template_id_9fe40f88_hoisted_3 = {
19430
19554
  "data-qa": "contact-info-header"
19431
19555
  };
19432
- const contact_infovue_type_template_id_c1f377a8_hoisted_4 = {
19556
+ const contact_infovue_type_template_id_9fe40f88_hoisted_4 = {
19433
19557
  "data-qa": "contact-info-subtitle"
19434
19558
  };
19435
- const contact_infovue_type_template_id_c1f377a8_hoisted_5 = {
19559
+ const contact_infovue_type_template_id_9fe40f88_hoisted_5 = {
19436
19560
  "data-qa": "contact-info-bottom"
19437
19561
  };
19438
- const contact_infovue_type_template_id_c1f377a8_hoisted_6 = {
19562
+ const contact_infovue_type_template_id_9fe40f88_hoisted_6 = {
19439
19563
  "data-qa": "contact-info-right"
19440
19564
  };
19441
- function contact_infovue_type_template_id_c1f377a8_render(_ctx, _cache, $props, $setup, $data, $options) {
19565
+ function contact_infovue_type_template_id_9fe40f88_render(_ctx, _cache, $props, $setup, $data, $options) {
19442
19566
  const _component_dt_avatar = (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.resolveComponent)("dt-avatar");
19443
19567
 
19444
19568
  const _component_dt_list_item = (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.resolveComponent)("dt-list-item");
@@ -19449,7 +19573,7 @@ function contact_infovue_type_template_id_c1f377a8_render(_ctx, _cache, $props,
19449
19573
  "element-type": "div",
19450
19574
  "data-qa": "contact-info"
19451
19575
  }, {
19452
- left: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", contact_infovue_type_template_id_c1f377a8_hoisted_1, [$props.avatarSrc ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createBlock)(_component_dt_avatar, {
19576
+ left: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", contact_infovue_type_template_id_9fe40f88_hoisted_1, [$props.avatarSrc ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createBlock)(_component_dt_avatar, {
19453
19577
  key: 0,
19454
19578
  size: "lg"
19455
19579
  }, {
@@ -19457,29 +19581,27 @@ function contact_infovue_type_template_id_c1f377a8_render(_ctx, _cache, $props,
19457
19581
  "data-qa": "dt-contact-avatar",
19458
19582
  src: $props.avatarSrc,
19459
19583
  alt: $props.avatarInitials
19460
- }, null, 8, contact_infovue_type_template_id_c1f377a8_hoisted_2)]),
19584
+ }, null, 8, contact_infovue_type_template_id_9fe40f88_hoisted_2)]),
19461
19585
  _: 1
19462
19586
  })) : $props.avatarInitials ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createBlock)(_component_dt_avatar, {
19463
19587
  key: 1,
19464
- kind: "initials",
19465
- size: "lg",
19466
- color: $props.avatarColor
19588
+ size: "lg"
19467
19589
  }, {
19468
19590
  default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createTextVNode)((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.toDisplayString)($props.avatarInitials), 1)]),
19469
19591
  _: 1
19470
- }, 8, ["color"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true), $options.showUserStatus ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("div", {
19592
+ })) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true), $options.showUserStatus ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("div", {
19471
19593
  key: 2,
19472
19594
  class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.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]]),
19473
19595
  "data-qa": "contact-info-user-status"
19474
19596
  }, "   ", 2)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true)])]),
19475
- default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", contact_infovue_type_template_id_c1f377a8_hoisted_3, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "header")])]),
19476
- subtitle: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", contact_infovue_type_template_id_c1f377a8_hoisted_4, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "subtitle")])]),
19477
- bottom: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", contact_infovue_type_template_id_c1f377a8_hoisted_5, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "bottom")])]),
19478
- right: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", contact_infovue_type_template_id_c1f377a8_hoisted_6, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "right")])]),
19597
+ default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", contact_infovue_type_template_id_9fe40f88_hoisted_3, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "header")])]),
19598
+ subtitle: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", contact_infovue_type_template_id_9fe40f88_hoisted_4, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "subtitle")])]),
19599
+ bottom: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", contact_infovue_type_template_id_9fe40f88_hoisted_5, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "bottom")])]),
19600
+ right: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", contact_infovue_type_template_id_9fe40f88_hoisted_6, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "right")])]),
19479
19601
  _: 3
19480
19602
  }, 8, ["id", "role"]);
19481
19603
  }
19482
- ;// CONCATENATED MODULE: ./recipes/list_items/contact_info/contact_info.vue?vue&type=template&id=c1f377a8
19604
+ ;// CONCATENATED MODULE: ./recipes/list_items/contact_info/contact_info.vue?vue&type=template&id=9fe40f88
19483
19605
 
19484
19606
  ;// CONCATENATED MODULE: ./recipes/list_items/contact_info/contact_info_constants.js
19485
19607
  const USER_STATUS_COLOR_MODIFIERS = {
@@ -19496,7 +19618,6 @@ const USER_STATUS_COLOR_MODIFIERS = {
19496
19618
 
19497
19619
 
19498
19620
 
19499
-
19500
19621
  /* harmony default export */ const contact_infovue_type_script_lang_js = ({
19501
19622
  name: 'DtRecipeContactInfo',
19502
19623
  components: {
@@ -19548,15 +19669,6 @@ const USER_STATUS_COLOR_MODIFIERS = {
19548
19669
  default: ''
19549
19670
  },
19550
19671
 
19551
- /**
19552
- * Background color of initials letters in avatar.
19553
- */
19554
- avatarColor: {
19555
- type: String,
19556
- default: 'base',
19557
- validator: color => Object.keys(AVATAR_COLOR_MODIFIERS).includes(color)
19558
- },
19559
-
19560
19672
  /**
19561
19673
  * Status color of user from contact.
19562
19674
  */
@@ -19588,7 +19700,7 @@ const USER_STATUS_COLOR_MODIFIERS = {
19588
19700
 
19589
19701
 
19590
19702
  ;
19591
- const contact_info_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(contact_infovue_type_script_lang_js, [['render',contact_infovue_type_template_id_c1f377a8_render]])
19703
+ const contact_info_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(contact_infovue_type_script_lang_js, [['render',contact_infovue_type_template_id_9fe40f88_render]])
19592
19704
 
19593
19705
  /* harmony default export */ const contact_info = (contact_info_exports_);
19594
19706
  ;// CONCATENATED MODULE: ./recipes/list_items/contact_info/index.js
@@ -19671,19 +19783,19 @@ const top_banner_info_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(to
19671
19783
  ;// CONCATENATED MODULE: ./recipes/notices/top_banner_info/index.js
19672
19784
 
19673
19785
 
19674
- ;// 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/cards/ivr_node/ivr_node.vue?vue&type=template&id=5f1f3c1e
19786
+ ;// 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/cards/ivr_node/ivr_node.vue?vue&type=template&id=19695402
19675
19787
 
19676
- const ivr_nodevue_type_template_id_5f1f3c1e_hoisted_1 = {
19788
+ const ivr_nodevue_type_template_id_19695402_hoisted_1 = {
19677
19789
  class: "d-d-flex d-ai-center"
19678
19790
  };
19679
- const ivr_nodevue_type_template_id_5f1f3c1e_hoisted_2 = {
19791
+ const ivr_nodevue_type_template_id_19695402_hoisted_2 = {
19680
19792
  class: "d-fs-200 d-fw-bold",
19681
19793
  "data-qa": "ivr-node-label"
19682
19794
  };
19683
- const ivr_nodevue_type_template_id_5f1f3c1e_hoisted_3 = {
19795
+ const ivr_nodevue_type_template_id_19695402_hoisted_3 = {
19684
19796
  class: "d-w164"
19685
19797
  };
19686
- function ivr_nodevue_type_template_id_5f1f3c1e_render(_ctx, _cache, $props, $setup, $data, $options) {
19798
+ function ivr_nodevue_type_template_id_19695402_render(_ctx, _cache, $props, $setup, $data, $options) {
19687
19799
  const _component_dt_icon = (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.resolveComponent)("dt-icon");
19688
19800
 
19689
19801
  const _component_dt_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.resolveComponent)("dt-button");
@@ -19715,7 +19827,7 @@ function ivr_nodevue_type_template_id_5f1f3c1e_render(_ctx, _cache, $props, $set
19715
19827
  'd-btr4': !$props.isSelected
19716
19828
  }]
19717
19829
  }, {
19718
- header: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", ivr_nodevue_type_template_id_5f1f3c1e_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createVNode)(_component_dt_button, {
19830
+ header: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", ivr_nodevue_type_template_id_19695402_hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createVNode)(_component_dt_button, {
19719
19831
  "aria-label": $props.nodeType,
19720
19832
  importance: "clear",
19721
19833
  "data-qa": "dt-ivr-node-icon"
@@ -19723,10 +19835,12 @@ function ivr_nodevue_type_template_id_5f1f3c1e_render(_ctx, _cache, $props, $set
19723
19835
  icon: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createVNode)(_component_dt_icon, {
19724
19836
  name: $options.nodeIcon,
19725
19837
  size: "200",
19726
- class: "d-fc-black-900"
19727
- }, null, 8, ["name"])]),
19838
+ class: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.normalizeClass)(['d-fc-black-900', {
19839
+ 'ivr_node__goto_icon': $options.isGotoNode
19840
+ }])
19841
+ }, null, 8, ["name", "class"])]),
19728
19842
  _: 1
19729
- }, 8, ["aria-label"]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("p", ivr_nodevue_type_template_id_5f1f3c1e_hoisted_2, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.toDisplayString)($props.nodeLabel), 1)]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createVNode)(_component_dt_dropdown, {
19843
+ }, 8, ["aria-label"]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("p", ivr_nodevue_type_template_id_19695402_hoisted_2, (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.toDisplayString)($props.nodeLabel), 1)]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createVNode)(_component_dt_dropdown, {
19730
19844
  open: $data.isOpen,
19731
19845
  "onUpdate:open": _cache[0] || (_cache[0] = $event => $data.isOpen = $event),
19732
19846
  placement: "bottom"
@@ -19747,7 +19861,7 @@ function ivr_nodevue_type_template_id_5f1f3c1e_render(_ctx, _cache, $props, $set
19747
19861
  let {
19748
19862
  close
19749
19863
  } = _ref;
19750
- return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", ivr_nodevue_type_template_id_5f1f3c1e_hoisted_3, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "menuItems", {
19864
+ return [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementVNode)("div", ivr_nodevue_type_template_id_19695402_hoisted_3, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.renderSlot)(_ctx.$slots, "menuItems", {
19751
19865
  close: close
19752
19866
  })])];
19753
19867
  }),
@@ -19757,7 +19871,7 @@ function ivr_nodevue_type_template_id_5f1f3c1e_render(_ctx, _cache, $props, $set
19757
19871
  _: 3
19758
19872
  }, 8, ["container-class", "header-class"])], 16);
19759
19873
  }
19760
- ;// CONCATENATED MODULE: ./recipes/cards/ivr_node/ivr_node.vue?vue&type=template&id=5f1f3c1e
19874
+ ;// CONCATENATED MODULE: ./recipes/cards/ivr_node/ivr_node.vue?vue&type=template&id=19695402
19761
19875
 
19762
19876
  ;// CONCATENATED MODULE: ./recipes/cards/ivr_node/ivr_node_constants.js
19763
19877
  const IVR_NODE_PROMPT_MENU = 'promptmenu';
@@ -19772,9 +19886,9 @@ const IVR_NODE_ICON_TYPES = {
19772
19886
  [IVR_NODE_PROMPT_MENU]: 'keypad',
19773
19887
  [IVR_NODE_PROMPT_COLLECT]: 'dialer',
19774
19888
  [IVR_NODE_PROMPT_PLAY]: 'volume-2',
19775
- [IVR_NODE_EXPERT]: 'corner-down-right',
19776
- [IVR_NODE_BRANCH]: 'network',
19777
- [IVR_NODE_GO_TO]: 'chevrons-up',
19889
+ [IVR_NODE_EXPERT]: 'expert-node',
19890
+ [IVR_NODE_BRANCH]: 'branch',
19891
+ [IVR_NODE_GO_TO]: 'call-merge',
19778
19892
  [IVR_NODE_TRANSFER]: 'transfer',
19779
19893
  [IVR_NODE_HANGUP]: 'phone-hang-up'
19780
19894
  };
@@ -19899,6 +20013,10 @@ const IVR_NODE_COLOR_MAPPING = {
19899
20013
  selected
19900
20014
  } = IVR_NODE_COLOR_MAPPING[this.nodeType];
19901
20015
  return this.isSelected ? selected : normal;
20016
+ },
20017
+
20018
+ isGotoNode() {
20019
+ return this.nodeType === IVR_NODE_GO_TO;
19902
20020
  }
19903
20021
 
19904
20022
  },
@@ -19911,9 +20029,9 @@ const IVR_NODE_COLOR_MAPPING = {
19911
20029
  });
19912
20030
  ;// CONCATENATED MODULE: ./recipes/cards/ivr_node/ivr_node.vue?vue&type=script&lang=js
19913
20031
 
19914
- // 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]!./recipes/cards/ivr_node/ivr_node.vue?vue&type=style&index=0&id=5f1f3c1e&lang=less
19915
- var ivr_nodevue_type_style_index_0_id_5f1f3c1e_lang_less = __webpack_require__(572);
19916
- ;// CONCATENATED MODULE: ./recipes/cards/ivr_node/ivr_node.vue?vue&type=style&index=0&id=5f1f3c1e&lang=less
20032
+ // 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]!./recipes/cards/ivr_node/ivr_node.vue?vue&type=style&index=0&id=19695402&lang=less
20033
+ var ivr_nodevue_type_style_index_0_id_19695402_lang_less = __webpack_require__(995);
20034
+ ;// CONCATENATED MODULE: ./recipes/cards/ivr_node/ivr_node.vue?vue&type=style&index=0&id=19695402&lang=less
19917
20035
 
19918
20036
  ;// CONCATENATED MODULE: ./recipes/cards/ivr_node/ivr_node.vue
19919
20037
 
@@ -19923,7 +20041,7 @@ var ivr_nodevue_type_style_index_0_id_5f1f3c1e_lang_less = __webpack_require__(5
19923
20041
  ;
19924
20042
 
19925
20043
 
19926
- const ivr_node_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(ivr_nodevue_type_script_lang_js, [['render',ivr_nodevue_type_template_id_5f1f3c1e_render]])
20044
+ const ivr_node_exports_ = /*#__PURE__*/(0,exportHelper/* default */.Z)(ivr_nodevue_type_script_lang_js, [['render',ivr_nodevue_type_template_id_19695402_render]])
19927
20045
 
19928
20046
  /* harmony default export */ const ivr_node = (ivr_node_exports_);
19929
20047
  ;// CONCATENATED MODULE: ./recipes/cards/ivr_node/index.js