@stamhoofd/structures 2.83.5 → 2.84.1

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 (316) hide show
  1. package/dist/index.d.ts +11 -2
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +11 -2
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/AppliedRegistrationDiscount.d.ts +15 -0
  6. package/dist/src/AppliedRegistrationDiscount.d.ts.map +1 -0
  7. package/dist/src/AppliedRegistrationDiscount.js +24 -0
  8. package/dist/src/AppliedRegistrationDiscount.js.map +1 -0
  9. package/dist/src/BalanceItem.d.ts +13 -4
  10. package/dist/src/BalanceItem.d.ts.map +1 -1
  11. package/dist/src/BalanceItem.js +68 -22
  12. package/dist/src/BalanceItem.js.map +1 -1
  13. package/dist/src/BalanceItemDetailed.d.ts +2 -2
  14. package/dist/src/BalanceItemDetailed.d.ts.map +1 -1
  15. package/dist/src/BalanceItemDetailed.js +2 -2
  16. package/dist/src/BalanceItemDetailed.js.map +1 -1
  17. package/dist/src/BundleDiscount.d.ts +79 -0
  18. package/dist/src/BundleDiscount.d.ts.map +1 -0
  19. package/dist/src/BundleDiscount.js +379 -0
  20. package/dist/src/BundleDiscount.js.map +1 -0
  21. package/dist/src/BundleDiscountGroupPriceSettings.d.ts +15 -0
  22. package/dist/src/BundleDiscountGroupPriceSettings.d.ts.map +1 -0
  23. package/dist/src/BundleDiscountGroupPriceSettings.js +29 -0
  24. package/dist/src/BundleDiscountGroupPriceSettings.js.map +1 -0
  25. package/dist/src/Group.d.ts +2 -0
  26. package/dist/src/Group.d.ts.map +1 -1
  27. package/dist/src/Group.js +10 -0
  28. package/dist/src/Group.js.map +1 -1
  29. package/dist/src/GroupPriceDiscount.d.ts +14 -0
  30. package/dist/src/GroupPriceDiscount.d.ts.map +1 -0
  31. package/dist/src/GroupPriceDiscount.js +39 -0
  32. package/dist/src/GroupPriceDiscount.js.map +1 -0
  33. package/dist/src/GroupSettings.d.ts +7 -8
  34. package/dist/src/GroupSettings.d.ts.map +1 -1
  35. package/dist/src/GroupSettings.js +15 -29
  36. package/dist/src/GroupSettings.js.map +1 -1
  37. package/dist/src/Organization.d.ts +1 -1
  38. package/dist/src/Organization.d.ts.map +1 -1
  39. package/dist/src/Organization.js +15 -2
  40. package/dist/src/Organization.js.map +1 -1
  41. package/dist/src/Permissions.d.ts.map +1 -1
  42. package/dist/src/Permissions.js +1 -1
  43. package/dist/src/Permissions.js.map +1 -1
  44. package/dist/src/Platform.d.ts +1 -1
  45. package/dist/src/Platform.d.ts.map +1 -1
  46. package/dist/src/Platform.js +3 -3
  47. package/dist/src/Platform.js.map +1 -1
  48. package/dist/src/ReduceablePrice.d.ts +9 -0
  49. package/dist/src/ReduceablePrice.d.ts.map +1 -0
  50. package/dist/src/ReduceablePrice.js +29 -0
  51. package/dist/src/ReduceablePrice.js.map +1 -0
  52. package/dist/src/RegistrationPeriod.d.ts +2 -0
  53. package/dist/src/RegistrationPeriod.d.ts.map +1 -1
  54. package/dist/src/RegistrationPeriod.js +5 -0
  55. package/dist/src/RegistrationPeriod.js.map +1 -1
  56. package/dist/src/Token.d.ts.map +1 -1
  57. package/dist/src/Token.js +7 -4
  58. package/dist/src/Token.js.map +1 -1
  59. package/dist/src/Version.d.ts +1 -1
  60. package/dist/src/Version.js +1 -1
  61. package/dist/src/email/Email.d.ts +5 -3
  62. package/dist/src/email/Email.d.ts.map +1 -1
  63. package/dist/src/email/Email.js +3 -0
  64. package/dist/src/email/Email.js.map +1 -1
  65. package/dist/src/endpoints/RegisterResponse.d.ts +2 -2
  66. package/dist/src/endpoints/RegisterResponse.d.ts.map +1 -1
  67. package/dist/src/endpoints/RegisterResponse.js +2 -2
  68. package/dist/src/endpoints/RegisterResponse.js.map +1 -1
  69. package/dist/src/filters/ExcelExportRequest.d.ts +1 -0
  70. package/dist/src/filters/ExcelExportRequest.d.ts.map +1 -1
  71. package/dist/src/filters/ExcelExportRequest.js +1 -0
  72. package/dist/src/filters/ExcelExportRequest.js.map +1 -1
  73. package/dist/src/filters/FilterCompilers.d.ts +18 -0
  74. package/dist/src/filters/FilterCompilers.d.ts.map +1 -0
  75. package/dist/src/filters/FilterCompilers.js +110 -0
  76. package/dist/src/filters/FilterCompilers.js.map +1 -0
  77. package/dist/src/filters/InMemoryFilter.d.ts +5 -3
  78. package/dist/src/filters/InMemoryFilter.d.ts.map +1 -1
  79. package/dist/src/filters/InMemoryFilter.js +20 -75
  80. package/dist/src/filters/InMemoryFilter.js.map +1 -1
  81. package/dist/src/filters/InMemoryFilter.test.d.ts +2 -0
  82. package/dist/src/filters/InMemoryFilter.test.d.ts.map +1 -0
  83. package/dist/src/filters/InMemoryFilter.test.js +293 -0
  84. package/dist/src/filters/InMemoryFilter.test.js.map +1 -0
  85. package/dist/src/helpers/MemberPlatformMembershipHelper.d.ts +12 -0
  86. package/dist/src/helpers/MemberPlatformMembershipHelper.d.ts.map +1 -0
  87. package/dist/src/helpers/MemberPlatformMembershipHelper.js +74 -0
  88. package/dist/src/helpers/MemberPlatformMembershipHelper.js.map +1 -0
  89. package/dist/src/members/Member.d.ts +1 -0
  90. package/dist/src/members/Member.d.ts.map +1 -1
  91. package/dist/src/members/Member.js +3 -0
  92. package/dist/src/members/Member.js.map +1 -1
  93. package/dist/src/members/MembershipStatus.d.ts +13 -0
  94. package/dist/src/members/MembershipStatus.d.ts.map +1 -0
  95. package/dist/src/members/MembershipStatus.js +18 -0
  96. package/dist/src/members/MembershipStatus.js.map +1 -0
  97. package/dist/src/members/PaymentGeneral.js +1 -1
  98. package/dist/src/members/PaymentGeneral.js.map +1 -1
  99. package/dist/src/members/PaymentWithRegistrations.d.ts +2 -2
  100. package/dist/src/members/PaymentWithRegistrations.d.ts.map +1 -1
  101. package/dist/src/members/PaymentWithRegistrations.js +2 -2
  102. package/dist/src/members/PaymentWithRegistrations.js.map +1 -1
  103. package/dist/src/members/PlatformMember.d.ts +24 -14
  104. package/dist/src/members/PlatformMember.d.ts.map +1 -1
  105. package/dist/src/members/PlatformMember.js +93 -116
  106. package/dist/src/members/PlatformMember.js.map +1 -1
  107. package/dist/src/members/PlatformMember.test.js +4 -7
  108. package/dist/src/members/PlatformMember.test.js.map +1 -1
  109. package/dist/src/members/Registration.d.ts +37 -0
  110. package/dist/src/members/Registration.d.ts.map +1 -1
  111. package/dist/src/members/Registration.js +48 -0
  112. package/dist/src/members/Registration.js.map +1 -1
  113. package/dist/src/members/RegistrationWithMember.d.ts +15 -3
  114. package/dist/src/members/RegistrationWithMember.d.ts.map +1 -1
  115. package/dist/src/members/RegistrationWithMember.js +32 -2
  116. package/dist/src/members/RegistrationWithMember.js.map +1 -1
  117. package/dist/src/members/RegistrationWithMemberBlob.d.ts +6 -0
  118. package/dist/src/members/RegistrationWithMemberBlob.d.ts.map +1 -0
  119. package/dist/src/members/RegistrationWithMemberBlob.js +14 -0
  120. package/dist/src/members/RegistrationWithMemberBlob.js.map +1 -0
  121. package/{esm/dist/src/members/RegistrationWithMember.d.ts → dist/src/members/RegistrationWithTinyMember.d.ts} +3 -3
  122. package/dist/src/members/RegistrationWithTinyMember.d.ts.map +1 -0
  123. package/dist/src/members/RegistrationWithTinyMember.js +20 -0
  124. package/dist/src/members/RegistrationWithTinyMember.js.map +1 -0
  125. package/dist/src/members/RegistrationsBlob.d.ts +8 -0
  126. package/dist/src/members/RegistrationsBlob.d.ts.map +1 -0
  127. package/dist/src/{endpoints/GroupsWithOrganizations.js → members/RegistrationsBlob.js} +9 -9
  128. package/dist/src/members/RegistrationsBlob.js.map +1 -0
  129. package/dist/src/members/checkout/RegisterCart.d.ts +18 -2
  130. package/dist/src/members/checkout/RegisterCart.d.ts.map +1 -1
  131. package/dist/src/members/checkout/RegisterCart.js +51 -2
  132. package/dist/src/members/checkout/RegisterCart.js.map +1 -1
  133. package/dist/src/members/checkout/RegisterCart.test.d.ts +2 -0
  134. package/dist/src/members/checkout/RegisterCart.test.d.ts.map +1 -0
  135. package/dist/src/members/checkout/RegisterCart.test.js +1384 -0
  136. package/dist/src/members/checkout/RegisterCart.test.js.map +1 -0
  137. package/dist/src/members/checkout/RegisterCheckout.d.ts +23 -3
  138. package/dist/src/members/checkout/RegisterCheckout.d.ts.map +1 -1
  139. package/dist/src/members/checkout/RegisterCheckout.js +108 -11
  140. package/dist/src/members/checkout/RegisterCheckout.js.map +1 -1
  141. package/dist/src/members/checkout/RegisterItem.d.ts +7 -13
  142. package/dist/src/members/checkout/RegisterItem.d.ts.map +1 -1
  143. package/dist/src/members/checkout/RegisterItem.js +50 -23
  144. package/dist/src/members/checkout/RegisterItem.js.map +1 -1
  145. package/dist/src/members/checkout/RegistrationWithPlatformMember.d.ts +13 -0
  146. package/dist/src/members/checkout/RegistrationWithPlatformMember.d.ts.map +1 -0
  147. package/dist/src/members/checkout/RegistrationWithPlatformMember.js +21 -0
  148. package/dist/src/members/checkout/RegistrationWithPlatformMember.js.map +1 -0
  149. package/dist/src/members/records/RecordCategory.d.ts +1 -0
  150. package/dist/src/members/records/RecordCategory.d.ts.map +1 -1
  151. package/dist/src/members/records/RecordCategory.js +10 -0
  152. package/dist/src/members/records/RecordCategory.js.map +1 -1
  153. package/dist/src/webshops/Webshop.d.ts +1 -0
  154. package/dist/src/webshops/Webshop.d.ts.map +1 -1
  155. package/dist/src/webshops/Webshop.js +4 -1
  156. package/dist/src/webshops/Webshop.js.map +1 -1
  157. package/dist/src/webshops/WebshopMetaData.d.ts +1 -0
  158. package/dist/src/webshops/WebshopMetaData.d.ts.map +1 -1
  159. package/dist/src/webshops/WebshopMetaData.js +4 -0
  160. package/dist/src/webshops/WebshopMetaData.js.map +1 -1
  161. package/esm/dist/index.d.ts +11 -2
  162. package/esm/dist/index.d.ts.map +1 -1
  163. package/esm/dist/index.js +11 -2
  164. package/esm/dist/index.js.map +1 -1
  165. package/esm/dist/src/AppliedRegistrationDiscount.d.ts +15 -0
  166. package/esm/dist/src/AppliedRegistrationDiscount.d.ts.map +1 -0
  167. package/esm/dist/src/AppliedRegistrationDiscount.js +20 -0
  168. package/esm/dist/src/AppliedRegistrationDiscount.js.map +1 -0
  169. package/esm/dist/src/BalanceItem.d.ts +13 -4
  170. package/esm/dist/src/BalanceItem.d.ts.map +1 -1
  171. package/esm/dist/src/BalanceItem.js +68 -22
  172. package/esm/dist/src/BalanceItem.js.map +1 -1
  173. package/esm/dist/src/BalanceItemDetailed.d.ts +2 -2
  174. package/esm/dist/src/BalanceItemDetailed.d.ts.map +1 -1
  175. package/esm/dist/src/BalanceItemDetailed.js +2 -2
  176. package/esm/dist/src/BalanceItemDetailed.js.map +1 -1
  177. package/esm/dist/src/BundleDiscount.d.ts +79 -0
  178. package/esm/dist/src/BundleDiscount.d.ts.map +1 -0
  179. package/esm/dist/src/BundleDiscount.js +374 -0
  180. package/esm/dist/src/BundleDiscount.js.map +1 -0
  181. package/esm/dist/src/BundleDiscountGroupPriceSettings.d.ts +15 -0
  182. package/esm/dist/src/BundleDiscountGroupPriceSettings.d.ts.map +1 -0
  183. package/esm/dist/src/BundleDiscountGroupPriceSettings.js +25 -0
  184. package/esm/dist/src/BundleDiscountGroupPriceSettings.js.map +1 -0
  185. package/esm/dist/src/Group.d.ts +2 -0
  186. package/esm/dist/src/Group.d.ts.map +1 -1
  187. package/esm/dist/src/Group.js +10 -0
  188. package/esm/dist/src/Group.js.map +1 -1
  189. package/esm/dist/src/GroupPriceDiscount.d.ts +14 -0
  190. package/esm/dist/src/GroupPriceDiscount.d.ts.map +1 -0
  191. package/esm/dist/src/GroupPriceDiscount.js +35 -0
  192. package/esm/dist/src/GroupPriceDiscount.js.map +1 -0
  193. package/esm/dist/src/GroupSettings.d.ts +7 -8
  194. package/esm/dist/src/GroupSettings.d.ts.map +1 -1
  195. package/esm/dist/src/GroupSettings.js +10 -23
  196. package/esm/dist/src/GroupSettings.js.map +1 -1
  197. package/esm/dist/src/Organization.d.ts +1 -1
  198. package/esm/dist/src/Organization.d.ts.map +1 -1
  199. package/esm/dist/src/Organization.js +14 -1
  200. package/esm/dist/src/Organization.js.map +1 -1
  201. package/esm/dist/src/Permissions.d.ts.map +1 -1
  202. package/esm/dist/src/Permissions.js +1 -1
  203. package/esm/dist/src/Permissions.js.map +1 -1
  204. package/esm/dist/src/Platform.d.ts +1 -1
  205. package/esm/dist/src/Platform.d.ts.map +1 -1
  206. package/esm/dist/src/Platform.js +1 -1
  207. package/esm/dist/src/Platform.js.map +1 -1
  208. package/esm/dist/src/ReduceablePrice.d.ts +9 -0
  209. package/esm/dist/src/ReduceablePrice.d.ts.map +1 -0
  210. package/esm/dist/src/ReduceablePrice.js +25 -0
  211. package/esm/dist/src/ReduceablePrice.js.map +1 -0
  212. package/esm/dist/src/RegistrationPeriod.d.ts +2 -0
  213. package/esm/dist/src/RegistrationPeriod.d.ts.map +1 -1
  214. package/esm/dist/src/RegistrationPeriod.js +5 -0
  215. package/esm/dist/src/RegistrationPeriod.js.map +1 -1
  216. package/esm/dist/src/Token.d.ts.map +1 -1
  217. package/esm/dist/src/Token.js +7 -4
  218. package/esm/dist/src/Token.js.map +1 -1
  219. package/esm/dist/src/Version.d.ts +1 -1
  220. package/esm/dist/src/Version.js +1 -1
  221. package/esm/dist/src/email/Email.d.ts +5 -3
  222. package/esm/dist/src/email/Email.d.ts.map +1 -1
  223. package/esm/dist/src/email/Email.js +3 -0
  224. package/esm/dist/src/email/Email.js.map +1 -1
  225. package/esm/dist/src/endpoints/RegisterResponse.d.ts +2 -2
  226. package/esm/dist/src/endpoints/RegisterResponse.d.ts.map +1 -1
  227. package/esm/dist/src/endpoints/RegisterResponse.js +2 -2
  228. package/esm/dist/src/endpoints/RegisterResponse.js.map +1 -1
  229. package/esm/dist/src/filters/ExcelExportRequest.d.ts +1 -0
  230. package/esm/dist/src/filters/ExcelExportRequest.d.ts.map +1 -1
  231. package/esm/dist/src/filters/ExcelExportRequest.js +1 -0
  232. package/esm/dist/src/filters/ExcelExportRequest.js.map +1 -1
  233. package/esm/dist/src/filters/FilterCompilers.d.ts +18 -0
  234. package/esm/dist/src/filters/FilterCompilers.d.ts.map +1 -0
  235. package/esm/dist/src/filters/FilterCompilers.js +104 -0
  236. package/esm/dist/src/filters/FilterCompilers.js.map +1 -0
  237. package/esm/dist/src/filters/InMemoryFilter.d.ts +5 -3
  238. package/esm/dist/src/filters/InMemoryFilter.d.ts.map +1 -1
  239. package/esm/dist/src/filters/InMemoryFilter.js +19 -74
  240. package/esm/dist/src/filters/InMemoryFilter.js.map +1 -1
  241. package/esm/dist/src/helpers/MemberPlatformMembershipHelper.d.ts +12 -0
  242. package/esm/dist/src/helpers/MemberPlatformMembershipHelper.d.ts.map +1 -0
  243. package/esm/dist/src/helpers/MemberPlatformMembershipHelper.js +70 -0
  244. package/esm/dist/src/helpers/MemberPlatformMembershipHelper.js.map +1 -0
  245. package/esm/dist/src/members/Member.d.ts +1 -0
  246. package/esm/dist/src/members/Member.d.ts.map +1 -1
  247. package/esm/dist/src/members/Member.js +3 -0
  248. package/esm/dist/src/members/Member.js.map +1 -1
  249. package/esm/dist/src/members/MembershipStatus.d.ts +13 -0
  250. package/esm/dist/src/members/MembershipStatus.d.ts.map +1 -0
  251. package/esm/dist/src/members/MembershipStatus.js +15 -0
  252. package/esm/dist/src/members/MembershipStatus.js.map +1 -0
  253. package/esm/dist/src/members/PaymentGeneral.js +1 -1
  254. package/esm/dist/src/members/PaymentGeneral.js.map +1 -1
  255. package/esm/dist/src/members/PaymentWithRegistrations.d.ts +2 -2
  256. package/esm/dist/src/members/PaymentWithRegistrations.d.ts.map +1 -1
  257. package/esm/dist/src/members/PaymentWithRegistrations.js +2 -2
  258. package/esm/dist/src/members/PaymentWithRegistrations.js.map +1 -1
  259. package/esm/dist/src/members/PlatformMember.d.ts +24 -14
  260. package/esm/dist/src/members/PlatformMember.d.ts.map +1 -1
  261. package/esm/dist/src/members/PlatformMember.js +91 -115
  262. package/esm/dist/src/members/PlatformMember.js.map +1 -1
  263. package/esm/dist/src/members/Registration.d.ts +37 -0
  264. package/esm/dist/src/members/Registration.d.ts.map +1 -1
  265. package/esm/dist/src/members/Registration.js +48 -0
  266. package/esm/dist/src/members/Registration.js.map +1 -1
  267. package/esm/dist/src/members/RegistrationWithMemberBlob.d.ts +6 -0
  268. package/esm/dist/src/members/RegistrationWithMemberBlob.d.ts.map +1 -0
  269. package/esm/dist/src/members/RegistrationWithMemberBlob.js +10 -0
  270. package/esm/dist/src/members/RegistrationWithMemberBlob.js.map +1 -0
  271. package/esm/dist/src/members/RegistrationWithTinyMember.d.ts +7 -0
  272. package/esm/dist/src/members/RegistrationWithTinyMember.d.ts.map +1 -0
  273. package/esm/dist/src/members/{RegistrationWithMember.js → RegistrationWithTinyMember.js} +4 -4
  274. package/esm/dist/src/members/RegistrationWithTinyMember.js.map +1 -0
  275. package/esm/dist/src/members/RegistrationsBlob.d.ts +8 -0
  276. package/esm/dist/src/members/RegistrationsBlob.d.ts.map +1 -0
  277. package/esm/dist/src/members/RegistrationsBlob.js +18 -0
  278. package/esm/dist/src/members/RegistrationsBlob.js.map +1 -0
  279. package/esm/dist/src/members/checkout/RegisterCart.d.ts +18 -2
  280. package/esm/dist/src/members/checkout/RegisterCart.d.ts.map +1 -1
  281. package/esm/dist/src/members/checkout/RegisterCart.js +51 -2
  282. package/esm/dist/src/members/checkout/RegisterCart.js.map +1 -1
  283. package/esm/dist/src/members/checkout/RegisterCheckout.d.ts +23 -3
  284. package/esm/dist/src/members/checkout/RegisterCheckout.d.ts.map +1 -1
  285. package/esm/dist/src/members/checkout/RegisterCheckout.js +108 -11
  286. package/esm/dist/src/members/checkout/RegisterCheckout.js.map +1 -1
  287. package/esm/dist/src/members/checkout/RegisterItem.d.ts +7 -13
  288. package/esm/dist/src/members/checkout/RegisterItem.d.ts.map +1 -1
  289. package/esm/dist/src/members/checkout/RegisterItem.js +48 -20
  290. package/esm/dist/src/members/checkout/RegisterItem.js.map +1 -1
  291. package/esm/dist/src/members/checkout/RegistrationWithPlatformMember.d.ts +13 -0
  292. package/esm/dist/src/members/checkout/RegistrationWithPlatformMember.d.ts.map +1 -0
  293. package/esm/dist/src/members/checkout/RegistrationWithPlatformMember.js +17 -0
  294. package/esm/dist/src/members/checkout/RegistrationWithPlatformMember.js.map +1 -0
  295. package/esm/dist/src/members/records/RecordCategory.d.ts +1 -0
  296. package/esm/dist/src/members/records/RecordCategory.d.ts.map +1 -1
  297. package/esm/dist/src/members/records/RecordCategory.js +11 -1
  298. package/esm/dist/src/members/records/RecordCategory.js.map +1 -1
  299. package/esm/dist/src/webshops/Webshop.d.ts +1 -0
  300. package/esm/dist/src/webshops/Webshop.d.ts.map +1 -1
  301. package/esm/dist/src/webshops/Webshop.js +4 -1
  302. package/esm/dist/src/webshops/Webshop.js.map +1 -1
  303. package/esm/dist/src/webshops/WebshopMetaData.d.ts +1 -0
  304. package/esm/dist/src/webshops/WebshopMetaData.d.ts.map +1 -1
  305. package/esm/dist/src/webshops/WebshopMetaData.js +4 -0
  306. package/esm/dist/src/webshops/WebshopMetaData.js.map +1 -1
  307. package/package.json +2 -2
  308. package/dist/src/endpoints/GroupsWithOrganizations.d.ts +0 -8
  309. package/dist/src/endpoints/GroupsWithOrganizations.d.ts.map +0 -1
  310. package/dist/src/endpoints/GroupsWithOrganizations.js.map +0 -1
  311. package/esm/dist/src/endpoints/GroupsWithOrganizations.d.ts +0 -8
  312. package/esm/dist/src/endpoints/GroupsWithOrganizations.d.ts.map +0 -1
  313. package/esm/dist/src/endpoints/GroupsWithOrganizations.js +0 -18
  314. package/esm/dist/src/endpoints/GroupsWithOrganizations.js.map +0 -1
  315. package/esm/dist/src/members/RegistrationWithMember.d.ts.map +0 -1
  316. package/esm/dist/src/members/RegistrationWithMember.js.map +0 -1
@@ -14,11 +14,14 @@ import { MembersBlob, MemberWithRegistrationsBlob } from './MemberWithRegistrati
14
14
  import { ObjectWithRecords, PatchAnswers } from './ObjectWithRecords.js';
15
15
  import { OrganizationRecordsConfiguration } from './OrganizationRecordsConfiguration.js';
16
16
  import { Parent } from './Parent.js';
17
+ import { Registration } from './Registration.js';
18
+ import { RegistrationsBlob } from './RegistrationsBlob.js';
17
19
  import { RegisterCheckout } from './checkout/RegisterCheckout.js';
18
20
  import { RegisterItem } from './checkout/RegisterItem.js';
19
21
  import { RecordAnswer } from './records/RecordAnswer.js';
20
22
  import { RecordCategory } from './records/RecordCategory.js';
21
23
  import { RecordSettings } from './records/RecordSettings.js';
24
+ import { type ContinuousMembershipStatus } from './MembershipStatus.js';
22
25
  export declare class PlatformFamily {
23
26
  members: PlatformMember[];
24
27
  documents: DocumentStruct[];
@@ -32,10 +35,21 @@ export declare class PlatformFamily {
32
35
  pendingRegisterItems: RegisterItem[];
33
36
  platform: Platform;
34
37
  organizations: Organization[];
38
+ /**
39
+ * Helper data point, to know whether we already tried loading the full family for this member.
40
+ *
41
+ * By default it is false, which is okay most of the times. Set it to true when you know you didn't really load the full family and there is a chance
42
+ * there are unknown members in the family.
43
+ */
44
+ _isSingle: boolean;
35
45
  constructor(context: {
36
46
  contextOrganization?: Organization | null;
37
47
  platform: Platform;
38
48
  });
49
+ /**
50
+ * returns the uuid of the oldest member
51
+ */
52
+ get uuid(): string;
39
53
  insertOrganization(organization: Organization): void;
40
54
  getOrganization(id: string): Organization | undefined;
41
55
  static create(blob: MembersBlob, context: {
@@ -56,7 +70,6 @@ export declare class PlatformFamily {
56
70
  contextOrganization?: Organization | null;
57
71
  platform: Platform;
58
72
  }): PlatformMember[];
59
- insertSingle(member: MemberWithRegistrationsBlob): PlatformMember;
60
73
  /**
61
74
  * These clones are for patches so they only become visible after saving
62
75
  */
@@ -83,17 +96,12 @@ export declare class PlatformFamily {
83
96
  deleteMember(id: string): void;
84
97
  setDocuments(documents: DocumentStruct[]): void;
85
98
  }
86
- export declare enum MembershipStatus {
87
- Active = "Active",
88
- Trial = "Trial",
89
- Expiring = "Expiring",
90
- Inactive = "Inactive",
91
- Temporary = "Temporary"
92
- }
93
- export declare enum ContinuousMembershipStatus {
94
- Full = "Full",
95
- Partial = "Partial",
96
- None = "None"
99
+ export declare class PlatformRegistration extends Registration {
100
+ member: PlatformMember;
101
+ static createSingles(blob: RegistrationsBlob, context: {
102
+ contextOrganization?: Organization | null;
103
+ platform: Platform;
104
+ }): PlatformRegistration[];
97
105
  }
98
106
  export declare class PlatformMember implements ObjectWithRecords {
99
107
  member: MemberWithRegistrationsBlob;
@@ -119,7 +127,8 @@ export declare class PlatformMember implements ObjectWithRecords {
119
127
  get platform(): Platform;
120
128
  get allGroups(): Group[];
121
129
  get isSaving(): boolean;
122
- get membershipStatus(): MembershipStatus;
130
+ get filteredMemberships(): import("./MemberPlatformMembership.js").MemberPlatformMembership[];
131
+ get membershipStatus(): import("./MembershipStatus.js").MembershipStatus;
123
132
  get hasFutureMembership(): boolean;
124
133
  get shouldApplyReducedPrice(): boolean;
125
134
  getContinuousMembershipStatus({ start, end }: {
@@ -174,7 +183,7 @@ export declare class PlatformMember implements ObjectWithRecords {
174
183
  currentPeriod?: boolean;
175
184
  types?: GroupType[];
176
185
  organizationId?: string;
177
- }): import("./Registration.js").Registration[];
186
+ }): Registration[];
178
187
  filterGroups(filters: {
179
188
  groups?: Group[] | null;
180
189
  canRegister?: boolean;
@@ -201,6 +210,7 @@ export declare class PlatformMember implements ObjectWithRecords {
201
210
  types?: GroupType[];
202
211
  }): Organization[];
203
212
  get groups(): Group[];
213
+ get registrationDescription(): string;
204
214
  insertOrganization(organization: Organization): void;
205
215
  canRegister(group: Group, organization: Organization): boolean;
206
216
  canRegisterForWaitingList(group: Group, organization: Organization): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformMember.d.ts","sourceRoot":"","sources":["../../../../src/members/PlatformMember.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlatformMember.d.ts","sourceRoot":"","sources":["../../../../src/members/PlatformMember.ts"],"names":[],"mappings":"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"}
@@ -4,10 +4,12 @@ import { GroupType } from '../GroupType.js';
4
4
  import { PermissionLevel } from '../PermissionLevel.js';
5
5
  import { PermissionsResourceType } from '../PermissionsResourceType.js';
6
6
  import { Platform } from '../Platform.js';
7
+ import { MemberPlatformMembershipHelper } from '../helpers/MemberPlatformMembershipHelper.js';
7
8
  import { MemberDetails } from './MemberDetails.js';
8
9
  import { MemberWithRegistrationsBlob } from './MemberWithRegistrationsBlob.js';
9
10
  import { NationalRegisterNumberOptOut } from './NationalRegisterNumberOptOut.js';
10
11
  import { OrganizationRecordsConfiguration } from './OrganizationRecordsConfiguration.js';
12
+ import { Registration } from './Registration.js';
11
13
  import { RegisterCheckout } from './checkout/RegisterCheckout.js';
12
14
  import { RegisterItem } from './checkout/RegisterItem.js';
13
15
  export class PlatformFamily {
@@ -23,9 +25,27 @@ export class PlatformFamily {
23
25
  */
24
26
  this.pendingRegisterItems = [];
25
27
  this.organizations = [];
28
+ /**
29
+ * Helper data point, to know whether we already tried loading the full family for this member.
30
+ *
31
+ * By default it is false, which is okay most of the times. Set it to true when you know you didn't really load the full family and there is a chance
32
+ * there are unknown members in the family.
33
+ */
34
+ this._isSingle = false;
26
35
  this.platform = context.platform;
27
36
  this.organizations = context.contextOrganization ? [context.contextOrganization] : [];
28
37
  }
38
+ /**
39
+ * returns the uuid of the oldest member
40
+ */
41
+ get uuid() {
42
+ if (this.members.length === 0) {
43
+ return '';
44
+ }
45
+ // Sort by createdAt, so the oldest member is first
46
+ const sorted = this.members.sort((a, b) => a.member.createdAt.getTime() - b.member.createdAt.getTime());
47
+ return sorted[0].id;
48
+ }
29
49
  insertOrganization(organization) {
30
50
  const existing = this.organizations.find(o => o.id === organization.id);
31
51
  if (existing) {
@@ -110,6 +130,7 @@ export class PlatformFamily {
110
130
  const memberList = [];
111
131
  for (const member of blob.members) {
112
132
  const family = new PlatformFamily(context);
133
+ family._isSingle = true;
113
134
  for (const organization of blob.organizations) {
114
135
  // Check if this organization is relevant to this member
115
136
  if (member.registrations.find(r => r.organizationId === organization.id) || member.platformMemberships.find(m => m.organizationId === organization.id) || member.responsibilities.find(r => r.organizationId === organization.id)) {
@@ -125,14 +146,6 @@ export class PlatformFamily {
125
146
  }
126
147
  return memberList;
127
148
  }
128
- insertSingle(member) {
129
- const platformMember = new PlatformMember({
130
- member,
131
- family: this,
132
- });
133
- this.members.push(platformMember);
134
- return platformMember;
135
- }
136
149
  /**
137
150
  * These clones are for patches so they only become visible after saving
138
151
  */
@@ -301,7 +314,7 @@ export class PlatformFamily {
301
314
  const organizationIds = new Set();
302
315
  const organizationTags = new Set();
303
316
  for (const member of this.members) {
304
- for (const group of member.filterGroups({ types: [GroupType.Membership], currentPeriod: true, includePending: false })) {
317
+ for (const group of member.filterGroups({ types: [GroupType.Membership], currentPeriod: true, includePending: true })) {
305
318
  groups.add(group.id);
306
319
  if (group.defaultAgeGroupId) {
307
320
  defaultGroupIds.add(group.defaultAgeGroupId);
@@ -338,20 +351,34 @@ export class PlatformFamily {
338
351
  this.documents = documents;
339
352
  }
340
353
  }
341
- export var MembershipStatus;
342
- (function (MembershipStatus) {
343
- MembershipStatus["Active"] = "Active";
344
- MembershipStatus["Trial"] = "Trial";
345
- MembershipStatus["Expiring"] = "Expiring";
346
- MembershipStatus["Inactive"] = "Inactive";
347
- MembershipStatus["Temporary"] = "Temporary";
348
- })(MembershipStatus || (MembershipStatus = {}));
349
- export var ContinuousMembershipStatus;
350
- (function (ContinuousMembershipStatus) {
351
- ContinuousMembershipStatus["Full"] = "Full";
352
- ContinuousMembershipStatus["Partial"] = "Partial";
353
- ContinuousMembershipStatus["None"] = "None";
354
- })(ContinuousMembershipStatus || (ContinuousMembershipStatus = {}));
354
+ export class PlatformRegistration extends Registration {
355
+ static createSingles(blob, context) {
356
+ const results = [];
357
+ for (const registration of blob.registrations) {
358
+ const family = new PlatformFamily(context);
359
+ const member = registration.member;
360
+ for (const organization of blob.organizations) {
361
+ // Check if this organization is relevant to this member
362
+ if (member.registrations.find(r => r.organizationId === organization.id) || member.platformMemberships.find(m => m.organizationId === organization.id) || member.responsibilities.find(r => r.organizationId === organization.id)) {
363
+ family.insertOrganization(organization);
364
+ }
365
+ }
366
+ const platformMember = new PlatformMember({
367
+ member,
368
+ family,
369
+ });
370
+ const platformRegistration = PlatformRegistration.create({
371
+ ...registration,
372
+ member: platformMember,
373
+ });
374
+ // todo (double in create)
375
+ platformRegistration.member = platformMember;
376
+ family.members.push(platformMember);
377
+ results.push(platformRegistration);
378
+ }
379
+ return results;
380
+ }
381
+ }
355
382
  export class PlatformMember {
356
383
  get id() {
357
384
  return this.member.id;
@@ -397,88 +424,24 @@ export class PlatformMember {
397
424
  get isSaving() {
398
425
  return this._savingPatch !== null || this._isCreating !== null;
399
426
  }
427
+ get filteredMemberships() {
428
+ return this.patchedMember.platformMemberships.filter(t => !!this.organizations.find(o => o.id === t.organizationId));
429
+ }
400
430
  get membershipStatus() {
401
- let status = MembershipStatus.Inactive;
402
- const now = new Date();
403
- for (const t of this.patchedMember.platformMemberships) {
404
- const organization = this.organizations.find(o => o.id === t.organizationId);
405
- if (!organization) {
406
- continue;
407
- }
408
- if (t.endDate && t.endDate < now) {
409
- continue;
410
- }
411
- if (t.startDate > now) {
412
- continue;
413
- }
414
- if (t.expireDate && t.expireDate < now) {
415
- if (status === MembershipStatus.Inactive) {
416
- status = MembershipStatus.Expiring;
417
- }
418
- continue;
419
- }
420
- const isTemporary = t.endDate.getTime() - t.startDate.getTime() < 1000 * 60 * 60 * 24 * 31;
421
- if (status === MembershipStatus.Inactive || ((status === MembershipStatus.Expiring || status === MembershipStatus.Temporary) && !isTemporary)) {
422
- if (isTemporary) {
423
- status = MembershipStatus.Temporary;
424
- }
425
- else {
426
- if (t.trialUntil && t.trialUntil > now) {
427
- status = MembershipStatus.Trial;
428
- }
429
- else {
430
- status = MembershipStatus.Active;
431
- break;
432
- }
433
- }
434
- }
435
- }
436
- return status;
431
+ return MemberPlatformMembershipHelper.getStatus(this.filteredMemberships);
437
432
  }
438
433
  get hasFutureMembership() {
439
- const now = new Date();
440
- for (const t of this.patchedMember.platformMemberships) {
441
- const organization = this.organizations.find(o => o.id === t.organizationId);
442
- if (!organization) {
443
- continue;
444
- }
445
- if (t.startDate > now) {
446
- return true;
447
- }
448
- }
449
- return false;
434
+ return MemberPlatformMembershipHelper.hasFutureMembership(this.filteredMemberships);
450
435
  }
451
436
  get shouldApplyReducedPrice() {
452
437
  return this.patchedMember.details.shouldApplyReducedPrice;
453
438
  }
454
439
  getContinuousMembershipStatus({ start, end }) {
455
- const memberships = this.patchedMember.platformMemberships.filter(t => !!this.organizations.find(o => o.id === t.organizationId));
456
- const sorted = memberships
457
- // filter memberships in period
458
- .filter(m => m.endDate > start && m.startDate < end)
459
- // sort by start date (earliest first)
460
- .sort((a, b) => a.startDate.getTime() - b.startDate.getTime());
461
- // date until when there is a membership
462
- let coveredDate = start;
463
- for (const t of sorted) {
464
- if (t.startDate <= coveredDate) {
465
- if (t.endDate > coveredDate) {
466
- coveredDate = t.endDate;
467
- }
468
- }
469
- // there is a gap -> partially covered
470
- else {
471
- return ContinuousMembershipStatus.Partial;
472
- }
473
- }
474
- if (coveredDate >= end) {
475
- return ContinuousMembershipStatus.Full;
476
- }
477
- // if there is at least one membership in the period
478
- if (sorted.length > 0) {
479
- return ContinuousMembershipStatus.Partial;
480
- }
481
- return ContinuousMembershipStatus.None;
440
+ return MemberPlatformMembershipHelper.getContinuousMembershipStatus({
441
+ memberships: this.filteredMemberships,
442
+ start,
443
+ end,
444
+ });
482
445
  }
483
446
  addPatch(p) {
484
447
  this.patch = this.patch.patch(MemberWithRegistrationsBlob.patch(p));
@@ -743,24 +706,26 @@ export class PlatformMember {
743
706
  base.push(registration.group);
744
707
  }
745
708
  // Loop checkout
746
- for (const item of [...this.family.checkout.cart.items, ...(filters.includePending ? this.family.pendingRegisterItems : [])]) {
747
- if (item.member.id === this.id) {
748
- if (filters.currentPeriod === false) {
749
- continue;
750
- }
751
- if (filters.periodId && item.group.periodId !== filters.periodId) {
752
- continue;
753
- }
754
- if (filters.canRegister !== undefined) {
755
- continue;
756
- }
757
- if (filters.organizationId !== undefined) {
758
- if (item.organization.id !== filters.organizationId) {
709
+ if (filters.includePending) {
710
+ for (const item of [...this.family.checkout.cart.items, ...this.family.pendingRegisterItems]) {
711
+ if (item.member.id === this.id) {
712
+ if (filters.currentPeriod === false) {
759
713
  continue;
760
714
  }
761
- }
762
- if (!base.find(g => g.id === item.group.id)) {
763
- base.push(item.group);
715
+ if (filters.periodId && item.group.periodId !== filters.periodId) {
716
+ continue;
717
+ }
718
+ if (filters.canRegister !== undefined) {
719
+ continue;
720
+ }
721
+ if (filters.organizationId !== undefined) {
722
+ if (item.organization.id !== filters.organizationId) {
723
+ continue;
724
+ }
725
+ }
726
+ if (!base.find(g => g.id === item.group.id)) {
727
+ base.push(item.group);
728
+ }
764
729
  }
765
730
  }
766
731
  }
@@ -840,7 +805,14 @@ export class PlatformMember {
840
805
  return base;
841
806
  }
842
807
  get groups() {
843
- return this.filterGroups({ currentPeriod: true, includePending: false });
808
+ return this.filterGroups({ currentPeriod: true, includePending: false, types: [GroupType.Membership, GroupType.WaitingList] });
809
+ }
810
+ get registrationDescription() {
811
+ const groups = this.groups;
812
+ if (groups.length === 0) {
813
+ return $t('57109b34-1238-4e62-84a0-14a81d7c2bfa');
814
+ }
815
+ return groups.map(g => g.settings.name).join(', ');
844
816
  }
845
817
  insertOrganization(organization) {
846
818
  this.family.insertOrganization(organization);
@@ -926,7 +898,11 @@ export class PlatformMember {
926
898
  continue;
927
899
  }
928
900
  if (hasAdminPermissions) {
929
- // Cache the result
901
+ /**
902
+ * If the user has admin permissions to this record category, we'll cache this
903
+ * This will make sure that we won't filter individual records inside the category by their
904
+ * user manager permissions (some fields are hidden for user managers, or read-only)
905
+ */
930
906
  adminPermissionsMap.set(recordCategory.id, true);
931
907
  }
932
908
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformMember.js","sourceRoot":"","sources":["../../../../src/members/PlatformMember.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlatformMember.js","sourceRoot":"","sources":["../../../../src/members/PlatformMember.ts"],"names":[],"mappings":"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"}
@@ -8,10 +8,16 @@ import { RegisterItemOption } from './checkout/RegisterItem.js';
8
8
  import { ObjectWithRecords, PatchAnswers } from './ObjectWithRecords.js';
9
9
  import { RecordAnswer } from './records/RecordAnswer.js';
10
10
  import { RecordSettings } from './records/RecordSettings.js';
11
+ import { AppliedRegistrationDiscount } from '../AppliedRegistrationDiscount.js';
11
12
  export declare class Registration extends AutoEncoder implements ObjectWithRecords {
12
13
  id: string;
13
14
  group: Group;
14
15
  groupPrice: GroupPrice;
16
+ /**
17
+ * The group price inside a registration is cached and is a snapshot of the group price at the time of registration.
18
+ * This method returns the most up to date group price we can still find.
19
+ */
20
+ get updatedGroupPrice(): GroupPrice;
15
21
  options: RegisterItemOption[];
16
22
  recordAnswers: Map<string, RecordAnswer>;
17
23
  get groupId(): string;
@@ -48,7 +54,38 @@ export declare class Registration extends AutoEncoder implements ObjectWithRecor
48
54
  */
49
55
  pricePaid: number;
50
56
  stockReservations: StockReservation[];
57
+ /**
58
+ * The total balance that has been charged for this registration.
59
+ * This includes discounts, and manually adjusted balances.
60
+ */
51
61
  balances: GenericBalance[];
62
+ /**
63
+ * Discounts that were applied to this registration.
64
+ * Note that these discounts are saved in separate balance items and
65
+ * are not included in the price.
66
+ *
67
+ * Reason is that discounts can change after you've been registered
68
+ */
69
+ discounts: Map<string, AppliedRegistrationDiscount>;
70
+ /**
71
+ * @danger this could be glitchy
72
+ * The total price that has been charged for this registration.
73
+ * This includes discounts, and manually adjusted balances.
74
+ *
75
+ * Note: only returns balances that are due now. For trials this can be 0 until the trial becomes payable (± 1 week before the trial ends).
76
+ */
77
+ get calculatedPrice(): number;
78
+ /**
79
+ * @danger
80
+ * The registration's balances only include the balance items that are due. It is possible in some weird situations that a registration
81
+ * has discounts that are only due in more than a week, in that case, the balance could be:
82
+ * € 0
83
+ * € 40 is due in 2 weeks for the normal price
84
+ * € -10 is due in 2 week for the discount
85
+ * The discounts object will already contain the -10.
86
+ * So this method will return 10 euro instead of €40
87
+ */
88
+ get calculatedPriceWithoutDiscounts(): number;
52
89
  get isTrial(): boolean;
53
90
  get description(): string;
54
91
  doesMatchFilter(filter: StamhoofdFilter): boolean;