@dialpad/dialtone-vue 2.55.2 → 2.56.1

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.
@@ -268,7 +268,7 @@ __webpack_require__.r(__webpack_exports__);
268
268
 
269
269
  var ___CSS_LOADER_EXPORT___ = _node_modules_vue_cli_service_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_vue_cli_service_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
270
270
  // Module
271
- ___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}", ""]);
271
+ ___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;overflow-y:auto}", ""]);
272
272
  // Exports
273
273
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
274
274
 
@@ -1562,7 +1562,7 @@ var update = add("63ce6251", content, true, {"sourceMap":false,"shadowMode":fals
1562
1562
 
1563
1563
  /***/ }),
1564
1564
 
1565
- /***/ 329:
1565
+ /***/ 422:
1566
1566
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1567
1567
 
1568
1568
  // style-loader: Adds some css to the DOM by adding a <style> tag
@@ -2335,14 +2335,10 @@ if (typeof window !== 'undefined') {
2335
2335
  // Indicate to webpack that this file can be concatenated
2336
2336
  /* harmony default export */ const setPublicPath = (null);
2337
2337
 
2338
- ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/avatar/avatar.vue?vue&type=template&id=4839e656&
2339
- var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[
2340
- 'd-avatar',
2341
- _vm.AVATAR_KIND_MODIFIERS[_vm.kind],
2342
- _vm.AVATAR_SIZE_MODIFIERS[_vm.size],
2343
- _vm.avatarClass ],style:(_vm.initialKindStyle),attrs:{"id":_vm.id,"data-qa":"dt-avatar"}},[(_vm.showDefaultSlot)?_vm._t("default"):(_vm.showInitials)?_c('span',[_vm._v(" "+_vm._s(_vm.formattedInitials)+" ")]):_vm._e(),(_vm.presence)?_c('dt-presence',_vm._b({class:[
2338
+ ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/avatar/avatar.vue?vue&type=template&id=f68dc5f0&
2339
+ var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.avatarClasses,style:(_vm.initialKindStyle),attrs:{"id":_vm.id,"data-qa":"dt-avatar"}},[_c('div',{ref:"canvas",staticClass:"d-avatar__canvas"},[(_vm.showDefaultSlot)?_vm._t("default"):(_vm.showInitials)?_c('span',{class:_vm.AVATAR_KIND_MODIFIERS.initials},[_vm._v(" "+_vm._s(_vm.formattedInitials)+" ")]):_vm._e()],2),(_vm.showGroup)?_c('span',{staticClass:"d-avatar__count",attrs:{"data-qa":"dt-avatar-count"}},[_vm._v(_vm._s(_vm.formattedGroup))]):_vm._e(),(_vm.presence && !_vm.showGroup)?_c('dt-presence',_vm._b({class:[
2344
2340
  'd-avatar__presence',
2345
- _vm.AVATAR_PRESENCE_SIZE_MODIFIERS[_vm.size] ],attrs:{"presence":_vm.presence,"data-qa":"dt-presence"}},'dt-presence',_vm.presenceProps,false)):_vm._e()],2)}
2341
+ _vm.AVATAR_PRESENCE_SIZE_MODIFIERS[_vm.size] ],attrs:{"presence":_vm.presence,"data-qa":"dt-presence"}},'dt-presence',_vm.presenceProps,false)):_vm._e()],1)}
2346
2342
  var staticRenderFns = []
2347
2343
 
2348
2344
 
@@ -2771,11 +2767,6 @@ var component = normalizeComponent(
2771
2767
  var node_modules_seedrandom = __webpack_require__(377);
2772
2768
  var seedrandom_default = /*#__PURE__*/__webpack_require__.n(node_modules_seedrandom);
2773
2769
  ;// CONCATENATED MODULE: ./components/avatar/avatar_constants.js
2774
- const AVATAR_KIND_MODIFIERS = {
2775
- default: '',
2776
- icon: 'd-avatar--icon',
2777
- initials: 'd-avatar--initials'
2778
- };
2779
2770
  const AVATAR_SIZE_MODIFIERS = {
2780
2771
  xs: 'd-avatar--xs',
2781
2772
  sm: 'd-avatar--sm',
@@ -2783,6 +2774,11 @@ const AVATAR_SIZE_MODIFIERS = {
2783
2774
  lg: 'd-avatar--lg',
2784
2775
  xl: 'd-avatar--xl'
2785
2776
  };
2777
+ const AVATAR_KIND_MODIFIERS = {
2778
+ default: '',
2779
+ icon: 'd-avatar__icon',
2780
+ initials: 'd-avatar__initials'
2781
+ };
2786
2782
  const AVATAR_PRESENCE_SIZE_MODIFIERS = {
2787
2783
  md: 'd-avatar__presence--md',
2788
2784
  lg: 'd-avatar__presence--lg'
@@ -2801,11 +2797,13 @@ const GRADIENT_COLORS = {
2801
2797
  };
2802
2798
  const MAX_GRADIENT_COLORS = 3;
2803
2799
  const MAX_GRADIENT_COLORS_100 = 2;
2800
+ const AVATAR_GROUP_VALIDATOR = group => group > 1;
2804
2801
  /* harmony default export */ const avatar_constants = ({
2805
2802
  AVATAR_KIND_MODIFIERS,
2806
2803
  AVATAR_SIZE_MODIFIERS,
2807
2804
  AVATAR_ICON_SIZES,
2808
- AVATAR_ANGLES
2805
+ AVATAR_ANGLES,
2806
+ AVATAR_GROUP_VALIDATOR
2809
2807
  });
2810
2808
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-80[0].rules[0].use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/avatar/avatar.vue?vue&type=script&lang=js&
2811
2809
  //
@@ -2838,6 +2836,14 @@ const MAX_GRADIENT_COLORS_100 = 2;
2838
2836
  //
2839
2837
  //
2840
2838
  //
2839
+ //
2840
+ //
2841
+ //
2842
+ //
2843
+ //
2844
+ //
2845
+ //
2846
+ //
2841
2847
 
2842
2848
 
2843
2849
 
@@ -2918,6 +2924,25 @@ const MAX_GRADIENT_COLORS_100 = 2;
2918
2924
  initials: {
2919
2925
  type: String,
2920
2926
  default: ''
2927
+ },
2928
+
2929
+ /**
2930
+ * Determines whether to show a gradient background for the avatar.
2931
+ */
2932
+ gradient: {
2933
+ type: Boolean,
2934
+ default: true
2935
+ },
2936
+
2937
+ /**
2938
+ * Determines whether to show a group avatar.
2939
+ * Limit to 2 digits max, more than 99 will be rendered as “99+”.
2940
+ * if the number is 1 or less it would just show the regular avatar as if group had not been set.
2941
+ */
2942
+ group: {
2943
+ type: Number,
2944
+ default: undefined,
2945
+ validator: group => AVATAR_GROUP_VALIDATOR(group)
2921
2946
  }
2922
2947
  },
2923
2948
 
@@ -2935,6 +2960,13 @@ const MAX_GRADIENT_COLORS_100 = 2;
2935
2960
  },
2936
2961
 
2937
2962
  computed: {
2963
+ avatarClasses() {
2964
+ return ['d-avatar', AVATAR_SIZE_MODIFIERS[this.size], this.avatarClass, {
2965
+ 'd-avatar--no-gradient': !this.gradient,
2966
+ 'd-avatar--group': this.showGroup
2967
+ }];
2968
+ },
2969
+
2938
2970
  showDefaultSlot() {
2939
2971
  return this.kind !== 'initials' && this.imageLoadedSuccessfully !== false;
2940
2972
  },
@@ -2943,6 +2975,10 @@ const MAX_GRADIENT_COLORS_100 = 2;
2943
2975
  return this.kind === 'initials' || this.initials;
2944
2976
  },
2945
2977
 
2978
+ showGroup() {
2979
+ return AVATAR_GROUP_VALIDATOR(this.group);
2980
+ },
2981
+
2946
2982
  initialKindStyle() {
2947
2983
  const randomGradientColorStops = this.randomizeGradientColorStops();
2948
2984
  return {
@@ -2951,6 +2987,10 @@ const MAX_GRADIENT_COLORS_100 = 2;
2951
2987
  '--avatar-gradient-stop-2': `var(--${randomGradientColorStops[1]})`,
2952
2988
  '--avatar-gradient-stop-3': `var(--${randomGradientColorStops[2]})`
2953
2989
  };
2990
+ },
2991
+
2992
+ formattedGroup() {
2993
+ return this.group > 99 ? '99+' : this.group;
2954
2994
  }
2955
2995
 
2956
2996
  },
@@ -2968,31 +3008,46 @@ const MAX_GRADIENT_COLORS_100 = 2;
2968
3008
 
2969
3009
  methods: {
2970
3010
  init() {
2971
- const firstChild = this.$el.firstChild;
3011
+ const firstChild = this.$refs.canvas.firstChild;
3012
+
3013
+ if (!firstChild) {
3014
+ return;
3015
+ }
2972
3016
 
2973
- if (firstChild) {
2974
- this.setKind(firstChild);
3017
+ this.setKind(firstChild);
3018
+ this.kindHandler(firstChild);
3019
+ },
2975
3020
 
2976
- if (this.kind === 'image') {
2977
- firstChild.classList.add('d-avatar__image');
3021
+ kindHandler(el) {
3022
+ switch (this.kind) {
3023
+ case 'image':
3024
+ el.classList.add('d-avatar__image');
2978
3025
  this.validateImageAttrsPresence();
2979
- firstChild.addEventListener('error', () => {
2980
- this.formatInitials(this.initials);
2981
- this.imageLoadedSuccessfully = false;
2982
- });
2983
- firstChild.addEventListener('load', () => {
2984
- firstChild.classList.add('d-avatar--image-loaded');
2985
- this.imageLoadedSuccessfully = true;
2986
- });
2987
- }
3026
+ this.setImageListeners(el);
3027
+ break;
3028
+
3029
+ case 'icon':
3030
+ el.classList.add(AVATAR_KIND_MODIFIERS.icon);
3031
+ break;
2988
3032
 
2989
- if (this.kind === 'initials') {
2990
- this.slottedInitials = firstChild.text || firstChild.textContent;
3033
+ case 'initials':
3034
+ this.slottedInitials = el.text || el.textContent;
2991
3035
  this.formatInitials(this.slottedInitials);
2992
- }
3036
+ break;
2993
3037
  }
2994
3038
  },
2995
3039
 
3040
+ setImageListeners(el) {
3041
+ el.addEventListener('error', () => {
3042
+ this.formatInitials(this.initials);
3043
+ this.imageLoadedSuccessfully = false;
3044
+ });
3045
+ el.addEventListener('load', () => {
3046
+ el.classList.add('d-avatar--image-loaded');
3047
+ this.imageLoadedSuccessfully = true;
3048
+ });
3049
+ },
3050
+
2996
3051
  formatInitials(initials) {
2997
3052
  if (!initials) return;
2998
3053
 
@@ -3059,8 +3114,8 @@ const MAX_GRADIENT_COLORS_100 = 2;
3059
3114
  },
3060
3115
 
3061
3116
  validateImageAttrsPresence() {
3062
- const isSrcMissing = !this.$el.firstChild.getAttribute('src');
3063
- const isAltMissing = !this.$el.firstChild.getAttribute('alt');
3117
+ const isSrcMissing = !this.$refs.canvas.firstChild.getAttribute('src');
3118
+ const isAltMissing = !this.$refs.canvas.firstChild.getAttribute('alt');
3064
3119
 
3065
3120
  if (isSrcMissing || isAltMissing) {
3066
3121
  external_commonjs_vue_commonjs2_vue_root_Vue_default().util.warn('src and alt attributes are required for image avatars', this);
@@ -3072,7 +3127,7 @@ const MAX_GRADIENT_COLORS_100 = 2;
3072
3127
  ;// CONCATENATED MODULE: ./components/avatar/avatar.vue?vue&type=script&lang=js&
3073
3128
  /* harmony default export */ const avatar_avatarvue_type_script_lang_js_ = (avatarvue_type_script_lang_js_);
3074
3129
  // EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-72[0].rules[0].use[0]!./node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-72[0].rules[0].use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-72[0].rules[0].use[2]!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-72[0].rules[0].use[3]!./node_modules/less-loader/dist/cjs.js??clonedRuleSet-72[0].rules[0].use[4]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/avatar/avatar.vue?vue&type=style&index=0&lang=less&
3075
- var avatarvue_type_style_index_0_lang_less_ = __webpack_require__(329);
3130
+ var avatarvue_type_style_index_0_lang_less_ = __webpack_require__(422);
3076
3131
  ;// CONCATENATED MODULE: ./components/avatar/avatar.vue?vue&type=style&index=0&lang=less&
3077
3132
 
3078
3133
  ;// CONCATENATED MODULE: ./components/avatar/avatar.vue
@@ -3387,9 +3442,9 @@ var badge_component = normalizeComponent(
3387
3442
  ;// CONCATENATED MODULE: ./components/badge/index.js
3388
3443
 
3389
3444
 
3390
- ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/banner/banner.vue?vue&type=template&id=756779c1&
3391
- var bannervue_type_template_id_756779c1_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('aside',{class:_vm.bannerClass,style:(_vm.bannerBackgroundImage),attrs:{"role":_vm.role},on:{"keydown":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"tab",9,$event.key,"Tab")){ return null; }return _vm.trapFocus.apply(null, arguments)}}},[_c('div',{staticClass:"d-banner__dialog",class:_vm.dialogClass,attrs:{"aria-labelledby":_vm.titleId,"aria-describedby":_vm.contentId}},[(!_vm.hideIcon)?_c('dt-notice-icon',_vm._g({attrs:{"kind":_vm.kind}},_vm.$listeners),[_vm._t("icon")],2):_vm._e(),_c('dt-notice-content',_vm._g({attrs:{"title-id":_vm.titleId,"content-id":_vm.contentId,"title":_vm.title},scopedSlots:_vm._u([{key:"titleOverride",fn:function(){return [_vm._t("titleOverride")]},proxy:true}],null,true)},_vm.$listeners),[_vm._t("default")],2),_c('dt-notice-action',_vm._g({attrs:{"hide-close":_vm.hideClose,"close-button-props":_vm.closeButtonProps,"visually-hidden-close":_vm.visuallyHiddenClose,"visually-hidden-close-label":_vm.visuallyHiddenCloseLabel}},_vm.$listeners),[_vm._t("action")],2)],1)])}
3392
- var bannervue_type_template_id_756779c1_staticRenderFns = []
3445
+ ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/banner/banner.vue?vue&type=template&id=d982e6ae&
3446
+ var bannervue_type_template_id_d982e6ae_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('aside',{class:_vm.bannerClass,style:(_vm.bannerBackgroundImage),attrs:{"role":_vm.role},on:{"keydown":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"tab",9,$event.key,"Tab")){ return null; }return _vm.trapFocus.apply(null, arguments)}}},[_c('div',{staticClass:"d-banner__dialog",class:_vm.dialogClass,attrs:{"aria-labelledby":_vm.titleId,"aria-describedby":_vm.contentId}},[(!_vm.hideIcon)?_c('dt-notice-icon',_vm._g({attrs:{"kind":_vm.kind}},_vm.$listeners),[_vm._t("icon")],2):_vm._e(),_c('dt-notice-content',_vm._g({attrs:{"title-id":_vm.titleId,"content-id":_vm.contentId,"title":_vm.title},scopedSlots:_vm._u([{key:"titleOverride",fn:function(){return [_vm._t("titleOverride")]},proxy:true}],null,true)},_vm.$listeners),[_vm._t("default")],2),_c('dt-notice-action',_vm._g({attrs:{"hide-close":_vm.hideClose,"close-button-props":_vm.closeButtonProps,"visually-hidden-close":_vm.visuallyHiddenClose,"visually-hidden-close-label":_vm.visuallyHiddenCloseLabel}},_vm.$listeners),[_vm._t("action")],2)],1)])}
3447
+ var bannervue_type_template_id_d982e6ae_staticRenderFns = []
3393
3448
 
3394
3449
 
3395
3450
  ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/notice/notice_icon.vue?vue&type=template&id=dbeeebfa&
@@ -4415,6 +4470,7 @@ const focusableElementsList = `button,[href],input,select,textarea,details,[tabi
4415
4470
  //
4416
4471
  //
4417
4472
  //
4473
+ //
4418
4474
 
4419
4475
 
4420
4476
 
@@ -4618,8 +4674,8 @@ const focusableElementsList = `button,[href],input,select,textarea,details,[tabi
4618
4674
  ;
4619
4675
  var banner_component = normalizeComponent(
4620
4676
  banner_bannervue_type_script_lang_js_,
4621
- bannervue_type_template_id_756779c1_render,
4622
- bannervue_type_template_id_756779c1_staticRenderFns,
4677
+ bannervue_type_template_id_d982e6ae_render,
4678
+ bannervue_type_template_id_d982e6ae_staticRenderFns,
4623
4679
  false,
4624
4680
  null,
4625
4681
  null,
@@ -5171,9 +5227,9 @@ var card_component = normalizeComponent(
5171
5227
  /* harmony default export */ const card = (card_component.exports);
5172
5228
  ;// CONCATENATED MODULE: ./components/card/index.js
5173
5229
 
5174
- ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/combobox/combobox.vue?vue&type=template&id=3595da7e&
5175
- var comboboxvue_type_template_id_3595da7e_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{on:{"keydown":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"esc",27,$event.key,["Esc","Escape"])){ return null; }$event.stopPropagation();return _vm.onKeyValidation($event, 'onEscapeKey')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"enter",13,$event.key,"Enter")){ return null; }if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey){ return null; }return _vm.onKeyValidation($event, 'onEnterKey')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"up",38,$event.key,["Up","ArrowUp"])){ return null; }$event.stopPropagation();$event.preventDefault();return _vm.onKeyValidation($event, 'onUpKey')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"down",40,$event.key,["Down","ArrowDown"])){ return null; }$event.stopPropagation();$event.preventDefault();return _vm.onKeyValidation($event, 'onDownKey')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"home",undefined,$event.key,undefined)){ return null; }$event.stopPropagation();$event.preventDefault();return _vm.onKeyValidation($event, 'onHomeKey')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"end",undefined,$event.key,undefined)){ return null; }$event.stopPropagation();$event.preventDefault();return _vm.onKeyValidation($event, 'onEndKey')}]}},[_c('div',{attrs:{"data-qa":"dt-combobox-input-wrapper"}},[_vm._t("input",null,{"inputProps":_vm.inputProps})],2),(_vm.showList)?_c('div',{ref:"listWrapper",attrs:{"data-qa":"dt-combobox-list-wrapper"},on:{"mouseleave":_vm.clearHighlightIndex,"focusout":_vm.clearHighlightIndex,"!mousemove":function($event){return _vm.onMouseHighlight.apply(null, arguments)}}},[(_vm.loading && !_vm.listRenderedOutside)?_c('combobox-loading-list',_vm._b({},'combobox-loading-list',_vm.listProps,false)):(_vm.emptyList && (_vm.emptyStateMessage || _vm.$slots.emptyListItem) && !_vm.listRenderedOutside)?_c('combobox-empty-list',_vm._b({attrs:{"message":_vm.emptyStateMessage,"item-class":_vm.emptyStateClass}},'combobox-empty-list',_vm.listProps,false),[_vm._t("emptyListItem")],2):_vm._t("list",null,{"listProps":_vm.listProps,"opened":_vm.onOpen,"clearHighlightIndex":_vm.clearHighlightIndex})],2):_vm._e()])}
5176
- var comboboxvue_type_template_id_3595da7e_staticRenderFns = []
5230
+ ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/combobox/combobox.vue?vue&type=template&id=5e29b120&
5231
+ var comboboxvue_type_template_id_5e29b120_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{on:{"keydown":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"esc",27,$event.key,["Esc","Escape"])){ return null; }$event.stopPropagation();return _vm.onKeyValidation($event, 'onEscapeKey')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"enter",13,$event.key,"Enter")){ return null; }if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey){ return null; }return _vm.onKeyValidation($event, 'onEnterKey')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"up",38,$event.key,["Up","ArrowUp"])){ return null; }$event.stopPropagation();$event.preventDefault();return _vm.onKeyValidation($event, 'onUpKey')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"down",40,$event.key,["Down","ArrowDown"])){ return null; }$event.stopPropagation();$event.preventDefault();return _vm.onKeyValidation($event, 'onDownKey')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"home",undefined,$event.key,undefined)){ return null; }$event.stopPropagation();$event.preventDefault();return _vm.onKeyValidation($event, 'onHomeKey')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"end",undefined,$event.key,undefined)){ return null; }$event.stopPropagation();$event.preventDefault();return _vm.onKeyValidation($event, 'onEndKey')}]}},[_c('div',{attrs:{"data-qa":"dt-combobox-input-wrapper"}},[_vm._t("input",null,{"inputProps":_vm.inputProps})],2),(_vm.showList)?_c('div',{ref:"listWrapper",attrs:{"data-qa":"dt-combobox-list-wrapper"},on:{"mouseleave":_vm.clearHighlightIndex,"focusout":_vm.clearHighlightIndex,"!mousemove":function($event){return _vm.onMouseHighlight.apply(null, arguments)}}},[(_vm.loading && !_vm.listRenderedOutside)?_c('combobox-loading-list',_vm._b({},'combobox-loading-list',_vm.listProps,false)):(_vm.emptyList && (_vm.emptyStateMessage || _vm.$slots.emptyListItem) && !_vm.listRenderedOutside)?_c('combobox-empty-list',_vm._b({attrs:{"message":_vm.emptyStateMessage,"item-class":_vm.emptyStateClass}},'combobox-empty-list',_vm.listProps,false),[_vm._t("emptyListItem")],2):_vm._t("list",null,{"listProps":_vm.listProps,"opened":_vm.onOpen,"clearHighlightIndex":_vm.clearHighlightIndex})],2):_vm._e()])}
5232
+ var comboboxvue_type_template_id_5e29b120_staticRenderFns = []
5177
5233
 
5178
5234
 
5179
5235
  ;// CONCATENATED MODULE: ./common/mixins/dom.js
@@ -7012,6 +7068,8 @@ const LABEL_SIZES = {
7012
7068
  //
7013
7069
  //
7014
7070
  //
7071
+ //
7072
+ //
7015
7073
 
7016
7074
 
7017
7075
 
@@ -7386,8 +7444,8 @@ const LABEL_SIZES = {
7386
7444
  ;
7387
7445
  var combobox_component = normalizeComponent(
7388
7446
  combobox_comboboxvue_type_script_lang_js_,
7389
- comboboxvue_type_template_id_3595da7e_render,
7390
- comboboxvue_type_template_id_3595da7e_staticRenderFns,
7447
+ comboboxvue_type_template_id_5e29b120_render,
7448
+ comboboxvue_type_template_id_5e29b120_staticRenderFns,
7391
7449
  false,
7392
7450
  null,
7393
7451
  null,
@@ -7991,17 +8049,17 @@ var collapsible_component = normalizeComponent(
7991
8049
  /* harmony default export */ const collapsible = (collapsible_component.exports);
7992
8050
  ;// CONCATENATED MODULE: ./components/collapsible/index.js
7993
8051
 
7994
- ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/dropdown/dropdown.vue?vue&type=template&id=5944f754&
7995
- var dropdownvue_type_template_id_5944f754_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('dt-popover',_vm._g({ref:"popover",attrs:{"content-width":_vm.contentWidth,"open":_vm.open,"placement":_vm.placement,"initial-focus-element":_vm.openedWithKeyboard ? 'first' : 'dialog',"fallback-placements":_vm.fallbackPlacements,"padding":"none","role":"menu","modal":_vm.modal,"max-height":_vm.maxHeight,"max-width":_vm.maxWidth,"open-with-arrow-keys":_vm.shouldOpenWithArrowKeys,"open-on-context":_vm.openOnContext},scopedSlots:_vm._u([{key:"anchor",fn:function(ref){
8052
+ ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/dropdown/dropdown.vue?vue&type=template&id=3c1dacf6&
8053
+ var dropdownvue_type_template_id_3c1dacf6_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('dt-popover',_vm._g({ref:"popover",attrs:{"content-width":_vm.contentWidth,"open":_vm.open,"placement":_vm.placement,"initial-focus-element":_vm.openedWithKeyboard ? 'first' : 'dialog',"fallback-placements":_vm.fallbackPlacements,"padding":"none","role":"menu","modal":_vm.modal,"max-height":_vm.maxHeight,"max-width":_vm.maxWidth,"open-with-arrow-keys":_vm.shouldOpenWithArrowKeys,"open-on-context":_vm.openOnContext},scopedSlots:_vm._u([{key:"anchor",fn:function(ref){
7996
8054
  var attrs = ref.attrs;
7997
8055
  return [_vm._t("anchor",null,null,attrs)]}},{key:"content",fn:function(ref){
7998
8056
  var close = ref.close;
7999
8057
  return [_c('ul',{ref:"listWrapper",class:_vm.listClasses,attrs:{"id":_vm.listId,"data-qa":"dt-dropdown-list-wrapper"},on:{"mouseleave":_vm.clearHighlightIndex,"!mousemove":function($event){return _vm.onMouseHighlight.apply(null, arguments)}}},[_vm._t("list",null,{"close":close}),(_vm.showVisuallyHiddenClose)?_c('sr-only-close-button',{attrs:{"visually-hidden-close-label":_vm.visuallyHiddenCloseLabel,"tabindex":_vm.isArrowKeyNav ? -1 : 0},on:{"close":close}}):_vm._e()],2)]}}],null,true)},_vm.dropdownListeners))}
8000
- var dropdownvue_type_template_id_5944f754_staticRenderFns = []
8058
+ var dropdownvue_type_template_id_3c1dacf6_staticRenderFns = []
8001
8059
 
8002
8060
 
8003
- ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/popover/popover.vue?vue&type=template&id=fec53cb4&
8004
- var popovervue_type_template_id_fec53cb4_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.modal && _vm.isOpen)?_c('portal',[_c('div',{staticClass:"d-modal--transparent",attrs:{"aria-hidden":_vm.modal && _vm.isOpen ? 'false' : 'true'},on:{"click":function($event){$event.preventDefault();$event.stopPropagation();}}})]):_vm._e(),_c(_vm.elementType,_vm._g({ref:"popover",tag:"component",class:['d-popover', { 'd-popover__anchor--opened': _vm.isOpen }],attrs:{"data-qa":"dt-popover-container"}},_vm.$listeners),[_c('div',{ref:"anchor",attrs:{"id":!_vm.ariaLabelledby && _vm.labelledBy,"data-qa":"dt-popover-anchor","tabindex":_vm.openOnContext ? 0 : undefined},on:{"!click":function($event){return _vm.defaultToggleOpen.apply(null, arguments)},"contextmenu":_vm.onContext,"keydown":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"up",38,$event.key,["Up","ArrowUp"])){ return null; }$event.preventDefault();return _vm.onArrowKeyPress.apply(null, arguments)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"down",40,$event.key,["Down","ArrowDown"])){ return null; }$event.preventDefault();return _vm.onArrowKeyPress.apply(null, arguments)}],"!keydown":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"escape",undefined,$event.key,undefined)){ return null; }return _vm.closePopover.apply(null, arguments)}}},[_vm._t("anchor",null,{"attrs":{
8061
+ ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/popover/popover.vue?vue&type=template&id=1fe3451a&
8062
+ var popovervue_type_template_id_1fe3451a_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.modal && _vm.isOpen)?_c('portal',[_c('div',{staticClass:"d-modal--transparent",attrs:{"aria-hidden":_vm.modal && _vm.isOpen ? 'false' : 'true'},on:{"click":function($event){$event.preventDefault();$event.stopPropagation();}}})]):_vm._e(),_c(_vm.elementType,_vm._g({ref:"popover",tag:"component",class:['d-popover', { 'd-popover__anchor--opened': _vm.isOpen }],attrs:{"data-qa":"dt-popover-container"}},_vm.$listeners),[_c('div',{ref:"anchor",attrs:{"id":!_vm.ariaLabelledby && _vm.labelledBy,"data-qa":"dt-popover-anchor","tabindex":_vm.openOnContext ? 0 : undefined},on:{"!click":function($event){return _vm.defaultToggleOpen.apply(null, arguments)},"contextmenu":_vm.onContext,"keydown":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"up",38,$event.key,["Up","ArrowUp"])){ return null; }$event.preventDefault();return _vm.onArrowKeyPress.apply(null, arguments)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"down",40,$event.key,["Down","ArrowDown"])){ return null; }$event.preventDefault();return _vm.onArrowKeyPress.apply(null, arguments)}],"!keydown":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"escape",undefined,$event.key,undefined)){ return null; }return _vm.closePopover.apply(null, arguments)}}},[_vm._t("anchor",null,{"attrs":{
8005
8063
  'aria-expanded': _vm.isOpen.toString(),
8006
8064
  'aria-controls': _vm.id,
8007
8065
  'aria-haspopup': _vm.role,
@@ -8012,7 +8070,7 @@ var popovervue_type_template_id_fec53cb4_render = function () {var _vm=this;var
8012
8070
  'd-popover__content',
8013
8071
  _vm.POPOVER_PADDING_CLASSES[_vm.padding],
8014
8072
  _vm.contentClass ],attrs:{"data-qa":"dt-popover-content"}},[_vm._t("content",null,{"close":_vm.closePopover})],2),(_vm.$slots.footerContent)?_c('popover-header-footer',{ref:"popover__footer",class:_vm.POPOVER_HEADER_FOOTER_PADDING_CLASSES[_vm.padding],attrs:{"type":"footer","content-class":_vm.footerClass},scopedSlots:_vm._u([{key:"content",fn:function(){return [_vm._t("footerContent",null,{"close":_vm.closePopover})]},proxy:true}],null,true)}):_vm._e(),(_vm.showVisuallyHiddenClose)?_c('sr-only-close-button',{attrs:{"visually-hidden-close-label":_vm.visuallyHiddenCloseLabel},on:{"close":_vm.closePopover}}):_vm._e()],1)],1)],1)}
8015
- var popovervue_type_template_id_fec53cb4_staticRenderFns = []
8073
+ var popovervue_type_template_id_1fe3451a_staticRenderFns = []
8016
8074
 
8017
8075
 
8018
8076
  ;// CONCATENATED MODULE: ./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js
@@ -12960,6 +13018,7 @@ var popover_header_footer_component = normalizeComponent(
12960
13018
  //
12961
13019
  //
12962
13020
  //
13021
+ //
12963
13022
 
12964
13023
  /* eslint-disable max-lines */
12965
13024
 
@@ -13423,11 +13482,9 @@ var popover_header_footer_component = normalizeComponent(
13423
13482
  isOpen(isOpen, isPrev) {
13424
13483
  if (isOpen) {
13425
13484
  this.initTippyInstance();
13426
- this.preventScrolling();
13427
13485
  } else if (!isOpen && isPrev !== isOpen) {
13428
13486
  this.removeEventListeners();
13429
13487
  this.tip.hide();
13430
- this.enableScrolling();
13431
13488
  }
13432
13489
  }
13433
13490
 
@@ -13610,6 +13667,7 @@ var popover_header_footer_component = normalizeComponent(
13610
13667
  }
13611
13668
 
13612
13669
  (_this$tip8 = this.tip) === null || _this$tip8 === void 0 ? void 0 : _this$tip8.unmount();
13670
+ this.enableScrolling();
13613
13671
  this.$emit('opened', false);
13614
13672
 
13615
13673
  if (this.open !== null) {
@@ -13618,7 +13676,8 @@ var popover_header_footer_component = normalizeComponent(
13618
13676
  },
13619
13677
 
13620
13678
  async onEnterTransitionComplete() {
13621
- this.focusInitialElement(); // await next tick in case the user wants to change focus themselves.
13679
+ this.focusInitialElement();
13680
+ this.preventScrolling(); // await next tick in case the user wants to change focus themselves.
13622
13681
 
13623
13682
  await this.$nextTick();
13624
13683
  this.$emit('opened', true, this.$refs.popover__content);
@@ -13748,8 +13807,8 @@ var popovervue_type_style_index_0_lang_less_ = __webpack_require__(532);
13748
13807
 
13749
13808
  var popover_component = normalizeComponent(
13750
13809
  popover_popovervue_type_script_lang_js_,
13751
- popovervue_type_template_id_fec53cb4_render,
13752
- popovervue_type_template_id_fec53cb4_staticRenderFns,
13810
+ popovervue_type_template_id_1fe3451a_render,
13811
+ popovervue_type_template_id_1fe3451a_staticRenderFns,
13753
13812
  false,
13754
13813
  null,
13755
13814
  null,
@@ -13819,6 +13878,7 @@ const DROPDOWN_PADDING_CLASSES = {
13819
13878
  //
13820
13879
  //
13821
13880
  //
13881
+ //
13822
13882
 
13823
13883
 
13824
13884
 
@@ -14213,8 +14273,8 @@ var dropdownvue_type_style_index_0_lang_less_ = __webpack_require__(774);
14213
14273
 
14214
14274
  var dropdown_component = normalizeComponent(
14215
14275
  dropdown_dropdownvue_type_script_lang_js_,
14216
- dropdownvue_type_template_id_5944f754_render,
14217
- dropdownvue_type_template_id_5944f754_staticRenderFns,
14276
+ dropdownvue_type_template_id_3c1dacf6_render,
14277
+ dropdownvue_type_template_id_3c1dacf6_staticRenderFns,
14218
14278
  false,
14219
14279
  null,
14220
14280
  null,
@@ -20185,14 +20245,14 @@ var keyboard_shortcut_component = normalizeComponent(
20185
20245
  ;// CONCATENATED MODULE: ./components/keyboard_shortcut/index.js
20186
20246
 
20187
20247
 
20188
- ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/root_layout/root_layout.vue?vue&type=template&id=0bf64ed3&
20189
- var root_layoutvue_type_template_id_0bf64ed3_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"root-layout d-root-layout"},[(_vm.$slots.header)?_c('header',{class:['root-layout__header', _vm.headerClass, { 'root-layout__header--sticky': _vm.headerSticky }],style:({ 'height': _vm.headerHeight }),attrs:{"data-qa":"root-layout-header"}},[_vm._t("header")],2):_vm._e(),_c('dt-root-layout-body',{attrs:{"body-class":_vm.bodyClass,"content-class":_vm.contentClass,"content-wrap-width-percent":_vm.contentWrapWidthPercent,"sidebar-class":_vm.sidebarClass,"sidebar-width":_vm.sidebarWidth,"sidebar-position":_vm.sidebarPosition},scopedSlots:_vm._u([(_vm.$slots.sidebar)?{key:"sidebar",fn:function(){return [_vm._t("sidebar")]},proxy:true}:null,(_vm.$slots.default)?{key:"content",fn:function(){return [_vm._t("default")]},proxy:true}:null],null,true)}),(_vm.$slots.footer)?_c('footer',{class:['root-layout__footer', _vm.footerClass],style:({ 'height': _vm.footerHeight }),attrs:{"data-qa":"root-layout-footer"}},[_vm._t("footer")],2):_vm._e()],1)}
20190
- var root_layoutvue_type_template_id_0bf64ed3_staticRenderFns = []
20248
+ ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/root_layout/root_layout.vue?vue&type=template&id=29e484da&
20249
+ var root_layoutvue_type_template_id_29e484da_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"root-layout d-root-layout"},[(_vm.$slots.header)?_c('header',{class:['root-layout__header', _vm.headerClass, { 'root-layout__header--sticky': _vm.headerSticky }],style:({ 'height': _vm.headerHeight, 'min-height': _vm.headerHeight }),attrs:{"data-qa":"root-layout-header"}},[_vm._t("header")],2):_vm._e(),_c('dt-root-layout-body',{attrs:{"body-class":_vm.bodyClass,"content-class":_vm.contentClass,"content-wrap-width-percent":_vm.contentWrapWidthPercent,"sidebar-class":_vm.sidebarClass,"sidebar-width":_vm.sidebarWidth,"sidebar-position":_vm.sidebarPosition,"header-height":_vm.$slots.header ? _vm.headerHeight : '0px',"footer-height":_vm.$slots.footer ? _vm.footerHeight : '0px',"fixed":_vm.fixed},scopedSlots:_vm._u([(_vm.$slots.sidebar)?{key:"sidebar",fn:function(){return [_vm._t("sidebar")]},proxy:true}:null,(_vm.$slots.default)?{key:"content",fn:function(){return [_vm._t("default")]},proxy:true}:null],null,true)}),(_vm.$slots.footer)?_c('footer',{class:['root-layout__footer', _vm.footerClass],style:({ 'height': _vm.footerHeight, 'min-height': _vm.footerHeight }),attrs:{"data-qa":"root-layout-footer"}},[_vm._t("footer")],2):_vm._e()],1)}
20250
+ var root_layoutvue_type_template_id_29e484da_staticRenderFns = []
20191
20251
 
20192
20252
 
20193
- ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/root_layout/root_layout_body.vue?vue&type=template&id=a07ea7ec&
20194
- var root_layout_bodyvue_type_template_id_a07ea7ec_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:['root-layout__body', 'd-fl-grow1', _vm.bodyClasses],attrs:{"data-qa":"root-layout-body"}},[(_vm.$slots.sidebar)?_c('aside',{class:['root-layout__sidebar', _vm.sidebarClass],style:({ 'flex-basis': _vm.sidebarWidth }),attrs:{"data-qa":"root-layout-sidebar"}},[_vm._t("sidebar")],2):_vm._e(),(_vm.$slots.content)?_c('main',{class:['root-layout__content', _vm.contentClass],style:({ 'min-inline-size': _vm.contentWrapWidthPercent }),attrs:{"data-qa":"root-layout-content"}},[_vm._t("content")],2):_vm._e()])}
20195
- var root_layout_bodyvue_type_template_id_a07ea7ec_staticRenderFns = []
20253
+ ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/root_layout/root_layout_body.vue?vue&type=template&id=d8938174&
20254
+ var root_layout_bodyvue_type_template_id_d8938174_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"root-layout-body",class:['root-layout__body', 'd-fl-grow1', _vm.bodyClasses],attrs:{"data-qa":"root-layout-body"}},[(_vm.$slots.sidebar)?_c('aside',{ref:"root-layout-sidebar",class:['root-layout__sidebar', _vm.sidebarClass],style:({ 'flex-basis': _vm.sidebarWidth }),attrs:{"data-qa":"root-layout-sidebar"}},[_vm._t("sidebar")],2):_vm._e(),(_vm.$slots.content)?_c('main',{ref:"root-layout-content",class:['root-layout__content', _vm.contentClass],style:({ 'min-inline-size': _vm.contentWrapWidthPercent, 'height': _vm.mainHeight }),attrs:{"data-qa":"root-layout-content"}},[_vm._t("content")],2):_vm._e()])}
20255
+ var root_layout_bodyvue_type_template_id_d8938174_staticRenderFns = []
20196
20256
 
20197
20257
 
20198
20258
  ;// CONCATENATED MODULE: ./components/root_layout/root_layout_constants.js
@@ -20230,6 +20290,9 @@ const ROOT_LAYOUT_SIDEBAR_POSITIONS = {
20230
20290
  //
20231
20291
  //
20232
20292
  //
20293
+ //
20294
+ //
20295
+ //
20233
20296
 
20234
20297
  /* harmony default export */ const root_layout_bodyvue_type_script_lang_js_ = ({
20235
20298
  name: 'DtRootLayoutBody',
@@ -20285,13 +20348,80 @@ const ROOT_LAYOUT_SIDEBAR_POSITIONS = {
20285
20348
  contentWrapWidthPercent: {
20286
20349
  type: String,
20287
20350
  default: undefined
20351
+ },
20352
+ headerHeight: {
20353
+ type: String,
20354
+ default: undefined
20355
+ },
20356
+ footerHeight: {
20357
+ type: String,
20358
+ default: undefined
20359
+ },
20360
+ fixed: {
20361
+ type: Boolean,
20362
+ default: undefined
20288
20363
  }
20289
20364
  },
20365
+
20366
+ data() {
20367
+ return {
20368
+ sidebarTop: null,
20369
+ contentTop: null,
20370
+ documentHeight: null
20371
+ };
20372
+ },
20373
+
20290
20374
  computed: {
20291
20375
  bodyClasses() {
20292
20376
  return [this.bodyClass, {
20293
20377
  'root-layout__body--invert': this.sidebarPosition === ROOT_LAYOUT_SIDEBAR_POSITIONS.RIGHT
20294
20378
  }];
20379
+ },
20380
+
20381
+ mainHeight() {
20382
+ if (this.fixed) {
20383
+ return `calc(${this.documentHeight}
20384
+ - (${this.headerHeight} + ${this.extraSidebarHeight} + ${this.footerHeight}))`;
20385
+ }
20386
+
20387
+ return null;
20388
+ },
20389
+
20390
+ // When the sidebar is above the header due to contentWrapWidthPercent, it needs to be excluded
20391
+ // in the main content height calculation. Otherwise it is 0 since it is at equal height with the main content.
20392
+ extraSidebarHeight() {
20393
+ if (this.contentTop > this.sidebarTop) {
20394
+ return this.$refs['root-layout-sidebar'].offsetHeight + 'px';
20395
+ }
20396
+
20397
+ return '0px';
20398
+ }
20399
+
20400
+ },
20401
+
20402
+ mounted() {
20403
+ window.addEventListener('resize', this.onResize);
20404
+ this.getDocumentHeight();
20405
+ this.getElementTops();
20406
+ },
20407
+
20408
+ beforeDestroy() {
20409
+ window.removeEventListener('resize', this.onResize);
20410
+ },
20411
+
20412
+ methods: {
20413
+ onResize() {
20414
+ this.getDocumentHeight();
20415
+ this.getElementTops();
20416
+ },
20417
+
20418
+ getElementTops() {
20419
+ this.sidebarTop = this.$refs['root-layout-sidebar'].offsetTop;
20420
+ this.contentTop = this.$refs['root-layout-content'].offsetTop;
20421
+ },
20422
+
20423
+ getDocumentHeight() {
20424
+ this.documentHeight = window.innerHeight + 'px';
20295
20425
  }
20296
20426
 
20297
20427
  }
@@ -20313,8 +20443,8 @@ var root_layout_bodyvue_type_style_index_0_lang_less_ = __webpack_require__(75);
20313
20443
 
20314
20444
  var root_layout_body_component = normalizeComponent(
20315
20445
  root_layout_root_layout_bodyvue_type_script_lang_js_,
20316
- root_layout_bodyvue_type_template_id_a07ea7ec_render,
20317
- root_layout_bodyvue_type_template_id_a07ea7ec_staticRenderFns,
20446
+ root_layout_bodyvue_type_template_id_d8938174_render,
20447
+ root_layout_bodyvue_type_template_id_d8938174_staticRenderFns,
20318
20448
  false,
20319
20449
  null,
20320
20450
  null,
@@ -20370,6 +20500,9 @@ var root_layout_body_component = normalizeComponent(
20370
20500
  //
20371
20501
  //
20372
20502
  //
20503
+ //
20504
+ //
20505
+ //
20373
20506
 
20374
20507
 
20375
20508
  /**
@@ -20382,6 +20515,15 @@ var root_layout_body_component = normalizeComponent(
20382
20515
  DtRootLayoutBody: root_layout_body
20383
20516
  },
20384
20517
  props: {
20518
+ /**
20519
+ * When true, the header / footer will be locked in position and the content will
20520
+ * be scrollable. When false the header / footer will scroll out of view.
20521
+ */
20522
+ fixed: {
20523
+ type: Boolean,
20524
+ default: true
20525
+ },
20526
+
20385
20527
  /**
20386
20528
  * Additional class name for the header element
20387
20529
  */
@@ -20498,8 +20640,8 @@ var root_layoutvue_type_style_index_0_lang_less_ = __webpack_require__(253);
20498
20640
 
20499
20641
  var root_layout_component = normalizeComponent(
20500
20642
  root_layout_root_layoutvue_type_script_lang_js_,
20501
- root_layoutvue_type_template_id_0bf64ed3_render,
20502
- root_layoutvue_type_template_id_0bf64ed3_staticRenderFns,
20643
+ root_layoutvue_type_template_id_29e484da_render,
20644
+ root_layoutvue_type_template_id_29e484da_staticRenderFns,
20503
20645
  false,
20504
20646
  null,
20505
20647
  null,
@@ -20511,15 +20653,15 @@ var root_layout_component = normalizeComponent(
20511
20653
  ;// CONCATENATED MODULE: ./components/root_layout/index.js
20512
20654
 
20513
20655
 
20514
- ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue?vue&type=template&id=ad3e7dce&
20515
- var combobox_with_popovervue_type_template_id_ad3e7dce_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('dt-combobox',_vm._g({ref:"combobox",attrs:{"loading":_vm.loading,"label":_vm.label,"label-visible":_vm.labelVisible,"size":_vm.size,"description":_vm.description,"empty-list":_vm.emptyList,"empty-state-message":_vm.emptyStateMessage,"show-list":_vm.isListShown,"on-beginning-of-list":_vm.onBeginningOfList,"on-end-of-list":_vm.onEndOfList,"list-rendered-outside":true,"list-id":_vm.listId,"data-qa":"dt-combobox"},scopedSlots:_vm._u([{key:"input",fn:function(ref){
20656
+ ;// CONCATENATED MODULE: ./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue?vue&type=template&id=7027b3a3&
20657
+ var combobox_with_popovervue_type_template_id_7027b3a3_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('dt-combobox',_vm._g({ref:"combobox",attrs:{"loading":_vm.loading,"label":_vm.label,"label-visible":_vm.labelVisible,"size":_vm.size,"description":_vm.description,"empty-list":_vm.emptyList,"empty-state-message":_vm.emptyStateMessage,"show-list":_vm.isListShown,"on-beginning-of-list":_vm.onBeginningOfList,"on-end-of-list":_vm.onEndOfList,"list-rendered-outside":true,"list-id":_vm.listId,"data-qa":"dt-combobox"},scopedSlots:_vm._u([{key:"input",fn:function(ref){
20516
20658
  var inputProps = ref.inputProps;
20517
20659
  return [_c('div',{ref:"input",attrs:{"id":_vm.externalAnchor},on:{"focusin":_vm.onFocusIn,"keydown":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"up",38,$event.key,["Up","ArrowUp"])){ return null; }return _vm.openOnArrowKeyPress($event)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"down",40,$event.key,["Down","ArrowDown"])){ return null; }return _vm.openOnArrowKeyPress($event)}]}},[_vm._t("input",null,{"inputProps":inputProps,"onInput":_vm.handleDisplayList})],2)]}},{key:"list",fn:function(ref){
20518
20660
  var opened = ref.opened;
20519
20661
  var listProps = ref.listProps;
20520
20662
  var clearHighlightIndex = ref.clearHighlightIndex;
20521
20663
  return [_c('dt-popover',{ref:"popover",attrs:{"open":_vm.isListShown,"hide-on-click":false,"max-height":_vm.maxHeight,"max-width":_vm.maxWidth,"offset":_vm.popoverOffset,"sticky":_vm.popoverSticky,"placement":"bottom-start","initial-focus-element":"none","padding":"none","role":"listbox","external-anchor":_vm.externalAnchor,"content-width":_vm.contentWidth,"content-tabindex":null,"modal":false,"auto-focus":false,"visually-hidden-close-label":_vm.visuallyHiddenCloseLabel,"visually-hidden-close":_vm.visuallyHiddenClose},on:{"update:open":function($event){_vm.isListShown=$event},"opened":function($event){return opened($event, arguments[1]);}},scopedSlots:_vm._u([{key:"headerContent",fn:function(){return [(_vm.$slots.header)?_c('div',{ref:"header"},[_vm._t("header")],2):_vm._e()]},proxy:true},{key:"content",fn:function(){return [_c('div',{ref:"listWrapper",class:[_vm.DROPDOWN_PADDING_CLASSES[_vm.padding], _vm.listClass],on:{"mouseleave":clearHighlightIndex,"focusout":clearHighlightIndex}},[(_vm.loading)?_c('combobox-loading-list',_vm._b({},'combobox-loading-list',listProps,false)):(_vm.emptyList && _vm.emptyStateMessage)?_c('combobox-empty-list',_vm._b({attrs:{"message":_vm.emptyStateMessage}},'combobox-empty-list',listProps,false)):_vm._t("list",null,{"listProps":listProps})],2)]},proxy:true},{key:"footerContent",fn:function(){return [(_vm.$slots.footer)?_c('div',{ref:"footer"},[_vm._t("footer")],2):_vm._e()]},proxy:true}],null,true)})]}}],null,true)},_vm.comboboxListeners))}
20522
- var combobox_with_popovervue_type_template_id_ad3e7dce_staticRenderFns = []
20664
+ var combobox_with_popovervue_type_template_id_7027b3a3_staticRenderFns = []
20523
20665
 
20524
20666
 
20525
20667
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-80[0].rules[0].use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./recipes/comboboxes/combobox_with_popover/combobox_with_popover.vue?vue&type=script&lang=js&
@@ -20626,6 +20768,8 @@ var combobox_with_popovervue_type_template_id_ad3e7dce_staticRenderFns = []
20626
20768
  //
20627
20769
  //
20628
20770
  //
20771
+ //
20772
+ //
20629
20773
 
20630
20774
 
20631
20775
 
@@ -20987,8 +21131,8 @@ var combobox_with_popovervue_type_template_id_ad3e7dce_staticRenderFns = []
20987
21131
  ;
20988
21132
  var combobox_with_popover_component = normalizeComponent(
20989
21133
  combobox_with_popover_combobox_with_popovervue_type_script_lang_js_,
20990
- combobox_with_popovervue_type_template_id_ad3e7dce_render,
20991
- combobox_with_popovervue_type_template_id_ad3e7dce_staticRenderFns,
21134
+ combobox_with_popovervue_type_template_id_7027b3a3_render,
21135
+ combobox_with_popovervue_type_template_id_7027b3a3_staticRenderFns,
20992
21136
  false,
20993
21137
  null,
20994
21138
  null,