| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 | "use strict";Object.defineProperty(exports, "__esModule", { value: true });var relation_1 = require("../common/relation");var component_1 = require("../common/component");(0, component_1.VantComponent)({    field: true,    relation: (0, 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();            }        },    },});
 |