Sanakey
2021-06-05 61abc9b654f78019a974c68916eb5718bc1c2992
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
"use strict";
Component({
    options: {
        addGlobalClass: true,
        multipleSlots: true
    },
    properties: {
        storeList: {
            type: Array,
            value: []
        },
    },
    data: {
        selectedStoreList: [],
        selectedStore: '',
        selectedStoreIdList: [],
        index: -1
    },
    lifetimes: {},
    pageLifetimes: {
        show: function () {
            var _a = this.data, selectedStoreIdList = _a.selectedStoreIdList, selectedStore = _a.selectedStore;
            var newSelectedStoreList = [];
            console.log('>>>>>>>>>>>>>>门店组件页面show开始>>>>>>>>>>>>>>');
            console.log('页面show时 新建活动页当前的selectedStoreIdList', selectedStoreIdList);
            if (selectedStoreIdList.length > 0) {
                var selectedStoreList_1 = this.getSelectedStoreList();
                console.log('页面show时 新建活动页当前的selectedStoreList', selectedStoreList_1);
                if (selectedStoreIdList.length != selectedStoreList_1.length) {
                    selectedStoreIdList.forEach(function (idItem) {
                        selectedStoreList_1.forEach(function (item) {
                            if (item.docCode == idItem) {
                                newSelectedStoreList.push(item);
                            }
                        });
                    });
                    selectedStoreList_1 = newSelectedStoreList;
                    console.log('门店被删除,selectedStoreList数据更新后', newSelectedStoreList);
                    this.setData({
                        selectedStoreList: selectedStoreList_1
                    });
                }
                console.log('selectedStoreIdList是否包含selectedStore', selectedStoreIdList.includes(selectedStore.toString()), selectedStoreIdList, selectedStore.toString());
                if (!selectedStoreIdList.includes(selectedStore.toString())) {
                    this.setData({
                        selectedStore: selectedStoreList_1[0].docCode,
                        index: 0
                    });
                }
                console.log('页面show时 新建活动页当前的selectedStore', this.data.selectedStore, this.data.index);
            }
            console.log('<<<<<<<<<<<<<<<门店组件页面show结束<<<<<<<<<<<<<<<');
        }
    },
    observers: {
        'storeList': function (val) {
            var _this = this;
            console.log('监听stores', val, this.data.storeList);
            if (val.length > 0) {
                var selectedStoreList = val;
                var selectedStoreIdList_1 = [];
                console.log('门店列表stores。。。与id、、、', selectedStoreList, selectedStoreIdList_1);
                selectedStoreList.forEach(function (item, index) {
                    selectedStoreIdList_1.push(item && item.docCode && item.docCode.toString());
                    if (item.isDefaultStoreName) {
                        _this.setData({
                            selectedStore: item.docCode,
                            index: index
                        });
                    }
                });
                this.setData({ selectedStoreList: selectedStoreList, selectedStoreIdList: selectedStoreIdList_1 });
            }
        }
    },
    methods: {
        getSelectedStoreList: function () {
            var selectedStoreIdList = this.data.selectedStoreIdList;
            var selectedStoreList = [];
            var storeList = wx.globalData.storeList;
            selectedStoreIdList.forEach(function (id) {
                storeList.forEach(function (item) {
                    if (item.docCode == id) {
                        selectedStoreList.push(item);
                    }
                });
            });
            this.setData({
                selectedStoreList: selectedStoreList
            });
            return selectedStoreList;
        },
        getStoreList: function () {
            var _a = this.data, selectedStoreList = _a.selectedStoreList, index = _a.index;
            selectedStoreList.forEach(function (item) {
                item.isDefaultStoreName = false;
            });
            if (index >= 0 && selectedStoreList.length > 0) {
                selectedStoreList[index].isDefaultStoreName = true;
            }
            console.log('待提交的门店数据', selectedStoreList);
            return selectedStoreList;
        },
        addStore: function () {
            var _this = this;
            wx.navigateTo({
                url: "/pages/storeList/storeList",
                success: function (res) {
                    var selectedStoreIdList = _this.data.selectedStoreIdList;
                    console.log('新建活动页当前的selectedStoreIdList', selectedStoreIdList);
                    res.eventChannel.emit('getStoreListFromPromotionsPage', {
                        selectedStoreIdList: selectedStoreIdList
                    });
                },
                events: {
                    getSelectedStoreList: function (data) {
                        console.log('获取门店选择页选中的data', data);
                        _this.setData({
                            selectedStoreIdList: data.selectedStoreIdList,
                        });
                    },
                }
            });
        }
    }
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsU0FBUyxDQUFDO0lBSVIsT0FBTyxFQUFFO1FBQ1AsY0FBYyxFQUFFLElBQUk7UUFDcEIsYUFBYSxFQUFFLElBQUk7S0FDcEI7SUFDRCxVQUFVLEVBQUU7UUFDVixTQUFTLEVBQUM7WUFDUixJQUFJLEVBQUUsS0FBSztZQUNYLEtBQUssRUFBRSxFQUFFO1NBQ1Y7S0FVRjtJQUtELElBQUksRUFBRTtRQUNKLGlCQUFpQixFQUFDLEVBSVY7UUFDUixhQUFhLEVBQUMsRUFBRTtRQUNoQixtQkFBbUIsRUFBQyxFQUFTO1FBQzdCLEtBQUssRUFBRSxDQUFDLENBQUM7S0FDVjtJQUVELFNBQVMsRUFBQyxFQU1UO0lBQ0QsYUFBYSxFQUFDO1FBQ1osSUFBSTtZQUNFLElBQUEsY0FBK0MsRUFBOUMsNENBQW1CLEVBQUMsZ0NBQTBCLENBQUM7WUFDcEQsSUFBSSxvQkFBb0IsR0FBRyxFQUFTLENBQUM7WUFDckMsT0FBTyxDQUFDLEdBQUcsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO1lBQ3hELE9BQU8sQ0FBQyxHQUFHLENBQUMscUNBQXFDLEVBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUN2RSxJQUFJLG1CQUFtQixDQUFDLE1BQU0sR0FBQyxDQUFDLEVBQUM7Z0JBQy9CLElBQUksbUJBQWlCLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7Z0JBQ3BELE9BQU8sQ0FBQyxHQUFHLENBQUMsbUNBQW1DLEVBQUMsbUJBQWlCLENBQUMsQ0FBQztnQkFFbkUsSUFBSSxtQkFBbUIsQ0FBQyxNQUFNLElBQUksbUJBQWlCLENBQUMsTUFBTSxFQUFFO29CQUMxRCxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsVUFBQyxNQUFVO3dCQUNyQyxtQkFBaUIsQ0FBQyxPQUFPLENBQUMsVUFBQyxJQUFROzRCQUNqQyxJQUFJLElBQUksQ0FBQyxPQUFPLElBQUks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LElBQUksQ0FBQyxtQkFBbUI7eUJBRTdDLENBQUMsQ0FBQTtvQkFDSixDQUFDO2lCQUNGO2FBQ0YsQ0FBQyxDQUFBO1FBQ0osQ0FBQztLQUNGO0NBQ0YsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLy8gY29uc3QgYXBwID0gZ2V0QXBwPElBcHBPcHRpb24+KCk7XHJcbkNvbXBvbmVudCh7XHJcbiAgLyoqXHJcbiAgICog57uE5Lu255qE5bGe5oCn5YiX6KGoXHJcbiAgICovXHJcbiAgb3B0aW9uczoge1xyXG4gICAgYWRkR2xvYmFsQ2xhc3M6IHRydWUsXHJcbiAgICBtdWx0aXBsZVNsb3RzOiB0cnVlIC8vIOWcqOe7hOS7tuWumuS5ieaXtueahOmAiemhueS4reWQr+eUqOWkmnNsb3TmlK/mjIFcclxuICB9LFxyXG4gIHByb3BlcnRpZXM6IHtcclxuICAgIHN0b3JlTGlzdDp7XHJcbiAgICAgIHR5cGU6IEFycmF5LFxyXG4gICAgICB2YWx1ZTogW11cclxuICAgIH0sXHJcbiAgICAvLyB2YWxpZGF0b3JJbnN0YW5jZTp7XHJcbiAgICAvLyAgIHR5cGU6T2JqZWN0LFxyXG4gICAgLy8gICBvYnNlcnZlcjogZnVuY3Rpb24gKG5ld1ZhbCwgb2xkVmFsLCBjaGFuZ2VkUGF0aCkge1xyXG4gICAgLy8gICAgIC8vIOWxnuaAp+iiq+aUueWPmOaXtuaJp+ihjOeahOWHveaVsO+8iOWPr+mAie+8ie+8jOS5n+WPr+S7peWGmeaIkOWcqG1ldGhvZHPmrrXkuK3lrprkuYnnmoTmlrnms5XlkI3lrZfnrKbkuLJcclxuICAgIC8vICAgICAvLyDpgJrluLggbmV3VmFsIOWwseaYr+aWsOiuvue9rueahOaVsOaNru+8jCBvbGRWYWwg5piv5pen5pWw5o2uXHJcbiAgICAvL1xyXG4gICAgLy8gICAgIGNvbnNvbGUubG9nKG5ld1ZhbCxvbGRWYWwsY2hhbmdlZFBhdGgpO1xyXG4gICAgLy8gICB9XHJcbiAgICAvLyB9XHJcbiAgfSxcclxuXHJcbiAgLyoqXHJcbiAgICog57uE5Lu255qE5Yid5aeL5pWw5o2uXHJcbiAgICovXHJcbiAgZGF0YToge1xyXG4gICAgc2VsZWN0ZWRTdG9yZUxpc3Q6W1xyXG4gICAgICAvLyB7RG9jSXRlbTogMTAsIFN0b3JlSWQ6IDEsIFN0b3JlTmFtZTogXCLlpb3lh6DljYFcIiwgVGVsZXBob25lOiBcIjE1NTU1NTU1NTU1XCIsIGlzRGVmYXVsdFN0b3JlTmFtZTogZmFsc2V9LFxyXG4gICAgICAvLyB7RG9jSXRlbTogMTAsIFN0b3JlSWQ6IDIsIFN0b3JlTmFtZTogXCLlpb1cIiwgVGVsZXBob25lOiBcIjE1NTg4NTU1NTU1XCIsIGlzRGVmYXVsdFN0b3JlTmFtZTogZmFsc2V9LFxyXG4gICAgICAvLyB7RG9jSXRlbTogMTAsIFN0b3JlSWQ6IDMsIFN0b3JlTmFtZTogXCI1NTVcIiwgVGVsZXBob25lOiBcIjE4ODg4NTU1NTU1XCIsIGlzRGVmYXVsdFN0b3JlTmFtZTogZmFsc2V9LFxyXG4gICAgXSBhcyBhbnksXHJcbiAgICBzZWxlY3RlZFN0b3JlOicnLFxyXG4gICAgc2VsZWN0ZWRTdG9yZUlkTGlzdDpbXSBhcyBhbnksXHJcbiAgICBpbmRleDogLTFcclxuICB9LFxyXG5cclxuICBsaWZldGltZXM6e1xyXG4gICAgLy8gcmVhZHkoKSB7XHJcbiAgICAvLyAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAvLyAgICAgdGhlbWVDb2xvcjp3eC5nbG9iYWxEYXRhLnRoZW1lQ29sb3JcclxuICAgIC8vICAgfSlcclxuICAgIC8vIH1cclxuICB9LFxyXG4gIHBhZ2VMaWZldGltZXM6e1xyXG4gICAgc2hvdygpe1xyXG4gICAgICBsZXQge3NlbGVjdGVkU3RvcmVJZExpc3Qsc2VsZWN0ZWRTdG9yZX0gPSB0aGlzLmRhdGE7XHJcbiAgICAgIGxldCBuZXdTZWxlY3RlZFN0b3JlTGlzdCA9IFtdIGFzIGFueTtcclxuICAgICAgY29uc29sZS5sb2coJz4+Pj4+Pj4+Pj4+Pj4+6Zeo5bqX57uE5Lu26aG16Z2ic2hvd+W8gOWniz4+Pj4+Pj4+Pj4+Pj4+Jyk7XHJcbiAgICAgIGNvbnNvbGUubG9nKCfpobXpnaJzaG935pe2IOaWsOW7uua0u+WKqOmhteW9k+WJjeeahHNlbGVjdGVkU3RvcmVJZExpc3QnLHNlbGVjdGVkU3RvcmVJZExpc3QpO1xyXG4gICAgICBpZiAoc2VsZWN0ZWRTdG9yZUlkTGlzdC5sZW5ndGg+MCl7XHJcbiAgICAgICAgbGV0IHNlbGVjdGVkU3RvcmVMaXN0ID0gdGhpcy5nZXRTZWxlY3RlZFN0b3JlTGlzdCgpO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCfpobXpnaJzaG935pe2IOaWsOW7uua0u+WKqOmhteW9k+WJjeeahHNlbGVjdGVkU3RvcmVMaXN0JyxzZWxlY3RlZFN0b3JlTGlzdCk7XHJcblxyXG4gICAgICAgIGlmIChzZWxlY3RlZFN0b3JlSWRMaXN0Lmxlbmd0aCAhPSBzZWxlY3RlZFN0b3JlTGlzdC5sZW5ndGgpIHtcclxuICAgICAgICAgIHNlbGVjdGVkU3RvcmVJZExpc3QuZm9yRWFjaCgoaWRJdGVtOmFueSk9PntcclxuICAgICAgICAgICAgc2VsZWN0ZWRTdG9yZUxpc3QuZm9yRWFjaCgoaXRlbTphbnkpPT57XHJcbiAgICAgICAgICAgICAgaWYgKGl0ZW0uZG9jQ29kZSA9PSBpZEl0ZW0pIHtcclxuICAgICAgICAgICAgICAgIG5ld1NlbGVjdGVkU3RvcmVMaXN0LnB1c2goaXRlbSlcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgc2VsZWN0ZWRTdG9yZUxpc3QgPSBuZXdTZWxlY3RlZFN0b3JlTGlzdDtcclxuXHJcbiAgICAgICAgICBjb25zb2xlLmxvZygn6Zeo5bqX6KKr5Yig6Zmk77yMc2VsZWN0ZWRTdG9yZUxpc3TmlbDmja7mm7TmlrDlkI4nLG5ld1NlbGVjdGVkU3RvcmVMaXN0KTtcclxuICAgICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgICAgIHNlbGVjdGVkU3RvcmVMaXN0XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zb2xlLmxvZygnc2VsZWN0ZWRTdG9yZUlkTGlzdOaYr+WQpuWMheWQq3NlbGVjdGVkU3RvcmUnLHNlbGVjdGVkU3RvcmVJZExpc3QuaW5jbHVkZXMoc2VsZWN0ZWRTdG9yZS50b1N0cmluZygpIGFzIG5ldmVyKSxzZWxlY3RlZFN0b3JlSWRMaXN0LHNlbGVjdGVkU3RvcmUudG9TdHJpbmcoKSk7XHJcbiAgICAgICAgaWYgKCFzZWxlY3RlZFN0b3JlSWRMaXN0LmluY2x1ZGVzKHNlbGVjdGVkU3RvcmUudG9TdHJpbmcoKSBhcyBuZXZlcikpIHtcclxuICAgICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgICAgIHNlbGVjdGVkU3RvcmU6IHNlbGVjdGVkU3RvcmVMaXN0WzBdLmRvY0NvZGUsXHJcbiAgICAgICAgICAgIGluZGV4OiAwXHJcbiAgICAgICAgICB9KVxyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc29sZS5sb2coJ+mhtemdonNob3fml7Yg5paw5bu65rS75Yqo6aG15b2T5YmN55qEc2VsZWN0ZWRTdG9yZScsdGhpcy5kYXRhLnNlbGVjdGVkU3RvcmUsdGhpcy5kYXRhLmluZGV4KTtcclxuICAgICAgfVxyXG4gICAgICBjb25zb2xlLmxvZygnPDw8PDw8PDw8PDw8PDw86Zeo5bqX57uE5Lu26aG16Z2ic2hvd+e7k+adnzw8PDw8PDw8PDw8PDw8PCcpO1xyXG4gICAgfVxyXG4gIH0sXHJcbiAgb2JzZXJ2ZXJzOiB7XHJcbiAgICAnc3RvcmVMaXN0JzogZnVuY3Rpb24odmFsKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCfnm5HlkKxzdG9yZXMnLHZhbCx0aGlzLmRhdGEuc3RvcmVMaXN0KVxyXG4gICAgICBpZiAodmFsLmxlbmd0aCA+IDApIHtcclxuICAgICAgICBsZXQgc2VsZWN0ZWRTdG9yZUxpc3QgPSB2YWw7XHJcbiAgICAgICAgbGV0IHNlbGVjdGVkU3RvcmVJZExpc3QgPSBbXSBhcyBhbnk7XHJcbiAgICAgICAgY29uc29sZS5sb2coJ+mXqOW6l+WIl+ihqHN0b3Jlc+OAguOAguOAguS4jmlk44CB44CB44CBJyxzZWxlY3RlZFN0b3JlTGlzdCxzZWxlY3RlZFN0b3JlSWRMaXN0KTtcclxuICAgICAgICBzZWxlY3RlZFN0b3JlTGlzdC5mb3JFYWNoKChpdGVtOmFueSxpbmRleDpudW1iZXIpPT57XHJcbiAgICAgICAgICBzZWxlY3RlZFN0b3JlSWRMaXN0LnB1c2goaXRlbSYmaXRlbS5kb2NDb2RlJiZpdGVtLmRvY0NvZGUudG9TdHJpbmcoKSk7XHJcbiAgICAgICAgICBpZiAoaXRlbS5pc0RlZmF1bHRTdG9yZU5hbWUpe1xyXG4gICAgICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgICAgIHNlbGVjdGVkU3RvcmU6IGl0ZW0uZG9jQ29kZSxcclxuICAgICAgICAgICAgICBpbmRleFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy5zZXREYXRhKHtzZWxlY3RlZFN0b3JlTGlzdCxzZWxlY3RlZFN0b3JlSWRMaXN0fSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgfSxcclxuICAvKipcclxuICAgKiDnu4Tku7bnmoTmlrnms5XliJfooahcclxuICAgKi9cclxuICBtZXRob2RzOiB7XHJcbiAgICBnZXRTZWxlY3RlZFN0b3JlTGlzdCgpe1xyXG4gICAgICBsZXQge3NlbGVjdGVkU3RvcmVJZExpc3R9ID0gdGhpcy5kYXRhO1xyXG4gICAgICBsZXQgc2VsZWN0ZWRTdG9yZUxpc3QgPSBbXSBhcyBhbnk7XHJcbiAgICAgIGxldCBzdG9yZUxpc3QgPSB3eC5nbG9iYWxEYXRhLnN0b3JlTGlzdDtcclxuICAgICAgc2VsZWN0ZWRTdG9yZUlkTGlzdC5mb3JFYWNoKChpZDphbnkpPT57XHJcbiAgICAgICAgc3RvcmVMaXN0LmZvckVhY2goKGl0ZW06YW55KT0+e1xyXG4gICAgICAgICAgaWYgKGl0ZW0uZG9jQ29kZSA9PSBpZCkge1xyXG4gICAgICAgICAgICBzZWxlY3RlZFN0b3JlTGlzdC5wdXNoKGl0ZW0pXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgfSlcclxuICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICBzZWxlY3RlZFN0b3JlTGlzdFxyXG4gICAgICB9KVxyXG4gICAgICByZXR1cm4gc2VsZWN0ZWRTdG9yZUxpc3Q7XHJcbiAgICB9LFxyXG5cclxuICAgIC8vIOeItue7hOS7tuiOt+WPluW+heaPkOS6pOeahOiQpemUgOS6uuWRmOaVsOaNrlxyXG4gICAgZ2V0U3RvcmVMaXN0KCl7XHJcbiAgICAgIGxldCB7IHNlbGVjdGVkU3RvcmVMaXN0LCBpbmRleH0gPSB0aGlzLmRhdGE7XHJcbiAgICAgIHNlbGVjdGVkU3RvcmVMaXN0LmZvckVhY2goKGl0ZW06YW55KT0+e1xyXG4gICAgICAgIGl0ZW0uaXNEZWZhdWx0U3RvcmVOYW1lID0gZmFsc2U7XHJcbiAgICAgIH0pXHJcbiAgICAgIGlmIChpbmRleCA+PTAmJnNlbGVjdGVkU3RvcmVMaXN0Lmxlbmd0aD4wKXtcclxuICAgICAgICBzZWxlY3RlZFN0b3JlTGlzdFtpbmRleF0uaXNEZWZhdWx0U3RvcmVOYW1lID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBjb25zb2xlLmxvZygn5b6F5o+Q5Lqk55qE6Zeo5bqX5pWw5o2uJyxzZWxlY3RlZFN0b3JlTGlzdCk7XHJcbiAgICAgIHJldHVybiBzZWxlY3RlZFN0b3JlTGlzdDtcclxuICAgIH0sXHJcbiAgICBhZGRTdG9yZSgpe1xyXG4gICAgICB3eC5uYXZpZ2F0ZVRvKHtcclxuICAgICAgICB1cmw6IGAvcGFnZXMvc3RvcmVMaXN0L3N0b3JlTGlzdGAsXHJcbiAgICAgICAgc3VjY2VzczogKHJlcyk9PiB7XHJcbiAgICAgICAgICBsZXQgc2VsZWN0ZWRTdG9yZUlkTGlzdCA9IHRoaXMuZGF0YS5zZWxlY3RlZFN0b3JlSWRMaXN0O1xyXG4gICAgICAgICAgY29uc29sZS5sb2coJ+aWsOW7uua0u+WKqOmhteW9k+WJjeeahHNlbGVjdGVkU3RvcmVJZExpc3QnLHNlbGVjdGVkU3RvcmVJZExpc3QpO1xyXG4gICAgICAgICAgLy8g6YCa6L+HZXZlbnRDaGFubmVs5ZCR6KKr5omT5byA6aG16Z2i5Lyg6YCB5pWw5o2uXHJcbiAgICAgICAgICByZXMuZXZlbnRDaGFubmVsLmVtaXQoJ2dldFN0b3JlTGlzdEZyb21Qcm9tb3Rpb25zUGFnZScsIHtcclxuICAgICAgICAgICAgc2VsZWN0ZWRTdG9yZUlkTGlzdFxyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9LFxyXG4gICAgICAgIGV2ZW50czoge1xyXG4gICAgICAgICAgLy8g5Li65oyH5a6a5LqL5Lu25re75Yqg5LiA5Liq55uR5ZCs5Zmo77yM6I635Y+W6KKr5omT5byA6aG16Z2i5Lyg6YCB5Yiw5b2T5YmN6aG16Z2i55qE5pWw5o2uXHJcbiAgICAgICAgICBnZXRTZWxlY3RlZFN0b3JlTGlzdDogKGRhdGE6IGFueSk9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCfojrflj5bpl6jlupfpgInmi6npobXpgInkuK3nmoRkYXRhJyxkYXRhKVxyXG4gICAgICAgICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgICAgICAgIHNlbGVjdGVkU3RvcmVJZExpc3Q6ZGF0YS5zZWxlY3RlZFN0b3JlSWRMaXN0LFxyXG4gICAgICAgICAgICAgIC8vIHNlbGVjdGVkU3RvcmVMaXN0OmRhdGEuc2VsZWN0ZWRTdG9yZUxpc3RcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gIH1cclxufSlcclxuIl19