| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 | 'use strict';Object.defineProperty(exports, '__esModule', { value: true });var relation_1 = require('../common/relation');var component_1 = require('../common/component');component_1.VantComponent({  field: true,  relation: relation_1.useParent('dropdown-menu', function () {    this.updateDataFromParent();  }),  props: {    value: {      type: null,      observer: 'rerender',    },    title: {      type: String,      observer: 'rerender',    },    disabled: Boolean,    titleClass: {      type: String,      observer: 'rerender',    },    options: {      type: Array,      value: [],      observer: 'rerender',    },    popupStyle: String,  },  data: {    transition: true,    showPopup: false,    showWrapper: false,    displayTitle: '',  },  methods: {    rerender: function () {      var _this = this;      wx.nextTick(function () {        var _a;        (_a = _this.parent) === null || _a === void 0          ? void 0          : _a.updateItemListData();      });    },    updateDataFromParent: function () {      if (this.parent) {        var _a = this.parent.data,          overlay = _a.overlay,          duration = _a.duration,          activeColor = _a.activeColor,          closeOnClickOverlay = _a.closeOnClickOverlay,          direction = _a.direction;        this.setData({          overlay: overlay,          duration: duration,          activeColor: activeColor,          closeOnClickOverlay: closeOnClickOverlay,          direction: direction,        });      }    },    onOpen: function () {      this.$emit('open');    },    onOpened: function () {      this.$emit('opened');    },    onClose: function () {      this.$emit('close');    },    onClosed: function () {      this.$emit('closed');      this.setData({ showWrapper: false });    },    onOptionTap: function (event) {      var option = event.currentTarget.dataset.option;      var value = option.value;      var shouldEmitChange = this.data.value !== value;      this.setData({ showPopup: false, value: value });      this.$emit('close');      this.rerender();      if (shouldEmitChange) {        this.$emit('change', value);      }    },    toggle: function (show, options) {      var _this = this;      var _a;      if (options === void 0) {        options = {};      }      var showPopup = this.data.showPopup;      if (typeof show !== 'boolean') {        show = !showPopup;      }      if (show === showPopup) {        return;      }      this.setData({        transition: !options.immediate,        showPopup: show,      });      if (show) {        (_a = this.parent) === null || _a === void 0          ? void 0          : _a.getChildWrapperStyle().then(function (wrapperStyle) {              _this.setData({ wrapperStyle: wrapperStyle, showWrapper: true });              _this.rerender();            });      } else {        this.rerender();      }    },  },});
 |