@licklist/design 0.44.532 → 0.44.534

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 (121) hide show
  1. package/dist/events/edit-event-modal/utils/getDefaultProductSet.d.ts.map +1 -1
  2. package/dist/events/edit-event-modal/utils/getDefaultProductSet.js +1 -1
  3. package/dist/events/event-card/EventCard.d.ts.map +1 -1
  4. package/dist/events/event-card/EventCard.js +1 -1
  5. package/dist/events/event-card/utils.d.ts +1 -0
  6. package/dist/events/event-card/utils.d.ts.map +1 -1
  7. package/dist/events/event-card/utils.js +1 -1
  8. package/dist/iframe/event/index.d.ts +0 -1
  9. package/dist/iframe/event/index.d.ts.map +1 -1
  10. package/dist/iframe/index.d.ts +1 -1
  11. package/dist/iframe/index.d.ts.map +1 -1
  12. package/dist/iframe/order-process/components/BookingSummary/BookingSummary.d.ts +1 -1
  13. package/dist/iframe/order-process/components/BookingSummary/BookingSummary.js +1 -1
  14. package/dist/iframe/order-process/components/BookingSummary/types/index.d.ts +1 -1
  15. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts +1 -0
  16. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts.map +1 -1
  17. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.js +1 -1
  18. package/dist/index.d.ts +1 -0
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +1 -1
  21. package/dist/number-of-people-input/NumberOfPeopleInput.d.ts.map +1 -0
  22. package/dist/number-of-people-input/NumberOfPeopleInput.js +1 -0
  23. package/dist/{iframe/event/event-details/components/number-of-people-input/component → number-of-people-input/components}/RenderNumberOfPeopleInputComponent.d.ts +2 -3
  24. package/dist/number-of-people-input/components/RenderNumberOfPeopleInputComponent.d.ts.map +1 -0
  25. package/dist/number-of-people-input/components/RenderNumberOfPeopleInputComponent.js +1 -0
  26. package/dist/number-of-people-input/components/index.d.ts +2 -0
  27. package/dist/number-of-people-input/components/index.d.ts.map +1 -0
  28. package/dist/number-of-people-input/index.d.ts +3 -0
  29. package/dist/number-of-people-input/index.d.ts.map +1 -0
  30. package/dist/product-set/control/ProductSetControl.d.ts +2 -1
  31. package/dist/product-set/control/ProductSetControl.d.ts.map +1 -1
  32. package/dist/product-set/control/ProductSetControl.js +1 -1
  33. package/dist/product-set/form/ProductCategoriesControl.d.ts.map +1 -1
  34. package/dist/product-set/form/ProductCategoriesControl.js +1 -1
  35. package/dist/product-set/product-category/ProductCategoryControl.d.ts +0 -1
  36. package/dist/product-set/product-category/ProductCategoryControl.d.ts.map +1 -1
  37. package/dist/product-set/product-category/ProductCategoryControl.js +1 -1
  38. package/dist/sales/manual-booking/summary/ManualBookingSummary.d.ts +3 -1
  39. package/dist/sales/manual-booking/summary/ManualBookingSummary.d.ts.map +1 -1
  40. package/dist/sales/manual-booking/summary/ManualBookingSummary.js +1 -1
  41. package/dist/snippet/snippet-template/preview/Preview.js +1 -1
  42. package/dist/styles/events/EventCard.scss +10 -3
  43. package/dist/types/iframe.d.ts +1 -0
  44. package/dist/types/iframe.d.ts.map +1 -1
  45. package/package.json +1 -1
  46. package/src/events/edit-event-modal/component/EditEventForm/EditEventForm.stories.tsx +0 -9
  47. package/src/events/edit-event-modal/utils/getDefaultProductSet.ts +2 -1
  48. package/src/events/event-card/EventCard.tsx +6 -2
  49. package/src/events/event-card/utils.ts +2 -0
  50. package/src/iframe/event/event-venue-map/IframeEventVenueMap.stories.tsx +0 -1
  51. package/src/iframe/event/index.ts +0 -1
  52. package/src/iframe/index.ts +0 -1
  53. package/src/iframe/order-process/components/BookingSummary/BookingSummary.tsx +2 -2
  54. package/src/iframe/order-process/components/BookingSummary/types/index.ts +1 -1
  55. package/src/iframe/order-process/components/CalendarStepsForm/CalendarStepsForm.stories.tsx +0 -1
  56. package/src/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.tsx +5 -0
  57. package/src/iframe/payment/payment-page/PaymentPage.stories.tsx +1 -1
  58. package/src/index.ts +1 -0
  59. package/src/{iframe/event/event-details/components/number-of-people-input → number-of-people-input}/NumberOfPeopleInput.tsx +1 -1
  60. package/src/number-of-people-input/components/RenderNumberOfPeopleInputComponent.stories.tsx +92 -0
  61. package/src/{iframe/event/event-details/components/number-of-people-input/component → number-of-people-input/components}/RenderNumberOfPeopleInputComponent.tsx +3 -3
  62. package/src/number-of-people-input/components/index.ts +1 -0
  63. package/src/number-of-people-input/index.ts +2 -0
  64. package/src/product-set/control/ProductSetControl.tsx +36 -0
  65. package/src/product-set/form/ProductCategoriesControl.tsx +0 -1
  66. package/src/product-set/form/ProductSetForm.stories.tsx +2 -6
  67. package/src/product-set/product-category/ProductCategory.stories.tsx +0 -1
  68. package/src/product-set/product-category/ProductCategoryControl.tsx +0 -23
  69. package/src/sales/booking/results/BookingResults.stories.tsx +0 -7
  70. package/src/sales/guest-profile/previous-bookings/PreviousBookings.stories.tsx +0 -7
  71. package/src/sales/manual-booking/summary/ManualBookingSummary.tsx +20 -5
  72. package/src/styles/events/EventCard.scss +10 -3
  73. package/src/types/iframe.ts +1 -0
  74. package/dist/iframe/event/event-details/EventDetails.d.ts +0 -10
  75. package/dist/iframe/event/event-details/EventDetails.d.ts.map +0 -1
  76. package/dist/iframe/event/event-details/EventDetails.js +0 -1
  77. package/dist/iframe/event/event-details/components/category-product/CategoryProduct.d.ts +0 -9
  78. package/dist/iframe/event/event-details/components/category-product/CategoryProduct.d.ts.map +0 -1
  79. package/dist/iframe/event/event-details/components/category-product/CategoryProduct.js +0 -1
  80. package/dist/iframe/event/event-details/components/category-product/index.d.ts +0 -2
  81. package/dist/iframe/event/event-details/components/category-product/index.d.ts.map +0 -1
  82. package/dist/iframe/event/event-details/components/event-details-form/EventDetailsForm.d.ts +0 -26
  83. package/dist/iframe/event/event-details/components/event-details-form/EventDetailsForm.d.ts.map +0 -1
  84. package/dist/iframe/event/event-details/components/event-details-form/EventDetailsForm.js +0 -1
  85. package/dist/iframe/event/event-details/components/event-details-form/index.d.ts +0 -2
  86. package/dist/iframe/event/event-details/components/event-details-form/index.d.ts.map +0 -1
  87. package/dist/iframe/event/event-details/components/number-of-people-input/NumberOfPeopleInput.d.ts.map +0 -1
  88. package/dist/iframe/event/event-details/components/number-of-people-input/NumberOfPeopleInput.js +0 -1
  89. package/dist/iframe/event/event-details/components/number-of-people-input/component/RenderNumberOfPeopleInputComponent.d.ts.map +0 -1
  90. package/dist/iframe/event/event-details/components/number-of-people-input/component/RenderNumberOfPeopleInputComponent.js +0 -1
  91. package/dist/iframe/event/event-details/components/number-of-people-input/component/index.d.ts +0 -2
  92. package/dist/iframe/event/event-details/components/number-of-people-input/component/index.d.ts.map +0 -1
  93. package/dist/iframe/event/event-details/components/number-of-people-input/index.d.ts +0 -2
  94. package/dist/iframe/event/event-details/components/number-of-people-input/index.d.ts.map +0 -1
  95. package/dist/iframe/event/event-details/components/product-category-view/ProductCategoryView.d.ts +0 -8
  96. package/dist/iframe/event/event-details/components/product-category-view/ProductCategoryView.d.ts.map +0 -1
  97. package/dist/iframe/event/event-details/components/product-category-view/ProductCategoryView.js +0 -1
  98. package/dist/iframe/event/event-details/components/product-category-view/index.d.ts +0 -2
  99. package/dist/iframe/event/event-details/components/product-category-view/index.d.ts.map +0 -1
  100. package/dist/iframe/event/event-details/index.d.ts +0 -2
  101. package/dist/iframe/event/event-details/index.d.ts.map +0 -1
  102. package/dist/iframe/event/event-details/utils/index.d.ts +0 -2
  103. package/dist/iframe/event/event-details/utils/index.d.ts.map +0 -1
  104. package/dist/iframe/event/event-details/utils/routes.d.ts +0 -2
  105. package/dist/iframe/event/event-details/utils/routes.d.ts.map +0 -1
  106. package/dist/iframe/event/event-details/utils/routes.js +0 -1
  107. package/src/iframe/event/event-details/EventDetails.stories.tsx +0 -187
  108. package/src/iframe/event/event-details/EventDetails.tsx +0 -92
  109. package/src/iframe/event/event-details/EventDetailsOneStepForm.stories.tsx +0 -123
  110. package/src/iframe/event/event-details/components/category-product/CategoryProduct.tsx +0 -109
  111. package/src/iframe/event/event-details/components/category-product/index.ts +0 -1
  112. package/src/iframe/event/event-details/components/event-details-form/EventDetailsForm.tsx +0 -250
  113. package/src/iframe/event/event-details/components/event-details-form/index.ts +0 -5
  114. package/src/iframe/event/event-details/components/number-of-people-input/component/index.ts +0 -1
  115. package/src/iframe/event/event-details/components/number-of-people-input/index.ts +0 -1
  116. package/src/iframe/event/event-details/components/product-category-view/ProductCategoryView.tsx +0 -34
  117. package/src/iframe/event/event-details/components/product-category-view/index.ts +0 -1
  118. package/src/iframe/event/event-details/index.ts +0 -1
  119. package/src/iframe/event/event-details/utils/index.ts +0 -1
  120. package/src/iframe/event/event-details/utils/routes.ts +0 -6
  121. /package/dist/{iframe/event/event-details/components/number-of-people-input → number-of-people-input}/NumberOfPeopleInput.d.ts +0 -0
@@ -11,6 +11,7 @@ import {
11
11
  import {
12
12
  OPERATIONAL_COST_CUSTOMER,
13
13
  OPERATIONAL_COST_PROVIDER,
14
+ RELY_ON_PEOPLE_PRODUCT_QUANTITY,
14
15
  } from "@licklist/core/dist/DataMapper/Product/ProductSetDataMapper";
15
16
  import { FieldSet } from "@licklist/core/dist/DataMapper/Order/FieldSetDataMapper";
16
17
  import { ProductSetForm, ProductSetFormProps } from "./ProductSetForm";
@@ -104,6 +105,7 @@ Default.args = {
104
105
  termsAndConditions: "",
105
106
  isDefault: true,
106
107
  operationalCost: OPERATIONAL_COST_CUSTOMER,
108
+ relyOnPeopleType: RELY_ON_PEOPLE_PRODUCT_QUANTITY,
107
109
  steps: [
108
110
  {
109
111
  id: 1,
@@ -115,7 +117,6 @@ Default.args = {
115
117
  minSubItems: 1,
116
118
  maxSubItems: 10,
117
119
  quantityType: "constant",
118
- isRelyOnPeople: false,
119
120
  isTimeRelated: false,
120
121
  hasTicket: false,
121
122
  allowDeposits: false,
@@ -184,7 +185,6 @@ Default.args = {
184
185
  minSubItems: 0,
185
186
  maxSubItems: 0,
186
187
  quantityType: "recharging",
187
- isRelyOnPeople: false,
188
188
  isTimeRelated: false,
189
189
  hasTicket: false,
190
190
  allowDeposits: false,
@@ -203,7 +203,6 @@ Default.args = {
203
203
  minSubItems: 0,
204
204
  maxSubItems: 0,
205
205
  quantityType: "recharging",
206
- isRelyOnPeople: false,
207
206
  isTimeRelated: false,
208
207
  hasTicket: false,
209
208
  allowDeposits: false,
@@ -289,7 +288,6 @@ Default.args = {
289
288
  minSubItems: 0,
290
289
  maxSubItems: null,
291
290
  quantityType: "recharging",
292
- isRelyOnPeople: false,
293
291
  isTimeRelated: false,
294
292
  hasTicket: false,
295
293
  allowDeposits: false,
@@ -898,7 +896,6 @@ Valid.args = {
898
896
  minSubItems: 0,
899
897
  maxSubItems: 0,
900
898
  quantityType: "recharging",
901
- isRelyOnPeople: false,
902
899
  isTimeRelated: false,
903
900
  hasTicket: false,
904
901
  allowDeposits: false,
@@ -1113,7 +1110,6 @@ Valid.args = {
1113
1110
  minSubItems: 0,
1114
1111
  maxSubItems: 0,
1115
1112
  quantityType: "recharging",
1116
- isRelyOnPeople: false,
1117
1113
  isTimeRelated: false,
1118
1114
  hasTicket: false,
1119
1115
  allowDeposits: false,
@@ -26,7 +26,6 @@ const categoryMock: Partial<ProductCategoryControlValues> = {
26
26
  minSubItems: 0,
27
27
  maxSubItems: 0,
28
28
  quantityType: QUANTITY_TYPE_STANDARD,
29
- isRelyOnPeople: false,
30
29
  isTimeRelated: false,
31
30
  hasTicket: false,
32
31
  allowDeposits: false,
@@ -28,7 +28,6 @@ export interface ProductCategoryControlValues extends FormValues {
28
28
  maxSubItems: number | null;
29
29
  quantityType: QuantityType;
30
30
  type: CategoryType;
31
- isRelyOnPeople: boolean;
32
31
  isTimeRelated: boolean;
33
32
  collectUserInfo: boolean;
34
33
  hasTicket: boolean;
@@ -97,7 +96,6 @@ export function ProductCategoryControl({
97
96
  const minSubItemsId = useId();
98
97
  const maxSubItemsId = useId();
99
98
  const quantityType = useId();
100
- const isRelyOnPeopleId = useId();
101
99
  const isTimeRelatedId = useId();
102
100
  const collectUserInfoId = useId();
103
101
  const hasTicketId = useId();
@@ -464,27 +462,6 @@ export function ProductCategoryControl({
464
462
  </Form.Group>
465
463
  )}
466
464
 
467
- <Form.Group
468
- controlId={isRelyOnPeopleId}
469
- className="advanced-switch-container"
470
- >
471
- <Form.Label>{t("isRelyOnPeople")}</Form.Label>
472
-
473
- <div>
474
- <Controller
475
- render={({ field: { name, value, onChange } }) => (
476
- <BooleanSwitch
477
- name={name}
478
- value={Boolean(value)}
479
- onChange={onChange}
480
- disabled={isLoading || category.hasTicket}
481
- />
482
- )}
483
- control={control}
484
- name={`${fieldNamePrefix}.isRelyOnPeople` as const}
485
- />
486
- </div>
487
- </Form.Group>
488
465
  {!category.hasTicket && (
489
466
  <Form.Group
490
467
  controlId={isTimeRelatedId}
@@ -42,7 +42,6 @@ Default.args = {
42
42
  createdAt: "2022-05-20 18:28:56",
43
43
  updatedAt: "2022-05-20 18:28:56",
44
44
  status: "cart",
45
- tickets: [],
46
45
  event: {
47
46
  id: 1,
48
47
  name: "testEvent1",
@@ -82,7 +81,6 @@ Default.args = {
82
81
  createdAt: "2022-05-20 18:28:56",
83
82
  updatedAt: "2022-05-20 18:28:56",
84
83
  status: "cart",
85
- tickets: [],
86
84
  event: {
87
85
  id: 2,
88
86
  name: "testEvent2",
@@ -135,7 +133,6 @@ Default.args = {
135
133
  createdAt: "2022-05-20 18:28:56",
136
134
  updatedAt: "2022-05-20 18:28:56",
137
135
  status: "cart",
138
- tickets: [],
139
136
  event: {
140
137
  id: 3,
141
138
  name: "testEvent3",
@@ -166,7 +163,6 @@ Default.args = {
166
163
  createdAt: "2022-05-20 18:28:56",
167
164
  updatedAt: "2022-05-20 18:28:56",
168
165
  status: "cart",
169
- tickets: [],
170
166
  event: {
171
167
  id: 3,
172
168
  name: "testEvent3",
@@ -198,7 +194,6 @@ Default.args = {
198
194
  createdAt: "2022-05-20 18:28:56",
199
195
  updatedAt: "2022-05-20 18:28:56",
200
196
  status: "cart",
201
- tickets: [],
202
197
  event: {
203
198
  id: 3,
204
199
  name: "testEvent3",
@@ -226,7 +221,6 @@ Default.args = {
226
221
  createdAt: "2022-05-20 18:28:56",
227
222
  updatedAt: "2022-05-20 18:28:56",
228
223
  status: "cart",
229
- tickets: [],
230
224
  event: {
231
225
  id: 3,
232
226
  name: "testEvent3",
@@ -253,7 +247,6 @@ Default.args = {
253
247
  createdAt: "2022-05-20 18:28:56",
254
248
  updatedAt: "2022-05-20 18:28:56",
255
249
  status: "cart",
256
- tickets: [],
257
250
  event: {
258
251
  id: 3,
259
252
  name: "testEvent3",
@@ -58,7 +58,6 @@ Default.args = {
58
58
  createdAt: "2022-05-20 18:28:56",
59
59
  updatedAt: "2022-05-20 18:28:56",
60
60
  status: "cart",
61
- tickets: [],
62
61
  orderableType: "event",
63
62
  orderableId: 1,
64
63
  event: {
@@ -96,7 +95,6 @@ Default.args = {
96
95
  createdAt: "2022-05-20 18:28:56",
97
96
  updatedAt: "2022-05-20 18:28:56",
98
97
  status: "cart",
99
- tickets: [],
100
98
  orderableType: "event",
101
99
  orderableId: 2,
102
100
  event: {
@@ -147,7 +145,6 @@ Default.args = {
147
145
  createdAt: "2022-05-20 18:28:56",
148
146
  updatedAt: "2022-05-20 18:28:56",
149
147
  status: "cart",
150
- tickets: [],
151
148
  orderableType: "event",
152
149
  orderableId: 3,
153
150
  event: {
@@ -177,7 +174,6 @@ Default.args = {
177
174
  createdAt: "2022-05-20 18:28:56",
178
175
  updatedAt: "2022-05-20 18:28:56",
179
176
  status: "cart",
180
- tickets: [],
181
177
  orderableType: "event",
182
178
  orderableId: 3,
183
179
  event: {
@@ -207,7 +203,6 @@ Default.args = {
207
203
  createdAt: "2022-05-20 18:28:56",
208
204
  updatedAt: "2022-05-20 18:28:56",
209
205
  status: "cart",
210
- tickets: [],
211
206
  orderableType: "event",
212
207
  orderableId: 3,
213
208
  event: {
@@ -237,7 +232,6 @@ Default.args = {
237
232
  createdAt: "2022-05-20 18:28:56",
238
233
  updatedAt: "2022-05-20 18:28:56",
239
234
  status: "cart",
240
- tickets: [],
241
235
  orderableType: "event",
242
236
  orderableId: 3,
243
237
  event: {
@@ -266,7 +260,6 @@ Default.args = {
266
260
  createdAt: "2022-05-20 18:28:56",
267
261
  updatedAt: "2022-05-20 18:28:56",
268
262
  status: "cart",
269
- tickets: [],
270
263
  orderableType: "event",
271
264
  orderableId: 3,
272
265
  event: {
@@ -8,6 +8,11 @@ import {
8
8
  } from "@licklist/core/dist/Config";
9
9
  import { useIntl } from "react-intl";
10
10
  import * as Config from "@licklist/core/dist/Config";
11
+ import {
12
+ RELY_ON_PEOPLE_QUANTITY,
13
+ RelyOnPeopleType,
14
+ } from "@licklist/core/dist/DataMapper/Product/ProductSetDataMapper";
15
+ import { getRelyOnPeopleMultiplier } from "@licklist/plugins/dist/utils/relyOnPeople";
11
16
  import { BlockLoader } from "../../../static/loader";
12
17
 
13
18
  export interface ManualBookingSummaryProps {
@@ -17,6 +22,7 @@ export interface ManualBookingSummaryProps {
17
22
  orderSumIncludingFee?: number | null;
18
23
  isFeeFetching: boolean;
19
24
  orderDate: string;
25
+ relyOnPeopleType?: RelyOnPeopleType | null;
20
26
  }
21
27
 
22
28
  export const ManualBookingSummary = ({
@@ -26,14 +32,15 @@ export const ManualBookingSummary = ({
26
32
  orderSumIncludingFee,
27
33
  isFeeFetching,
28
34
  orderDate,
35
+ relyOnPeopleType,
29
36
  }: ManualBookingSummaryProps) => {
30
37
  const { t } = useTranslation(["Design", "Sale"]);
31
38
  const { formatNumber } = useIntl();
32
-
39
+ const showRelyOnPeople =
40
+ relyOnPeopleType && relyOnPeopleType !== RELY_ON_PEOPLE_QUANTITY;
33
41
  const currentDate = DateTime.fromISO(orderDate);
34
42
  const date = currentDate.toFormat(DATE_TIME_MANUAL_BOOKING_FORMAT);
35
43
  const time = currentDate.toFormat(TIME_FORMAT);
36
-
37
44
  return (
38
45
  <div className="manual-booking-summary">
39
46
  <div className="receipt-title">{t("Sale:receipt")}</div>
@@ -43,15 +50,23 @@ export const ManualBookingSummary = ({
43
50
  {orders.length > 0 ? (
44
51
  <div className="summary-item-container">
45
52
  {orders.map((order: ManualBookingOrder) => {
53
+ const relyOnPeopleMultiplier = getRelyOnPeopleMultiplier({
54
+ relyOnPeopleType,
55
+ capacity: order?.capacity,
56
+ });
46
57
  return (
47
58
  <div
48
59
  key={order.id}
49
60
  className="d-flex justify-content-between border-summary-item"
50
61
  >
51
62
  <div>{order.name}</div>
52
- <div>
53
- {order.isRelyOnPeople ? `x ${order.quantity} People` : ""}
54
- </div>
63
+ {showRelyOnPeople && relyOnPeopleMultiplier && (
64
+ <div>
65
+ {`x ${order.quantity * relyOnPeopleMultiplier} ${t(
66
+ "people"
67
+ )}`}
68
+ </div>
69
+ )}
55
70
  <div>
56
71
  {formatNumber(order.quantity * order.price, {
57
72
  style: "currency",
@@ -34,7 +34,7 @@ $event-card-views-gutter: sp(3) !default;
34
34
  transition: ease-in 0.25s;
35
35
  border-radius: $event-card-border-radius;
36
36
 
37
- > * + * {
37
+ >*+* {
38
38
  margin-top: $event-card-contents-gutter;
39
39
  }
40
40
 
@@ -43,9 +43,16 @@ $event-card-views-gutter: sp(3) !default;
43
43
 
44
44
  .event-description {
45
45
  min-height: 8rem;
46
+ max-height: 21rem;
47
+ overflow: hidden;
48
+
49
+ &:last-child {
50
+ text-overflow: ellipsis;
51
+ }
46
52
 
47
53
  &.no-image {
48
54
  min-height: 13.75rem;
55
+ max-height: 22rem;
49
56
  }
50
57
  }
51
58
  }
@@ -75,7 +82,7 @@ $event-card-views-gutter: sp(3) !default;
75
82
  }
76
83
 
77
84
  &:hover {
78
- box-shadow: 0px 0px 1rem 0px rgb(0 0 0 / 20%);
85
+ box-shadow: 0px 0px 1rem 0px rgb(0 0 0 / 20%);
79
86
  }
80
87
  }
81
88
 
@@ -168,4 +175,4 @@ $event-card-views-gutter: sp(3) !default;
168
175
  color: #504f4f;
169
176
  width: 1.7rem;
170
177
  }
171
- }
178
+ }
@@ -15,6 +15,7 @@ export interface Product {
15
15
  isRequired?: boolean;
16
16
  isUnlimited?: boolean;
17
17
  images: CoreProduct["images"];
18
+ capacity?: number | null;
18
19
  uuid: string;
19
20
  }
20
21
 
@@ -1,10 +0,0 @@
1
- /// <reference types="react" />
2
- import { EventDetailsFormProps } from "./components/event-details-form";
3
- import { WizardFormValues } from "../../../types";
4
- type EventDetailsProps = EventDetailsFormProps & {
5
- onSubmit: (values: WizardFormValues) => void;
6
- defaultValues?: WizardFormValues;
7
- };
8
- export declare function EventDetails({ onSubmit, menus, defaultValues, ...restProps }: EventDetailsProps): JSX.Element;
9
- export {};
10
- //# sourceMappingURL=EventDetails.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EventDetails.d.ts","sourceRoot":"","sources":["../../../../src/iframe/event/event-details/EventDetails.tsx"],"names":[],"mappings":";AAEA,OAAO,EAEL,qBAAqB,EACtB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGlD,KAAK,iBAAiB,GAAG,qBAAqB,GAAG;IAC/C,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC7C,aAAa,CAAC,EAAE,gBAAgB,CAAC;CAClC,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,KAAK,EACL,aAAkB,EAClB,GAAG,SAAS,EACb,EAAE,iBAAiB,eAwEnB"}
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),n=require("react"),u=(e=n)&&"object"==typeof e&&"default"in e?e.default:e,r=require("react-router-dom"),i=require("./components/event-details-form/EventDetailsForm.js"),s=require("./utils/routes.js");exports.EventDetails=function(e){var o,a=e.onSubmit,l=e.menus,m=e.defaultValues,c=void 0===m?{}:m,d=t.__rest(e,["onSubmit","menus","defaultValues"]),f=t.__read(n.useState(c),2),v=f[0],_=f[1],p=l&&0!==(null==l?void 0:l.length)?l[0]:null,b=(null===(o=null==p?void 0:p.menuSteps)||void 0===o?void 0:o.length)||0,E=n.useMemo((function(){return s.routesByStepsCount(b)}),[b]),S=function(e){var n=e.values,u=e.pathname,r=e.isBackAction,i=void 0!==r&&r,s=t.__assign(t.__assign({},v),n);if(_(s),!u||E[E.length-1]===u&&!i)return function(e){a&&a(e)}(s)};return E.length?u.createElement(r.MemoryRouter,{initialEntries:E,initialIndex:0},E.map((function(e){return u.createElement(r.Route,{path:e,exact:!0,key:e,render:function(){return u.createElement(i.EventDetailsForm,t.__assign({},d,{menu:p,onFormSubmit:S,routes:E,numberOfSteps:b,defaultValues:v}))}})}))):u.createElement(i.EventDetailsForm,t.__assign({},d,{menu:p,onFormSubmit:S,routes:E,numberOfSteps:b,defaultValues:v}))};
@@ -1,9 +0,0 @@
1
- /// <reference types="react" />
2
- import { ProductCategory, Product } from "../../../../../types";
3
- interface CategoryProductProps {
4
- product: Product;
5
- category: ProductCategory;
6
- }
7
- export declare const CategoryProduct: ({ product, category, }: CategoryProductProps) => JSX.Element;
8
- export {};
9
- //# sourceMappingURL=CategoryProduct.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CategoryProduct.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/event/event-details/components/category-product/CategoryProduct.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEhE,UAAU,oBAAoB;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED,eAAO,MAAM,eAAe,2BAGzB,oBAAoB,gBA2FtB,CAAC"}
@@ -1 +0,0 @@
1
- "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=e(require("react")),r=require("react-i18next"),i=require("react-hook-form"),n=e(require("clsx")),a=require("../../../../../static/number-input/NumberInput.js");require("../../../../../static/index.js");var c=require("react-intl"),o=require("../../../ticket-description/TicketDescription.js");exports.CategoryProduct=function(e){var u=e.product,l=e.category,d=c.useIntl().formatNumber,s=r.useTranslation("Design").t,m=i.useFormContext(),p=m.control,v=m.clearErrors;return t.createElement(i.Controller,{control:p,name:"".concat(u.id),rules:{required:u.isRequired,validate:u.isRequired?function(e){return(null==e?void 0:e.quantity)>0}:void 0},render:function(e){var i=e.field,c=i.onChange,m=i.value,p=void 0===m?{}:m,f=e.fieldState.invalid;return t.createElement("div",{id:String(u.id)},t.createElement("div",{className:n("iframe-event__product",f&&"error")},t.createElement(o.TicketDescription,{title:u.name,description:u.description,className:"iframe-event__product-description",images:u.images}),t.createElement(a.NumberInput,{onChange:function(e){c({id:u.id,quantity:e,name:u.name,price:u.price,productsCategoryId:l.id}),v("".concat(u.id))},onArrowDown:function(){c({id:u.id,quantity:(null==p?void 0:p.quantity)-1||0,name:u.name,price:u.price,productsCategoryId:l.id}),v("".concat(u.id))},onArrowUp:function(){var e;c({id:u.id,quantity:(null!==(e=null==p?void 0:p.quantity)&&void 0!==e?e:0)+1,name:u.name,price:u.price,productsCategoryId:l.id}),v("".concat(u.id))},min:0,value:(null==p?void 0:p.quantity)||0,className:n("iframe-event__product-count",f&&"error")}),t.createElement("span",{className:"iframe-event__product-price-multiplier"},"X"),t.createElement("span",{className:"iframe-event__product-price"},d(u.price*((null==p?void 0:p.quantity)||1),{style:"currency",currency:"GBP"}))),f&&t.createElement("div",{className:"d-flex mt-3 ml-5 mr-5 w-100"},t.createElement("p",{className:"iframe-event__message-error"},t.createElement(r.Trans,{t:s,i18nKey:"pleaseSelectAtLeastFrom",values:{min:1,type:"item",from:"this category"}}))))}})};
@@ -1,2 +0,0 @@
1
- export { CategoryProduct } from "./CategoryProduct";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/event/event-details/components/category-product/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,26 +0,0 @@
1
- /// <reference types="react" />
2
- import { Menu, WizardFormValues } from "../../../../../types";
3
- export interface WizardFormProps {
4
- onFormSubmit: (props: {
5
- values: WizardFormValues;
6
- pathname?: string;
7
- isBackAction?: boolean;
8
- }) => void;
9
- routes?: string[];
10
- menu: Menu;
11
- numberOfSteps: number;
12
- defaultValues: WizardFormValues;
13
- }
14
- export interface EventDetailsFormProps {
15
- title: string;
16
- date: string;
17
- cost?: number;
18
- description: string;
19
- imageSrc?: null | string;
20
- menus?: Menu[];
21
- isBuyNowDisabled?: boolean;
22
- relyOnPeopleCategoryIds?: number[];
23
- onPrevStep?: () => void;
24
- }
25
- export declare function EventDetailsForm({ title, cost, description, imageSrc, date, menu, isBuyNowDisabled, onFormSubmit, routes, numberOfSteps, defaultValues, relyOnPeopleCategoryIds, onPrevStep, }: EventDetailsFormProps & WizardFormProps): JSX.Element;
26
- //# sourceMappingURL=EventDetailsForm.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EventDetailsForm.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/event/event-details/components/event-details-form/EventDetailsForm.tsx"],"names":[],"mappings":";AA2BA,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAM9D,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,CAAC,KAAK,EAAE;QACpB,MAAM,EAAE,gBAAgB,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,KAAK,IAAI,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,gBAAgB,CAAC;CACjC;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,gBAAgB,EAChB,YAAY,EACZ,MAAW,EACX,aAAa,EACb,aAAa,EACb,uBAA4B,EAC5B,UAAU,GACX,EAAE,qBAAqB,GAAG,eAAe,eAkLzC"}
@@ -1 +0,0 @@
1
- "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("tslib"),r=require("react"),a=e(r),n=require("react-router-dom"),i=require("react-i18next"),o=require("react-bootstrap"),s=require("react-hook-form"),l=e(require("clsx")),c=require("../../../../../static/text-expand/TextExpand.js");require("../../../../../static/index.js");var u=require("react-intl"),m=require("../../../../../tiptap-editor/TipTapEditor.js"),d=require("@licklist/plugins/dist/utils/ScrollUtils"),p=require("@licklist/plugins/dist/utils/FormValues"),f=require("../../../event-navigation-footer/EventNavigationFooter.js"),v=require("../product-category-view/ProductCategoryView.js"),E=require("../number-of-people-input/NumberOfPeopleInput.js"),g="NO_ORDER_ITEMS_ERROR";exports.EventDetailsForm=function(e){var _,y=this,h=e.title,N=e.cost,b=e.description,x=e.imageSrc,q=e.date,S=e.menu,T=e.isBuyNowDisabled,w=e.onFormSubmit,F=e.routes,j=void 0===F?[]:F,P=e.numberOfSteps,O=e.defaultValues,k=e.relyOnPeopleCategoryIds,B=void 0===k?[]:k,C=e.onPrevStep,I=n.useHistory(),V=n.useLocation().pathname,R=u.useIntl().formatNumber,D=i.useTranslation("Design").t,M=s.useForm({defaultValues:O}),A=r.useRef(null),K=M.trigger,L=M.handleSubmit,G=M.getValues,H=M.control,U=M.setError,W=M.clearErrors,z=M.formState.errors,J=s.useWatch({control:H}),Q=t.__read(r.useState(!1),2),X=Q[0],Y=Q[1],Z=j.indexOf(V),$=Z>0?Z:0,ee=$+1,te=function(e){if(ee===P&&p.isFormValuesEmpty(e))return U(g,{}),void d.scrollToError(g);w({values:e,pathname:V,isBackAction:!1})},re=r.useMemo((function(){var e=Object.values(J).filter(Boolean).filter((function(e){return B.includes(e.productsCategoryId)&&e.quantity>0}));return Boolean(e.length)}),[J,B]);r.useEffect((function(){d.scrollToElement(A.current)}),[]),r.useEffect((function(){p.isFormValuesEmpty(J)||W(g)}),[J,W]);var ae={"--description-wrapper-height":X?"inherit":"8rem"};return a.createElement(o.Form,{onSubmit:L(te,(function(e){d.scrollToError(p.getFirstErrorKey(e))}))},a.createElement(s.FormProvider,t.__assign({},M),a.createElement("div",{className:"iframe-event"},a.createElement("div",{className:"iframe-event__header",ref:A},x&&a.createElement(o.Image,{src:x,width:"300rem",height:"250rem"}),a.createElement("div",{className:l(x&&"ml-5")},a.createElement(o.Badge,{variant:"dark",className:"iframe-event__badge"},q),a.createElement("h5",{className:"mt-3 iframe-event__title"},h),a.createElement("div",{className:"d-flex flex-wrap justify-content-between"},void 0!==N&&a.createElement("div",null,a.createElement("div",{className:"iframe-event-card__label"},D("cost")),a.createElement("div",{className:"iframe-event-card__bold"},D("from")," ",R(N,{style:"currency",currency:"GBP"})))))),!!b&&a.createElement("div",{className:"iframe-event__description-wrapper",style:ae},b.length>120?a.createElement(c.TextExpand,{className:"iframe-event__description my-6",isExpanded:X,setIsExpanded:Y},a.createElement(m.TipTapEditor,{viewMode:!0,disabled:!0,content:b})):a.createElement("div",{className:"my-6"},a.createElement(m.TipTapEditor,{viewMode:!0,disabled:!0,content:b}))),!!S&&a.createElement(a.Fragment,null,S.menuSteps[$].name&&a.createElement("h3",{className:"iframe-event__name"},S.menuSteps[$].name),a.createElement(v.ProductCategoryView,{productCategories:null===(_=S.menuSteps[$])||void 0===_?void 0:_.productCategories}),re&&ee===P&&a.createElement(E.NumberOfPeopleInput,null),z[g]&&a.createElement("div",{className:"d-flex m-5 justify-content-center form-error",id:g},a.createElement(i.Trans,{t:D,i18nKey:"pleaseSelectAtLeastFrom",values:{min:1,type:"item",from:"those categories"}})),a.createElement("div",{className:"iframe-event__footer"},a.createElement(f.EventNavigationFooter,{isBuyNowDisabled:T,amount:P,activeElement:ee,onPrevClick:function(){w({values:G(),pathname:V,isBackAction:!0}),j.length&&I.push(j[Z-1])},onNextClick:function(){return t.__awaiter(y,void 0,void 0,(function(){return t.__generator(this,(function(e){switch(e.label){case 0:return[4,K()];case 1:return e.sent()?(te(G()),j.length&&I.push(j[Z+1]),[2]):(d.scrollToError(p.getFirstErrorKey(z)),[2])}}))}))},onPrevStep:C}))))))};
@@ -1,2 +0,0 @@
1
- export { EventDetailsForm, EventDetailsFormProps, WizardFormProps, } from "./EventDetailsForm";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/event/event-details/components/event-details-form/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,GAChB,MAAM,oBAAoB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"NumberOfPeopleInput.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/event/event-details/components/number-of-people-input/NumberOfPeopleInput.tsx"],"names":[],"mappings":";AAMA,eAAO,MAAM,mBAAmB,mBA8B/B,CAAC"}
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,r=require("react"),n=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,o=require("react-hook-form"),t=require("./component/RenderNumberOfPeopleInputComponent.js"),u="numberOfPeople";exports.NumberOfPeopleInput=function(){var e=o.useFormContext(),l=e.control,a=e.clearErrors;return r.useEffect((function(){return function(){a(u)}}),[a]),n.createElement(o.Controller,{control:l,name:u,rules:{required:!0,validate:function(e){return e>0}},render:function(e){var r=e.field,o=r.onChange,u=r.value,l=void 0===u?0:u,a=e.fieldState.invalid;return n.createElement(t.RenderNumberOfPeopleInputComponent,{onChangePeopleAmount:o,peopleAmount:l,peopleAmountError:a})}})};
@@ -1 +0,0 @@
1
- {"version":3,"file":"RenderNumberOfPeopleInputComponent.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/event/event-details/components/number-of-people-input/component/RenderNumberOfPeopleInputComponent.tsx"],"names":[],"mappings":";AAOA,UAAU,uCAAuC;IAC/C,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,eAAO,MAAM,kCAAkC,+DAI5C,uCAAuC,gBAoCzC,CAAC"}
@@ -1 +0,0 @@
1
- "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var r=e(require("react")),t=require("react-i18next"),n=e(require("clsx")),a=require("../../../../../order-process/components/CategoryProduct/components/NumberInput/NumberInput.js");exports.RenderNumberOfPeopleInputComponent=function(e){var o=e.onChangePeopleAmount,u=e.peopleAmount,m=e.peopleAmountError,l=t.useTranslation("Design").t;return r.createElement("div",{id:"numberOfPeople",className:"people-input"},r.createElement("div",{className:"d-flex align-items-center input-wrapper"},r.createElement("h3",{className:"iframe-event__name"},l("people")),r.createElement(a.NumberInput,{onChange:o,onArrowDown:function(){return o(Number(u)-1)},onArrowUp:function(){return o(Number(u)+1)},min:0,value:Number(u),className:n("iframe-event__product-count")})),r.createElement("div",{className:"iframe-event__message-error"},m&&r.createElement("div",{className:"mt-3"},r.createElement("p",null,r.createElement(t.Trans,{t:l,i18nKey:"pleaseSelectAtLeastFrom",values:{min:1,type:"item",from:"this category"}})))))};
@@ -1,2 +0,0 @@
1
- export { RenderNumberOfPeopleInputComponent } from "./RenderNumberOfPeopleInputComponent";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/event/event-details/components/number-of-people-input/component/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC"}
@@ -1,2 +0,0 @@
1
- export { NumberOfPeopleInput } from "./NumberOfPeopleInput";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/event/event-details/components/number-of-people-input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,8 +0,0 @@
1
- /// <reference types="react" />
2
- import { ProductCategory } from "../../../../../types";
3
- interface ProductCategoryViewProps {
4
- productCategories: ProductCategory[];
5
- }
6
- export declare function ProductCategoryView({ productCategories, }: ProductCategoryViewProps): JSX.Element;
7
- export {};
8
- //# sourceMappingURL=ProductCategoryView.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProductCategoryView.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/event/event-details/components/product-category-view/ProductCategoryView.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,UAAU,wBAAwB;IAChC,iBAAiB,EAAE,eAAe,EAAE,CAAC;CACtC;AAED,wBAAgB,mBAAmB,CAAC,EAClC,iBAAiB,GAClB,EAAE,wBAAwB,eAsB1B"}
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("react"),r=(e=t)&&"object"==typeof e&&"default"in e?e.default:e,a=require("../category-product/CategoryProduct.js");exports.ProductCategoryView=function(e){var t=e.productCategories;return r.createElement(r.Fragment,null,0!==t.length&&t.map((function(e){return r.createElement("div",{key:e.id,className:"iframe-event__category"},r.createElement("h4",{className:"iframe-event__name"},e.name),e.products.map((function(t){return r.createElement(a.CategoryProduct,{key:t.id,product:t,category:e})})))})))};
@@ -1,2 +0,0 @@
1
- export { ProductCategoryView } from "./ProductCategoryView";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/event/event-details/components/product-category-view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,2 +0,0 @@
1
- export { EventDetails } from "./EventDetails";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/iframe/event/event-details/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from "./routes";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/event/event-details/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare const routesByStepsCount: (count: number) => string[];
2
- //# sourceMappingURL=routes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/event/event-details/utils/routes.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,UAAW,MAAM,aAG7C,CAAC"}
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.routesByStepsCount=function(t){return Array.from({length:t},(function(t,e){return e})).map((function(t){return"/".concat("step_").concat(t)}))};