@meetelise/chat 1.34.2 → 1.34.4

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 (280) hide show
  1. package/package.json +1 -1
  2. package/public/dist/index.js +1 -1
  3. package/dist/src/MyPubnub.d.ts +0 -116
  4. package/dist/src/WebComponent/FeeCalculator/components/addons/addon-item-matrix-qty-selector/addon-item-matrix-qty-selector-styles.d.ts +0 -2
  5. package/dist/src/WebComponent/FeeCalculator/components/addons/addon-item-matrix-qty-selector/addon-item-matrix-qty-selector.d.ts +0 -28
  6. package/dist/src/WebComponent/FeeCalculator/components/addons/addon-item-qty-selector/addon-item-qty-selector-styles.d.ts +0 -2
  7. package/dist/src/WebComponent/FeeCalculator/components/addons/addon-item-qty-selector/addon-item-qty-selector.d.ts +0 -18
  8. package/dist/src/WebComponent/FeeCalculator/components/addons/common-addon-styles.d.ts +0 -2
  9. package/dist/src/WebComponent/FeeCalculator/components/addons/rentable-item-qty-selector/rentable-item-qty-selector-styles.d.ts +0 -2
  10. package/dist/src/WebComponent/FeeCalculator/components/addons/rentable-item-qty-selector/rentable-item-qty-selector.d.ts +0 -22
  11. package/dist/src/WebComponent/FeeCalculator/components/fee-calculator-layout/fee-calculator-layout-styles.d.ts +0 -2
  12. package/dist/src/WebComponent/FeeCalculator/components/fee-calculator-layout/fee-calculator-layout.d.ts +0 -46
  13. package/dist/src/WebComponent/FeeCalculator/components/fee-card/fee-card-styles.d.ts +0 -2
  14. package/dist/src/WebComponent/FeeCalculator/components/fee-card/fee-card.d.ts +0 -21
  15. package/dist/src/WebComponent/FeeCalculator/components/fee-item/fee-item-styles.d.ts +0 -2
  16. package/dist/src/WebComponent/FeeCalculator/components/fee-item/fee-item.d.ts +0 -13
  17. package/dist/src/WebComponent/FeeCalculator/components/floor-plan-selector/floor-plan-selector-styles.d.ts +0 -2
  18. package/dist/src/WebComponent/FeeCalculator/components/floor-plan-selector/floor-plan-selector.d.ts +0 -34
  19. package/dist/src/WebComponent/FeeCalculator/components/floorplan-image-card/floorplan-image-card-styles.d.ts +0 -2
  20. package/dist/src/WebComponent/FeeCalculator/components/floorplan-image-card/floorplan-image-card.d.ts +0 -18
  21. package/dist/src/WebComponent/FeeCalculator/components/incentive-banner/incentive-banner-styles.d.ts +0 -1
  22. package/dist/src/WebComponent/FeeCalculator/components/incentive-banner/incentive-banner.d.ts +0 -8
  23. package/dist/src/WebComponent/FeeCalculator/components/incentive-banner/index.d.ts +0 -1
  24. package/dist/src/WebComponent/FeeCalculator/components/index.d.ts +0 -5
  25. package/dist/src/WebComponent/FeeCalculator/components/promo-card/promo-card-styles.d.ts +0 -2
  26. package/dist/src/WebComponent/FeeCalculator/components/promo-card/promo-card.d.ts +0 -13
  27. package/dist/src/WebComponent/FeeCalculator/constants.d.ts +0 -3
  28. package/dist/src/WebComponent/FeeCalculator/fee-calculator-styles.d.ts +0 -1
  29. package/dist/src/WebComponent/FeeCalculator/fee-calculator.d.ts +0 -55
  30. package/dist/src/WebComponent/FeeCalculator/index.d.ts +0 -2
  31. package/dist/src/WebComponent/FeeCalculator/model/building-fee-view.d.ts +0 -41
  32. package/dist/src/WebComponent/FeeCalculator/model/building-fee.d.ts +0 -82
  33. package/dist/src/WebComponent/FeeCalculator/model/desired-addon.d.ts +0 -5
  34. package/dist/src/WebComponent/FeeCalculator/model/desired-rentable-item.d.ts +0 -4
  35. package/dist/src/WebComponent/FeeCalculator/model/index.d.ts +0 -13
  36. package/dist/src/WebComponent/FeeCalculator/model/item-combination.d.ts +0 -6
  37. package/dist/src/WebComponent/FeeCalculator/model/item-quantity.d.ts +0 -4
  38. package/dist/src/WebComponent/FeeCalculator/model/pricing-matrix.d.ts +0 -18
  39. package/dist/src/WebComponent/FeeCalculator/model/pricing-rule.d.ts +0 -8
  40. package/dist/src/WebComponent/FeeCalculator/model/rent-frequency.d.ts +0 -1
  41. package/dist/src/WebComponent/FeeCalculator/model/rentable-item-summary.d.ts +0 -9
  42. package/dist/src/WebComponent/FeeCalculator/model/rentable-item.d.ts +0 -9
  43. package/dist/src/WebComponent/FeeCalculator/model/transaction-category.d.ts +0 -23
  44. package/dist/src/WebComponent/FeeCalculator/model/unit-fee-bundle.d.ts +0 -31
  45. package/dist/src/WebComponent/LeadSourceClient.d.ts +0 -46
  46. package/dist/src/WebComponent/OfficeHours.d.ts +0 -21
  47. package/dist/src/WebComponent/Scheduler/date-picker.d.ts +0 -28
  48. package/dist/src/WebComponent/Scheduler/time-picker.d.ts +0 -14
  49. package/dist/src/WebComponent/Scheduler/tour-scheduler.d.ts +0 -101
  50. package/dist/src/WebComponent/Scheduler/tour-type-option.d.ts +0 -13
  51. package/dist/src/WebComponent/Scheduler/tourSchedulerStyles.d.ts +0 -1
  52. package/dist/src/WebComponent/actions/InputStyles.d.ts +0 -1
  53. package/dist/src/WebComponent/actions/action-confirm-button.d.ts +0 -13
  54. package/dist/src/WebComponent/actions/call-us-window.d.ts +0 -37
  55. package/dist/src/WebComponent/actions/collapse-expand-button.d.ts +0 -8
  56. package/dist/src/WebComponent/actions/details-window.d.ts +0 -14
  57. package/dist/src/WebComponent/actions/email-us-window.d.ts +0 -46
  58. package/dist/src/WebComponent/actions/formatPhoneNumber.d.ts +0 -17
  59. package/dist/src/WebComponent/actions/minimize-expand-button.d.ts +0 -8
  60. package/dist/src/WebComponent/chat-additional-actions.d.ts +0 -28
  61. package/dist/src/WebComponent/health-chat.d.ts +0 -47
  62. package/dist/src/WebComponent/healthchat-styles.d.ts +0 -1
  63. package/dist/src/WebComponent/icons/ApplyOutlineIcon.d.ts +0 -2
  64. package/dist/src/WebComponent/icons/BookTourOutlineIcon.d.ts +0 -2
  65. package/dist/src/WebComponent/icons/CalculatorOutlineIcon.d.ts +0 -2
  66. package/dist/src/WebComponent/icons/ChatOutlineIcon.d.ts +0 -2
  67. package/dist/src/WebComponent/icons/ChevronLeftIcon.d.ts +0 -2
  68. package/dist/src/WebComponent/icons/ChevronRightIcon.d.ts +0 -2
  69. package/dist/src/WebComponent/icons/ContactResidentIcon.d.ts +0 -2
  70. package/dist/src/WebComponent/icons/DollarOutlineIcon.d.ts +0 -7
  71. package/dist/src/WebComponent/icons/EmailOutlineIcon.d.ts +0 -2
  72. package/dist/src/WebComponent/icons/HeyThereEmojiIcon.d.ts +0 -2
  73. package/dist/src/WebComponent/icons/PhoneOutlineIcon.d.ts +0 -2
  74. package/dist/src/WebComponent/icons/SendMessageIcon.d.ts +0 -3
  75. package/dist/src/WebComponent/icons/TourSelfGuidedIcon.d.ts +0 -2
  76. package/dist/src/WebComponent/icons/TourVirtuallyIcon.d.ts +0 -2
  77. package/dist/src/WebComponent/icons/TourWithAgentIcon.d.ts +0 -2
  78. package/dist/src/WebComponent/icons/XOutlineIcon.d.ts +0 -2
  79. package/dist/src/WebComponent/index.d.ts +0 -2
  80. package/dist/src/WebComponent/launcher/Launcher.d.ts +0 -99
  81. package/dist/src/WebComponent/launcher/launcherStyles.d.ts +0 -1
  82. package/dist/src/WebComponent/launcher/mobile-launcher.d.ts +0 -27
  83. package/dist/src/WebComponent/launcher/typeEmojiStyles.d.ts +0 -1
  84. package/dist/src/WebComponent/launcher/typeMiniStyles.d.ts +0 -1
  85. package/dist/src/WebComponent/launcher/typeMobileStyles.d.ts +0 -1
  86. package/dist/src/WebComponent/leasing-chat-styles.d.ts +0 -1
  87. package/dist/src/WebComponent/loaders/index.d.ts +0 -4
  88. package/dist/src/WebComponent/loaders/mega-loader.d.ts +0 -7
  89. package/dist/src/WebComponent/loaders/skeleton-card.d.ts +0 -12
  90. package/dist/src/WebComponent/loaders/skeleton-loader-styles.d.ts +0 -3
  91. package/dist/src/WebComponent/loaders/skeleton-loader.d.ts +0 -13
  92. package/dist/src/WebComponent/me-chat.d.ts +0 -91
  93. package/dist/src/WebComponent/me-select.d.ts +0 -24
  94. package/dist/src/WebComponent/mini-loader.d.ts +0 -5
  95. package/dist/src/WebComponent/pubnub-chat-styles.d.ts +0 -1
  96. package/dist/src/WebComponent/pubnub-chat.d.ts +0 -49
  97. package/dist/src/WebComponent/pubnub-media.d.ts +0 -14
  98. package/dist/src/WebComponent/pubnub-message-styles.d.ts +0 -1
  99. package/dist/src/WebComponent/pubnub-message.d.ts +0 -39
  100. package/dist/src/WebComponent/simple-launcher/simple-launcher-styles.d.ts +0 -1
  101. package/dist/src/WebComponent/simple-launcher/simple-launcher.d.ts +0 -12
  102. package/dist/src/WebComponent/utilities-chat.d.ts +0 -47
  103. package/dist/src/WebComponent/utilities-styles.d.ts +0 -1
  104. package/dist/src/WebComponent/utils.d.ts +0 -31
  105. package/dist/src/analytics.d.ts +0 -64
  106. package/dist/src/disclaimers.d.ts +0 -9
  107. package/dist/src/fetchBuildingABTestType.d.ts +0 -8
  108. package/dist/src/fetchBuildingInfo.d.ts +0 -57
  109. package/dist/src/fetchBuildingWebchatView.d.ts +0 -124
  110. package/dist/src/fetchFeatureFlag.d.ts +0 -14
  111. package/dist/src/fetchLeadSources.d.ts +0 -4
  112. package/dist/src/fetchPhoneNumberFromSource.d.ts +0 -6
  113. package/dist/src/getAvailabilities.d.ts +0 -45
  114. package/dist/src/getBuildingPhoneNumber.d.ts +0 -1
  115. package/dist/src/getShouldAllowScheduling.d.ts +0 -1
  116. package/dist/src/getShouldShowWebchat.d.ts +0 -3
  117. package/dist/src/getTimezoneString.d.ts +0 -1
  118. package/dist/src/globals.d.ts +0 -2
  119. package/dist/src/gtm.d.ts +0 -6
  120. package/dist/src/handleChatId.d.ts +0 -11
  121. package/dist/src/insertDNIIntoWebsite.d.ts +0 -5
  122. package/dist/src/insertLeadSourceIntoSchedulerLinks.d.ts +0 -4
  123. package/dist/src/main/MEChat.d.ts +0 -74
  124. package/dist/src/main/utils.d.ts +0 -2
  125. package/dist/src/postLeadSources.d.ts +0 -3
  126. package/dist/src/rentgrata.d.ts +0 -4
  127. package/dist/src/replaceSelectButtonsWithNewLink.d.ts +0 -5
  128. package/dist/src/services/fees/calculateQuote.d.ts +0 -14
  129. package/dist/src/services/fees/fetchBuildingFeesV2.d.ts +0 -10
  130. package/dist/src/services/fees/fetchBuildingUnits.d.ts +0 -29
  131. package/dist/src/services/fees/utils.d.ts +0 -1
  132. package/dist/src/svgIcons.d.ts +0 -5
  133. package/dist/src/themes.d.ts +0 -5
  134. package/dist/src/types/incentive-v2.d.ts +0 -23
  135. package/dist/src/types/rest-sdk.types.d.ts +0 -11
  136. package/dist/src/types/webchat-no-show-reason.d.ts +0 -1
  137. package/dist/src/utils/queryParamBuilder.d.ts +0 -8
  138. package/dist/src/utils.d.ts +0 -13
  139. package/src/MyPubnub.ts +0 -792
  140. package/src/WebComponent/FeeCalculator/components/addons/addon-item-matrix-qty-selector/addon-item-matrix-qty-selector-styles.ts +0 -35
  141. package/src/WebComponent/FeeCalculator/components/addons/addon-item-matrix-qty-selector/addon-item-matrix-qty-selector.ts +0 -206
  142. package/src/WebComponent/FeeCalculator/components/addons/addon-item-qty-selector/addon-item-qty-selector-styles.ts +0 -6
  143. package/src/WebComponent/FeeCalculator/components/addons/addon-item-qty-selector/addon-item-qty-selector.ts +0 -101
  144. package/src/WebComponent/FeeCalculator/components/addons/common-addon-styles.ts +0 -82
  145. package/src/WebComponent/FeeCalculator/components/addons/rentable-item-qty-selector/rentable-item-qty-selector-styles.ts +0 -9
  146. package/src/WebComponent/FeeCalculator/components/addons/rentable-item-qty-selector/rentable-item-qty-selector.ts +0 -124
  147. package/src/WebComponent/FeeCalculator/components/fee-calculator-layout/fee-calculator-layout-styles.ts +0 -142
  148. package/src/WebComponent/FeeCalculator/components/fee-calculator-layout/fee-calculator-layout.ts +0 -243
  149. package/src/WebComponent/FeeCalculator/components/fee-card/fee-card-styles.ts +0 -65
  150. package/src/WebComponent/FeeCalculator/components/fee-card/fee-card.ts +0 -91
  151. package/src/WebComponent/FeeCalculator/components/fee-item/fee-item-styles.ts +0 -44
  152. package/src/WebComponent/FeeCalculator/components/fee-item/fee-item.ts +0 -38
  153. package/src/WebComponent/FeeCalculator/components/floor-plan-selector/floor-plan-selector-styles.ts +0 -151
  154. package/src/WebComponent/FeeCalculator/components/floor-plan-selector/floor-plan-selector.ts +0 -248
  155. package/src/WebComponent/FeeCalculator/components/floorplan-image-card/floorplan-image-card-styles.ts +0 -82
  156. package/src/WebComponent/FeeCalculator/components/floorplan-image-card/floorplan-image-card.ts +0 -76
  157. package/src/WebComponent/FeeCalculator/components/incentive-banner/incentive-banner-styles.ts +0 -40
  158. package/src/WebComponent/FeeCalculator/components/incentive-banner/incentive-banner.ts +0 -43
  159. package/src/WebComponent/FeeCalculator/components/incentive-banner/index.ts +0 -1
  160. package/src/WebComponent/FeeCalculator/components/index.ts +0 -5
  161. package/src/WebComponent/FeeCalculator/components/promo-card/promo-card-styles.ts +0 -39
  162. package/src/WebComponent/FeeCalculator/components/promo-card/promo-card.ts +0 -39
  163. package/src/WebComponent/FeeCalculator/constants.ts +0 -5
  164. package/src/WebComponent/FeeCalculator/fee-calculator-styles.ts +0 -310
  165. package/src/WebComponent/FeeCalculator/fee-calculator.ts +0 -341
  166. package/src/WebComponent/FeeCalculator/index.ts +0 -4
  167. package/src/WebComponent/FeeCalculator/model/building-fee-view.ts +0 -84
  168. package/src/WebComponent/FeeCalculator/model/building-fee.ts +0 -126
  169. package/src/WebComponent/FeeCalculator/model/desired-addon.ts +0 -6
  170. package/src/WebComponent/FeeCalculator/model/desired-rentable-item.ts +0 -4
  171. package/src/WebComponent/FeeCalculator/model/index.ts +0 -13
  172. package/src/WebComponent/FeeCalculator/model/item-combination.ts +0 -16
  173. package/src/WebComponent/FeeCalculator/model/item-quantity.ts +0 -4
  174. package/src/WebComponent/FeeCalculator/model/pricing-matrix.ts +0 -45
  175. package/src/WebComponent/FeeCalculator/model/pricing-rule.ts +0 -9
  176. package/src/WebComponent/FeeCalculator/model/rent-frequency.ts +0 -1
  177. package/src/WebComponent/FeeCalculator/model/rentable-item-summary.ts +0 -10
  178. package/src/WebComponent/FeeCalculator/model/rentable-item.ts +0 -10
  179. package/src/WebComponent/FeeCalculator/model/transaction-category.ts +0 -23
  180. package/src/WebComponent/FeeCalculator/model/unit-fee-bundle.ts +0 -54
  181. package/src/WebComponent/LeadSourceClient.ts +0 -332
  182. package/src/WebComponent/MEChat.css +0 -5
  183. package/src/WebComponent/OfficeHours.ts +0 -73
  184. package/src/WebComponent/Scheduler/date-picker.ts +0 -405
  185. package/src/WebComponent/Scheduler/time-picker.ts +0 -190
  186. package/src/WebComponent/Scheduler/tour-scheduler.ts +0 -1416
  187. package/src/WebComponent/Scheduler/tour-type-option.ts +0 -112
  188. package/src/WebComponent/Scheduler/tourSchedulerStyles.ts +0 -418
  189. package/src/WebComponent/actions/InputStyles.ts +0 -57
  190. package/src/WebComponent/actions/action-confirm-button.ts +0 -125
  191. package/src/WebComponent/actions/call-us-window.ts +0 -467
  192. package/src/WebComponent/actions/collapse-expand-button.ts +0 -65
  193. package/src/WebComponent/actions/details-window.ts +0 -150
  194. package/src/WebComponent/actions/email-us-window.ts +0 -556
  195. package/src/WebComponent/actions/formatPhoneNumber.ts +0 -72
  196. package/src/WebComponent/actions/minimize-expand-button.ts +0 -93
  197. package/src/WebComponent/chat-additional-actions.ts +0 -135
  198. package/src/WebComponent/health-chat.ts +0 -270
  199. package/src/WebComponent/healthchat-styles.ts +0 -119
  200. package/src/WebComponent/icons/ApplyOutlineIcon.ts +0 -22
  201. package/src/WebComponent/icons/BookTourOutlineIcon.ts +0 -13
  202. package/src/WebComponent/icons/CalculatorOutlineIcon.ts +0 -22
  203. package/src/WebComponent/icons/ChatOutlineIcon.ts +0 -10
  204. package/src/WebComponent/icons/ChevronLeftIcon.ts +0 -7
  205. package/src/WebComponent/icons/ChevronRightIcon.ts +0 -7
  206. package/src/WebComponent/icons/ContactResidentIcon.ts +0 -9
  207. package/src/WebComponent/icons/DollarOutlineIcon.ts +0 -26
  208. package/src/WebComponent/icons/EmailOutlineIcon.ts +0 -7
  209. package/src/WebComponent/icons/HeyThereEmojiIcon.ts +0 -12
  210. package/src/WebComponent/icons/PhoneOutlineIcon.ts +0 -7
  211. package/src/WebComponent/icons/SendMessageIcon.ts +0 -17
  212. package/src/WebComponent/icons/TourSelfGuidedIcon.ts +0 -17
  213. package/src/WebComponent/icons/TourVirtuallyIcon.ts +0 -17
  214. package/src/WebComponent/icons/TourWithAgentIcon.ts +0 -17
  215. package/src/WebComponent/icons/XOutlineIcon.ts +0 -8
  216. package/src/WebComponent/index.ts +0 -2
  217. package/src/WebComponent/launcher/Launcher.ts +0 -1284
  218. package/src/WebComponent/launcher/launcherStyles.ts +0 -500
  219. package/src/WebComponent/launcher/mobile-launcher.ts +0 -162
  220. package/src/WebComponent/launcher/typeEmojiStyles.ts +0 -161
  221. package/src/WebComponent/launcher/typeMiniStyles.ts +0 -60
  222. package/src/WebComponent/launcher/typeMobileStyles.ts +0 -50
  223. package/src/WebComponent/leasing-chat-styles.ts +0 -114
  224. package/src/WebComponent/loaders/index.ts +0 -7
  225. package/src/WebComponent/loaders/mega-loader.ts +0 -36
  226. package/src/WebComponent/loaders/skeleton-card.ts +0 -31
  227. package/src/WebComponent/loaders/skeleton-loader-styles.ts +0 -112
  228. package/src/WebComponent/loaders/skeleton-loader.ts +0 -34
  229. package/src/WebComponent/me-chat.ts +0 -1261
  230. package/src/WebComponent/me-select.ts +0 -322
  231. package/src/WebComponent/mini-loader.ts +0 -28
  232. package/src/WebComponent/pubnub-chat-styles.ts +0 -204
  233. package/src/WebComponent/pubnub-chat.ts +0 -928
  234. package/src/WebComponent/pubnub-media.ts +0 -208
  235. package/src/WebComponent/pubnub-message-styles.ts +0 -54
  236. package/src/WebComponent/pubnub-message.ts +0 -431
  237. package/src/WebComponent/simple-launcher/simple-launcher-styles.ts +0 -34
  238. package/src/WebComponent/simple-launcher/simple-launcher.ts +0 -100
  239. package/src/WebComponent/utilities-chat.ts +0 -270
  240. package/src/WebComponent/utilities-styles.ts +0 -110
  241. package/src/WebComponent/utils.ts +0 -82
  242. package/src/analytics.ts +0 -217
  243. package/src/assetUrls.ts +0 -6
  244. package/src/disclaimers.ts +0 -86
  245. package/src/fetchBuildingABTestType.ts +0 -21
  246. package/src/fetchBuildingInfo.ts +0 -87
  247. package/src/fetchBuildingWebchatView.ts +0 -176
  248. package/src/fetchFeatureFlag.ts +0 -250
  249. package/src/fetchLeadSources.ts +0 -98
  250. package/src/fetchPhoneNumberFromSource.ts +0 -31
  251. package/src/fetchWebchatPreferences.ts +0 -54
  252. package/src/getAvailabilities.ts +0 -179
  253. package/src/getBuildingPhoneNumber.ts +0 -26
  254. package/src/getShouldAllowScheduling.ts +0 -16
  255. package/src/getShouldShowWebchat.ts +0 -114
  256. package/src/getTimezoneString.ts +0 -39
  257. package/src/globals.ts +0 -3
  258. package/src/gtm.ts +0 -17
  259. package/src/handleChatId.ts +0 -101
  260. package/src/insertDNIIntoWebsite.ts +0 -146
  261. package/src/insertLeadSourceIntoSchedulerLinks.ts +0 -71
  262. package/src/main/MEChat.test.ts +0 -110
  263. package/src/main/MEChat.ts +0 -404
  264. package/src/main/utils.ts +0 -70
  265. package/src/postLeadSources.ts +0 -44
  266. package/src/rentgrata.ts +0 -74
  267. package/src/replaceSelectButtonsWithNewLink.ts +0 -90
  268. package/src/services/fees/calculateQuote.ts +0 -74
  269. package/src/services/fees/fetchBuildingFees.ts +0 -50
  270. package/src/services/fees/fetchBuildingFeesV2.ts +0 -56
  271. package/src/services/fees/fetchBuildingFloorplans.ts +0 -74
  272. package/src/services/fees/fetchBuildingUnits.ts +0 -86
  273. package/src/services/fees/utils.ts +0 -4
  274. package/src/svgIcons.ts +0 -14
  275. package/src/themes.ts +0 -65
  276. package/src/types/incentive-v2.ts +0 -24
  277. package/src/types/rest-sdk.types.ts +0 -13
  278. package/src/types/webchat-no-show-reason.ts +0 -6
  279. package/src/utils/queryParamBuilder.ts +0 -28
  280. package/src/utils.ts +0 -121
@@ -1,84 +0,0 @@
1
- import { PricingMatrix } from "./pricing-matrix";
2
-
3
- export enum BuildingFeeFrequency {
4
- OneTime = "One Time",
5
- Monthly = "Monthly",
6
- Quarterly = "Quarterly",
7
- Annually = "Annually",
8
- PerOccurrence = "Per Occurrence",
9
- }
10
-
11
- export class BuildingFeeView {
12
- id?: number;
13
- buildingId: number;
14
- feeName: string;
15
- description?: string;
16
- category = "Other";
17
- unitIds?: number[];
18
- layoutIds?: number[];
19
- startDate?: Date;
20
- endDate?: Date;
21
- source?: string;
22
- externalKey?: string;
23
- syncActive = true;
24
- hiddenReason?: string;
25
- refundable = false;
26
- bundleKey?: string;
27
- publicFacing = true;
28
- chargeCode?: string;
29
- prorated?: boolean;
30
- pricingCategory: "mandatory" | "situational";
31
- pricingType: "fixed" | "per-item" | "usage-based" | "percent-rent" | "custom";
32
- frequency: BuildingFeeFrequency;
33
- nlpPricing?: string;
34
-
35
- // Optional fields that depend on fee type
36
- amount?: number;
37
- percentRent?: number;
38
- unitLabel?: string;
39
- minAmount?: number;
40
- maxAmount?: number;
41
- customMatrixData?: PricingMatrix;
42
-
43
- constructor(data: Partial<BuildingFeeView> = {}) {
44
- this.id = data.id;
45
- this.buildingId = data.buildingId ?? 0;
46
- this.feeName = data.feeName ?? "";
47
- this.description = data.description;
48
- this.category = data.category ?? "Other";
49
- this.unitIds = data.unitIds;
50
- this.layoutIds = data.layoutIds;
51
- this.startDate = data.startDate;
52
- this.endDate = data.endDate;
53
- this.source = data.source;
54
- this.externalKey = data.externalKey;
55
- this.syncActive = data.syncActive ?? true;
56
- this.hiddenReason = data.hiddenReason;
57
- this.refundable = data.refundable ?? false;
58
- this.bundleKey = data.bundleKey;
59
- this.publicFacing = data.publicFacing ?? true;
60
- this.chargeCode = data.chargeCode;
61
- this.prorated = data.prorated;
62
- this.pricingCategory = data.pricingCategory ?? "mandatory";
63
- this.pricingType = data.pricingType ?? "fixed";
64
- this.frequency = data.frequency ?? BuildingFeeFrequency.OneTime;
65
- this.nlpPricing = data.nlpPricing;
66
-
67
- // Optional fields
68
- if (data.amount !== undefined) this.amount = data.amount;
69
- if (data.percentRent !== undefined) this.percentRent = data.percentRent;
70
- if (data.unitLabel !== undefined) this.unitLabel = data.unitLabel;
71
- if (data.minAmount !== undefined) this.minAmount = data.minAmount;
72
- if (data.maxAmount !== undefined) this.maxAmount = data.maxAmount;
73
- if (data.customMatrixData !== undefined)
74
- this.customMatrixData = data.customMatrixData;
75
- }
76
-
77
- get isOptional(): boolean {
78
- return this.pricingCategory === "situational";
79
- }
80
-
81
- get hasMatrix(): boolean {
82
- return !!(this.pricingType === "custom" && this.customMatrixData);
83
- }
84
- }
@@ -1,126 +0,0 @@
1
- import { formatCurrency, sentenceTitleCase } from "../../../utils";
2
- import { TransactionCategory } from "./transaction-category";
3
-
4
- export class BuildingFee {
5
- id: number;
6
- buildingId: number;
7
- blueprint: FeeBlueprint;
8
- unitIds: number[] | null;
9
- layoutIds: number[] | null;
10
- startDate: Date | null;
11
- endDate: Date | null;
12
- source: string | null;
13
- timeCreated: Date;
14
- externalKey: string | null;
15
- syncActive: boolean;
16
- hiddenReason: string | null;
17
- refundable: boolean | null;
18
- required?: boolean;
19
-
20
- constructor(data: Partial<BuildingFee> = {}) {
21
- this.id = data.id ?? 0;
22
- this.buildingId = data.buildingId ?? 0;
23
- this.blueprint = data.blueprint ?? ({} as FeeBlueprint);
24
- this.unitIds = data.unitIds ?? null;
25
- this.layoutIds = data.layoutIds ?? null;
26
- this.startDate = data.startDate ?? null;
27
- this.endDate = data.endDate ?? null;
28
- this.source = data.source ?? null;
29
- this.timeCreated = data.timeCreated ?? new Date();
30
- this.externalKey = data.externalKey ?? null;
31
- this.syncActive = data.syncActive ?? false;
32
- this.hiddenReason = data.hiddenReason ?? null;
33
- this.refundable = data.refundable ?? null;
34
- this.required = data.required ?? false;
35
- }
36
-
37
- get isAddOn(): boolean {
38
- return this.blueprint.addOnInfo !== null;
39
- }
40
-
41
- displayName(fallback = "Fee"): string {
42
- if (this.isAddOn && this.blueprint.addOnInfo?.addOnType) {
43
- return sentenceTitleCase(this.blueprint.addOnInfo.addOnType);
44
- }
45
-
46
- return this.blueprint.category
47
- ? sentenceTitleCase(this.blueprint.category)
48
- : fallback;
49
- }
50
-
51
- get description(): string {
52
- return this.blueprint.transactionDescription || "";
53
- }
54
-
55
- get displayAmount(): string {
56
- const amount = this.blueprint.transactionAmount;
57
- return formatCurrency(amount ?? 0);
58
- }
59
- }
60
-
61
- interface FeeBlueprint {
62
- transactionId: number | null;
63
- transactionAmount: number | null;
64
- flowDirection: TransactionFlow;
65
- transactionDescription: string | null;
66
- category: TransactionCategory;
67
- recurrenceInfo: RecurrenceInfo | null;
68
- adjustmentInfo: AdjustmentInfo | null;
69
- triggerInfo: TriggerInfo | null;
70
- addOnInfo: AddOnInfo | null;
71
- priceType: PriceType;
72
- handledByThirdParty: boolean;
73
- handledByThirdPartyReasoning: string | null;
74
- leaseStartDate: Date | null;
75
- leaseEndDate: Date | null;
76
- }
77
-
78
- interface AdjustmentInfo {
79
- reason: string;
80
- percentage: number;
81
- }
82
-
83
- export enum RecurrenceFrequency {
84
- OneTime = "OneTime",
85
- Daily = "Daily",
86
- Weekly = "Weekly",
87
- BiWeekly = "BiWeekly",
88
- Monthly = "Monthly",
89
- Yearly = "Yearly",
90
- Unknown = "Unknown",
91
- }
92
-
93
- interface RecurrenceInfo {
94
- frequency: RecurrenceFrequency;
95
- startDate: Date | null;
96
- endDate: Date | null;
97
- }
98
-
99
- interface TriggerInfo {
100
- triggerEvent: string;
101
- maxDaysBeforeEvent: number;
102
- maxDaysAfterEvent: number;
103
- triggerEventEmbedding: number[] | null;
104
- startDate: Date | null;
105
- endDate: Date | null;
106
- }
107
-
108
- export interface AddOnInfo {
109
- addOnType: string;
110
- maxUnitsCharged: number | null;
111
- minUnitsCharged: number | null;
112
- maxUnitsAllowed: number | null;
113
- minUnitsAllowed: number | null;
114
- addOnTypeEmbedding: number[] | null;
115
- }
116
-
117
- export enum TransactionFlow {
118
- Debit = "Debit",
119
- Credit = "Credit",
120
- }
121
-
122
- export enum PriceType {
123
- Fixed = "Fixed",
124
- UsageBased = "UsageBased",
125
- Varies = "Varies",
126
- }
@@ -1,6 +0,0 @@
1
- import { ItemQuantity } from "./item-quantity";
2
-
3
- export type DesiredAddon = {
4
- id: number;
5
- quantities: ItemQuantity[];
6
- };
@@ -1,4 +0,0 @@
1
- export type DesiredRentableItem = {
2
- id: number;
3
- type: string;
4
- };
@@ -1,13 +0,0 @@
1
- export * from "./building-fee";
2
- export * from "./building-fee-view";
3
- export * from "./desired-addon";
4
- export * from "./desired-rentable-item";
5
- export * from "./item-combination";
6
- export * from "./item-quantity";
7
- export * from "./pricing-matrix";
8
- export * from "./pricing-rule";
9
- export type { RentFrequency } from "./rent-frequency";
10
- export type { RentableItem } from "./rentable-item";
11
- export * from "./rentable-item-summary";
12
- export * from "./transaction-category";
13
- export * from "./unit-fee-bundle";
@@ -1,16 +0,0 @@
1
- import { ItemQuantity } from "./item-quantity";
2
-
3
- export class ItemCombination {
4
- quantities: ItemQuantity[];
5
-
6
- constructor(quantities: ItemQuantity[] = []) {
7
- this.quantities = quantities;
8
- }
9
-
10
- toKey(): string {
11
- return this.quantities
12
- .sort((a, b) => a.itemType.localeCompare(b.itemType))
13
- .map((q) => `${q.itemType}:${q.quantity}`)
14
- .join(",");
15
- }
16
- }
@@ -1,4 +0,0 @@
1
- export interface ItemQuantity {
2
- itemType: string;
3
- quantity: number;
4
- }
@@ -1,45 +0,0 @@
1
- import { ItemCombination } from "./item-combination";
2
- import { PricingRule } from "./pricing-rule";
3
-
4
- export class PricingMatrix {
5
- private rules: Map<string, PricingRule>;
6
- pricingRules: PricingRule[];
7
-
8
- constructor(data: { pricingRules?: PricingRule[] } = {}) {
9
- this.rules = new Map();
10
- this.pricingRules = data.pricingRules ?? [];
11
-
12
- // Initialize from provided pricing rules
13
- this.pricingRules.forEach((rule) => this.addRule(rule));
14
- }
15
-
16
- addRule(rule: PricingRule): void {
17
- const key = rule.combination.toKey();
18
- this.rules.set(key, rule);
19
- }
20
-
21
- getPrice(combination: ItemCombination): number | undefined {
22
- const key = combination.toKey();
23
- const rule = this.rules.get(key);
24
- return rule?.price;
25
- }
26
-
27
- toRuleArray(): PricingRule[] {
28
- return Array.from(this.rules.values());
29
- }
30
-
31
- toJSON(): { pricingRules: PricingRule[] } {
32
- return {
33
- pricingRules: this.toRuleArray(),
34
- };
35
- }
36
-
37
- static fromJSON(data: { pricingRules: PricingRule[] }): PricingMatrix {
38
- return new PricingMatrix({
39
- pricingRules: data.pricingRules?.map((rule: PricingRule) => ({
40
- ...rule,
41
- combination: new ItemCombination(rule.combination.quantities),
42
- })),
43
- });
44
- }
45
- }
@@ -1,9 +0,0 @@
1
- import { ItemCombination } from "./item-combination";
2
-
3
- export interface PricingRule {
4
- combination: ItemCombination;
5
- price?: number;
6
- percentRent?: number;
7
- minimumPrice?: number;
8
- maximumPrice?: number;
9
- }
@@ -1 +0,0 @@
1
- export type RentFrequency = "monthly" | "annually";
@@ -1,10 +0,0 @@
1
- import { RentableItem } from "./rentable-item";
2
-
3
- export interface RentableItemSummary {
4
- description: string;
5
- type: string;
6
- minAvailableItem?: RentableItem;
7
- maxAvailableItem?: RentableItem;
8
- allItems: RentableItem[];
9
- rent?: number;
10
- }
@@ -1,10 +0,0 @@
1
- import { RentFrequency } from "./rent-frequency";
2
-
3
- export interface RentableItem {
4
- id: string;
5
- description: string;
6
- rent: number;
7
- rentFrequency: RentFrequency;
8
- available: boolean;
9
- reservedUntil?: Date;
10
- }
@@ -1,23 +0,0 @@
1
- export enum TransactionCategory {
2
- AdminFee = "AdminFee",
3
- ApplicationFee = "ApplicationFee",
4
- Concession = "Concession",
5
- Insurance = "Insurance",
6
- LateFee = "LateFee",
7
- Legal = "Legal",
8
- NonSufficientFundFee = "NSF",
9
- Other = "Other",
10
- Parking = "Parking",
11
- Penalty = "Penalty",
12
- Pest = "Pest",
13
- PetDeposit = "PetDeposit",
14
- PetRent = "PetRent",
15
- Refund = "Refund",
16
- Relet = "Relet",
17
- Rent = "Rent",
18
- SecurityDeposit = "SecurityDeposit",
19
- Storage = "Storage",
20
- Trash = "Trash",
21
- Utility = "Utility",
22
- WaterSewer = "WaterSewer",
23
- }
@@ -1,54 +0,0 @@
1
- import { RentableItemSummary } from "./rentable-item-summary";
2
- import { formatCurrency, sentenceTitleCase } from "../../../utils";
3
-
4
- export type UnitFeeBundle = {
5
- unitId: number;
6
- unitNumber: string;
7
- unitLayout: number;
8
- rent: number;
9
- fees: FeeEstimate[];
10
- feeTotal: number;
11
- rentableItems: RentableItemSummary[];
12
- rentableItemTotal: number;
13
- };
14
-
15
- type FeeAdjustment = {
16
- reason: string;
17
- amount: number;
18
- };
19
-
20
- export class FeeEstimate {
21
- name: string;
22
- description?: string | null;
23
- amount: number;
24
- frequency: string;
25
- addOnType?: string;
26
- applicable?: boolean;
27
- required?: boolean;
28
- adjustments?: FeeAdjustment[];
29
- comment?: string;
30
-
31
- constructor(data: FeeEstimate) {
32
- this.name = data.name;
33
- this.description = data.description;
34
- this.amount = data.amount;
35
- this.frequency = data.frequency;
36
- this.addOnType = data.addOnType;
37
- this.applicable = data.applicable;
38
- this.required = data.required;
39
- this.adjustments = data.adjustments;
40
- this.comment = data.comment;
41
- }
42
-
43
- get displayAmount(): string {
44
- return formatCurrency(this.amount);
45
- }
46
-
47
- get displayName(): string {
48
- return sentenceTitleCase(this.name);
49
- }
50
-
51
- get isAddOn(): boolean {
52
- return !!this.addOnType;
53
- }
54
- }