@pisell/pisellos 2.0.19 → 2.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/modules/Account/index.d.ts +1 -0
  2. package/dist/modules/Account/index.js +6 -0
  3. package/dist/modules/Account/types.d.ts +2 -0
  4. package/dist/modules/AccountList/index.d.ts +1 -0
  5. package/dist/modules/AccountList/index.js +7 -0
  6. package/dist/modules/Date/utils.js +12 -1
  7. package/dist/modules/Product/index.d.ts +1 -0
  8. package/dist/modules/Product/index.js +6 -0
  9. package/dist/modules/ProductList/index.js +21 -9
  10. package/dist/modules/Rules/index.js +4 -2
  11. package/dist/modules/Schedule/utils.js +10 -1
  12. package/dist/plugins/user.d.ts +7 -0
  13. package/dist/plugins/user.js +1 -0
  14. package/dist/solution/BookingByStep/index.d.ts +1 -0
  15. package/dist/solution/BookingByStep/index.js +425 -255
  16. package/dist/solution/BookingByStep/utils/resources.d.ts +5 -0
  17. package/dist/solution/BookingByStep/utils/resources.js +22 -4
  18. package/lib/modules/Account/index.d.ts +1 -0
  19. package/lib/modules/Account/index.js +4 -0
  20. package/lib/modules/Account/types.d.ts +2 -0
  21. package/lib/modules/AccountList/index.d.ts +1 -0
  22. package/lib/modules/AccountList/index.js +3 -0
  23. package/lib/modules/Date/utils.js +7 -0
  24. package/lib/modules/Product/index.d.ts +1 -0
  25. package/lib/modules/Product/index.js +3 -0
  26. package/lib/modules/ProductList/index.js +16 -2
  27. package/lib/modules/Rules/index.js +2 -2
  28. package/lib/modules/Schedule/utils.js +5 -1
  29. package/lib/plugins/user.d.ts +7 -0
  30. package/lib/plugins/user.js +17 -0
  31. package/lib/solution/BookingByStep/index.d.ts +1 -0
  32. package/lib/solution/BookingByStep/index.js +96 -5
  33. package/lib/solution/BookingByStep/utils/resources.d.ts +5 -0
  34. package/lib/solution/BookingByStep/utils/resources.js +17 -4
  35. package/package.json +1 -1
@@ -22,4 +22,5 @@ export declare class AccountModule extends BaseModule implements Module {
22
22
  setAccountInfo(account: Account): void;
23
23
  setActive(active: boolean): void;
24
24
  isActive(): boolean;
25
+ isLogin(): boolean;
25
26
  }
@@ -162,6 +162,12 @@ export var AccountModule = /*#__PURE__*/function (_BaseModule) {
162
162
  value: function isActive() {
163
163
  return this.store.active;
164
164
  }
165
+ }, {
166
+ key: "isLogin",
167
+ value: function isLogin() {
168
+ var _this$store$accountIn2;
169
+ return ((_this$store$accountIn2 = this.store.accountInfo) === null || _this$store$accountIn2 === void 0 ? void 0 : _this$store$accountIn2.isLogin) || false;
170
+ }
165
171
  }]);
166
172
  return AccountModule;
167
173
  }(BaseModule);
@@ -27,6 +27,8 @@ export interface Account {
27
27
  type?: 'account' | 'holder';
28
28
  /** 账户信息原始数据 */
29
29
  _origin?: Record<string, any>;
30
+ /** 是否是登录账号 */
31
+ isLogin?: boolean;
30
32
  }
31
33
  /**
32
34
  * 账户模块状态
@@ -42,4 +42,5 @@ export declare class AccountListModule extends BaseModule implements Module {
42
42
  * @param params
43
43
  */
44
44
  fetchHolderAccounts(params: IFetchHolderAccountsParams): Promise<void>;
45
+ getLoginAccount(): AccountModule | undefined;
45
46
  }
@@ -554,6 +554,13 @@ export var AccountListModule = /*#__PURE__*/function (_BaseModule) {
554
554
  }
555
555
  return fetchHolderAccounts;
556
556
  }())
557
+ }, {
558
+ key: "getLoginAccount",
559
+ value: function getLoginAccount() {
560
+ return this.store.accounts.find(function (n) {
561
+ return n.isLogin();
562
+ });
563
+ }
557
564
  }]);
558
565
  return AccountListModule;
559
566
  }(BaseModule);
@@ -209,7 +209,18 @@ export var handleAvailableDatesByRules = function handleAvailableDatesByRules(da
209
209
  var disabledDate = _objectSpread(_objectSpread({}, date), {}, {
210
210
  status: 'unavailable'
211
211
  });
212
-
212
+ var hasScheduleConfig = rules.find(function (n) {
213
+ var _n$schedule;
214
+ return (_n$schedule = n.schedule) === null || _n$schedule === void 0 ? void 0 : _n$schedule.length;
215
+ });
216
+ // 如果外面穿了 schedule,但是这个时候scheduleMap为空,则设置为不可用
217
+ // 这种情况为,商品设置了 5.1-5.31 可用,资源设置了 5.1-6.30 可用,session 类商品详情弹窗里里看到的6 月以后的日期都应该是不可用的
218
+ if (Object.keys(scheduleMap).length === 0 && hasScheduleConfig) {
219
+ return _objectSpread(_objectSpread({}, date), {}, {
220
+ color: '',
221
+ status: 'unavailable'
222
+ });
223
+ }
213
224
  // 根据日程判断日期是否可用
214
225
  if (Object.keys(scheduleMap).length) {
215
226
  var schedule = scheduleMap[date.date];
@@ -18,6 +18,7 @@ export declare class Product extends BaseModule implements Module {
18
18
  protected otherParams: any;
19
19
  constructor(name?: string, version?: string);
20
20
  initialize(core: PisellCore, options: any): Promise<void>;
21
+ updateData(data: ProductData): void;
21
22
  /**
22
23
  * 获取商品数据
23
24
  */
@@ -62,6 +62,12 @@ export var Product = /*#__PURE__*/function (_BaseModule) {
62
62
  }
63
63
  return initialize;
64
64
  }()
65
+ }, {
66
+ key: "updateData",
67
+ value: function updateData(data) {
68
+ Object.assign(this.store, data);
69
+ }
70
+
65
71
  /**
66
72
  * 获取商品数据
67
73
  */
@@ -1,10 +1,4 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
3
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
5
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
6
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
7
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
8
2
  function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
9
3
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
10
4
  function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
@@ -78,12 +72,15 @@ export var ProductList = /*#__PURE__*/function (_BaseModule) {
78
72
  while (1) switch (_context2.prev = _context2.next) {
79
73
  case 0:
80
74
  (_this$store$list = this.store.list) === null || _this$store$list === void 0 || _this$store$list.forEach(function (product) {
81
- if (!_this2.store.productMap.has("product-".concat(product.id))) {
75
+ var productModule = _this2.store.productMap.get("product-".concat(product.id));
76
+ if (!productModule) {
82
77
  var newProductModule = new Product("product_".concat(product.id.toString()));
83
78
  _this2.core.registerModule(newProductModule, {
84
79
  initialState: product
85
80
  });
86
81
  _this2.store.productMap.set(product.id.toString(), newProductModule);
82
+ } else {
83
+ productModule.updateData(product);
87
84
  }
88
85
  });
89
86
  case 1:
@@ -153,12 +150,27 @@ export var ProductList = /*#__PURE__*/function (_BaseModule) {
153
150
  key: "addProduct",
154
151
  value: function () {
155
152
  var _addProduct = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(products) {
153
+ var _this3 = this;
156
154
  return _regeneratorRuntime().wrap(function _callee5$(_context5) {
157
155
  while (1) switch (_context5.prev = _context5.next) {
158
156
  case 0:
159
157
  // 加到 list 以后上面的storeChange 会自动初始化商品详情的 module 实例
160
- this.store.list = [].concat(_toConsumableArray(this.store.list), _toConsumableArray(products));
161
- case 1:
158
+ // list 需要根据 id 去重
159
+ if (!this.store.list) {
160
+ this.store.list = [];
161
+ }
162
+ products.forEach(function (n) {
163
+ var index = _this3.store.list.findIndex(function (m) {
164
+ return m.id === n.id;
165
+ });
166
+ if (index === -1) {
167
+ _this3.store.list.push(n);
168
+ } else {
169
+ _this3.store.list[index] = n;
170
+ }
171
+ });
172
+ this.storeChange();
173
+ case 3:
162
174
  case "end":
163
175
  return _context5.stop();
164
176
  }
@@ -243,7 +243,7 @@ export var RulesModule = /*#__PURE__*/function (_BaseModule) {
243
243
 
244
244
  // 然后再处理应用哪些优惠券,此时只考虑filteredDiscountList中的优惠券
245
245
  sortedProductList.forEach(function (originProduct) {
246
- var _product$discount_lis3, _product$discount_lis4, _product$discount_lis5;
246
+ var _product$discount_lis3, _product$discount_lis4, _product$discount_lis5, _product$discount_lis6, _product$discount_lis7;
247
247
  var product = _this3.hooks.getProduct(originProduct);
248
248
  if (product !== null && product !== void 0 && product.booking_id && (_product$discount_lis3 = product.discount_list) !== null && _product$discount_lis3 !== void 0 && _product$discount_lis3.length && product !== null && product !== void 0 && (_product$discount_lis4 = product.discount_list) !== null && _product$discount_lis4 !== void 0 && _product$discount_lis4.every(function (discount) {
249
249
  return discount.id && discount.type === 'good_pass';
@@ -271,7 +271,9 @@ export var RulesModule = /*#__PURE__*/function (_BaseModule) {
271
271
  var selectedDiscount = applicableDiscounts[0];
272
272
 
273
273
  // 如果是手动折扣,则不适用优惠券
274
- var isManualDiscount = typeof product.isManualDiscount === 'boolean' ? product.isManualDiscount : product.total != product.origin_total && !((_product$discount_lis5 = product.discount_list) !== null && _product$discount_lis5 !== void 0 && _product$discount_lis5.length);
274
+ var isManualDiscount = typeof product.isManualDiscount === 'boolean' ? product.isManualDiscount : product.total != product.origin_total && (!((_product$discount_lis5 = product.discount_list) !== null && _product$discount_lis5 !== void 0 && _product$discount_lis5.length) || (product === null || product === void 0 || (_product$discount_lis6 = product.discount_list) === null || _product$discount_lis6 === void 0 || (_product$discount_lis7 = _product$discount_lis6.every) === null || _product$discount_lis7 === void 0 ? void 0 : _product$discount_lis7.call(_product$discount_lis6, function (item) {
275
+ return item.type === 'product';
276
+ })));
275
277
 
276
278
  // 勾选时覆盖手动折扣
277
279
  if (options !== null && options !== void 0 && options.discountId && (options === null || options === void 0 ? void 0 : options.discountId) === (selectedDiscount === null || selectedDiscount === void 0 ? void 0 : selectedDiscount.id)) {
@@ -716,7 +716,7 @@ export function getAllSortedDateRanges(schedules) {
716
716
  }
717
717
 
718
718
  // 按照开始时间和时长排序
719
- return allDateRanges.sort(function (a, b) {
719
+ var sortedDateRanges = allDateRanges.sort(function (a, b) {
720
720
  // 首先按开始时间排序
721
721
  var startTimeCompare = dayjs(a.start).valueOf() - dayjs(b.start).valueOf();
722
722
  if (startTimeCompare !== 0) return startTimeCompare;
@@ -726,4 +726,13 @@ export function getAllSortedDateRanges(schedules) {
726
726
  var durationB = dayjs(b.end).valueOf() - dayjs(b.start).valueOf();
727
727
  return durationA - durationB;
728
728
  });
729
+
730
+ // 排序完了,还需要做个去重,如果有开始时间结束时间完全一致的,则只保留一个
731
+ // 需要使用 dayjs 的 isSame 方法来判断
732
+ var uniqueDateRanges = sortedDateRanges.filter(function (range, index, self) {
733
+ return index === self.findIndex(function (t) {
734
+ return dayjs(t.start).isSame(dayjs(range.start)) && dayjs(t.end).isSame(dayjs(range.end));
735
+ });
736
+ });
737
+ return uniqueDateRanges;
729
738
  }
@@ -0,0 +1,7 @@
1
+ import { Plugin } from '../types';
2
+ /**
3
+ * UserPlugin 接口定义
4
+ */
5
+ export interface UserPlugin extends Plugin {
6
+ get(): Record<string, any>;
7
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -54,6 +54,7 @@ export declare class BookingByStepImpl extends BaseModule implements Module {
54
54
  product_ids?: number[];
55
55
  category_ids?: number[];
56
56
  }): Promise<any>;
57
+ updateQuotationPriceAndCart(date: string): Promise<void>;
57
58
  loadAllSchedule(): Promise<void>;
58
59
  loadScheduleAvailableDate({ startDate, endDate, custom_page_id, channel, }: {
59
60
  startDate: string;