@carbon/vue 2.39.0 → 2.40.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.
@@ -9484,17 +9484,17 @@ var ErrorFilled20 = Object(_utils_e280d4a4_js__WEBPACK_IMPORTED_MODULE_0__[/* c
9484
9484
  // ESM COMPAT FLAG
9485
9485
  __webpack_require__.r(__webpack_exports__);
9486
9486
 
9487
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"474a3f54-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/cv-file-uploader/cv-file-uploader.vue?vue&type=template&id=73e9f6bf&
9487
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"474a3f54-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/cv-file-uploader/cv-file-uploader.vue?vue&type=template&id=0c045fc0&
9488
9488
  var render = function () {
9489
9489
  var _obj;
9490
9490
  var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('cv-form-item',{staticClass:"cv-file-uploader"},[_c('p',{class:(_vm.carbonPrefix + "--file--label")},[_vm._v(_vm._s(_vm.label))]),_c('p',{class:(_vm.carbonPrefix + "--label-description")},[_vm._v(_vm._s(_vm.helperText))]),_c('div',{class:(_vm.carbonPrefix + "--file"),attrs:{"data-file":""}},[_c('label',{ref:"focusTarget",class:[
9491
- ( _obj = {}, _obj[(_vm.carbonPrefix + "--file-browse-btn")] = _vm.kind !== 'button', _obj[(_vm.carbonPrefix + "--btn")] = _vm.kind === 'button', _obj[(_vm.carbonPrefix + "--btn--primary")] = _vm.kind === 'button', _obj ) ],attrs:{"for":_vm.uid,"role":"button","tabindex":"0"},on:{"keydown":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"enter",13,$event.key,"Enter")){ return null; }$event.preventDefault();return _vm.onShow()},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"space",32,$event.key,[" ","Spacebar"])){ return null; }$event.preventDefault();}],"keyup":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"space",32,$event.key,[" ","Spacebar"])){ return null; }$event.preventDefault();return _vm.onShow()}}},[_c('cv-wrapper',{class:(_vm.carbonPrefix + "--file__drop-container" + _vm.allowDropClass),attrs:{"tag-type":_vm.kind !== 'button' ? 'div' : '',"data-file-drop-container":""},on:{"dragover":_vm.onDragEvent,"dragleave":_vm.onDragEvent,"drop":_vm.onDragEvent}},[_vm._t("drop-target",[_vm._v(_vm._s(_vm.internalDropTargetLabel))]),(_vm.kind !== 'button')?_c('input',_vm._g(_vm._b({ref:"file-input",class:(_vm.carbonPrefix + "--file-input"),attrs:{"type":"file","id":_vm.uid,"data-file-uploader":"","data-target":"[data-file-container]"}},'input',_vm.$attrs,false),_vm.inputListeners)):_vm._e()],2)],1),(_vm.kind === 'button')?_c('input',_vm._g(_vm._b({ref:"file-input",class:(_vm.carbonPrefix + "--file-input"),attrs:{"type":"file","id":_vm.uid,"data-file-uploader":"","data-target":"[data-file-container]"}},'input',_vm.$attrs,false),_vm.inputListeners)):_vm._e(),_c('div',{class:(_vm.carbonPrefix + "--file-container"),attrs:{"data-file-container":""}},_vm._l((_vm.internalFiles),function(file,index){return _c('div',{key:index,class:_vm.isInvalid(index)
9491
+ ( _obj = {}, _obj[(_vm.carbonPrefix + "--file-browse-btn")] = _vm.kind !== 'button', _obj[(_vm.carbonPrefix + "--btn")] = _vm.kind === 'button', _obj[(_vm.carbonPrefix + "--btn--primary")] = _vm.kind === 'button', _obj ) ],attrs:{"for":_vm.uid,"role":"button","tabindex":"0"},on:{"keydown":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"enter",13,$event.key,"Enter")){ return null; }$event.preventDefault();return _vm.onShow()},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"space",32,$event.key,[" ","Spacebar"])){ return null; }$event.preventDefault();}],"keyup":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,"space",32,$event.key,[" ","Spacebar"])){ return null; }$event.preventDefault();return _vm.onShow()}}},[_c('cv-wrapper',{class:(_vm.carbonPrefix + "--file__drop-container" + _vm.allowDropClass),attrs:{"tag-type":_vm.kind !== 'button' ? 'div' : '',"data-file-drop-container":""},on:{"dragover":_vm.onDragEvent,"dragleave":_vm.onDragEvent,"drop":_vm.onDragEvent}},[_vm._t("drop-target",[_vm._v(_vm._s(_vm.internalDropTargetLabel))]),(_vm.kind !== 'button')?_c('input',_vm._g(_vm._b({ref:"file-input",class:(_vm.carbonPrefix + "--file-input"),attrs:{"type":"file","accept":_vm.accept,"id":_vm.uid,"data-file-uploader":"","data-target":"[data-file-container]"}},'input',_vm.$attrs,false),_vm.inputListeners)):_vm._e()],2)],1),(_vm.kind === 'button')?_c('input',_vm._g(_vm._b({ref:"file-input",class:(_vm.carbonPrefix + "--file-input"),attrs:{"type":"file","accept":_vm.accept,"id":_vm.uid,"data-file-uploader":"","data-target":"[data-file-container]"}},'input',_vm.$attrs,false),_vm.inputListeners)):_vm._e(),_c('div',{class:(_vm.carbonPrefix + "--file-container"),attrs:{"data-file-container":""}},_vm._l((_vm.internalFiles),function(file,index){return _c('div',{key:index,class:_vm.isInvalid(index)
9492
9492
  ? (_vm.carbonPrefix + "--file__selected-file--invalid__wrapper")
9493
9493
  : (_vm.carbonPrefix + "--file__selected-file")},[_c('cv-wrapper',{class:(_vm.carbonPrefix + "--file__selected-file " + _vm.carbonPrefix + "--file__selected-file--invalid"),attrs:{"tag-type":_vm.isInvalid(index) ? 'div' : ''}},[_c('p',{class:(_vm.carbonPrefix + "--file-filename"),attrs:{"title":file.file.name}},[_vm._v(_vm._s(file.file.name))]),_c('span',{class:(_vm.carbonPrefix + "--file__state-container"),style:(_vm.stateStyleOverides),attrs:{"data-for":_vm.uid,"data-test":file.state}},[(file.state === 'uploading')?_c('div',{class:(_vm.carbonPrefix + "--inline-loading__animation")},[_c('div',{class:(_vm.carbonPrefix + "--loading " + _vm.carbonPrefix + "--loading--small"),attrs:{"data-inline-loading-spinner":""}},[_c('svg',{class:(_vm.carbonPrefix + "--loading__svg"),attrs:{"viewBox":"-75 -75 150 150"}},[_c('circle',{class:(_vm.carbonPrefix + "--loading__background"),attrs:{"cx":"0","cy":"0","r":"37.5"}}),_c('circle',{class:(_vm.carbonPrefix + "--loading__stroke"),attrs:{"cx":"0","cy":"0","r":"37.5"}})])])]):_vm._e(),(file.state === 'complete')?_c('CheckmarkFilled16',{class:(_vm.carbonPrefix + "--file-complete")}):_vm._e(),(_vm.isInvalid(index))?_c('WarningFilled16',{class:(_vm.carbonPrefix + "--file--invalid")}):_vm._e(),(_vm.removable)?_c('button',{class:(_vm.carbonPrefix + "--file-close"),attrs:{"type":"button","alt":_vm.removeAriaLabel,"arial-label":_vm.removeAriaLabel},on:{"click":function($event){return _vm.remove(index)}}},[_c('Close16')],1):_vm._e()],1),(_vm.isInvalid(index))?_c('div',{class:(_vm.carbonPrefix + "--form-requirement")},[_c('div',{class:(_vm.carbonPrefix + "--form-requirement__title")},[_vm._v("\n "+_vm._s(file.invalidMessageTitle || 'Invalid file')+"\n ")]),_c('p',{class:(_vm.carbonPrefix + "--form-requirement__supplement")},[_vm._v(_vm._s(file.invalidMessage))])]):_vm._e()])],1)}),0)])])}
9494
9494
  var staticRenderFns = []
9495
9495
 
9496
9496
 
9497
- // CONCATENATED MODULE: ./src/components/cv-file-uploader/cv-file-uploader.vue?vue&type=template&id=73e9f6bf&
9497
+ // CONCATENATED MODULE: ./src/components/cv-file-uploader/cv-file-uploader.vue?vue&type=template&id=0c045fc0&
9498
9498
 
9499
9499
  // EXTERNAL MODULE: ./src/mixins/index.js + 7 modules
9500
9500
  var mixins = __webpack_require__("1b62");
@@ -9629,6 +9629,8 @@ var consts = __webpack_require__("4352");
9629
9629
  //
9630
9630
  //
9631
9631
  //
9632
+ //
9633
+ //
9632
9634
 
9633
9635
 
9634
9636
 
@@ -9660,6 +9662,7 @@ var consts = __webpack_require__("4352");
9660
9662
  },
9661
9663
  label: String,
9662
9664
  helperText: String,
9665
+ accept: String,
9663
9666
  initialStateUploading: Boolean,
9664
9667
  removable: Boolean,
9665
9668
  buttonLabel: {
@@ -9730,12 +9733,19 @@ var consts = __webpack_require__("4352");
9730
9733
  },
9731
9734
  addFiles(files) {
9732
9735
  for (const file of files) {
9733
- this.internalFiles.push({
9736
+ const internalFile = {
9734
9737
  state: this.initialStateUploading ? consts["b" /* STATES */].UPLOADING : consts["b" /* STATES */].NONE,
9735
9738
  file,
9736
9739
  invalidMessageTitle: '',
9737
9740
  invalidMessage: '',
9738
- });
9741
+ };
9742
+
9743
+ if (file.messageBundle) {
9744
+ internalFile.invalidMessageTitle = file.messageBundle.invalidMessageTitle;
9745
+ internalFile.invalidMessage = file.messageBundle.invalidMessage;
9746
+ delete file.messageBundle;
9747
+ }
9748
+ this.internalFiles.push(internalFile);
9739
9749
  }
9740
9750
  this.$emit('change', this.internalFiles);
9741
9751
  },
@@ -9761,32 +9771,55 @@ var consts = __webpack_require__("4352");
9761
9771
  this.internalFiles[index].invalidMessage = message;
9762
9772
  },
9763
9773
  onDragEvent(evt) {
9764
- // NOTE: Validation of dragged files is not currently done.
9765
- // It may be possible to do this here or defer to the caller.
9766
- // It is certainly possible for the user to remove files after they are dropped.
9767
-
9768
- if (Array.prototype.indexOf.call(evt.dataTransfer.types, 'Files') >= 0) {
9769
- if (evt.type === 'dragover') {
9770
- evt.preventDefault();
9771
- const dropEffect = 'copy';
9772
- if (Array.isArray(evt.dataTransfer.types)) {
9773
- try {
9774
- // IE11 throws a "permission denied" error accessing `.effectAllowed`
9775
- evt.dataTransfer.effectAllowed = dropEffect;
9776
- } catch (e) {
9777
- // ignore
9778
- }
9774
+ if (Array.prototype.indexOf.call(evt.dataTransfer.types, 'Files') === -1) {
9775
+ return;
9776
+ }
9777
+
9778
+ if (evt.type === 'dragleave') {
9779
+ this.allowDrop = false;
9780
+ return;
9781
+ }
9782
+
9783
+ if (evt.type === 'dragover') {
9784
+ evt.preventDefault();
9785
+ const dropEffect = 'copy';
9786
+ if (Array.isArray(evt.dataTransfer.types)) {
9787
+ try {
9788
+ // IE11 throws a "permission denied" error accessing `.effectAllowed`
9789
+ evt.dataTransfer.effectAllowed = dropEffect;
9790
+ } catch (e) {
9791
+ // ignore
9779
9792
  }
9780
- evt.dataTransfer.dropEffect = dropEffect;
9781
- this.allowDrop = true;
9782
9793
  }
9783
- if (evt.type === 'dragleave') {
9784
- this.allowDrop = false;
9794
+ evt.dataTransfer.dropEffect = dropEffect;
9795
+ this.allowDrop = true;
9796
+ }
9797
+
9798
+ if (evt.type === 'drop') {
9799
+ evt.preventDefault();
9800
+ if (this.accept) {
9801
+ this.markInvalidFileTypes(evt.dataTransfer.files);
9802
+ }
9803
+ this.addFiles(evt.dataTransfer.files);
9804
+ this.allowDrop = false;
9805
+ }
9806
+ },
9807
+ markInvalidFileTypes(files) {
9808
+ const isFileAllowed = file => {
9809
+ const extension = '.' + file.name.split('.').pop();
9810
+ const allowed = this.accept.split(',').map(x => x.trim());
9811
+ if (allowed.includes('.jpg')) {
9812
+ allowed.push('.jpeg');
9785
9813
  }
9786
- if (evt.type === 'drop') {
9787
- evt.preventDefault();
9788
- this.addFiles(evt.dataTransfer.files);
9789
- this.allowDrop = false;
9814
+ return allowed.includes(file.type) || allowed.includes(extension);
9815
+ };
9816
+
9817
+ for (const file of files) {
9818
+ if (!isFileAllowed(file)) {
9819
+ file.messageBundle = {
9820
+ invalidMessageTitle: 'Invalid file type',
9821
+ invalidMessage: `"${file.name}" does not have a valid file type.`,
9822
+ };
9790
9823
  }
9791
9824
  }
9792
9825
  },
@@ -14770,17 +14803,17 @@ var Close20 = Object(_utils_e280d4a4_js__WEBPACK_IMPORTED_MODULE_0__[/* c */ "a"
14770
14803
  // ESM COMPAT FLAG
14771
14804
  __webpack_require__.r(__webpack_exports__);
14772
14805
 
14773
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"474a3f54-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/cv-toast-notification/cv-toast-notification.vue?vue&type=template&id=8e281c86&
14806
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"474a3f54-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/cv-toast-notification/cv-toast-notification.vue?vue&type=template&id=48c07dad&
14774
14807
  var render = function () {
14775
14808
  var _obj;
14776
14809
  var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._g({class:[
14777
14810
  ("cv-notifiation " + _vm.carbonPrefix + "--toast-notification"),
14778
14811
  (_vm.carbonPrefix + "--toast-notification--" + (_vm.kind.toLowerCase())),
14779
- ( _obj = {}, _obj[(_vm.carbonPrefix + "--toast-notification--low-contrast")] = _vm.lowContrast, _obj ) ],attrs:{"data-notification":"","role":_vm.isAlert ? 'alert' : undefined,"aria-live":!_vm.isAlert ? 'polite' : false}},_vm.$listeners),[_c(_vm.icon,{tag:"component",class:(_vm.carbonPrefix + "--toast-notification__icon")}),_c('div',{class:(_vm.carbonPrefix + "--toast-notification__details")},[_c('h3',{class:(_vm.carbonPrefix + "--toast-notification__title")},[_vm._v(_vm._s(_vm.title))]),_c('p',{class:(_vm.carbonPrefix + "--toast-notification__subtitle"),domProps:{"innerHTML":_vm._s(_vm.subTitle)}}),_c('p',{class:(_vm.carbonPrefix + "--toast-notification__caption"),domProps:{"innerHTML":_vm._s(_vm.caption)}})]),_c('button',{class:(_vm.carbonPrefix + "--toast-notification__close-button"),attrs:{"aria-label":_vm.closeAriaLabel,"type":"button","data-notification-btn":""},on:{"click":function($event){return _vm.$emit('close')}}},[_c('Close20',{class:(_vm.carbonPrefix + "--toast-notification__close-icon")})],1)],1)}
14812
+ ( _obj = {}, _obj[(_vm.carbonPrefix + "--toast-notification--low-contrast")] = _vm.lowContrast, _obj ) ],attrs:{"data-notification":"","role":_vm.isAlert ? 'alert' : undefined,"aria-live":!_vm.isAlert ? 'polite' : false}},_vm.$listeners),[_c(_vm.icon,{tag:"component",class:(_vm.carbonPrefix + "--toast-notification__icon")}),_c('div',{class:(_vm.carbonPrefix + "--toast-notification__details")},[_c('h3',{class:(_vm.carbonPrefix + "--toast-notification__title")},[_vm._v(_vm._s(_vm.title))]),_c('p',{class:(_vm.carbonPrefix + "--toast-notification__subtitle"),domProps:{"innerHTML":_vm._s(_vm.subTitle)}}),_c('p',{class:(_vm.carbonPrefix + "--toast-notification__caption"),domProps:{"innerHTML":_vm._s(_vm.caption)}})]),(!_vm.hideCloseButton)?_c('button',{class:(_vm.carbonPrefix + "--toast-notification__close-button"),attrs:{"aria-label":_vm.closeAriaLabel,"type":"button","data-notification-btn":""},on:{"click":function($event){return _vm.$emit('close')}}},[_c('Close20',{class:(_vm.carbonPrefix + "--toast-notification__close-icon")})],1):_vm._e()],1)}
14780
14813
  var staticRenderFns = []
14781
14814
 
14782
14815
 
14783
- // CONCATENATED MODULE: ./src/components/cv-toast-notification/cv-toast-notification.vue?vue&type=template&id=8e281c86&
14816
+ // CONCATENATED MODULE: ./src/components/cv-toast-notification/cv-toast-notification.vue?vue&type=template&id=48c07dad&
14784
14817
 
14785
14818
  // EXTERNAL MODULE: ./src/mixins/index.js + 7 modules
14786
14819
  var mixins = __webpack_require__("1b62");
@@ -14831,6 +14864,7 @@ var information_filled_20 = __webpack_require__("92ca");
14831
14864
  //
14832
14865
  //
14833
14866
  //
14867
+ //
14834
14868
 
14835
14869
 
14836
14870
 
@@ -14846,6 +14880,7 @@ var information_filled_20 = __webpack_require__("92ca");
14846
14880
  props: {
14847
14881
  caption: String,
14848
14882
  closeAriaLabel: { type: String, default: 'Dismiss notification' },
14883
+ hideCloseButton: Boolean,
14849
14884
  kind: {
14850
14885
  type: String,
14851
14886
  default: 'info',
@@ -15724,7 +15759,7 @@ exports.createSVGComponent = createSVGComponent;
15724
15759
  // ESM COMPAT FLAG
15725
15760
  __webpack_require__.r(__webpack_exports__);
15726
15761
 
15727
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"474a3f54-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/cv-inline-notification/cv-inline-notification.vue?vue&type=template&id=3d6f3254&
15762
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"474a3f54-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/cv-inline-notification/cv-inline-notification.vue?vue&type=template&id=a9ac2754&
15728
15763
  var render = function () {
15729
15764
  var _obj;
15730
15765
  var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._g({class:[
@@ -15735,11 +15770,11 @@ var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_
15735
15770
  (_vm.carbonPrefix + "--inline-notification__action-button"),
15736
15771
  (_vm.carbonPrefix + "--btn"),
15737
15772
  (_vm.carbonPrefix + "--btn--sm"),
15738
- (_vm.carbonPrefix + "--btn--ghost") ],attrs:{"type":"button"},on:{"click":function($event){return _vm.$emit('action')}}},[_vm._v("\n "+_vm._s(_vm.actionLabel)+"\n ")]):_vm._e(),_c('button',{class:(_vm.carbonPrefix + "--inline-notification__close-button"),attrs:{"type":"button","aria-label":_vm.closeAriaLabel,"data-notification-btn":""},on:{"click":function($event){return _vm.$emit('close')}}},[_c('Close20',{class:(_vm.carbonPrefix + "--inline-notification__close-icon")})],1)])}
15773
+ (_vm.carbonPrefix + "--btn--ghost") ],attrs:{"type":"button"},on:{"click":function($event){return _vm.$emit('action')}}},[_vm._v("\n "+_vm._s(_vm.actionLabel)+"\n ")]):_vm._e(),(!_vm.hideCloseButton)?_c('button',{class:(_vm.carbonPrefix + "--inline-notification__close-button"),attrs:{"type":"button","aria-label":_vm.closeAriaLabel,"data-notification-btn":""},on:{"click":function($event){return _vm.$emit('close')}}},[_c('Close20',{class:(_vm.carbonPrefix + "--inline-notification__close-icon")})],1):_vm._e()])}
15739
15774
  var staticRenderFns = []
15740
15775
 
15741
15776
 
15742
- // CONCATENATED MODULE: ./src/components/cv-inline-notification/cv-inline-notification.vue?vue&type=template&id=3d6f3254&
15777
+ // CONCATENATED MODULE: ./src/components/cv-inline-notification/cv-inline-notification.vue?vue&type=template&id=a9ac2754&
15743
15778
 
15744
15779
  // EXTERNAL MODULE: ./src/mixins/index.js + 7 modules
15745
15780
  var mixins = __webpack_require__("1b62");
@@ -15807,6 +15842,7 @@ var information_filled_20 = __webpack_require__("92ca");
15807
15842
  //
15808
15843
  //
15809
15844
  //
15845
+ //
15810
15846
 
15811
15847
 
15812
15848
 
@@ -15828,6 +15864,7 @@ var information_filled_20 = __webpack_require__("92ca");
15828
15864
  validator: val => ['error', 'info', 'warning', 'success'].includes(val),
15829
15865
  },
15830
15866
  lowContrast: Boolean,
15867
+ hideCloseButton: Boolean,
15831
15868
  },
15832
15869
  computed: {
15833
15870
  icon() {