@licklist/design 0.66.8-dev.2 → 0.66.9-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/dist/affiliate/card/AffiliateCard.js +9 -7
  2. package/dist/auth/AccessDenied/AccessDenied.js +6 -3
  3. package/dist/auth/Social/SocialFormComponent.d.ts.map +1 -1
  4. package/dist/auth/Social/SocialFormComponent.js +1 -0
  5. package/dist/collapsible-input-group/CollapsibleInputGroup.d.ts.map +1 -1
  6. package/dist/collapsible-input-group/CollapsibleInputGroup.js +5 -5
  7. package/dist/custom-fields/constants.d.ts +2 -2
  8. package/dist/custom-fields/constants.d.ts.map +1 -1
  9. package/dist/custom-fields/constants.js +4 -8
  10. package/dist/custom-fields/field/FieldItem.d.ts +1 -2
  11. package/dist/custom-fields/field/FieldItem.d.ts.map +1 -1
  12. package/dist/custom-fields/field/FieldItem.js +6 -1
  13. package/dist/custom-fields/forms/DropdownForm.js +9 -5
  14. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.js +2 -2
  15. package/dist/events/edit-recurrent-event-modal/EditRecurrentEventModal.js +4 -3
  16. package/dist/events/event-card/EventCard.d.ts.map +1 -1
  17. package/dist/events/event-card/EventCard.js +16 -6
  18. package/dist/events/event-statistic-modal/EventStatisticModal.js +5 -3
  19. package/dist/events/event-venue-map/components/ZoomButtons/ZoomButtons.js +6 -3
  20. package/dist/file-upload/FilePreview.js +11 -6
  21. package/dist/help/popover/HelpPopover.js +6 -3
  22. package/dist/iframe/event/event-booking-products/components/AccordionItem/AccordionItem.d.ts.map +1 -1
  23. package/dist/iframe/event/event-booking-products/components/AccordionItem/AccordionItem.js +9 -6
  24. package/dist/iframe/event/event-navigation-footer/EventNavigationFooter.d.ts.map +1 -1
  25. package/dist/iframe/event/event-navigation-footer/EventNavigationFooter.js +11 -7
  26. package/dist/iframe/order-process/components/BookingSummary/components/ToggleHeader/ToggleHeader.js +8 -9
  27. package/dist/iframe/order-process/components/CalendarStepsForm/components/CategoryProductModal.js +5 -2
  28. package/dist/iframe/order-process/components/ErrorModal/ErrorModal.js +5 -2
  29. package/dist/iframe/order-process/components/NavigationFooter/NavigationFooter.js +8 -3
  30. package/dist/iframe/order-process/components/PaymentCard/PaymentCard.js +5 -2
  31. package/dist/iframe/order-process/components/Timer/Timer.js +5 -2
  32. package/dist/iframe/payment/order-items-table/OrderItemsTable.js +2 -1
  33. package/dist/iframe/payment/payment-form/PaymentForm.js +2 -1
  34. package/dist/iframe/payment/payment-page/PaymentPage.js +1 -1
  35. package/dist/iframe/payment/payment-page/PaymentTimer.js +1 -1
  36. package/dist/iframe/payment/payment-status-page/PaymentStatusPage.js +1 -1
  37. package/dist/index.js +1 -1
  38. package/dist/modals/confirmation/ConfirmModal.js +4 -3
  39. package/dist/modals/fullscreen/FullscreenModal.js +4 -3
  40. package/dist/notification/email-template/card/EmailTemplateCard.js +8 -3
  41. package/dist/notification/sms-template/card/SmsTemplateCard.js +8 -3
  42. package/dist/product-set/card/ProductSetCard.d.ts.map +1 -1
  43. package/dist/product-set/card/ProductSetCard.js +9 -7
  44. package/dist/product-set/control/DateAndRecurrenceInput.d.ts.map +1 -1
  45. package/dist/product-set/control/DateAndRecurrenceInput.js +5 -3
  46. package/dist/product-set/control/DateInput.js +5 -3
  47. package/dist/product-set/control/ProductSetRecurrenceControl.d.ts.map +1 -1
  48. package/dist/product-set/control/ProductSetRecurrenceControl.js +8 -5
  49. package/dist/product-set/control/ProductSetRecurrenceOverridesControl.d.ts.map +1 -1
  50. package/dist/product-set/control/ProductSetRecurrenceOverridesControl.js +8 -5
  51. package/dist/product-set/control/TutorialGifCard.d.ts.map +1 -1
  52. package/dist/product-set/control/TutorialGifCard.js +10 -6
  53. package/dist/product-set/elements/DeleteFieldButton.d.ts.map +1 -1
  54. package/dist/product-set/elements/DeleteFieldButton.js +4 -3
  55. package/dist/product-set/form/MobileFooter.d.ts.map +1 -1
  56. package/dist/product-set/form/ProductsControl.js +2 -2
  57. package/dist/product-set/form/SelectCategoryModal.d.ts.map +1 -1
  58. package/dist/product-set/form/SelectCategoryModal.js +23 -30
  59. package/dist/product-set/form/SubProductsControl.js +1 -1
  60. package/dist/product-set/item/CreateProductSetItem.d.ts.map +1 -1
  61. package/dist/product-set/item/CreateProductSetItem.js +6 -3
  62. package/dist/product-set/popover/ProductSetPopover.js +5 -3
  63. package/dist/product-set/product/ProductControl.d.ts.map +1 -1
  64. package/dist/product-set/product/ProductControl.js +4 -3
  65. package/dist/product-set/product/booking-management/ProductBookingManagementControl.js +4 -3
  66. package/dist/product-set/product/deposit/ProductDepositControl.js +4 -3
  67. package/dist/product-set/product/price/ProductPriceControl.js +4 -3
  68. package/dist/report/card/ReportCard.d.ts +2 -1
  69. package/dist/report/card/ReportCard.d.ts.map +1 -1
  70. package/dist/report/card/ReportCard.js +16 -6
  71. package/dist/sales/booking/results/components/ResultCard.js +5 -4
  72. package/dist/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.d.ts.map +1 -1
  73. package/dist/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.js +6 -3
  74. package/dist/sales/modals/payment-modal/PaymentModal.js +4 -3
  75. package/dist/sales/modals/refund-modal/RefundModal.js +4 -3
  76. package/dist/sales/notes/NotesTable.d.ts.map +1 -1
  77. package/dist/sales/notes/NotesTable.js +6 -4
  78. package/dist/sales/notes/NotesTableRow.js +9 -7
  79. package/dist/setting/admin/AdminSettingForm.d.ts.map +1 -1
  80. package/dist/setting/admin/AdminSettingForm.js +6 -3
  81. package/dist/setting/admin/PaymentFeeForm.d.ts.map +1 -1
  82. package/dist/setting/admin/PaymentFeeForm.js +26 -11
  83. package/dist/setting/dashboard/FinancialDataForm.d.ts.map +1 -1
  84. package/dist/setting/dashboard/ProviderSettingForm.d.ts.map +1 -1
  85. package/dist/setting/dashboard/ProviderSettingForm.js +6 -3
  86. package/dist/setting/dashboard/snippet-templates/card/SnippetTemplateCard.js +5 -2
  87. package/dist/setting/dashboard/snippets/card/SnippetCard.js +9 -7
  88. package/dist/sidebar/elements/ReturnBack.js +5 -2
  89. package/dist/slide-curtain/SlideCurtain.d.ts.map +1 -1
  90. package/dist/slide-curtain/SlideCurtain.js +4 -3
  91. package/dist/snippet/snippet-template/preview/Preview.js +1 -1
  92. package/dist/snippet/snippet-template/settings/SettingButton.js +6 -3
  93. package/dist/sortable-list/CreateSortableListItem.d.ts.map +1 -1
  94. package/dist/sortable-list/CreateSortableListItem.js +6 -3
  95. package/dist/sortable-tree/SortableTreeItem.d.ts.map +1 -1
  96. package/dist/sortable-tree/SortableTreeItem.js +10 -6
  97. package/dist/static/Icon.d.ts +13 -0
  98. package/dist/static/Icon.d.ts.map +1 -0
  99. package/dist/static/Icon.js +22 -0
  100. package/dist/static/RestrictedAccess.js +4 -3
  101. package/dist/static/SocialButton.d.ts +1 -0
  102. package/dist/static/SocialButton.d.ts.map +1 -1
  103. package/dist/static/SocialButton.js +10 -7
  104. package/dist/static/UserBadge.d.ts.map +1 -1
  105. package/dist/static/date-range-input/DateRangeInput.d.ts.map +1 -1
  106. package/dist/static/date-range-input/DateRangeInput.js +5 -3
  107. package/dist/static/index.d.ts +1 -0
  108. package/dist/static/index.d.ts.map +1 -1
  109. package/dist/static/index.js +1 -1
  110. package/dist/static/number-input/NumberInput.js +7 -5
  111. package/dist/striped-static-table/StripedStaticTable.js +2 -1
  112. package/dist/table/MenuButton.d.ts +3 -3
  113. package/dist/table/MenuButton.d.ts.map +1 -1
  114. package/dist/table/MenuButton.js +8 -3
  115. package/dist/table/PaginationHelperComponent.d.ts.map +1 -1
  116. package/dist/table/PaginationHelperComponent.js +8 -5
  117. package/dist/tiptap-editor/TipTapMenu/TipTapMenu.d.ts.map +1 -1
  118. package/dist/tiptap-editor/TipTapMenu/TipTapMenu.js +16 -17
  119. package/dist/tiptap-editor/TipTapMenu/components/TipTapMenuItem.d.ts +3 -3
  120. package/dist/tiptap-editor/TipTapMenu/components/TipTapMenuItem.d.ts.map +1 -1
  121. package/dist/tiptap-editor/TipTapMenu/components/TipTapMenuItem.js +8 -2
  122. package/dist/venue-map-sets/card/VenueMapSetCard.js +9 -7
  123. package/dist/venue-map-sets/form/components/VenueMapControl.d.ts.map +1 -1
  124. package/dist/venue-map-sets/form/components/VenueMapControl.js +8 -5
  125. package/dist/venue-map-sets/form/components/VenueMapModal.js +4 -3
  126. package/dist/zone/card/ZoneCard.js +9 -7
  127. package/dist/zone/form/components/ZoneRecurrenceControl.d.ts.map +1 -1
  128. package/dist/zone/form/components/ZoneRecurrenceControl.js +8 -5
  129. package/dist/zone/form/components/ZoneRecurrencesControl.d.ts.map +1 -1
  130. package/dist/zone/form/components/ZoneRecurrencesControl.js +5 -3
  131. package/package.json +5 -4
  132. package/src/affiliate/card/AffiliateCard.tsx +4 -4
  133. package/src/auth/AccessDenied/AccessDenied.tsx +2 -2
  134. package/src/auth/Social/SocialFormComponent.tsx +1 -0
  135. package/src/collapsible-input-group/CollapsibleInputGroup.tsx +4 -7
  136. package/src/custom-fields/{constants.tsx → constants.ts} +2 -3
  137. package/src/custom-fields/field/FieldItem.tsx +3 -4
  138. package/src/custom-fields/forms/DropdownForm.tsx +3 -3
  139. package/src/events/edit-recurrent-event-modal/EditRecurrentEventModal.tsx +2 -2
  140. package/src/events/event-card/EventCard.tsx +6 -13
  141. package/src/events/event-statistic-modal/EventStatisticModal.tsx +2 -2
  142. package/src/events/event-venue-map/components/ZoomButtons/ZoomButtons.tsx +2 -2
  143. package/src/file-upload/FilePreview.tsx +8 -4
  144. package/src/header/Header.stories.tsx +2 -1
  145. package/src/help/popover/HelpPopover.tsx +2 -2
  146. package/src/iframe/event/event-booking-products/components/AccordionItem/AccordionItem.tsx +9 -4
  147. package/src/iframe/event/event-navigation-footer/EventNavigationFooter.tsx +4 -5
  148. package/src/iframe/order-process/components/BookingSummary/components/ToggleHeader/ToggleHeader.tsx +15 -11
  149. package/src/iframe/order-process/components/CalendarStepsForm/components/CategoryProductModal.tsx +2 -2
  150. package/src/iframe/order-process/components/ErrorModal/ErrorModal.tsx +2 -2
  151. package/src/iframe/order-process/components/NavigationFooter/NavigationFooter.tsx +3 -3
  152. package/src/iframe/order-process/components/PaymentCard/PaymentCard.tsx +2 -2
  153. package/src/iframe/order-process/components/Timer/Timer.tsx +2 -2
  154. package/src/image-radio-input/ImageRadioInput.stories.tsx +3 -3
  155. package/src/modals/confirmation/ConfirmModal.tsx +2 -2
  156. package/src/modals/fullscreen/FullscreenModal.tsx +2 -2
  157. package/src/notification/email-template/card/EmailTemplateCard.tsx +3 -3
  158. package/src/notification/sms-template/card/SmsTemplateCard.tsx +3 -3
  159. package/src/product-set/card/ProductSetCard.tsx +5 -4
  160. package/src/product-set/control/DateAndRecurrenceInput.tsx +4 -3
  161. package/src/product-set/control/DateInput.tsx +4 -4
  162. package/src/product-set/control/ProductSetRecurrenceControl.tsx +7 -6
  163. package/src/product-set/control/ProductSetRecurrenceOverridesControl.tsx +8 -5
  164. package/src/product-set/control/TutorialGifCard.tsx +12 -5
  165. package/src/product-set/elements/DeleteFieldButton.tsx +2 -2
  166. package/src/product-set/form/MobileFooter.tsx +36 -6
  167. package/src/product-set/form/ProductSetForm.tsx +1 -1
  168. package/src/product-set/form/SelectCategoryModal.tsx +19 -24
  169. package/src/product-set/item/CreateProductSetItem.tsx +7 -2
  170. package/src/product-set/popover/ProductSetPopover.tsx +2 -2
  171. package/src/product-set/product/ProductControl.tsx +5 -2
  172. package/src/product-set/product/booking-management/ProductBookingManagementControl.tsx +2 -2
  173. package/src/product-set/product/deposit/ProductDepositControl.tsx +2 -2
  174. package/src/product-set/product/price/ProductPriceControl.tsx +2 -2
  175. package/src/report/card/ReportCard.tsx +10 -0
  176. package/src/sales/booking/results/components/ResultCard.tsx +2 -2
  177. package/src/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.tsx +9 -3
  178. package/src/sales/modals/payment-modal/PaymentModal.tsx +2 -2
  179. package/src/sales/modals/refund-modal/RefundModal.tsx +2 -2
  180. package/src/sales/notes/NotesTable.tsx +2 -2
  181. package/src/sales/notes/NotesTableRow.tsx +4 -4
  182. package/src/setting/admin/AdminSettingForm.tsx +7 -2
  183. package/src/setting/admin/PaymentFeeForm.tsx +32 -7
  184. package/src/setting/dashboard/FinancialDataForm.tsx +19 -4
  185. package/src/setting/dashboard/ProviderSettingForm.tsx +7 -2
  186. package/src/setting/dashboard/components/IpInput.tsx +2 -2
  187. package/src/setting/dashboard/snippet-templates/card/SnippetTemplateCard.tsx +2 -2
  188. package/src/setting/dashboard/snippets/card/SnippetCard.tsx +4 -4
  189. package/src/sidebar/elements/ReturnBack.tsx +2 -2
  190. package/src/slide-curtain/SlideCurtain.tsx +6 -2
  191. package/src/snippet/snippet-template/settings/SettingButton.tsx +2 -2
  192. package/src/sortable-list/CreateSortableListItem.tsx +7 -2
  193. package/src/sortable-tree/SortableTreeItem.tsx +5 -4
  194. package/src/static/Icon.tsx +37 -0
  195. package/src/static/RestrictedAccess.tsx +2 -2
  196. package/src/static/SocialButton.tsx +5 -4
  197. package/src/static/Static.stories.tsx +2 -2
  198. package/src/static/UserBadge.tsx +6 -2
  199. package/src/static/date-range-input/DateRangeInput.tsx +6 -2
  200. package/src/static/index.ts +1 -0
  201. package/src/static/number-input/NumberInput.tsx +3 -3
  202. package/src/table/MenuButton.tsx +8 -4
  203. package/src/table/PaginationHelperComponent.tsx +4 -3
  204. package/src/tiptap-editor/TipTapMenu/TipTapMenu.tsx +16 -24
  205. package/src/tiptap-editor/TipTapMenu/components/TipTapMenuItem.tsx +7 -4
  206. package/src/venue-map-sets/card/VenueMapSetCard.tsx +4 -4
  207. package/src/venue-map-sets/form/components/VenueMapControl.tsx +8 -3
  208. package/src/venue-map-sets/form/components/VenueMapModal.tsx +2 -2
  209. package/src/zone/card/ZoneCard.tsx +4 -4
  210. package/src/zone/form/components/ZoneRecurrenceControl.tsx +11 -3
  211. package/src/zone/form/components/ZoneRecurrencesControl.tsx +6 -2
  212. package/yarn.lock +127 -114
@@ -16,8 +16,8 @@ import {
16
16
  } from "@dnd-kit/sortable";
17
17
 
18
18
  import { restrictToVerticalAxis } from "@dnd-kit/modifiers";
19
- import { FaPlusCircle } from "react-icons/fa";
20
19
  import { CONFIRM_MODAL_ACTIONS } from "../../modals/confirmation/ConfirmModal";
20
+ import { Icon } from "../../static";
21
21
  import {
22
22
  RecurringDatePickerInput,
23
23
  RecurringDatePickerInputValues,
@@ -287,8 +287,9 @@ export const DateAndRecurrenceInput = ({
287
287
  onClick={handleOnAdd}
288
288
  onKeyDown={handleOnAdd}
289
289
  >
290
- <FaPlusCircle
291
- size={16}
290
+ <Icon
291
+ type="plus-circle"
292
+ height="1rem"
292
293
  className="product-set-recurrence-icon-add mr-2"
293
294
  />
294
295
  {t("addDates")}
@@ -11,9 +11,9 @@ import { DateTime } from "luxon";
11
11
  import RRule, { Frequency } from "rrule";
12
12
  import { WorkHour } from "@licklist/core/dist/DataMapper/Provider/WorkHourDataMapper";
13
13
 
14
- import { FaPlusCircle } from "react-icons/fa";
15
14
  import { DatePickerInput } from "../../recurring-date-picker-input/DatePickerInput";
16
15
  import { CONFIRM_MODAL_ACTIONS } from "../../modals/confirmation/ConfirmModal";
16
+ import { Icon } from "../../static";
17
17
 
18
18
  import {
19
19
  AvailableTimesControl,
@@ -260,11 +260,11 @@ export const DateInput = ({
260
260
  onClick={handleOnAdd}
261
261
  onKeyDown={handleOnAdd}
262
262
  >
263
- <FaPlusCircle
264
- size={16}
263
+ <Icon
264
+ type="plus-circle"
265
+ height="1rem"
265
266
  className="product-set-recurrence-icon-add mr-2"
266
267
  />
267
-
268
268
  {t("addDates")}
269
269
  </div>
270
270
  )}
@@ -5,7 +5,7 @@ import { ProductSetRecurrence } from "@licklist/core/dist/DataMapper/Product/Pro
5
5
 
6
6
  import { useSortable } from "@dnd-kit/sortable";
7
7
  import { CSS } from "@dnd-kit/utilities";
8
- import { FaCalendar, FaEllipsisH } from "react-icons/fa";
8
+ import { Icon } from "../../static";
9
9
 
10
10
  export interface ProductSetRecurrenceControlProps {
11
11
  menuRecurrence?: { _id: string } & Partial<ProductSetRecurrence>;
@@ -47,11 +47,11 @@ export const ProductSetRecurrenceControl = ({
47
47
  className="product-set-recurrence d-flex flex-column mr-0 mb-3 p-3 px-4 flex-grow-1"
48
48
  >
49
49
  <span className="d-flex flex-row align-items-center">
50
- <FaCalendar
51
- size={16}
50
+ <Icon
51
+ type="calendar"
52
+ height="1rem"
52
53
  className="product-set-recurrence-icon-calendar"
53
54
  />
54
-
55
55
  <span className="product-set-recurrence-title d-flex flex-grow-1">
56
56
  {t("from")}{" "}
57
57
  {formatDate(menuRecurrence.startDate, {
@@ -74,8 +74,9 @@ export const ProductSetRecurrenceControl = ({
74
74
  onClick={() => onEdit(menuRecurrence)}
75
75
  onKeyDown={() => onEdit(menuRecurrence)}
76
76
  >
77
- <FaEllipsisH
78
- size={16}
77
+ <Icon
78
+ type="ellipsis-h"
79
+ height="1rem"
79
80
  className="product-set-recurrence-icon-more"
80
81
  />
81
82
  </div>
@@ -1,6 +1,7 @@
1
1
  import { useIntl } from "react-intl";
2
2
  import { ProductSetRecurrence } from "@licklist/core/dist/DataMapper/Product/ProductSetRecurrenceDataMapper";
3
- import { FaCalendar, FaEllipsisH } from "react-icons/fa";
3
+
4
+ import { Icon } from "../../static";
4
5
 
5
6
  export interface ProductSetRecurrenceControlProps {
6
7
  menuRecurrence?: { _id: string } & Partial<ProductSetRecurrence>;
@@ -22,8 +23,9 @@ export const ProductSetRecurrenceOverridesControl = ({
22
23
  className="product-set-recurrence d-flex flex-column mr-0 mb-3 p-3 px-4 flex-grow-1"
23
24
  >
24
25
  <span className="d-flex flex-row align-items-center">
25
- <FaCalendar
26
- size={16}
26
+ <Icon
27
+ type="calendar"
28
+ height="1rem"
27
29
  className="product-set-recurrence-icon-calendar"
28
30
  />
29
31
  <span className="product-set-recurrence-title d-flex flex-grow-1">
@@ -39,8 +41,9 @@ export const ProductSetRecurrenceOverridesControl = ({
39
41
  onClick={() => onEdit(menuRecurrence)}
40
42
  onKeyDown={() => onEdit(menuRecurrence)}
41
43
  >
42
- <FaEllipsisH
43
- size={16}
44
+ <Icon
45
+ type="ellipsis-h"
46
+ height="1rem"
44
47
  className="product-set-recurrence-icon-more"
45
48
  />
46
49
  </div>
@@ -4,8 +4,8 @@ import Card from "react-bootstrap/Card";
4
4
  import { useLocation } from "react-router-dom";
5
5
  import { useTranslation } from "react-i18next";
6
6
  import { Button } from "react-bootstrap";
7
- import { FaCheck, FaTimes } from "react-icons/fa";
8
- import { Image } from "../../static";
7
+
8
+ import { Icon, Image } from "../../static";
9
9
 
10
10
  export interface TutorialGifCardProps {
11
11
  tutorialAsset?: string;
@@ -26,10 +26,12 @@ const TutorialGifCard = ({
26
26
  <Card className={`tutorial-card ${!isVisible && "hidden"}`}>
27
27
  <Card.Header className="tutorial-card-header">
28
28
  <div>
29
- <FaCheck
29
+ <Icon
30
+ type="check"
30
31
  color="white"
32
+ height="0.9rem"
33
+ width="0.9rem"
31
34
  className="rounded product-set-item-icon"
32
- size={14}
33
35
  />
34
36
  <span>{t("bookedTopTip")}</span>
35
37
  </div>
@@ -39,7 +41,12 @@ const TutorialGifCard = ({
39
41
  type="button"
40
42
  >
41
43
  <span>{t("gotIt")}</span>
42
- <FaTimes size={18} className="rounded tutorial-close-icon p-1" />
44
+ <Icon
45
+ type="times"
46
+ height="1.125rem"
47
+ width="1.125rem"
48
+ className="rounded tutorial-close-icon p-1"
49
+ />
43
50
  </button>
44
51
  </Card.Header>
45
52
  <Card.Body className="tutorial-card-body">
@@ -1,7 +1,7 @@
1
1
  import { Button } from "react-bootstrap";
2
2
  import { useTranslation } from "react-i18next";
3
- import { FaTrashAlt } from "react-icons/fa";
4
3
  import { IsDeletableEvent } from "../types";
4
+ import Icon from "../../static/Icon";
5
5
 
6
6
  export type DeleteFieldButtonProps = IsDeletableEvent;
7
7
 
@@ -14,7 +14,7 @@ export function DeleteFieldButton({ onDelete }: DeleteFieldButtonProps) {
14
14
  variant="outline-danger"
15
15
  className="d-flex align-items-center"
16
16
  >
17
- <FaTrashAlt size={16} />{" "}
17
+ <Icon type="trash" height="1rem" />{" "}
18
18
  <span className="d-none d-sm-inline ml-2">{t("delete")}</span>
19
19
  </Button>
20
20
  );
@@ -1,17 +1,47 @@
1
1
  import { Button } from "react-bootstrap";
2
2
  import { useTranslation } from "react-i18next";
3
3
 
4
+ // @TODO Modal hided for first release.
5
+
4
6
  export function MobileFooter() {
5
7
  const { t } = useTranslation("Design");
8
+ // const [isModalVisible, setIsModalVisible] = useState(false);
6
9
 
7
10
  return (
8
- <div className="container product-set-mobile-footer">
9
- <div
10
- className={`d-block d-sm-none bg-white border-top fixed-bottom
11
+ <>
12
+ <div className="container product-set-mobile-footer">
13
+ <div
14
+ className={`d-block d-sm-none bg-white border-top fixed-bottom
11
15
  py-4 px-5 d-flex justify-content-between flex-row-reverse`}
12
- >
13
- <Button type="submit">{t("save")}</Button>
16
+ >
17
+ {/* <Button
18
+ variant="outline-primary"
19
+ size="sm"
20
+ className="btn-icon-popover rounded-circle"
21
+ onClick={() => setIsModalVisible(true)}
22
+ >
23
+ <Icon type="plus" width=".9rem" />
24
+ </Button> */}
25
+ <Button type="submit">{t("save")}</Button>
26
+ </div>
14
27
  </div>
15
- </div>
28
+ {/* <Modal
29
+ show={isModalVisible}
30
+ onHide={() => setIsModalVisible(false)}
31
+ dialogClassName="product-set-mobile-modal fixed-bottom"
32
+ animation={false}
33
+ >
34
+ <Modal.Body>
35
+ <Tabs>
36
+ <Tabs.Tab eventKey="reusableSubsets" title="Reusable subsets"> */}
37
+ {/* @TODO: Implement logic here */}
38
+ {/* <p>Substet 1</p>
39
+ <p>Subset 2</p>
40
+ <p className="mb-0">Subset 3</p>
41
+ </Tabs.Tab>
42
+ </Tabs>
43
+ </Modal.Body>
44
+ </Modal> */}
45
+ </>
16
46
  );
17
47
  }
@@ -22,7 +22,7 @@ import { Step } from "../types";
22
22
  import { ProductSetContextProvider, ProductSetLoadingContext } from "./context";
23
23
  import { SelectItem } from "../../types/generic/SelectItem";
24
24
  import { checkAvailableTimesErrors, getFilteredTemplates } from "../utils";
25
- import { ErrorModal } from "../../iframe/order-process/components/ErrorModal";
25
+ import { ErrorModal } from "../../../src/iframe/order-process/components/ErrorModal";
26
26
 
27
27
  export interface WithIsLoading {
28
28
  isLoading: boolean;
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable jsx-a11y/click-events-have-key-events */
2
- import { ReactElement, useContext, useState } from "react";
2
+ import { useContext, useState } from "react";
3
3
  import { Button, Carousel, Modal, ModalBody } from "react-bootstrap";
4
4
  import { useTranslation } from "react-i18next";
5
5
  import {
@@ -14,15 +14,7 @@ import {
14
14
  import ModalHeader from "react-bootstrap/ModalHeader";
15
15
  import ModalTitle from "react-bootstrap/ModalTitle";
16
16
  import Col from "react-bootstrap/Col";
17
- import {
18
- FaArrowLeft,
19
- FaArrowRight,
20
- FaBars,
21
- FaBowlingBall,
22
- FaCalendar,
23
- FaTicketAlt,
24
- FaTimes,
25
- } from "react-icons/fa";
17
+ import Icon from "../../static/Icon";
26
18
  import { ProductSetLoadingContext } from "./context";
27
19
 
28
20
  const CATEGORY_TYPES_NAMES = {
@@ -33,31 +25,31 @@ const CATEGORY_TYPES_NAMES = {
33
25
  fixedDuration: CATEGORY_TYPE_FIXED_DURATION,
34
26
  } as const;
35
27
 
36
- type CategoryConfig = { label: string; icon: ReactElement };
28
+ type CategoryConfig = { label: string; icon: string };
37
29
 
38
30
  const MAIN_CATEGORIES: Partial<Record<CategoryType, CategoryConfig>> = {
39
31
  [CATEGORY_TYPES_NAMES.tickets]: {
40
32
  label: "tickets",
41
- icon: <FaTicketAlt color="#0e8ce2" size={32} />,
33
+ icon: "ticket-alt",
42
34
  },
43
35
  [CATEGORY_TYPES_NAMES.bookings]: {
44
36
  label: "bookings",
45
- icon: <FaCalendar color="#0e8ce2" size={32} />,
37
+ icon: "calendar",
46
38
  },
47
39
  [CATEGORY_TYPES_NAMES.menuItems]: {
48
40
  label: "menuItems",
49
- icon: <FaBars color="#0e8ce2" size={32} />,
41
+ icon: "bars",
50
42
  },
51
43
  };
52
44
 
53
45
  const BOOKING_SUBCATEGORIES: Partial<Record<CategoryType, CategoryConfig>> = {
54
46
  [CATEGORY_TYPES_NAMES.game]: {
55
47
  label: "game",
56
- icon: <FaBowlingBall color="#0e8ce2" size={32} />,
48
+ icon: "bowling-ball",
57
49
  },
58
50
  [CATEGORY_TYPES_NAMES.fixedDuration]: {
59
51
  label: "fixedDuration",
60
- icon: <FaCalendar color="#0e8ce2" size={32} />,
52
+ icon: "calendar",
61
53
  },
62
54
  };
63
55
 
@@ -114,7 +106,7 @@ export function SelectCategoryModal({
114
106
  <ModalTitle as="h5">{t("Design:selectCategory")}</ModalTitle>
115
107
 
116
108
  <Button variant="danger" className="btn-sm rounded" onClick={onHide}>
117
- <FaTimes size={20} />
109
+ <Icon type="times" height="1.2rem" />
118
110
  </Button>
119
111
  </ModalHeader>
120
112
 
@@ -141,7 +133,11 @@ export function SelectCategoryModal({
141
133
  onClick={() => categorySelectHandler(categoryType)}
142
134
  active={selectedCategory === categoryType}
143
135
  >
144
- {icon}
136
+ {typeof icon === "string" ? (
137
+ <Icon type={icon} color="#0e8ce2" height="2rem" />
138
+ ) : (
139
+ icon
140
+ )}
145
141
  <h6 className="text-dark mt-3">{t(label)}</h6>
146
142
  </Button>
147
143
  </Col>
@@ -164,7 +160,7 @@ export function SelectCategoryModal({
164
160
  onClick={() => categorySelectHandler(categoryType)}
165
161
  active={selectedCategory === categoryType}
166
162
  >
167
- {icon}
163
+ <Icon type={icon} color="#0e8ce2" height="2rem" />
168
164
  <h6 className="text-dark mt-3">{t(label)}</h6>
169
165
  </Button>
170
166
  </Col>
@@ -182,11 +178,10 @@ export function SelectCategoryModal({
182
178
  }`}
183
179
  onClick={() => setActiveCarouselIndex((prev) => (prev ? 0 : 1))}
184
180
  >
185
- {activeCarouselIndex ? (
186
- <FaArrowLeft size={16} />
187
- ) : (
188
- <FaArrowRight size={16} />
189
- )}
181
+ <Icon
182
+ type={activeCarouselIndex ? "arrow-left" : "arrow-right"}
183
+ height="1rem"
184
+ />
190
185
  </Button>
191
186
  )}
192
187
  </ModalBody>
@@ -1,5 +1,5 @@
1
1
  import clsx from "clsx";
2
- import { FaPlus } from "react-icons/fa";
2
+ import { Icon } from "../../static";
3
3
 
4
4
  interface CreateProductSetItemProps {
5
5
  onClick: () => void;
@@ -25,7 +25,12 @@ export function CreateProductSetItem({
25
25
  onClick={onClick}
26
26
  type="button"
27
27
  >
28
- <FaPlus size={20} className="rounded product-set-item-icon" />
28
+ <Icon
29
+ type="plus"
30
+ height="1.25rem"
31
+ width="1.25rem"
32
+ className="rounded product-set-item-icon"
33
+ />
29
34
  <span>{title}</span>
30
35
  </button>
31
36
  );
@@ -7,7 +7,7 @@ import OverlayTrigger, {
7
7
  OverlayTriggerType,
8
8
  } from "react-bootstrap/OverlayTrigger";
9
9
  import Popover from "react-bootstrap/Popover";
10
- import { FaPlus } from "react-icons/fa";
10
+ import { Icon } from "../../static";
11
11
 
12
12
  export type ProductSetPopoverProps = {
13
13
  title?: string;
@@ -63,7 +63,7 @@ export const ProductSetPopover = forwardRef<
63
63
  }
64
64
  }}
65
65
  >
66
- <FaPlus size={12} />
66
+ <Icon type="plus" width=".7rem" />
67
67
  </Button>
68
68
  </OverlayTrigger>
69
69
  </div>
@@ -39,13 +39,15 @@ import {
39
39
  } from "react-hook-form";
40
40
  import { useTranslation } from "react-i18next";
41
41
  import { useImages } from "@licklist/plugins/dist/hooks/Media/useImages";
42
+
42
43
  import {
43
44
  Image,
44
45
  IMAGE_TYPE_IMAGE,
45
46
  } from "@licklist/core/dist/DataMapper/Media/ImageDataMapper";
46
- import { FaClipboard } from "react-icons/fa";
47
+
47
48
  import { FileUpload } from "../../file-upload";
48
49
  import { BooleanSwitch, FormNumberInput } from "../../static";
50
+ import Icon from "../../static/Icon";
49
51
  import { SelectItem } from "../../types/generic/SelectItem";
50
52
  import { ProductSetLoadingContext } from "../form/context";
51
53
  import {
@@ -726,7 +728,8 @@ export function ProductControl<T extends FormValues>({
726
728
  variant="link"
727
729
  className="d-flex align-items-center"
728
730
  >
729
- <FaClipboard size={16} className="mr-2" /> {t("copy")}
731
+ <Icon type="clipboard" height="1rem" className="mr-2" />{" "}
732
+ {t("copy")}
730
733
  </Button>
731
734
  )}
732
735
  </div>
@@ -8,7 +8,7 @@ import { Form } from "react-bootstrap";
8
8
  import InputGroup from "react-bootstrap/InputGroup";
9
9
  import { Controller, Path, useFormContext } from "react-hook-form";
10
10
  import { useTranslation } from "react-i18next";
11
- import { FaSortNumericUpAlt } from "react-icons/fa";
11
+ import Icon from "../../../static/Icon";
12
12
  import { SelectItem } from "../../../types/generic/SelectItem";
13
13
 
14
14
  export interface ProductBookingManagementControlValues extends FormValues {
@@ -77,7 +77,7 @@ export function ProductBookingManagementControl<T extends FormValues>(
77
77
  <InputGroup hasValidation>
78
78
  <InputGroup.Prepend>
79
79
  <InputGroup.Text>
80
- <FaSortNumericUpAlt size={16} />
80
+ <Icon type="sort-numeric-up-alt" width="1rem" />
81
81
  </InputGroup.Text>
82
82
  </InputGroup.Prepend>
83
83
 
@@ -9,7 +9,7 @@ import Col from "react-bootstrap/Col";
9
9
  import InputGroup from "react-bootstrap/InputGroup";
10
10
  import { Controller, Path, useFormContext } from "react-hook-form";
11
11
  import { useTranslation } from "react-i18next";
12
- import { FaPoundSign } from "react-icons/fa";
12
+ import Icon from "../../../static/Icon";
13
13
 
14
14
  export interface ProductDepositControlValues extends FormValues {
15
15
  deposit: number;
@@ -41,7 +41,7 @@ export function ProductDepositControl<T extends FormValues>(
41
41
  <InputGroup hasValidation>
42
42
  <InputGroup.Prepend>
43
43
  <InputGroup.Text>
44
- <FaPoundSign size={10} className="p-0" />
44
+ <Icon type="pound-sign" width=".6rem" className="p-0" />
45
45
  </InputGroup.Text>
46
46
  </InputGroup.Prepend>
47
47
 
@@ -6,7 +6,7 @@ import Col from "react-bootstrap/Col";
6
6
  import InputGroup from "react-bootstrap/InputGroup";
7
7
  import { Controller, Path, useFormContext } from "react-hook-form";
8
8
  import { useTranslation } from "react-i18next";
9
- import { FaPoundSign } from "react-icons/fa";
9
+ import Icon from "../../../static/Icon";
10
10
 
11
11
  export interface ProductPriceControlValues extends FormValues {
12
12
  price: number;
@@ -49,7 +49,7 @@ export function ProductPriceControl<T extends FormValues>({
49
49
  <InputGroup hasValidation>
50
50
  <InputGroup.Prepend>
51
51
  <InputGroup.Text>
52
- <FaPoundSign size={10} className="p-0" />
52
+ <Icon type="pound-sign" width=".6rem" className="p-0" />
53
53
  </InputGroup.Text>
54
54
  </InputGroup.Prepend>
55
55
 
@@ -1,10 +1,13 @@
1
1
  /* eslint-disable jsx-a11y/click-events-have-key-events */
2
2
  import { HasPermissionProp } from "@licklist/plugins/dist/types/permission/Permission";
3
3
 
4
+ import { Icon } from "../../static";
5
+
4
6
  export interface ReportCardProps extends HasPermissionProp {
5
7
  name: string;
6
8
  onPress: () => void;
7
9
  className?: string;
10
+ iconType: string;
8
11
  }
9
12
 
10
13
  export function ReportCard({
@@ -12,6 +15,7 @@ export function ReportCard({
12
15
  onPress,
13
16
  className = "",
14
17
  hasPermission = true,
18
+ iconType,
15
19
  }: ReportCardProps) {
16
20
  const reportCardClasses = `report-card ${className}`;
17
21
 
@@ -24,6 +28,12 @@ export function ReportCard({
24
28
  >
25
29
  <div className="report-card-link text-center">
26
30
  <div className="d-flex justift-content-center flex-column">
31
+ <Icon
32
+ color="#0e8ce2"
33
+ className="mb-1"
34
+ type={iconType}
35
+ height="1.5rem"
36
+ />
27
37
  <h6>{name}</h6>
28
38
  </div>
29
39
  </div>
@@ -11,7 +11,7 @@ import { TIME_FORMAT } from "@licklist/core/dist/Config";
11
11
  import * as Config from "@licklist/core/dist/Config";
12
12
  import { formatDateStringForEvent } from "@licklist/plugins/dist/utils/formatDate";
13
13
  import { getOrderSourceTitle } from "@licklist/plugins/dist/utils/sourceTitle";
14
- import { FaUser } from "react-icons/fa";
14
+ import Icon from "../../../../static/Icon";
15
15
 
16
16
  export type ResultCardProps = {
17
17
  className: string;
@@ -63,7 +63,7 @@ export const ResultCard = ({
63
63
  <div className="card-content">
64
64
  <div className="order-id">{id}</div>
65
65
  <div className="order-people">
66
- <FaUser size={10} className="p-0" />
66
+ <Icon type="user" width="10" height="11" />
67
67
  {people}
68
68
  </div>
69
69
  <div className="order-description">
@@ -2,7 +2,7 @@ import clsx from "clsx";
2
2
  import { SyntheticEvent, forwardRef } from "react";
3
3
  import { FormControl } from "react-bootstrap";
4
4
  import { useTranslation } from "react-i18next";
5
- import { FaMinus, FaPlus } from "react-icons/fa";
5
+ import { Icon } from "../../../static";
6
6
 
7
7
  type Sizes = "big" | "small";
8
8
 
@@ -92,7 +92,10 @@ export const NumberInputHorizontal = forwardRef<
92
92
  ].join(" ")}
93
93
  disabled={disabled || shouldHideButtons}
94
94
  >
95
- <FaMinus className={hasBigSize ? "big_icon" : "small_icon"} />
95
+ <Icon
96
+ type="minus"
97
+ className={hasBigSize ? "big_icon" : "small_icon"}
98
+ />
96
99
  </button>
97
100
  <div
98
101
  className={[
@@ -127,7 +130,10 @@ export const NumberInputHorizontal = forwardRef<
127
130
  ].join(" ")}
128
131
  disabled={disabled || shouldHideButtons}
129
132
  >
130
- <FaPlus className={hasBigSize ? "big_icon" : "small_icon"} />
133
+ <Icon
134
+ type="plus"
135
+ className={hasBigSize ? "big_icon" : "small_icon"}
136
+ />
131
137
  </button>
132
138
  </div>
133
139
  );
@@ -5,7 +5,7 @@ import ModalHeader from "react-bootstrap/ModalHeader";
5
5
  import ModalTitle from "react-bootstrap/ModalTitle";
6
6
  import { useIntl } from "react-intl";
7
7
  import * as Config from "@licklist/core/dist/Config";
8
- import { FaTimes } from "react-icons/fa";
8
+ import Icon from "../../../static/Icon";
9
9
  import {
10
10
  SalePaymentForm,
11
11
  SalePaymentFormRef,
@@ -73,7 +73,7 @@ export const PaymentModal = ({
73
73
  </ModalTitle>
74
74
 
75
75
  <Button variant="danger" className="btn-sm rounded" onClick={onHide}>
76
- <FaTimes size={20} />
76
+ <Icon type="times" height="1.2rem" />
77
77
  </Button>
78
78
  </ModalHeader>
79
79
 
@@ -5,7 +5,7 @@ import { useForm } from "react-hook-form";
5
5
  import ModalHeader from "react-bootstrap/ModalHeader";
6
6
  import ModalTitle from "react-bootstrap/ModalTitle";
7
7
  import { OrderPaymentType } from "@licklist/core/dist/DataMapper/Order/OrderPaymentDataMapper";
8
- import { FaTimes } from "react-icons/fa";
8
+ import Icon from "../../../static/Icon";
9
9
  import { EXTENDED_PAYMENT_TYPE_TRANSLATION_KEYS } from "../../constants";
10
10
  import { CurrencyNumberInput } from "../../../static/CurrencyNumberInput";
11
11
 
@@ -69,7 +69,7 @@ export const RefundModal = ({
69
69
  </ModalTitle>
70
70
 
71
71
  <Button variant="danger" className="btn-sm rounded" onClick={onHide}>
72
- <FaTimes size={20} />
72
+ <Icon type="times" height="1.2rem" />
73
73
  </Button>
74
74
  </ModalHeader>
75
75
 
@@ -2,9 +2,9 @@ import { useEffect, useState } from "react";
2
2
  import { Button, Table } from "react-bootstrap";
3
3
  import { useTranslation } from "react-i18next";
4
4
  import { Note } from "@licklist/core/dist/DataMapper/Order/NoteDataMapper";
5
- import { FaPlusCircle } from "react-icons/fa";
6
5
  import { TableRow, TableRowProps } from "./NotesTableRow";
7
6
  import { NoteForm } from "./note-form";
7
+ import { Icon } from "../../static";
8
8
 
9
9
  export type NotesTableProps = Pick<TableRowProps, "onDeleteNote"> & {
10
10
  heading: string;
@@ -102,7 +102,7 @@ const AddNoteButton = ({ onClick }: { onClick: () => void }) => {
102
102
 
103
103
  return (
104
104
  <Button onClick={onClick} className="show-form-button">
105
- {t("addNew")} <FaPlusCircle size={16} className="ml-2" />
105
+ {t("addNew")} <Icon className="ml-2" type="plus-circle" width="1rem" />
106
106
  </Button>
107
107
  );
108
108
  };
@@ -11,9 +11,9 @@ import {
11
11
  DATE_TIME_FULL_FORMAT,
12
12
  } from "@licklist/core/dist/Config";
13
13
  import { getClientTimeZone } from "@licklist/core/dist/Services";
14
- import { FaEllipsisH, FaEye, FaTrashAlt } from "react-icons/fa";
15
14
  import { ConfirmModal } from "../../modals";
16
15
  import { MenuButton } from "../../table";
16
+ import { Icon } from "../../static";
17
17
 
18
18
  export type TableRowProps = {
19
19
  note: Note;
@@ -42,7 +42,7 @@ export const TableRow = ({ note, onClick, onDeleteNote }: TableRowProps) => {
42
42
  <td>
43
43
  <div className="controls">
44
44
  <span className="btn btn-sm eye">
45
- <FaEye size={20} />
45
+ <Icon type="eye" width="20" />
46
46
  </span>
47
47
  <OverlayTrigger
48
48
  trigger="click"
@@ -70,7 +70,7 @@ export const TableRow = ({ note, onClick, onDeleteNote }: TableRowProps) => {
70
70
  confirm(() => onDeleteNote(note.id));
71
71
  }}
72
72
  name={t("remove")}
73
- icon={<FaTrashAlt size={12} />}
73
+ icon="trash-alt"
74
74
  className="product-set-card-menu-item-text d-flex w-100 align-items-center"
75
75
  rightIcon
76
76
  />
@@ -89,7 +89,7 @@ export const TableRow = ({ note, onClick, onDeleteNote }: TableRowProps) => {
89
89
  setIsOverlayVisible(true);
90
90
  }}
91
91
  >
92
- <FaEllipsisH />
92
+ <Icon type="ellipsis-h" />
93
93
  </button>
94
94
  </OverlayTrigger>
95
95
  </div>