@licklist/design 0.44.551-dev.7 → 0.44.551

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 (126) hide show
  1. package/dist/calendar/components/CalendarDates/CalendarDates.d.ts.map +1 -1
  2. package/dist/calendar/components/CalendarDates/CalendarDates.js +1 -1
  3. package/dist/date-time-button/DateContent.d.ts +2 -2
  4. package/dist/date-time-button/DateContent.d.ts.map +1 -1
  5. package/dist/date-time-button/DateContent.js +1 -1
  6. package/dist/date-time-button/DateTimeButton.d.ts +6 -10
  7. package/dist/date-time-button/DateTimeButton.d.ts.map +1 -1
  8. package/dist/date-time-button/DateTimeButton.js +1 -1
  9. package/dist/events/event-venue-map/components/MapPoint/MapPoint.d.ts +1 -1
  10. package/dist/events/event-venue-map/components/MapPoint/MapPoint.d.ts.map +1 -1
  11. package/dist/iframe/event/event-booking-products/EventBookingProducts.d.ts +2 -4
  12. package/dist/iframe/event/event-booking-products/EventBookingProducts.d.ts.map +1 -1
  13. package/dist/iframe/event/event-booking-products/components/AccordionItem/AccordionItem.d.ts +2 -4
  14. package/dist/iframe/event/event-booking-products/components/AccordionItem/AccordionItem.d.ts.map +1 -1
  15. package/dist/iframe/event/event-order-summary/EventOrderSummary.d.ts +1 -1
  16. package/dist/iframe/event/event-order-summary/EventOrderSummary.d.ts.map +1 -1
  17. package/dist/iframe/order-process/components/BookingSummary/BookingSummary.d.ts.map +1 -1
  18. package/dist/iframe/order-process/components/BookingSummary/BookingSummary.js +1 -1
  19. package/dist/iframe/order-process/components/BookingSummary/components/ProductsByMenuStep/ProductsByMenuStep.d.ts +3 -4
  20. package/dist/iframe/order-process/components/BookingSummary/components/ProductsByMenuStep/ProductsByMenuStep.d.ts.map +1 -1
  21. package/dist/iframe/order-process/components/BookingSummary/components/ProductsByMenuStep/ProductsByMenuStep.js +1 -1
  22. package/dist/iframe/order-process/components/BookingSummary/types/index.d.ts +4 -3
  23. package/dist/iframe/order-process/components/BookingSummary/types/index.d.ts.map +1 -1
  24. package/dist/iframe/order-process/components/BookingSummary/utils/index.d.ts +2 -4
  25. package/dist/iframe/order-process/components/BookingSummary/utils/index.d.ts.map +1 -1
  26. package/dist/iframe/order-process/components/BookingSummary/utils/index.js +1 -1
  27. package/dist/iframe/order-process/components/CalendarStepsForm/components/Category.d.ts +1 -1
  28. package/dist/iframe/order-process/components/CalendarStepsForm/components/Category.d.ts.map +1 -1
  29. package/dist/iframe/order-process/components/CalendarStepsForm/components/CategoryProductModal.d.ts +1 -1
  30. package/dist/iframe/order-process/components/CalendarStepsForm/components/CategoryProductModal.d.ts.map +1 -1
  31. package/dist/iframe/order-process/components/CategoryProduct/CategoryProduct.d.ts +1 -1
  32. package/dist/iframe/order-process/components/CategoryProduct/CategoryProduct.d.ts.map +1 -1
  33. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts +1 -1
  34. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts.map +1 -1
  35. package/dist/iframe/order-process/components/utils/useCategoryVerification.d.ts +2 -2
  36. package/dist/iframe/order-process/components/utils/useCategoryVerification.d.ts.map +1 -1
  37. package/dist/iframe/payment/payment-page/PaymentPage.d.ts.map +1 -1
  38. package/dist/iframe/payment/payment-page/PaymentPage.js +1 -1
  39. package/dist/iframe/payment/payment-status-page/PaymentStatusPage.d.ts +2 -2
  40. package/dist/iframe/payment/payment-status-page/PaymentStatusPage.d.ts.map +1 -1
  41. package/dist/iframe/payment/payment-status-page/PaymentStatusPage.js +1 -1
  42. package/dist/iframe/payment/payment-status-page/component/PaymentStatusBody.d.ts +2 -2
  43. package/dist/iframe/payment/payment-status-page/component/PaymentStatusBody.d.ts.map +1 -1
  44. package/dist/index.js +1 -1
  45. package/dist/product-set/control/DateAndRecurrenceInput.d.ts.map +1 -1
  46. package/dist/report/index.d.ts +0 -3
  47. package/dist/report/index.d.ts.map +1 -1
  48. package/dist/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.d.ts +1 -4
  49. package/dist/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.d.ts.map +1 -1
  50. package/dist/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.js +1 -1
  51. package/dist/styles/date-time-button/DateTimeButton.scss +4 -0
  52. package/dist/styles/iframe-order-process/IframeOrderProcess.scss +4 -6
  53. package/dist/styles/iframe-page/PageBody.scss +3 -3
  54. package/dist/styles/report/_index.scss +1 -3
  55. package/dist/styles/sales/BookingResults.scss +1 -1
  56. package/dist/styles/sales/ManualBooking.scss +4 -1
  57. package/dist/types/iframe.d.ts +50 -2
  58. package/dist/types/iframe.d.ts.map +1 -1
  59. package/package.json +3 -3
  60. package/src/calendar/components/CalendarDates/CalendarDates.tsx +4 -3
  61. package/src/date-time-button/DateContent.tsx +9 -27
  62. package/src/date-time-button/DateTimeButton.stories.tsx +14 -13
  63. package/src/date-time-button/DateTimeButton.tsx +26 -35
  64. package/src/events/event-venue-map/components/MapPoint/MapPoint.tsx +1 -1
  65. package/src/iframe/event/event-booking-products/EventBookingProducts.tsx +3 -4
  66. package/src/iframe/event/event-booking-products/components/AccordionItem/AccordionItem.tsx +4 -8
  67. package/src/iframe/event/event-order-summary/EventOrderSummary.tsx +2 -0
  68. package/src/iframe/order-process/components/BookingSummary/BookingSummary.stories.tsx +31 -46
  69. package/src/iframe/order-process/components/BookingSummary/BookingSummary.tsx +19 -12
  70. package/src/iframe/order-process/components/BookingSummary/components/ProductsByMenuStep/ProductsByMenuStep.tsx +66 -48
  71. package/src/iframe/order-process/components/BookingSummary/types/index.ts +4 -3
  72. package/src/iframe/order-process/components/BookingSummary/utils/index.ts +2 -11
  73. package/src/iframe/order-process/components/CalendarStepsForm/components/Category.tsx +1 -1
  74. package/src/iframe/order-process/components/CalendarStepsForm/components/CategoryProductModal.tsx +1 -4
  75. package/src/iframe/order-process/components/CategoryProduct/CategoryProduct.tsx +1 -4
  76. package/src/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.tsx +1 -4
  77. package/src/iframe/order-process/components/utils/useCategoryVerification.ts +2 -3
  78. package/src/iframe/payment/payment-page/PaymentPage.tsx +6 -5
  79. package/src/iframe/payment/payment-status-page/PaymentStatusPage.tsx +26 -13
  80. package/src/iframe/payment/payment-status-page/component/PaymentStatusBody.tsx +2 -2
  81. package/src/product-set/control/DateAndRecurrenceInput.tsx +1 -2
  82. package/src/report/index.ts +0 -3
  83. package/src/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.tsx +5 -19
  84. package/src/styles/date-time-button/DateTimeButton.scss +4 -0
  85. package/src/styles/iframe-order-process/IframeOrderProcess.scss +4 -6
  86. package/src/styles/iframe-page/PageBody.scss +3 -3
  87. package/src/styles/report/_index.scss +1 -3
  88. package/src/styles/sales/BookingResults.scss +1 -1
  89. package/src/styles/sales/ManualBooking.scss +4 -1
  90. package/src/types/iframe.ts +58 -2
  91. package/dist/assets/dashboard/info.svg +0 -8
  92. package/dist/assets/dashboard/info.svg.js +0 -1
  93. package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.d.ts +0 -10
  94. package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.d.ts.map +0 -1
  95. package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.js +0 -1
  96. package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/index.d.ts +0 -2
  97. package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/index.d.ts.map +0 -1
  98. package/dist/report/DataFieldsSelector/DataFieldsSelector.d.ts +0 -13
  99. package/dist/report/DataFieldsSelector/DataFieldsSelector.d.ts.map +0 -1
  100. package/dist/report/DataFieldsSelector/DataFieldsSelector.js +0 -1
  101. package/dist/report/DataFieldsSelector/index.d.ts +0 -2
  102. package/dist/report/DataFieldsSelector/index.d.ts.map +0 -1
  103. package/dist/report/ReportRunnerModal/ReportRunnerModal.d.ts +0 -22
  104. package/dist/report/ReportRunnerModal/ReportRunnerModal.d.ts.map +0 -1
  105. package/dist/report/ReportRunnerModal/ReportRunnerModal.js +0 -1
  106. package/dist/report/ReportRunnerModal/index.d.ts +0 -2
  107. package/dist/report/ReportRunnerModal/index.d.ts.map +0 -1
  108. package/dist/report/ReportTypeSelect/ReportTypeSelect.d.ts +0 -3
  109. package/dist/report/ReportTypeSelect/ReportTypeSelect.d.ts.map +0 -1
  110. package/dist/report/ReportTypeSelect/ReportTypeSelect.js +0 -1
  111. package/dist/report/ReportTypeSelect/index.d.ts +0 -2
  112. package/dist/report/ReportTypeSelect/index.d.ts.map +0 -1
  113. package/dist/styles/report/ReportEditorModal.scss +0 -98
  114. package/dist/styles/report/ReportRunnerModal.scss +0 -95
  115. package/src/assets/dashboard/info.svg +0 -8
  116. package/src/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.tsx +0 -43
  117. package/src/iframe/order-process/components/BookingSummary/components/ProductSummary/index.ts +0 -1
  118. package/src/report/DataFieldsSelector/DataFieldsSelector.tsx +0 -112
  119. package/src/report/DataFieldsSelector/index.ts +0 -1
  120. package/src/report/ReportRunnerModal/ReportRunnerModal.tsx +0 -187
  121. package/src/report/ReportRunnerModal/index.ts +0 -1
  122. package/src/report/ReportTypeSelect/ReportTypeSelect.tsx +0 -68
  123. package/src/report/ReportTypeSelect/index.ts +0 -1
  124. package/src/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.stories.tsx +0 -48
  125. package/src/styles/report/ReportEditorModal.scss +0 -98
  126. package/src/styles/report/ReportRunnerModal.scss +0 -95
@@ -1,5 +1,7 @@
1
+ // eslint-disable-next-line max-len
1
2
  import React, { ReactNode } from "react";
2
3
  import { useTranslation } from "react-i18next";
4
+
3
5
  import { PaymentStatusBody } from "./component";
4
6
  import { LoaderIndicator } from "../../../static/loader/LoaderIndicator";
5
7
  import { Page, PageBody } from "../../page";
@@ -14,7 +16,7 @@ export const ORDER_STATUS_FAILED = "failed";
14
16
  export const ORDER_STATUS_SUCCESS = "success";
15
17
  export const ORDER_STATUS_PENDING = "pending";
16
18
 
17
- export type OrderStatus =
19
+ export type OrderStatusPrefix =
18
20
  | typeof ORDER_STATUS_SUCCESS
19
21
  | typeof ORDER_STATUS_FAILED
20
22
  | typeof ORDER_STATUS_PENDING;
@@ -24,7 +26,7 @@ interface PaymentStatusComponentProps {
24
26
  onBack?: () => void;
25
27
  onTryAgain?: () => void;
26
28
  isLoading?: boolean;
27
- status: OrderStatus;
29
+ status: OrderStatusPrefix;
28
30
  isAppUsingInIframe?: boolean;
29
31
  bookingSummaryProps?: BookingSummaryProps;
30
32
  EventCardComponent?: ReactNode;
@@ -34,12 +36,6 @@ interface PaymentStatusComponentProps {
34
36
  paymentMetadata?: PaymentMetadata;
35
37
  }
36
38
 
37
- const titles: Record<OrderStatus, string> = {
38
- [ORDER_STATUS_SUCCESS]: "purchaseSuccessful",
39
- [ORDER_STATUS_PENDING]: "pendingPayment",
40
- [ORDER_STATUS_FAILED]: "purchaseFailed",
41
- };
42
-
43
39
  // @TODO In future think, how to reuse this component in Iframe Pending, Success and Failed Pages
44
40
  export const PaymentStatusPage = ({
45
41
  onCloseWindow,
@@ -57,10 +53,27 @@ export const PaymentStatusPage = ({
57
53
  }: PaymentStatusComponentProps) => {
58
54
  const { t } = useTranslation("Design");
59
55
 
60
- if (isLoading) return <LoaderIndicator isLoaded={false} />;
56
+ const getTitle = () => {
57
+ switch (status) {
58
+ case ORDER_STATUS_SUCCESS:
59
+ return t("purchaseSuccessful");
60
+ case ORDER_STATUS_PENDING:
61
+ return t("pendingPayment");
62
+ default:
63
+ return t("purchaseFailed");
64
+ }
65
+ };
66
+
67
+ const title = getTitle();
68
+
69
+ if (isLoading) {
70
+ return <LoaderIndicator isLoaded={false} />;
71
+ }
61
72
 
62
73
  const orderTotalAmounByFormValues = cartSumByOrderProducts(
63
- Object.values(bookingSummaryProps?.formValues ?? {})
74
+ bookingSummaryProps && bookingSummaryProps?.formValues
75
+ ? Object.values(bookingSummaryProps?.formValues)
76
+ : undefined
64
77
  );
65
78
 
66
79
  // User can fill promocode only in iframe appcliation.
@@ -75,7 +88,6 @@ export const PaymentStatusPage = ({
75
88
  return (
76
89
  <Page
77
90
  className="payment-status-page"
78
- isAppUsingInIframe={isAppUsingInIframe}
79
91
  headerBlock={
80
92
  <PaymentStatusHeader
81
93
  success={status !== ORDER_STATUS_FAILED}
@@ -86,10 +98,11 @@ export const PaymentStatusPage = ({
86
98
  }
87
99
  />
88
100
  }
101
+ isAppUsingInIframe={isAppUsingInIframe}
89
102
  >
90
103
  <PageBody
91
104
  leftBlock={
92
- <PageBody.LeftBlock title={t(titles[status])}>
105
+ <PageBody.LeftBlock title={title}>
93
106
  <div>
94
107
  {EventCardComponent}
95
108
  <PaymentStatusBody
@@ -155,7 +168,7 @@ export const PaymentStatusPage = ({
155
168
  {bookingSummaryProps ? (
156
169
  <BookingSummary {...bookingSummaryProps} />
157
170
  ) : (
158
- <h6>{t(titles[status])}</h6>
171
+ <h6>{title}</h6>
159
172
  )}
160
173
  </PageBody.RightBlock>
161
174
  }
@@ -3,12 +3,12 @@ import { useTranslation } from "react-i18next";
3
3
  import {
4
4
  ORDER_STATUS_PENDING,
5
5
  ORDER_STATUS_SUCCESS,
6
- OrderStatus,
6
+ OrderStatusPrefix,
7
7
  } from "../PaymentStatusPage";
8
8
  import { StatusBody } from "../../status-body/StatusBody";
9
9
 
10
10
  interface PaymentStatusBodyProps {
11
- status: OrderStatus;
11
+ status: OrderStatusPrefix;
12
12
  onBack: () => void;
13
13
  onTryAgain?: () => void;
14
14
  email?: string;
@@ -126,8 +126,7 @@ export const DateAndRecurrenceInput = ({
126
126
  }
127
127
  }
128
128
 
129
- const availableTime =
130
- availableTimesFormRef?.current?.getValues()?.availableTimes || null;
129
+ const availableTime = availableTimesFormRef?.current?.getValues()?.availableTimes || null;
131
130
 
132
131
  const values = {
133
132
  rrule: next.rrule,
@@ -1,5 +1,2 @@
1
1
  export * from "./card";
2
2
  export * from "./form";
3
- export * from "./ReportTypeSelect";
4
- export * from "./DataFieldsSelector";
5
- export * from "./ReportRunnerModal";
@@ -1,5 +1,5 @@
1
1
  import clsx from "clsx";
2
- import React, { SyntheticEvent, forwardRef } from "react";
2
+ import React, { forwardRef } from "react";
3
3
  import { FormControl } from "react-bootstrap";
4
4
  import { useTranslation } from "react-i18next";
5
5
  import { Icon } from "../../../static";
@@ -13,15 +13,12 @@ interface NumberInputHorizontalProps {
13
13
  onChange: (value: number) => void;
14
14
  onPlusClick: (value: number) => void;
15
15
  onMinusClick: (value: number) => void;
16
- onSelect?: (e: SyntheticEvent) => void;
17
- step?: number;
18
16
  min?: number;
19
17
  max?: number;
20
18
  size?: Sizes;
21
19
  defaultValue?: number;
22
20
  hasCurrency?: boolean;
23
21
  isLoading?: boolean;
24
- shouldHideButtons?: boolean;
25
22
  }
26
23
 
27
24
  export const NumberInputHorizontal = forwardRef<
@@ -31,16 +28,13 @@ export const NumberInputHorizontal = forwardRef<
31
28
  (
32
29
  {
33
30
  disabled = false,
34
- shouldHideButtons,
35
31
  className = "",
36
32
  value,
37
- step,
38
33
  size = "small",
39
34
  hasCurrency,
40
35
  onChange,
41
36
  onPlusClick,
42
37
  onMinusClick,
43
- onSelect,
44
38
  min,
45
39
  max,
46
40
  defaultValue,
@@ -60,12 +54,7 @@ export const NumberInputHorizontal = forwardRef<
60
54
  }
61
55
  };
62
56
 
63
- const onClick = (e) => {
64
- if (onSelect) {
65
- onSelect(e);
66
- }
67
- e.target.select();
68
- };
57
+ const onClick = (e) => e.target.select();
69
58
 
70
59
  const handleArrowDownClick = () => {
71
60
  if (min !== undefined && value > min) {
@@ -90,7 +79,7 @@ export const NumberInputHorizontal = forwardRef<
90
79
  "licklist-number-input-horizontal__btn-minus",
91
80
  hasBigSize ? "big-sizes-btn" : "small-sizes-btn",
92
81
  ].join(" ")}
93
- disabled={disabled || shouldHideButtons}
82
+ disabled={disabled}
94
83
  >
95
84
  <Icon
96
85
  type="minus"
@@ -109,14 +98,11 @@ export const NumberInputHorizontal = forwardRef<
109
98
  ref={ref}
110
99
  onClick={onClick}
111
100
  type={disabled && hasBigSize ? "text" : "number"}
112
- className={clsx(
113
- hasBigSize ? "big-sizes-input" : "small-sizes-input"
114
- )}
101
+ className={hasBigSize ? "big-sizes-input" : "small-sizes-input"}
115
102
  onChange={(e) => onChange(Number(e.target.value))}
116
103
  value={disabled && hasBigSize && !isLoading ? soldOut : value}
117
104
  min={min}
118
105
  max={max}
119
- step={step}
120
106
  defaultValue={defaultValue}
121
107
  disabled={disabled}
122
108
  />
@@ -128,7 +114,7 @@ export const NumberInputHorizontal = forwardRef<
128
114
  "licklist-number-input-horizontal__btn-plus",
129
115
  hasBigSize ? "big-sizes-btn" : "small-sizes-btn",
130
116
  ].join(" ")}
131
- disabled={disabled || shouldHideButtons}
117
+ disabled={disabled}
132
118
  >
133
119
  <Icon
134
120
  type="plus"
@@ -31,6 +31,10 @@
31
31
  font-size: 0.7rem;
32
32
  }
33
33
 
34
+ &.today:first-of-type {
35
+ min-width: 7.5rem;
36
+ }
37
+
34
38
  &.disabled {
35
39
  border: 2px solid $snippet-calendar-disabled-button-border-color;
36
40
  background-color: $snippet-calendar-disabled-button-background-color;
@@ -131,12 +131,6 @@
131
131
  font-weight: 500;
132
132
  }
133
133
 
134
- .categories {
135
- &:not(:last-child) {
136
- border-bottom: 2px solid $separator-color;
137
- }
138
- }
139
-
140
134
  .products {
141
135
  margin-top: 0.5rem;
142
136
 
@@ -150,6 +144,10 @@
150
144
  margin-bottom: 0.5rem;
151
145
  }
152
146
  }
147
+
148
+ &:not(:last-child) {
149
+ border-bottom: 2px solid $separator-color;
150
+ }
153
151
  }
154
152
 
155
153
  &:not(:last-child) {
@@ -60,9 +60,9 @@
60
60
 
61
61
  .left-block-container {
62
62
  height: calc(100svh - 12rem);
63
- overflow-y: auto;
64
- overflow-x: hidden;
65
- scrollbar-width: thin;
63
+ scrollbar-width: none;
64
+ overflow: scroll;
65
+
66
66
  .iframe-event-card {
67
67
  border-bottom: 2px solid $separator-color;
68
68
  }
@@ -1,3 +1 @@
1
- @import "./ReportCard.scss";
2
- @import "./ReportRunnerModal.scss";
3
- @import "./ReportEditorModal.scss";
1
+ @import "./ReportCard.scss";
@@ -5,7 +5,7 @@
5
5
  flex-wrap: wrap;
6
6
 
7
7
  .result-card {
8
- height: 14rem;
8
+ height: 14.25rem;
9
9
  border: 1px solid $gray-400;
10
10
  max-width: calc(50% - 0.75rem);
11
11
  flex: 0 0 calc(50% - 0.75rem);
@@ -291,7 +291,10 @@
291
291
  width: 7rem;
292
292
  height: 2.6rem;
293
293
  }
294
-
294
+ .small-sizes-input:disabled {
295
+ border: none;
296
+ background-color: white !important;
297
+ }
295
298
  .big-sizes-input {
296
299
  height: 3.75rem;
297
300
  font-size: 1.7rem;
@@ -1,5 +1,61 @@
1
- import { OrderItems } from "@licklist/plugins/dist/types/context/Iframe/orderItems";
1
+ import { Product as CoreProduct } from "@licklist/core/dist/DataMapper/Product/ProductDataMapper";
2
+ import { Zone } from "@licklist/core/dist/DataMapper/Provider/ZoneDataMapper";
3
+
4
+ export interface Product {
5
+ id: number;
6
+ name: string;
7
+ description: string;
8
+ deposit: number;
9
+ price: number;
10
+ minSub?: number;
11
+ minAmount?: number;
12
+ maxAmount?: number;
13
+ minSpend?: number | null;
14
+ isSoldOut?: boolean;
15
+ isRequired?: boolean;
16
+ isUnlimited?: boolean;
17
+ images: CoreProduct["images"];
18
+ capacity?: number | null;
19
+ uuid: string;
20
+ }
21
+
22
+ export interface ProductCategory {
23
+ id: number;
24
+ name: string;
25
+ allowDeposits?: boolean;
26
+ remainderExpireAfter?: number | null;
27
+ minSubItems: number | null;
28
+ maxSubItems: number | null;
29
+ products?: Product[];
30
+ zone?: Zone | null;
31
+ }
32
+
33
+ export interface MenuStep {
34
+ id: number;
35
+ name: string;
36
+ productCategories?: ProductCategory[];
37
+ }
38
+
39
+ export interface Menu {
40
+ id: number;
41
+ menuSteps: MenuStep[];
42
+ }
43
+
44
+ // TODO similar type exists in iframe app
45
+ // remove this when components are moved to iframe
46
+ export interface Order {
47
+ id: number;
48
+ quantity: number;
49
+ price: number;
50
+ name: string;
51
+ productsCategoryId: number;
52
+ deposit?: number | null;
53
+ }
2
54
 
3
55
  export type SetOrderFn = (
4
- val: OrderItems | ((prevVar: OrderItems) => OrderItems)
56
+ val:
57
+ | Record<number, Order>
58
+ | ((prevVar: Record<number, Order>) => Record<number, Order>)
5
59
  ) => void;
60
+
61
+ export type WizardFormValues = { [key: string]: any };
@@ -1,8 +0,0 @@
1
- <svg width="20" height="20" viewBox="0 0 20 20" fill="none"
2
- xmlns="http://www.w3.org/2000/svg">
3
- <g id="Info icon">
4
- <circle id="Oval" cx="10" cy="6" r="1.25" fill="#0E8CE2"/>
5
- <rect id="Rectangle" x="9" y="8" width="2" height="7" fill="#0E8CE2"/>
6
- <circle id="Oval_2" cx="10" cy="10" r="9" stroke="#0E8CE2" stroke-width="2"/>
7
- </g>
8
- </svg>
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t,r,n,c=require("react");(e=c)&&"object"==typeof e&&"default"in e&&e.default;function l(){return l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},l.apply(this,arguments)}exports.ReactComponent=function(e){return c.createElement("svg",l({width:20,height:20,fill:"none",xmlns:"http://www.w3.org/2000/svg"},e),t||(t=c.createElement("circle",{cx:10,cy:6,r:1.25,fill:"#0E8CE2"})),r||(r=c.createElement("path",{fill:"#0E8CE2",d:"M9 8h2v7H9z"})),n||(n=c.createElement("circle",{cx:10,cy:10,r:9,stroke:"#0E8CE2",strokeWidth:2})))};
@@ -1,10 +0,0 @@
1
- /// <reference types="react" />
2
- import { OrderItem } from "@licklist/plugins/dist/types/context/Iframe/orderItems";
3
- type ProductSummaryProps = {
4
- name?: string;
5
- productQuantityError?: string;
6
- orderProduct: OrderItem;
7
- };
8
- export declare const ProductSummary: ({ name, productQuantityError, orderProduct, }: ProductSummaryProps) => JSX.Element;
9
- export {};
10
- //# sourceMappingURL=ProductSummary.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProductSummary.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,wDAAwD,CAAC;AAEnF,KAAK,mBAAmB,GAAG;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,EAAE,SAAS,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,cAAc,kDAIxB,mBAAmB,gBA0BrB,CAAC"}
@@ -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("@licklist/core/dist/Config"),n=require("react-i18next"),l=require("react-intl");exports.ProductSummary=function(e){var t=e.name,c=e.productQuantityError,u=e.orderProduct,i=n.useTranslation("Design").t,s=(0,l.useIntl().formatNumber)(((null==u?void 0:u.deposit)||(null==u?void 0:u.price)||0)*(null==u?void 0:u.quantity),{style:"currency",currency:a.Currency.GBP});return r.createElement("div",{className:"product"},r.createElement("p",{className:"m-0 name"},null!=t?t:null==u?void 0:u.name),r.createElement("div",{className:"d-flex justify-content-between"},r.createElement("p",{className:"m-0"},i("shortQuantity"),": ",null==u?void 0:u.quantity),r.createElement("p",{className:"price"},s)),c&&r.createElement("p",{className:"iframe-event__message-error"},c))};
@@ -1,2 +0,0 @@
1
- export * from "./ProductSummary";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/iframe/order-process/components/BookingSummary/components/ProductSummary/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -1,13 +0,0 @@
1
- /// <reference types="react" />
2
- type ReportField = {
3
- id: number;
4
- key: string;
5
- title: string;
6
- };
7
- interface DataFieldsSelectorType {
8
- reportFields: ReportField[];
9
- isLoading?: boolean;
10
- }
11
- export declare const DataFieldsSelector: ({ reportFields, isLoading, }: DataFieldsSelectorType) => JSX.Element;
12
- export {};
13
- //# sourceMappingURL=DataFieldsSelector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DataFieldsSelector.d.ts","sourceRoot":"","sources":["../../../src/report/DataFieldsSelector/DataFieldsSelector.tsx"],"names":[],"mappings":";AAQA,KAAK,WAAW,GAAG;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,UAAU,sBAAsB;IAC9B,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,kBAAkB,iCAG5B,sBAAsB,gBAkExB,CAAC"}
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,r=require("react"),t=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,l=require("../../static/loader/LoaderIndicator.js"),a=require("react-i18next"),n=require("react-bootstrap"),o=require("react-hook-form"),u=require("@react-aria/utils"),c=require("lodash"),i=function(e){var r=e.onChange,l=e.value,a=e.label,o=e.checked,c=u.useId();return t.createElement(n.Form.Group,{controlId:c,className:"custom-checkbox"},t.createElement(n.Form.Check,{label:a,value:l,onChange:r,checked:o,custom:!0}))};exports.DataFieldsSelector=function(e){var r,u,d=e.reportFields,s=e.isLoading,m=a.useTranslation(["App","Design"]).t,v=o.useFormContext(),f=v.control,p=v.formState.errors;return t.createElement(t.Fragment,null,s&&t.createElement("div",{className:"report-fields-loader"},t.createElement(l.LoaderIndicator,null)),!s&&t.createElement(t.Fragment,null,t.createElement(n.Form.Label,{className:"mt-4"},m("dataFields")),t.createElement(n.Row,null,t.createElement(o.Controller,{name:"reportFieldValues","data-testid":"report-field-values-select",control:f,rules:{validate:function(e){return e.length>0||m("dataFieldRequired")}},render:function(e){var r=e.field,l=function(e){r.onChange(c.xor(r.value,[Number(e.target.value)]))};return t.createElement(t.Fragment,null,null==d?void 0:d.map((function(e){return t.createElement(n.Col,{key:e.id,lg:6},t.createElement(i,{value:e.id,onChange:l,label:e.title,checked:r.value.includes(e.id)}))})))}})),(null===(r=p.reportFieldValues)||void 0===r?void 0:r.message)&&t.createElement(n.Row,null,t.createElement(n.Col,null,t.createElement("div",{className:"invalid-feedback field-values-error"},null===(u=p.reportFieldValues)||void 0===u?void 0:u.message)))))};
@@ -1,2 +0,0 @@
1
- export * from "./DataFieldsSelector";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/report/DataFieldsSelector/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
@@ -1,22 +0,0 @@
1
- /// <reference types="react" />
2
- import { Report, ReportType } from "@licklist/core/dist/DataMapper/Report";
3
- import { HttpQuery } from "@licklist/plugins/dist/hooks/Api/useHttpQuery";
4
- import { CachedHttpQueryResponse } from "@licklist/plugins/dist/hooks/Api/useCachedHttpQuery";
5
- interface ReportField {
6
- id: number;
7
- key: string;
8
- title: string;
9
- }
10
- type ReportRunnerModalProps = {
11
- reportId: Report["id"] | null;
12
- show: boolean;
13
- useShowReportFields: (reportType?: ReportType) => CachedHttpQueryResponse<ReportField[], unknown>;
14
- generate?: HttpQuery<Record<string, string>[] | null>;
15
- download?: HttpQuery<Blob | null>;
16
- onHide: () => void;
17
- onEdit: () => void;
18
- reports?: Report[] | null;
19
- };
20
- export declare const ReportRunnerModal: ({ reportId, show, onHide, useShowReportFields, reports, generate, download, onEdit, }: ReportRunnerModalProps) => JSX.Element;
21
- export {};
22
- //# sourceMappingURL=ReportRunnerModal.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReportRunnerModal.d.ts","sourceRoot":"","sources":["../../../src/report/ReportRunnerModal/ReportRunnerModal.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAO3E,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAG9F,UAAU,WAAW;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,KAAK,sBAAsB,GAAG;IAC5B,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,mBAAmB,EAAE,CACnB,UAAU,CAAC,EAAE,UAAU,KACpB,uBAAuB,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,CAAC;IACrD,QAAQ,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IACtD,QAAQ,CAAC,EAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAClC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAC3B,CAAC;AAOF,eAAO,MAAM,iBAAiB,0FAS3B,sBAAsB,gBA8IxB,CAAC"}
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),r=require("react"),a=(e=r)&&"object"==typeof e&&"default"in e?e.default:e;require("../../static/loader/LoaderIndicator.js");var n=require("../../static/loader/BlockLoader.js"),o=require("react-i18next"),i=require("react-bootstrap"),l=require("react-hook-form");require("../../static/loader/ButtonLoader.js"),require("../../static/loader/SnippetLoader.js"),require("../../static/loader/PaymentLoader.js");var d=require("lodash"),s=require("@licklist/plugins/dist/utils/report");exports.ReportRunnerModal=function(e){var r,u,c=e.reportId,m=e.show,p=e.onHide,v=e.useShowReportFields,f=e.reports,g=e.generate,E=e.download,F=e.onEdit,b=o.useTranslation(["App","Design"]).t,_=null==f?void 0:f.find((function(e){return e.id===c})),q=v(null==_?void 0:_.type),y=q.data,h=void 0===y?[]:y,w=q.isLoading,k=l.useForm({mode:"onChange"}),L=k.handleSubmit,C=k.register,I=k.formState.errors,D=k.reset,j=(0,k.watch)("dateFrom"),B=L((function(e){E.execute(t.__assign(t.__assign({},e),{reportId:c,type:null==_?void 0:_.type}))})),N=L((function(e){return t.__awaiter(void 0,void 0,void 0,(function(){var r;return t.__generator(this,(function(a){switch(a.label){case 0:return[4,g.execute(t.__assign(t.__assign({},e),{reportId:c}))];case 1:return r=a.sent(),_&&r&&!g.isError?(s.openOnlineViewer({type:_.type,dateFrom:e.dateFrom,dateTo:e.dateTo,data:r}),[2]):[2]}}))}))})),R=function(){D(),p()},T=g.isLoading||E.isLoading||w;return a.createElement(i.Modal,{show:m,onHide:R,className:"report-runner-modal",centered:!0},a.createElement("header",null,a.createElement("h5",null,b("generateReport")),a.createElement(i.Button,{variant:"","data-testid":"cancel-button",onClick:R},b("cancel"))),T&&a.createElement(n.BlockLoader,null),!T&&a.createElement("div",null,a.createElement("div",{className:"report-type-label"},d.capitalize(null==_?void 0:_.type)),a.createElement("div",null,null==_?void 0:_.name),a.createElement("div",{className:"data-fields"},null==_?void 0:_.reportFieldValues.map((function(e){var t=null==h?void 0:h.find((function(t){return t.id===e.reportFieldId}));return t?a.createElement("span",{key:e.id},t.title):null}))),a.createElement(i.Button,{className:"edit-button",type:"button",variant:"","data-testid":"edit-button",onClick:F},b("Design:edit")),a.createElement("form",{noValidate:!0},a.createElement("div",{className:"controls"},a.createElement(i.Form.Group,{controlId:"from-input"},a.createElement(i.Form.Label,null,b("Design:from")),a.createElement(i.Form.Control,t.__assign({type:"datetime-local","data-testid":"date-from-input",isInvalid:!!I.dateFrom},C("dateFrom",{required:{value:!0,message:"".concat(b("Validation:fieldRequired",{attribute:b("Design:to")}))}}))),a.createElement(i.Form.Control.Feedback,{type:"invalid"},null===(r=I.dateFrom)||void 0===r?void 0:r.message)),a.createElement(i.Form.Group,{controlId:"to-input"},a.createElement(i.Form.Label,null,b("Design:to")),a.createElement(i.Form.Control,t.__assign({type:"datetime-local","data-testid":"date-to-input",isInvalid:!!I.dateTo},C("dateTo",{required:"".concat(b("Validation:fieldRequired",{attribute:b("Design:to")})),validate:function(e){return!j||(e>j||b("toDateAfterFrom"))}}))),a.createElement(i.Form.Control.Feedback,{type:"invalid"},null===(u=I.dateTo)||void 0===u?void 0:u.message))),a.createElement("div",{className:"controls"},a.createElement(i.Button,{"data-testid":"download-button",onClick:B},b("generateDownload")),a.createElement(i.Button,{"data-testid":"view-button",onClick:N},b("generateView"))))))};
@@ -1,2 +0,0 @@
1
- export * from "./ReportRunnerModal";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/report/ReportRunnerModal/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const ReportTypeSelect: () => JSX.Element;
3
- //# sourceMappingURL=ReportTypeSelect.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReportTypeSelect.d.ts","sourceRoot":"","sources":["../../../src/report/ReportTypeSelect/ReportTypeSelect.tsx"],"names":[],"mappings":";AAQA,eAAO,MAAM,gBAAgB,mBA2D5B,CAAC"}
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),r=require("react"),o=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,a=require("react-i18next"),l=require("react-bootstrap"),n=require("react-hook-form"),i=require("lodash"),p=require("@licklist/core/dist/DataMapper/Report"),s=require("../../assets/dashboard/info.svg.js");exports.ReportTypeSelect=function(){var e,r=a.useTranslation(["App","Design"]).t,c=n.useFormContext(),u=c.register,m=c.formState.errors,d=c.setValue;return o.createElement(l.Row,null,o.createElement(l.Col,{lg:6,className:"mt-4"},o.createElement(l.Form.Group,{controlId:"typeSelect"},o.createElement(l.Form.Label,null,r("reportType")),o.createElement(l.Form.Control,t.__assign({as:"select","data-testid":"report-type-select",isInvalid:!!m.type},u("type",{required:{value:!0,message:"".concat(r("Validation:fieldRequired",{attribute:r("reportType")}))}}),{onChange:function(e){u("type").onChange(e),d("reportFieldValues",[])}}),p.reportTypes.map((function(e){return o.createElement("option",{key:e,value:e},i.capitalize(e))}))),o.createElement(l.Form.Control.Feedback,{type:"invalid"},null===(e=m.type)||void 0===e?void 0:e.message),o.createElement(l.OverlayTrigger,{trigger:"hover",overlay:o.createElement(l.Popover,{id:"report-type-popover"},o.createElement(l.Popover.Content,{className:"reports-popover"},r("reportTypeSelectInfo")))},o.createElement(s.ReactComponent,{className:"info-icon"})))))};
@@ -1,2 +0,0 @@
1
- export * from "./ReportTypeSelect";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/report/ReportTypeSelect/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
@@ -1,98 +0,0 @@
1
- .report-builder {
2
- .modal-dialog {
3
- @include media-breakpoint-up(sm) {
4
- max-width: 45rem;
5
- }
6
- }
7
-
8
- .modal-content {
9
- max-width: 45rem;
10
- margin: 0 auto;
11
- padding: 1.25rem 1.5rem;
12
-
13
- header {
14
- display: flex;
15
- justify-content: space-between;
16
- align-items: center;
17
- margin-bottom: 1rem;
18
- border-bottom: 2px solid #dcdcdc;
19
-
20
- h5 {
21
- margin-bottom: 0;
22
- font-size: 1.125rem;
23
- font-weight: 500;
24
- }
25
-
26
- button {
27
- padding-top: 0.5rem;
28
- padding-bottom: 0.5rem;
29
- font-size: 0.875rem;
30
- font-weight: 600;
31
- color: #0e8ce2;
32
- }
33
- }
34
-
35
- .data-fields {
36
- display: flex;
37
- flex-wrap: wrap;
38
-
39
- span {
40
- position: relative;
41
- font-size: 0.875rem;
42
- font-weight: 500;
43
-
44
- &:after {
45
- content: "|";
46
- margin: 0 0.25rem;
47
- color: #dcdcdc;
48
- }
49
-
50
- &:last-child:after {
51
- display: none;
52
- }
53
- }
54
- }
55
-
56
- .edit-button {
57
- padding: 0;
58
- font-size: 0.875rem;
59
- font-weight: 600;
60
- color: #0e8ce2;
61
- text-decoration: underline;
62
-
63
- &:focus {
64
- box-shadow: none;
65
- }
66
- }
67
-
68
- input {
69
- border-radius: 0.5rem;
70
- }
71
-
72
- form {
73
- margin-top: 1.25rem;
74
-
75
- .controls {
76
- display: flex;
77
- gap: 2rem;
78
- align-items: flex-start;
79
- flex-wrap: wrap;
80
- }
81
-
82
- .form-group {
83
- flex: 1;
84
- }
85
-
86
- button[type="submit"] {
87
- white-space: nowrap;
88
- }
89
- }
90
-
91
- .loader {
92
- height: 10rem;
93
- }
94
- }
95
- button[type="submit"] {
96
- margin-top: 1.5rem;
97
- }
98
- }