vdb-ai-chat 1.0.22 → 1.0.23

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 (32) hide show
  1. package/dist/chat-widget.js +1 -1
  2. package/lib/commonjs/components/ChatWidget.js +3 -1
  3. package/lib/commonjs/components/ChatWidget.js.map +1 -1
  4. package/lib/commonjs/components/ProductsList.js +2 -0
  5. package/lib/commonjs/components/ProductsList.js.map +1 -1
  6. package/lib/commonjs/components/ProductsListView.js +8 -7
  7. package/lib/commonjs/components/ProductsListView.js.map +1 -1
  8. package/lib/commonjs/components/utils.js +39 -4
  9. package/lib/commonjs/components/utils.js.map +1 -1
  10. package/lib/module/components/ChatWidget.js +3 -1
  11. package/lib/module/components/ChatWidget.js.map +1 -1
  12. package/lib/module/components/ProductsList.js +2 -0
  13. package/lib/module/components/ProductsList.js.map +1 -1
  14. package/lib/module/components/ProductsListView.js +9 -8
  15. package/lib/module/components/ProductsListView.js.map +1 -1
  16. package/lib/module/components/utils.js +35 -2
  17. package/lib/module/components/utils.js.map +1 -1
  18. package/lib/typescript/components/ChatWidget.d.ts.map +1 -1
  19. package/lib/typescript/components/ProductsList.d.ts +1 -0
  20. package/lib/typescript/components/ProductsList.d.ts.map +1 -1
  21. package/lib/typescript/components/ProductsListView.d.ts +1 -0
  22. package/lib/typescript/components/ProductsListView.d.ts.map +1 -1
  23. package/lib/typescript/components/utils.d.ts +13 -3
  24. package/lib/typescript/components/utils.d.ts.map +1 -1
  25. package/lib/typescript/types.d.ts +1 -0
  26. package/lib/typescript/types.d.ts.map +1 -1
  27. package/package.json +1 -1
  28. package/src/components/ChatWidget.tsx +2 -0
  29. package/src/components/ProductsList.tsx +3 -0
  30. package/src/components/ProductsListView.tsx +12 -6
  31. package/src/components/utils.ts +78 -3
  32. package/src/types.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/components/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAEhD,eAAO,MAAM,WAAW,mCAA2B,CAAC;AAEpD,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAatD;AAED,oBAAY,cAAc;IACxB,IAAI,MAAM;IACV,OAAO,MAAM;IACb,KAAK,MAAM;CACZ;AAcD,eAAO,MAAM,mBAAmB,GAC9B,YAAY,MAAM,KACjB,OAAO,CAAC,MAAM,GAAG,IAAI,CAqBvB,CAAC;AAEF,eAAO,MAAM,qBAAqB,QAAa,OAAO,CAAC,MAAM,GAAG,IAAI,CAInE,CAAC;AAEF,eAAO,MAAM,aAAa,QAAa,OAAO,CAAC,OAAO,CAMrD,CAAC;AAGF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAI/D;AAGD,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,GAAG,EACV,WAAW,EAAE,OAAO,UAgBrB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,cAAc,QAAa,OAAO,CAAC,WAAW,GAAG,IAAI,CAqBjE,CAAC;AAEF,oBAAY,UAAU;IACpB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,OAAO,YAAY;CACpB;AAED,eAAO,MAAM,aAAa,GAAI,WAAW,MAAM,cAW9C,CAAC;AAEF,oBAAY,mBAAmB;IAC7B,aAAa,0BAA0B;IACvC,aAAa,0BAA0B;IACvC,YAAY,oBAAoB;IAChC,uBAAuB,+BAA+B;IACtD,wBAAwB,gCAAgC;CACzD;AAED,eAAO,MAAM,MAAM,eAclB,CAAC;AAEF,eAAO,MAAM,aAAa;;;;;CAUzB,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,gEAA8D,GAAG,QA4GnG,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,eAAe,GAAG,EAAE,qBAAoB,OAAe;;;;;CAgiB9F,CAAC;AAEF,oBAAY,cAAc;IACxB,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,GAAG,QAAQ;IACX,OAAO,YAAY;CACpB;AAED,oBAAY,UAAU;IACpB,OAAO,IAAA;IACP,SAAS,IAAA;IACT,QAAQ,IAAA;CACT;AAED,oBAAY,eAAe;IACzB,OAAO,YAAY;IACnB,iBAAiB,sBAAsB;IACvC,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,gBAAgB,sBAAsB;CACvC;AAED,eAAO,MAAM,eAAe,GAC1B,aAAa,MAAM,GAAG,SAAS,KAC9B,GAeF,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,aAAa,MAAM,GAAG,SAAS,mDAenE,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,UAAU,cAAc,EACxB,MAAM,UAAU,EAChB,UAAU,OAAO,KAChB,mBAwFF,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/components/utils.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,7 @@ export interface ChatWidgetProps {
46
46
  /** When true, shows beta labels and disclaimer. */
47
47
  isBetaMode?: boolean;
48
48
  activeProductType?: string;
49
+ trackAnalyticsEvent?: (eventName: string, eventData: Record<string, any>) => void;
49
50
  }
50
51
  export interface ChatWidgetRef {
51
52
  clearChat: () => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vdb-ai-chat",
3
- "version": "1.0.22",
3
+ "version": "1.0.23",
4
4
  "description": "Cross-platform AI chat widget for React Native and Web",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -68,6 +68,7 @@ export const ChatWidget = forwardRef<ChatWidgetRef, ChatWidgetProps>(
68
68
  onItemPress: onItemPressProp,
69
69
  isBetaMode: isBetaModeProp,
70
70
  activeProductType,
71
+ trackAnalyticsEvent,
71
72
  },
72
73
  ref
73
74
  ) => {
@@ -1005,6 +1006,7 @@ export const ChatWidget = forwardRef<ChatWidgetRef, ChatWidgetProps>(
1005
1006
  item={item}
1006
1007
  showMoreResults={() => handleShowMoreResults(item.id, item.search_payload)}
1007
1008
  showLessResults={() => handleShowLessResults(item.id, item.search_payload)}
1009
+ trackAnalyticsEvent={trackAnalyticsEvent}
1008
1010
  currentPage={searchResultsPages[item.id] || 1}
1009
1011
  isLoadingMore={loadingMoreResults.has(item.id)}
1010
1012
  />
@@ -11,6 +11,7 @@ interface ProductsListProps {
11
11
  item: any;
12
12
  showMoreResults?: () => void;
13
13
  showLessResults?: () => void;
14
+ trackAnalyticsEvent?: (eventName: string, eventData: Record<string, any>) => void;
14
15
  currentPage?: number;
15
16
  isLoadingMore?: boolean;
16
17
  }
@@ -24,6 +25,7 @@ const ProductsList: React.FC<ProductsListProps> = ({
24
25
  item,
25
26
  showMoreResults,
26
27
  showLessResults,
28
+ trackAnalyticsEvent,
27
29
  currentPage = 1,
28
30
  isLoadingMore = false,
29
31
  }) => {
@@ -39,6 +41,7 @@ const ProductsList: React.FC<ProductsListProps> = ({
39
41
  item={item}
40
42
  showMoreResults={showMoreResults}
41
43
  showLessResults={showLessResults}
44
+ trackAnalyticsEvent={trackAnalyticsEvent}
42
45
  currentPage={currentPage}
43
46
  isLoadingMore={isLoadingMore}
44
47
  />
@@ -11,15 +11,16 @@ import {
11
11
  getUserCurrencySymbol,
12
12
  formatPriceValue,
13
13
  roundUpPrices,
14
- AnalyticsEventNames,
15
14
  ProductCategory,
16
15
  ButtonCategory,
17
16
  ButtonType,
17
+ AIEventNames,
18
+ AIEventTypes,
19
+ colorStringForShort,
18
20
  } from "./utils";
19
21
  import { useTheme } from "styled-components/native";
20
22
  import { DefaultTheme } from "styled-components/native";
21
23
  import styled from "styled-components/native";
22
- import { useUserAnalytics } from "../hooks/useAnalytics";
23
24
  import Button from "./Button";
24
25
 
25
26
  let ImageComponent: typeof Image = Image;
@@ -38,6 +39,7 @@ interface ProductsListViewProps {
38
39
  onItemPress?: (item: any) => void;
39
40
  showMoreResults?: () => void;
40
41
  showLessResults?: () => void;
42
+ trackAnalyticsEvent?: (eventName: string, eventData: Record<string, any>) => void;
41
43
  currentPage?: number;
42
44
  isLoadingMore?: boolean;
43
45
  item: any;
@@ -50,6 +52,7 @@ const ProductsListViewComponent: React.FC<ProductsListViewProps> = ({
50
52
  onItemPress,
51
53
  showMoreResults,
52
54
  showLessResults,
55
+ trackAnalyticsEvent,
53
56
  currentPage = 1,
54
57
  isLoadingMore = false,
55
58
  item,
@@ -58,7 +61,6 @@ const ProductsListViewComponent: React.FC<ProductsListViewProps> = ({
58
61
  const theme = useTheme();
59
62
  const [userCurrency, setUserCurrency] = useState<string | null>(null);
60
63
  const [shouldRound, setShouldRound] = useState<boolean>(false);
61
- const { trackEvent } = useUserAnalytics();
62
64
  const payload = item?.search_payload;
63
65
  const isLabgrown =
64
66
  typeof payload.lab_grown === "string"
@@ -83,12 +85,16 @@ const ProductsListViewComponent: React.FC<ProductsListViewProps> = ({
83
85
 
84
86
  const handleItemPress = (dataItem: any) => {
85
87
  onItemPress?.(dataItem);
86
- trackEvent?.(AnalyticsEventNames.PRODUCT_PREVIEW_CLICKED, {});
88
+ // trackAnalyticsEvent?.(AIEventNames.AI_CHAT_WIDGET, {
89
+ // action: AIEventTypes.PRODUCT_PREVIEW_CLICKED,
90
+ // });
87
91
  };
88
92
 
89
93
  const handleViewAllPress = (item: any) => {
90
94
  onViewAll?.(item);
91
- trackEvent?.(AnalyticsEventNames.SHOW_ALL_RESULTS_CLICKED, {});
95
+ // trackAnalyticsEvent?.(AIEventNames.AI_CHAT_WIDGET, {
96
+ // action: AIEventTypes.SHOW_ALL_RESULTS_CLICKED,
97
+ // });
92
98
  };
93
99
 
94
100
  return (
@@ -115,7 +121,7 @@ const ProductsListViewComponent: React.FC<ProductsListViewProps> = ({
115
121
  {/* Carat */}
116
122
  <TextStyleBold>{`${dataItem.size ?? "-"}ct`}</TextStyleBold>
117
123
  {/* Color */}
118
- <TextStyleBold>{`${dataItem.color_short ?? "-"}`}</TextStyleBold>
124
+ <TextStyleBold>{`${colorStringForShort(true, dataItem) ?? "-"}`}</TextStyleBold>
119
125
  {/* Clarity */}
120
126
  <TextStyleBold>{`${dataItem.clarity_short ?? "-"}`}</TextStyleBold>
121
127
  {/* LAB */}
@@ -166,9 +166,19 @@ export const getDeviceType = (platform?: string) => {
166
166
  export enum AnalyticsEventNames {
167
167
  WIDGET_OPENED = "ai_chat_widget_opened",
168
168
  WIDGET_CLOSED = "ai_chat_widget_closed",
169
- CHAT_CLEARED = "ai_chat_cleared",
170
- PRODUCT_PREVIEW_CLICKED = "ai_product_preview_clicked",
171
- SHOW_ALL_RESULTS_CLICKED = "ai_show_all_results_clicked",
169
+ CHAT_CLEARED = "ai_chat_cleared"
170
+ }
171
+
172
+ export enum AIEventNames {
173
+ AI_CHAT_WIDGET = "ai_chat_widget",
174
+ }
175
+
176
+ export enum AIEventTypes {
177
+ WIDGET_OPENED = "widget_opened",
178
+ WIDGET_CLOSED = "widget_closed",
179
+ CHAT_CLEARED = "chat_cleared",
180
+ PRODUCT_PREVIEW_CLICKED = "product_preview_clicked",
181
+ SHOW_ALL_RESULTS_CLICKED = "show_all_results_clicked",
172
182
  }
173
183
 
174
184
  export const isIpad = () => {
@@ -1006,3 +1016,68 @@ export const getStyleForCategory = (
1006
1016
  hover: "primary-bg-hover",
1007
1017
  };
1008
1018
  };
1019
+
1020
+ export const isInvalidFancyColorOvertone = (
1021
+ fancyColorOvertoneLong?: string
1022
+ ) => {
1023
+ const invalidFancyColorOvertoneArray = ["Champagne", "Cognac", "Chameleon"];
1024
+ if (fancyColorOvertoneLong) {
1025
+ return invalidFancyColorOvertoneArray.includes(fancyColorOvertoneLong);
1026
+ }
1027
+ };
1028
+
1029
+
1030
+ export const colorStringForShort = (isShort: boolean, itemDetail?: any) => {
1031
+ let colorString = null;
1032
+
1033
+ if (isShort) {
1034
+ if (isInvalidFancyColorOvertone(itemDetail?.fancy_color_overtone_long)) {
1035
+ colorString = itemDetail?.is_fancy
1036
+ ? `${
1037
+ itemDetail?.fancy_color_intensity_short || itemDetail?.color || ""
1038
+ } ${itemDetail?.fancy_color_short || ""}(${
1039
+ itemDetail?.fancy_color_overtone_long || ""
1040
+ })`
1041
+ : `${itemDetail?.fancy_color_long || itemDetail?.color || ""}`;
1042
+ } else {
1043
+ colorString = itemDetail?.is_fancy
1044
+ ? `${
1045
+ itemDetail?.fancy_color_intensity_short ||
1046
+ itemDetail?.fancy_color_intensity ||
1047
+ ""
1048
+ } ${itemDetail?.fancy_color_overtone_short || ""}${
1049
+ itemDetail?.fancy_color_short || ""
1050
+ }`
1051
+ : `${itemDetail?.fancy_color_long || itemDetail?.color || ""}`;
1052
+ }
1053
+ } else {
1054
+ if (isInvalidFancyColorOvertone(itemDetail?.fancy_color_overtone_long)) {
1055
+ colorString = itemDetail?.is_fancy
1056
+ ? [
1057
+ itemDetail?.fancy_color_intensity_long ||
1058
+ itemDetail?.fancy_color_intensity,
1059
+ itemDetail?.fancy_color_long,
1060
+ itemDetail?.fancy_color_overtone_long
1061
+ ? `(${itemDetail.fancy_color_overtone_long})`
1062
+ : null,
1063
+ ]
1064
+ .filter(Boolean)
1065
+ .join(" ")
1066
+ : itemDetail?.fancy_color_long || itemDetail?.color || "";
1067
+ } else {
1068
+ colorString = itemDetail?.is_fancy
1069
+ ? [
1070
+ itemDetail?.fancy_color_intensity_long ||
1071
+ itemDetail?.fancy_color_intensity,
1072
+ itemDetail?.fancy_color_overtone_long,
1073
+ itemDetail?.fancy_color_long,
1074
+ ]
1075
+ .filter(Boolean)
1076
+ .join(" ")
1077
+ : itemDetail?.fancy_color_long || itemDetail?.color || "";
1078
+ }
1079
+ }
1080
+
1081
+ return colorString === "" ? "-" : colorString;
1082
+ };
1083
+
package/src/types.ts CHANGED
@@ -50,6 +50,7 @@ export interface ChatWidgetProps {
50
50
  /** When true, shows beta labels and disclaimer. */
51
51
  isBetaMode?: boolean;
52
52
  activeProductType?: string;
53
+ trackAnalyticsEvent?: (eventName: string, eventData: Record<string, any>) => void;
53
54
  }
54
55
 
55
56
  export interface ChatWidgetRef {