@roomstay/core 0.1.48-1 → 0.1.48

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 (45) hide show
  1. package/dist/index.d.ts +0 -0
  2. package/dist/node.js +1 -1
  3. package/dist/types/Booking/IBookingCreateErrorResponse.d.ts +0 -0
  4. package/dist/types/Booking/IBookingPayment.type.d.ts +0 -0
  5. package/dist/types/Booking/IBookingQuote.type.d.ts +0 -0
  6. package/dist/types/Booking/IBookingStatus.type.d.ts +0 -0
  7. package/dist/types/Booking/ICheckoutBrowserSession.type.d.ts +14 -0
  8. package/dist/types/Booking/IPrice.type.d.ts +0 -0
  9. package/dist/types/Company/ECompanyProvider.enum.d.ts +0 -0
  10. package/dist/types/Company/IAdminCompany.type.d.ts +0 -0
  11. package/dist/types/Company/IAdminCompanyUser.type.d.ts +0 -0
  12. package/dist/types/Events/IRoomstayEvent.type.d.ts +0 -0
  13. package/dist/types/General/HttpMethod.enum.d.ts +0 -0
  14. package/dist/types/General/IJsonString.type.d.ts +6 -0
  15. package/dist/types/Hotel/EHotelPriceModel.enum.d.ts +0 -0
  16. package/dist/types/Hotel/EHotelWeekdayStartsOn.enum.d.ts +0 -0
  17. package/dist/types/Hotel/IAuxiliaryFilter.type.d.ts +0 -0
  18. package/dist/types/Hotel/IHotelColorScheme.type.d.ts +0 -0
  19. package/dist/types/Hotel/IHotelOverrides.type.d.ts +0 -0
  20. package/dist/types/Hotel/IHotelReplica.type.d.ts +0 -0
  21. package/dist/types/Hotel/IHotelService.type.d.ts +0 -0
  22. package/dist/types/Image/IRoomstayImage.type.d.ts +0 -0
  23. package/dist/types/Member/IRoomstayCognitoMember.type.d.ts +0 -0
  24. package/dist/types/Member/IRoomstayMember.type.d.ts +0 -0
  25. package/dist/types/Member/IRoomstayMemberBooking.type.d.ts +0 -0
  26. package/dist/types/Member/IRoomstayMemberBookingAddress.type.d.ts +0 -0
  27. package/dist/types/Member/IRoomstayMemberBookingItem.type.d.ts +0 -0
  28. package/dist/types/Member/IRoomstayMemberBookingProfile.type.d.ts +0 -0
  29. package/dist/types/Member/IRoomstayMemberCards.type.d.ts +0 -0
  30. package/dist/types/Member/ISession.type.d.ts +0 -0
  31. package/dist/types/Policies/EGuaranteePolicy.enum.d.ts +0 -0
  32. package/dist/types/RMS/ERMSDiscountType.enum.d.ts +0 -0
  33. package/dist/types/RMS/IRMSPropertyDiscount.type.d.ts +0 -0
  34. package/dist/types/RMS/IRMSRequirement.type.d.ts +0 -0
  35. package/dist/types/Room/IRoomGroup.type.d.ts +0 -0
  36. package/dist/types/index.d.ts +36 -38
  37. package/dist/utils/bookingTotal.d.ts +0 -0
  38. package/dist/utils/index.d.ts +0 -0
  39. package/dist/utils/nameof.d.ts +2 -0
  40. package/dist/utils/roomstayImageResize.d.ts +0 -0
  41. package/dist/utils/roundMoney.d.ts +1 -11
  42. package/dist/utils/uppercaseString.d.ts +0 -0
  43. package/dist/web.js +1 -1
  44. package/package.json +1 -1
  45. package/dist/types/Maintenance/IMaintenanceStatus.type.d.ts +0 -25
package/dist/index.d.ts CHANGED
File without changes
package/dist/node.js CHANGED
@@ -1 +1 @@
1
- (()=>{"use strict";var e={n:n=>{var o=n&&n.__esModule?()=>n.default:()=>n;return e.d(o,{a:o}),o},d:(n,o)=>{for(var t in o)e.o(o,t)&&!e.o(n,t)&&Object.defineProperty(n,t,{enumerable:!0,get:o[t]})},o:(e,n)=>Object.prototype.hasOwnProperty.call(e,n),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},n={};let o,t,r;e.r(n),e.d(n,{EBookingPaymentMethod:()=>o,ECompanyProvider:()=>c,EDistanceUnitType:()=>P,EFeeType:()=>F,EGuarantyPolicyPrepaymentType:()=>p,EHotelCardProcessor:()=>t,EHotelPriceModel:()=>u,EHotelStateFieldConfiguration:()=>d,EHotelWeekdayStartsOn:()=>g,EIntegration:()=>l,EPlanpayBookingStatus:()=>r,ERMSDiscountType:()=>y,ERoomstayEventSource:()=>O,ERoomstayImageSize:()=>f,HttpMethod:()=>R,IAuxiliaryFilterType:()=>s,IBookingStatus:()=>i,IMaintenanceStatusService:()=>m,PCIBookingCardProcessorTypes:()=>a,RoundingType:()=>D,calculateFeeAmount:()=>k,calculateTotalForMemberBooking:()=>C,getFeeOptionValidity:()=>M,getFilteredBookingAddonFees:()=>x,getFilteredBookingFees:()=>H,getFilteredBookingRateFees:()=>U,nameof:()=>E,resizeRoomstayImageUrl:()=>A,roundMoney:()=>B,subset:()=>S,uppercaseString:()=>h}),function(e){e.Card="Card",e.SavedCard="SavedCard",e.Planpay="Planpay",e.Adyen="Adyen",e.Afterpay="Afterpay",e.PCIBookingCard="PCIBookingCard"}(o||(o={})),function(e){e.Passthrough="Passthrough",e.Adyen="Adyen",e.Till="Till",e.RMSPay="RMSPay",e.Windcave="Windcave"}(t||(t={})),function(e){e.Unknown="unknown",e.Unpaid="unpaid",e.Accepted="accepted",e.Cancelled="cancelled",e.Refunded="refunded",e.Rejected="rejected"}(r||(r={}));const a=[];let i,c,u,d,g,l,s,P,y,f,m,p,O,R,F;function h(e){return e.toUpperCase()}!function(e){e.Pending="Pending",e.Committed="Committed",e.Cancelled="Cancelled"}(i||(i={})),function(e){e.Synxis="Synxis",e.Availpro="Availpro",e.RMS="RMS",e.Siteminder="Siteminder",e.Roomstay="Roomstay"}(c||(c={})),function(e){e.PerPerson="PerPerson",e.PerDay="PerDay",e.PerOccupancy="PerOccupancy"}(u||(u={})),function(e){e.NotIncluded="NotIncluded",e.Optional="Optional",e.Required="Required"}(d||(d={})),function(e){e.Monday="monday",e.Sunday="sunday"}(g||(g={})),function(e){e.Big4="Big4",e.RmsTop10="Top10",e.Top10="NewTop10",e.Gday="Gday",e.Salesforce="Salesforce"}(l||(l={})),function(e){e.AreaDwellingLength="AreaDwellingLength",e.AreaDwellingType="AreaDwellingType"}(s||(s={})),function(e){e.Metric="metric",e.Imperial="imperial"}(P||(P={})),function(e){e.Percentage="Percentage",e.Amount="Amount",e.Bogo="BOGO",e.NightlyRateOverride="NightlyRateOverride"}(y||(y={})),function(e){e[e.Icon=128]="Icon",e[e.Tiny=256]="Tiny",e[e.Small=512]="Small",e[e.Medium=768]="Medium",e[e.Large=1024]="Large",e[e.ExtraLarge=1600]="ExtraLarge"}(f||(f={})),function(e){e.Frontend="frontend",e.Hotel="hotel",e.Events="events"}(m||(m={})),function(e){e.FixedAmount="fixed",e.Percentage="percentage",e.Nights="nights"}(p||(p={})),function(e){e.Eventbrite="eventbrite",e.ATDW="atdw"}(O||(O={})),function(e){e.GET="GET",e.POST="POST",e.PUT="PUT",e.DELETE="DELETE",e.PATCH="PATCH",e.OPTIONS="OPTIONS",e.HEAD="HEAD"}(R||(R={})),function(e){e.PercentageOfBooking="PercentageOfBooking",e.FixedChargePerRoom="FixedChargePerRoom",e.NightlyChargePerRoom="NightlyChargePerRoom",e.FixedChargePerBooking="FixedChargePerBooking",e.DepositSurcharge="DepositSurcharge"}(F||(F={}));const C=e=>{let n=0;const o=Object.values(e.itinerary);for(const e of o){const o=Object.keys(e.nights);for(const t of o)n+=e.nights[t].total}return n},A=(e,n)=>e.includes("cdn.app.roomstay.io")?e+"?w="+n:e,E=e=>e,S=(e,n)=>{const o={};return n.forEach((n=>{n in e&&(o[n]=e[n])})),o},T=require("decimal.js");var N=e.n(T);const D={UP:N().ROUND_UP,DOWN:N().ROUND_DOWN,CEIL:N().ROUND_CEIL,FLOOR:N().ROUND_FLOOR,HALF_UP:N().ROUND_HALF_UP,HALF_DOWN:N().ROUND_HALF_DOWN,HALF_EVEN:N().ROUND_HALF_EVEN,HALF_CEIL:N().ROUND_HALF_CEIL,HALF_FLOOR:N().ROUND_HALF_FLOOR},B=(e,n)=>{const{precision:o=2,rounding:t=D.HALF_UP}=n||{};return new(N())(e).toDecimalPlaces(o,t).toNumber()};function k(e,n={}){const{baseAmount:o=0,numberOfNights:t=1,feeIncludedInBaseAmount:r=!1,extractedFromRates:a=!1,removedPercentages:i=[]}=n,c=B(o);switch(e.feeType){case F.PercentageOfBooking:if(r)return B(c*e.amount/(100+e.amount));if(a){const n=i.reduce(((e,n)=>e+n/(100+n)),0);return B(c/(1-n)*e.amount/(100+e.amount))}return B(c*(e.amount/100));case F.FixedChargePerRoom:case F.FixedChargePerBooking:return e.amount;case F.NightlyChargePerRoom:return B(e.amount*t);default:return 0}}const L=[F.FixedChargePerBooking],v=[F.PercentageOfBooking,F.FixedChargePerRoom,F.NightlyChargePerRoom],I=[F.PercentageOfBooking];function _(e,n){return e.filter((e=>n.includes(e.feeType)))}function H(e){return _(e,L)}function U(e){return _(e,v)}function x(e){return _(e,I)}function M(e){return{includeInRates:[F.PercentageOfBooking,F.NightlyChargePerRoom].includes(e),extractFeeFromRates:e===F.PercentageOfBooking,appliesToAddons:e===F.PercentageOfBooking,includePreviousFeesInCalculation:e===F.PercentageOfBooking}}module.exports=n})();
1
+ (()=>{"use strict";var e={n:n=>{var o=n&&n.__esModule?()=>n.default:()=>n;return e.d(o,{a:o}),o},d:(n,o)=>{for(var t in o)e.o(o,t)&&!e.o(n,t)&&Object.defineProperty(n,t,{enumerable:!0,get:o[t]})},o:(e,n)=>Object.prototype.hasOwnProperty.call(e,n),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},n={};let o,t,r;e.r(n),e.d(n,{EBookingPaymentMethod:()=>o,ECompanyProvider:()=>c,EDistanceUnitType:()=>y,EFeeType:()=>C,EGuarantyPolicyPrepaymentType:()=>m,EHotelCardProcessor:()=>t,EHotelPriceModel:()=>u,EHotelStateFieldConfiguration:()=>d,EHotelWeekdayStartsOn:()=>g,EIntegration:()=>l,EPlanpayBookingStatus:()=>r,ERMSDiscountType:()=>P,ERoomstayEventSource:()=>p,ERoomstayImageSize:()=>f,HttpMethod:()=>h,IAuxiliaryFilterType:()=>s,IBookingStatus:()=>i,PCIBookingCardProcessorTypes:()=>a,calculateFeeAmount:()=>F,calculateTotalForMemberBooking:()=>S,getFeeOptionValidity:()=>w,getFilteredBookingAddonFees:()=>N,getFilteredBookingFees:()=>M,getFilteredBookingRateFees:()=>D,nameof:()=>R,resizeRoomstayImageUrl:()=>O,roundMoney:()=>A,subset:()=>E,uppercaseString:()=>T}),function(e){e.Card="Card",e.SavedCard="SavedCard",e.Planpay="Planpay",e.Adyen="Adyen",e.Afterpay="Afterpay",e.PCIBookingCard="PCIBookingCard"}(o||(o={})),function(e){e.Passthrough="Passthrough",e.Adyen="Adyen",e.Till="Till",e.RMSPay="RMSPay",e.Windcave="Windcave"}(t||(t={})),function(e){e.Unknown="unknown",e.Unpaid="unpaid",e.Accepted="accepted",e.Cancelled="cancelled",e.Refunded="refunded",e.Rejected="rejected"}(r||(r={}));const a=[];let i,c,u,d,g,l,s,y,P,f,m,p,h,C;function T(e){return e.toUpperCase()}!function(e){e.Pending="Pending",e.Committed="Committed",e.Cancelled="Cancelled"}(i||(i={})),function(e){e.Synxis="Synxis",e.Availpro="Availpro",e.RMS="RMS",e.Siteminder="Siteminder",e.Roomstay="Roomstay"}(c||(c={})),function(e){e.PerPerson="PerPerson",e.PerDay="PerDay",e.PerOccupancy="PerOccupancy"}(u||(u={})),function(e){e.NotIncluded="NotIncluded",e.Optional="Optional",e.Required="Required"}(d||(d={})),function(e){e.Monday="monday",e.Sunday="sunday"}(g||(g={})),function(e){e.Big4="Big4",e.RmsTop10="Top10",e.Top10="NewTop10",e.Gday="Gday",e.Salesforce="Salesforce"}(l||(l={})),function(e){e.AreaDwellingLength="AreaDwellingLength",e.AreaDwellingType="AreaDwellingType"}(s||(s={})),function(e){e.Metric="metric",e.Imperial="imperial"}(y||(y={})),function(e){e.Percentage="Percentage",e.Amount="Amount",e.Bogo="BOGO",e.NightlyRateOverride="NightlyRateOverride"}(P||(P={})),function(e){e[e.Icon=128]="Icon",e[e.Tiny=256]="Tiny",e[e.Small=512]="Small",e[e.Medium=768]="Medium",e[e.Large=1024]="Large",e[e.ExtraLarge=1600]="ExtraLarge"}(f||(f={})),function(e){e.FixedAmount="fixed",e.Percentage="percentage",e.Nights="nights"}(m||(m={})),function(e){e.Eventbrite="eventbrite",e.ATDW="atdw"}(p||(p={})),function(e){e.GET="GET",e.POST="POST",e.PUT="PUT",e.DELETE="DELETE",e.PATCH="PATCH",e.OPTIONS="OPTIONS",e.HEAD="HEAD"}(h||(h={})),function(e){e.PercentageOfBooking="PercentageOfBooking",e.FixedChargePerRoom="FixedChargePerRoom",e.NightlyChargePerRoom="NightlyChargePerRoom",e.FixedChargePerBooking="FixedChargePerBooking",e.DepositSurcharge="DepositSurcharge"}(C||(C={}));const S=e=>{let n=0;const o=Object.values(e.itinerary);for(const e of o){const o=Object.keys(e.nights);for(const t of o)n+=e.nights[t].total}return n},O=(e,n)=>e.includes("cdn.app.roomstay.io")?e+"?w="+n:e,R=e=>e,E=(e,n)=>{const o={};return n.forEach((n=>{n in e&&(o[n]=e[n])})),o},B=require("decimal.js");var k=e.n(B);const A=e=>new(k())(e).toDecimalPlaces(2).toNumber();function F(e,n={}){const{baseAmount:o=0,numberOfNights:t=1,feeIncludedInBaseAmount:r=!1,extractedFromRates:a=!1,removedPercentages:i=[]}=n,c=A(o);switch(e.feeType){case C.PercentageOfBooking:if(r)return A(c*e.amount/(100+e.amount));if(a){const n=i.reduce(((e,n)=>e+n/(100+n)),0);return A(c/(1-n)*e.amount/(100+e.amount))}return A(c*(e.amount/100));case C.FixedChargePerRoom:case C.FixedChargePerBooking:return e.amount;case C.NightlyChargePerRoom:return A(e.amount*t);default:return 0}}const v=[C.FixedChargePerBooking],I=[C.PercentageOfBooking,C.FixedChargePerRoom,C.NightlyChargePerRoom],x=[C.PercentageOfBooking];function b(e,n){return e.filter((e=>n.includes(e.feeType)))}function M(e){return b(e,v)}function D(e){return b(e,I)}function N(e){return b(e,x)}function w(e){return{includeInRates:[C.PercentageOfBooking,C.NightlyChargePerRoom].includes(e),extractFeeFromRates:e===C.PercentageOfBooking,appliesToAddons:e===C.PercentageOfBooking,includePreviousFeesInCalculation:e===C.PercentageOfBooking}}module.exports=n})();
File without changes
File without changes
File without changes
@@ -0,0 +1,14 @@
1
+ import { EHotelCardProcessor, EHotelCardProcessorInitData } from './IBookingPayment.type';
2
+ export type ICheckoutBrowserSession<T extends EHotelCardProcessor | undefined = EHotelCardProcessor> = {
3
+ browserSessionId: string;
4
+ checkoutSessionId: string;
5
+ rows: {}[];
6
+ /**
7
+ * ISO 8601 date string
8
+ */
9
+ expiry: string;
10
+ payment: {
11
+ processor: T;
12
+ data: EHotelCardProcessorInitData[T];
13
+ };
14
+ };
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Basic object to wrap a string that is de/encoded as JSON.
3
+ */
4
+ export type IJsonString = {
5
+ message: string;
6
+ };
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,62 +1,60 @@
1
1
  /**
2
2
  * Booking Details
3
3
  */
4
- export * from './Booking/IBookingPayment.type';
5
- export * from './Booking/IBookingStatus.type';
6
- export * from './Booking/IPrice.type';
7
- export * from './Booking/IBookingCreateErrorResponse';
8
- export * from './Booking/IBookingQuote.type';
4
+ export * from "./Booking/IBookingPayment.type";
5
+ export * from "./Booking/IBookingStatus.type";
6
+ export * from "./Booking/IPrice.type";
7
+ export * from "./Booking/IBookingCreateErrorResponse";
8
+ export * from "./Booking/IBookingQuote.type";
9
9
  /**
10
10
  * Company
11
11
  */
12
- export * from './Company/ECompanyProvider.enum';
13
- export * from './Company/IAdminCompany.type';
14
- export * from './Company/IAdminCompanyUser.type';
12
+ export * from "./Company/ECompanyProvider.enum";
13
+ export * from "./Company/IAdminCompany.type";
14
+ export * from "./Company/IAdminCompanyUser.type";
15
15
  /**
16
16
  * Hotel
17
17
  */
18
- export * from './Hotel/EHotelPriceModel.enum';
19
- export * from './Hotel/EHotelStateFieldConfiguration.enum';
20
- export * from './Hotel/EHotelWeekdayStartsOn.enum';
21
- export * from './Hotel/EIntegration.enum';
22
- export * from './Hotel/IAuxiliaryFilter.type';
23
- export * from './Hotel/IHotelColorScheme.type';
24
- export * from './Hotel/IHotelOverrides.type';
25
- export * from './Hotel/IHotelReplica.type';
26
- export * from './Hotel/IHotelService.type';
18
+ export * from "./Hotel/EHotelPriceModel.enum";
19
+ export * from "./Hotel/EHotelStateFieldConfiguration.enum";
20
+ export * from "./Hotel/EHotelWeekdayStartsOn.enum";
21
+ export * from "./Hotel/EIntegration.enum";
22
+ export * from "./Hotel/IAuxiliaryFilter.type";
23
+ export * from "./Hotel/IHotelColorScheme.type";
24
+ export * from "./Hotel/IHotelOverrides.type";
25
+ export * from "./Hotel/IHotelReplica.type";
26
+ export * from "./Hotel/IHotelService.type";
27
27
  /**
28
28
  * Room
29
29
  */
30
- export * from './Room/IRoomGroup.type';
30
+ export * from "./Room/IRoomGroup.type";
31
31
  /**
32
32
  * RMS
33
33
  */
34
- export * from './RMS/ERMSDiscountType.enum';
35
- export * from './RMS/IRMSPropertyDiscount.type';
36
- export * from './RMS/IRMSRequirement.type';
34
+ export * from "./RMS/ERMSDiscountType.enum";
35
+ export * from "./RMS/IRMSPropertyDiscount.type";
36
+ export * from "./RMS/IRMSRequirement.type";
37
37
  /**
38
38
  * Image
39
39
  */
40
- export * from './Image/IRoomstayImage.type';
41
- /** Maintenance */
42
- export * from './Maintenance/IMaintenanceStatus.type';
40
+ export * from "./Image/IRoomstayImage.type";
43
41
  /**
44
42
  * Member Details
45
43
  */
46
- export * from './Member/IMember.type';
47
- export * from './Member/IMemberVerification.type';
48
- export * from './Member/IRoomstayCognitoMember.type';
49
- export * from './Member/IRoomstayMember.type';
50
- export * from './Member/IRoomstayMemberBooking.type';
51
- export * from './Member/IRoomstayMemberBookingAddress.type';
52
- export * from './Member/IRoomstayMemberBookingItem.type';
53
- export * from './Member/IRoomstayMemberBookingProfile.type';
54
- export * from './Member/IRoomstayMemberCards.type';
55
- export * from './Member/ISession.type';
44
+ export * from "./Member/IMember.type";
45
+ export * from "./Member/IMemberVerification.type";
46
+ export * from "./Member/IRoomstayCognitoMember.type";
47
+ export * from "./Member/IRoomstayMember.type";
48
+ export * from "./Member/IRoomstayMemberBooking.type";
49
+ export * from "./Member/IRoomstayMemberBookingAddress.type";
50
+ export * from "./Member/IRoomstayMemberBookingItem.type";
51
+ export * from "./Member/IRoomstayMemberBookingProfile.type";
52
+ export * from "./Member/IRoomstayMemberCards.type";
53
+ export * from "./Member/ISession.type";
56
54
  /**
57
55
  * Policies
58
56
  */
59
- export * from './Policies/EGuaranteePolicy.enum';
57
+ export * from "./Policies/EGuaranteePolicy.enum";
60
58
  /**
61
59
  * Roomstay Events
62
60
  */
@@ -65,12 +63,12 @@ export * from "./Events/ERoomstayEventSource.enum";
65
63
  /**
66
64
  * General
67
65
  */
68
- export * from './General/HttpMethod.enum';
69
- export * from './General/IMessage.type';
66
+ export * from "./General/HttpMethod.enum";
67
+ export * from "./General/IMessage.type";
70
68
  /**
71
69
  * Media
72
70
  */
73
- export * from './Media/IMedia.type';
71
+ export * from "./Media/IMedia.type";
74
72
  /**
75
73
  * Fees
76
74
  */
File without changes
File without changes
@@ -0,0 +1,2 @@
1
+ export declare const nameof: <T>(name: Extract<keyof T, string>) => string;
2
+ export declare const nameofField: <T>(instance: T, name: keyof T) => string;
File without changes
@@ -1,11 +1,3 @@
1
- import Decimal from "decimal.js";
2
- export declare const RoundingType: {
3
- [key: string]: Decimal.Rounding;
4
- };
5
- interface RoundMoneyOptions {
6
- precision?: number;
7
- rounding?: Decimal.Rounding;
8
- }
9
1
  /**
10
2
  * Rounds a monetary amount to two decimal places.
11
3
  *
@@ -13,8 +5,6 @@ interface RoundMoneyOptions {
13
5
  * with some systems, such as RMS.
14
6
  *
15
7
  * @param amount a string or number to be rounded
16
- * @param options an object containing precision and rounding options
17
8
  * @returns the rounded amount as a number
18
9
  */
19
- export declare const roundMoney: (amount: string | number, options?: RoundMoneyOptions) => number;
20
- export {};
10
+ export declare const roundMoney: (amount: string | number) => number;
File without changes
package/dist/web.js CHANGED
@@ -1 +1 @@
1
- define("@roomstay/core",["decimal.js"],(e=>(()=>{"use strict";var n={60:n=>{n.exports=e}},o={};function t(e){var r=o[e];if(void 0!==r)return r.exports;var a=o[e]={exports:{}};return n[e](a,a.exports,t),a.exports}t.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return t.d(n,{a:n}),n},t.d=(e,n)=>{for(var o in n)t.o(n,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:n[o]})},t.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{let e,n,o;t.r(r),t.d(r,{EBookingPaymentMethod:()=>e,ECompanyProvider:()=>c,EDistanceUnitType:()=>P,EFeeType:()=>F,EGuarantyPolicyPrepaymentType:()=>p,EHotelCardProcessor:()=>n,EHotelPriceModel:()=>u,EHotelStateFieldConfiguration:()=>d,EHotelWeekdayStartsOn:()=>g,EIntegration:()=>l,EPlanpayBookingStatus:()=>o,ERMSDiscountType:()=>y,ERoomstayEventSource:()=>O,ERoomstayImageSize:()=>f,HttpMethod:()=>R,IAuxiliaryFilterType:()=>s,IBookingStatus:()=>i,IMaintenanceStatusService:()=>m,PCIBookingCardProcessorTypes:()=>a,RoundingType:()=>D,calculateFeeAmount:()=>B,calculateTotalForMemberBooking:()=>C,getFeeOptionValidity:()=>M,getFilteredBookingAddonFees:()=>U,getFilteredBookingFees:()=>x,getFilteredBookingRateFees:()=>H,nameof:()=>E,resizeRoomstayImageUrl:()=>A,roundMoney:()=>v,subset:()=>S,uppercaseString:()=>h}),function(e){e.Card="Card",e.SavedCard="SavedCard",e.Planpay="Planpay",e.Adyen="Adyen",e.Afterpay="Afterpay",e.PCIBookingCard="PCIBookingCard"}(e||(e={})),function(e){e.Passthrough="Passthrough",e.Adyen="Adyen",e.Till="Till",e.RMSPay="RMSPay",e.Windcave="Windcave"}(n||(n={})),function(e){e.Unknown="unknown",e.Unpaid="unpaid",e.Accepted="accepted",e.Cancelled="cancelled",e.Refunded="refunded",e.Rejected="rejected"}(o||(o={}));const a=[];let i,c,u,d,g,l,s,P,y,f,m,p,O,R,F;function h(e){return e.toUpperCase()}!function(e){e.Pending="Pending",e.Committed="Committed",e.Cancelled="Cancelled"}(i||(i={})),function(e){e.Synxis="Synxis",e.Availpro="Availpro",e.RMS="RMS",e.Siteminder="Siteminder",e.Roomstay="Roomstay"}(c||(c={})),function(e){e.PerPerson="PerPerson",e.PerDay="PerDay",e.PerOccupancy="PerOccupancy"}(u||(u={})),function(e){e.NotIncluded="NotIncluded",e.Optional="Optional",e.Required="Required"}(d||(d={})),function(e){e.Monday="monday",e.Sunday="sunday"}(g||(g={})),function(e){e.Big4="Big4",e.RmsTop10="Top10",e.Top10="NewTop10",e.Gday="Gday",e.Salesforce="Salesforce"}(l||(l={})),function(e){e.AreaDwellingLength="AreaDwellingLength",e.AreaDwellingType="AreaDwellingType"}(s||(s={})),function(e){e.Metric="metric",e.Imperial="imperial"}(P||(P={})),function(e){e.Percentage="Percentage",e.Amount="Amount",e.Bogo="BOGO",e.NightlyRateOverride="NightlyRateOverride"}(y||(y={})),function(e){e[e.Icon=128]="Icon",e[e.Tiny=256]="Tiny",e[e.Small=512]="Small",e[e.Medium=768]="Medium",e[e.Large=1024]="Large",e[e.ExtraLarge=1600]="ExtraLarge"}(f||(f={})),function(e){e.Frontend="frontend",e.Hotel="hotel",e.Events="events"}(m||(m={})),function(e){e.FixedAmount="fixed",e.Percentage="percentage",e.Nights="nights"}(p||(p={})),function(e){e.Eventbrite="eventbrite",e.ATDW="atdw"}(O||(O={})),function(e){e.GET="GET",e.POST="POST",e.PUT="PUT",e.DELETE="DELETE",e.PATCH="PATCH",e.OPTIONS="OPTIONS",e.HEAD="HEAD"}(R||(R={})),function(e){e.PercentageOfBooking="PercentageOfBooking",e.FixedChargePerRoom="FixedChargePerRoom",e.NightlyChargePerRoom="NightlyChargePerRoom",e.FixedChargePerBooking="FixedChargePerBooking",e.DepositSurcharge="DepositSurcharge"}(F||(F={}));const C=e=>{let n=0;const o=Object.values(e.itinerary);for(const e of o){const o=Object.keys(e.nights);for(const t of o)n+=e.nights[t].total}return n},A=(e,n)=>e.includes("cdn.app.roomstay.io")?e+"?w="+n:e,E=e=>e,S=(e,n)=>{const o={};return n.forEach((n=>{n in e&&(o[n]=e[n])})),o};var T=t(60),N=t.n(T);const D={UP:N().ROUND_UP,DOWN:N().ROUND_DOWN,CEIL:N().ROUND_CEIL,FLOOR:N().ROUND_FLOOR,HALF_UP:N().ROUND_HALF_UP,HALF_DOWN:N().ROUND_HALF_DOWN,HALF_EVEN:N().ROUND_HALF_EVEN,HALF_CEIL:N().ROUND_HALF_CEIL,HALF_FLOOR:N().ROUND_HALF_FLOOR},v=(e,n)=>{const{precision:o=2,rounding:t=D.HALF_UP}=n||{};return new(N())(e).toDecimalPlaces(o,t).toNumber()};function B(e,n={}){const{baseAmount:o=0,numberOfNights:t=1,feeIncludedInBaseAmount:r=!1,extractedFromRates:a=!1,removedPercentages:i=[]}=n,c=v(o);switch(e.feeType){case F.PercentageOfBooking:if(r)return v(c*e.amount/(100+e.amount));if(a){const n=i.reduce(((e,n)=>e+n/(100+n)),0);return v(c/(1-n)*e.amount/(100+e.amount))}return v(c*(e.amount/100));case F.FixedChargePerRoom:case F.FixedChargePerBooking:return e.amount;case F.NightlyChargePerRoom:return v(e.amount*t);default:return 0}}const k=[F.FixedChargePerBooking],L=[F.PercentageOfBooking,F.FixedChargePerRoom,F.NightlyChargePerRoom],I=[F.PercentageOfBooking];function _(e,n){return e.filter((e=>n.includes(e.feeType)))}function x(e){return _(e,k)}function H(e){return _(e,L)}function U(e){return _(e,I)}function M(e){return{includeInRates:[F.PercentageOfBooking,F.NightlyChargePerRoom].includes(e),extractFeeFromRates:e===F.PercentageOfBooking,appliesToAddons:e===F.PercentageOfBooking,includePreviousFeesInCalculation:e===F.PercentageOfBooking}}})(),r})()));
1
+ define("@roomstay/core",["decimal.js"],(e=>(()=>{"use strict";var n={60:n=>{n.exports=e}},o={};function t(e){var r=o[e];if(void 0!==r)return r.exports;var a=o[e]={exports:{}};return n[e](a,a.exports,t),a.exports}t.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return t.d(n,{a:n}),n},t.d=(e,n)=>{for(var o in n)t.o(n,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:n[o]})},t.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{let e,n,o;t.r(r),t.d(r,{EBookingPaymentMethod:()=>e,ECompanyProvider:()=>c,EDistanceUnitType:()=>y,EFeeType:()=>C,EGuarantyPolicyPrepaymentType:()=>m,EHotelCardProcessor:()=>n,EHotelPriceModel:()=>u,EHotelStateFieldConfiguration:()=>d,EHotelWeekdayStartsOn:()=>g,EIntegration:()=>l,EPlanpayBookingStatus:()=>o,ERMSDiscountType:()=>P,ERoomstayEventSource:()=>p,ERoomstayImageSize:()=>f,HttpMethod:()=>h,IAuxiliaryFilterType:()=>s,IBookingStatus:()=>i,PCIBookingCardProcessorTypes:()=>a,calculateFeeAmount:()=>v,calculateTotalForMemberBooking:()=>S,getFeeOptionValidity:()=>w,getFilteredBookingAddonFees:()=>N,getFilteredBookingFees:()=>M,getFilteredBookingRateFees:()=>D,nameof:()=>R,resizeRoomstayImageUrl:()=>O,roundMoney:()=>A,subset:()=>E,uppercaseString:()=>T}),function(e){e.Card="Card",e.SavedCard="SavedCard",e.Planpay="Planpay",e.Adyen="Adyen",e.Afterpay="Afterpay",e.PCIBookingCard="PCIBookingCard"}(e||(e={})),function(e){e.Passthrough="Passthrough",e.Adyen="Adyen",e.Till="Till",e.RMSPay="RMSPay",e.Windcave="Windcave"}(n||(n={})),function(e){e.Unknown="unknown",e.Unpaid="unpaid",e.Accepted="accepted",e.Cancelled="cancelled",e.Refunded="refunded",e.Rejected="rejected"}(o||(o={}));const a=[];let i,c,u,d,g,l,s,y,P,f,m,p,h,C;function T(e){return e.toUpperCase()}!function(e){e.Pending="Pending",e.Committed="Committed",e.Cancelled="Cancelled"}(i||(i={})),function(e){e.Synxis="Synxis",e.Availpro="Availpro",e.RMS="RMS",e.Siteminder="Siteminder",e.Roomstay="Roomstay"}(c||(c={})),function(e){e.PerPerson="PerPerson",e.PerDay="PerDay",e.PerOccupancy="PerOccupancy"}(u||(u={})),function(e){e.NotIncluded="NotIncluded",e.Optional="Optional",e.Required="Required"}(d||(d={})),function(e){e.Monday="monday",e.Sunday="sunday"}(g||(g={})),function(e){e.Big4="Big4",e.RmsTop10="Top10",e.Top10="NewTop10",e.Gday="Gday",e.Salesforce="Salesforce"}(l||(l={})),function(e){e.AreaDwellingLength="AreaDwellingLength",e.AreaDwellingType="AreaDwellingType"}(s||(s={})),function(e){e.Metric="metric",e.Imperial="imperial"}(y||(y={})),function(e){e.Percentage="Percentage",e.Amount="Amount",e.Bogo="BOGO",e.NightlyRateOverride="NightlyRateOverride"}(P||(P={})),function(e){e[e.Icon=128]="Icon",e[e.Tiny=256]="Tiny",e[e.Small=512]="Small",e[e.Medium=768]="Medium",e[e.Large=1024]="Large",e[e.ExtraLarge=1600]="ExtraLarge"}(f||(f={})),function(e){e.FixedAmount="fixed",e.Percentage="percentage",e.Nights="nights"}(m||(m={})),function(e){e.Eventbrite="eventbrite",e.ATDW="atdw"}(p||(p={})),function(e){e.GET="GET",e.POST="POST",e.PUT="PUT",e.DELETE="DELETE",e.PATCH="PATCH",e.OPTIONS="OPTIONS",e.HEAD="HEAD"}(h||(h={})),function(e){e.PercentageOfBooking="PercentageOfBooking",e.FixedChargePerRoom="FixedChargePerRoom",e.NightlyChargePerRoom="NightlyChargePerRoom",e.FixedChargePerBooking="FixedChargePerBooking",e.DepositSurcharge="DepositSurcharge"}(C||(C={}));const S=e=>{let n=0;const o=Object.values(e.itinerary);for(const e of o){const o=Object.keys(e.nights);for(const t of o)n+=e.nights[t].total}return n},O=(e,n)=>e.includes("cdn.app.roomstay.io")?e+"?w="+n:e,R=e=>e,E=(e,n)=>{const o={};return n.forEach((n=>{n in e&&(o[n]=e[n])})),o};var B=t(60),k=t.n(B);const A=e=>new(k())(e).toDecimalPlaces(2).toNumber();function v(e,n={}){const{baseAmount:o=0,numberOfNights:t=1,feeIncludedInBaseAmount:r=!1,extractedFromRates:a=!1,removedPercentages:i=[]}=n,c=A(o);switch(e.feeType){case C.PercentageOfBooking:if(r)return A(c*e.amount/(100+e.amount));if(a){const n=i.reduce(((e,n)=>e+n/(100+n)),0);return A(c/(1-n)*e.amount/(100+e.amount))}return A(c*(e.amount/100));case C.FixedChargePerRoom:case C.FixedChargePerBooking:return e.amount;case C.NightlyChargePerRoom:return A(e.amount*t);default:return 0}}const F=[C.FixedChargePerBooking],x=[C.PercentageOfBooking,C.FixedChargePerRoom,C.NightlyChargePerRoom],I=[C.PercentageOfBooking];function b(e,n){return e.filter((e=>n.includes(e.feeType)))}function M(e){return b(e,F)}function D(e){return b(e,x)}function N(e){return b(e,I)}function w(e){return{includeInRates:[C.PercentageOfBooking,C.NightlyChargePerRoom].includes(e),extractFeeFromRates:e===C.PercentageOfBooking,appliesToAddons:e===C.PercentageOfBooking,includePreviousFeesInCalculation:e===C.PercentageOfBooking}}})(),r})()));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@roomstay/core",
3
- "version": "0.1.48-1",
3
+ "version": "0.1.48",
4
4
  "description": "Details shared between Roomstay libraries. Anything from Currency, to Generic types",
5
5
  "types": "./dist/index.d.ts",
6
6
  "files": [
@@ -1,25 +0,0 @@
1
- export type IMaintenanceStatus = {
2
- /**
3
- * Which service is currently experiencing issues.
4
- */
5
- service: IMaintenanceStatusService;
6
- /**
7
- * The start time of the maintenance window in ISO 8601 format
8
- *
9
- * @example 2023-10-01T00:00:00Z
10
- */
11
- startDate: string;
12
- endDate: string;
13
- /**
14
- * Whether the status is currently in effect or not
15
- */
16
- isActive: boolean;
17
- status: 'error' | 'maintenance';
18
- title: string;
19
- message: string;
20
- };
21
- export declare enum IMaintenanceStatusService {
22
- Frontend = "frontend",
23
- Hotel = "hotel",
24
- Events = "events"
25
- }