@passly-nl/data 1.0.0-beta.2 → 1.0.0-beta.5

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 (242) hide show
  1. package/dist/index.d.mts +1931 -0
  2. package/dist/index.d.mts.map +1 -0
  3. package/dist/index.mjs +2 -0
  4. package/dist/index.mjs.map +1 -0
  5. package/package.json +14 -13
  6. package/src/adapter/AddressAdapter.ts +10 -10
  7. package/src/adapter/AuthAdapter.ts +24 -24
  8. package/src/adapter/BuyerAdapter.ts +12 -12
  9. package/src/adapter/CommonAdapter.ts +4 -4
  10. package/src/adapter/DateTimeAdapter.ts +7 -1
  11. package/src/adapter/EventAdapter.ts +131 -131
  12. package/src/adapter/FileSystemAdapter.ts +5 -5
  13. package/src/adapter/FinanceAdapter.ts +22 -22
  14. package/src/adapter/FluxAdapter.ts +9 -9
  15. package/src/adapter/MerchantAdapter.ts +44 -44
  16. package/src/adapter/MerchantDashboardAdapter.ts +16 -16
  17. package/src/adapter/OrderAdapter.ts +33 -33
  18. package/src/adapter/PaymentAdapter.ts +26 -26
  19. package/src/adapter/ProductAdapter.ts +14 -14
  20. package/src/adapter/PublicPayAdapter.ts +5 -5
  21. package/src/adapter/PublicShopAdapter.ts +79 -79
  22. package/src/adapter/ReservationAdapter.ts +15 -15
  23. package/src/adapter/StatisticsAdapter.ts +13 -0
  24. package/src/adapter/StatisticsBuyersAdapter.ts +28 -0
  25. package/src/adapter/StatisticsEventsAdapter.ts +16 -0
  26. package/src/adapter/StatisticsOverviewAdapter.ts +85 -0
  27. package/src/adapter/StatisticsSalesAdapter.ts +33 -0
  28. package/src/adapter/TicketAdapter.ts +14 -14
  29. package/src/adapter/index.ts +5 -0
  30. package/src/dto/index.ts +1 -0
  31. package/src/dto/statistics/StatisticsBuyersOverviewDto.ts +69 -0
  32. package/src/dto/statistics/StatisticsBuyersRankedDto.ts +69 -0
  33. package/src/dto/statistics/StatisticsEventsOverviewDto.ts +59 -0
  34. package/src/dto/statistics/StatisticsOverviewBestRevenueMonthDto.ts +50 -0
  35. package/src/dto/statistics/StatisticsOverviewEventPerformanceDto.ts +29 -0
  36. package/src/dto/statistics/StatisticsOverviewEventPerformanceEventDto.ts +141 -0
  37. package/src/dto/statistics/StatisticsOverviewEventPerformanceSummaryDto.ts +59 -0
  38. package/src/dto/statistics/StatisticsOverviewKPIsDto.ts +70 -0
  39. package/src/dto/statistics/StatisticsOverviewKPIsTotalEventsHostedDto.ts +48 -0
  40. package/src/dto/statistics/StatisticsOverviewKPIsTotalRevenueDto.ts +30 -0
  41. package/src/dto/statistics/StatisticsOverviewKPIsTotalTicketsSoldDto.ts +29 -0
  42. package/src/dto/statistics/StatisticsSalesLifetimeTotalsDto.ts +59 -0
  43. package/src/dto/statistics/StatisticsSalesPurchaseBehaviorDto.ts +49 -0
  44. package/src/dto/statistics/StatisticsSalesTransactionSuccessRateDto.ts +39 -0
  45. package/src/dto/statistics/StatisticsTrendDto.ts +38 -0
  46. package/src/dto/statistics/index.ts +15 -0
  47. package/src/service/AuthService.ts +3 -3
  48. package/src/service/InvitationService.ts +3 -3
  49. package/src/service/MeService.ts +8 -8
  50. package/src/service/MerchantBuyerService.ts +3 -3
  51. package/src/service/MerchantBuyersService.ts +1 -1
  52. package/src/service/MerchantDashboardService.ts +2 -2
  53. package/src/service/MerchantEventProductService.ts +3 -3
  54. package/src/service/MerchantEventProductsService.ts +3 -3
  55. package/src/service/MerchantEventService.ts +9 -9
  56. package/src/service/MerchantEventShopService.ts +5 -5
  57. package/src/service/MerchantEventShopsService.ts +3 -3
  58. package/src/service/MerchantEventStatisticsService.ts +6 -6
  59. package/src/service/MerchantEventStockPoolsService.ts +4 -4
  60. package/src/service/MerchantEventTicketTemplateService.ts +5 -5
  61. package/src/service/MerchantEventTicketTemplatesService.ts +3 -3
  62. package/src/service/MerchantEventsService.ts +2 -2
  63. package/src/service/MerchantFinanceInvoiceService.ts +1 -1
  64. package/src/service/MerchantFinanceInvoicesService.ts +1 -1
  65. package/src/service/MerchantFinanceService.ts +3 -3
  66. package/src/service/MerchantOrderService.ts +2 -2
  67. package/src/service/MerchantOrdersService.ts +1 -1
  68. package/src/service/MerchantService.ts +8 -8
  69. package/src/service/MerchantStatisticsBuyersService.ts +87 -0
  70. package/src/service/MerchantStatisticsEventsService.ts +15 -0
  71. package/src/service/MerchantStatisticsOverviewService.ts +56 -0
  72. package/src/service/MerchantStatisticsSalesService.ts +67 -0
  73. package/src/service/MerchantStatisticsService.ts +2 -2
  74. package/src/service/MerchantTicketService.ts +1 -1
  75. package/src/service/MerchantTicketsService.ts +1 -1
  76. package/src/service/MerchantUsersService.ts +2 -2
  77. package/src/service/MerchantsService.ts +1 -1
  78. package/src/service/PublicOrderService.ts +3 -3
  79. package/src/service/PublicShopService.ts +3 -3
  80. package/src/service/ReservationService.ts +1 -1
  81. package/src/service/ServicesService.ts +1 -1
  82. package/src/service/UiSelectOptionsService.ts +13 -3
  83. package/src/service/index.ts +4 -0
  84. package/src/types/event.ts +5 -0
  85. package/dist/adapter/AddressAdapter.d.ts +0 -3
  86. package/dist/adapter/AuthAdapter.d.ts +0 -6
  87. package/dist/adapter/BuyerAdapter.d.ts +0 -4
  88. package/dist/adapter/CommonAdapter.d.ts +0 -4
  89. package/dist/adapter/DateTimeAdapter.d.ts +0 -4
  90. package/dist/adapter/EventAdapter.d.ts +0 -22
  91. package/dist/adapter/FileSystemAdapter.d.ts +0 -4
  92. package/dist/adapter/FinanceAdapter.d.ts +0 -6
  93. package/dist/adapter/FluxAdapter.d.ts +0 -6
  94. package/dist/adapter/MerchantAdapter.d.ts +0 -8
  95. package/dist/adapter/MerchantDashboardAdapter.d.ts +0 -5
  96. package/dist/adapter/OrderAdapter.d.ts +0 -7
  97. package/dist/adapter/PaymentAdapter.d.ts +0 -7
  98. package/dist/adapter/ProductAdapter.d.ts +0 -4
  99. package/dist/adapter/PublicPayAdapter.d.ts +0 -4
  100. package/dist/adapter/PublicShopAdapter.d.ts +0 -13
  101. package/dist/adapter/ReservationAdapter.d.ts +0 -6
  102. package/dist/adapter/TicketAdapter.d.ts +0 -4
  103. package/dist/adapter/index.d.ts +0 -18
  104. package/dist/dto/address/AddressDto.d.ts +0 -20
  105. package/dist/dto/address/index.d.ts +0 -1
  106. package/dist/dto/auth/TotpStateDto.d.ts +0 -10
  107. package/dist/dto/auth/UserDto.d.ts +0 -23
  108. package/dist/dto/auth/UserTokenDto.d.ts +0 -23
  109. package/dist/dto/auth/index.d.ts +0 -3
  110. package/dist/dto/common/StatusResponseDto.d.ts +0 -8
  111. package/dist/dto/common/index.d.ts +0 -1
  112. package/dist/dto/event/EventAvailabilityDto.d.ts +0 -14
  113. package/dist/dto/event/EventCountersDto.d.ts +0 -10
  114. package/dist/dto/event/EventDto.d.ts +0 -29
  115. package/dist/dto/event/EventStatisticsAttendanceDto.d.ts +0 -10
  116. package/dist/dto/event/EventStatisticsBuyerTotalsDto.d.ts +0 -14
  117. package/dist/dto/event/EventStatisticsFinancialDto.d.ts +0 -9
  118. package/dist/dto/event/EventStatisticsOrderTotalsDto.d.ts +0 -12
  119. package/dist/dto/event/EventStatisticsOrdersDto.d.ts +0 -10
  120. package/dist/dto/event/EventStatisticsScanTotalsDto.d.ts +0 -10
  121. package/dist/dto/event/EventStatisticsScansDto.d.ts +0 -12
  122. package/dist/dto/event/EventStatisticsScansPerAppTeamDto.d.ts +0 -10
  123. package/dist/dto/event/EventStatisticsSwapTotalsDto.d.ts +0 -10
  124. package/dist/dto/event/ShopDesignDto.d.ts +0 -10
  125. package/dist/dto/event/ShopDto.d.ts +0 -35
  126. package/dist/dto/event/ShopElementButtonDto.d.ts +0 -12
  127. package/dist/dto/event/ShopElementDividerDto.d.ts +0 -10
  128. package/dist/dto/event/ShopElementDto.d.ts +0 -9
  129. package/dist/dto/event/ShopElementHeadingDto.d.ts +0 -10
  130. package/dist/dto/event/ShopElementNoticeDto.d.ts +0 -15
  131. package/dist/dto/event/ShopElementProductDto.d.ts +0 -7
  132. package/dist/dto/event/ShopElementTextDto.d.ts +0 -7
  133. package/dist/dto/event/StockOverviewDto.d.ts +0 -13
  134. package/dist/dto/event/StockOverviewItemDto.d.ts +0 -13
  135. package/dist/dto/event/StockPoolDto.d.ts +0 -25
  136. package/dist/dto/event/TicketTemplateDto.d.ts +0 -18
  137. package/dist/dto/event/index.d.ts +0 -25
  138. package/dist/dto/fileSystem/PictureDto.d.ts +0 -10
  139. package/dist/dto/fileSystem/index.d.ts +0 -1
  140. package/dist/dto/finance/FinanceOverviewDto.d.ts +0 -13
  141. package/dist/dto/finance/InvoiceDto.d.ts +0 -25
  142. package/dist/dto/finance/InvoiceLineDto.d.ts +0 -17
  143. package/dist/dto/finance/index.d.ts +0 -3
  144. package/dist/dto/index.d.ts +0 -14
  145. package/dist/dto/merchant/ContractDto.d.ts +0 -16
  146. package/dist/dto/merchant/InvitationDto.d.ts +0 -25
  147. package/dist/dto/merchant/MerchantDashboardKeyMetricsDto.d.ts +0 -22
  148. package/dist/dto/merchant/MerchantDashboardUpcomingEventDto.d.ts +0 -25
  149. package/dist/dto/merchant/MerchantDto.d.ts +0 -32
  150. package/dist/dto/merchant/MerchantUserDto.d.ts +0 -14
  151. package/dist/dto/merchant/VatNumberDto.d.ts +0 -19
  152. package/dist/dto/merchant/index.d.ts +0 -7
  153. package/dist/dto/order/BuyerDto.d.ts +0 -27
  154. package/dist/dto/order/OrderDto.d.ts +0 -37
  155. package/dist/dto/order/OrderLineDto.d.ts +0 -20
  156. package/dist/dto/order/OrderPaymentProviderDto.d.ts +0 -8
  157. package/dist/dto/order/OrderProductDto.d.ts +0 -12
  158. package/dist/dto/order/index.d.ts +0 -5
  159. package/dist/dto/payment/CostDto.d.ts +0 -16
  160. package/dist/dto/payment/PaymentMethodDto.d.ts +0 -10
  161. package/dist/dto/payment/PaymentProviderDto.d.ts +0 -12
  162. package/dist/dto/payment/TransactionDto.d.ts +0 -24
  163. package/dist/dto/payment/index.d.ts +0 -4
  164. package/dist/dto/product/ProductDto.d.ts +0 -30
  165. package/dist/dto/product/index.d.ts +0 -1
  166. package/dist/dto/publicPay/PublicPaymentMethodDto.d.ts +0 -10
  167. package/dist/dto/publicPay/index.d.ts +0 -1
  168. package/dist/dto/publicShop/PublicShopCartProductDto.d.ts +0 -10
  169. package/dist/dto/publicShop/PublicShopDesignDto.d.ts +0 -10
  170. package/dist/dto/publicShop/PublicShopDto.d.ts +0 -31
  171. package/dist/dto/publicShop/PublicShopElementButtonDto.d.ts +0 -12
  172. package/dist/dto/publicShop/PublicShopElementDividerDto.d.ts +0 -10
  173. package/dist/dto/publicShop/PublicShopElementDto.d.ts +0 -9
  174. package/dist/dto/publicShop/PublicShopElementHeadingDto.d.ts +0 -10
  175. package/dist/dto/publicShop/PublicShopElementNoticeDto.d.ts +0 -15
  176. package/dist/dto/publicShop/PublicShopElementProductDto.d.ts +0 -7
  177. package/dist/dto/publicShop/PublicShopElementTextDto.d.ts +0 -7
  178. package/dist/dto/publicShop/PublicShopEventDto.d.ts +0 -16
  179. package/dist/dto/publicShop/PublicShopMerchantDto.d.ts +0 -8
  180. package/dist/dto/publicShop/PublicShopProductDto.d.ts +0 -28
  181. package/dist/dto/publicShop/PublicShopReservationDto.d.ts +0 -14
  182. package/dist/dto/publicShop/PublicShopReservationProductDetailsDto.d.ts +0 -13
  183. package/dist/dto/publicShop/PublicShopReservationProductDto.d.ts +0 -9
  184. package/dist/dto/publicShop/PublicShopTimeSlotDto.d.ts +0 -15
  185. package/dist/dto/publicShop/index.d.ts +0 -17
  186. package/dist/dto/reservation/ReservationDto.d.ts +0 -16
  187. package/dist/dto/reservation/ReservationItemDto.d.ts +0 -9
  188. package/dist/dto/reservation/ReservationProductDto.d.ts +0 -13
  189. package/dist/dto/reservation/index.d.ts +0 -3
  190. package/dist/dto/ticket/TicketDto.d.ts +0 -31
  191. package/dist/dto/ticket/index.d.ts +0 -1
  192. package/dist/index.d.ts +0 -5
  193. package/dist/index.js +0 -4
  194. package/dist/index.js.map +0 -136
  195. package/dist/service/AuthService.d.ts +0 -11
  196. package/dist/service/InvitationService.d.ts +0 -7
  197. package/dist/service/MeService.d.ts +0 -12
  198. package/dist/service/MerchantBuyerService.d.ts +0 -7
  199. package/dist/service/MerchantBuyersService.d.ts +0 -5
  200. package/dist/service/MerchantDashboardService.d.ts +0 -6
  201. package/dist/service/MerchantEventProductService.d.ts +0 -10
  202. package/dist/service/MerchantEventProductsService.d.ts +0 -8
  203. package/dist/service/MerchantEventService.d.ts +0 -13
  204. package/dist/service/MerchantEventShopService.d.ts +0 -9
  205. package/dist/service/MerchantEventShopsService.d.ts +0 -8
  206. package/dist/service/MerchantEventStatisticsService.d.ts +0 -10
  207. package/dist/service/MerchantEventStockPoolsService.d.ts +0 -9
  208. package/dist/service/MerchantEventTicketTemplateService.d.ts +0 -11
  209. package/dist/service/MerchantEventTicketTemplatesService.d.ts +0 -9
  210. package/dist/service/MerchantEventsService.d.ts +0 -7
  211. package/dist/service/MerchantFinanceInvoiceService.d.ts +0 -6
  212. package/dist/service/MerchantFinanceInvoicesService.d.ts +0 -5
  213. package/dist/service/MerchantFinanceService.d.ts +0 -8
  214. package/dist/service/MerchantOrderService.d.ts +0 -9
  215. package/dist/service/MerchantOrdersService.d.ts +0 -5
  216. package/dist/service/MerchantService.d.ts +0 -14
  217. package/dist/service/MerchantStatisticsService.d.ts +0 -5
  218. package/dist/service/MerchantTicketService.d.ts +0 -7
  219. package/dist/service/MerchantTicketsService.d.ts +0 -5
  220. package/dist/service/MerchantUsersService.d.ts +0 -7
  221. package/dist/service/MerchantsService.d.ts +0 -5
  222. package/dist/service/PublicOrderService.d.ts +0 -7
  223. package/dist/service/PublicShopService.d.ts +0 -9
  224. package/dist/service/ReservationService.d.ts +0 -6
  225. package/dist/service/ServicesService.d.ts +0 -9
  226. package/dist/service/UiSelectOptionsService.d.ts +0 -6
  227. package/dist/service/index.d.ts +0 -32
  228. package/dist/types/auth.d.ts +0 -47
  229. package/dist/types/event.d.ts +0 -28
  230. package/dist/types/finance.d.ts +0 -14
  231. package/dist/types/general.d.ts +0 -19
  232. package/dist/types/index.d.ts +0 -9
  233. package/dist/types/order.d.ts +0 -7
  234. package/dist/types/payment.d.ts +0 -11
  235. package/dist/types/product.d.ts +0 -2
  236. package/dist/types/publicShop.d.ts +0 -7
  237. package/dist/types/ticket.d.ts +0 -12
  238. package/dist/util/emptyNull.d.ts +0 -1
  239. package/dist/util/index.d.ts +0 -4
  240. package/dist/util/jsonBlob.d.ts +0 -1
  241. package/dist/util/optional.d.ts +0 -4
  242. package/dist/util/optionalArray.d.ts +0 -1
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@passly-nl/data",
3
3
  "description": "API implementation for Passly.",
4
- "version": "1.0.0-beta.2",
4
+ "version": "1.0.0-beta.5",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "funding": "https://github.com/sponsors/basmilius",
@@ -30,33 +30,34 @@
30
30
  "provenance": true
31
31
  },
32
32
  "scripts": {
33
- "build": "tsgo --noEmit && bun -b build.ts"
33
+ "build": "tsgo --noEmit && tsdown"
34
34
  },
35
- "main": "./dist/index.js",
36
- "types": "./dist/index.d.ts",
37
- "typings": "./dist/index.d.ts",
35
+ "main": "./dist/index.mjs",
36
+ "types": "./dist/index.d.mts",
37
+ "typings": "./dist/index.d.mts",
38
38
  "sideEffects": false,
39
39
  "imports": {
40
- "#data/*": ["./src/*"]
40
+ "#data/*": [
41
+ "./src/*"
42
+ ]
41
43
  },
42
44
  "exports": {
43
45
  ".": {
44
- "types": "./dist/index.d.ts",
45
- "default": "./dist/index.js"
46
+ "types": "./dist/index.d.mts",
47
+ "default": "./dist/index.mjs"
46
48
  },
47
49
  "./*": "./*"
48
50
  },
49
51
  "dependencies": {
50
- "@basmilius/http-client": "^2.27.0",
52
+ "@basmilius/http-client": "^3.7.1",
53
+ "@flux-ui/types": "^3.0.0-next.26",
51
54
  "@fortawesome/fontawesome-common-types": "^7.2.0",
52
55
  "apexcharts": "^5.6.0",
53
56
  "luxon": "^3.7.2"
54
57
  },
55
58
  "devDependencies": {
56
- "@basmilius/tools": "^2.27.0",
57
- "@flux-ui/types": "^3.0.0-next.26",
58
- "@types/bun": "^1.3.9",
59
59
  "@types/luxon": "^3.7.1",
60
- "@typescript/native-preview": "^7.0.0-dev.20260222.1"
60
+ "@typescript/native-preview": "^7.0.0-dev.20260226.1",
61
+ "tsdown": "^0.21.0-beta.2"
61
62
  }
62
63
  }
@@ -1,18 +1,18 @@
1
- import { adapter } from '@basmilius/http-client';
1
+ import { adapter, ForeignData } from '@basmilius/http-client';
2
2
  import { AddressDto } from '#data/dto';
3
3
 
4
4
  @adapter
5
5
  export class AddressAdapter {
6
- static parseAddressFromObject(address: Record<string, any>) {
6
+ static parseAddress(data: ForeignData): AddressDto {
7
7
  return new AddressDto(
8
- address.id,
9
- address.label,
10
- address.street,
11
- address.number,
12
- address.postal_code,
13
- address.city,
14
- address.country,
15
- address.formatted
8
+ data.id,
9
+ data.label,
10
+ data.street,
11
+ data.number,
12
+ data.postal_code,
13
+ data.city,
14
+ data.country,
15
+ data.formatted
16
16
  );
17
17
  }
18
18
  }
@@ -1,42 +1,42 @@
1
- import { adapter } from '@basmilius/http-client';
1
+ import { adapter, ForeignData } from '@basmilius/http-client';
2
2
  import { DateTimeAdapter, FileSystemAdapter } from '#data/adapter';
3
3
  import { TotpStateDto, UserDto, UserTokenDto } from '#data/dto';
4
4
  import { optional } from '#data/util';
5
5
 
6
6
  @adapter
7
7
  export class AuthAdapter {
8
- static parseTotpStateFromObject(state: Record<string, any>): TotpStateDto {
8
+ static parseTotpState(data: ForeignData): TotpStateDto {
9
9
  return new TotpStateDto(
10
- state.enabled,
11
- state.secret,
12
- state.qr
10
+ data.enabled,
11
+ data.secret,
12
+ data.qr
13
13
  );
14
14
  }
15
15
 
16
- static parseUserFromObject(user: Record<string, any>): UserDto {
16
+ static parseUser(data: ForeignData): UserDto {
17
17
  return new UserDto(
18
- user.id,
19
- user.email,
20
- user.first_name,
21
- user.last_name,
22
- user.full_name,
23
- user.initials,
24
- user.phone_number,
25
- user.is_online,
26
- optional(user.picture, FileSystemAdapter.parsePictureFromObject)
18
+ data.id,
19
+ data.email,
20
+ data.first_name,
21
+ data.last_name,
22
+ data.full_name,
23
+ data.initials,
24
+ data.phone_number,
25
+ data.is_online,
26
+ optional(data.picture, FileSystemAdapter.parsePicture)
27
27
  );
28
28
  }
29
29
 
30
- static parseUserTokenFromObject(token: Record<string, any>): UserTokenDto {
30
+ static parseUserToken(data: ForeignData): UserTokenDto {
31
31
  return new UserTokenDto(
32
- token.token,
33
- token.type,
34
- token.browser,
35
- token.operating_system,
36
- DateTimeAdapter.parseDateTimeFromString(token.created_on),
37
- DateTimeAdapter.parseDateTimeFromString(token.expires_on),
38
- token.realtime_channel,
39
- optional(token.user, AuthAdapter.parseUserFromObject)
32
+ data.token,
33
+ data.type,
34
+ data.browser,
35
+ data.operating_system,
36
+ DateTimeAdapter.parseDateTime(data.created_on),
37
+ DateTimeAdapter.parseDateTime(data.expires_on),
38
+ data.realtime_channel,
39
+ optional(data.user, AuthAdapter.parseUser)
40
40
  );
41
41
  }
42
42
  }
@@ -1,22 +1,22 @@
1
- import { adapter } from '@basmilius/http-client';
1
+ import { adapter, ForeignData } from '@basmilius/http-client';
2
2
  import { AddressAdapter, DateTimeAdapter } from '#data/adapter';
3
3
  import { BuyerDto } from '#data/dto';
4
4
  import { optional } from '#data/util';
5
5
 
6
6
  @adapter
7
7
  export class BuyerAdapter {
8
- static parseBuyerFromObject(buyer: Record<string, any>): BuyerDto {
8
+ static parseBuyer(data: ForeignData): BuyerDto {
9
9
  return new BuyerDto(
10
- buyer.id,
11
- buyer.first_name,
12
- buyer.last_name,
13
- buyer.email,
14
- buyer.phone_number,
15
- optional(buyer.date_of_birth, DateTimeAdapter.parseDateTimeFromString),
16
- buyer.gender,
17
- buyer.order_count ?? -1,
18
- buyer.full_name,
19
- optional(buyer.address, AddressAdapter.parseAddressFromObject)
10
+ data.id,
11
+ data.first_name,
12
+ data.last_name,
13
+ data.email,
14
+ data.phone_number,
15
+ optional(data.date_of_birth, DateTimeAdapter.parseDateTime),
16
+ data.gender,
17
+ data.order_count ?? -1,
18
+ data.full_name,
19
+ optional(data.address, AddressAdapter.parseAddress)
20
20
  );
21
21
  }
22
22
  }
@@ -1,12 +1,12 @@
1
- import { adapter } from '@basmilius/http-client';
1
+ import { adapter, ForeignData } from '@basmilius/http-client';
2
2
  import { StatusResponseDto } from '#data/dto';
3
3
 
4
4
  @adapter
5
5
  export class CommonAdapter {
6
- static parseStatusResponseFromObject(response: Record<string, any>): StatusResponseDto {
6
+ static parseStatusResponse(data: ForeignData): StatusResponseDto {
7
7
  return new StatusResponseDto(
8
- response.message,
9
- response.status
8
+ data.message,
9
+ data.status
10
10
  );
11
11
  }
12
12
  }
@@ -3,9 +3,15 @@ import { DateTime } from 'luxon';
3
3
 
4
4
  @adapter
5
5
  export class DateTimeAdapter {
6
- static parseDateTimeFromString(dateTime: string): DateTime {
6
+ static parseDateTime(dateTime: string): DateTime {
7
7
  return DateTime
8
8
  .fromISO(dateTime, {zone: 'UTC'})
9
9
  .setZone('Europe/Amsterdam');
10
10
  }
11
+
12
+ static parseDateTimeFromMonth(dateTime: string): DateTime {
13
+ return DateTime
14
+ .fromFormat(dateTime, 'yyyy-MM', {zone: 'UTC'})
15
+ .setZone('Europe/Amsterdam');
16
+ }
11
17
  }
@@ -1,114 +1,114 @@
1
- import { adapter } from '@basmilius/http-client';
1
+ import { adapter, ForeignData } from '@basmilius/http-client';
2
2
  import { AddressAdapter, DateTimeAdapter, FileSystemAdapter, MerchantAdapter, PaymentAdapter, ProductAdapter } from '#data/adapter';
3
3
  import { EventAvailabilityDto, EventCountersDto, EventDto, EventStatisticsAttendanceDto, EventStatisticsBuyerTotalsDto, EventStatisticsFinancialDto, EventStatisticsOrdersDto, EventStatisticsOrderTotalsDto, EventStatisticsScansDto, EventStatisticsScansPerAppTeamDto, EventStatisticsScanTotalsDto, EventStatisticsSwapTotalsDto, ShopDesignDto, ShopDto, ShopElementButtonDto, ShopElementDividerDto, ShopElementDto, ShopElementHeadingDto, ShopElementNoticeDto, ShopElementProductDto, ShopElementTextDto, StockOverviewDto, StockOverviewItemDto, StockPoolDto, TicketTemplateDto } from '#data/dto';
4
4
  import { optional } from '#data/util';
5
5
 
6
6
  @adapter
7
7
  export class EventAdapter {
8
- static parseEventFromObject(event: Record<string, any>): EventDto {
8
+ static parseEvent(data: ForeignData): EventDto {
9
9
  return new EventDto(
10
- event.id,
11
- event.name,
12
- event.description,
13
- DateTimeAdapter.parseDateTimeFromString(event.starts_on),
14
- DateTimeAdapter.parseDateTimeFromString(event.ends_on),
15
- event.minimum_age,
16
- event.status,
17
- optional(event.address, AddressAdapter.parseAddressFromObject)!,
18
- optional(event.header_file, FileSystemAdapter.parsePictureFromObject)!,
19
- DateTimeAdapter.parseDateTimeFromString(event.created_on),
20
- DateTimeAdapter.parseDateTimeFromString(event.updated_on)
10
+ data.id,
11
+ data.name,
12
+ data.description,
13
+ DateTimeAdapter.parseDateTime(data.starts_on),
14
+ DateTimeAdapter.parseDateTime(data.ends_on),
15
+ data.minimum_age,
16
+ data.status,
17
+ optional(data.address, AddressAdapter.parseAddress)!,
18
+ optional(data.header_file, FileSystemAdapter.parsePicture)!,
19
+ DateTimeAdapter.parseDateTime(data.created_on),
20
+ DateTimeAdapter.parseDateTime(data.updated_on)
21
21
  );
22
22
  }
23
23
 
24
- static parseEventAvailabilityFromObject(availability: Record<string, any>): EventAvailabilityDto {
24
+ static parseEventAvailability(data: ForeignData): EventAvailabilityDto {
25
25
  return new EventAvailabilityDto(
26
- availability.has_products,
27
- availability.has_shops,
28
- availability.has_shops_with_products,
29
- availability.is_publishable,
30
- availability.is_published
26
+ data.has_products,
27
+ data.has_shops,
28
+ data.has_shops_with_products,
29
+ data.is_publishable,
30
+ data.is_published
31
31
  );
32
32
  }
33
33
 
34
- static parseEventCountersFromObject(counters: Record<string, any>): EventCountersDto {
34
+ static parseEventCounters(data: ForeignData): EventCountersDto {
35
35
  return new EventCountersDto(
36
- counters.guests,
37
- counters.orders,
38
- counters.tickets
36
+ data.guests,
37
+ data.orders,
38
+ data.tickets
39
39
  );
40
40
  }
41
41
 
42
- static parseShopFromObject(shop: Record<string, any>): ShopDto {
42
+ static parseShop(data: ForeignData): ShopDto {
43
43
  return new ShopDto(
44
- shop.id,
45
- shop.name,
46
- shop.is_published,
47
- shop.password,
48
- optional(shop.starts_on, DateTimeAdapter.parseDateTimeFromString),
49
- optional(shop.ends_on, DateTimeAdapter.parseDateTimeFromString),
50
- shop.field_address,
51
- shop.field_birthdate,
52
- shop.field_gender,
53
- shop.field_phone_number,
54
- shop.status,
55
- optional(shop.design, EventAdapter.parseShopDesignFromObject),
56
- optional(shop.event, EventAdapter.parseEventFromObject),
57
- optional(shop.merchant, MerchantAdapter.parseMerchantFromObject)
58
- );
59
- }
60
-
61
- static parseShopDesignFromObject(design: Record<string, any>): ShopDesignDto {
44
+ data.id,
45
+ data.name,
46
+ data.is_published,
47
+ data.password,
48
+ optional(data.starts_on, DateTimeAdapter.parseDateTime),
49
+ optional(data.ends_on, DateTimeAdapter.parseDateTime),
50
+ data.field_address,
51
+ data.field_birthdate,
52
+ data.field_gender,
53
+ data.field_phone_number,
54
+ data.status,
55
+ optional(data.design, EventAdapter.parseShopDesign),
56
+ optional(data.event, EventAdapter.parseEvent),
57
+ optional(data.merchant, MerchantAdapter.parseMerchant)
58
+ );
59
+ }
60
+
61
+ static parseShopDesign(data: ForeignData): ShopDesignDto {
62
62
  return new ShopDesignDto(
63
- design.background_color,
64
- design.foreground_color,
65
- design.primary_color
63
+ data.background_color,
64
+ data.foreground_color,
65
+ data.primary_color
66
66
  );
67
67
  }
68
68
 
69
- static parseShopElementFromObject(element: Record<string, any>): ShopElementDto {
70
- switch (element.type) {
69
+ static parseShopElement(data: ForeignData): ShopElementDto {
70
+ switch (data.type) {
71
71
  case 'button':
72
72
  return new ShopElementButtonDto(
73
- element.id,
74
- element.icon,
75
- element.text,
76
- element.url
73
+ data.id,
74
+ data.icon,
75
+ data.text,
76
+ data.url
77
77
  );
78
78
 
79
79
  case 'divider':
80
80
  return new ShopElementDividerDto(
81
- element.id,
82
- element.icon,
83
- element.text
81
+ data.id,
82
+ data.icon,
83
+ data.text
84
84
  );
85
85
 
86
86
  case 'heading':
87
87
  return new ShopElementHeadingDto(
88
- element.id,
89
- element.heading_level,
90
- element.title
88
+ data.id,
89
+ data.heading_level,
90
+ data.title
91
91
  );
92
92
 
93
93
  case 'notice':
94
94
  return new ShopElementNoticeDto(
95
- element.id,
96
- element.icon,
97
- element.notice_type,
98
- element.title,
99
- element.text
95
+ data.id,
96
+ data.icon,
97
+ data.notice_type,
98
+ data.title,
99
+ data.text
100
100
  );
101
101
 
102
102
  case 'product':
103
103
  return new ShopElementProductDto(
104
- element.id,
105
- ProductAdapter.parseProductFromObject(element.product)
104
+ data.id,
105
+ ProductAdapter.parseProduct(data.product)
106
106
  );
107
107
 
108
108
  case 'text':
109
109
  return new ShopElementTextDto(
110
- element.id,
111
- element.text
110
+ data.id,
111
+ data.text
112
112
  );
113
113
  }
114
114
 
@@ -118,120 +118,120 @@ export class EventAdapter {
118
118
  );
119
119
  }
120
120
 
121
- static parseStockOverviewFromObject(overview: Record<string, any>): StockOverviewDto {
121
+ static parseStockOverview(data: ForeignData): StockOverviewDto {
122
122
  return new StockOverviewDto(
123
- overview.total,
124
- overview.sold,
125
- overview.remaining,
126
- overview.items.map(EventAdapter.parseStockOverviewItemFromObject)
123
+ data.total,
124
+ data.sold,
125
+ data.remaining,
126
+ data.items.map(EventAdapter.parseStockOverviewItem)
127
127
  );
128
128
  }
129
129
 
130
- static parseStockOverviewItemFromObject(item: Record<string, any>): StockOverviewItemDto {
130
+ static parseStockOverviewItem(data: ForeignData): StockOverviewItemDto {
131
131
  return new StockOverviewItemDto(
132
- EventAdapter.parseStockPoolFromObject(item.pool),
133
- ProductAdapter.parseProductFromObject(item.product),
134
- item.remaining,
135
- item.sold
132
+ EventAdapter.parseStockPool(data.pool),
133
+ ProductAdapter.parseProduct(data.product),
134
+ data.remaining,
135
+ data.sold
136
136
  );
137
137
  }
138
138
 
139
- static parseStockPoolFromObject(pool: Record<string, any>): StockPoolDto {
139
+ static parseStockPool(data: ForeignData): StockPoolDto {
140
140
  return new StockPoolDto(
141
- pool.id,
142
- pool.event_id,
143
- pool.merchant_id,
144
- pool.name,
145
- pool.remaining_stock,
146
- pool.stock,
147
- pool.is_shared,
148
- pool.product_names ?? [],
149
- DateTimeAdapter.parseDateTimeFromString(pool.created_on),
150
- DateTimeAdapter.parseDateTimeFromString(pool.updated_on)
141
+ data.id,
142
+ data.event_id,
143
+ data.merchant_id,
144
+ data.name,
145
+ data.remaining_stock,
146
+ data.stock,
147
+ data.is_shared,
148
+ data.product_names ?? [],
149
+ DateTimeAdapter.parseDateTime(data.created_on),
150
+ DateTimeAdapter.parseDateTime(data.updated_on)
151
151
  );
152
152
  }
153
153
 
154
- static parseTicketTemplateFromObject(template: Record<string, any>): TicketTemplateDto {
154
+ static parseTicketTemplate(data: ForeignData): TicketTemplateDto {
155
155
  return new TicketTemplateDto(
156
- template.id,
157
- template.name,
158
- optional(template.product, ProductAdapter.parseProductFromObject),
159
- template.product_id,
160
- template.variant,
161
- optional(template.visual, FileSystemAdapter.parsePictureFromObject)
156
+ data.id,
157
+ data.name,
158
+ optional(data.product, ProductAdapter.parseProduct),
159
+ data.product_id,
160
+ data.variant,
161
+ optional(data.visual, FileSystemAdapter.parsePicture)
162
162
  );
163
163
  }
164
164
 
165
- static parseEventStatisticsAttendanceFromObject(attendance: Record<string, any>): EventStatisticsAttendanceDto {
165
+ static parseEventStatisticsAttendance(data: ForeignData): EventStatisticsAttendanceDto {
166
166
  return new EventStatisticsAttendanceDto(
167
- attendance.attended,
168
- attendance.expected,
169
- attendance.rate
167
+ data.attended,
168
+ data.expected,
169
+ data.rate
170
170
  );
171
171
  }
172
172
 
173
- static parseEventStatisticsBuyerTotalsFromObject(totals: Record<string, any>): EventStatisticsBuyerTotalsDto {
173
+ static parseEventStatisticsBuyerTotals(data: ForeignData): EventStatisticsBuyerTotalsDto {
174
174
  return new EventStatisticsBuyerTotalsDto(
175
- totals.acquired,
176
- totals.average_tickets,
177
- totals.doubting,
178
- totals.returning,
179
- totals.total
175
+ data.acquired,
176
+ data.average_tickets,
177
+ data.doubting,
178
+ data.returning,
179
+ data.total
180
180
  );
181
181
  }
182
182
 
183
- static parseEventStatisticsFinancialFromObject(financial: Record<string, any>): EventStatisticsFinancialDto {
183
+ static parseEventStatisticsFinancial(data: ForeignData): EventStatisticsFinancialDto {
184
184
  return new EventStatisticsFinancialDto(
185
- PaymentAdapter.parseCostFromObject(financial.platform_cost),
186
- PaymentAdapter.parseCostFromObject(financial.revenue)
185
+ PaymentAdapter.parseCost(data.platform_cost),
186
+ PaymentAdapter.parseCost(data.revenue)
187
187
  );
188
188
  }
189
189
 
190
- static parseEventStatisticsOrdersFromObject(totals: Record<string, any>): EventStatisticsOrdersDto {
190
+ static parseEventStatisticsOrders(data: ForeignData): EventStatisticsOrdersDto {
191
191
  return new EventStatisticsOrdersDto(
192
- totals.chart,
193
- EventAdapter.parseEventStatisticsOrderTotalsFromObject(totals.totals)
192
+ data.chart,
193
+ EventAdapter.parseEventStatisticsOrderTotals(data.totals)
194
194
  );
195
195
  }
196
196
 
197
- static parseEventStatisticsOrderTotalsFromObject(totals: Record<string, any>): EventStatisticsOrderTotalsDto {
197
+ static parseEventStatisticsOrderTotals(data: ForeignData): EventStatisticsOrderTotalsDto {
198
198
  return new EventStatisticsOrderTotalsDto(
199
- totals.fulfilled,
200
- totals.interrupted,
201
- totals.pending,
202
- totals.total
199
+ data.fulfilled,
200
+ data.interrupted,
201
+ data.pending,
202
+ data.total
203
203
  );
204
204
  }
205
205
 
206
- static parseEventStatisticsScansFromObject(scans: Record<string, any>): EventStatisticsScansDto {
206
+ static parseEventStatisticsScans(data: ForeignData): EventStatisticsScansDto {
207
207
  return new EventStatisticsScansDto(
208
- scans.app_teams.map(EventAdapter.parseEventStatisticsScansPerAppTeamFromObject),
209
- scans.chart,
210
- EventAdapter.parseEventStatisticsScanTotalsFromObject(scans.totals)
208
+ data.app_teams.map(EventAdapter.parseEventStatisticsScansPerAppTeam),
209
+ data.chart,
210
+ EventAdapter.parseEventStatisticsScanTotals(data.totals)
211
211
  );
212
212
  }
213
213
 
214
- static parseEventStatisticsScansPerAppTeamFromObject(appTeam: Record<string, any>): EventStatisticsScansPerAppTeamDto {
214
+ static parseEventStatisticsScansPerAppTeam(data: ForeignData): EventStatisticsScansPerAppTeamDto {
215
215
  return new EventStatisticsScansPerAppTeamDto(
216
- appTeam.id,
217
- appTeam.name,
218
- appTeam.scans
216
+ data.id,
217
+ data.name,
218
+ data.scans
219
219
  );
220
220
  }
221
221
 
222
- static parseEventStatisticsScanTotalsFromObject(totals: Record<string, any>): EventStatisticsScanTotalsDto {
222
+ static parseEventStatisticsScanTotals(data: ForeignData): EventStatisticsScanTotalsDto {
223
223
  return new EventStatisticsScanTotalsDto(
224
- totals.total,
225
- totals.checkins,
226
- totals.checkouts
224
+ data.total,
225
+ data.checkins,
226
+ data.checkouts
227
227
  );
228
228
  }
229
229
 
230
- static parseEventStatisticsSwapTotalsFromObject(totals: Record<string, any>): EventStatisticsSwapTotalsDto {
230
+ static parseEventStatisticsSwapTotals(data: ForeignData): EventStatisticsSwapTotalsDto {
231
231
  return new EventStatisticsSwapTotalsDto(
232
- totals.swaps,
233
- totals.tickets,
234
- totals.rate
232
+ data.swaps,
233
+ data.tickets,
234
+ data.rate
235
235
  );
236
236
  }
237
237
  }
@@ -1,13 +1,13 @@
1
- import { adapter } from '@basmilius/http-client';
1
+ import { adapter, ForeignData } from '@basmilius/http-client';
2
2
  import { PictureDto } from '#data/dto';
3
3
 
4
4
  @adapter
5
5
  export class FileSystemAdapter {
6
- static parsePictureFromObject(picture: Record<string, any>): PictureDto {
6
+ static parsePicture(data: ForeignData): PictureDto {
7
7
  return new PictureDto(
8
- picture.id,
9
- picture.url,
10
- picture.variants
8
+ data.id,
9
+ data.url,
10
+ data.variants
11
11
  );
12
12
  }
13
13
  }