@yext/chat-ui-react 0.3.2 → 0.4.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 (84) hide show
  1. package/THIRD-PARTY-NOTICES +45 -4
  2. package/lib/bundle-no-resets.css +1 -1
  3. package/lib/bundle.css +1 -1
  4. package/lib/commonjs/components/ChatPanel.d.ts.map +1 -1
  5. package/lib/commonjs/components/ChatPanel.js +5 -0
  6. package/lib/commonjs/components/ChatPanel.js.map +1 -1
  7. package/lib/commonjs/components/ChatPopUp.d.ts.map +1 -1
  8. package/lib/commonjs/components/ChatPopUp.js +7 -0
  9. package/lib/commonjs/components/ChatPopUp.js.map +1 -1
  10. package/lib/commonjs/components/FeedbackButtons.d.ts +5 -3
  11. package/lib/commonjs/components/FeedbackButtons.d.ts.map +1 -1
  12. package/lib/commonjs/components/FeedbackButtons.js +19 -7
  13. package/lib/commonjs/components/FeedbackButtons.js.map +1 -1
  14. package/lib/commonjs/components/Markdown.d.ts +9 -2
  15. package/lib/commonjs/components/Markdown.d.ts.map +1 -1
  16. package/lib/commonjs/components/Markdown.js +25 -3
  17. package/lib/commonjs/components/Markdown.js.map +1 -1
  18. package/lib/commonjs/components/MessageBubble.d.ts +14 -4
  19. package/lib/commonjs/components/MessageBubble.d.ts.map +1 -1
  20. package/lib/commonjs/components/MessageBubble.js +16 -8
  21. package/lib/commonjs/components/MessageBubble.js.map +1 -1
  22. package/lib/commonjs/components/index.d.ts +1 -0
  23. package/lib/commonjs/components/index.d.ts.map +1 -1
  24. package/lib/commonjs/components/index.js.map +1 -1
  25. package/lib/commonjs/icons/ThumbsDown.js +1 -1
  26. package/lib/commonjs/icons/ThumbsDown.js.map +1 -1
  27. package/lib/commonjs/icons/ThumbsDownFill.d.ts.map +1 -1
  28. package/lib/commonjs/icons/ThumbsDownFill.js +1 -1
  29. package/lib/commonjs/icons/ThumbsDownFill.js.map +1 -1
  30. package/lib/commonjs/icons/ThumbsUp.js +1 -1
  31. package/lib/commonjs/icons/ThumbsUp.js.map +1 -1
  32. package/lib/commonjs/icons/ThumbsUpFill.d.ts.map +1 -1
  33. package/lib/commonjs/icons/ThumbsUpFill.js +1 -1
  34. package/lib/commonjs/icons/ThumbsUpFill.js.map +1 -1
  35. package/lib/commonjs/utils/withStylelessCssClasses.d.ts +1 -1
  36. package/lib/commonjs/utils/withStylelessCssClasses.d.ts.map +1 -1
  37. package/lib/commonjs/utils/withStylelessCssClasses.js.map +1 -1
  38. package/lib/esm/components/ChatPanel.d.ts.map +1 -1
  39. package/lib/esm/components/ChatPanel.js +5 -0
  40. package/lib/esm/components/ChatPanel.js.map +1 -1
  41. package/lib/esm/components/ChatPopUp.d.ts.map +1 -1
  42. package/lib/esm/components/ChatPopUp.js +8 -1
  43. package/lib/esm/components/ChatPopUp.js.map +1 -1
  44. package/lib/esm/components/FeedbackButtons.d.ts +5 -3
  45. package/lib/esm/components/FeedbackButtons.d.ts.map +1 -1
  46. package/lib/esm/components/FeedbackButtons.js +19 -7
  47. package/lib/esm/components/FeedbackButtons.js.map +1 -1
  48. package/lib/esm/components/Markdown.d.ts +9 -2
  49. package/lib/esm/components/Markdown.d.ts.map +1 -1
  50. package/lib/esm/components/Markdown.js +25 -3
  51. package/lib/esm/components/Markdown.js.map +1 -1
  52. package/lib/esm/components/MessageBubble.d.ts +14 -4
  53. package/lib/esm/components/MessageBubble.d.ts.map +1 -1
  54. package/lib/esm/components/MessageBubble.js +16 -8
  55. package/lib/esm/components/MessageBubble.js.map +1 -1
  56. package/lib/esm/components/index.d.ts +1 -0
  57. package/lib/esm/components/index.d.ts.map +1 -1
  58. package/lib/esm/components/index.js.map +1 -1
  59. package/lib/esm/icons/ThumbsDown.js +1 -1
  60. package/lib/esm/icons/ThumbsDown.js.map +1 -1
  61. package/lib/esm/icons/ThumbsDownFill.d.ts.map +1 -1
  62. package/lib/esm/icons/ThumbsDownFill.js +2 -2
  63. package/lib/esm/icons/ThumbsDownFill.js.map +1 -1
  64. package/lib/esm/icons/ThumbsUp.js +1 -1
  65. package/lib/esm/icons/ThumbsUp.js.map +1 -1
  66. package/lib/esm/icons/ThumbsUpFill.d.ts.map +1 -1
  67. package/lib/esm/icons/ThumbsUpFill.js +2 -2
  68. package/lib/esm/icons/ThumbsUpFill.js.map +1 -1
  69. package/lib/esm/index.d.ts +28 -4
  70. package/lib/esm/utils/withStylelessCssClasses.d.ts +1 -1
  71. package/lib/esm/utils/withStylelessCssClasses.d.ts.map +1 -1
  72. package/lib/esm/utils/withStylelessCssClasses.js.map +1 -1
  73. package/package.json +2 -2
  74. package/src/components/ChatPanel.tsx +6 -0
  75. package/src/components/ChatPopUp.tsx +10 -1
  76. package/src/components/FeedbackButtons.tsx +30 -11
  77. package/src/components/Markdown.tsx +45 -3
  78. package/src/components/MessageBubble.tsx +47 -19
  79. package/src/components/index.ts +2 -0
  80. package/src/icons/ThumbsDown.tsx +1 -1
  81. package/src/icons/ThumbsDownFill.tsx +1 -5
  82. package/src/icons/ThumbsUp.tsx +1 -1
  83. package/src/icons/ThumbsUpFill.tsx +1 -5
  84. package/src/utils/withStylelessCssClasses.ts +1 -1
@@ -3,6 +3,7 @@ import { useComposedCssClasses } from "../hooks";
3
3
  import { twMerge } from "tailwind-merge";
4
4
  import { Markdown } from "./Markdown";
5
5
  import { withStylelessCssClasses } from "../utils/withStylelessCssClasses";
6
+ import { FeedbackButtons, FeedbackButtonsCssClasses } from "./FeedbackButtons";
6
7
 
7
8
  /**
8
9
  * The CSS class interface for the {@link MessageBubble} component.
@@ -14,33 +15,38 @@ export interface MessageBubbleCssClasses {
14
15
  subContainer?: string;
15
16
  subContainer__bot?: string;
16
17
  subContainer__user?: string;
17
- message?: string;
18
- message__bot?: string;
19
- message__user?: string;
18
+ bubble?: string;
19
+ bubble__bot?: string;
20
+ bubble__user?: string;
21
+ text?: string;
22
+ text__bot?: string;
23
+ text__user?: string;
20
24
  timestamp?: string;
21
25
  timestamp__bot?: string;
22
26
  timestamp__user?: string;
27
+ feedbackButtonsCssClasses?: FeedbackButtonsCssClasses;
23
28
  }
24
29
 
25
- const builtInCssClasses: MessageBubbleCssClasses = withStylelessCssClasses(
26
- "MessageBubble",
27
- {
30
+ const builtInCssClasses: MessageBubbleCssClasses =
31
+ withStylelessCssClasses<MessageBubbleCssClasses>("MessageBubble", {
28
32
  topContainer: "w-full animate-fade-in @container",
29
33
  subContainer:
30
34
  "flex flex-col @lg:flex-row @lg:items-center @lg:gap-x-2 @lg:m-1",
31
35
  subContainer__bot: "",
32
36
  subContainer__user: "@lg:flex-row-reverse",
33
- message:
34
- "peer rounded-2xl text-[13px] @[480px]:text-base p-4 w-fit max-w-[80%] prose overflow-x-auto",
35
- message__bot: "text-slate-900 bg-gradient-to-tr from-slate-50 to-slate-100",
36
- message__user:
37
- "ml-auto @lg:ml-0 text-white bg-gradient-to-tr from-blue-600 to-blue-700",
37
+ bubble: "relative group peer w-fit max-w-[80%] rounded-2xl p-4",
38
+ bubble__bot: "bg-gradient-to-tr from-slate-50 to-slate-100",
39
+ bubble__user:
40
+ "ml-auto @lg:ml-0 bg-gradient-to-tr from-blue-600 to-blue-700 text-white",
41
+ text: "text-[13px] @[480px]:text-base prose overflow-x-auto",
42
+ text__bot: "text-slate-900",
43
+ text__user: "text-white",
38
44
  timestamp:
39
45
  "w-fit my-0.5 ml-4 @lg:ml-0 text-slate-400 text-[10px] @[480px]:text-[13px] opacity-0 peer-hover:opacity-100 duration-200 whitespace-pre-wrap",
40
46
  timestamp__bot: "",
41
47
  timestamp__user: "ml-auto",
42
- }
43
- );
48
+ feedbackButtonsCssClasses: {},
49
+ });
44
50
 
45
51
  /**
46
52
  * The props for the {@link MessageBubble} component.
@@ -50,6 +56,11 @@ const builtInCssClasses: MessageBubbleCssClasses = withStylelessCssClasses(
50
56
  export interface MessageBubbleProps {
51
57
  /** The message to display. */
52
58
  message: Message;
59
+ /**
60
+ * Whether to show the feedback buttons on the message bubble.
61
+ * Defaults to true.
62
+ */
63
+ showFeedbackButtons?: boolean;
53
64
  /**
54
65
  * Whether to show the timestamp of the message with the message bubble.
55
66
  * Defaults to true.
@@ -74,16 +85,23 @@ export interface MessageBubbleProps {
74
85
  */
75
86
  export function MessageBubble({
76
87
  message,
88
+ showFeedbackButtons = true,
77
89
  showTimestamp = true,
78
90
  customCssClasses,
79
91
  formatTimestamp = defaultFormatTimestamp,
80
92
  }: MessageBubbleProps) {
81
93
  const cssClasses = useComposedCssClasses(builtInCssClasses, customCssClasses);
82
- const messageCssClasses = twMerge(
83
- cssClasses.message,
94
+ const bubbleCssClasses = twMerge(
95
+ cssClasses.bubble,
96
+ message.source === MessageSource.USER
97
+ ? cssClasses.bubble__user
98
+ : cssClasses.bubble__bot
99
+ );
100
+ const textCssClasses = twMerge(
101
+ cssClasses.text,
84
102
  message.source === MessageSource.USER
85
- ? cssClasses.message__user
86
- : cssClasses.message__bot
103
+ ? cssClasses.text__user
104
+ : cssClasses.text__bot
87
105
  );
88
106
  const subContainerCssClasses = twMerge(
89
107
  cssClasses.subContainer,
@@ -101,8 +119,18 @@ export function MessageBubble({
101
119
  return (
102
120
  <div className={cssClasses.topContainer}>
103
121
  <div className={subContainerCssClasses}>
104
- <div className={messageCssClasses}>
105
- <Markdown content={message.text} />
122
+ <div className={bubbleCssClasses}>
123
+ {showFeedbackButtons && message.source === MessageSource.BOT && (
124
+ <FeedbackButtons
125
+ customCssClasses={cssClasses.feedbackButtonsCssClasses}
126
+ responseId={message.responseId}
127
+ />
128
+ )}
129
+ <Markdown
130
+ content={message.text}
131
+ responseId={message.responseId}
132
+ className={textCssClasses}
133
+ />
106
134
  </div>
107
135
  {/* fallback on empty space here to perserve the height for timestamp div */}
108
136
  {showTimestamp && (
@@ -10,6 +10,8 @@ export type {
10
10
  MessageBubbleProps,
11
11
  } from "./MessageBubble";
12
12
 
13
+ export type { FeedbackButtonsCssClasses } from "./FeedbackButtons";
14
+
13
15
  export { ChatPanel } from "./ChatPanel";
14
16
  export type { ChatPanelCssClasses, ChatPanelProps } from "./ChatPanel";
15
17
 
@@ -13,7 +13,7 @@ export function ThumbsDownIcon({
13
13
  xmlns="http://www.w3.org/2000/svg"
14
14
  >
15
15
  <path
16
- d="M7.1848 12.7875C7.5718 13.175 7.834 13.6625 7.9338 14.1875L8.2959 16H8.97C9.4195 16 9.8439 15.8 10.1311 15.45C10.4182 15.1 10.5306 14.65 10.4432 14.2L10.1061 12.5H11.2547H12.0037H13.7516C14.4382 12.5 15 11.9375 15 11.25C15 10.8375 14.8002 10.475 14.5006 10.25C14.8002 10.025 15 9.6625 15 9.25C15 8.7875 14.7378 8.375 14.3508 8.1625C14.588 7.9375 14.7503 7.6125 14.7503 7.25C14.7503 6.7875 14.4881 6.375 14.1011 6.1625C14.3383 5.9375 14.5006 5.6125 14.5006 5.25C14.5006 4.5625 13.9388 4 13.2522 4H12.0037H10.7553L7.2597 4C6.5605 4 5.9613 4.4125 5.6866 5H5.0125V5.5H6.0112H6.0362C6.1486 4.925 6.6604 4.5 7.2597 4.5L9.7566 4.5C9.5943 4.7125 9.5069 4.975 9.5069 5.25C9.5069 5.7125 9.769 6.125 10.156 6.3375C9.9189 6.5625 9.7566 6.8875 9.7566 7.25C9.7566 7.7125 10.0187 8.125 10.4057 8.3375C10.1685 8.5625 10.0062 8.8875 10.0062 9.25C10.0062 9.6625 10.206 10.025 10.5056 10.25C10.206 10.475 10.0062 10.8375 10.0062 11.25C10.0062 11.525 10.1061 11.7875 10.2559 12H9.4944L9.9563 14.3C10.0187 14.6 9.9438 14.9 9.7441 15.125C9.5568 15.3625 9.2697 15.4875 8.97 15.4875H8.6954L8.4082 14.075C8.2834 13.45 7.9713 12.875 7.5218 12.4125L6.0986 10.9875H5V11.4875H5.8989L7.1848 12.7875ZM10.7553 6C10.3433 6 10.0062 5.6625 10.0062 5.25C10.0062 4.8375 10.3433 4.5 10.7553 4.5H12.0037H13.2522C13.6642 4.5 14.0012 4.8375 14.0012 5.25C14.0012 5.6625 13.6642 6 13.2522 6H11.005H10.7553ZM11.005 8C10.593 8 10.2559 7.6625 10.2559 7.25C10.2559 6.8375 10.593 6.5 11.005 6.5H13.2522H13.5019C13.9139 6.5 14.2509 6.8375 14.2509 7.25C14.2509 7.6625 13.9139 8 13.5019 8H11.2547H11.005ZM10.5056 9.25C10.5056 8.8375 10.8427 8.5 11.2547 8.5H13.5019H13.7516C14.1636 8.5 14.5006 8.8375 14.5006 9.25C14.5006 9.6625 14.1636 10 13.7516 10H11.2547C10.8427 10 10.5056 9.6625 10.5056 9.25ZM10.5056 11.25C10.5056 10.8375 10.8427 10.5 11.2547 10.5H13.7516C14.1636 10.5 14.5006 10.8375 14.5006 11.25C14.5006 11.6625 14.1636 12 13.7516 12H12.0037H11.2547C10.8427 12 10.5056 11.6625 10.5056 11.25Z"
16
+ d="M5 6.09088C5.13887 5.73089 5.65964 5.14181 6.9789 4.48727C6.9789 4.48727 7.63854 4.12727 8.61063 4.02909C8.61063 4.02909 9.68687 3.96364 10.6242 4.02909C10.6242 4.02909 12.2907 3.96364 12.3601 5.69816C12.3601 5.69816 13.4711 6.25452 13.1934 7.49814C13.1934 7.49814 14.4779 8.15268 13.9919 9.49448C13.9919 9.49448 14.9639 9.85447 14.9987 10.9672C14.9987 10.9672 15.1028 12.2763 13.4711 12.5708H10.3465C10.3465 12.5708 10.8673 13.6835 10.8673 14.4035C10.8673 14.4035 10.8673 16.2362 8.68007 15.9744C8.68007 15.9744 7.84684 15.8762 7.49967 14.7308C7.49967 14.7308 7.01362 13.3563 6.45814 12.8326C6.45814 12.8326 5.69435 12.0472 5.20831 11.6545C5.20831 11.6545 4.82641 11.2945 5.17359 10.9672C5.17359 10.9672 5.48605 10.7381 5.76379 10.9672C6.11096 11.2945 7.11777 12.2108 7.11777 12.2108C7.11777 12.2108 7.81212 12.8981 8.02043 13.4872L8.40233 14.5017C8.40233 14.5017 8.50648 15.2871 9.3397 15.0908C9.3397 15.0908 10.0688 14.9926 9.96462 14.2071C9.96462 14.2071 9.72159 13.2581 9.54801 12.8981C9.54801 12.8981 9.37442 12.5708 9.30498 12.3744C9.30498 12.3744 9.13139 12.1781 9.23555 11.949C9.23555 11.949 9.27026 11.6217 9.79103 11.6872H13.2975C13.2975 11.6872 14.339 11.5563 14.0266 10.6399C14.0266 10.6399 13.8877 10.2799 13.4364 10.149C13.4364 10.149 12.985 10.1163 12.9156 9.85448C12.9156 9.85448 12.7767 9.62539 13.0545 9.36357C13.0545 9.36357 13.4364 9.00358 13.1239 8.44722C13.1239 8.44722 12.985 8.15268 12.5337 8.08722C12.5337 8.08722 11.9782 7.92359 12.2907 7.43269C12.2907 7.43269 12.6032 6.97451 12.1865 6.54906C12.1865 6.54906 11.7699 6.28725 11.6658 6.25452C11.6658 6.25452 11.388 6.05816 11.5269 5.79634C11.5269 5.79634 11.6658 5.37089 11.2839 5.07635C11.2839 5.07635 11.0756 4.87999 10.7284 4.84726C10.7284 4.84726 8.78422 4.84726 8.40233 4.91272C8.40233 4.91272 7.49967 4.91272 6.28455 6.02543C6.28455 6.02543 5.69435 6.7127 5.3819 6.54906C5.3819 6.54906 5 6.41815 5.06944 6.05816L5 6.09088Z"
17
17
  fill="currentColor"
18
18
  />
19
19
  </svg>
@@ -13,11 +13,7 @@ export function ThumbsDownFillIcon({
13
13
  xmlns="http://www.w3.org/2000/svg"
14
14
  >
15
15
  <path
16
- d="M7.93383 14.1875C7.83396 13.6625 7.57178 13.175 7.18477 12.7875L5.89888 11.4875H5L5.01248 5H5.68664C5.9613 4.4125 6.56055 4 7.25968 4L10.7553 4H12.0037H13.2522C13.9388 4 14.5006 4.5625 14.5006 5.25C14.5006 5.6125 14.3383 5.9375 14.1011 6.1625C14.4881 6.375 14.7503 6.7875 14.7503 7.25C14.7503 7.6125 14.588 7.9375 14.3508 8.1625C14.7378 8.375 15 8.7875 15 9.25C15 9.6625 14.8002 10.025 14.5006 10.25C14.8002 10.475 15 10.8375 15 11.25C15 11.9375 14.4382 12.5 13.7516 12.5H12.0037H11.2547H10.1061L10.4432 14.2C10.5306 14.65 10.4182 15.1 10.1311 15.45C9.84395 15.8 9.41948 16 8.97004 16H8.29588L7.93383 14.1875Z"
17
- fill="white"
18
- />
19
- <path
20
- d="M10.7547 6.004C10.3427 6.004 10.0056 5.6665 10.0056 5.254C10.0056 4.8415 10.3427 4.504 10.7547 4.504L12.0031 4.504H13.2516C13.6635 4.504 14.0006 4.8415 14.0006 5.254C14.0006 5.6665 13.6635 6.004 13.2516 6.004H11.0044L10.7547 6.004ZM11.0044 8.004C10.5924 8.004 10.2553 7.6665 10.2553 7.254C10.2553 6.8415 10.5924 6.504 11.0044 6.504H13.2516H13.5012C13.9132 6.504 14.2503 6.8415 14.2503 7.254C14.2503 7.6665 13.9132 8.004 13.5012 8.004H11.2541H11.0044ZM10.505 9.254C10.505 8.8415 10.8421 8.504 11.2541 8.504H13.5012H13.7509C14.1629 8.504 14.5 8.8415 14.5 9.254C14.5 9.6665 14.1629 10.004 13.7509 10.004H11.2541C10.8421 10.004 10.505 9.6665 10.505 9.254ZM10.505 11.254C10.505 10.8415 10.8421 10.504 11.2541 10.504H13.7509C14.1629 10.504 14.5 10.8415 14.5 11.254C14.5 11.6665 14.1629 12.004 13.7509 12.004H12.0031H11.2541C10.8421 12.004 10.505 11.6665 10.505 11.254Z"
16
+ d="M14.059 9.49387C14.5293 8.11226 13.2864 7.48724 13.2864 7.48724C13.5887 6.27011 12.4802 5.67799 12.4802 5.67799C12.413 3.93453 10.8006 4.00032 10.8006 4.00032C9.89359 4.00032 8.85223 4.00032 8.85223 4.00032C7.91166 4.09901 7.27341 4.46086 7.27341 4.46086C6.29924 4.95429 5.79536 5.41483 5.52663 5.77668C5.52663 5.77668 4.51887 8.30963 5.29148 11.1057C5.33673 11.2695 5.35867 11.3031 5.39226 11.3689C5.45944 11.5663 5.52663 11.6321 5.52663 11.6321C6.0641 11.9939 6.73594 12.8163 6.73594 12.8163C7.27341 13.3097 7.7437 14.7242 7.7437 14.7242C8.07962 15.8756 8.88583 15.9743 8.88583 15.9743C11.0357 16.2374 11.0021 14.3953 11.0021 14.3953C11.0021 13.6716 10.4982 12.586 10.4982 12.586H13.5215C15.0668 12.29 14.9996 10.9413 14.9996 10.9413C14.9996 9.82282 14.0254 9.46097 14.0254 9.46097L14.059 9.49387Z"
21
17
  fill="currentColor"
22
18
  />
23
19
  </svg>
@@ -13,7 +13,7 @@ export function ThumbsUpIcon({
13
13
  xmlns="http://www.w3.org/2000/svg"
14
14
  >
15
15
  <path
16
- d="M12.8152 7.2125C12.4282 6.825 12.166 6.3375 12.0662 5.8125L11.7041 4H11.03C10.5805 4 10.1561 4.2 9.86891 4.55C9.58177 4.9 9.46941 5.35 9.5568 5.8L9.89388 7.5H8.74532H7.99625H6.24844C5.5618 7.5 5 8.0625 5 8.75C5 9.1625 5.19975 9.525 5.49938 9.75C5.19975 9.975 5 10.3375 5 10.75C5 11.2125 5.26217 11.625 5.64919 11.8375C5.41199 12.0625 5.24969 12.3875 5.24969 12.75C5.24969 13.2125 5.51186 13.625 5.89888 13.8375C5.66167 14.0625 5.49938 14.3875 5.49938 14.75C5.49938 15.4375 6.06117 16 6.74782 16H7.99625H9.24469H12.7403C13.4395 16 14.0387 15.5875 14.3134 15H14.9875V14.5H13.9888H13.9638C13.8514 15.075 13.3396 15.5 12.7403 15.5H10.2434C10.4057 15.2875 10.4931 15.025 10.4931 14.75C10.4931 14.2875 10.231 13.875 9.84395 13.6625C10.0811 13.4375 10.2434 13.1125 10.2434 12.75C10.2434 12.2875 9.98127 11.875 9.59426 11.6625C9.83146 11.4375 9.99376 11.1125 9.99376 10.75C9.99376 10.3375 9.79401 9.975 9.49438 9.75C9.79401 9.525 9.99376 9.1625 9.99376 8.75C9.99376 8.475 9.89388 8.2125 9.74407 8H10.5056L10.0437 5.7C9.98127 5.4 10.0562 5.1 10.2559 4.875C10.4432 4.6375 10.7303 4.5125 11.03 4.5125H11.3046L11.5918 5.925C11.7166 6.55 12.0287 7.125 12.4782 7.5875L13.9014 9.0125H15V8.5125H14.1011L12.8152 7.2125ZM9.24469 14C9.65668 14 9.99376 14.3375 9.99376 14.75C9.99376 15.1625 9.65668 15.5 9.24469 15.5H7.99625H6.74782C6.33583 15.5 5.99875 15.1625 5.99875 14.75C5.99875 14.3375 6.33583 14 6.74782 14H8.99501H9.24469ZM8.99501 12C9.40699 12 9.74407 12.3375 9.74407 12.75C9.74407 13.1625 9.40699 13.5 8.99501 13.5H6.74782H6.49813C6.08614 13.5 5.74906 13.1625 5.74906 12.75C5.74906 12.3375 6.08614 12 6.49813 12H8.74532H8.99501ZM9.49438 10.75C9.49438 11.1625 9.1573 11.5 8.74532 11.5H6.49813H6.24844C5.83645 11.5 5.49938 11.1625 5.49938 10.75C5.49938 10.3375 5.83645 10 6.24844 10H8.74532C9.1573 10 9.49438 10.3375 9.49438 10.75ZM9.49438 8.75C9.49438 9.1625 9.1573 9.5 8.74532 9.5H6.24844C5.83645 9.5 5.49938 9.1625 5.49938 8.75C5.49938 8.3375 5.83645 8 6.24844 8H7.99625H8.74532C9.1573 8 9.49438 8.3375 9.49438 8.75Z"
16
+ d="M5 13.9091C5.13887 14.2691 5.65964 14.8582 6.9789 15.5127C6.9789 15.5127 7.63854 15.8727 8.61063 15.9709C8.61063 15.9709 9.68687 16.0364 10.6242 15.9709C10.6242 15.9709 12.2907 16.0364 12.3601 14.3018C12.3601 14.3018 13.4711 13.7455 13.1934 12.5019C13.1934 12.5019 14.4779 11.8473 13.9919 10.5055C13.9919 10.5055 14.9639 10.1455 14.9987 9.03281C14.9987 9.03281 15.1028 7.72374 13.4711 7.42919H10.3465C10.3465 7.42919 10.8673 6.31648 10.8673 5.59649C10.8673 5.59649 10.8673 3.76378 8.68007 4.0256C8.68007 4.0256 7.84684 4.12378 7.49967 5.26922C7.49967 5.26922 7.01362 6.64375 6.45814 7.16738C6.45814 7.16738 5.69435 7.95283 5.20831 8.34555C5.20831 8.34555 4.82641 8.70554 5.17359 9.03281C5.17359 9.03281 5.48605 9.2619 5.76379 9.03281C6.11096 8.70554 7.11777 7.78919 7.11777 7.78919C7.11777 7.78919 7.81212 7.10193 8.02043 6.51284L8.40233 5.49831C8.40233 5.49831 8.50648 4.71286 9.3397 4.90923C9.3397 4.90923 10.0688 5.00741 9.96462 5.79285C9.96462 5.79285 9.72159 6.74193 9.54801 7.10193C9.54801 7.10193 9.37442 7.4292 9.30498 7.62556C9.30498 7.62556 9.13139 7.82192 9.23555 8.05101C9.23555 8.05101 9.27026 8.37827 9.79103 8.31282H13.2975C13.2975 8.31282 14.339 8.44373 14.0266 9.36008C14.0266 9.36008 13.8877 9.72008 13.4364 9.85098C13.4364 9.85098 12.985 9.88371 12.9156 10.1455C12.9156 10.1455 12.7767 10.3746 13.0545 10.6364C13.0545 10.6364 13.4364 10.9964 13.1239 11.5528C13.1239 11.5528 12.985 11.8473 12.5337 11.9128C12.5337 11.9128 11.9782 12.0764 12.2907 12.5673C12.2907 12.5673 12.6032 13.0255 12.1865 13.4509C12.1865 13.4509 11.7699 13.7128 11.6658 13.7455C11.6658 13.7455 11.388 13.9418 11.5269 14.2037C11.5269 14.2037 11.6658 14.6291 11.2839 14.9236C11.2839 14.9236 11.0756 15.12 10.7284 15.1527C10.7284 15.1527 8.78422 15.1527 8.40233 15.0873C8.40233 15.0873 7.49967 15.0873 6.28455 13.9746C6.28455 13.9746 5.69435 13.2873 5.3819 13.4509C5.3819 13.4509 5 13.5818 5.06944 13.9418L5 13.9091Z"
17
17
  fill="currentColor"
18
18
  />
19
19
  </svg>
@@ -13,11 +13,7 @@ export function ThumbsUpFillIcon({
13
13
  xmlns="http://www.w3.org/2000/svg"
14
14
  >
15
15
  <path
16
- d="M12.0662 5.8125C12.166 6.3375 12.4282 6.825 12.8152 7.2125L14.1011 8.5125H15L14.9875 15H14.3134C14.0387 15.5875 13.4395 16 12.7403 16H9.24469H7.99625H6.74782C6.06117 16 5.49938 15.4375 5.49938 14.75C5.49938 14.3875 5.66167 14.0625 5.89888 13.8375C5.51186 13.625 5.24969 13.2125 5.24969 12.75C5.24969 12.3875 5.41199 12.0625 5.64919 11.8375C5.26217 11.625 5 11.2125 5 10.75C5 10.3375 5.19975 9.975 5.49938 9.75C5.19975 9.525 5 9.1625 5 8.75C5 8.0625 5.5618 7.5 6.24844 7.5H7.99625H8.74532H9.89388L9.5568 5.8C9.46941 5.35 9.58177 4.9 9.86891 4.55C10.1561 4.2 10.5805 4 11.03 4H11.7041L12.0662 5.8125Z"
17
- fill="white"
18
- />
19
- <path
20
- d="M9.24532 13.996C9.6573 13.996 9.99438 14.3335 9.99438 14.746C9.99438 15.1585 9.6573 15.496 9.24532 15.496H7.99688H6.74844C6.33645 15.496 5.99938 15.1585 5.99938 14.746C5.99938 14.3335 6.33645 13.996 6.74844 13.996H8.99563H9.24532ZM8.99563 11.996C9.40762 11.996 9.74469 12.3335 9.74469 12.746C9.74469 13.1585 9.40762 13.496 8.99563 13.496H6.74844H6.49875C6.08677 13.496 5.74969 13.1585 5.74969 12.746C5.74969 12.3335 6.08677 11.996 6.49875 11.996H8.74594H8.99563ZM9.49501 10.746C9.49501 11.1585 9.15793 11.496 8.74594 11.496H6.49875H6.24906C5.83708 11.496 5.5 11.1585 5.5 10.746C5.5 10.3335 5.83708 9.996 6.24906 9.996H8.74594C9.15793 9.996 9.49501 10.3335 9.49501 10.746ZM9.49501 8.746C9.49501 9.1585 9.15793 9.496 8.74594 9.496H6.24906C5.83708 9.496 5.5 9.1585 5.5 8.746C5.5 8.3335 5.83708 7.996 6.24906 7.996H7.99688H8.74594C9.15793 7.996 9.49501 8.3335 9.49501 8.746Z"
16
+ d="M14.059 10.5061C14.5293 11.8877 13.2864 12.5128 13.2864 12.5128C13.5887 13.7299 12.4802 14.322 12.4802 14.322C12.413 16.0655 10.8006 15.9997 10.8006 15.9997C9.89359 15.9997 8.85223 15.9997 8.85223 15.9997C7.91166 15.901 7.27341 15.5391 7.27341 15.5391C6.29924 15.0457 5.79536 14.5852 5.52663 14.2233C5.52663 14.2233 4.51887 11.6904 5.29148 8.89426C5.33673 8.73052 5.35867 8.69688 5.39226 8.63109C5.45944 8.43372 5.52663 8.36793 5.52663 8.36793C6.0641 8.00608 6.73594 7.18369 6.73594 7.18369C7.27341 6.69026 7.7437 5.27576 7.7437 5.27576C8.07962 4.12442 8.88583 4.02573 8.88583 4.02573C11.0357 3.76257 11.0021 5.60471 11.0021 5.60471C11.0021 6.32841 10.4982 7.41396 10.4982 7.41396H13.5215C15.0668 7.71002 14.9996 9.05873 14.9996 9.05873C14.9996 10.1772 14.0254 10.539 14.0254 10.539L14.059 10.5061Z"
21
17
  fill="currentColor"
22
18
  />
23
19
  </svg>
@@ -17,7 +17,7 @@ export function withStylelessCssClasses<
17
17
  ClassInterface extends Partial<Record<keyof ClassInterface, string | object>>
18
18
  >(
19
19
  componentName: string,
20
- builtInClasses: Readonly<ClassInterface>
20
+ builtInClasses: Readonly<Required<ClassInterface>>
21
21
  ): ClassInterface {
22
22
  const formatString = (str: string) =>
23
23
  str.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`);