hububb-saas-shared 1.2.12 → 1.2.14

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.
@@ -11,3 +11,5 @@ export * from "./revenue-manager-run-log";
11
11
  export * from "./property-manager-config";
12
12
  export * from "./property-manager-session";
13
13
  export * from "./property-manager-suggestion";
14
+ export * from "./revenue-manager-config-period";
15
+ export * from "./revenue-manager-seasonal-period";
@@ -27,3 +27,5 @@ __exportStar(require("./revenue-manager-run-log"), exports);
27
27
  __exportStar(require("./property-manager-config"), exports);
28
28
  __exportStar(require("./property-manager-session"), exports);
29
29
  __exportStar(require("./property-manager-suggestion"), exports);
30
+ __exportStar(require("./revenue-manager-config-period"), exports);
31
+ __exportStar(require("./revenue-manager-seasonal-period"), exports);
@@ -0,0 +1,127 @@
1
+ export declare const revenueManagerConfigPeriodSchema: import("zod").ZodObject<{
2
+ id: import("zod").ZodNumber;
3
+ configId: import("zod").ZodNumber;
4
+ label: import("zod").ZodOptional<import("zod").ZodString>;
5
+ startDate: import("zod").ZodString;
6
+ endDate: import("zod").ZodString;
7
+ basePrice: import("zod").ZodOptional<import("zod").ZodNumber>;
8
+ minPrice: import("zod").ZodOptional<import("zod").ZodNumber>;
9
+ maxPrice: import("zod").ZodOptional<import("zod").ZodNumber>;
10
+ currency: import("zod").ZodOptional<import("zod").ZodString>;
11
+ strategy: import("zod").ZodOptional<import("zod").ZodString>;
12
+ aggressiveness: import("zod").ZodOptional<import("zod").ZodNumber>;
13
+ allowOccupancyAdjustments: import("zod").ZodOptional<import("zod").ZodBoolean>;
14
+ highOccupancyThreshold: import("zod").ZodOptional<import("zod").ZodNumber>;
15
+ highOccupancyBoostPct: import("zod").ZodOptional<import("zod").ZodNumber>;
16
+ lowOccupancyThreshold: import("zod").ZodOptional<import("zod").ZodNumber>;
17
+ lowOccupancyDiscountPct: import("zod").ZodOptional<import("zod").ZodNumber>;
18
+ allowLastMinuteDiscounts: import("zod").ZodOptional<import("zod").ZodBoolean>;
19
+ lastMinuteThresholdDays: import("zod").ZodOptional<import("zod").ZodNumber>;
20
+ lastMinuteDiscountPct: import("zod").ZodOptional<import("zod").ZodNumber>;
21
+ allowWeekendPremiums: import("zod").ZodOptional<import("zod").ZodBoolean>;
22
+ weekendPremiumPct: import("zod").ZodOptional<import("zod").ZodNumber>;
23
+ allowAdvanceBookingBoost: import("zod").ZodOptional<import("zod").ZodBoolean>;
24
+ advanceBookingThresholdDays: import("zod").ZodOptional<import("zod").ZodNumber>;
25
+ advanceBookingBoostPct: import("zod").ZodOptional<import("zod").ZodNumber>;
26
+ allowMinStayAdjustments: import("zod").ZodOptional<import("zod").ZodBoolean>;
27
+ baseMinStay: import("zod").ZodOptional<import("zod").ZodNumber>;
28
+ weekendMinStay: import("zod").ZodOptional<import("zod").ZodNumber>;
29
+ highOccupancyMinStay: import("zod").ZodOptional<import("zod").ZodNumber>;
30
+ allowEventPricing: import("zod").ZodOptional<import("zod").ZodBoolean>;
31
+ eventRadiusMiles: import("zod").ZodOptional<import("zod").ZodNumber>;
32
+ eventBoostPct: import("zod").ZodOptional<import("zod").ZodNumber>;
33
+ eventMajorBoostPct: import("zod").ZodOptional<import("zod").ZodNumber>;
34
+ eventMajorCapacityThreshold: import("zod").ZodOptional<import("zod").ZodNumber>;
35
+ allowOrphanGapPricing: import("zod").ZodOptional<import("zod").ZodBoolean>;
36
+ orphanGapOneNightAdjustmentPct: import("zod").ZodOptional<import("zod").ZodNumber>;
37
+ orphanGapTwoNightAdjustmentPct: import("zod").ZodOptional<import("zod").ZodNumber>;
38
+ allowOrphanGapMinStayOverride: import("zod").ZodOptional<import("zod").ZodBoolean>;
39
+ orphanGapOneNightMinStay: import("zod").ZodOptional<import("zod").ZodNumber>;
40
+ orphanGapTwoNightMinStay: import("zod").ZodOptional<import("zod").ZodNumber>;
41
+ createdAt: import("zod").ZodDate;
42
+ updatedAt: import("zod").ZodDate;
43
+ }, "strip", import("zod").ZodTypeAny, {
44
+ id: number;
45
+ createdAt: Date;
46
+ updatedAt: Date;
47
+ startDate: string;
48
+ endDate: string;
49
+ configId: number;
50
+ currency?: string | undefined;
51
+ label?: string | undefined;
52
+ basePrice?: number | undefined;
53
+ minPrice?: number | undefined;
54
+ maxPrice?: number | undefined;
55
+ strategy?: string | undefined;
56
+ aggressiveness?: number | undefined;
57
+ allowOccupancyAdjustments?: boolean | undefined;
58
+ highOccupancyThreshold?: number | undefined;
59
+ highOccupancyBoostPct?: number | undefined;
60
+ lowOccupancyThreshold?: number | undefined;
61
+ lowOccupancyDiscountPct?: number | undefined;
62
+ allowLastMinuteDiscounts?: boolean | undefined;
63
+ lastMinuteThresholdDays?: number | undefined;
64
+ lastMinuteDiscountPct?: number | undefined;
65
+ allowWeekendPremiums?: boolean | undefined;
66
+ weekendPremiumPct?: number | undefined;
67
+ allowAdvanceBookingBoost?: boolean | undefined;
68
+ advanceBookingThresholdDays?: number | undefined;
69
+ advanceBookingBoostPct?: number | undefined;
70
+ allowMinStayAdjustments?: boolean | undefined;
71
+ baseMinStay?: number | undefined;
72
+ weekendMinStay?: number | undefined;
73
+ highOccupancyMinStay?: number | undefined;
74
+ allowEventPricing?: boolean | undefined;
75
+ eventRadiusMiles?: number | undefined;
76
+ eventBoostPct?: number | undefined;
77
+ eventMajorBoostPct?: number | undefined;
78
+ eventMajorCapacityThreshold?: number | undefined;
79
+ allowOrphanGapPricing?: boolean | undefined;
80
+ orphanGapOneNightAdjustmentPct?: number | undefined;
81
+ orphanGapTwoNightAdjustmentPct?: number | undefined;
82
+ allowOrphanGapMinStayOverride?: boolean | undefined;
83
+ orphanGapOneNightMinStay?: number | undefined;
84
+ orphanGapTwoNightMinStay?: number | undefined;
85
+ }, {
86
+ id: number;
87
+ createdAt: Date;
88
+ updatedAt: Date;
89
+ startDate: string;
90
+ endDate: string;
91
+ configId: number;
92
+ currency?: string | undefined;
93
+ label?: string | undefined;
94
+ basePrice?: number | undefined;
95
+ minPrice?: number | undefined;
96
+ maxPrice?: number | undefined;
97
+ strategy?: string | undefined;
98
+ aggressiveness?: number | undefined;
99
+ allowOccupancyAdjustments?: boolean | undefined;
100
+ highOccupancyThreshold?: number | undefined;
101
+ highOccupancyBoostPct?: number | undefined;
102
+ lowOccupancyThreshold?: number | undefined;
103
+ lowOccupancyDiscountPct?: number | undefined;
104
+ allowLastMinuteDiscounts?: boolean | undefined;
105
+ lastMinuteThresholdDays?: number | undefined;
106
+ lastMinuteDiscountPct?: number | undefined;
107
+ allowWeekendPremiums?: boolean | undefined;
108
+ weekendPremiumPct?: number | undefined;
109
+ allowAdvanceBookingBoost?: boolean | undefined;
110
+ advanceBookingThresholdDays?: number | undefined;
111
+ advanceBookingBoostPct?: number | undefined;
112
+ allowMinStayAdjustments?: boolean | undefined;
113
+ baseMinStay?: number | undefined;
114
+ weekendMinStay?: number | undefined;
115
+ highOccupancyMinStay?: number | undefined;
116
+ allowEventPricing?: boolean | undefined;
117
+ eventRadiusMiles?: number | undefined;
118
+ eventBoostPct?: number | undefined;
119
+ eventMajorBoostPct?: number | undefined;
120
+ eventMajorCapacityThreshold?: number | undefined;
121
+ allowOrphanGapPricing?: boolean | undefined;
122
+ orphanGapOneNightAdjustmentPct?: number | undefined;
123
+ orphanGapTwoNightAdjustmentPct?: number | undefined;
124
+ allowOrphanGapMinStayOverride?: boolean | undefined;
125
+ orphanGapOneNightMinStay?: number | undefined;
126
+ orphanGapTwoNightMinStay?: number | undefined;
127
+ }>;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.revenueManagerConfigPeriodSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.revenueManagerConfigPeriodSchema = (0, zod_1.object)({
6
+ id: (0, zod_1.number)().int(),
7
+ configId: (0, zod_1.number)().int(),
8
+ label: (0, zod_1.string)().optional(),
9
+ startDate: (0, zod_1.string)(),
10
+ endDate: (0, zod_1.string)(),
11
+ basePrice: (0, zod_1.number)().optional(),
12
+ minPrice: (0, zod_1.number)().optional(),
13
+ maxPrice: (0, zod_1.number)().optional(),
14
+ currency: (0, zod_1.string)().optional(),
15
+ strategy: (0, zod_1.string)().optional(),
16
+ aggressiveness: (0, zod_1.number)().int().optional(),
17
+ allowOccupancyAdjustments: (0, zod_1.boolean)().optional(),
18
+ highOccupancyThreshold: (0, zod_1.number)().int().optional(),
19
+ highOccupancyBoostPct: (0, zod_1.number)().int().optional(),
20
+ lowOccupancyThreshold: (0, zod_1.number)().int().optional(),
21
+ lowOccupancyDiscountPct: (0, zod_1.number)().int().optional(),
22
+ allowLastMinuteDiscounts: (0, zod_1.boolean)().optional(),
23
+ lastMinuteThresholdDays: (0, zod_1.number)().int().optional(),
24
+ lastMinuteDiscountPct: (0, zod_1.number)().int().optional(),
25
+ allowWeekendPremiums: (0, zod_1.boolean)().optional(),
26
+ weekendPremiumPct: (0, zod_1.number)().int().optional(),
27
+ allowAdvanceBookingBoost: (0, zod_1.boolean)().optional(),
28
+ advanceBookingThresholdDays: (0, zod_1.number)().int().optional(),
29
+ advanceBookingBoostPct: (0, zod_1.number)().int().optional(),
30
+ allowMinStayAdjustments: (0, zod_1.boolean)().optional(),
31
+ baseMinStay: (0, zod_1.number)().int().optional(),
32
+ weekendMinStay: (0, zod_1.number)().int().optional(),
33
+ highOccupancyMinStay: (0, zod_1.number)().int().optional(),
34
+ allowEventPricing: (0, zod_1.boolean)().optional(),
35
+ eventRadiusMiles: (0, zod_1.number)().int().optional(),
36
+ eventBoostPct: (0, zod_1.number)().int().optional(),
37
+ eventMajorBoostPct: (0, zod_1.number)().int().optional(),
38
+ eventMajorCapacityThreshold: (0, zod_1.number)().int().optional(),
39
+ // Orphan gap handling
40
+ allowOrphanGapPricing: (0, zod_1.boolean)().optional(),
41
+ orphanGapOneNightAdjustmentPct: (0, zod_1.number)().int().optional(),
42
+ orphanGapTwoNightAdjustmentPct: (0, zod_1.number)().int().optional(),
43
+ allowOrphanGapMinStayOverride: (0, zod_1.boolean)().optional(),
44
+ orphanGapOneNightMinStay: (0, zod_1.number)().int().optional(),
45
+ orphanGapTwoNightMinStay: (0, zod_1.number)().int().optional(),
46
+ createdAt: (0, zod_1.date)(),
47
+ updatedAt: (0, zod_1.date)(),
48
+ });
@@ -29,10 +29,18 @@ export declare const revenueManagerConfigSchema: import("zod").ZodObject<{
29
29
  eventBoostPct: import("zod").ZodNumber;
30
30
  eventMajorBoostPct: import("zod").ZodNumber;
31
31
  eventMajorCapacityThreshold: import("zod").ZodNumber;
32
+ allowOrphanGapPricing: import("zod").ZodBoolean;
33
+ orphanGapOneNightAdjustmentPct: import("zod").ZodNumber;
34
+ orphanGapTwoNightAdjustmentPct: import("zod").ZodNumber;
35
+ allowOrphanGapMinStayOverride: import("zod").ZodBoolean;
36
+ orphanGapOneNightMinStay: import("zod").ZodOptional<import("zod").ZodNumber>;
37
+ orphanGapTwoNightMinStay: import("zod").ZodOptional<import("zod").ZodNumber>;
32
38
  autoRecalculate: import("zod").ZodBoolean;
33
39
  recalculateDaysAhead: import("zod").ZodNumber;
34
40
  lastRecalculatedAt: import("zod").ZodOptional<import("zod").ZodDate>;
35
41
  lastRecalculationNote: import("zod").ZodOptional<import("zod").ZodString>;
42
+ isRunning: import("zod").ZodBoolean;
43
+ runStartedAt: import("zod").ZodOptional<import("zod").ZodDate>;
36
44
  createdAt: import("zod").ZodDate;
37
45
  updatedAt: import("zod").ZodDate;
38
46
  }, "strip", import("zod").ZodTypeAny, {
@@ -66,12 +74,20 @@ export declare const revenueManagerConfigSchema: import("zod").ZodObject<{
66
74
  eventBoostPct: number;
67
75
  eventMajorBoostPct: number;
68
76
  eventMajorCapacityThreshold: number;
77
+ allowOrphanGapPricing: boolean;
78
+ orphanGapOneNightAdjustmentPct: number;
79
+ orphanGapTwoNightAdjustmentPct: number;
80
+ allowOrphanGapMinStayOverride: boolean;
69
81
  autoRecalculate: boolean;
70
82
  recalculateDaysAhead: number;
83
+ isRunning: boolean;
71
84
  weekendMinStay?: number | undefined;
72
85
  highOccupancyMinStay?: number | undefined;
86
+ orphanGapOneNightMinStay?: number | undefined;
87
+ orphanGapTwoNightMinStay?: number | undefined;
73
88
  lastRecalculatedAt?: Date | undefined;
74
89
  lastRecalculationNote?: string | undefined;
90
+ runStartedAt?: Date | undefined;
75
91
  }, {
76
92
  currency: string;
77
93
  id: number;
@@ -103,10 +119,18 @@ export declare const revenueManagerConfigSchema: import("zod").ZodObject<{
103
119
  eventBoostPct: number;
104
120
  eventMajorBoostPct: number;
105
121
  eventMajorCapacityThreshold: number;
122
+ allowOrphanGapPricing: boolean;
123
+ orphanGapOneNightAdjustmentPct: number;
124
+ orphanGapTwoNightAdjustmentPct: number;
125
+ allowOrphanGapMinStayOverride: boolean;
106
126
  autoRecalculate: boolean;
107
127
  recalculateDaysAhead: number;
128
+ isRunning: boolean;
108
129
  weekendMinStay?: number | undefined;
109
130
  highOccupancyMinStay?: number | undefined;
131
+ orphanGapOneNightMinStay?: number | undefined;
132
+ orphanGapTwoNightMinStay?: number | undefined;
110
133
  lastRecalculatedAt?: Date | undefined;
111
134
  lastRecalculationNote?: string | undefined;
135
+ runStartedAt?: Date | undefined;
112
136
  }>;
@@ -41,12 +41,22 @@ exports.revenueManagerConfigSchema = (0, zod_1.object)({
41
41
  eventBoostPct: (0, zod_1.number)().int(),
42
42
  eventMajorBoostPct: (0, zod_1.number)().int(),
43
43
  eventMajorCapacityThreshold: (0, zod_1.number)().int(),
44
+ // Orphan gap handling
45
+ allowOrphanGapPricing: (0, zod_1.boolean)(),
46
+ orphanGapOneNightAdjustmentPct: (0, zod_1.number)().int(),
47
+ orphanGapTwoNightAdjustmentPct: (0, zod_1.number)().int(),
48
+ allowOrphanGapMinStayOverride: (0, zod_1.boolean)(),
49
+ orphanGapOneNightMinStay: (0, zod_1.number)().int().optional(),
50
+ orphanGapTwoNightMinStay: (0, zod_1.number)().int().optional(),
44
51
  // Automation
45
52
  autoRecalculate: (0, zod_1.boolean)(),
46
53
  recalculateDaysAhead: (0, zod_1.number)().int(),
47
54
  // Last run metadata
48
55
  lastRecalculatedAt: (0, zod_1.date)().optional(),
49
56
  lastRecalculationNote: (0, zod_1.string)().optional(),
57
+ // Execution status
58
+ isRunning: (0, zod_1.boolean)(),
59
+ runStartedAt: (0, zod_1.date)().optional(),
50
60
  createdAt: (0, zod_1.date)(),
51
61
  updatedAt: (0, zod_1.date)(),
52
62
  });
@@ -0,0 +1,31 @@
1
+ export declare const revenueManagerSeasonalPeriodSchema: import("zod").ZodObject<{
2
+ id: import("zod").ZodNumber;
3
+ configId: import("zod").ZodOptional<import("zod").ZodNumber>;
4
+ customPeriodId: import("zod").ZodOptional<import("zod").ZodNumber>;
5
+ label: import("zod").ZodOptional<import("zod").ZodString>;
6
+ startDate: import("zod").ZodString;
7
+ endDate: import("zod").ZodString;
8
+ adjustmentPct: import("zod").ZodNumber;
9
+ createdAt: import("zod").ZodDate;
10
+ updatedAt: import("zod").ZodDate;
11
+ }, "strip", import("zod").ZodTypeAny, {
12
+ id: number;
13
+ createdAt: Date;
14
+ updatedAt: Date;
15
+ startDate: string;
16
+ endDate: string;
17
+ adjustmentPct: number;
18
+ label?: string | undefined;
19
+ configId?: number | undefined;
20
+ customPeriodId?: number | undefined;
21
+ }, {
22
+ id: number;
23
+ createdAt: Date;
24
+ updatedAt: Date;
25
+ startDate: string;
26
+ endDate: string;
27
+ adjustmentPct: number;
28
+ label?: string | undefined;
29
+ configId?: number | undefined;
30
+ customPeriodId?: number | undefined;
31
+ }>;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.revenueManagerSeasonalPeriodSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.revenueManagerSeasonalPeriodSchema = (0, zod_1.object)({
6
+ id: (0, zod_1.number)().int(),
7
+ configId: (0, zod_1.number)().int().optional(),
8
+ customPeriodId: (0, zod_1.number)().int().optional(),
9
+ label: (0, zod_1.string)().optional(),
10
+ startDate: (0, zod_1.string)(),
11
+ endDate: (0, zod_1.string)(),
12
+ adjustmentPct: (0, zod_1.number)(),
13
+ createdAt: (0, zod_1.date)(),
14
+ updatedAt: (0, zod_1.date)(),
15
+ });
@@ -11,3 +11,5 @@ export * from "./revenue-manager-run-log";
11
11
  export * from "./property-manager-config";
12
12
  export * from "./property-manager-session";
13
13
  export * from "./property-manager-suggestion";
14
+ export * from "./revenue-manager-config-period";
15
+ export * from "./revenue-manager-seasonal-period";
@@ -27,3 +27,5 @@ __exportStar(require("./revenue-manager-run-log"), exports);
27
27
  __exportStar(require("./property-manager-config"), exports);
28
28
  __exportStar(require("./property-manager-session"), exports);
29
29
  __exportStar(require("./property-manager-suggestion"), exports);
30
+ __exportStar(require("./revenue-manager-config-period"), exports);
31
+ __exportStar(require("./revenue-manager-seasonal-period"), exports);
@@ -0,0 +1,8 @@
1
+ import { infer } from "zod";
2
+ import { revenueManagerConfigPeriodSchema } from "../../schemas/ai-agent";
3
+ import { RevenueManagerConfig } from "./revenue-manager-config";
4
+ import { RevenueManagerSeasonalPeriod } from "./revenue-manager-seasonal-period";
5
+ export interface RevenueManagerConfigPeriod extends infer<typeof revenueManagerConfigPeriodSchema> {
6
+ config?: RevenueManagerConfig;
7
+ seasonalPeriods?: RevenueManagerSeasonalPeriod[];
8
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,6 +1,10 @@
1
1
  import { infer } from "zod";
2
2
  import { revenueManagerConfigSchema } from "../../schemas/ai-agent";
3
3
  import { PropertyAiAgentSubscription } from "./property-ai-agent-subscription";
4
+ import { RevenueManagerSeasonalPeriod } from "./revenue-manager-seasonal-period";
5
+ import { RevenueManagerConfigPeriod } from "./revenue-manager-config-period";
4
6
  export interface RevenueManagerConfig extends infer<typeof revenueManagerConfigSchema> {
5
7
  subscription?: PropertyAiAgentSubscription;
8
+ seasonalPeriods?: RevenueManagerSeasonalPeriod[];
9
+ customPeriods?: RevenueManagerConfigPeriod[];
6
10
  }
@@ -0,0 +1,8 @@
1
+ import { infer } from "zod";
2
+ import { revenueManagerSeasonalPeriodSchema } from "../../schemas/ai-agent";
3
+ import { RevenueManagerConfig } from "./revenue-manager-config";
4
+ import { RevenueManagerConfigPeriod } from "./revenue-manager-config-period";
5
+ export interface RevenueManagerSeasonalPeriod extends infer<typeof revenueManagerSeasonalPeriodSchema> {
6
+ config?: RevenueManagerConfig;
7
+ customPeriod?: RevenueManagerConfigPeriod;
8
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "commonjs",
3
3
  "name": "hububb-saas-shared",
4
- "version": "1.2.12",
4
+ "version": "1.2.14",
5
5
  "description": "This is a shared package for the hububb saas project",
6
6
  "types": "./dist/index.d.ts",
7
7
  "main": "./dist/index.js",