@stamhoofd/models 2.1.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 (481) hide show
  1. package/dist/src/assets/Metropolis-Black.woff2 +0 -0
  2. package/dist/src/assets/Metropolis-BlackItalic.woff2 +0 -0
  3. package/dist/src/assets/Metropolis-Bold.woff2 +0 -0
  4. package/dist/src/assets/Metropolis-BoldItalic.woff2 +0 -0
  5. package/dist/src/assets/Metropolis-ExtraBold.woff2 +0 -0
  6. package/dist/src/assets/Metropolis-ExtraBoldItalic.woff2 +0 -0
  7. package/dist/src/assets/Metropolis-ExtraLight.woff2 +0 -0
  8. package/dist/src/assets/Metropolis-ExtraLightItalic.woff2 +0 -0
  9. package/dist/src/assets/Metropolis-Light.woff2 +0 -0
  10. package/dist/src/assets/Metropolis-LightItalic.woff2 +0 -0
  11. package/dist/src/assets/Metropolis-Medium.woff2 +0 -0
  12. package/dist/src/assets/Metropolis-MediumItalic.woff2 +0 -0
  13. package/dist/src/assets/Metropolis-Regular.woff2 +0 -0
  14. package/dist/src/assets/Metropolis-RegularItalic.woff2 +0 -0
  15. package/dist/src/assets/Metropolis-SemiBold.woff2 +0 -0
  16. package/dist/src/assets/Metropolis-SemiBoldItalic.woff2 +0 -0
  17. package/dist/src/assets/Metropolis-Thin.woff2 +0 -0
  18. package/dist/src/assets/Metropolis-ThinItalic.woff2 +0 -0
  19. package/dist/src/assets/assets/Metropolis-Black.woff2 +0 -0
  20. package/dist/src/assets/assets/Metropolis-BlackItalic.woff2 +0 -0
  21. package/dist/src/assets/assets/Metropolis-Bold.woff2 +0 -0
  22. package/dist/src/assets/assets/Metropolis-BoldItalic.woff2 +0 -0
  23. package/dist/src/assets/assets/Metropolis-ExtraBold.woff2 +0 -0
  24. package/dist/src/assets/assets/Metropolis-ExtraBoldItalic.woff2 +0 -0
  25. package/dist/src/assets/assets/Metropolis-ExtraLight.woff2 +0 -0
  26. package/dist/src/assets/assets/Metropolis-ExtraLightItalic.woff2 +0 -0
  27. package/dist/src/assets/assets/Metropolis-Light.woff2 +0 -0
  28. package/dist/src/assets/assets/Metropolis-LightItalic.woff2 +0 -0
  29. package/dist/src/assets/assets/Metropolis-Medium.woff2 +0 -0
  30. package/dist/src/assets/assets/Metropolis-MediumItalic.woff2 +0 -0
  31. package/dist/src/assets/assets/Metropolis-Regular.woff2 +0 -0
  32. package/dist/src/assets/assets/Metropolis-RegularItalic.woff2 +0 -0
  33. package/dist/src/assets/assets/Metropolis-SemiBold.woff2 +0 -0
  34. package/dist/src/assets/assets/Metropolis-SemiBoldItalic.woff2 +0 -0
  35. package/dist/src/assets/assets/Metropolis-Thin.woff2 +0 -0
  36. package/dist/src/assets/assets/Metropolis-ThinItalic.woff2 +0 -0
  37. package/dist/src/assets/assets/logo.png +0 -0
  38. package/dist/src/assets/logo.png +0 -0
  39. package/dist/src/factories/AddressFactory.d.ts +10 -0
  40. package/dist/src/factories/AddressFactory.d.ts.map +1 -0
  41. package/dist/src/factories/AddressFactory.js +42 -0
  42. package/dist/src/factories/AddressFactory.js.map +1 -0
  43. package/dist/src/factories/EmergencyContactFactory.d.ts +9 -0
  44. package/dist/src/factories/EmergencyContactFactory.d.ts.map +1 -0
  45. package/dist/src/factories/EmergencyContactFactory.js +42 -0
  46. package/dist/src/factories/EmergencyContactFactory.js.map +1 -0
  47. package/dist/src/factories/GroupFactory.d.ts +19 -0
  48. package/dist/src/factories/GroupFactory.d.ts.map +1 -0
  49. package/dist/src/factories/GroupFactory.js +52 -0
  50. package/dist/src/factories/GroupFactory.js.map +1 -0
  51. package/dist/src/factories/MemberFactory.d.ts +16 -0
  52. package/dist/src/factories/MemberFactory.d.ts.map +1 -0
  53. package/dist/src/factories/MemberFactory.js +98 -0
  54. package/dist/src/factories/MemberFactory.js.map +1 -0
  55. package/dist/src/factories/OrganizationFactory.d.ts +16 -0
  56. package/dist/src/factories/OrganizationFactory.d.ts.map +1 -0
  57. package/dist/src/factories/OrganizationFactory.js +40 -0
  58. package/dist/src/factories/OrganizationFactory.js.map +1 -0
  59. package/dist/src/factories/ParentFactory.d.ts +10 -0
  60. package/dist/src/factories/ParentFactory.d.ts.map +1 -0
  61. package/dist/src/factories/ParentFactory.js +44 -0
  62. package/dist/src/factories/ParentFactory.js.map +1 -0
  63. package/dist/src/factories/RecordFactory.d.ts +10 -0
  64. package/dist/src/factories/RecordFactory.d.ts.map +1 -0
  65. package/dist/src/factories/RecordFactory.js +14 -0
  66. package/dist/src/factories/RecordFactory.js.map +1 -0
  67. package/dist/src/factories/RegisterCodeFactory.d.ts +18 -0
  68. package/dist/src/factories/RegisterCodeFactory.d.ts.map +1 -0
  69. package/dist/src/factories/RegisterCodeFactory.js +19 -0
  70. package/dist/src/factories/RegisterCodeFactory.js.map +1 -0
  71. package/dist/src/factories/RegistrationFactory.d.ts +14 -0
  72. package/dist/src/factories/RegistrationFactory.d.ts.map +1 -0
  73. package/dist/src/factories/RegistrationFactory.js +26 -0
  74. package/dist/src/factories/RegistrationFactory.js.map +1 -0
  75. package/dist/src/factories/UserFactory.d.ts +21 -0
  76. package/dist/src/factories/UserFactory.d.ts.map +1 -0
  77. package/dist/src/factories/UserFactory.js +41 -0
  78. package/dist/src/factories/UserFactory.js.map +1 -0
  79. package/dist/src/factories/WebshopFactory.d.ts +16 -0
  80. package/dist/src/factories/WebshopFactory.d.ts.map +1 -0
  81. package/dist/src/factories/WebshopFactory.js +35 -0
  82. package/dist/src/factories/WebshopFactory.js.map +1 -0
  83. package/dist/src/helpers/DNSValidator.d.ts +6 -0
  84. package/dist/src/helpers/DNSValidator.d.ts.map +1 -0
  85. package/dist/src/helpers/DNSValidator.js +144 -0
  86. package/dist/src/helpers/DNSValidator.js.map +1 -0
  87. package/dist/src/helpers/EmailBuilder.d.ts +22 -0
  88. package/dist/src/helpers/EmailBuilder.d.ts.map +1 -0
  89. package/dist/src/helpers/EmailBuilder.js +100 -0
  90. package/dist/src/helpers/EmailBuilder.js.map +1 -0
  91. package/dist/src/helpers/GroupBuilder.d.ts +9 -0
  92. package/dist/src/helpers/GroupBuilder.d.ts.map +1 -0
  93. package/dist/src/helpers/GroupBuilder.js +382 -0
  94. package/dist/src/helpers/GroupBuilder.js.map +1 -0
  95. package/dist/src/helpers/Handlebars.d.ts +2 -0
  96. package/dist/src/helpers/Handlebars.d.ts.map +1 -0
  97. package/dist/src/helpers/Handlebars.js +192 -0
  98. package/dist/src/helpers/Handlebars.js.map +1 -0
  99. package/dist/src/helpers/InvoiceBuilder.d.ts +29 -0
  100. package/dist/src/helpers/InvoiceBuilder.d.ts.map +1 -0
  101. package/dist/src/helpers/InvoiceBuilder.js +406 -0
  102. package/dist/src/helpers/InvoiceBuilder.js.map +1 -0
  103. package/dist/src/helpers/InvoiceBuilder.test.d.ts +2 -0
  104. package/dist/src/helpers/InvoiceBuilder.test.d.ts.map +1 -0
  105. package/dist/src/helpers/InvoiceBuilder.test.js +52 -0
  106. package/dist/src/helpers/InvoiceBuilder.test.js.map +1 -0
  107. package/dist/src/helpers/RateLimiter.d.ts +27 -0
  108. package/dist/src/helpers/RateLimiter.d.ts.map +1 -0
  109. package/dist/src/helpers/RateLimiter.js +57 -0
  110. package/dist/src/helpers/RateLimiter.js.map +1 -0
  111. package/dist/src/helpers/WebshopCounter.d.ts +6 -0
  112. package/dist/src/helpers/WebshopCounter.d.ts.map +1 -0
  113. package/dist/src/helpers/WebshopCounter.js +36 -0
  114. package/dist/src/helpers/WebshopCounter.js.map +1 -0
  115. package/dist/src/helpers/WebshopCounter.test.d.ts +2 -0
  116. package/dist/src/helpers/WebshopCounter.test.d.ts.map +1 -0
  117. package/dist/src/helpers/WebshopCounter.test.js +17 -0
  118. package/dist/src/helpers/WebshopCounter.test.js.map +1 -0
  119. package/dist/src/index.d.ts +18 -0
  120. package/dist/src/index.d.ts.map +1 -0
  121. package/dist/src/index.js +23 -0
  122. package/dist/src/index.js.map +1 -0
  123. package/dist/src/migrations/1593773929-create-initial-tables.sql +634 -0
  124. package/dist/src/migrations/1605261999-gemeenten-tmp.sql +2820 -0
  125. package/dist/src/migrations/1605262045-import-postcodes.d.ts +16 -0
  126. package/dist/src/migrations/1605262045-import-postcodes.d.ts.map +1 -0
  127. package/dist/src/migrations/1605262045-import-postcodes.js +116 -0
  128. package/dist/src/migrations/1605262045-import-postcodes.js.map +1 -0
  129. package/dist/src/migrations/1605262046-import-postcodes-nl.d.ts +4 -0
  130. package/dist/src/migrations/1605262046-import-postcodes-nl.d.ts.map +1 -0
  131. package/dist/src/migrations/1605262046-import-postcodes-nl.js +83 -0
  132. package/dist/src/migrations/1605262046-import-postcodes-nl.js.map +1 -0
  133. package/dist/src/migrations/1605279038-drop-gemeenten-tmp.sql +1 -0
  134. package/dist/src/migrations/1648392491-default-templates.sql +9 -0
  135. package/dist/src/migrations/1651245707-default-templates-reminders.sql +6 -0
  136. package/dist/src/migrations/1708607340-tickets-deleted-at.sql +1 -0
  137. package/dist/src/migrations/1710459176-register-code-invoices.sql +3 -0
  138. package/dist/src/migrations/1712158247-discount-codes.sql +17 -0
  139. package/dist/src/migrations/1713178665-drop-invites.sql +1 -0
  140. package/dist/src/migrations/1713178666-drop-keychain.sql +1 -0
  141. package/dist/src/migrations/1713178667-drop-challenges.sql +1 -0
  142. package/dist/src/migrations/1713178668-drop-user-keys.sql +7 -0
  143. package/dist/src/migrations/1713178669-drop-organization-key.sql +2 -0
  144. package/dist/src/migrations/data/postcodes/nl/Drenthe +291 -0
  145. package/dist/src/migrations/data/postcodes/nl/Flevoland +107 -0
  146. package/dist/src/migrations/data/postcodes/nl/Friesland +518 -0
  147. package/dist/src/migrations/data/postcodes/nl/Gelderland +601 -0
  148. package/dist/src/migrations/data/postcodes/nl/Groningen +279 -0
  149. package/dist/src/migrations/data/postcodes/nl/Limburg +324 -0
  150. package/dist/src/migrations/data/postcodes/nl/Noord-Brabant +620 -0
  151. package/dist/src/migrations/data/postcodes/nl/Noord-Holland +566 -0
  152. package/dist/src/migrations/data/postcodes/nl/Overrijsel +344 -0
  153. package/dist/src/migrations/data/postcodes/nl/Utrecht +278 -0
  154. package/dist/src/migrations/data/postcodes/nl/Zeeland +179 -0
  155. package/dist/src/migrations/data/postcodes/nl/Zuid-Holland +662 -0
  156. package/dist/src/models/BalanceItem.d.ts +57 -0
  157. package/dist/src/models/BalanceItem.d.ts.map +1 -0
  158. package/dist/src/models/BalanceItem.js +346 -0
  159. package/dist/src/models/BalanceItem.js.map +1 -0
  160. package/dist/src/models/BalanceItemPayment.d.ts +31 -0
  161. package/dist/src/models/BalanceItemPayment.d.ts.map +1 -0
  162. package/dist/src/models/BalanceItemPayment.js +101 -0
  163. package/dist/src/models/BalanceItemPayment.js.map +1 -0
  164. package/dist/src/models/BuckarooPayment.d.ts +8 -0
  165. package/dist/src/models/BuckarooPayment.d.ts.map +1 -0
  166. package/dist/src/models/BuckarooPayment.js +24 -0
  167. package/dist/src/models/BuckarooPayment.js.map +1 -0
  168. package/dist/src/models/Document.d.ts +44 -0
  169. package/dist/src/models/Document.d.ts.map +1 -0
  170. package/dist/src/models/Document.js +194 -0
  171. package/dist/src/models/Document.js.map +1 -0
  172. package/dist/src/models/DocumentTemplate.d.ts +45 -0
  173. package/dist/src/models/DocumentTemplate.d.ts.map +1 -0
  174. package/dist/src/models/DocumentTemplate.js +533 -0
  175. package/dist/src/models/DocumentTemplate.js.map +1 -0
  176. package/dist/src/models/EmailTemplate.d.ts +22 -0
  177. package/dist/src/models/EmailTemplate.d.ts.map +1 -0
  178. package/dist/src/models/EmailTemplate.js +70 -0
  179. package/dist/src/models/EmailTemplate.js.map +1 -0
  180. package/dist/src/models/EmailVerificationCode.d.ts +60 -0
  181. package/dist/src/models/EmailVerificationCode.d.ts.map +1 -0
  182. package/dist/src/models/EmailVerificationCode.js +307 -0
  183. package/dist/src/models/EmailVerificationCode.js.map +1 -0
  184. package/dist/src/models/Group.d.ts +36 -0
  185. package/dist/src/models/Group.d.ts.map +1 -0
  186. package/dist/src/models/Group.js +231 -0
  187. package/dist/src/models/Group.js.map +1 -0
  188. package/dist/src/models/Image.d.ts +12 -0
  189. package/dist/src/models/Image.d.ts.map +1 -0
  190. package/dist/src/models/Image.js +137 -0
  191. package/dist/src/models/Image.js.map +1 -0
  192. package/dist/src/models/Member.d.ts +66 -0
  193. package/dist/src/models/Member.d.ts.map +1 -0
  194. package/dist/src/models/Member.js +309 -0
  195. package/dist/src/models/Member.js.map +1 -0
  196. package/dist/src/models/MemberResponsibilityRecord.d.ts +11 -0
  197. package/dist/src/models/MemberResponsibilityRecord.d.ts.map +1 -0
  198. package/dist/src/models/MemberResponsibilityRecord.js +47 -0
  199. package/dist/src/models/MemberResponsibilityRecord.js.map +1 -0
  200. package/dist/src/models/MolliePayment.d.ts +8 -0
  201. package/dist/src/models/MolliePayment.d.ts.map +1 -0
  202. package/dist/src/models/MolliePayment.js +24 -0
  203. package/dist/src/models/MolliePayment.js.map +1 -0
  204. package/dist/src/models/MollieToken.d.ts +45 -0
  205. package/dist/src/models/MollieToken.d.ts.map +1 -0
  206. package/dist/src/models/MollieToken.js +333 -0
  207. package/dist/src/models/MollieToken.js.map +1 -0
  208. package/dist/src/models/OneTimeToken.d.ts +38 -0
  209. package/dist/src/models/OneTimeToken.d.ts.map +1 -0
  210. package/dist/src/models/OneTimeToken.js +126 -0
  211. package/dist/src/models/OneTimeToken.js.map +1 -0
  212. package/dist/src/models/Order.d.ts +99 -0
  213. package/dist/src/models/Order.d.ts.map +1 -0
  214. package/dist/src/models/Order.js +912 -0
  215. package/dist/src/models/Order.js.map +1 -0
  216. package/dist/src/models/Organization.d.ts +119 -0
  217. package/dist/src/models/Organization.d.ts.map +1 -0
  218. package/dist/src/models/Organization.js +900 -0
  219. package/dist/src/models/Organization.js.map +1 -0
  220. package/dist/src/models/OrganizationRegistrationPeriod.d.ts +14 -0
  221. package/dist/src/models/OrganizationRegistrationPeriod.d.ts.map +1 -0
  222. package/dist/src/models/OrganizationRegistrationPeriod.js +62 -0
  223. package/dist/src/models/OrganizationRegistrationPeriod.js.map +1 -0
  224. package/dist/src/models/PasswordToken.d.ts +29 -0
  225. package/dist/src/models/PasswordToken.d.ts.map +1 -0
  226. package/dist/src/models/PasswordToken.js +118 -0
  227. package/dist/src/models/PasswordToken.js.map +1 -0
  228. package/dist/src/models/PayconiqPayment.d.ts +18 -0
  229. package/dist/src/models/PayconiqPayment.d.ts.map +1 -0
  230. package/dist/src/models/PayconiqPayment.js +216 -0
  231. package/dist/src/models/PayconiqPayment.js.map +1 -0
  232. package/dist/src/models/Payment.d.ts +62 -0
  233. package/dist/src/models/Payment.d.ts.map +1 -0
  234. package/dist/src/models/Payment.js +199 -0
  235. package/dist/src/models/Payment.js.map +1 -0
  236. package/dist/src/models/Platform.d.ts +15 -0
  237. package/dist/src/models/Platform.d.ts.map +1 -0
  238. package/dist/src/models/Platform.js +77 -0
  239. package/dist/src/models/Platform.js.map +1 -0
  240. package/dist/src/models/RegisterCode.d.ts +27 -0
  241. package/dist/src/models/RegisterCode.d.ts.map +1 -0
  242. package/dist/src/models/RegisterCode.js +162 -0
  243. package/dist/src/models/RegisterCode.js.map +1 -0
  244. package/dist/src/models/Registration.d.ts +47 -0
  245. package/dist/src/models/Registration.d.ts.map +1 -0
  246. package/dist/src/models/Registration.js +369 -0
  247. package/dist/src/models/Registration.js.map +1 -0
  248. package/dist/src/models/RegistrationPeriod.d.ts +15 -0
  249. package/dist/src/models/RegistrationPeriod.d.ts.map +1 -0
  250. package/dist/src/models/RegistrationPeriod.js +64 -0
  251. package/dist/src/models/RegistrationPeriod.js.map +1 -0
  252. package/dist/src/models/STCredit.d.ts +20 -0
  253. package/dist/src/models/STCredit.d.ts.map +1 -0
  254. package/dist/src/models/STCredit.js +129 -0
  255. package/dist/src/models/STCredit.js.map +1 -0
  256. package/dist/src/models/STInvoice.d.ts +51 -0
  257. package/dist/src/models/STInvoice.d.ts.map +1 -0
  258. package/dist/src/models/STInvoice.js +453 -0
  259. package/dist/src/models/STInvoice.js.map +1 -0
  260. package/dist/src/models/STPackage.d.ts +36 -0
  261. package/dist/src/models/STPackage.d.ts.map +1 -0
  262. package/dist/src/models/STPackage.js +300 -0
  263. package/dist/src/models/STPackage.js.map +1 -0
  264. package/dist/src/models/STPendingInvoice.d.ts +45 -0
  265. package/dist/src/models/STPendingInvoice.d.ts.map +1 -0
  266. package/dist/src/models/STPendingInvoice.js +284 -0
  267. package/dist/src/models/STPendingInvoice.js.map +1 -0
  268. package/dist/src/models/StripeAccount.d.ts +17 -0
  269. package/dist/src/models/StripeAccount.d.ts.map +1 -0
  270. package/dist/src/models/StripeAccount.js +81 -0
  271. package/dist/src/models/StripeAccount.js.map +1 -0
  272. package/dist/src/models/StripeCheckoutSession.d.ts +9 -0
  273. package/dist/src/models/StripeCheckoutSession.d.ts.map +1 -0
  274. package/dist/src/models/StripeCheckoutSession.js +31 -0
  275. package/dist/src/models/StripeCheckoutSession.js.map +1 -0
  276. package/dist/src/models/StripePaymentIntent.d.ts +9 -0
  277. package/dist/src/models/StripePaymentIntent.d.ts.map +1 -0
  278. package/dist/src/models/StripePaymentIntent.js +31 -0
  279. package/dist/src/models/StripePaymentIntent.js.map +1 -0
  280. package/dist/src/models/Ticket.d.ts +61 -0
  281. package/dist/src/models/Ticket.d.ts.map +1 -0
  282. package/dist/src/models/Ticket.js +143 -0
  283. package/dist/src/models/Ticket.js.map +1 -0
  284. package/dist/src/models/Token.d.ts +49 -0
  285. package/dist/src/models/Token.d.ts.map +1 -0
  286. package/dist/src/models/Token.js +218 -0
  287. package/dist/src/models/Token.js.map +1 -0
  288. package/dist/src/models/Token.test.d.ts +2 -0
  289. package/dist/src/models/Token.test.d.ts.map +1 -0
  290. package/dist/src/models/Token.test.js +60 -0
  291. package/dist/src/models/Token.test.js.map +1 -0
  292. package/dist/src/models/UsedRegisterCode.d.ts +22 -0
  293. package/dist/src/models/UsedRegisterCode.d.ts.map +1 -0
  294. package/dist/src/models/UsedRegisterCode.js +158 -0
  295. package/dist/src/models/UsedRegisterCode.js.map +1 -0
  296. package/dist/src/models/User.d.ts +55 -0
  297. package/dist/src/models/User.d.ts.map +1 -0
  298. package/dist/src/models/User.js +314 -0
  299. package/dist/src/models/User.js.map +1 -0
  300. package/dist/src/models/UserPermissions.d.ts +15 -0
  301. package/dist/src/models/UserPermissions.d.ts.map +1 -0
  302. package/dist/src/models/UserPermissions.js +57 -0
  303. package/dist/src/models/UserPermissions.js.map +1 -0
  304. package/dist/src/models/Webshop.d.ts +44 -0
  305. package/dist/src/models/Webshop.d.ts.map +1 -0
  306. package/dist/src/models/Webshop.js +184 -0
  307. package/dist/src/models/Webshop.js.map +1 -0
  308. package/dist/src/models/WebshopDiscountCode.d.ts +18 -0
  309. package/dist/src/models/WebshopDiscountCode.d.ts.map +1 -0
  310. package/dist/src/models/WebshopDiscountCode.js +88 -0
  311. package/dist/src/models/WebshopDiscountCode.js.map +1 -0
  312. package/dist/src/models/addresses/City.d.ts +14 -0
  313. package/dist/src/models/addresses/City.d.ts.map +1 -0
  314. package/dist/src/models/addresses/City.js +37 -0
  315. package/dist/src/models/addresses/City.js.map +1 -0
  316. package/dist/src/models/addresses/PostalCode.d.ts +20 -0
  317. package/dist/src/models/addresses/PostalCode.d.ts.map +1 -0
  318. package/dist/src/models/addresses/PostalCode.js +138 -0
  319. package/dist/src/models/addresses/PostalCode.js.map +1 -0
  320. package/dist/src/models/addresses/PostalCode.test.d.ts +2 -0
  321. package/dist/src/models/addresses/PostalCode.test.d.ts.map +1 -0
  322. package/dist/src/models/addresses/PostalCode.test.js +98 -0
  323. package/dist/src/models/addresses/PostalCode.test.js.map +1 -0
  324. package/dist/src/models/addresses/Province.d.ts +9 -0
  325. package/dist/src/models/addresses/Province.d.ts.map +1 -0
  326. package/dist/src/models/addresses/Province.js +24 -0
  327. package/dist/src/models/addresses/Province.js.map +1 -0
  328. package/dist/src/models/addresses/Street.d.ts +10 -0
  329. package/dist/src/models/addresses/Street.d.ts.map +1 -0
  330. package/dist/src/models/addresses/Street.js +26 -0
  331. package/dist/src/models/addresses/Street.js.map +1 -0
  332. package/dist/src/models/index.d.ts +37 -0
  333. package/dist/src/models/index.d.ts.map +1 -0
  334. package/dist/src/models/index.js +53 -0
  335. package/dist/src/models/index.js.map +1 -0
  336. package/dist/src/structures/OrganizationServerMetaData.d.ts +43 -0
  337. package/dist/src/structures/OrganizationServerMetaData.d.ts.map +1 -0
  338. package/dist/src/structures/OrganizationServerMetaData.js +128 -0
  339. package/dist/src/structures/OrganizationServerMetaData.js.map +1 -0
  340. package/dist/tests/jest.global.setup.d.ts +3 -0
  341. package/dist/tests/jest.global.setup.d.ts.map +1 -0
  342. package/dist/tests/jest.global.setup.js +20 -0
  343. package/dist/tests/jest.global.setup.js.map +1 -0
  344. package/dist/tests/jest.setup.d.ts +2 -0
  345. package/dist/tests/jest.setup.d.ts.map +1 -0
  346. package/dist/tests/jest.setup.js +15 -0
  347. package/dist/tests/jest.setup.js.map +1 -0
  348. package/package.json +30 -0
  349. package/src/assets/Metropolis-Black.woff2 +0 -0
  350. package/src/assets/Metropolis-BlackItalic.woff2 +0 -0
  351. package/src/assets/Metropolis-Bold.woff2 +0 -0
  352. package/src/assets/Metropolis-BoldItalic.woff2 +0 -0
  353. package/src/assets/Metropolis-ExtraBold.woff2 +0 -0
  354. package/src/assets/Metropolis-ExtraBoldItalic.woff2 +0 -0
  355. package/src/assets/Metropolis-ExtraLight.woff2 +0 -0
  356. package/src/assets/Metropolis-ExtraLightItalic.woff2 +0 -0
  357. package/src/assets/Metropolis-Light.woff2 +0 -0
  358. package/src/assets/Metropolis-LightItalic.woff2 +0 -0
  359. package/src/assets/Metropolis-Medium.woff2 +0 -0
  360. package/src/assets/Metropolis-MediumItalic.woff2 +0 -0
  361. package/src/assets/Metropolis-Regular.woff2 +0 -0
  362. package/src/assets/Metropolis-RegularItalic.woff2 +0 -0
  363. package/src/assets/Metropolis-SemiBold.woff2 +0 -0
  364. package/src/assets/Metropolis-SemiBoldItalic.woff2 +0 -0
  365. package/src/assets/Metropolis-Thin.woff2 +0 -0
  366. package/src/assets/Metropolis-ThinItalic.woff2 +0 -0
  367. package/src/assets/logo.png +0 -0
  368. package/src/factories/AddressFactory.ts +42 -0
  369. package/src/factories/EmergencyContactFactory.ts +43 -0
  370. package/src/factories/GroupFactory.ts +66 -0
  371. package/src/factories/MemberFactory.ts +122 -0
  372. package/src/factories/OrganizationFactory.ts +45 -0
  373. package/src/factories/ParentFactory.ts +49 -0
  374. package/src/factories/RecordFactory.ts +12 -0
  375. package/src/factories/RegisterCodeFactory.ts +25 -0
  376. package/src/factories/RegistrationFactory.ts +32 -0
  377. package/src/factories/UserFactory.ts +66 -0
  378. package/src/factories/WebshopFactory.ts +43 -0
  379. package/src/helpers/DNSValidator.ts +153 -0
  380. package/src/helpers/EmailBuilder.ts +127 -0
  381. package/src/helpers/GroupBuilder.ts +438 -0
  382. package/src/helpers/Handlebars.ts +203 -0
  383. package/src/helpers/InvoiceBuilder.test.ts +57 -0
  384. package/src/helpers/InvoiceBuilder.ts +501 -0
  385. package/src/helpers/RateLimiter.ts +75 -0
  386. package/src/helpers/WebshopCounter.test.ts +16 -0
  387. package/src/helpers/WebshopCounter.ts +36 -0
  388. package/src/index.ts +21 -0
  389. package/src/migrations/1593773929-create-initial-tables.sql +634 -0
  390. package/src/migrations/1605261999-gemeenten-tmp.sql +2820 -0
  391. package/src/migrations/1605262045-import-postcodes.ts +132 -0
  392. package/src/migrations/1605262046-import-postcodes-nl.ts +97 -0
  393. package/src/migrations/1605279038-drop-gemeenten-tmp.sql +1 -0
  394. package/src/migrations/1648392491-default-templates.sql +9 -0
  395. package/src/migrations/1651245707-default-templates-reminders.sql +6 -0
  396. package/src/migrations/1708607340-tickets-deleted-at.sql +1 -0
  397. package/src/migrations/1710459176-register-code-invoices.sql +3 -0
  398. package/src/migrations/1712158247-discount-codes.sql +17 -0
  399. package/src/migrations/1713178665-drop-invites.sql +1 -0
  400. package/src/migrations/1713178666-drop-keychain.sql +1 -0
  401. package/src/migrations/1713178667-drop-challenges.sql +1 -0
  402. package/src/migrations/1713178668-drop-user-keys.sql +7 -0
  403. package/src/migrations/1713178669-drop-organization-key.sql +2 -0
  404. package/src/migrations/1714985451-user-nullable-organization-id.sql +2 -0
  405. package/src/migrations/1714985452-email-verification-code-nullable-organization-id.sql +2 -0
  406. package/src/migrations/1714985453-user-organization-permissions.sql +2 -0
  407. package/src/migrations/1714985454-user-organization-permissions.sql +2 -0
  408. package/src/migrations/1715079362-platform.sql +6 -0
  409. package/src/migrations/1715181649-registrations-organization-id.sql +2 -0
  410. package/src/migrations/1715181650-registrations-organization-id-fill.sql +1 -0
  411. package/src/migrations/1715181651-registrations-organization-id-drop-null.sql +2 -0
  412. package/src/migrations/1716117067-members-nullable-organization-id.sql +2 -0
  413. package/src/migrations/1719567581-registration-periods.sql +13 -0
  414. package/src/migrations/1719567582-organization-registration-periods.sql +13 -0
  415. package/src/migrations/1719567881-organization-periodId.sql +2 -0
  416. package/src/migrations/1719567882-groups-periodId.sql +2 -0
  417. package/src/migrations/1719567883-platform-periodId.sql +2 -0
  418. package/src/migrations/1719568079-default-period.sql +2 -0
  419. package/src/migrations/1719568080-set-default-period-platform.sql +1 -0
  420. package/src/migrations/1719568081-set-default-period-organizations.sql +1 -0
  421. package/src/migrations/1719568082-set-default-period-groups.sql +1 -0
  422. package/src/migrations/1719580828-registrations-periodId.sql +2 -0
  423. package/src/migrations/1719580829-set-default-period-registrations.sql +1 -0
  424. package/src/migrations/data/postcodes/nl/Drenthe +291 -0
  425. package/src/migrations/data/postcodes/nl/Flevoland +107 -0
  426. package/src/migrations/data/postcodes/nl/Friesland +518 -0
  427. package/src/migrations/data/postcodes/nl/Gelderland +601 -0
  428. package/src/migrations/data/postcodes/nl/Groningen +279 -0
  429. package/src/migrations/data/postcodes/nl/Limburg +324 -0
  430. package/src/migrations/data/postcodes/nl/Noord-Brabant +620 -0
  431. package/src/migrations/data/postcodes/nl/Noord-Holland +566 -0
  432. package/src/migrations/data/postcodes/nl/Overrijsel +344 -0
  433. package/src/migrations/data/postcodes/nl/Utrecht +278 -0
  434. package/src/migrations/data/postcodes/nl/Zeeland +179 -0
  435. package/src/migrations/data/postcodes/nl/Zuid-Holland +662 -0
  436. package/src/models/BalanceItem.ts +392 -0
  437. package/src/models/BalanceItemPayment.ts +106 -0
  438. package/src/models/BuckarooPayment.ts +19 -0
  439. package/src/models/Document.ts +203 -0
  440. package/src/models/DocumentTemplate.ts +583 -0
  441. package/src/models/EmailTemplate.ts +64 -0
  442. package/src/models/EmailVerificationCode.ts +352 -0
  443. package/src/models/Group.ts +293 -0
  444. package/src/models/Image.ts +147 -0
  445. package/src/models/Member.ts +386 -0
  446. package/src/models/MemberResponsibilityRecord.ts +39 -0
  447. package/src/models/MolliePayment.ts +19 -0
  448. package/src/models/MollieToken.ts +369 -0
  449. package/src/models/OneTimeToken.ts +131 -0
  450. package/src/models/Order.ts +1030 -0
  451. package/src/models/Organization.ts +1085 -0
  452. package/src/models/OrganizationRegistrationPeriod.ts +54 -0
  453. package/src/models/PasswordToken.ts +139 -0
  454. package/src/models/PayconiqPayment.ts +241 -0
  455. package/src/models/Payment.ts +216 -0
  456. package/src/models/Platform.ts +76 -0
  457. package/src/models/RegisterCode.ts +164 -0
  458. package/src/models/Registration.ts +405 -0
  459. package/src/models/RegistrationPeriod.ts +55 -0
  460. package/src/models/STCredit.ts +134 -0
  461. package/src/models/STInvoice.ts +507 -0
  462. package/src/models/STPackage.ts +324 -0
  463. package/src/models/STPendingInvoice.ts +308 -0
  464. package/src/models/StripeAccount.ts +71 -0
  465. package/src/models/StripeCheckoutSession.ts +22 -0
  466. package/src/models/StripePaymentIntent.ts +22 -0
  467. package/src/models/Ticket.ts +145 -0
  468. package/src/models/Token.test.ts +69 -0
  469. package/src/models/Token.ts +269 -0
  470. package/src/models/UsedRegisterCode.ts +166 -0
  471. package/src/models/User.ts +445 -0
  472. package/src/models/UserPermissions.ts +54 -0
  473. package/src/models/Webshop.ts +206 -0
  474. package/src/models/WebshopDiscountCode.ts +81 -0
  475. package/src/models/addresses/City.ts +31 -0
  476. package/src/models/addresses/PostalCode.test.ts +117 -0
  477. package/src/models/addresses/PostalCode.ts +164 -0
  478. package/src/models/addresses/Province.ts +20 -0
  479. package/src/models/addresses/Street.ts +25 -0
  480. package/src/models/index.ts +49 -0
  481. package/src/structures/OrganizationServerMetaData.ts +117 -0
@@ -0,0 +1,634 @@
1
+ SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT;
2
+ SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS;
3
+ SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION;
4
+ SET NAMES utf8mb4;
5
+ SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
6
+ SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
7
+ SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO';
8
+ SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0;
9
+
10
+ CREATE TABLE `_members_users` (
11
+ `id` bigint unsigned NOT NULL AUTO_INCREMENT,
12
+ `membersId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
13
+ `usersId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
14
+ PRIMARY KEY (`id`),
15
+ UNIQUE KEY `id` (`id`),
16
+ KEY `membersId` (`membersId`),
17
+ KEY `usersId` (`usersId`),
18
+ CONSTRAINT `_members_users_ibfk_1` FOREIGN KEY (`membersId`) REFERENCES `members` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
19
+ CONSTRAINT `_members_users_ibfk_2` FOREIGN KEY (`usersId`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
20
+ ) ENGINE=InnoDB AUTO_INCREMENT=140735 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
21
+
22
+ CREATE TABLE `balance_item_payments` (
23
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL DEFAULT '',
24
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
25
+ `balanceItemId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
26
+ `paymentId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
27
+ `price` int NOT NULL,
28
+ `createdAt` datetime NOT NULL,
29
+ `updatedAt` datetime NOT NULL,
30
+ PRIMARY KEY (`id`),
31
+ KEY `organizationId` (`organizationId`),
32
+ KEY `balanceItemId` (`balanceItemId`),
33
+ KEY `paymentId` (`paymentId`),
34
+ CONSTRAINT `balance_item_payments_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
35
+ CONSTRAINT `balance_item_payments_ibfk_2` FOREIGN KEY (`balanceItemId`) REFERENCES `balance_items` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
36
+ CONSTRAINT `balance_item_payments_ibfk_3` FOREIGN KEY (`paymentId`) REFERENCES `payments` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
37
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
38
+
39
+ CREATE TABLE `balance_items` (
40
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL DEFAULT '',
41
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
42
+ `registrationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
43
+ `userId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
44
+ `memberId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
45
+ `orderId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
46
+ `description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
47
+ `price` int NOT NULL,
48
+ `pricePaid` int NOT NULL,
49
+ `status` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
50
+ `createdAt` datetime NOT NULL,
51
+ `updatedAt` datetime NOT NULL,
52
+ PRIMARY KEY (`id`),
53
+ KEY `organizationId` (`organizationId`),
54
+ KEY `registrationId` (`registrationId`),
55
+ KEY `userId` (`userId`),
56
+ KEY `memberId` (`memberId`),
57
+ KEY `orderId` (`orderId`),
58
+ CONSTRAINT `balance_items_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
59
+ CONSTRAINT `balance_items_ibfk_2` FOREIGN KEY (`registrationId`) REFERENCES `registrations` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
60
+ CONSTRAINT `balance_items_ibfk_3` FOREIGN KEY (`userId`) REFERENCES `users` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
61
+ CONSTRAINT `balance_items_ibfk_4` FOREIGN KEY (`memberId`) REFERENCES `members` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
62
+ CONSTRAINT `balance_items_ibfk_5` FOREIGN KEY (`orderId`) REFERENCES `webshop_orders` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
63
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
64
+
65
+ CREATE TABLE `buckaroo_payments` (
66
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL DEFAULT 'ascii_general_ci',
67
+ `paymentId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
68
+ `transactionKey` varchar(54) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
69
+ PRIMARY KEY (`id`),
70
+ UNIQUE KEY `paymentId` (`paymentId`) USING BTREE,
71
+ CONSTRAINT `buckaroo_payments_ibfk_1` FOREIGN KEY (`paymentId`) REFERENCES `payments` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
72
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
73
+
74
+ CREATE TABLE `challenges` (
75
+ `id` bigint unsigned NOT NULL AUTO_INCREMENT,
76
+ `email` varchar(255) NOT NULL,
77
+ `challenge` varchar(255) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
78
+ `createdAt` datetime NOT NULL,
79
+ `expiresAt` datetime NOT NULL,
80
+ `authSignKeyConstants` json DEFAULT NULL,
81
+ `tries` int unsigned NOT NULL DEFAULT '0',
82
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
83
+ PRIMARY KEY (`id`),
84
+ UNIQUE KEY `id` (`id`),
85
+ UNIQUE KEY `email` (`email`,`organizationId`) USING BTREE,
86
+ KEY `organizationId` (`organizationId`),
87
+ CONSTRAINT `challenges_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
88
+ ) ENGINE=InnoDB AUTO_INCREMENT=63629 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
89
+
90
+ CREATE TABLE `cities` (
91
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
92
+ `name` varchar(50) DEFAULT NULL,
93
+ `country` varchar(2) DEFAULT NULL,
94
+ `parentCityId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
95
+ `provinceId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
96
+ PRIMARY KEY (`id`),
97
+ UNIQUE KEY `id` (`id`),
98
+ KEY `provinceId` (`provinceId`),
99
+ KEY `parentCityId` (`parentCityId`),
100
+ FULLTEXT KEY `name` (`name`),
101
+ CONSTRAINT `cities_ibfk_1` FOREIGN KEY (`provinceId`) REFERENCES `provinces` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
102
+ CONSTRAINT `cities_ibfk_2` FOREIGN KEY (`parentCityId`) REFERENCES `cities` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
103
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
104
+
105
+ CREATE TABLE `document_templates` (
106
+ `id` varchar(36) NOT NULL DEFAULT '',
107
+ `html` longtext NOT NULL,
108
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
109
+ `status` varchar(36) NOT NULL,
110
+ `settings` json NOT NULL,
111
+ `privateSettings` json NOT NULL,
112
+ `createdAt` datetime NOT NULL,
113
+ `updatedAt` datetime NOT NULL,
114
+ `updatesEnabled` tinyint(1) NOT NULL DEFAULT '1',
115
+ PRIMARY KEY (`id`),
116
+ KEY `organizationId` (`organizationId`),
117
+ CONSTRAINT `document_templates_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
118
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
119
+
120
+ CREATE TABLE `documents` (
121
+ `id` varchar(36) NOT NULL DEFAULT '',
122
+ `data` json NOT NULL,
123
+ `status` varchar(36) NOT NULL,
124
+ `templateId` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
125
+ `registrationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
126
+ `memberId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
127
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
128
+ `createdAt` datetime NOT NULL,
129
+ `updatedAt` datetime NOT NULL,
130
+ `number` bigint unsigned DEFAULT NULL,
131
+ PRIMARY KEY (`id`),
132
+ KEY `templateId` (`templateId`),
133
+ KEY `registrationId` (`registrationId`),
134
+ KEY `memberId` (`memberId`),
135
+ CONSTRAINT `documents_ibfk_1` FOREIGN KEY (`templateId`) REFERENCES `document_templates` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
136
+ CONSTRAINT `documents_ibfk_2` FOREIGN KEY (`registrationId`) REFERENCES `registrations` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
137
+ CONSTRAINT `documents_ibfk_3` FOREIGN KEY (`memberId`) REFERENCES `members` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
138
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
139
+
140
+ CREATE TABLE `email_templates` (
141
+ `id` varchar(36) NOT NULL DEFAULT '',
142
+ `subject` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
143
+ `groupId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
144
+ `webshopId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
145
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
146
+ `type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
147
+ `text` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
148
+ `html` text NOT NULL,
149
+ `json` json NOT NULL,
150
+ `updatedAt` datetime NOT NULL,
151
+ `createdAt` datetime NOT NULL,
152
+ PRIMARY KEY (`id`),
153
+ KEY `organizationId` (`organizationId`),
154
+ KEY `webshopId` (`webshopId`),
155
+ KEY `groupId` (`groupId`),
156
+ CONSTRAINT `email_templates_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
157
+ CONSTRAINT `email_templates_ibfk_2` FOREIGN KEY (`webshopId`) REFERENCES `webshops` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
158
+ CONSTRAINT `email_templates_ibfk_3` FOREIGN KEY (`groupId`) REFERENCES `groups` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
159
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
160
+
161
+ CREATE TABLE `email_verification_codes` (
162
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
163
+ `email` varchar(255) NOT NULL,
164
+ `code` varchar(20) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
165
+ `token` varchar(256) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
166
+ `createdAt` datetime NOT NULL,
167
+ `expiresAt` datetime NOT NULL,
168
+ `generatedCount` int unsigned NOT NULL DEFAULT '0',
169
+ `tries` int unsigned NOT NULL DEFAULT '0',
170
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
171
+ `userId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
172
+ PRIMARY KEY (`id`),
173
+ UNIQUE KEY `id` (`id`),
174
+ UNIQUE KEY `userId` (`userId`) USING BTREE,
175
+ UNIQUE KEY `token` (`token`) USING BTREE,
176
+ KEY `organizationId` (`organizationId`),
177
+ CONSTRAINT `email_verification_codes_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
178
+ CONSTRAINT `email_verification_codes_ibfk_2` FOREIGN KEY (`userId`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
179
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
180
+
181
+ CREATE TABLE `groups` (
182
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
183
+ `settings` json NOT NULL,
184
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
185
+ `cycle` int NOT NULL DEFAULT '0' COMMENT 'Increased every time a new registration period started',
186
+ `createdAt` datetime NOT NULL,
187
+ `updatedAt` datetime NOT NULL,
188
+ `privateSettings` json NOT NULL DEFAULT (json_object()),
189
+ `deletedAt` datetime DEFAULT NULL,
190
+ `status` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'Open',
191
+ PRIMARY KEY (`id`),
192
+ UNIQUE KEY `groupCycle` (`cycle`,`id`) USING BTREE,
193
+ KEY `organizationId` (`organizationId`),
194
+ CONSTRAINT `groups_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
195
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
196
+
197
+ CREATE TABLE `images` (
198
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
199
+ `source` json NOT NULL,
200
+ `createdAt` datetime NOT NULL,
201
+ `resolutions` json NOT NULL DEFAULT (json_array()),
202
+ PRIMARY KEY (`id`)
203
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
204
+
205
+ CREATE TABLE `invites` (
206
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
207
+ `key` varchar(128) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL COMMENT 'Key needed to access the invite data',
208
+ `keychainItems` text CHARACTER SET ascii COLLATE ascii_general_ci COMMENT 'Encrypted keychain data that is shared with this user',
209
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
210
+ `senderId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
211
+ `receiverId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
212
+ `permissions` json DEFAULT NULL COMMENT 'Only set when you going to give admin permissions',
213
+ `memberIds` json DEFAULT NULL COMMENT 'Set when you are going to give permissions to access members',
214
+ `userDetails` json DEFAULT NULL COMMENT 'Auto prefill user information (email, name, ...) when creating the user',
215
+ `validUntil` datetime NOT NULL,
216
+ `createdAt` datetime NOT NULL,
217
+ `updatedAt` datetime NOT NULL,
218
+ PRIMARY KEY (`id`),
219
+ UNIQUE KEY `key` (`key`) USING BTREE,
220
+ KEY `receiverId` (`receiverId`),
221
+ KEY `senderId` (`senderId`),
222
+ KEY `organizationId` (`organizationId`),
223
+ CONSTRAINT `invites_ibfk_1` FOREIGN KEY (`receiverId`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
224
+ CONSTRAINT `invites_ibfk_2` FOREIGN KEY (`senderId`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
225
+ CONSTRAINT `invites_ibfk_3` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
226
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
227
+
228
+ CREATE TABLE `keychain` (
229
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
230
+ `userId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
231
+ `publicKey` varchar(255) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL COMMENT 'The public key a user has received access to',
232
+ `encryptedPrivateKey` varchar(255) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL COMMENT 'The private key associated with this public key, encrypted with the private key of the user',
233
+ `createdAt` datetime NOT NULL,
234
+ `updatedAt` datetime NOT NULL,
235
+ PRIMARY KEY (`id`),
236
+ UNIQUE KEY `publicKeyPerUser` (`publicKey`,`userId`) USING BTREE,
237
+ KEY `userId` (`userId`),
238
+ CONSTRAINT `keychain_ibfk_1` FOREIGN KEY (`userId`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
239
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
240
+
241
+ CREATE TABLE `members` (
242
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
243
+ `firstName` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
244
+ `lastName` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
245
+ `birthDay` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
246
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
247
+ `details` json NOT NULL,
248
+ `createdAt` datetime NOT NULL,
249
+ `updatedAt` datetime NOT NULL,
250
+ `outstandingBalance` int NOT NULL DEFAULT '0',
251
+ PRIMARY KEY (`id`),
252
+ KEY `organizationId` (`organizationId`),
253
+ CONSTRAINT `members_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
254
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
255
+
256
+ CREATE TABLE `mollie_payments` (
257
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL DEFAULT 'ascii_general_ci',
258
+ `paymentId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
259
+ `mollieId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
260
+ PRIMARY KEY (`id`),
261
+ UNIQUE KEY `paymentId` (`paymentId`) USING BTREE,
262
+ CONSTRAINT `mollie_payments_ibfk_1` FOREIGN KEY (`paymentId`) REFERENCES `payments` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
263
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
264
+
265
+ CREATE TABLE `mollie_tokens` (
266
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
267
+ `accessToken` text,
268
+ `refreshToken` text,
269
+ `createdAt` datetime NOT NULL,
270
+ `expiresOn` datetime DEFAULT NULL,
271
+ PRIMARY KEY (`organizationId`),
272
+ UNIQUE KEY `organizationId` (`organizationId`),
273
+ CONSTRAINT `mollie_tokens_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
274
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
275
+
276
+ CREATE TABLE `organizations` (
277
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
278
+ `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
279
+ `uri` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
280
+ `registerDomain` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
281
+ `website` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
282
+ `meta` json NOT NULL,
283
+ `createdAt` datetime NOT NULL,
284
+ `updatedAt` datetime NOT NULL,
285
+ `publicKey` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
286
+ `address` json NOT NULL,
287
+ `searchIndex` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
288
+ `privateMeta` json NOT NULL DEFAULT (json_object()),
289
+ `serverMeta` json NOT NULL DEFAULT (json_object()),
290
+ PRIMARY KEY (`id`),
291
+ UNIQUE KEY `uri` (`uri`) USING BTREE,
292
+ UNIQUE KEY `registerDomain` (`registerDomain`) USING BTREE,
293
+ FULLTEXT KEY `searchIndex` (`searchIndex`)
294
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
295
+
296
+ CREATE TABLE `password_tokens` (
297
+ `token` varchar(256) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
298
+ `validUntil` datetime NOT NULL,
299
+ `userId` varchar(256) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
300
+ `createdAt` datetime NOT NULL,
301
+ PRIMARY KEY (`token`),
302
+ KEY `userId` (`userId`),
303
+ CONSTRAINT `password_tokens_ibfk_1` FOREIGN KEY (`userId`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
304
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
305
+
306
+ CREATE TABLE `payconiq_payments` (
307
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL DEFAULT 'ascii_general_ci',
308
+ `paymentId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
309
+ `payconiqId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
310
+ PRIMARY KEY (`id`),
311
+ UNIQUE KEY `paymentId` (`paymentId`) USING BTREE,
312
+ CONSTRAINT `payconiq_payments_ibfk_1` FOREIGN KEY (`paymentId`) REFERENCES `payments` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
313
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
314
+
315
+ CREATE TABLE `payments` (
316
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
317
+ `settlement` json DEFAULT NULL,
318
+ `iban` varchar(40) DEFAULT NULL,
319
+ `ibanName` varchar(128) DEFAULT NULL,
320
+ `method` varchar(36) DEFAULT NULL,
321
+ `provider` varchar(36) DEFAULT NULL,
322
+ `status` varchar(36) NOT NULL,
323
+ `price` int NOT NULL,
324
+ `transferSettings` json DEFAULT NULL,
325
+ `transferDescription` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
326
+ `createdAt` datetime NOT NULL,
327
+ `updatedAt` datetime NOT NULL,
328
+ `paidAt` datetime DEFAULT NULL,
329
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
330
+ `userId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
331
+ `freeContribution` int DEFAULT NULL,
332
+ `stripeAccountId` varchar(36) DEFAULT NULL,
333
+ `transferFee` int NOT NULL DEFAULT '0',
334
+ PRIMARY KEY (`id`),
335
+ KEY `createdAt` (`createdAt`) USING BTREE,
336
+ KEY `organizationId` (`organizationId`),
337
+ KEY `userId` (`userId`),
338
+ KEY `stripeAccountId` (`stripeAccountId`),
339
+ CONSTRAINT `payments_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
340
+ CONSTRAINT `payments_ibfk_2` FOREIGN KEY (`userId`) REFERENCES `users` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
341
+ CONSTRAINT `stripeAccountId` FOREIGN KEY (`stripeAccountId`) REFERENCES `stripe_accounts` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE
342
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
343
+
344
+ CREATE TABLE `postal_codes` (
345
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
346
+ `postalCode` varchar(36) NOT NULL,
347
+ `cityId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
348
+ `country` varchar(2) DEFAULT NULL,
349
+ PRIMARY KEY (`id`),
350
+ KEY `postalCode` (`postalCode`,`country`) USING BTREE,
351
+ KEY `cityId` (`cityId`),
352
+ CONSTRAINT `postal_codes_ibfk_1` FOREIGN KEY (`cityId`) REFERENCES `cities` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
353
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
354
+
355
+ CREATE TABLE `provinces` (
356
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
357
+ `name` varchar(50) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
358
+ `country` varchar(2) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
359
+ PRIMARY KEY (`id`),
360
+ UNIQUE KEY `id` (`id`),
361
+ FULLTEXT KEY `name` (`name`)
362
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
363
+
364
+ CREATE TABLE `register_codes` (
365
+ `code` varchar(100) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL DEFAULT 'utf8mb4_unicode_ci',
366
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
367
+ `value` int NOT NULL DEFAULT '0',
368
+ `createdAt` datetime NOT NULL,
369
+ `updatedAt` datetime NOT NULL,
370
+ `description` varchar(100) NOT NULL,
371
+ PRIMARY KEY (`code`)
372
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
373
+
374
+ CREATE TABLE `registrations` (
375
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
376
+ `memberId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
377
+ `groupId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
378
+ `createdAt` datetime NOT NULL,
379
+ `updatedAt` datetime NOT NULL,
380
+ `reservedUntil` datetime DEFAULT NULL,
381
+ `registeredAt` datetime DEFAULT NULL COMMENT 'Date of the registration or renewal. This is null if the registration is not yet active (e.g. during payment)',
382
+ `deactivatedAt` datetime DEFAULT NULL COMMENT 'Set if the registration was canceled or deactivated during the group cycle. Keep this null at the end of the group cycle.',
383
+ `cycle` int NOT NULL COMMENT 'Cycle of the group the registration is for',
384
+ `paymentId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
385
+ `price` int DEFAULT NULL,
386
+ `waitingList` tinyint(1) NOT NULL DEFAULT '0',
387
+ `canRegister` tinyint(1) NOT NULL DEFAULT '0',
388
+ `pricePaid` int NOT NULL DEFAULT '0',
389
+ PRIMARY KEY (`id`),
390
+ UNIQUE KEY `groupCycleMember` (`groupId`,`cycle`,`memberId`) USING BTREE,
391
+ KEY `memberId` (`memberId`) USING BTREE,
392
+ KEY `paymentId` (`paymentId`),
393
+ KEY `groupOccupancy` (`groupId`,`cycle`,`registeredAt`,`reservedUntil`) USING BTREE,
394
+ CONSTRAINT `registrations_ibfk_1` FOREIGN KEY (`memberId`) REFERENCES `members` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
395
+ CONSTRAINT `registrations_ibfk_2` FOREIGN KEY (`groupId`) REFERENCES `groups` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
396
+ CONSTRAINT `registrations_ibfk_3` FOREIGN KEY (`paymentId`) REFERENCES `payments` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
397
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
398
+
399
+ CREATE TABLE `stamhoofd_credits` (
400
+ `id` varchar(36) NOT NULL DEFAULT 'utf8mb4_0900_ai_ci',
401
+ `organizationId` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ascii_general_ci',
402
+ `expireAt` datetime DEFAULT NULL,
403
+ `createdAt` datetime NOT NULL,
404
+ `updatedAt` datetime NOT NULL,
405
+ `description` varchar(255) NOT NULL,
406
+ `allowTransactions` int NOT NULL DEFAULT '0',
407
+ `change` int NOT NULL,
408
+ PRIMARY KEY (`id`),
409
+ KEY `organizationId` (`organizationId`,`createdAt`) USING BTREE
410
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
411
+
412
+ CREATE TABLE `stamhoofd_invoices` (
413
+ `id` varchar(36) NOT NULL,
414
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
415
+ `creditId` varchar(36) DEFAULT NULL,
416
+ `paymentId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
417
+ `meta` json NOT NULL,
418
+ `reference` varchar(128) DEFAULT NULL,
419
+ `number` mediumint DEFAULT NULL,
420
+ `paidAt` datetime DEFAULT NULL,
421
+ `createdAt` datetime NOT NULL,
422
+ `updatedAt` datetime NOT NULL,
423
+ PRIMARY KEY (`id`),
424
+ KEY `organizationId` (`organizationId`),
425
+ KEY `paymentId` (`paymentId`),
426
+ KEY `reference` (`reference`) USING BTREE,
427
+ CONSTRAINT `stamhoofd_invoices_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
428
+ CONSTRAINT `stamhoofd_invoices_ibfk_2` FOREIGN KEY (`paymentId`) REFERENCES `payments` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
429
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
430
+
431
+ CREATE TABLE `stamhoofd_packages` (
432
+ `id` varchar(36) NOT NULL,
433
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
434
+ `meta` json NOT NULL,
435
+ `removeAt` datetime DEFAULT NULL,
436
+ `validUntil` datetime DEFAULT NULL,
437
+ `validAt` datetime DEFAULT NULL,
438
+ `createdAt` datetime NOT NULL,
439
+ `updatedAt` datetime NOT NULL,
440
+ `emailCount` int NOT NULL DEFAULT '0',
441
+ `lastEmailAt` datetime DEFAULT NULL,
442
+ PRIMARY KEY (`id`),
443
+ KEY `organizationId` (`organizationId`)
444
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
445
+
446
+ CREATE TABLE `stamhoofd_pending_invoices` (
447
+ `id` varchar(36) NOT NULL,
448
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
449
+ `meta` json NOT NULL,
450
+ `createdAt` datetime NOT NULL,
451
+ `updatedAt` datetime NOT NULL,
452
+ `invoiceId` varchar(36) DEFAULT NULL,
453
+ PRIMARY KEY (`id`),
454
+ UNIQUE KEY `organizationId` (`organizationId`) USING BTREE,
455
+ KEY `invoiceId` (`invoiceId`),
456
+ CONSTRAINT `stamhoofd_pending_invoices_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
457
+ CONSTRAINT `stamhoofd_pending_invoices_ibfk_2` FOREIGN KEY (`invoiceId`) REFERENCES `stamhoofd_invoices` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
458
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
459
+
460
+ CREATE TABLE `streets` (
461
+ `id` varchar(36) NOT NULL,
462
+ `cityId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
463
+ `name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
464
+ PRIMARY KEY (`id`),
465
+ KEY `cityId` (`cityId`),
466
+ CONSTRAINT `streets_ibfk_1` FOREIGN KEY (`cityId`) REFERENCES `cities` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
467
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
468
+
469
+ CREATE TABLE `stripe_accounts` (
470
+ `id` varchar(36) NOT NULL,
471
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL DEFAULT 'ascii_general_ci',
472
+ `status` varchar(32) NOT NULL DEFAULT 'active',
473
+ `accountId` varchar(100) NOT NULL,
474
+ `meta` json NOT NULL,
475
+ `createdAt` datetime NOT NULL,
476
+ `updatedAt` datetime NOT NULL,
477
+ PRIMARY KEY (`id`),
478
+ KEY `organizationId` (`organizationId`),
479
+ CONSTRAINT `stripe_accounts_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
480
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
481
+
482
+ CREATE TABLE `stripe_checkout_sessions` (
483
+ `id` varchar(36) NOT NULL,
484
+ `paymentId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
485
+ `stripeSessionId` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
486
+ `organizationId` varchar(36) DEFAULT NULL,
487
+ PRIMARY KEY (`id`),
488
+ UNIQUE KEY `stripeIntentId` (`stripeSessionId`) USING BTREE
489
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
490
+
491
+ CREATE TABLE `stripe_payment_intents` (
492
+ `id` varchar(36) NOT NULL,
493
+ `paymentId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
494
+ `stripeIntentId` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
495
+ `organizationId` varchar(36) DEFAULT NULL,
496
+ PRIMARY KEY (`id`),
497
+ UNIQUE KEY `stripeIntentId` (`stripeIntentId`) USING BTREE
498
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
499
+
500
+ CREATE TABLE `tokens` (
501
+ `userId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
502
+ `accessToken` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
503
+ `refreshToken` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
504
+ `accessTokenValidUntil` datetime NOT NULL,
505
+ `refreshTokenValidUntil` datetime NOT NULL,
506
+ `createdAt` datetime NOT NULL,
507
+ `updatedAt` datetime NOT NULL,
508
+ PRIMARY KEY (`accessToken`),
509
+ UNIQUE KEY `refreshToken` (`refreshToken`),
510
+ KEY `userId` (`userId`),
511
+ CONSTRAINT `tokens_ibfk_1` FOREIGN KEY (`userId`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
512
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
513
+
514
+ CREATE TABLE `used_register_codes` (
515
+ `id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
516
+ `code` varchar(100) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL DEFAULT 'utf8mb4_unicode_ci',
517
+ `creditId` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
518
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
519
+ `createdAt` datetime NOT NULL,
520
+ `updatedAt` datetime NOT NULL,
521
+ PRIMARY KEY (`id`),
522
+ UNIQUE KEY `organizationId` (`organizationId`) USING BTREE,
523
+ KEY `creditId` (`creditId`),
524
+ KEY `code` (`code`),
525
+ CONSTRAINT `used_register_codes_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
526
+ CONSTRAINT `used_register_codes_ibfk_2` FOREIGN KEY (`creditId`) REFERENCES `stamhoofd_credits` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
527
+ CONSTRAINT `used_register_codes_ibfk_3` FOREIGN KEY (`code`) REFERENCES `register_codes` (`code`) ON DELETE CASCADE ON UPDATE CASCADE
528
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
529
+
530
+ CREATE TABLE `users` (
531
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
532
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
533
+ `email` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
534
+ `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
535
+ `firstName` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
536
+ `lastName` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
537
+ `verified` tinyint(1) NOT NULL DEFAULT '0',
538
+ `requestKeys` tinyint(1) NOT NULL DEFAULT '0',
539
+ `publicKey` varchar(255) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
540
+ `publicAuthSignKey` varchar(255) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
541
+ `createdAt` datetime NOT NULL,
542
+ `updatedAt` datetime NOT NULL,
543
+ `permissions` json DEFAULT NULL,
544
+ `meta` json DEFAULT NULL,
545
+ `authSignKeyConstants` json DEFAULT NULL,
546
+ `authEncryptionKeyConstants` json DEFAULT NULL,
547
+ `encryptedPrivateKey` varchar(255) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
548
+ PRIMARY KEY (`id`),
549
+ UNIQUE KEY `id` (`id`),
550
+ UNIQUE KEY `emailOrganizaton` (`email`,`organizationId`) USING BTREE,
551
+ KEY `organizationId` (`organizationId`),
552
+ CONSTRAINT `users_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
553
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
554
+
555
+ CREATE TABLE `webshop_orders` (
556
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
557
+ `data` json NOT NULL,
558
+ `createdAt` datetime NOT NULL,
559
+ `updatedAt` datetime NOT NULL,
560
+ `webshopId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
561
+ `paymentId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
562
+ `validAt` datetime DEFAULT NULL,
563
+ `number` bigint unsigned DEFAULT NULL,
564
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
565
+ `userId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci DEFAULT NULL,
566
+ `status` varchar(36) NOT NULL DEFAULT 'Created',
567
+ PRIMARY KEY (`id`),
568
+ UNIQUE KEY `id` (`id`),
569
+ UNIQUE KEY `orderNumber` (`number`,`webshopId`) USING BTREE,
570
+ UNIQUE KEY `orderNumberForWebshop` (`webshopId`,`number`) USING BTREE,
571
+ UNIQUE KEY `updatedAt` (`webshopId`,`updatedAt`,`number`) USING BTREE,
572
+ KEY `paymentId` (`paymentId`),
573
+ KEY `webshopId` (`webshopId`),
574
+ KEY `organizationId` (`organizationId`),
575
+ KEY `userId` (`userId`),
576
+ CONSTRAINT `webshop_orders_ibfk_1` FOREIGN KEY (`paymentId`) REFERENCES `payments` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
577
+ CONSTRAINT `webshop_orders_ibfk_2` FOREIGN KEY (`webshopId`) REFERENCES `webshops` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
578
+ CONSTRAINT `webshop_orders_ibfk_3` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
579
+ CONSTRAINT `webshop_orders_ibfk_4` FOREIGN KEY (`userId`) REFERENCES `users` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
580
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
581
+
582
+ CREATE TABLE `webshop_tickets` (
583
+ `id` varchar(36) NOT NULL,
584
+ `secret` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
585
+ `createdAt` datetime NOT NULL,
586
+ `updatedAt` datetime NOT NULL,
587
+ `itemId` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
588
+ `orderId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
589
+ `webshopId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
590
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
591
+ `scannedAt` datetime DEFAULT NULL,
592
+ `scannedBy` varchar(100) DEFAULT NULL,
593
+ `index` int NOT NULL,
594
+ `seat` json DEFAULT NULL,
595
+ `originalSeat` json DEFAULT NULL,
596
+ `total` int NOT NULL,
597
+ PRIMARY KEY (`id`),
598
+ UNIQUE KEY `secret` (`secret`,`webshopId`) USING BTREE,
599
+ KEY `organizationId` (`organizationId`),
600
+ KEY `orderId` (`orderId`),
601
+ KEY `updatedAt` (`webshopId`,`updatedAt`) USING BTREE,
602
+ CONSTRAINT `webshop_tickets_ibfk_1` FOREIGN KEY (`webshopId`) REFERENCES `webshops` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
603
+ CONSTRAINT `webshop_tickets_ibfk_2` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
604
+ CONSTRAINT `webshop_tickets_ibfk_3` FOREIGN KEY (`orderId`) REFERENCES `webshop_orders` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
605
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
606
+
607
+ CREATE TABLE `webshops` (
608
+ `id` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
609
+ `organizationId` varchar(36) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
610
+ `products` json NOT NULL,
611
+ `categories` json NOT NULL,
612
+ `uri` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
613
+ `legacyUri` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
614
+ `domain` varchar(100) DEFAULT NULL,
615
+ `meta` json NOT NULL,
616
+ `privateMeta` json NOT NULL DEFAULT (json_object()),
617
+ `serverMeta` json NOT NULL DEFAULT (json_object()),
618
+ `createdAt` datetime NOT NULL,
619
+ `updatedAt` datetime NOT NULL,
620
+ `domainUri` varchar(100) DEFAULT NULL,
621
+ PRIMARY KEY (`id`),
622
+ UNIQUE KEY `uri` (`uri`) USING BTREE,
623
+ UNIQUE KEY `domain` (`domain`,`domainUri`) USING BTREE,
624
+ KEY `organizationId` (`organizationId`),
625
+ CONSTRAINT `webshops_ibfk_1` FOREIGN KEY (`organizationId`) REFERENCES `organizations` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
626
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
627
+
628
+ SET SQL_MODE=@OLD_SQL_MODE ;
629
+ SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS ;
630
+ SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS ;
631
+ SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT ;
632
+ SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS ;
633
+ SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION ;
634
+ SET SQL_NOTES=@OLD_SQL_NOTES ;