@hyper.software/common-helpers 2.2.66 → 2.2.67

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.
@@ -54,7 +54,7 @@ exports.calculateDynamicPricing = void 0;
54
54
  var moment_1 = __importDefault(require("moment"));
55
55
  var dateService_1 = require("../dateService/dateService");
56
56
  var calculateDynamicPricing = function (_a) { return __awaiter(void 0, [_a], void 0, function (_b) {
57
- var basePriceMap, resultPricing, period, holidayDateSet, _i, period_1, dateStr, date, userPrice, basePrice, effectiveBase, isHoliday, increase, newPrice;
57
+ var basePriceMap, resultPricing, period, holidayDateSet, _i, period_1, dateStr, date, manualPrice, basePrice, isManual, effectiveBase, isHoliday, increase, newPrice;
58
58
  var currentPricing = _b.currentPricing, dynamicPricing = _b.dynamicPricing, existingBasePriceMap = _b.existingBasePriceMap, company = _b.company, roomTypeId = _b.roomTypeId, companyId = _b.companyId, getRoomTypesAvailability = _b.getRoomTypesAvailability, getRoomsByCompanyId = _b.getRoomsByCompanyId;
59
59
  return __generator(this, function (_c) {
60
60
  switch (_c.label) {
@@ -79,15 +79,18 @@ var calculateDynamicPricing = function (_a) { return __awaiter(void 0, [_a], voi
79
79
  date = (0, moment_1.default)((0, dateService_1.normalizeDate)(dateStr));
80
80
  if (!date.isValid())
81
81
  continue;
82
- userPrice = currentPricing[dateStr];
83
- basePrice = existingBasePriceMap[dateStr];
84
- // If user manually changed it, keep it
85
- if (userPrice != null && basePrice != null && userPrice !== basePrice) {
86
- resultPricing[dateStr] = userPrice;
87
- basePriceMap[dateStr] = basePrice;
82
+ manualPrice = currentPricing[dateStr] // user's input
83
+ ;
84
+ basePrice = existingBasePriceMap[dateStr] // stored original base
85
+ ;
86
+ isManual = manualPrice != null && basePrice != null && manualPrice !== basePrice;
87
+ // If user changed it → always use manual price
88
+ if (isManual || (basePrice == null && manualPrice != null)) {
89
+ resultPricing[dateStr] = manualPrice;
90
+ basePriceMap[dateStr] = manualPrice; // record it as base for future
88
91
  continue;
89
92
  }
90
- effectiveBase = basePrice != null ? basePrice : userPrice;
93
+ effectiveBase = basePrice != null ? basePrice : manualPrice;
91
94
  if (effectiveBase == null)
92
95
  continue;
93
96
  basePriceMap[dateStr] = effectiveBase;
@@ -98,6 +101,7 @@ var calculateDynamicPricing = function (_a) { return __awaiter(void 0, [_a], voi
98
101
  resultPricing[dateStr] = Math.round(newPrice);
99
102
  }
100
103
  else {
104
+ // ⛔ Dynamic is disabled or date is not a holiday → use base
101
105
  resultPricing[dateStr] = effectiveBase;
102
106
  }
103
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dynamicPricingService.js","sourceRoot":"","sources":["../../../src/services/dynamicPricingService/dynamicPricingService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dynamicPricingService.js","sourceRoot":"","sources":["../../../src/services/dynamicPricingService/dynamicPricingService.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hyper.software/common-helpers",
3
- "version": "2.2.66",
3
+ "version": "2.2.67",
4
4
  "author": "Raul Tomescu <tomescu.raul+hyper@gmail.com>",
5
5
  "description": "Hyper Software Common Javascript Helpers",
6
6
  "main": "lib/index.js",