@mozaic-ds/vue 0.38.0 → 0.39.0-beta.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.
@@ -19556,9 +19556,11 @@ MCheckboxGroup.install = function (Vue) {
19556
19556
  Vue.component(MCheckboxGroup.name, MCheckboxGroup);
19557
19557
  };
19558
19558
 
19559
- ;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/datatable/MDataTable.vue?vue&type=template&id=3fdecced&
19559
+ ;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/datatable/MDataTable.vue?vue&type=template&id=30650ba6&
19560
19560
 
19561
- var MDataTablevue_type_template_id_3fdecced_render = function render() {
19561
+
19562
+
19563
+ var MDataTablevue_type_template_id_30650ba6_render = function render() {
19562
19564
  var _vm = this,
19563
19565
  _c = _vm._self._c;
19564
19566
  return _c('div', {
@@ -19575,7 +19577,12 @@ var MDataTablevue_type_template_id_3fdecced_render = function render() {
19575
19577
  attrs: {
19576
19578
  "aria-describedby": "data"
19577
19579
  }
19578
- }, [_c('thead', [!_vm.hideHeader ? _c('tr', _vm._l(_vm.getHeaders, function (header, index) {
19580
+ }, [_c('thead', [!_vm.hideHeader ? _c('tr', [_vm.expandable ? _c('th', {
19581
+ staticClass: "mc-datatable__cell-button",
19582
+ attrs: {
19583
+ "scope": "col"
19584
+ }
19585
+ }, [_vm._v("   ")]) : _vm._e(), _vm._l(_vm.getHeaders, function (header, index) {
19579
19586
  return _c('th', {
19580
19587
  key: "header-".concat(index),
19581
19588
  class: header.cssClass,
@@ -19614,11 +19621,34 @@ var MDataTablevue_type_template_id_3fdecced_render = function render() {
19614
19621
  "name": 'ArrowArrowBottom16'
19615
19622
  }
19616
19623
  })], 1) : _vm._e()], 2)]);
19617
- }), 0) : _vm._e()]), _c('tbody', [_vm._l(_vm.getSource, function (item, rowIndex) {
19618
- return _c('tr', {
19624
+ })], 2) : _vm._e()]), _c('tbody', [_vm._l(_vm.getSource, function (item, rowIndex) {
19625
+ var _vm$expandableList;
19626
+ return [_c('tr', {
19619
19627
  key: item[_vm.dataKeyExpr],
19620
- class: _vm.rowClasses(item)
19621
- }, _vm._l(_vm.getHeaders, function (header, index) {
19628
+ class: [_vm.rowClasses(item), _vm.parentRowClasses]
19629
+ }, [_vm.expandable ? _c('td', [(_vm$expandableList = _vm.expandableList) !== null && _vm$expandableList !== void 0 && _vm$expandableList.includes(item.id) || !_vm.expandableList ? _c('button', {
19630
+ staticClass: "mc-datatable__expand mc-datatable__btn",
19631
+ attrs: {
19632
+ "type": "button"
19633
+ },
19634
+ on: {
19635
+ "click": function click($event) {
19636
+ return _vm.onClickExpander($event, item, rowIndex);
19637
+ }
19638
+ }
19639
+ }, [_c('span', {
19640
+ staticClass: "mc-datatable__btn-label"
19641
+ }, [_vm._v(" " + _vm._s(_vm.expanderAccessibleLabel) + " ")]), _c('MIcon', {
19642
+ staticClass: "mc-datatable__btn-icon expand-more",
19643
+ attrs: {
19644
+ "name": "ControlCircleMore24"
19645
+ }
19646
+ }), _c('MIcon', {
19647
+ staticClass: "mc-datatable__btn-icon expand-less",
19648
+ attrs: {
19649
+ "name": "ControlCircleLess24"
19650
+ }
19651
+ })], 1) : _vm._e()]) : _vm._e(), _vm._l(_vm.getHeaders, function (header, index) {
19622
19652
  return _c('td', {
19623
19653
  key: "".concat(index, "-").concat(_vm.getItemValue(item, _vm.dataKeyExpr), "-").concat(header.dataFieldExpr),
19624
19654
  class: header.cssClass,
@@ -19636,7 +19666,20 @@ var MDataTablevue_type_template_id_3fdecced_render = function render() {
19636
19666
  "item": item,
19637
19667
  "index": rowIndex
19638
19668
  })], 2);
19639
- }), 0);
19669
+ })], 2), _vm.expandable ? _c('tr', {
19670
+ key: 'subrow' + item[_vm.dataKeyExpr],
19671
+ staticClass: "mc-datatable__row-expandable",
19672
+ class: _vm.expandableRowClasses
19673
+ }, [_c('td', {
19674
+ attrs: {
19675
+ "colspan": _vm.getHeaders.length + 1
19676
+ }
19677
+ }, [_c('div', {
19678
+ staticClass: "mc-datatable__row-inner"
19679
+ }, [_vm._t("expandContent", null, {
19680
+ "item": item,
19681
+ "rowIndex": rowIndex
19682
+ })], 2)])]) : _vm._e()];
19640
19683
  }), _vm.getSource.length == 0 ? _c('tr', [_c('td', {
19641
19684
  attrs: {
19642
19685
  "colspan": _vm.getHeaders.length
@@ -19698,9 +19741,9 @@ var MDataTablevue_type_template_id_3fdecced_render = function render() {
19698
19741
  }], null, true)
19699
19742
  })], 1)]) : _vm._e()])], 2);
19700
19743
  };
19701
- var MDataTablevue_type_template_id_3fdecced_staticRenderFns = [];
19744
+ var MDataTablevue_type_template_id_30650ba6_staticRenderFns = [];
19702
19745
 
19703
- ;// CONCATENATED MODULE: ./src/components/datatable/MDataTable.vue?vue&type=template&id=3fdecced&
19746
+ ;// CONCATENATED MODULE: ./src/components/datatable/MDataTable.vue?vue&type=template&id=30650ba6&
19704
19747
 
19705
19748
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.async-iterator.js
19706
19749
  var es_symbol_async_iterator = __webpack_require__(2443);
@@ -20823,6 +20866,18 @@ var Sorting = {
20823
20866
  itemClasses: {
20824
20867
  type: [String, Function, Object],
20825
20868
  default: ''
20869
+ },
20870
+ expandable: {
20871
+ type: Boolean,
20872
+ default: false
20873
+ },
20874
+ expandableList: {
20875
+ type: Array,
20876
+ default: undefined
20877
+ },
20878
+ expanderAccessibleLabel: {
20879
+ type: String,
20880
+ default: 'Déplier la ligne'
20826
20881
  }
20827
20882
  },
20828
20883
  data: function data() {
@@ -20898,6 +20953,16 @@ var Sorting = {
20898
20953
  take = _buildOptions.take;
20899
20954
  var on = skip + take;
20900
20955
  return "".concat(skip + 1, " - ").concat(on >= this.total ? this.total : on);
20956
+ },
20957
+ parentRowClasses: function parentRowClasses() {
20958
+ return {
20959
+ 'mc-datatable__row-parent': this.expandable
20960
+ };
20961
+ },
20962
+ expandableRowClasses: function expandableRowClasses() {
20963
+ return {
20964
+ 'mc-datatable__row-expandable--offset-1': this.expandable
20965
+ };
20901
20966
  }
20902
20967
  },
20903
20968
  watch: {
@@ -21174,15 +21239,28 @@ var Sorting = {
21174
21239
  },
21175
21240
  onRowClick: function onRowClick(e) {
21176
21241
  this.$emit('row-click', e);
21242
+ },
21243
+ onClickExpander: function onClickExpander(e, rowData, rowIndex) {
21244
+ var button = e.currentTarget;
21245
+ var row = button.closest('tr');
21246
+ button.classList.toggle('is-expand');
21247
+ row.classList.toggle('mc-datatable__row-parent--expanded');
21248
+ var isExpanded = button.classList.contains('is-expand');
21249
+ var eventName = isExpanded ? 'expand-row' : 'retract-row';
21250
+ var eventArg = {
21251
+ data: rowData,
21252
+ index: rowIndex
21253
+ };
21254
+ this.$emit(eventName, eventArg);
21177
21255
  }
21178
21256
  }
21179
21257
  });
21180
21258
  ;// CONCATENATED MODULE: ./src/components/datatable/MDataTable.vue?vue&type=script&lang=js&
21181
21259
  /* harmony default export */ var datatable_MDataTablevue_type_script_lang_js_ = (MDataTablevue_type_script_lang_js_);
21182
- ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-41.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/datatable/MDataTable.vue?vue&type=style&index=0&id=3fdecced&prod&lang=scss&
21260
+ ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-41.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/datatable/MDataTable.vue?vue&type=style&index=0&id=30650ba6&prod&lang=scss&
21183
21261
  // extracted by mini-css-extract-plugin
21184
21262
 
21185
- ;// CONCATENATED MODULE: ./src/components/datatable/MDataTable.vue?vue&type=style&index=0&id=3fdecced&prod&lang=scss&
21263
+ ;// CONCATENATED MODULE: ./src/components/datatable/MDataTable.vue?vue&type=style&index=0&id=30650ba6&prod&lang=scss&
21186
21264
 
21187
21265
  ;// CONCATENATED MODULE: ./src/components/datatable/MDataTable.vue
21188
21266
 
@@ -21195,8 +21273,8 @@ var Sorting = {
21195
21273
 
21196
21274
  var MDataTable_component = normalizeComponent(
21197
21275
  datatable_MDataTablevue_type_script_lang_js_,
21198
- MDataTablevue_type_template_id_3fdecced_render,
21199
- MDataTablevue_type_template_id_3fdecced_staticRenderFns,
21276
+ MDataTablevue_type_template_id_30650ba6_render,
21277
+ MDataTablevue_type_template_id_30650ba6_staticRenderFns,
21200
21278
  false,
21201
21279
  null,
21202
21280
  null,
@@ -21403,8 +21481,8 @@ MField.install = function (Vue) {
21403
21481
  Vue.component(MField.name, MField);
21404
21482
  };
21405
21483
 
21406
- ;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/dropdown/MDropdown.vue?vue&type=template&id=34a76b06&
21407
- var MDropdownvue_type_template_id_34a76b06_render = function render() {
21484
+ ;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/dropdown/MDropdown.vue?vue&type=template&id=782a12c5&
21485
+ var MDropdownvue_type_template_id_782a12c5_render = function render() {
21408
21486
  var _vm = this,
21409
21487
  _c = _vm._self._c;
21410
21488
  return _c('div', {
@@ -21447,7 +21525,7 @@ var MDropdownvue_type_template_id_34a76b06_render = function render() {
21447
21525
  _vm.openState = !_vm.openState;
21448
21526
  }
21449
21527
  }
21450
- }, [_vm._v(" " + _vm._s(_vm.buttonValue) + " ")]), _vm.isClearable ? _c('button', {
21528
+ }, [_vm._v(" " + _vm._s(_vm.getButtonLabel) + " ")]), _vm.isClearable ? _c('button', {
21451
21529
  staticClass: "mc-dropdown__clear",
21452
21530
  attrs: {
21453
21531
  "type": "button"
@@ -21493,7 +21571,7 @@ var MDropdownvue_type_template_id_34a76b06_render = function render() {
21493
21571
  }
21494
21572
  })], 1);
21495
21573
  };
21496
- var MDropdownvue_type_template_id_34a76b06_staticRenderFns = [];
21574
+ var MDropdownvue_type_template_id_782a12c5_staticRenderFns = [];
21497
21575
 
21498
21576
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/dropdown/MDropdown.vue?vue&type=script&lang=js&
21499
21577
 
@@ -21618,7 +21696,6 @@ var MDropdownvue_type_template_id_34a76b06_staticRenderFns = [];
21618
21696
  openState: this.open,
21619
21697
  tagWidth: '0px',
21620
21698
  tagValue: null,
21621
- buttonValue: this.placeholder,
21622
21699
  localItems: null,
21623
21700
  sortedListItems: null,
21624
21701
  listboxValue: null
@@ -21652,6 +21729,20 @@ var MDropdownvue_type_template_id_34a76b06_staticRenderFns = [];
21652
21729
  'is-open': this.openState,
21653
21730
  'mc-select--s': this.size === 's'
21654
21731
  };
21732
+ },
21733
+ getButtonLabel: function getButtonLabel() {
21734
+ var _this = this;
21735
+ var label = this.placeholder;
21736
+ if (this.modelValue && !this.items.length) {
21737
+ return label;
21738
+ }
21739
+ var value = this.listboxValue;
21740
+ var selectedItems = this.getSelectedItems(value);
21741
+ var selectedLabels = selectedItems.map(function (item) {
21742
+ return item[_this.dataTextExpr];
21743
+ });
21744
+ label = (!value || value.length === 0) && this.placeholder || selectedLabels.join(', ');
21745
+ return label;
21655
21746
  }
21656
21747
  },
21657
21748
  watch: {
@@ -21673,12 +21764,6 @@ var MDropdownvue_type_template_id_34a76b06_staticRenderFns = [];
21673
21764
  },
21674
21765
  listboxValue: {
21675
21766
  handler: function handler(val) {
21676
- var _this = this;
21677
- var selectedItems = this.getSelectedItems(val);
21678
- var seletedLabels = selectedItems.map(function (item) {
21679
- return item[_this.dataTextExpr];
21680
- });
21681
- this.buttonValue = (!val || val.length === 0) && this.placeholder || seletedLabels.join(', ');
21682
21767
  if (this.multiple) {
21683
21768
  this.tagValue = val;
21684
21769
  }
@@ -21756,10 +21841,10 @@ var MDropdownvue_type_template_id_34a76b06_staticRenderFns = [];
21756
21841
  });
21757
21842
  ;// CONCATENATED MODULE: ./src/components/dropdown/MDropdown.vue?vue&type=script&lang=js&
21758
21843
  /* harmony default export */ var dropdown_MDropdownvue_type_script_lang_js_ = (MDropdownvue_type_script_lang_js_);
21759
- ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-41.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/dropdown/MDropdown.vue?vue&type=style&index=0&id=34a76b06&prod&lang=scss&
21844
+ ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-41.use[0]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/dropdown/MDropdown.vue?vue&type=style&index=0&id=782a12c5&prod&lang=scss&
21760
21845
  // extracted by mini-css-extract-plugin
21761
21846
 
21762
- ;// CONCATENATED MODULE: ./src/components/dropdown/MDropdown.vue?vue&type=style&index=0&id=34a76b06&prod&lang=scss&
21847
+ ;// CONCATENATED MODULE: ./src/components/dropdown/MDropdown.vue?vue&type=style&index=0&id=782a12c5&prod&lang=scss&
21763
21848
 
21764
21849
  ;// CONCATENATED MODULE: ./src/components/dropdown/MDropdown.vue
21765
21850
 
@@ -21772,8 +21857,8 @@ var MDropdownvue_type_template_id_34a76b06_staticRenderFns = [];
21772
21857
 
21773
21858
  var MDropdown_component = normalizeComponent(
21774
21859
  dropdown_MDropdownvue_type_script_lang_js_,
21775
- MDropdownvue_type_template_id_34a76b06_render,
21776
- MDropdownvue_type_template_id_34a76b06_staticRenderFns,
21860
+ MDropdownvue_type_template_id_782a12c5_render,
21861
+ MDropdownvue_type_template_id_782a12c5_staticRenderFns,
21777
21862
  false,
21778
21863
  null,
21779
21864
  null,