index.js 3.1 KB

1
  1. "use strict";var _observers,_baseComponent=_interopRequireDefault(require("../helpers/baseComponent")),_classNames=_interopRequireDefault(require("../helpers/classNames")),_props=require("./props"),_utils=require("./utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _objectSpread(t){for(var e=1;e<arguments.length;e++)if(e%2){var a=null!=arguments[e]?arguments[e]:{},r=Object.keys(a);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(a).filter(function(e){return Object.getOwnPropertyDescriptor(a,e).enumerable}))),r.forEach(function(e){_defineProperty(t,e,a[e])})}else Object.defineProperties(t,Object.getOwnPropertyDescriptors(arguments[e]));return t}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,a=new Array(e.length);t<e.length;t++)a[t]=e[t];return a}}function _defineProperty(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}(0,_baseComponent.default)({properties:_props.props,data:{inputValue:[],selectedIndex:[],selectedValue:[],cols:[],fieldNames:_props.defaultFieldNames},observers:(_observers={},_defineProperty(_observers,"value, options",function(e,t){var a=this,r=this.data.fieldNames,n=(0,_utils.getRealCols)(t,r);this.setData({cols:n},function(){return a.setValue(e,!0)})}),_defineProperty(_observers,"inputValue",function(e){var t=this.getValue(e),a=t.selectedIndex,r=t.selectedValue;this.setData({selectedIndex:a,selectedValue:r})}),_observers),methods:{updated:function(e,t){this.data.inputValue===e&&!t||this.setData({inputValue:e})},setValue:function(e,t){var a=this.getValue(e).value;this.updated(a,t)},getValue:function(e,t){var a=0<arguments.length&&void 0!==e?e:this.data.inputValue,r=1<arguments.length&&void 0!==t?t:this.data.cols,n=this.data.fieldNames,s=(0,_utils.getRealValues)(a,r,n),o=_toConsumableArray(s),i=(0,_utils.getIndexesFromValues)(s,r,n);return{value:s,displayValue:(0,_utils.getLabelsFromIndexes)(i,r,n.label),selectedIndex:i,selectedValue:o,cols:r}},onChange:function(e,t,a){var r=_toConsumableArray(this.data.inputValue);r[e]=t,a&&this.triggerEvent(a,_objectSpread({},this.getValue(r),{index:e}))},onBeforeChange:function(e){var t=e.detail.value,a=e.currentTarget.dataset.index;this.onChange(a,t,"beforeChange")},onValueChange:function(e){var t=e.detail.value,a=e.currentTarget.dataset.index;this.onChange(a,t,"valueChange")},onScrollChange:function(e){var t=e.detail.value,a=e.currentTarget.dataset.index;this.onChange(a,t,"scrollChange")}},attached:function(){var e=this,t=this.data,a=t.value,r=t.options,n=Object.assign({},_props.defaultFieldNames,this.data.defaultFieldNames),s=(0,_utils.getRealCols)(r,n);this.setData({cols:s,fieldNames:n},function(){return e.setValue(a)})}});