index.js 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. var component_1 = require('./../common/component.js');
  4. var button_1 = require('./../mixins/button.js');
  5. var open_type_1 = require('./../mixins/open-type.js');
  6. component_1.VantComponent({
  7. mixins: [button_1.button, open_type_1.openType],
  8. props: {
  9. show: Boolean,
  10. title: String,
  11. message: String,
  12. useSlot: Boolean,
  13. className: String,
  14. customStyle: String,
  15. asyncClose: Boolean,
  16. messageAlign: String,
  17. showCancelButton: Boolean,
  18. closeOnClickOverlay: Boolean,
  19. confirmButtonOpenType: String,
  20. zIndex: {
  21. type: Number,
  22. value: 2000
  23. },
  24. confirmButtonText: {
  25. type: String,
  26. value: '确认'
  27. },
  28. cancelButtonText: {
  29. type: String,
  30. value: '取消'
  31. },
  32. showConfirmButton: {
  33. type: Boolean,
  34. value: true
  35. },
  36. overlay: {
  37. type: Boolean,
  38. value: true
  39. },
  40. transition: {
  41. type: String,
  42. value: 'scale'
  43. }
  44. },
  45. data: {
  46. loading: {
  47. confirm: false,
  48. cancel: false
  49. }
  50. },
  51. watch: {
  52. show: function show(_show) {
  53. !_show && this.stopLoading();
  54. }
  55. },
  56. methods: {
  57. onConfirm: function onConfirm() {
  58. this.handleAction('confirm');
  59. },
  60. onCancel: function onCancel() {
  61. this.handleAction('cancel');
  62. },
  63. onClickOverlay: function onClickOverlay() {
  64. this.onClose('overlay');
  65. },
  66. handleAction: function handleAction(action) {
  67. var _a;
  68. if (this.data.asyncClose) {
  69. this.set((_a = {}, _a["loading." + action] = true, _a));
  70. }
  71. this.onClose(action);
  72. },
  73. close: function close() {
  74. this.set({
  75. show: false
  76. });
  77. },
  78. stopLoading: function stopLoading() {
  79. this.set({
  80. loading: {
  81. confirm: false,
  82. cancel: false
  83. }
  84. });
  85. },
  86. onClose: function onClose(action) {
  87. if (!this.data.asyncClose) {
  88. this.close();
  89. }
  90. this.$emit('close', action);
  91. // 把 dialog 实例传递出去,可以通过 stopLoading() 在外部关闭按钮的 loading
  92. this.$emit(action, { dialog: this });
  93. var callback = this.data[action === 'confirm' ? 'onConfirm' : 'onCancel'];
  94. if (callback) {
  95. callback(this);
  96. }
  97. }
  98. }
  99. });
  100. //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbIk9iamVjdCIsInZhbHVlIiwiY29tcG9uZW50XzEiLCJyZXF1aXJlIiwiYnV0dG9uXzEiLCJvcGVuX3R5cGVfMSIsIm1peGlucyIsInByb3BzIiwic2hvdyIsInRpdGxlIiwibWVzc2FnZSIsInVzZVNsb3QiLCJjbGFzc05hbWUiLCJjdXN0b21TdHlsZSIsImFzeW5jQ2xvc2UiLCJtZXNzYWdlQWxpZ24iLCJzaG93Q2FuY2VsQnV0dG9uIiwiY2xvc2VPbkNsaWNrT3ZlcmxheSIsImNvbmZpcm1CdXR0b25PcGVuVHlwZSIsInpJbmRleCIsInR5cGUiLCJjb25maXJtQnV0dG9uVGV4dCIsImNhbmNlbEJ1dHRvblRleHQiLCJzaG93Q29uZmlybUJ1dHRvbiIsIm92ZXJsYXkiLCJ0cmFuc2l0aW9uIiwiZGF0YSIsImxvYWRpbmciLCJjb25maXJtIiwiY2FuY2VsIiwid2F0Y2giLCJtZXRob2RzIiwib25Db25maXJtIiwib25DYW5jZWwiLCJvbkNsaWNrT3ZlcmxheSIsImhhbmRsZUFjdGlvbiIsIl9hIiwiY2xvc2UiLCJzdG9wTG9hZGluZyIsIm9uQ2xvc2UiLCJkaWFsb2ciLCJjYWxsYmFjayIsImFjdGlvbiJdLCJtYXBwaW5ncyI6Ijs7QUFDQUEsT0FBQUEsY0FBQUEsQ0FBQUEsT0FBQUEsRUFBQUEsWUFBQUEsRUFBNkMsRUFBRUMsT0FBL0NELElBQTZDLEVBQTdDQTtBQUNBLElBQUlFLGNBQWNDLFFBQWxCLDBCQUFrQkEsQ0FBbEI7QUFDQSxJQUFJQyxXQUFXRCxRQUFmLHVCQUFlQSxDQUFmO0FBQ0EsSUFBSUUsY0FBY0YsUUFBbEIsMEJBQWtCQSxDQUFsQjtBQUNBRCxZQUFBQSxhQUFBQSxDQUEwQjtBQUN0QkksWUFBUSxDQUFDRixTQUFELE1BQUEsRUFBa0JDLFlBREosUUFDZCxDQURjO0FBRXRCRSxXQUFPO0FBQ0hDLGNBREcsT0FBQTtBQUVIQyxlQUZHLE1BQUE7QUFHSEMsaUJBSEcsTUFBQTtBQUlIQyxpQkFKRyxPQUFBO0FBS0hDLG1CQUxHLE1BQUE7QUFNSEMscUJBTkcsTUFBQTtBQU9IQyxvQkFQRyxPQUFBO0FBUUhDLHNCQVJHLE1BQUE7QUFTSEMsMEJBVEcsT0FBQTtBQVVIQyw2QkFWRyxPQUFBO0FBV0hDLCtCQVhHLE1BQUE7QUFZSEMsZ0JBQVE7QUFDSkMsa0JBREksTUFBQTtBQUVKbkIsbUJBQU87QUFGSCxTQVpMO0FBZ0JIb0IsMkJBQW1CO0FBQ2ZELGtCQURlLE1BQUE7QUFFZm5CLG1CQUFPO0FBRlEsU0FoQmhCO0FBb0JIcUIsMEJBQWtCO0FBQ2RGLGtCQURjLE1BQUE7QUFFZG5CLG1CQUFPO0FBRk8sU0FwQmY7QUF3QkhzQiwyQkFBbUI7QUFDZkgsa0JBRGUsT0FBQTtBQUVmbkIsbUJBQU87QUFGUSxTQXhCaEI7QUE0Qkh1QixpQkFBUztBQUNMSixrQkFESyxPQUFBO0FBRUxuQixtQkFBTztBQUZGLFNBNUJOO0FBZ0NId0Isb0JBQVk7QUFDUkwsa0JBRFEsTUFBQTtBQUVSbkIsbUJBQU87QUFGQztBQWhDVCxLQUZlO0FBdUN0QnlCLFVBQU07QUFDRkMsaUJBQVM7QUFDTEMscUJBREssS0FBQTtBQUVMQyxvQkFBUTtBQUZIO0FBRFAsS0F2Q2dCO0FBNkN0QkMsV0FBTztBQUNIdEIsY0FBTSxTQUFBLElBQUEsQ0FBQSxLQUFBLEVBQWdCO0FBQ2xCLGFBQUEsS0FBQSxJQUFTLEtBQVQsV0FBUyxFQUFUO0FBQ0g7QUFIRSxLQTdDZTtBQWtEdEJ1QixhQUFTO0FBQ0xDLG1CQUFXLFNBQUEsU0FBQSxHQUFZO0FBQ25CLGlCQUFBLFlBQUEsQ0FBQSxTQUFBO0FBRkMsU0FBQTtBQUlMQyxrQkFBVSxTQUFBLFFBQUEsR0FBWTtBQUNsQixpQkFBQSxZQUFBLENBQUEsUUFBQTtBQUxDLFNBQUE7QUFPTEMsd0JBQWdCLFNBQUEsY0FBQSxHQUFZO0FBQ3hCLGlCQUFBLE9BQUEsQ0FBQSxTQUFBO0FBUkMsU0FBQTtBQVVMQyxzQkFBYyxTQUFBLFlBQUEsQ0FBQSxNQUFBLEVBQWtCO0FBQzVCLGdCQUFBLEVBQUE7QUFDQSxnQkFBSSxLQUFBLElBQUEsQ0FBSixVQUFBLEVBQTBCO0FBQ3RCLHFCQUFBLEdBQUEsRUFBVUMsS0FBQUEsRUFBQUEsRUFDTkEsR0FBRyxhQUFIQSxNQUFBQSxJQURNQSxJQUFBQSxFQUFWLEVBQUE7QUFHSDtBQUNELGlCQUFBLE9BQUEsQ0FBQSxNQUFBO0FBakJDLFNBQUE7QUFtQkxDLGVBQU8sU0FBQSxLQUFBLEdBQVk7QUFDZixpQkFBQSxHQUFBLENBQVM7QUFDTDdCLHNCQUFNO0FBREQsYUFBVDtBQXBCQyxTQUFBO0FBd0JMOEIscUJBQWEsU0FBQSxXQUFBLEdBQVk7QUFDckIsaUJBQUEsR0FBQSxDQUFTO0FBQ0xYLHlCQUFTO0FBQ0xDLDZCQURLLEtBQUE7QUFFTEMsNEJBQVE7QUFGSDtBQURKLGFBQVQ7QUF6QkMsU0FBQTtBQWdDTFUsaUJBQVMsU0FBQSxPQUFBLENBQUEsTUFBQSxFQUFrQjtBQUN2QixnQkFBSSxDQUFDLEtBQUEsSUFBQSxDQUFMLFVBQUEsRUFBMkI7QUFDdkIscUJBQUEsS0FBQTtBQUNIO0FBQ0QsaUJBQUEsS0FBQSxDQUFBLE9BQUEsRUFBQSxNQUFBO0FBQ0E7QUFDQSxpQkFBQSxLQUFBLENBQUEsTUFBQSxFQUFtQixFQUFFQyxRQUFyQixJQUFtQixFQUFuQjtBQUNBLGdCQUFJQyxXQUFXLEtBQUEsSUFBQSxDQUFVQyxXQUFBQSxTQUFBQSxHQUFBQSxXQUFBQSxHQUF6QixVQUFlLENBQWY7QUFDQSxnQkFBQSxRQUFBLEVBQWM7QUFDVkQseUJBQUFBLElBQUFBO0FBQ0g7QUFDSjtBQTNDSTtBQWxEYSxDQUExQnZDIiwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG52YXIgY29tcG9uZW50XzEgPSByZXF1aXJlKFwiLi4vY29tbW9uL2NvbXBvbmVudFwiKTtcbnZhciBidXR0b25fMSA9IHJlcXVpcmUoXCIuLi9taXhpbnMvYnV0dG9uXCIpO1xudmFyIG9wZW5fdHlwZV8xID0gcmVxdWlyZShcIi4uL21peGlucy9vcGVuLXR5cGVcIik7XG5jb21wb25lbnRfMS5WYW50Q29tcG9uZW50KHtcbiAgICBtaXhpbnM6IFtidXR0b25fMS5idXR0b24sIG9wZW5fdHlwZV8xLm9wZW5UeXBlXSxcbiAgICBwcm9wczoge1xuICAgICAgICBzaG93OiBCb29sZWFuLFxuICAgICAgICB0aXRsZTogU3RyaW5nLFxuICAgICAgICBtZXNzYWdlOiBTdHJpbmcsXG4gICAgICAgIHVzZVNsb3Q6IEJvb2xlYW4sXG4gICAgICAgIGNsYXNzTmFtZTogU3RyaW5nLFxuICAgICAgICBjdXN0b21TdHlsZTogU3RyaW5nLFxuICAgICAgICBhc3luY0Nsb3NlOiBCb29sZWFuLFxuICAgICAgICBtZXNzYWdlQWxpZ246IFN0cmluZyxcbiAgICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogQm9vbGVhbixcbiAgICAgICAgY2xvc2VPbkNsaWNrT3ZlcmxheTogQm9vbGVhbixcbiAgICAgICAgY29uZmlybUJ1dHRvbk9wZW5UeXBlOiBTdHJpbmcsXG4gICAgICAgIHpJbmRleDoge1xuICAgICAgICAgICAgdHlwZTogTnVtYmVyLFxuICAgICAgICAgICAgdmFsdWU6IDIwMDBcbiAgICAgICAgfSxcbiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHZhbHVlOiAn56Gu6K6kJ1xuICAgICAgICB9LFxuICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICB2YWx1ZTogJ+WPlua2iCdcbiAgICAgICAgfSxcbiAgICAgICAgc2hvd0NvbmZpcm1CdXR0b246IHtcbiAgICAgICAgICAgIHR5cGU6IEJvb2xlYW4sXG4gICAgICAgICAgICB2YWx1ZTogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICBvdmVybGF5OiB7XG4gICAgICAgICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgICAgICAgdmFsdWU6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgdHJhbnNpdGlvbjoge1xuICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgdmFsdWU6ICdzY2FsZSdcbiAgICAgICAgfVxuICAgIH0sXG4gICAgZGF0YToge1xuICAgICAgICBsb2FkaW5nOiB7XG4gICAgICAgICAgICBjb25maXJtOiBmYWxzZSxcbiAgICAgICAgICAgIGNhbmNlbDogZmFsc2VcbiAgICAgICAgfVxuICAgIH0sXG4gICAgd2F0Y2g6IHtcbiAgICAgICAgc2hvdzogZnVuY3Rpb24gKHNob3cpIHtcbiAgICAgICAgICAgICFzaG93ICYmIHRoaXMuc3RvcExvYWRpbmcoKTtcbiAgICAgICAgfVxuICAgIH0sXG4gICAgbWV0aG9kczoge1xuICAgICAgICBvbkNvbmZpcm06IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlQWN0aW9uKCdjb25maXJtJyk7XG4gICAgICAgIH0sXG4gICAgICAgIG9uQ2FuY2VsOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZUFjdGlvbignY2FuY2VsJyk7XG4gICAgICAgIH0sXG4gICAgICAgIG9uQ2xpY2tPdmVybGF5OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB0aGlzLm9uQ2xvc2UoJ292ZXJsYXknKTtcbiAgICAgICAgfSxcbiAgICAgICAgaGFuZGxlQWN0aW9uOiBmdW5jdGlvbiAoYWN0aW9uKSB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBpZiAodGhpcy5kYXRhLmFzeW5jQ2xvc2UpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldCgoX2EgPSB7fSxcbiAgICAgICAgICAgICAgICAgICAgX2FbXCJsb2FkaW5nLlwiICsgYWN0aW9uXSA9IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIF9hKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLm9uQ2xvc2UoYWN0aW9uKTtcbiAgICAgICAgfSxcbiAgICAgICAgY2xvc2U6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0KHtcbiAgICAgICAgICAgICAgICBzaG93OiBmYWxzZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHN0b3BMb2FkaW5nOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB0aGlzLnNldCh7XG4gICAgICAgICAgICAgICAgbG9hZGluZzoge1xuICAgICAgICAgICAgICAgICAgICBjb25maXJtOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgY2FuY2VsOiBmYWxzZVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICBvbkNsb3NlOiBmdW5jdGlvbiAoYWN0aW9uKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZGF0YS5hc3luY0Nsb3NlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy4kZW1pdCgnY2xvc2UnLCBhY3Rpb24pO1xuICAgICAgICAgICAgLy8g5oqKIGRpYWxvZyDlrp7kvovkvKDpgJLlh7rljrvvvIzlj6/ku6XpgJrov4cgc3RvcExvYWRpbmcoKSDlnKjlpJbpg6jlhbPpl63mjInpkq7nmoQgbG9hZGluZ1xuICAgICAgICAgICAgdGhpcy4kZW1pdChhY3Rpb24sIHsgZGlhbG9nOiB0aGlzIH0pO1xuICAgICAgICAgICAgdmFyIGNhbGxiYWNrID0gdGhpcy5kYXRhW2FjdGlvbiA9PT0gJ2NvbmZpcm0nID8gJ29uQ29uZmlybScgOiAnb25DYW5jZWwnXTtcbiAgICAgICAgICAgIGlmIChjYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIGNhbGxiYWNrKHRoaXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSk7XG4iXSwiZmlsZSI6ImluZGV4LmpzIn0=