@stamhoofd/models 2.39.0 → 2.40.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.
- package/dist/src/factories/AddressFactory.d.ts +3 -4
- package/dist/src/factories/AddressFactory.d.ts.map +1 -1
- package/dist/src/factories/AddressFactory.js +13 -13
- package/dist/src/factories/EmergencyContactFactory.d.ts +3 -4
- package/dist/src/factories/EmergencyContactFactory.d.ts.map +1 -1
- package/dist/src/factories/EmergencyContactFactory.js +27 -27
- package/dist/src/factories/EmergencyContactFactory.js.map +1 -1
- package/dist/src/factories/GroupFactory.d.ts +4 -4
- package/dist/src/factories/GroupFactory.d.ts.map +1 -1
- package/dist/src/factories/GroupFactory.js +8 -8
- package/dist/src/factories/GroupFactory.js.map +1 -1
- package/dist/src/factories/MemberFactory.d.ts +4 -4
- package/dist/src/factories/MemberFactory.d.ts.map +1 -1
- package/dist/src/factories/MemberFactory.js +17 -17
- package/dist/src/factories/MemberFactory.js.map +1 -1
- package/dist/src/factories/OrganizationFactory.d.ts +4 -4
- package/dist/src/factories/OrganizationFactory.js +8 -8
- package/dist/src/factories/OrganizationFactory.js.map +1 -1
- package/dist/src/factories/ParentFactory.d.ts +1 -1
- package/dist/src/factories/ParentFactory.js +19 -19
- package/dist/src/factories/ParentFactory.js.map +1 -1
- package/dist/src/factories/RecordFactory.d.ts +2 -3
- package/dist/src/factories/RecordFactory.d.ts.map +1 -1
- package/dist/src/factories/RecordFactory.js +1 -1
- package/dist/src/factories/RecordFactory.js.map +1 -1
- package/dist/src/factories/RegisterCodeFactory.d.ts +2 -2
- package/dist/src/factories/RegisterCodeFactory.d.ts.map +1 -1
- package/dist/src/factories/RegisterCodeFactory.js +2 -2
- package/dist/src/factories/RegistrationFactory.d.ts +3 -3
- package/dist/src/factories/RegistrationFactory.d.ts.map +1 -1
- package/dist/src/factories/RegistrationFactory.js.map +1 -1
- package/dist/src/factories/RegistrationPeriodFactory.d.ts +2 -2
- package/dist/src/factories/RegistrationPeriodFactory.js.map +1 -1
- package/dist/src/factories/UserFactory.d.ts +3 -3
- package/dist/src/factories/UserFactory.d.ts.map +1 -1
- package/dist/src/factories/UserFactory.js +3 -3
- package/dist/src/factories/UserFactory.js.map +1 -1
- package/dist/src/factories/WebshopFactory.d.ts +4 -4
- package/dist/src/factories/WebshopFactory.d.ts.map +1 -1
- package/dist/src/factories/WebshopFactory.js +1 -1
- package/dist/src/factories/WebshopFactory.js.map +1 -1
- package/dist/src/helpers/DNSValidator.d.ts +1 -1
- package/dist/src/helpers/DNSValidator.d.ts.map +1 -1
- package/dist/src/helpers/DNSValidator.js +33 -33
- package/dist/src/helpers/DNSValidator.js.map +1 -1
- package/dist/src/helpers/EmailBuilder.d.ts +10 -10
- package/dist/src/helpers/EmailBuilder.d.ts.map +1 -1
- package/dist/src/helpers/EmailBuilder.js +34 -34
- package/dist/src/helpers/EmailBuilder.js.map +1 -1
- package/dist/src/helpers/GroupBuilder.d.ts.map +1 -1
- package/dist/src/helpers/GroupBuilder.js +57 -57
- package/dist/src/helpers/GroupBuilder.js.map +1 -1
- package/dist/src/helpers/Handlebars.d.ts.map +1 -1
- package/dist/src/helpers/Handlebars.js +29 -29
- package/dist/src/helpers/Handlebars.js.map +1 -1
- package/dist/src/helpers/MemberMerger.d.ts +1 -1
- package/dist/src/helpers/MemberMerger.d.ts.map +1 -1
- package/dist/src/helpers/MemberMerger.js +33 -33
- package/dist/src/helpers/MemberMerger.js.map +1 -1
- package/dist/src/helpers/MemberMerger.test.js +194 -194
- package/dist/src/helpers/MemberMerger.test.js.map +1 -1
- package/dist/src/helpers/RateLimiter.d.ts.map +1 -1
- package/dist/src/helpers/RateLimiter.js +2 -2
- package/dist/src/helpers/RateLimiter.js.map +1 -1
- package/dist/src/helpers/SetupStepsUpdater.d.ts +22 -0
- package/dist/src/helpers/SetupStepsUpdater.d.ts.map +1 -0
- package/dist/src/helpers/SetupStepsUpdater.js +255 -0
- package/dist/src/helpers/SetupStepsUpdater.js.map +1 -0
- package/dist/src/helpers/WebshopCounter.d.ts +1 -1
- package/dist/src/helpers/WebshopCounter.d.ts.map +1 -1
- package/dist/src/helpers/WebshopCounter.js +1 -1
- package/dist/src/helpers/WebshopCounter.js.map +1 -1
- package/dist/src/helpers/WebshopCounter.test.js +6 -6
- package/dist/src/helpers/WebshopCounter.test.js.map +1 -1
- package/dist/src/index.d.ts +20 -19
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/migrations/1605262045-import-postcodes.js +12 -12
- package/dist/src/migrations/1605262046-import-postcodes-nl.js +10 -10
- package/dist/src/models/BalanceItem.d.ts.map +1 -1
- package/dist/src/models/BalanceItem.js +37 -37
- package/dist/src/models/BalanceItem.js.map +1 -1
- package/dist/src/models/BalanceItemPayment.d.ts.map +1 -1
- package/dist/src/models/BalanceItemPayment.js +13 -13
- package/dist/src/models/BalanceItemPayment.js.map +1 -1
- package/dist/src/models/BuckarooPayment.d.ts +1 -1
- package/dist/src/models/BuckarooPayment.d.ts.map +1 -1
- package/dist/src/models/BuckarooPayment.js +5 -5
- package/dist/src/models/BuckarooPayment.js.map +1 -1
- package/dist/src/models/CachedOutstandingBalance.d.ts.map +1 -1
- package/dist/src/models/CachedOutstandingBalance.js +37 -37
- package/dist/src/models/CachedOutstandingBalance.js.map +1 -1
- package/dist/src/models/Document.d.ts +4 -4
- package/dist/src/models/Document.d.ts.map +1 -1
- package/dist/src/models/Document.js +27 -27
- package/dist/src/models/Document.js.map +1 -1
- package/dist/src/models/DocumentTemplate.d.ts +4 -4
- package/dist/src/models/DocumentTemplate.d.ts.map +1 -1
- package/dist/src/models/DocumentTemplate.js +72 -72
- package/dist/src/models/DocumentTemplate.js.map +1 -1
- package/dist/src/models/Email.d.ts.map +1 -1
- package/dist/src/models/Email.js +63 -64
- package/dist/src/models/Email.js.map +1 -1
- package/dist/src/models/EmailRecipient.d.ts.map +1 -1
- package/dist/src/models/EmailRecipient.js +20 -20
- package/dist/src/models/EmailRecipient.js.map +1 -1
- package/dist/src/models/EmailTemplate.d.ts +3 -3
- package/dist/src/models/EmailTemplate.d.ts.map +1 -1
- package/dist/src/models/EmailTemplate.js +16 -16
- package/dist/src/models/EmailTemplate.js.map +1 -1
- package/dist/src/models/EmailVerificationCode.d.ts +2 -2
- package/dist/src/models/EmailVerificationCode.d.ts.map +1 -1
- package/dist/src/models/EmailVerificationCode.js +57 -55
- package/dist/src/models/EmailVerificationCode.js.map +1 -1
- package/dist/src/models/Event.d.ts +2 -2
- package/dist/src/models/Event.d.ts.map +1 -1
- package/dist/src/models/Event.js +15 -15
- package/dist/src/models/Event.js.map +1 -1
- package/dist/src/models/Group.d.ts +3 -1
- package/dist/src/models/Group.d.ts.map +1 -1
- package/dist/src/models/Group.js +46 -35
- package/dist/src/models/Group.js.map +1 -1
- package/dist/src/models/Image.d.ts +1 -1
- package/dist/src/models/Image.d.ts.map +1 -1
- package/dist/src/models/Image.js +26 -26
- package/dist/src/models/Image.js.map +1 -1
- package/dist/src/models/Member.d.ts +8 -8
- package/dist/src/models/Member.d.ts.map +1 -1
- package/dist/src/models/Member.js +60 -60
- package/dist/src/models/Member.js.map +1 -1
- package/dist/src/models/MemberPlatformMembership.d.ts +3 -3
- package/dist/src/models/MemberPlatformMembership.d.ts.map +1 -1
- package/dist/src/models/MemberPlatformMembership.js +26 -26
- package/dist/src/models/MemberPlatformMembership.js.map +1 -1
- package/dist/src/models/MemberResponsibilityRecord.d.ts.map +1 -1
- package/dist/src/models/MemberResponsibilityRecord.js +13 -13
- package/dist/src/models/MemberResponsibilityRecord.js.map +1 -1
- package/dist/src/models/MergedMember.d.ts +3 -3
- package/dist/src/models/MergedMember.d.ts.map +1 -1
- package/dist/src/models/MergedMember.js +19 -19
- package/dist/src/models/MergedMember.js.map +1 -1
- package/dist/src/models/MolliePayment.d.ts +1 -1
- package/dist/src/models/MolliePayment.d.ts.map +1 -1
- package/dist/src/models/MolliePayment.js +5 -5
- package/dist/src/models/MolliePayment.js.map +1 -1
- package/dist/src/models/MollieToken.d.ts.map +1 -1
- package/dist/src/models/MollieToken.js +60 -60
- package/dist/src/models/MollieToken.js.map +1 -1
- package/dist/src/models/OneTimeToken.d.ts +2 -2
- package/dist/src/models/OneTimeToken.d.ts.map +1 -1
- package/dist/src/models/OneTimeToken.js +13 -13
- package/dist/src/models/OneTimeToken.js.map +1 -1
- package/dist/src/models/Order.d.ts +1 -1
- package/dist/src/models/Order.d.ts.map +1 -1
- package/dist/src/models/Order.js +70 -70
- package/dist/src/models/Order.js.map +1 -1
- package/dist/src/models/Organization.d.ts +5 -5
- package/dist/src/models/Organization.d.ts.map +1 -1
- package/dist/src/models/Organization.js +127 -127
- package/dist/src/models/Organization.js.map +1 -1
- package/dist/src/models/OrganizationRegistrationPeriod.d.ts.map +1 -1
- package/dist/src/models/OrganizationRegistrationPeriod.js +15 -15
- package/dist/src/models/OrganizationRegistrationPeriod.js.map +1 -1
- package/dist/src/models/PasswordToken.d.ts +3 -3
- package/dist/src/models/PasswordToken.d.ts.map +1 -1
- package/dist/src/models/PasswordToken.js +17 -17
- package/dist/src/models/PasswordToken.js.map +1 -1
- package/dist/src/models/PayconiqPayment.d.ts +1 -1
- package/dist/src/models/PayconiqPayment.d.ts.map +1 -1
- package/dist/src/models/PayconiqPayment.js +49 -49
- package/dist/src/models/PayconiqPayment.js.map +1 -1
- package/dist/src/models/Payment.d.ts +3 -3
- package/dist/src/models/Payment.d.ts.map +1 -1
- package/dist/src/models/Payment.js +36 -36
- package/dist/src/models/Payment.js.map +1 -1
- package/dist/src/models/Platform.d.ts +2 -2
- package/dist/src/models/Platform.d.ts.map +1 -1
- package/dist/src/models/Platform.js +8 -8
- package/dist/src/models/Platform.js.map +1 -1
- package/dist/src/models/RegisterCode.d.ts +1 -1
- package/dist/src/models/RegisterCode.d.ts.map +1 -1
- package/dist/src/models/RegisterCode.js +11 -11
- package/dist/src/models/RegisterCode.js.map +1 -1
- package/dist/src/models/Registration.d.ts +1 -1
- package/dist/src/models/Registration.d.ts.map +1 -1
- package/dist/src/models/Registration.js +88 -88
- package/dist/src/models/Registration.js.map +1 -1
- package/dist/src/models/RegistrationPeriod.d.ts.map +1 -1
- package/dist/src/models/RegistrationPeriod.js +12 -12
- package/dist/src/models/RegistrationPeriod.js.map +1 -1
- package/dist/src/models/STCredit.d.ts +1 -1
- package/dist/src/models/STCredit.d.ts.map +1 -1
- package/dist/src/models/STCredit.js +12 -12
- package/dist/src/models/STCredit.js.map +1 -1
- package/dist/src/models/STInvoice.d.ts +1 -1
- package/dist/src/models/STInvoice.d.ts.map +1 -1
- package/dist/src/models/STInvoice.js +16 -16
- package/dist/src/models/STInvoice.js.map +1 -1
- package/dist/src/models/STPackage.d.ts +1 -1
- package/dist/src/models/STPackage.d.ts.map +1 -1
- package/dist/src/models/STPackage.js +39 -39
- package/dist/src/models/STPackage.js.map +1 -1
- package/dist/src/models/STPendingInvoice.d.ts +1 -1
- package/dist/src/models/STPendingInvoice.d.ts.map +1 -1
- package/dist/src/models/STPendingInvoice.js +11 -11
- package/dist/src/models/STPendingInvoice.js.map +1 -1
- package/dist/src/models/StripeAccount.d.ts.map +1 -1
- package/dist/src/models/StripeAccount.js +13 -13
- package/dist/src/models/StripeAccount.js.map +1 -1
- package/dist/src/models/StripeCheckoutSession.d.ts +1 -1
- package/dist/src/models/StripeCheckoutSession.d.ts.map +1 -1
- package/dist/src/models/StripeCheckoutSession.js +7 -7
- package/dist/src/models/StripeCheckoutSession.js.map +1 -1
- package/dist/src/models/StripePaymentIntent.d.ts +1 -1
- package/dist/src/models/StripePaymentIntent.d.ts.map +1 -1
- package/dist/src/models/StripePaymentIntent.js +7 -7
- package/dist/src/models/StripePaymentIntent.js.map +1 -1
- package/dist/src/models/Ticket.d.ts +2 -2
- package/dist/src/models/Ticket.d.ts.map +1 -1
- package/dist/src/models/Ticket.js +23 -23
- package/dist/src/models/Ticket.js.map +1 -1
- package/dist/src/models/Token.d.ts +3 -3
- package/dist/src/models/Token.d.ts.map +1 -1
- package/dist/src/models/Token.js +27 -27
- package/dist/src/models/Token.js.map +1 -1
- package/dist/src/models/Token.test.js +11 -11
- package/dist/src/models/UsedRegisterCode.d.ts +1 -1
- package/dist/src/models/UsedRegisterCode.d.ts.map +1 -1
- package/dist/src/models/UsedRegisterCode.js +10 -10
- package/dist/src/models/UsedRegisterCode.js.map +1 -1
- package/dist/src/models/User.d.ts +4 -4
- package/dist/src/models/User.d.ts.map +1 -1
- package/dist/src/models/User.js +53 -51
- package/dist/src/models/User.js.map +1 -1
- package/dist/src/models/UserPermissions.d.ts +3 -3
- package/dist/src/models/UserPermissions.d.ts.map +1 -1
- package/dist/src/models/UserPermissions.js +12 -12
- package/dist/src/models/UserPermissions.js.map +1 -1
- package/dist/src/models/Webshop.d.ts +1 -1
- package/dist/src/models/Webshop.d.ts.map +1 -1
- package/dist/src/models/Webshop.js +23 -23
- package/dist/src/models/Webshop.js.map +1 -1
- package/dist/src/models/WebshopDiscountCode.d.ts +1 -1
- package/dist/src/models/WebshopDiscountCode.d.ts.map +1 -1
- package/dist/src/models/WebshopDiscountCode.js +16 -16
- package/dist/src/models/WebshopDiscountCode.js.map +1 -1
- package/dist/src/models/addresses/City.d.ts.map +1 -1
- package/dist/src/models/addresses/City.js +9 -9
- package/dist/src/models/addresses/City.js.map +1 -1
- package/dist/src/models/addresses/PostalCode.d.ts.map +1 -1
- package/dist/src/models/addresses/PostalCode.js +11 -11
- package/dist/src/models/addresses/PostalCode.js.map +1 -1
- package/dist/src/models/addresses/PostalCode.test.js +22 -22
- package/dist/src/models/addresses/PostalCode.test.js.map +1 -1
- package/dist/src/models/addresses/Province.d.ts.map +1 -1
- package/dist/src/models/addresses/Province.js +5 -5
- package/dist/src/models/addresses/Province.js.map +1 -1
- package/dist/src/models/addresses/Street.d.ts.map +1 -1
- package/dist/src/models/addresses/Street.js +6 -6
- package/dist/src/models/addresses/Street.js.map +1 -1
- package/dist/src/models/index.d.ts +46 -46
- package/dist/src/models/index.d.ts.map +1 -1
- package/dist/src/models/index.js +0 -1
- package/dist/src/models/index.js.map +1 -1
- package/dist/src/structures/OrganizationServerMetaData.d.ts.map +1 -1
- package/dist/src/structures/OrganizationServerMetaData.js +4 -4
- package/dist/src/structures/OrganizationServerMetaData.js.map +1 -1
- package/dist/tests/jest.global.setup.d.ts.map +1 -1
- package/dist/tests/jest.global.setup.js +15 -13
- package/dist/tests/jest.global.setup.js.map +1 -1
- package/dist/tests/jest.setup.js +3 -1
- package/dist/tests/jest.setup.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +3 -3
- package/src/factories/AddressFactory.ts +17 -17
- package/src/factories/EmergencyContactFactory.ts +30 -31
- package/src/factories/GroupFactory.ts +30 -30
- package/src/factories/MemberFactory.ts +41 -38
- package/src/factories/OrganizationFactory.ts +15 -15
- package/src/factories/ParentFactory.ts +24 -24
- package/src/factories/RecordFactory.ts +5 -4
- package/src/factories/RegisterCodeFactory.ts +7 -7
- package/src/factories/RegistrationFactory.ts +16 -16
- package/src/factories/RegistrationPeriodFactory.ts +5 -5
- package/src/factories/UserFactory.ts +20 -19
- package/src/factories/WebshopFactory.ts +14 -14
- package/src/helpers/DNSValidator.ts +89 -84
- package/src/helpers/EmailBuilder.ts +141 -135
- package/src/helpers/GroupBuilder.ts +181 -181
- package/src/helpers/Handlebars.ts +57 -54
- package/src/helpers/MemberMerger.test.ts +702 -702
- package/src/helpers/MemberMerger.ts +83 -77
- package/src/helpers/RateLimiter.ts +25 -27
- package/src/helpers/SetupStepsUpdater.ts +402 -0
- package/src/helpers/WebshopCounter.test.ts +12 -12
- package/src/helpers/WebshopCounter.ts +20 -19
- package/src/index.ts +20 -19
- package/src/migrations/1605262045-import-postcodes.ts +59 -63
- package/src/migrations/1605262046-import-postcodes-nl.ts +41 -43
- package/src/models/BalanceItem.ts +173 -172
- package/src/models/BalanceItemPayment.ts +32 -33
- package/src/models/BuckarooPayment.ts +7 -7
- package/src/models/CachedOutstandingBalance.ts +98 -99
- package/src/models/Document.ts +90 -87
- package/src/models/DocumentTemplate.ts +207 -198
- package/src/models/Email.ts +198 -200
- package/src/models/EmailRecipient.ts +38 -39
- package/src/models/EmailTemplate.ts +36 -37
- package/src/models/EmailVerificationCode.ts +146 -142
- package/src/models/Event.ts +53 -53
- package/src/models/Group.ts +136 -123
- package/src/models/Image.ts +48 -48
- package/src/models/Member.ts +277 -275
- package/src/models/MemberPlatformMembership.ts +71 -71
- package/src/models/MemberResponsibilityRecord.ts +32 -32
- package/src/models/MergedMember.ts +77 -77
- package/src/models/MolliePayment.ts +7 -7
- package/src/models/MollieToken.ts +131 -126
- package/src/models/OneTimeToken.ts +40 -39
- package/src/models/Order.ts +379 -372
- package/src/models/Organization.ts +332 -325
- package/src/models/OrganizationRegistrationPeriod.ts +50 -50
- package/src/models/PasswordToken.ts +42 -42
- package/src/models/PayconiqPayment.ts +80 -76
- package/src/models/Payment.ts +86 -86
- package/src/models/Platform.ts +21 -22
- package/src/models/RegisterCode.ts +26 -26
- package/src/models/Registration.ts +167 -168
- package/src/models/RegistrationPeriod.ts +29 -29
- package/src/models/STCredit.ts +24 -25
- package/src/models/STInvoice.ts +34 -34
- package/src/models/STPackage.ts +143 -136
- package/src/models/STPendingInvoice.ts +26 -26
- package/src/models/StripeAccount.ts +27 -27
- package/src/models/StripeCheckoutSession.ts +10 -10
- package/src/models/StripePaymentIntent.ts +10 -10
- package/src/models/Ticket.ts +51 -52
- package/src/models/Token.test.ts +13 -13
- package/src/models/Token.ts +64 -63
- package/src/models/UsedRegisterCode.ts +20 -21
- package/src/models/User.ts +148 -144
- package/src/models/UserPermissions.ts +25 -28
- package/src/models/Webshop.ts +53 -53
- package/src/models/WebshopDiscountCode.ts +33 -33
- package/src/models/addresses/City.ts +12 -12
- package/src/models/addresses/PostalCode.test.ts +68 -69
- package/src/models/addresses/PostalCode.ts +57 -57
- package/src/models/addresses/Province.ts +8 -8
- package/src/models/addresses/Street.ts +10 -12
- package/src/models/index.ts +54 -55
- package/src/structures/OrganizationServerMetaData.ts +36 -36
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Factory } from
|
|
1
|
+
import { Factory } from '@simonbackx/simple-database';
|
|
2
2
|
import { Gender, MemberDetails, ParentType } from '@stamhoofd/structures';
|
|
3
|
-
import { Formatter } from
|
|
3
|
+
import { Formatter } from '@stamhoofd/utility';
|
|
4
4
|
|
|
5
|
-
import { Member, MemberWithRegistrations } from
|
|
6
|
-
import { Organization } from
|
|
7
|
-
import { User } from
|
|
5
|
+
import { Member, MemberWithRegistrations } from '../models/Member';
|
|
6
|
+
import { Organization } from '../models/Organization';
|
|
7
|
+
import { User } from '../models/User';
|
|
8
8
|
import { EmergencyContactFactory } from './EmergencyContactFactory';
|
|
9
9
|
import { OrganizationFactory } from './OrganizationFactory';
|
|
10
10
|
import { ParentFactory } from './ParentFactory';
|
|
@@ -16,44 +16,44 @@ class Options {
|
|
|
16
16
|
/// In order to add something to the keychain, we need the private key of the user (since everything needs to be signed)
|
|
17
17
|
userPrivateKey?: string;
|
|
18
18
|
|
|
19
|
-
minAge?: number
|
|
20
|
-
maxAge?: number
|
|
19
|
+
minAge?: number;
|
|
20
|
+
maxAge?: number;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
export class MemberFactory extends Factory<Options, MemberWithRegistrations> {
|
|
24
24
|
async create(): Promise<MemberWithRegistrations> {
|
|
25
25
|
const organization = this.options.organization
|
|
26
|
-
?? await new OrganizationFactory({}).create()
|
|
26
|
+
?? await new OrganizationFactory({}).create();
|
|
27
27
|
|
|
28
|
-
const memberDetails = new MemberDetails()
|
|
29
|
-
const minAge = (this.options.minAge ?? 6)
|
|
30
|
-
const maxAge = this.options.maxAge ?? 18
|
|
28
|
+
const memberDetails = new MemberDetails();
|
|
29
|
+
const minAge = (this.options.minAge ?? 6);
|
|
30
|
+
const maxAge = this.options.maxAge ?? 18;
|
|
31
31
|
|
|
32
32
|
memberDetails.gender = Math.random() >= 0.05 ? (Math.random() >= 0.5 ? Gender.Male : Gender.Female) : Gender.Other;
|
|
33
33
|
memberDetails.firstName = this.randomFirstName(memberDetails.gender);
|
|
34
34
|
memberDetails.birthDay = new Date(
|
|
35
|
-
new Date().getFullYear()
|
|
36
|
-
|
|
35
|
+
new Date().getFullYear()
|
|
36
|
+
- (minAge + Math.floor(Math.random() * (maxAge - minAge + 1))),
|
|
37
37
|
Math.floor(Math.random() * 12), // 11 = 12
|
|
38
|
-
Math.floor(Math.random() * 31)
|
|
38
|
+
Math.floor(Math.random() * 31),
|
|
39
39
|
);
|
|
40
40
|
|
|
41
41
|
// For now only generate -18
|
|
42
42
|
memberDetails.address = null;
|
|
43
43
|
|
|
44
44
|
if (memberDetails.age! >= 14) {
|
|
45
|
-
memberDetails.phone
|
|
46
|
-
|
|
47
|
-
Math.floor(Math.random() * 10)
|
|
48
|
-
|
|
49
|
-
Math.floor(Math.random() * 10)
|
|
50
|
-
Math.floor(Math.random() * 10)
|
|
51
|
-
|
|
52
|
-
Math.floor(Math.random() * 10)
|
|
53
|
-
Math.floor(Math.random() * 10)
|
|
54
|
-
|
|
55
|
-
Math.floor(Math.random() * 10)
|
|
56
|
-
Math.floor(Math.random() * 10);
|
|
45
|
+
memberDetails.phone
|
|
46
|
+
= '+32 47'
|
|
47
|
+
+ Math.floor(Math.random() * 10)
|
|
48
|
+
+ ' '
|
|
49
|
+
+ Math.floor(Math.random() * 10)
|
|
50
|
+
+ Math.floor(Math.random() * 10)
|
|
51
|
+
+ ' '
|
|
52
|
+
+ Math.floor(Math.random() * 10)
|
|
53
|
+
+ Math.floor(Math.random() * 10)
|
|
54
|
+
+ ' '
|
|
55
|
+
+ Math.floor(Math.random() * 10)
|
|
56
|
+
+ Math.floor(Math.random() * 10);
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
let parentFactory = new ParentFactory({});
|
|
@@ -61,7 +61,7 @@ export class MemberFactory extends Factory<Options, MemberWithRegistrations> {
|
|
|
61
61
|
memberDetails.parents.push(await parentFactory.create());
|
|
62
62
|
|
|
63
63
|
// 80% chance to have 2 parents if not guardian
|
|
64
|
-
if (Math.random() >= 0.2 && memberDetails.parents[0].type
|
|
64
|
+
if (Math.random() >= 0.2 && memberDetails.parents[0].type !== ParentType.Other) {
|
|
65
65
|
// 90% chance to have parents of different gender
|
|
66
66
|
parentFactory = new ParentFactory({
|
|
67
67
|
type:
|
|
@@ -83,19 +83,22 @@ export class MemberFactory extends Factory<Options, MemberWithRegistrations> {
|
|
|
83
83
|
// Sort
|
|
84
84
|
|
|
85
85
|
if (memberDetails.parents.length == 2 && Math.random() >= 0.9) {
|
|
86
|
-
memberDetails.lastName = memberDetails.parents[0].lastName +
|
|
87
|
-
}
|
|
86
|
+
memberDetails.lastName = memberDetails.parents[0].lastName + '-' + memberDetails.parents[1].lastName;
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
88
89
|
if (memberDetails.parents[0].type == ParentType.Father) {
|
|
89
90
|
memberDetails.lastName = memberDetails.parents[0].lastName;
|
|
90
|
-
}
|
|
91
|
+
}
|
|
92
|
+
else if (memberDetails.parents[1] && memberDetails.parents[1].type == ParentType.Father) {
|
|
91
93
|
memberDetails.lastName = memberDetails.parents[1].lastName;
|
|
92
|
-
}
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
93
96
|
memberDetails.lastName = memberDetails.parents[0].lastName;
|
|
94
97
|
}
|
|
95
98
|
}
|
|
96
99
|
|
|
97
100
|
if (memberDetails.age! >= 16) {
|
|
98
|
-
memberDetails.email = Formatter.slugEmail(memberDetails.firstName +
|
|
101
|
+
memberDetails.email = Formatter.slugEmail(memberDetails.firstName + '-' + memberDetails.lastName) + '@geen-email.com';
|
|
99
102
|
}
|
|
100
103
|
|
|
101
104
|
const emergencyContactFactory = new EmergencyContactFactory({});
|
|
@@ -106,17 +109,17 @@ export class MemberFactory extends Factory<Options, MemberWithRegistrations> {
|
|
|
106
109
|
|
|
107
110
|
const member = new Member()
|
|
108
111
|
.setManyRelation(Member.registrations, [])
|
|
109
|
-
.setManyRelation(Member.users, this.options.user ? [this.options.user] : [])
|
|
112
|
+
.setManyRelation(Member.users, this.options.user ? [this.options.user] : []);
|
|
110
113
|
|
|
111
|
-
member.organizationId = organization.id
|
|
112
|
-
member.details = memberDetails
|
|
113
|
-
await member.save()
|
|
114
|
+
member.organizationId = organization.id;
|
|
115
|
+
member.details = memberDetails;
|
|
116
|
+
await member.save();
|
|
114
117
|
|
|
115
118
|
// Give user access to the encrypted data
|
|
116
119
|
if (this.options.user) {
|
|
117
|
-
await Member.users.link(member, [this.options.user])
|
|
120
|
+
await Member.users.link(member, [this.options.user]);
|
|
118
121
|
}
|
|
119
|
-
|
|
122
|
+
|
|
120
123
|
return member as any;
|
|
121
124
|
}
|
|
122
125
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Factory } from
|
|
2
|
-
import { Address, Country, OrganizationMetaData, OrganizationType, PermissionRoleDetailed } from
|
|
3
|
-
import { Formatter } from
|
|
1
|
+
import { Factory } from '@simonbackx/simple-database';
|
|
2
|
+
import { Address, Country, OrganizationMetaData, OrganizationType, PermissionRoleDetailed } from '@stamhoofd/structures';
|
|
3
|
+
import { Formatter } from '@stamhoofd/utility';
|
|
4
4
|
|
|
5
|
-
import { Organization } from
|
|
6
|
-
import { RegistrationPeriod } from
|
|
7
|
-
import { RegistrationPeriodFactory } from
|
|
5
|
+
import { Organization } from '../models/Organization';
|
|
6
|
+
import { RegistrationPeriod } from '../models/RegistrationPeriod';
|
|
7
|
+
import { RegistrationPeriodFactory } from './RegistrationPeriodFactory';
|
|
8
8
|
|
|
9
9
|
class Options {
|
|
10
10
|
uri?: string;
|
|
@@ -19,8 +19,8 @@ class Options {
|
|
|
19
19
|
export class OrganizationFactory extends Factory<Options, Organization> {
|
|
20
20
|
async create(): Promise<Organization> {
|
|
21
21
|
const organization = new Organization();
|
|
22
|
-
organization.name = this.options.name ??
|
|
23
|
-
organization.website =
|
|
22
|
+
organization.name = this.options.name ?? 'Organization ' + (new Date().getTime() + Math.floor(Math.random() * 999999));
|
|
23
|
+
organization.website = 'https://domain.com';
|
|
24
24
|
organization.registerDomain = this.options.domain ?? null;
|
|
25
25
|
organization.uri = this.options.uri ?? Formatter.slug(organization.name);
|
|
26
26
|
organization.meta = this.options.meta ?? OrganizationMetaData.create({
|
|
@@ -28,15 +28,15 @@ export class OrganizationFactory extends Factory<Options, Organization> {
|
|
|
28
28
|
umbrellaOrganization: null,
|
|
29
29
|
defaultEndDate: new Date(),
|
|
30
30
|
defaultStartDate: new Date(),
|
|
31
|
-
defaultPrices: []
|
|
31
|
+
defaultPrices: [],
|
|
32
32
|
});
|
|
33
33
|
organization.address = Address.create({
|
|
34
|
-
street:
|
|
35
|
-
number:
|
|
36
|
-
city: this.options.city ??
|
|
37
|
-
postalCode:
|
|
38
|
-
country: Country.Belgium
|
|
39
|
-
})
|
|
34
|
+
street: 'Demostraat',
|
|
35
|
+
number: '12',
|
|
36
|
+
city: this.options.city ?? 'Gent',
|
|
37
|
+
postalCode: '9000',
|
|
38
|
+
country: Country.Belgium,
|
|
39
|
+
});
|
|
40
40
|
|
|
41
41
|
const period = this.options.period ?? await new RegistrationPeriodFactory({}).create();
|
|
42
42
|
organization.periodId = period.id;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Factory } from
|
|
1
|
+
import { Factory } from '@simonbackx/simple-database';
|
|
2
2
|
import { Gender, Parent, ParentType } from '@stamhoofd/structures';
|
|
3
|
-
import { Formatter } from
|
|
3
|
+
import { Formatter } from '@stamhoofd/utility';
|
|
4
4
|
|
|
5
|
-
import { AddressFactory } from
|
|
5
|
+
import { AddressFactory } from './AddressFactory';
|
|
6
6
|
|
|
7
7
|
interface Options {
|
|
8
8
|
type?: ParentType;
|
|
@@ -21,28 +21,28 @@ export class ParentFactory extends Factory<Options, Parent> {
|
|
|
21
21
|
parent.lastName = this.randomLastName();
|
|
22
22
|
|
|
23
23
|
parent.address = await new AddressFactory({}).create();
|
|
24
|
-
parent.phone
|
|
25
|
-
|
|
26
|
-
Math.floor(Math.random() * 10)
|
|
27
|
-
|
|
28
|
-
Math.floor(Math.random() * 10)
|
|
29
|
-
Math.floor(Math.random() * 10)
|
|
30
|
-
|
|
31
|
-
Math.floor(Math.random() * 10)
|
|
32
|
-
Math.floor(Math.random() * 10)
|
|
33
|
-
|
|
34
|
-
Math.floor(Math.random() * 10)
|
|
35
|
-
Math.floor(Math.random() * 10);
|
|
24
|
+
parent.phone
|
|
25
|
+
= '+32 47'
|
|
26
|
+
+ Math.floor(Math.random() * 10)
|
|
27
|
+
+ ' '
|
|
28
|
+
+ Math.floor(Math.random() * 10)
|
|
29
|
+
+ Math.floor(Math.random() * 10)
|
|
30
|
+
+ ' '
|
|
31
|
+
+ Math.floor(Math.random() * 10)
|
|
32
|
+
+ Math.floor(Math.random() * 10)
|
|
33
|
+
+ ' '
|
|
34
|
+
+ Math.floor(Math.random() * 10)
|
|
35
|
+
+ Math.floor(Math.random() * 10);
|
|
36
36
|
|
|
37
|
-
parent.email
|
|
38
|
-
Formatter.slugEmail(
|
|
39
|
-
(Math.random() >= 0.5 ? parent.firstName.toLowerCase() : parent.firstName.toLowerCase()[0])
|
|
40
|
-
(Math.random() >= 0.5 ?
|
|
41
|
-
parent.lastName.toLowerCase().replace(
|
|
42
|
-
)
|
|
43
|
-
|
|
44
|
-
this.randomArray([
|
|
45
|
-
|
|
37
|
+
parent.email
|
|
38
|
+
= Formatter.slugEmail(
|
|
39
|
+
(Math.random() >= 0.5 ? parent.firstName.toLowerCase() : parent.firstName.toLowerCase()[0])
|
|
40
|
+
+ (Math.random() >= 0.5 ? '.' : Math.random() >= 0.5 ? '_' : '')
|
|
41
|
+
+ parent.lastName.toLowerCase().replace(' ', ''),
|
|
42
|
+
)
|
|
43
|
+
+ '@'
|
|
44
|
+
+ this.randomArray([
|
|
45
|
+
'geen-email.com',
|
|
46
46
|
]);
|
|
47
47
|
return parent;
|
|
48
48
|
}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { Factory } from
|
|
1
|
+
import { Factory } from '@simonbackx/simple-database';
|
|
2
2
|
import { LegacyRecord, LegacyRecordType } from '@stamhoofd/structures';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
type Options = Record<string, never>;
|
|
5
5
|
|
|
6
|
-
export class RecordFactory extends Factory<Options, LegacyRecord> {
|
|
6
|
+
export class RecordFactory extends Factory<Options, LegacyRecord> {
|
|
7
|
+
LegacyRecordLegacyRecord;
|
|
7
8
|
create(): Promise<LegacyRecord> {
|
|
8
9
|
return Promise.resolve(LegacyRecord.create({
|
|
9
|
-
type: this.randomArray(Object.values(LegacyRecordType))
|
|
10
|
+
type: this.randomArray(Object.values(LegacyRecordType)),
|
|
10
11
|
}));
|
|
11
12
|
}
|
|
12
13
|
}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { Factory } from
|
|
1
|
+
import { Factory } from '@simonbackx/simple-database';
|
|
2
2
|
|
|
3
|
-
import { RegisterCode } from
|
|
3
|
+
import { RegisterCode } from '../models';
|
|
4
4
|
|
|
5
5
|
type OrganizationOptions = {
|
|
6
|
-
organizationId: string
|
|
7
|
-
} | {organization: {id: string}}
|
|
6
|
+
organizationId: string;
|
|
7
|
+
} | { organization: { id: string } };
|
|
8
8
|
|
|
9
9
|
type Options = OrganizationOptions & {
|
|
10
10
|
value?: number;
|
|
11
11
|
description?: string;
|
|
12
|
-
}
|
|
12
|
+
};
|
|
13
13
|
|
|
14
14
|
export class RegisterCodeFactory extends Factory<Options, RegisterCode> {
|
|
15
15
|
async create(): Promise<RegisterCode> {
|
|
16
16
|
const code = new RegisterCode();
|
|
17
|
-
code.organizationId =
|
|
17
|
+
code.organizationId = 'organizationId' in this.options ? this.options.organizationId : this.options.organization.id;
|
|
18
18
|
code.value = this.options.value ?? (25 * 100);
|
|
19
|
-
code.description = this.options.description ??
|
|
19
|
+
code.description = this.options.description ?? 'Test code';
|
|
20
20
|
|
|
21
21
|
await code.generateCode();
|
|
22
22
|
await code.save();
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import { Factory } from
|
|
1
|
+
import { Factory } from '@simonbackx/simple-database';
|
|
2
2
|
|
|
3
|
-
import { GroupPrice } from
|
|
4
|
-
import { Group } from
|
|
3
|
+
import { GroupPrice } from '@stamhoofd/structures';
|
|
4
|
+
import { Group } from '../models/Group';
|
|
5
5
|
import { Member } from '../models/Member';
|
|
6
6
|
import { Registration } from '../models/Registration';
|
|
7
7
|
|
|
8
8
|
class Options {
|
|
9
9
|
member: Member;
|
|
10
10
|
group: Group;
|
|
11
|
-
groupPrice: GroupPrice
|
|
12
|
-
price?: number
|
|
11
|
+
groupPrice: GroupPrice;
|
|
12
|
+
price?: number;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
export class RegistrationFactory extends Factory<Options, Registration> {
|
|
16
16
|
async create(): Promise<Registration> {
|
|
17
|
-
const registration = new Registration()
|
|
18
|
-
registration.memberId = this.options.member.id
|
|
19
|
-
registration.groupId = this.options.group.id
|
|
20
|
-
registration.periodId = this.options.group.periodId
|
|
21
|
-
registration.organizationId = this.options.group.organizationId
|
|
22
|
-
registration.registeredAt = new Date()
|
|
23
|
-
registration.registeredAt.setMilliseconds(0)
|
|
24
|
-
registration.groupPrice = this.options.groupPrice
|
|
25
|
-
registration.price = this.options.price === undefined ? registration.groupPrice.price.price : this.options.price
|
|
26
|
-
|
|
27
|
-
await registration.save()
|
|
17
|
+
const registration = new Registration();
|
|
18
|
+
registration.memberId = this.options.member.id;
|
|
19
|
+
registration.groupId = this.options.group.id;
|
|
20
|
+
registration.periodId = this.options.group.periodId;
|
|
21
|
+
registration.organizationId = this.options.group.organizationId;
|
|
22
|
+
registration.registeredAt = new Date();
|
|
23
|
+
registration.registeredAt.setMilliseconds(0);
|
|
24
|
+
registration.groupPrice = this.options.groupPrice;
|
|
25
|
+
registration.price = this.options.price === undefined ? registration.groupPrice.price.price : this.options.price;
|
|
26
|
+
|
|
27
|
+
await registration.save();
|
|
28
28
|
return registration;
|
|
29
29
|
}
|
|
30
30
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Factory } from
|
|
2
|
-
import { RegistrationPeriodSettings } from
|
|
1
|
+
import { Factory } from '@simonbackx/simple-database';
|
|
2
|
+
import { RegistrationPeriodSettings } from '@stamhoofd/structures';
|
|
3
3
|
|
|
4
|
-
import { RegistrationPeriod } from
|
|
4
|
+
import { RegistrationPeriod } from '../models';
|
|
5
5
|
|
|
6
6
|
class Options {
|
|
7
7
|
startDate?: Date;
|
|
@@ -13,8 +13,8 @@ export class RegistrationPeriodFactory extends Factory<Options, RegistrationPeri
|
|
|
13
13
|
const period = new RegistrationPeriod();
|
|
14
14
|
|
|
15
15
|
period.organizationId = null;
|
|
16
|
-
period.startDate = this.options.startDate ?? new Date(2024,0,1,0,0,0,0);
|
|
17
|
-
period.endDate = this.options.endDate ?? new Date(2024,11,31,59,59,59,999);
|
|
16
|
+
period.startDate = this.options.startDate ?? new Date(2024, 0, 1, 0, 0, 0, 0);
|
|
17
|
+
period.endDate = this.options.endDate ?? new Date(2024, 11, 31, 59, 59, 59, 999);
|
|
18
18
|
period.settings = RegistrationPeriodSettings.create({});
|
|
19
19
|
|
|
20
20
|
await period.save();
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Factory } from
|
|
1
|
+
import { Factory } from '@simonbackx/simple-database';
|
|
2
2
|
import { NewUser, Permissions, UserPermissions } from '@stamhoofd/structures';
|
|
3
3
|
|
|
4
|
-
import { Organization } from
|
|
5
|
-
import { User } from
|
|
4
|
+
import { Organization } from '../models/Organization';
|
|
5
|
+
import { User } from '../models/User';
|
|
6
6
|
import { OrganizationFactory } from './OrganizationFactory';
|
|
7
7
|
|
|
8
8
|
class Options {
|
|
@@ -15,48 +15,49 @@ class Options {
|
|
|
15
15
|
* Default is true
|
|
16
16
|
*/
|
|
17
17
|
verified?: boolean;
|
|
18
|
-
permissions?: Permissions | null
|
|
19
|
-
globalPermissions?: Permissions | null
|
|
18
|
+
permissions?: Permissions | null;
|
|
19
|
+
globalPermissions?: Permissions | null;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
export class UserFactory extends Factory<Options, User> {
|
|
23
23
|
async create(): Promise<User> {
|
|
24
|
-
let organization: Organization
|
|
24
|
+
let organization: Organization;
|
|
25
25
|
|
|
26
26
|
if (!this.options.organization) {
|
|
27
|
-
const organizationFactory = new OrganizationFactory({})
|
|
28
|
-
organization = await organizationFactory.create()
|
|
29
|
-
} else {
|
|
30
|
-
organization = this.options.organization
|
|
27
|
+
const organizationFactory = new OrganizationFactory({});
|
|
28
|
+
organization = await organizationFactory.create();
|
|
31
29
|
}
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
else {
|
|
31
|
+
organization = this.options.organization;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
const email = this.options.email ?? 'generated-email-' + this.randomString(20) + '@domain.com';
|
|
34
35
|
const password = this.options.password ?? this.randomString(20);
|
|
35
36
|
|
|
36
37
|
const user = await User.register(organization, NewUser.create({
|
|
37
38
|
email,
|
|
38
39
|
organizationId: organization.id,
|
|
39
|
-
password
|
|
40
|
+
password,
|
|
40
41
|
}));
|
|
41
42
|
if (!user) {
|
|
42
|
-
throw new Error(
|
|
43
|
+
throw new Error('Unexpected failure when creating user in factory');
|
|
43
44
|
}
|
|
44
45
|
|
|
45
46
|
if (this.options.permissions) {
|
|
46
|
-
user.permissions = UserPermissions.create({})
|
|
47
|
-
user.permissions.organizationPermissions.set(organization.id, this.options.permissions)
|
|
47
|
+
user.permissions = UserPermissions.create({});
|
|
48
|
+
user.permissions.organizationPermissions.set(organization.id, this.options.permissions);
|
|
48
49
|
}
|
|
49
50
|
|
|
50
51
|
if (this.options.globalPermissions) {
|
|
51
52
|
if (!user.permissions) {
|
|
52
|
-
user.permissions = UserPermissions.create({})
|
|
53
|
+
user.permissions = UserPermissions.create({});
|
|
53
54
|
}
|
|
54
|
-
user.permissions.globalPermissions = this.options.globalPermissions
|
|
55
|
+
user.permissions.globalPermissions = this.options.globalPermissions;
|
|
55
56
|
}
|
|
56
57
|
|
|
57
58
|
user.firstName = this.options.firstName ?? null;
|
|
58
59
|
user.lastName = this.options.lastName ?? null;
|
|
59
|
-
|
|
60
|
+
|
|
60
61
|
if (this.options.verified === undefined || this.options.verified === true) {
|
|
61
62
|
user.verified = true;
|
|
62
63
|
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { Factory } from
|
|
2
|
-
import { AutoEncoderPatchType } from
|
|
3
|
-
import { Product, WebshopMetaData, WebshopPrivateMetaData } from
|
|
4
|
-
import { Formatter } from
|
|
1
|
+
import { Factory } from '@simonbackx/simple-database';
|
|
2
|
+
import { AutoEncoderPatchType } from '@simonbackx/simple-encoding';
|
|
3
|
+
import { Product, WebshopMetaData, WebshopPrivateMetaData } from '@stamhoofd/structures';
|
|
4
|
+
import { Formatter } from '@stamhoofd/utility';
|
|
5
5
|
|
|
6
|
-
import { Webshop } from
|
|
7
|
-
import { OrganizationFactory } from
|
|
6
|
+
import { Webshop } from '../models';
|
|
7
|
+
import { OrganizationFactory } from './OrganizationFactory';
|
|
8
8
|
|
|
9
9
|
class Options {
|
|
10
|
-
organizationId?: string
|
|
11
|
-
name?: string
|
|
12
|
-
meta?: WebshopMetaData|AutoEncoderPatchType<WebshopMetaData
|
|
13
|
-
privateMeta?: WebshopPrivateMetaData|AutoEncoderPatchType<WebshopPrivateMetaData
|
|
14
|
-
products?: Product[]
|
|
10
|
+
organizationId?: string;
|
|
11
|
+
name?: string;
|
|
12
|
+
meta?: WebshopMetaData | AutoEncoderPatchType<WebshopMetaData>;
|
|
13
|
+
privateMeta?: WebshopPrivateMetaData | AutoEncoderPatchType<WebshopPrivateMetaData>;
|
|
14
|
+
products?: Product[];
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
export class WebshopFactory extends Factory<Options, Webshop> {
|
|
@@ -21,7 +21,7 @@ export class WebshopFactory extends Factory<Options, Webshop> {
|
|
|
21
21
|
const webshop = new Webshop();
|
|
22
22
|
webshop.organizationId = organizationId;
|
|
23
23
|
webshop.meta = WebshopMetaData.create({
|
|
24
|
-
name: this.options?.name ?? (
|
|
24
|
+
name: this.options?.name ?? ('Webshop ' + (new Date().getTime() + Math.floor(Math.random() * 999999))),
|
|
25
25
|
});
|
|
26
26
|
webshop.uri = Formatter.slug(this.randomString(20));
|
|
27
27
|
|
|
@@ -30,13 +30,13 @@ export class WebshopFactory extends Factory<Options, Webshop> {
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
if (this.options.privateMeta) {
|
|
33
|
-
webshop.privateMeta.patchOrPut(this.options.privateMeta);
|
|
33
|
+
webshop.privateMeta.patchOrPut(this.options.privateMeta);
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
if (this.options.products) {
|
|
37
37
|
webshop.products = this.options.products;
|
|
38
38
|
}
|
|
39
|
-
|
|
39
|
+
|
|
40
40
|
await webshop.save();
|
|
41
41
|
return webshop;
|
|
42
42
|
}
|