@stamhoofd/structures 2.63.0 → 2.64.0

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 (153) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/BalanceItem.d.ts +1 -0
  6. package/dist/src/BalanceItem.d.ts.map +1 -1
  7. package/dist/src/BalanceItem.js +38 -8
  8. package/dist/src/BalanceItem.js.map +1 -1
  9. package/dist/src/DefaultAgeGroup.d.ts.map +1 -1
  10. package/dist/src/DefaultAgeGroup.js.map +1 -1
  11. package/dist/src/GenericBalance.d.ts +12 -0
  12. package/dist/src/GenericBalance.d.ts.map +1 -0
  13. package/dist/src/GenericBalance.js +32 -0
  14. package/dist/src/GenericBalance.js.map +1 -0
  15. package/dist/src/GroupSettings.d.ts +9 -0
  16. package/dist/src/GroupSettings.d.ts.map +1 -1
  17. package/dist/src/GroupSettings.js +9 -0
  18. package/dist/src/GroupSettings.js.map +1 -1
  19. package/dist/src/PaymentMethod.d.ts +1 -1
  20. package/dist/src/PaymentMethod.d.ts.map +1 -1
  21. package/dist/src/PaymentMethod.js +5 -5
  22. package/dist/src/PaymentMethod.js.map +1 -1
  23. package/dist/src/Platform.d.ts +1 -0
  24. package/dist/src/Platform.d.ts.map +1 -1
  25. package/dist/src/Platform.js +4 -0
  26. package/dist/src/Platform.js.map +1 -1
  27. package/dist/src/PriceBreakdown.d.ts +1 -0
  28. package/dist/src/PriceBreakdown.d.ts.map +1 -1
  29. package/dist/src/ReceivableBalance.d.ts +5 -7
  30. package/dist/src/ReceivableBalance.d.ts.map +1 -1
  31. package/dist/src/ReceivableBalance.js +10 -9
  32. package/dist/src/ReceivableBalance.js.map +1 -1
  33. package/dist/src/RegistrationPeriodBase.d.ts +1 -0
  34. package/dist/src/RegistrationPeriodBase.d.ts.map +1 -1
  35. package/dist/src/RegistrationPeriodBase.js +4 -0
  36. package/dist/src/RegistrationPeriodBase.js.map +1 -1
  37. package/dist/src/Version.d.ts +1 -1
  38. package/dist/src/Version.js +1 -1
  39. package/dist/src/endpoints/PayableBalanceCollection.d.ts +2 -1
  40. package/dist/src/endpoints/PayableBalanceCollection.d.ts.map +1 -1
  41. package/dist/src/endpoints/PayableBalanceCollection.js +8 -3
  42. package/dist/src/endpoints/PayableBalanceCollection.js.map +1 -1
  43. package/dist/src/members/Member.d.ts +3 -0
  44. package/dist/src/members/Member.d.ts.map +1 -1
  45. package/dist/src/members/Member.js +3 -0
  46. package/dist/src/members/Member.js.map +1 -1
  47. package/dist/src/members/MemberPlatformMembership.d.ts +2 -0
  48. package/dist/src/members/MemberPlatformMembership.d.ts.map +1 -1
  49. package/dist/src/members/MemberPlatformMembership.js +7 -0
  50. package/dist/src/members/MemberPlatformMembership.js.map +1 -1
  51. package/dist/src/members/MemberWithRegistrationsBlob.d.ts +0 -1
  52. package/dist/src/members/MemberWithRegistrationsBlob.d.ts.map +1 -1
  53. package/dist/src/members/MemberWithRegistrationsBlob.js +0 -3
  54. package/dist/src/members/MemberWithRegistrationsBlob.js.map +1 -1
  55. package/dist/src/members/PlatformMember.d.ts +1 -0
  56. package/dist/src/members/PlatformMember.d.ts.map +1 -1
  57. package/dist/src/members/PlatformMember.js +8 -1
  58. package/dist/src/members/PlatformMember.js.map +1 -1
  59. package/dist/src/members/Registration.d.ts +16 -3
  60. package/dist/src/members/Registration.d.ts.map +1 -1
  61. package/dist/src/members/Registration.js +27 -3
  62. package/dist/src/members/Registration.js.map +1 -1
  63. package/dist/src/members/checkout/RegisterCart.d.ts +1 -0
  64. package/dist/src/members/checkout/RegisterCart.d.ts.map +1 -1
  65. package/dist/src/members/checkout/RegisterCart.js +13 -7
  66. package/dist/src/members/checkout/RegisterCart.js.map +1 -1
  67. package/dist/src/members/checkout/RegisterCheckout.d.ts.map +1 -1
  68. package/dist/src/members/checkout/RegisterCheckout.js +5 -1
  69. package/dist/src/members/checkout/RegisterCheckout.js.map +1 -1
  70. package/dist/src/members/checkout/RegisterItem.d.ts +20 -5
  71. package/dist/src/members/checkout/RegisterItem.d.ts.map +1 -1
  72. package/dist/src/members/checkout/RegisterItem.js +227 -82
  73. package/dist/src/members/checkout/RegisterItem.js.map +1 -1
  74. package/dist/src/members/records/RecordAnswer.d.ts.map +1 -1
  75. package/dist/src/members/records/RecordAnswer.js +1 -6
  76. package/dist/src/members/records/RecordAnswer.js.map +1 -1
  77. package/esm/dist/index.d.ts +1 -0
  78. package/esm/dist/index.d.ts.map +1 -1
  79. package/esm/dist/index.js +1 -0
  80. package/esm/dist/index.js.map +1 -1
  81. package/esm/dist/src/BalanceItem.d.ts +1 -0
  82. package/esm/dist/src/BalanceItem.d.ts.map +1 -1
  83. package/esm/dist/src/BalanceItem.js +37 -8
  84. package/esm/dist/src/BalanceItem.js.map +1 -1
  85. package/esm/dist/src/DefaultAgeGroup.d.ts.map +1 -1
  86. package/esm/dist/src/DefaultAgeGroup.js.map +1 -1
  87. package/esm/dist/src/GenericBalance.d.ts +12 -0
  88. package/esm/dist/src/GenericBalance.d.ts.map +1 -0
  89. package/esm/dist/src/GenericBalance.js +28 -0
  90. package/esm/dist/src/GenericBalance.js.map +1 -0
  91. package/esm/dist/src/GroupSettings.d.ts +9 -0
  92. package/esm/dist/src/GroupSettings.d.ts.map +1 -1
  93. package/esm/dist/src/GroupSettings.js +9 -0
  94. package/esm/dist/src/GroupSettings.js.map +1 -1
  95. package/esm/dist/src/PaymentMethod.d.ts +1 -1
  96. package/esm/dist/src/PaymentMethod.d.ts.map +1 -1
  97. package/esm/dist/src/PaymentMethod.js +1 -1
  98. package/esm/dist/src/PaymentMethod.js.map +1 -1
  99. package/esm/dist/src/Platform.d.ts +1 -0
  100. package/esm/dist/src/Platform.d.ts.map +1 -1
  101. package/esm/dist/src/Platform.js +4 -0
  102. package/esm/dist/src/Platform.js.map +1 -1
  103. package/esm/dist/src/PriceBreakdown.d.ts +1 -0
  104. package/esm/dist/src/PriceBreakdown.d.ts.map +1 -1
  105. package/esm/dist/src/ReceivableBalance.d.ts +5 -7
  106. package/esm/dist/src/ReceivableBalance.d.ts.map +1 -1
  107. package/esm/dist/src/ReceivableBalance.js +10 -9
  108. package/esm/dist/src/ReceivableBalance.js.map +1 -1
  109. package/esm/dist/src/RegistrationPeriodBase.d.ts +1 -0
  110. package/esm/dist/src/RegistrationPeriodBase.d.ts.map +1 -1
  111. package/esm/dist/src/RegistrationPeriodBase.js +4 -0
  112. package/esm/dist/src/RegistrationPeriodBase.js.map +1 -1
  113. package/esm/dist/src/Version.d.ts +1 -1
  114. package/esm/dist/src/Version.js +1 -1
  115. package/esm/dist/src/endpoints/PayableBalanceCollection.d.ts +2 -1
  116. package/esm/dist/src/endpoints/PayableBalanceCollection.d.ts.map +1 -1
  117. package/esm/dist/src/endpoints/PayableBalanceCollection.js +8 -3
  118. package/esm/dist/src/endpoints/PayableBalanceCollection.js.map +1 -1
  119. package/esm/dist/src/members/Member.d.ts +3 -0
  120. package/esm/dist/src/members/Member.d.ts.map +1 -1
  121. package/esm/dist/src/members/Member.js +3 -0
  122. package/esm/dist/src/members/Member.js.map +1 -1
  123. package/esm/dist/src/members/MemberPlatformMembership.d.ts +2 -0
  124. package/esm/dist/src/members/MemberPlatformMembership.d.ts.map +1 -1
  125. package/esm/dist/src/members/MemberPlatformMembership.js +7 -0
  126. package/esm/dist/src/members/MemberPlatformMembership.js.map +1 -1
  127. package/esm/dist/src/members/MemberWithRegistrationsBlob.d.ts +0 -1
  128. package/esm/dist/src/members/MemberWithRegistrationsBlob.d.ts.map +1 -1
  129. package/esm/dist/src/members/MemberWithRegistrationsBlob.js +0 -3
  130. package/esm/dist/src/members/MemberWithRegistrationsBlob.js.map +1 -1
  131. package/esm/dist/src/members/PlatformMember.d.ts +1 -0
  132. package/esm/dist/src/members/PlatformMember.d.ts.map +1 -1
  133. package/esm/dist/src/members/PlatformMember.js +8 -1
  134. package/esm/dist/src/members/PlatformMember.js.map +1 -1
  135. package/esm/dist/src/members/Registration.d.ts +16 -3
  136. package/esm/dist/src/members/Registration.d.ts.map +1 -1
  137. package/esm/dist/src/members/Registration.js +27 -3
  138. package/esm/dist/src/members/Registration.js.map +1 -1
  139. package/esm/dist/src/members/checkout/RegisterCart.d.ts +1 -0
  140. package/esm/dist/src/members/checkout/RegisterCart.d.ts.map +1 -1
  141. package/esm/dist/src/members/checkout/RegisterCart.js +13 -7
  142. package/esm/dist/src/members/checkout/RegisterCart.js.map +1 -1
  143. package/esm/dist/src/members/checkout/RegisterCheckout.d.ts.map +1 -1
  144. package/esm/dist/src/members/checkout/RegisterCheckout.js +5 -1
  145. package/esm/dist/src/members/checkout/RegisterCheckout.js.map +1 -1
  146. package/esm/dist/src/members/checkout/RegisterItem.d.ts +20 -5
  147. package/esm/dist/src/members/checkout/RegisterItem.d.ts.map +1 -1
  148. package/esm/dist/src/members/checkout/RegisterItem.js +228 -83
  149. package/esm/dist/src/members/checkout/RegisterItem.js.map +1 -1
  150. package/esm/dist/src/members/records/RecordAnswer.d.ts.map +1 -1
  151. package/esm/dist/src/members/records/RecordAnswer.js +1 -6
  152. package/esm/dist/src/members/records/RecordAnswer.js.map +1 -1
  153. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { ArrayDecoder, AutoEncoder, field, IntegerDecoder, MapDecoder, StringDecoder } from '@simonbackx/simple-encoding';
2
+ import { ArrayDecoder, AutoEncoder, BooleanDecoder, DateDecoder, field, IntegerDecoder, MapDecoder, StringDecoder } from '@simonbackx/simple-encoding';
3
3
  import { isSimpleError, isSimpleErrors, SimpleError, SimpleErrors } from '@simonbackx/simple-errors';
4
4
  import { Formatter } from '@stamhoofd/utility';
5
5
  import { v4 as uuidv4 } from 'uuid';
@@ -10,6 +10,7 @@ import { compileToInMemoryFilter } from '../../filters/InMemoryFilter.js';
10
10
  import { registerItemInMemoryFilterCompilers } from '../../filters/inMemoryFilterDefinitions.js';
11
11
  import { RecordAnswerDecoder } from '../records/RecordAnswer.js';
12
12
  import { RecordCategory } from '../records/RecordCategory.js';
13
+ import { PlatformMembershipTypeBehaviour } from '../../Platform.js';
13
14
  export class RegisterItemOption extends AutoEncoder {
14
15
  constructor() {
15
16
  super(...arguments);
@@ -31,6 +32,8 @@ export class IDRegisterItem extends AutoEncoder {
31
32
  this.options = [];
32
33
  this.recordAnswers = new Map();
33
34
  this.replaceRegistrationIds = [];
35
+ this.trial = false;
36
+ this.customStartDate = null;
34
37
  }
35
38
  hydrate(context) {
36
39
  return RegisterItem.fromId(this, context);
@@ -60,6 +63,12 @@ __decorate([
60
63
  __decorate([
61
64
  field({ decoder: new ArrayDecoder(StringDecoder) })
62
65
  ], IDRegisterItem.prototype, "replaceRegistrationIds", void 0);
66
+ __decorate([
67
+ field({ decoder: BooleanDecoder, version: 354 })
68
+ ], IDRegisterItem.prototype, "trial", void 0);
69
+ __decorate([
70
+ field({ decoder: DateDecoder, nullable: true, version: 354 })
71
+ ], IDRegisterItem.prototype, "customStartDate", void 0);
63
72
  export class RegisterItem {
64
73
  /**
65
74
  * @deprecated
@@ -67,17 +76,6 @@ export class RegisterItem {
67
76
  get waitingList() {
68
77
  return false;
69
78
  }
70
- static fromRegistration(registration, member, organization) {
71
- return new RegisterItem({
72
- id: registration.id,
73
- member,
74
- group: registration.group,
75
- organization,
76
- groupPrice: registration.groupPrice,
77
- recordAnswers: registration.recordAnswers,
78
- options: registration.options,
79
- });
80
- }
81
79
  static defaultFor(member, group, organization) {
82
80
  if (group.organizationId !== organization.id) {
83
81
  throw new Error('Group and organization do not match in RegisterItem.defaultFor');
@@ -90,13 +88,19 @@ export class RegisterItem {
90
88
  return item;
91
89
  }
92
90
  constructor(data) {
93
- var _a, _b, _c, _d, _e, _f, _g, _h;
91
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
92
+ this.trial = false;
94
93
  this.options = [];
95
94
  this.recordAnswers = new Map();
95
+ this.customStartDate = null;
96
96
  /**
97
97
  * Price for the new registration
98
98
  */
99
99
  this.calculatedPrice = 0;
100
+ /**
101
+ * Price for the new registration that is due later
102
+ */
103
+ this.calculatedPriceDueLater = 0;
100
104
  /**
101
105
  * Refund for the replaced registrations
102
106
  */
@@ -137,6 +141,8 @@ export class RegisterItem {
137
141
  this.cartError = (_f = data.cartError) !== null && _f !== void 0 ? _f : null;
138
142
  this.calculatedPrice = (_g = data.calculatedPrice) !== null && _g !== void 0 ? _g : 0;
139
143
  this.calculatedRefund = (_h = data.calculatedRefund) !== null && _h !== void 0 ? _h : 0;
144
+ this.calculatedPriceDueLater = (_j = data.calculatedPriceDueLater) !== null && _j !== void 0 ? _j : 0;
145
+ this.trial = (_k = data.trial) !== null && _k !== void 0 ? _k : false;
140
146
  // Select all defaults
141
147
  for (const optionMenu of this.group.settings.optionMenus) {
142
148
  if (!optionMenu.multipleChoice) {
@@ -168,6 +174,101 @@ export class RegisterItem {
168
174
  }
169
175
  }
170
176
  }
177
+ if (data.trial === undefined) {
178
+ this.trial = this.canHaveTrial;
179
+ }
180
+ if (data.customStartDate !== undefined) {
181
+ this.customStartDate = data.customStartDate;
182
+ }
183
+ }
184
+ static fromRegistration(registration, member, organization) {
185
+ return new RegisterItem({
186
+ id: registration.id,
187
+ member,
188
+ group: registration.group,
189
+ organization,
190
+ groupPrice: registration.groupPrice,
191
+ recordAnswers: registration.recordAnswers,
192
+ options: registration.options,
193
+ trial: registration.trialUntil !== null,
194
+ customStartDate: registration.startDate,
195
+ });
196
+ }
197
+ clone() {
198
+ return new RegisterItem({
199
+ id: this.id,
200
+ member: this.member,
201
+ group: this.group,
202
+ organization: this.organization,
203
+ groupPrice: this.groupPrice.clone(),
204
+ options: this.options.map(o => o.clone()),
205
+ recordAnswers: new Map([...this.recordAnswers.entries()].map(([k, v]) => [k, v.clone()])),
206
+ replaceRegistrations: this.replaceRegistrations.map(r => r.clone()),
207
+ cartError: this.cartError,
208
+ calculatedPrice: this.calculatedPrice,
209
+ calculatedRefund: this.calculatedRefund,
210
+ calculatedPriceDueLater: this.calculatedPriceDueLater,
211
+ trial: this.trial,
212
+ customStartDate: this.customStartDate,
213
+ });
214
+ }
215
+ copyFrom(item) {
216
+ this.groupPrice = item.groupPrice.clone();
217
+ this.options = item.options.map(o => o.clone());
218
+ this.recordAnswers = new Map([...item.recordAnswers.entries()].map(([k, v]) => [k, v.clone()]));
219
+ this.calculatedPrice = item.calculatedPrice;
220
+ this.calculatedRefund = item.calculatedRefund;
221
+ this.calculatedPriceDueLater = item.calculatedPriceDueLater;
222
+ this.trial = item.trial;
223
+ this.customStartDate = item.customStartDate;
224
+ }
225
+ static fromId(idRegisterItem, context) {
226
+ const member = context.members.find(m => m.member.id === idRegisterItem.memberId);
227
+ if (!member) {
228
+ throw new Error('Member not found: ' + idRegisterItem.memberId);
229
+ }
230
+ const organization = context.organizations.find(o => o.id === idRegisterItem.organizationId);
231
+ if (!organization) {
232
+ throw new Error('Organization not found: ' + idRegisterItem.organizationId);
233
+ }
234
+ const group = context.groups.find(g => g.id === idRegisterItem.groupId);
235
+ if (!group) {
236
+ throw new Error('Group not found: ' + idRegisterItem.groupId);
237
+ }
238
+ const replaceRegistrations = [];
239
+ for (const registrationId of idRegisterItem.replaceRegistrationIds) {
240
+ const registration = member.patchedMember.registrations.find(r => r.id === registrationId);
241
+ if (!registration) {
242
+ throw new Error('Registration not found: ' + registrationId);
243
+ }
244
+ replaceRegistrations.push(registration);
245
+ }
246
+ return new RegisterItem({
247
+ id: idRegisterItem.id,
248
+ member,
249
+ group,
250
+ organization,
251
+ groupPrice: idRegisterItem.groupPrice,
252
+ options: idRegisterItem.options,
253
+ recordAnswers: idRegisterItem.recordAnswers,
254
+ replaceRegistrations,
255
+ trial: idRegisterItem.trial,
256
+ customStartDate: idRegisterItem.customStartDate,
257
+ });
258
+ }
259
+ convert() {
260
+ return IDRegisterItem.create({
261
+ id: this.id,
262
+ memberId: this.member.member.id,
263
+ groupId: this.group.id,
264
+ organizationId: this.organization.id,
265
+ groupPrice: this.groupPrice,
266
+ options: this.options,
267
+ replaceRegistrationIds: this.replaceRegistrations.map(r => r.id),
268
+ recordAnswers: this.recordAnswers,
269
+ trial: this.trial,
270
+ customStartDate: this.customStartDate,
271
+ });
171
272
  }
172
273
  get isInCart() {
173
274
  return this.member.family.checkout.cart.contains(this);
@@ -184,20 +285,33 @@ export class RegisterItem {
184
285
  for (const registration of this.replaceRegistrations) {
185
286
  this.calculatedRefund += registration.price;
186
287
  }
288
+ if (this.calculatedTrialUntil) {
289
+ this.calculatedPriceDueLater = this.calculatedPrice;
290
+ this.calculatedPrice = 0;
291
+ }
292
+ else {
293
+ this.calculatedPriceDueLater = 0;
294
+ }
187
295
  }
188
296
  get totalPrice() {
189
297
  return this.calculatedPrice - this.calculatedRefund;
190
298
  }
191
299
  get priceBreakown() {
192
300
  let all = [];
193
- let replacePrice = 0;
194
301
  for (const registration of this.replaceRegistrations) {
195
- replacePrice += registration.price;
196
302
  all.push({
197
303
  name: this.checkout.isAdminFromSameOrganization ? 'Reeds aangerekend voor ' + registration.group.settings.name : 'Terugbetaling ' + registration.group.settings.name,
198
304
  price: -registration.price,
199
305
  });
200
306
  }
307
+ if (this.calculatedPriceDueLater !== 0) {
308
+ const trialUntil = this.calculatedTrialUntil;
309
+ all.push({
310
+ name: 'Later te betalen',
311
+ price: this.calculatedPriceDueLater,
312
+ description: trialUntil ? `Tegen ${Formatter.date(trialUntil)}` : undefined,
313
+ });
314
+ }
201
315
  all = all.filter(a => a.price !== 0);
202
316
  if (all.length > 0) {
203
317
  all.unshift({
@@ -208,33 +322,11 @@ export class RegisterItem {
208
322
  return [
209
323
  ...all,
210
324
  {
211
- name: this.checkout.isAdminFromSameOrganization ? (this.totalPrice >= 0 ? 'Openstaand bedrag stijgt met' : 'Openstaand bedrag daalt met') : 'Totaal',
325
+ name: this.checkout.isAdminFromSameOrganization ? (this.totalPrice >= 0 ? 'Openstaand bedrag stijgt met' : 'Openstaand bedrag daalt met') : (this.calculatedPriceDueLater !== 0 ? 'Nu te betalen' : 'Totaal'),
212
326
  price: this.checkout.isAdminFromSameOrganization ? Math.abs(this.totalPrice) : this.totalPrice,
213
327
  },
214
328
  ];
215
329
  }
216
- clone() {
217
- return new RegisterItem({
218
- id: this.id,
219
- member: this.member,
220
- group: this.group,
221
- organization: this.organization,
222
- groupPrice: this.groupPrice.clone(),
223
- options: this.options.map(o => o.clone()),
224
- recordAnswers: new Map([...this.recordAnswers.entries()].map(([k, v]) => [k, v.clone()])),
225
- replaceRegistrations: this.replaceRegistrations.map(r => r.clone()),
226
- cartError: this.cartError,
227
- calculatedPrice: this.calculatedPrice,
228
- calculatedRefund: this.calculatedRefund,
229
- });
230
- }
231
- copyFrom(item) {
232
- this.groupPrice = item.groupPrice.clone();
233
- this.options = item.options.map(o => o.clone());
234
- this.recordAnswers = new Map([...item.recordAnswers.entries()].map(([k, v]) => [k, v.clone()]));
235
- this.calculatedPrice = item.calculatedPrice;
236
- this.calculatedRefund = item.calculatedRefund;
237
- }
238
330
  getFilteredPrices() {
239
331
  const base = this.group.settings.getFilteredPrices({ admin: this.checkout.isAdminFromSameOrganization });
240
332
  if (this.groupPrice && !base.some(b => b.id === this.groupPrice.id)) {
@@ -248,18 +340,6 @@ export class RegisterItem {
248
340
  getFilteredOptions(menu) {
249
341
  return menu.getFilteredOptions({ admin: this.checkout.isAdminFromSameOrganization });
250
342
  }
251
- convert() {
252
- return IDRegisterItem.create({
253
- id: this.id,
254
- memberId: this.member.member.id,
255
- groupId: this.group.id,
256
- organizationId: this.organization.id,
257
- groupPrice: this.groupPrice,
258
- options: this.options,
259
- replaceRegistrationIds: this.replaceRegistrations.map(r => r.id),
260
- recordAnswers: this.recordAnswers,
261
- });
262
- }
263
343
  get memberId() {
264
344
  return this.member.id;
265
345
  }
@@ -544,6 +624,79 @@ export class RegisterItem {
544
624
  get isValid() {
545
625
  return this.validationError === null;
546
626
  }
627
+ get defaultStartDate() {
628
+ if (this.replaceRegistrations.length > 0) {
629
+ const reg = this.replaceRegistrations[0];
630
+ if (reg.startDate && reg.startDate.getTime() >= this.group.settings.startDate.getTime()) {
631
+ return reg.startDate;
632
+ }
633
+ return this.group.settings.startDate;
634
+ }
635
+ let startDate = Formatter.luxon(new Date());
636
+ startDate = startDate.set({ hour: 0, minute: 0, second: 0, millisecond: 0 });
637
+ return new Date(Math.max(startDate.toJSDate().getTime(), this.group.settings.startDate.getTime()));
638
+ }
639
+ get calculatedStartDate() {
640
+ var _a;
641
+ return (_a = this.customStartDate) !== null && _a !== void 0 ? _a : this.defaultStartDate;
642
+ }
643
+ get calculatedTrialUntil() {
644
+ if (!this.trial) {
645
+ return null;
646
+ }
647
+ let trialUntil = Formatter.luxon(this.calculatedStartDate).plus({ days: this.group.settings.trialDays });
648
+ trialUntil = trialUntil.set({ hour: 23, minute: 59, second: 59, millisecond: 0 });
649
+ return trialUntil.toJSDate();
650
+ }
651
+ get canHaveTrial() {
652
+ if (this.group.type !== GroupType.Membership) {
653
+ return false;
654
+ }
655
+ if (this.group.settings.trialDays <= 0) {
656
+ return false;
657
+ }
658
+ if (this.replaceRegistrations.find(r => r.trialUntil !== null)) {
659
+ return true;
660
+ }
661
+ const currentPeriodId = this.organization.period.period.id;
662
+ const previousPeriodId = this.organization.period.period.previousPeriodId;
663
+ if (!previousPeriodId) {
664
+ // We have no data: never give trails to avoid accidental trials
665
+ return false;
666
+ }
667
+ if (this.group.periodId !== currentPeriodId) {
668
+ return false;
669
+ }
670
+ if (this.group.defaultAgeGroupId) {
671
+ // Use platform based logic to determine if it is a new member by looking at memberships
672
+ const types = this.member.platform.config.membershipTypes.filter(m => m.behaviour === PlatformMembershipTypeBehaviour.Period).map(m => m.id);
673
+ const hasBlockingMemberships = !!this.member.patchedMember.platformMemberships.find((m) => {
674
+ if (!types.includes(m.membershipTypeId)) {
675
+ return false;
676
+ }
677
+ if (m.periodId === currentPeriodId && m.balanceItemId) {
678
+ // Already has a membership for the current period - which is not deletable
679
+ return true;
680
+ }
681
+ if (m.periodId !== previousPeriodId) {
682
+ // Not previous period
683
+ return false;
684
+ }
685
+ return true;
686
+ });
687
+ if (hasBlockingMemberships) {
688
+ return false;
689
+ }
690
+ return true;
691
+ }
692
+ // Should not have a registration last period
693
+ const reg = this.member.filterRegistrations({
694
+ organizationId: this.group.organizationId,
695
+ types: [GroupType.Membership],
696
+ periodId: previousPeriodId,
697
+ });
698
+ return reg.length === 0;
699
+ }
547
700
  validatePeriod(group, type, admin = false) {
548
701
  if (group.type === GroupType.WaitingList) {
549
702
  return;
@@ -583,6 +736,30 @@ export class RegisterItem {
583
736
  if (this.group.organizationId !== this.organization.id) {
584
737
  throw new Error('Group and organization do not match in RegisterItem.validate');
585
738
  }
739
+ if (this.trial && !this.canHaveTrial) {
740
+ this.trial = false;
741
+ }
742
+ if (!checkout.isAdminFromSameOrganization && this.customStartDate) {
743
+ this.customStartDate = null;
744
+ }
745
+ if (this.customStartDate) {
746
+ if (this.customStartDate < this.group.settings.startDate) {
747
+ throw new SimpleError({
748
+ code: 'invalid_start_date',
749
+ message: 'Invalid start date',
750
+ human: 'De startdatum van de inschrijving moet na de startdatum van de groep zelf zijn',
751
+ field: 'customStartDate',
752
+ });
753
+ }
754
+ if (this.customStartDate > this.group.settings.endDate) {
755
+ throw new SimpleError({
756
+ code: 'invalid_start_date',
757
+ message: 'Invalid start date',
758
+ human: 'De startdatum van de inschrijving moet voor de einddatum van de groep zijn',
759
+ field: 'customStartDate',
760
+ });
761
+ }
762
+ }
586
763
  if (this.checkout.singleOrganization && this.checkout.singleOrganization.id !== this.organization.id) {
587
764
  throw new SimpleError({
588
765
  code: 'multiple_organizations',
@@ -624,7 +801,7 @@ export class RegisterItem {
624
801
  field: 'replaceRegistrations',
625
802
  });
626
803
  }
627
- if (!admin) {
804
+ if (!checkout.isAdminFromSameOrganization) { // we don't use admins because this shouldn't raise a warning
628
805
  throw new SimpleError({
629
806
  code: 'invalid_move',
630
807
  message: 'Not allowed to move registrations',
@@ -791,38 +968,6 @@ export class RegisterItem {
791
968
  }
792
969
  }
793
970
  }
794
- static fromId(idRegisterItem, context) {
795
- const member = context.members.find(m => m.member.id === idRegisterItem.memberId);
796
- if (!member) {
797
- throw new Error('Member not found: ' + idRegisterItem.memberId);
798
- }
799
- const organization = context.organizations.find(o => o.id === idRegisterItem.organizationId);
800
- if (!organization) {
801
- throw new Error('Organization not found: ' + idRegisterItem.organizationId);
802
- }
803
- const group = context.groups.find(g => g.id === idRegisterItem.groupId);
804
- if (!group) {
805
- throw new Error('Group not found: ' + idRegisterItem.groupId);
806
- }
807
- const replaceRegistrations = [];
808
- for (const registrationId of idRegisterItem.replaceRegistrationIds) {
809
- const registration = member.patchedMember.registrations.find(r => r.id === registrationId);
810
- if (!registration) {
811
- throw new Error('Registration not found: ' + registrationId);
812
- }
813
- replaceRegistrations.push(registration);
814
- }
815
- return new RegisterItem({
816
- id: idRegisterItem.id,
817
- member,
818
- group,
819
- organization,
820
- groupPrice: idRegisterItem.groupPrice,
821
- options: idRegisterItem.options,
822
- recordAnswers: idRegisterItem.recordAnswers,
823
- replaceRegistrations,
824
- });
825
- }
826
971
  /**
827
972
  * Returns the stock that will be taken (or freed if negative) by all the register items before this item
828
973
  * and with the removed registrations freed up, so this can be negative
@@ -1 +1 @@
1
- {"version":3,"file":"RegisterItem.js","sourceRoot":"","sources":["../../../../../src/members/checkout/RegisterItem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RegisterItem.js","sourceRoot":"","sources":["../../../../../src/members/checkout/RegisterItem.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RecordAnswer.d.ts","sourceRoot":"","sources":["../../../../../src/members/records/RecordAnswer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RecordAnswer.d.ts","sourceRoot":"","sources":["../../../../../src/members/records/RecordAnswer.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,9 @@ import { isSimpleError, SimpleError } from '@simonbackx/simple-errors';
4
4
  import { DataValidator, Formatter, StringCompare } from '@stamhoofd/utility';
5
5
  import { v4 as uuidv4 } from 'uuid';
6
6
  import { Address } from '../../addresses/Address.js';
7
+ import { CountryHelper } from '../../addresses/CountryDecoder.js';
7
8
  import { Image } from '../../files/Image.js';
8
9
  import { RecordChoice, RecordSettings, RecordType, RecordWarning, RecordWarningType } from './RecordSettings.js';
9
- import { CountryHelper } from '../../addresses/CountryDecoder.js';
10
10
  export class RecordAnswer extends AutoEncoder {
11
11
  constructor() {
12
12
  super(...arguments);
@@ -149,11 +149,6 @@ export class RecordAnswerDecoderStatic {
149
149
  case RecordType.Image: return RecordImageAnswer;
150
150
  case RecordType.Integer: return RecordIntegerAnswer;
151
151
  }
152
- throw new SimpleError({
153
- code: 'not_supported',
154
- message: 'A property type is not supported',
155
- human: 'Een bepaald kenmerk wordt niet ondersteund. Kijk na of je wel de laatste versie gebruikt en update indien nodig.',
156
- });
157
152
  }
158
153
  }
159
154
  export const RecordAnswerDecoder = new RecordAnswerDecoderStatic();