@licklist/design 0.73.0 → 0.74.0-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/dist/affiliate/form/AffiliateForm.d.ts.map +1 -1
  2. package/dist/auth/Authorizer.d.ts.map +1 -1
  3. package/dist/auth/Authorizer.js +2 -1
  4. package/dist/auth/Login/LoginComponent.js +2 -1
  5. package/dist/auth/Router.d.ts.map +1 -1
  6. package/dist/auth/Router.js +18 -14
  7. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.js +2 -1
  8. package/dist/events/edit-event-modal/utils/getDefaultProductSet.js +1 -1
  9. package/dist/events/event-statistic-modal/EventStatisticModal.d.ts +2 -1
  10. package/dist/events/event-statistic-modal/EventStatisticModal.d.ts.map +1 -1
  11. package/dist/events/event-statistic-modal/EventStatisticModal.js +2 -2
  12. package/dist/events/event-statistic-modal/hooks/useTableData.d.ts +1 -1
  13. package/dist/events/event-statistic-modal/hooks/useTableData.d.ts.map +1 -1
  14. package/dist/events/event-statistic-modal/hooks/useTableData.js +2 -1
  15. package/dist/events/event-statistic-modal/utils/index.js +3 -3
  16. package/dist/events/event-venue-map/EventVenueMap.d.ts.map +1 -1
  17. package/dist/events/event-venue-map/EventVenueMap.js +1 -0
  18. package/dist/events/event-venue-map/hooks/useCanvasSize.d.ts.map +1 -1
  19. package/dist/events/event-venue-map/hooks/useCanvasSize.js +11 -4
  20. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.js +2 -3
  21. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.d.ts.map +1 -1
  22. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.js +4 -11
  23. package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.d.ts.map +1 -1
  24. package/dist/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.d.ts.map +1 -1
  25. package/dist/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.js +13 -0
  26. package/dist/iframe/payment/order-items-table/utils/paymentSummary.d.ts.map +1 -1
  27. package/dist/iframe/ryft/utils/ryft-form.d.ts.map +1 -1
  28. package/dist/iframe/ryft/utils/ryft-form.js +4 -5
  29. package/dist/index.d.ts +0 -1
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +0 -5
  32. package/dist/layout/DropDown.d.ts +2 -1
  33. package/dist/layout/DropDown.d.ts.map +1 -1
  34. package/dist/notification/email-template/control/EmailTemplateControl.d.ts.map +1 -1
  35. package/dist/notification/email-template/control/EmailTemplateControl.js +3 -0
  36. package/dist/product-set/control/ProductSetControl.d.ts +2 -0
  37. package/dist/product-set/control/ProductSetControl.d.ts.map +1 -1
  38. package/dist/product-set/control/ProductSetControl.js +10 -0
  39. package/dist/product-set/form/ProductSetForm.d.ts +5 -3
  40. package/dist/product-set/form/ProductSetForm.d.ts.map +1 -1
  41. package/dist/product-set/form/ProductSetForm.js +1 -1
  42. package/dist/product-set/form/ProductZonesControl.d.ts.map +1 -1
  43. package/dist/product-set/form/ProductZonesControl.js +0 -2
  44. package/dist/product-set/form/ProductsControl.d.ts.map +1 -1
  45. package/dist/product-set/form/ProductsControl.js +3 -0
  46. package/dist/product-set/form/SubProductsControl.d.ts.map +1 -1
  47. package/dist/product-set/form/SubProductsControl.js +0 -3
  48. package/dist/product-set/form/VenueMapsControl.d.ts.map +1 -1
  49. package/dist/product-set/form/VenueMapsControl.js +0 -3
  50. package/dist/product-set/form/context.d.ts +1 -2
  51. package/dist/product-set/form/context.d.ts.map +1 -1
  52. package/dist/product-set/product/ProductControl.d.ts +2 -0
  53. package/dist/product-set/product/ProductControl.d.ts.map +1 -1
  54. package/dist/product-set/product/ProductControl.js +7 -0
  55. package/dist/product-set/product/booking-management/ProductBookingManagementControl.d.ts.map +1 -1
  56. package/dist/product-set/product/booking-management/ProductBookingManagementControl.js +6 -0
  57. package/dist/product-set/product/deposit/ProductDepositControl.d.ts.map +1 -1
  58. package/dist/product-set/product/deposit/ProductDepositControl.js +3 -0
  59. package/dist/product-set/product/duration/ProductDurationControl.d.ts.map +1 -1
  60. package/dist/product-set/product/duration/ProductDurationControl.js +6 -0
  61. package/dist/product-set/product/price/ProductPriceControl.d.ts.map +1 -1
  62. package/dist/product-set/product/price/ProductPriceControl.js +3 -0
  63. package/dist/product-set/product/quantity/ProductQuantityConstantControl.d.ts.map +1 -1
  64. package/dist/product-set/product/quantity/ProductQuantityConstantControl.js +6 -0
  65. package/dist/product-set/product/quantity/ProductQuantityControl.d.ts.map +1 -1
  66. package/dist/product-set/product/quantity/ProductQuantityControl.js +6 -0
  67. package/dist/product-set/product/quantity/ProductQuantityRechargingControl.d.ts.map +1 -1
  68. package/dist/product-set/product/quantity/ProductQuantityRechargingControl.js +4 -1
  69. package/dist/product-set/product/scanRange/ProductScanRangeControl.d.ts +12 -0
  70. package/dist/product-set/product/scanRange/ProductScanRangeControl.d.ts.map +1 -0
  71. package/dist/product-set/product/scanRange/ProductScanRangeControl.js +153 -0
  72. package/dist/product-set/product/scanRange/index.d.ts +2 -0
  73. package/dist/product-set/product/scanRange/index.d.ts.map +1 -0
  74. package/dist/product-set/product-category/ProductCategoryControl.d.ts.map +1 -1
  75. package/dist/product-set/product-category/ProductCategoryControl.js +12 -0
  76. package/dist/product-set/utils/index.d.ts +4 -1
  77. package/dist/product-set/utils/index.d.ts.map +1 -1
  78. package/dist/recurrence-input/RecurrenceEndInput.d.ts.map +1 -1
  79. package/dist/recurrence-input/RecurrenceEndInput.js +3 -0
  80. package/dist/recurring-date-picker-input/RecurrenceEndInput.d.ts.map +1 -1
  81. package/dist/resource/form/components/CapacityControl.d.ts.map +1 -1
  82. package/dist/resource/form/components/CapacityControl.js +3 -0
  83. package/dist/resource/form/components/SortControl.d.ts.map +1 -1
  84. package/dist/resource/form/components/SortControl.js +3 -0
  85. package/dist/sales/booking/results/components/ResultCard.d.ts.map +1 -1
  86. package/dist/sales/booking/results/components/ResultCard.js +0 -2
  87. package/dist/sales/coupon/control/CouponFormControl.d.ts.map +1 -1
  88. package/dist/sales/coupon/control/CouponFormControl.js +21 -0
  89. package/dist/setting/dashboard/DashboardSettingForm.d.ts.map +1 -1
  90. package/dist/setting/dashboard/DashboardSettingForm.js +4 -1
  91. package/dist/setting/index.d.ts +0 -2
  92. package/dist/setting/index.d.ts.map +1 -1
  93. package/dist/sortable-tree/SortableTreeItem.d.ts.map +1 -1
  94. package/dist/static/CurrencyNumberInput.d.ts.map +1 -1
  95. package/dist/static/CurrencyNumberInput.js +3 -0
  96. package/dist/static/form-number-input/FormNumberInput.d.ts.map +1 -1
  97. package/dist/static/form-number-input/FormNumberInput.js +3 -0
  98. package/dist/static/number-input/NumberInput.d.ts.map +1 -1
  99. package/dist/static/number-input/NumberInput.js +3 -0
  100. package/dist/styles/form/CustomCheckbox.scss +31 -0
  101. package/dist/styles/iframe-events/Calendar.scss +1 -1
  102. package/dist/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
  103. package/dist/styles/product-set/ProductSetForm.scss +2 -3
  104. package/dist/styles/ryft-payment-form/RyftPaymentForm.scss +1 -3
  105. package/dist/styles/sales/BookingResults.scss +1 -1
  106. package/dist/zone/form/components/GameDurationControl.d.ts.map +1 -1
  107. package/dist/zone/form/components/GameDurationControl.js +3 -0
  108. package/dist/zone/form/components/SortControl.d.ts.map +1 -1
  109. package/dist/zone/form/components/SortControl.js +3 -0
  110. package/package.json +12 -6
  111. package/src/affiliate/form/AffiliateForm.tsx +1 -0
  112. package/src/auth/Authorizer.tsx +1 -0
  113. package/src/auth/Login/LoginComponent.tsx +1 -1
  114. package/src/auth/Router.tsx +19 -19
  115. package/src/events/edit-event-modal/utils/getDefaultProductSet.ts +1 -1
  116. package/src/events/event-statistic-modal/EventStatisticModal.tsx +3 -1
  117. package/src/events/event-statistic-modal/hooks/useTableData.tsx +2 -1
  118. package/src/events/event-statistic-modal/utils/index.ts +4 -4
  119. package/src/events/event-venue-map/EventVenueMap.tsx +1 -0
  120. package/src/events/event-venue-map/hooks/useCanvasSize.ts +5 -1
  121. package/src/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.tsx +2 -2
  122. package/src/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.tsx +5 -13
  123. package/src/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.tsx +1 -0
  124. package/src/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.tsx +9 -0
  125. package/src/iframe/payment/order-items-table/utils/paymentSummary.tsx +1 -0
  126. package/src/iframe/ryft/utils/ryft-form.ts +6 -5
  127. package/src/index.ts +0 -1
  128. package/src/layout/DropDown.tsx +1 -1
  129. package/src/notification/email-template/control/EmailTemplateControl.tsx +1 -0
  130. package/src/product-set/control/ProductSetControl.tsx +11 -0
  131. package/src/product-set/form/ProductSetForm.tsx +7 -6
  132. package/src/product-set/form/ProductZonesControl.tsx +1 -4
  133. package/src/product-set/form/ProductsControl.tsx +2 -0
  134. package/src/product-set/form/SubProductsControl.tsx +0 -3
  135. package/src/product-set/form/VenueMapsControl.tsx +0 -3
  136. package/src/product-set/form/context.tsx +2 -5
  137. package/src/product-set/product/ProductControl.tsx +18 -13
  138. package/src/product-set/product/advanced-options/AdvancedOptions.tsx +1 -1
  139. package/src/product-set/product/booking-management/ProductBookingManagementControl.tsx +2 -0
  140. package/src/product-set/product/deposit/ProductDepositControl.tsx +1 -0
  141. package/src/product-set/product/duration/ProductDurationControl.tsx +2 -0
  142. package/src/product-set/product/price/ProductPriceControl.tsx +1 -0
  143. package/src/product-set/product/quantity/ProductQuantityConstantControl.tsx +2 -0
  144. package/src/product-set/product/quantity/ProductQuantityControl.tsx +2 -0
  145. package/src/product-set/product/quantity/ProductQuantityRechargingControl.tsx +1 -0
  146. package/src/product-set/product/scanRange/ProductScanRangeControl.stories.ts +45 -0
  147. package/src/product-set/product/scanRange/ProductScanRangeControl.tsx +163 -0
  148. package/src/product-set/product/scanRange/index.ts +1 -0
  149. package/src/product-set/product-category/ProductCategoryControl.tsx +4 -0
  150. package/src/product-set/product-zone/ProductZoneControl.tsx +1 -1
  151. package/src/recurrence-input/RecurrenceEndInput.tsx +1 -0
  152. package/src/recurring-date-picker-input/RecurrenceEndInput.tsx +1 -0
  153. package/src/resource/form/components/CapacityControl.tsx +1 -0
  154. package/src/resource/form/components/SortControl.tsx +1 -0
  155. package/src/sales/booking/results/components/ResultCard.tsx +0 -2
  156. package/src/sales/coupon/control/CouponFormControl.tsx +7 -0
  157. package/src/setting/dashboard/DashboardSettingForm.tsx +1 -0
  158. package/src/setting/index.ts +0 -2
  159. package/src/sortable-tree/SortableTreeItem.tsx +1 -6
  160. package/src/static/CurrencyNumberInput.tsx +1 -0
  161. package/src/static/form-number-input/FormNumberInput.tsx +1 -0
  162. package/src/static/number-input/NumberInput.tsx +1 -0
  163. package/src/styles/form/CustomCheckbox.scss +31 -0
  164. package/src/styles/iframe-events/Calendar.scss +1 -1
  165. package/src/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
  166. package/src/styles/product-set/ProductSetForm.scss +2 -3
  167. package/src/styles/ryft-payment-form/RyftPaymentForm.scss +1 -3
  168. package/src/styles/sales/BookingResults.scss +1 -1
  169. package/src/zone/form/components/GameDurationControl.tsx +1 -0
  170. package/src/zone/form/components/SortControl.tsx +1 -0
  171. package/yarn.lock +148 -178
  172. package/dist/header/BookeditHeader.d.ts +0 -12
  173. package/dist/header/BookeditHeader.d.ts.map +0 -1
  174. package/dist/header/BookeditHeader.js +0 -21
  175. package/dist/header/Header.d.ts +0 -24
  176. package/dist/header/Header.d.ts.map +0 -1
  177. package/dist/header/Header.js +0 -81
  178. package/dist/header/elements/CompanySelector.d.ts +0 -11
  179. package/dist/header/elements/CompanySelector.d.ts.map +0 -1
  180. package/dist/header/elements/CompanySelector.js +0 -36
  181. package/dist/header/elements/index.d.ts +0 -3
  182. package/dist/header/elements/index.d.ts.map +0 -1
  183. package/dist/header/index.d.ts +0 -6
  184. package/dist/header/index.d.ts.map +0 -1
  185. package/dist/setting/admin/AdminSettingForm.d.ts +0 -25
  186. package/dist/setting/admin/AdminSettingForm.d.ts.map +0 -1
  187. package/dist/setting/admin/AdminSettingForm.js +0 -220
  188. package/dist/setting/admin/PaymentFeeForm.d.ts +0 -13
  189. package/dist/setting/admin/PaymentFeeForm.d.ts.map +0 -1
  190. package/dist/setting/admin/PaymentFeeForm.js +0 -424
  191. package/dist/setting/admin/index.d.ts +0 -2
  192. package/dist/setting/admin/index.d.ts.map +0 -1
  193. package/dist/setting/system/SystemSettingForm.d.ts +0 -10
  194. package/dist/setting/system/SystemSettingForm.d.ts.map +0 -1
  195. package/dist/setting/system/SystemSettingForm.js +0 -95
  196. package/dist/setting/system/index.d.ts +0 -2
  197. package/dist/setting/system/index.d.ts.map +0 -1
  198. package/dist/types/currency.d.ts +0 -5
  199. package/dist/types/currency.d.ts.map +0 -1
  200. package/src/header/BookeditHeader.tsx +0 -34
  201. package/src/header/Header.stories.tsx +0 -72
  202. package/src/header/Header.tsx +0 -107
  203. package/src/header/elements/CompanySelector.tsx +0 -47
  204. package/src/header/elements/Elements.stories.tsx +0 -33
  205. package/src/header/elements/index.ts +0 -3
  206. package/src/header/index.ts +0 -7
  207. package/src/setting/admin/AdminSetting.stories.tsx +0 -52
  208. package/src/setting/admin/AdminSettingForm.tsx +0 -196
  209. package/src/setting/admin/PaymentFeeForm.tsx +0 -304
  210. package/src/setting/admin/index.ts +0 -1
  211. package/src/setting/system/SystemSetting.stories.tsx +0 -26
  212. package/src/setting/system/SystemSettingForm.tsx +0 -62
  213. package/src/setting/system/index.ts +0 -1
  214. package/src/types/currency.ts +0 -4
@@ -0,0 +1,163 @@
1
+ import HookFormService from '@licklist/plugins/dist/services/Form/HookFormService'
2
+ import {
3
+ FieldNamePrefixPath,
4
+ FormValues,
5
+ } from '@licklist/plugins/dist/types/services/Form/hook-form-service'
6
+ import { useId } from '@react-aria/utils'
7
+ import { Form } from 'react-bootstrap'
8
+ import Col from 'react-bootstrap/Col'
9
+ import InputGroup from 'react-bootstrap/InputGroup'
10
+ import Row from 'react-bootstrap/Row'
11
+ import { Controller, Path, useFormContext } from 'react-hook-form'
12
+ import { useTranslation } from 'react-i18next'
13
+
14
+ import { ReactComponent as IncrementIcon } from '../../../assets/dashboard/increment.svg'
15
+
16
+ export interface ProductScanRangeControlValues extends FormValues {
17
+ scanRangeStart: number
18
+ scanRangeEnd: number
19
+ }
20
+
21
+ export interface ProductScanRangeControlProps<T> extends FieldNamePrefixPath<T> {
22
+ isLoading: boolean
23
+ onFocus?: (e: React.SyntheticEvent) => void
24
+ isOverrides?: boolean
25
+ }
26
+
27
+ export function ProductScanRangeControl<T extends FormValues>(
28
+ props: ProductScanRangeControlProps<T>,
29
+ ) {
30
+ const { isLoading = false, fieldNamePrefix, onFocus, isOverrides } = props
31
+ const {
32
+ control,
33
+ formState: { errors },
34
+ setValue,
35
+ watch
36
+ } = useFormContext<T>()
37
+ const { t } = useTranslation('Design')
38
+
39
+ const scanRangeStartId = useId()
40
+ const scanRangeEndId = useId()
41
+
42
+ const scanRangeStartValue = watch(`${fieldNamePrefix}.scanRangeStart` as Path<T>)
43
+ const scanRangeEndValue = watch(`${fieldNamePrefix}.scanRangeEnd` as Path<T>)
44
+
45
+ return (
46
+ <>
47
+ <Form.Label>{t('scanningRange')}</Form.Label>
48
+ <Row>
49
+ <Col xs={12} sm={6}>
50
+ <Form.Group controlId={scanRangeStartId}>
51
+ <Form.Label>{t('beforeEventStart')}</Form.Label>
52
+
53
+ <InputGroup hasValidation>
54
+ <InputGroup.Prepend
55
+ className='arrow-up-btn'
56
+ onClick={() => {
57
+ setValue(
58
+ `${fieldNamePrefix}.scanRangeStart` as Path<T>,
59
+ (Number(scanRangeStartValue) + 1) as any,
60
+ )
61
+ }}
62
+ >
63
+ <InputGroup.Text className='py-0 px-3'>
64
+ <IncrementIcon />
65
+ </InputGroup.Text>
66
+ </InputGroup.Prepend>
67
+
68
+ <Controller
69
+ render={({ field: { value, onChange, ref } }) => (
70
+ <Form.Control
71
+ ref={ref}
72
+ type='number'
73
+ min={0}
74
+ step={1}
75
+ onWheel={(event) => event.currentTarget.blur()}
76
+ value={value as string}
77
+ onChange={onChange}
78
+ onFocus={onFocus}
79
+ disabled={isLoading || isOverrides}
80
+ />
81
+ )}
82
+ control={control}
83
+ name={`${fieldNamePrefix}.scanRangeStart` as Path<T>}
84
+ rules={{
85
+ min: {
86
+ value: 0,
87
+ message: t('Validation:fieldMinNumber', {
88
+ attribute: t('scanRangeStart'),
89
+ min: 0,
90
+ }) as string,
91
+ },
92
+ }}
93
+ />
94
+
95
+ <Form.Control.Feedback type='invalid'>
96
+ {HookFormService.getErrors<T>(
97
+ `${fieldNamePrefix}.scanRangeStart` as Path<T>,
98
+ errors,
99
+ )}
100
+ </Form.Control.Feedback>
101
+ </InputGroup>
102
+ </Form.Group>
103
+ </Col>
104
+
105
+ <Col xs={12} sm={6}>
106
+ <Form.Group controlId={scanRangeEndId}>
107
+ <Form.Label>{t('AfterEventStart')}</Form.Label>
108
+
109
+ <InputGroup hasValidation>
110
+ <InputGroup.Prepend
111
+ className='arrow-up-btn'
112
+ onClick={() => {
113
+ setValue(
114
+ `${fieldNamePrefix}.scanRangeEnd` as Path<T>,
115
+ (Number(scanRangeEndValue) + 1) as any,
116
+ )
117
+ }}
118
+ >
119
+ <InputGroup.Text className='py-0 px-3'>
120
+ <IncrementIcon />
121
+ </InputGroup.Text>
122
+ </InputGroup.Prepend>
123
+
124
+ <Controller
125
+ render={({ field: { value, onChange, ref } }) => (
126
+ <Form.Control
127
+ ref={ref}
128
+ type='number'
129
+ min={0}
130
+ step={1}
131
+ onWheel={(event) => event.currentTarget.blur()}
132
+ value={value && (value as string)}
133
+ onFocus={onFocus}
134
+ onChange={onChange}
135
+ disabled={isLoading || isOverrides}
136
+ />
137
+ )}
138
+ control={control}
139
+ name={`${fieldNamePrefix}.scanRangeEnd` as Path<T>}
140
+ rules={{
141
+ min: {
142
+ value: 0,
143
+ message: t('Validation:fieldMinNumber', {
144
+ attribute: t('scanRangeEnd'),
145
+ min: 0,
146
+ }) as string,
147
+ },
148
+ }}
149
+ />
150
+
151
+ <Form.Control.Feedback type='invalid'>
152
+ {HookFormService.getErrors<T>(
153
+ `${fieldNamePrefix}.scanRangeEnd` as Path<T>,
154
+ errors,
155
+ )}
156
+ </Form.Control.Feedback>
157
+ </InputGroup>
158
+ </Form.Group>
159
+ </Col>
160
+ </Row>
161
+ </>
162
+ )
163
+ }
@@ -0,0 +1 @@
1
+ export * from './ProductScanRangeControl'
@@ -221,6 +221,7 @@ export function ProductCategoryControl({
221
221
  step={1}
222
222
  value={value === null ? '' : value}
223
223
  onChange={onChange}
224
+ onWheel={(event) => event.currentTarget.blur()}
224
225
  isInvalid={HookFormService.isInvalid<ProductSetFormValues>(
225
226
  `${fieldNamePrefix}.minSubItems` as const,
226
227
  errors,
@@ -293,6 +294,7 @@ export function ProductCategoryControl({
293
294
  name={name}
294
295
  value={value === null ? '' : value}
295
296
  onChange={onChange}
297
+ onWheel={(event) => event.currentTarget.blur()}
296
298
  isInvalid={HookFormService.isInvalid<ProductSetFormValues>(
297
299
  `${fieldNamePrefix}.maxSubItems` as const,
298
300
  errors,
@@ -353,6 +355,7 @@ export function ProductCategoryControl({
353
355
  min={0}
354
356
  step={1}
355
357
  type='number'
358
+ onWheel={(event) => event.currentTarget.blur()}
356
359
  disabled={isOverride}
357
360
  isInvalid={HookFormService.isInvalid<ProductSetFormValues>(
358
361
  `${fieldNamePrefix}.overallQuantity`,
@@ -543,6 +546,7 @@ export function ProductCategoryControl({
543
546
  step={1}
544
547
  value={value}
545
548
  onChange={onChange}
549
+ onWheel={(event) => event.currentTarget.blur()}
546
550
  isInvalid={HookFormService.isInvalid<ProductSetFormValues>(
547
551
  `${fieldNamePrefix}.remainderExpireAfter` as const,
548
552
  errors,
@@ -1,4 +1,4 @@
1
- import React, { useContext, useEffect, useMemo } from 'react'
1
+ import { useContext, useEffect, useMemo } from 'react'
2
2
  import { Col, Form, Row } from 'react-bootstrap'
3
3
  import {
4
4
  ArrayPath,
@@ -109,6 +109,7 @@ function RecurrenceEndInput({
109
109
  type='number'
110
110
  min={1}
111
111
  max={500}
112
+ onWheel={(event) => event.currentTarget.blur()}
112
113
  disabled={disabled || !count || count === 500}
113
114
  aria-label='Occurrence count'
114
115
  value={count ?? defaultOccurrences[frequency]}
@@ -91,6 +91,7 @@ function RecurrenceEndInput({
91
91
  type='number'
92
92
  min={1}
93
93
  max={500}
94
+ onWheel={(event) => event.currentTarget.blur()}
94
95
  disabled={disabled || !count || count === 500}
95
96
  aria-label='Occurrence count'
96
97
  value={count ?? defaultOccurrences[frequency]}
@@ -27,6 +27,7 @@ export const CapacityControl = ({ isLoading }: CapacityControlProps) => {
27
27
  required: true,
28
28
  min: 1,
29
29
  })}
30
+ onWheel={(event) => event.currentTarget.blur()}
30
31
  placeholder={t('Design:capacity')}
31
32
  isInvalid={Boolean(errors.capacity)}
32
33
  disabled={isLoading}
@@ -27,6 +27,7 @@ export const SortControl = ({ isLoading }: SortControlProps) => {
27
27
  required: false,
28
28
  min: 1,
29
29
  })}
30
+ onWheel={(event) => event.currentTarget.blur()}
30
31
  placeholder={t('Design:ordering')}
31
32
  isInvalid={Boolean(errors.sort)}
32
33
  disabled={isLoading}
@@ -20,8 +20,6 @@ export type ResultCardProps = {
20
20
  onCardClick?: (id: number) => void
21
21
  }
22
22
 
23
- // @TODO integrate when API will be available
24
- // activity and staff keys
25
23
  export const ResultCard = ({
26
24
  order,
27
25
  className,
@@ -179,6 +179,7 @@ export const CouponFormControl = ({
179
179
  <Form.Label>{t('Design:discount')}</Form.Label>
180
180
  <Form.Control
181
181
  type='number'
182
+ onWheel={(event) => event.currentTarget.blur()}
182
183
  isInvalid={errors.discount !== undefined}
183
184
  {...register('discount', {
184
185
  required: t('Validation:fieldRequired', {
@@ -316,6 +317,7 @@ export const CouponFormControl = ({
316
317
  <Form.Control
317
318
  {...register('totalCoupons')}
318
319
  type='number'
320
+ onWheel={(event) => event.currentTarget.blur()}
319
321
  isInvalid={errors.totalCoupons !== undefined}
320
322
  disabled={isLoading}
321
323
  />
@@ -330,6 +332,7 @@ export const CouponFormControl = ({
330
332
  <Form.Control
331
333
  type='number'
332
334
  {...register('usesPerUser')}
335
+ onWheel={(event) => event.currentTarget.blur()}
333
336
  disabled={isLoading}
334
337
  />
335
338
  </Form.Group>
@@ -342,6 +345,7 @@ export const CouponFormControl = ({
342
345
  <Form.Control
343
346
  type='number'
344
347
  {...register('useAgain')}
348
+ onWheel={(event) => event.currentTarget.blur()}
345
349
  disabled={isLoading}
346
350
  />
347
351
  <Form.Text className='text-muted'>
@@ -355,6 +359,7 @@ export const CouponFormControl = ({
355
359
  <Form.Control
356
360
  type='number'
357
361
  {...register('usesPerUserDay')}
362
+ onWheel={(event) => event.currentTarget.blur()}
358
363
  disabled={isLoading}
359
364
  />
360
365
  <Form.Text className='text-muted'>
@@ -370,6 +375,7 @@ export const CouponFormControl = ({
370
375
  <Form.Control
371
376
  type='number'
372
377
  {...register('minAmount')}
378
+ onWheel={(event) => event.currentTarget.blur()}
373
379
  disabled={isLoading}
374
380
  />
375
381
  <Form.Text className='text-muted'>
@@ -383,6 +389,7 @@ export const CouponFormControl = ({
383
389
  <Form.Control
384
390
  type='number'
385
391
  {...register('maxAmount')}
392
+ onWheel={(event) => event.currentTarget.blur()}
386
393
  disabled={isLoading}
387
394
  />
388
395
  <Form.Text className='text-muted'>
@@ -178,6 +178,7 @@ export const DashboardSettingForm = ({
178
178
  <Form.Label>{t('metaPixelId')}</Form.Label>
179
179
  <Form.Control
180
180
  type='number'
181
+ onWheel={(event) => event.currentTarget.blur()}
181
182
  {...register('metaPixelId', {
182
183
  minLength: {
183
184
  value: 15,
@@ -1,3 +1 @@
1
- export * from './system'
2
- export * from './admin'
3
1
  export * from './dashboard'
@@ -1,9 +1,4 @@
1
- import {
2
- ReactNode,
3
- useCallback,
4
- useEffect,
5
- useState,
6
- } from 'react'
1
+ import { ReactNode, useCallback, useEffect, useState } from 'react'
7
2
  import { DndContext, useDraggable } from '@dnd-kit/core'
8
3
  import {
9
4
  SortableContext,
@@ -45,6 +45,7 @@ export const CurrencyNumberInput = forwardRef<
45
45
  disabled={disabled}
46
46
  value={value}
47
47
  onChange={onChange}
48
+ onWheel={(event) => event.currentTarget.blur()}
48
49
  ref={ref}
49
50
  {...props}
50
51
  />
@@ -75,6 +75,7 @@ export const FormNumberInput = ({
75
75
  type='number'
76
76
  step={step}
77
77
  disabled={disabled}
78
+ onWheel={(event) => event.currentTarget.blur()}
78
79
  isInvalid={HookFormService.isInvalid(fieldName, errors)}
79
80
  {...field}
80
81
  onChange={(event) => {
@@ -49,6 +49,7 @@ export function NumberInput({
49
49
  <div className={inputWrapperClasses}>
50
50
  <FormControl
51
51
  type='number'
52
+ onWheel={(event) => event.currentTarget.blur()}
52
53
  onChange={(e) => onChange(Number(e.target.value))}
53
54
  value={value}
54
55
  min={min}
@@ -28,3 +28,34 @@
28
28
  z-index: 2;
29
29
  }
30
30
  }
31
+
32
+ .checkbox-second-column {
33
+ margin-top: 1rem;
34
+ display: flex;
35
+ z-index: 2;
36
+ align-items: center;
37
+
38
+ .custom-checkbox .custom-control-label::before {
39
+ width: 1.5rem;
40
+ height: 1.5rem;
41
+ border-radius: 0.5rem;
42
+ border: 2px solid #0e8ce2;
43
+ margin-top: -0.3rem;
44
+ }
45
+ .custom-checkbox .custom-control-label::after {
46
+ width: 1.5rem;
47
+ height: 1.5rem;
48
+ top: 0;
49
+ }
50
+
51
+ .custom-control-label {
52
+ padding-left: 0.5rem;
53
+ font-weight: 400;
54
+ font-size: 1rem;
55
+ min-height: 3rem;
56
+ }
57
+
58
+ .checkbox-input {
59
+ z-index: 2;
60
+ }
61
+ }
@@ -74,7 +74,7 @@
74
74
  .calendar-dates-wrapper {
75
75
  .calendar-dates {
76
76
  display: grid;
77
- grid-template-columns: repeat(7, 1fr);
77
+ grid-template-columns: repeat(7, auto);
78
78
  grid-gap: 0.5rem 1rem;
79
79
  overflow-x: auto;
80
80
  }
@@ -15,7 +15,7 @@ body[bkdt-scrollable='false'] .bkdt-mask {
15
15
  left: 0;
16
16
  width: 100%;
17
17
  height: 100%;
18
- z-index: 1000000;
18
+ z-index: 2147483646;
19
19
  background-color: rgba(0, 0, 0, 0.5);
20
20
  display: none;
21
21
  }
@@ -24,7 +24,7 @@ body[bkdt-scrollable='false'] .bkdt-mask {
24
24
  position: fixed;
25
25
  top: 0;
26
26
  left: 0;
27
- z-index: 1000001;
27
+ z-index: 2147483647;
28
28
  display: none;
29
29
  width: 100%;
30
30
  height: 100%;
@@ -1,5 +1,4 @@
1
1
  .product-set-form {
2
-
3
2
  input,
4
3
  textarea,
5
4
  select,
@@ -211,8 +210,8 @@
211
210
 
212
211
  .sortable-tree-item-toggle {
213
212
  .product-zone-badge {
214
- background-color: #EFE9F5;
215
- color: #84269B;
213
+ background-color: #efe9f5;
214
+ color: #84269b;
216
215
  font-size: 0.875rem;
217
216
  font-weight: 600;
218
217
  }
@@ -102,7 +102,6 @@
102
102
  }
103
103
 
104
104
  .ryft-payment-form {
105
-
106
105
  .form-disable-box {
107
106
  display: none;
108
107
  position: absolute;
@@ -184,7 +183,6 @@
184
183
  }
185
184
 
186
185
  @include media-breakpoint-up(md) {
187
-
188
186
  .ryft-payment-form,
189
187
  .form-disable-box {
190
188
  height: 50%;
@@ -213,4 +211,4 @@
213
211
  .divider {
214
212
  display: none !important;
215
213
  }
216
- }
214
+ }
@@ -5,7 +5,7 @@
5
5
  flex-wrap: wrap;
6
6
 
7
7
  .result-card {
8
- height: 14.25rem;
8
+ height: 14rem;
9
9
  border: 1px solid $gray-400;
10
10
  max-width: calc(50% - 0.75rem);
11
11
  flex: 0 0 calc(50% - 0.75rem);
@@ -29,6 +29,7 @@ export const GameDurationControl = ({
29
29
  required: false,
30
30
  min: 1,
31
31
  })}
32
+ onWheel={(event) => event.currentTarget.blur()}
32
33
  placeholder={t('Design:duration')}
33
34
  isInvalid={Boolean(errors.defaultDuration)}
34
35
  disabled={isLoading}
@@ -27,6 +27,7 @@ export const SortControl = ({ isLoading }: SortControlProps) => {
27
27
  required: false,
28
28
  min: 1,
29
29
  })}
30
+ onWheel={(event) => event.currentTarget.blur()}
30
31
  placeholder={t('Design:ordering')}
31
32
  isInvalid={Boolean(errors.sort)}
32
33
  disabled={isLoading}