vdb-ai-chat 1.0.49 → 1.0.51

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.
@@ -49,7 +49,7 @@
49
49
  font-weight: 500;
50
50
  font-family: "Roboto-Medium";
51
51
  text-align: left;
52
- `,Qr=i.A.create({scroll:{maxWidth:"80%",alignSelf:"flex-start",paddingHorizontal:8},scrollInline:{maxWidth:"100%",alignSelf:"stretch",paddingHorizontal:0},container:{paddingVertical:0,flexDirection:"column",justifyContent:"center",alignItems:"center",gap:4,alignSelf:"stretch"},containerInline:{gap:6},spacer:{width:4,height:4}}),Zr=(0,t.memo)(Gr),ei=a(3384).A.get("window");function ti(e,t){const n=new Date(e);let r=n.getHours();const i=n.getMinutes(),o=r>=12?t("time.pm.text","pm"):t("time.am.text","am");return r%=12,r=r||12,`${r}:${i<10?`0${i}`:i} ${o}`}let ni=function(e){return e.LIKE="1",e.DISLIKE="2",e.UNSET="0",e}({});const ri=async()=>{const e=await Nr("persist:userInfo",{}),t=e?.user;return t.currency_symbol||"$"},ii=async()=>(await Nr("persist:userInfo",{}),!0);function oi(e){const t="string"==typeof e?parseFloat(e):e;return isNaN(t)?String(e):t.toLocaleString()}function ai(e,t,n){if("price_per_carat"===e)return oi(Math.round(Number(t)));if("total_sales_price"===e){let e=Number(t);return n&&(e=Math.round(e)),oi(e)}return oi(t)}const si=async()=>{try{const e=await Nr("persist:userInfo",{});if(!e?.user)return null;if("string"==typeof e.user)try{return JSON.parse(e.user)}catch{return null}return e.user}catch{return null}};let li=function(e){return e.WEB="web",e.IOS="ios",e.ANDROID="android",e}({}),ui=function(e){return e.WIDGET_OPENED="ai_chat_widget_opened",e.WIDGET_CLOSED="ai_chat_widget_closed",e.CHAT_CLEARED="ai_chat_cleared",e}({}),ci=function(e){return e.AI_CHAT_WIDGET="ai_chat_widget",e}({}),di=function(e){return e.WIDGET_OPENED="widget_opened",e.WIDGET_CLOSED="widget_closed",e.CHAT_CLEARED="chat_cleared",e.PRODUCT_PREVIEW_CLICKED="product_preview_clicked",e.SHOW_ALL_RESULTS_CLICKED="show_all_results_clicked",e.SEARCH_INITIATED="search_initiated",e.NO_RESULTS_FOUND="no_results_found",e.RECOMMENDATION_REQUESTED="recommendation_requested",e.RECOMMENDATION_RECEIVED="recommendation_received",e}({});const hi=()=>{const e=navigator.userAgent||navigator.vendor||window.opera;return/iPad/.test(e)||/\bMac/.test(e)&&navigator.maxTouchPoints>0&&!/iPhone/.test(e)},fi=e=>{let{searchPayload:t,priceMode:n,vdbSetting:r,searchResultViewType:i}=e;return(t?.cut_from||t?.cut_to||t?.polish_from||t?.polish_to||t?.symmetry_from||t?.symmetry_to)&&(t.cutGrades=[],t.polishes=[],t.symmetries=[],t?.shapes||(t.shapes=[])),t?.cut_from&&t.cutGrades.push(t?.cut_from),t?.cut_to&&t.cutGrades.push(t?.cut_to),t?.polish_from&&t.polishes.push(t?.polish_from),t?.polish_to&&t.polishes.push(t?.polish_to),t?.symmetry_from&&t.symmetries.push(t?.symmetry_from),t?.symmetry_to&&t.symmetries.push(t?.symmetry_to),t?.three_x&&(t.lab_grown?(t.cutGrades=["Excellent","8X"],t.polishes=["Excellent","8X"],t.symmetries=["Excellent","8X"],t.cps_three_x_options=["8X","Excellent"],t.cut_from="Excellent",t.cut_to="8X",t.polish_from="Excellent",t.polish_to="8X",t.symmetry_from="Excellent",t.symmetry_to="8X"):(t.cutGrades=["Excellent","Excellent"],t.polishes=["Excellent","Excellent"],t.symmetries=["Excellent","Excellent"],t.cut_from="Excellent",t.cut_to="Excellent",t.polish_from="Excellent",t.polish_to="Excellent",t.symmetry_from="Excellent",t.symmetry_to="Excellent"),delete t.three_x),t?.three_vg_plus&&t.lab_grown&&(t.cutGrades=["Very Good","8X"],t.polishes=["Very Good","8X"],t.symmetries=["Very Good","8X"],t.cut_from="Very Good",t.cut_to="8X",t.polish_from="Very Good",t.polish_to="8X",t.symmetry_from="Very Good",t.symmetry_to="8X",t.cps_three_vg_plus_options=["8X","Very Good"]),t?.eight_x&&t.lab_grown&&(t.cutGrades=["8X","8X"],t.polishes=["8X","8X"],t.symmetries=["8X","8X"],t.cut_from="8X",t.cut_to="8X",t.polish_from="8X",t.polish_to="8X",t.symmetry_from="8X",t.symmetry_to="8X"),t?.page_size&&delete t.page_size,t.price_mode=n,t.vdb_setting=r?"true":"false",t.results_view_type=i||"grid",t.featured=t.featured||"false",t.pair="pair"===t.pair?"pair":"other",t.with_available_items=!!t.with_available_items,t.page_number&&delete t.page_number,t.preference=t.preference||[],t.depth_percent_from=t.depth_percent_from??"0",t.depth_percent_to=t.depth_percent_to??"100",t.table_percent_from=t.table_percent_from??"0",t.table_percent_to=t.table_percent_to??"100",(t.price_total_from||t.price_total_to)&&(t.total_or_price_per_carat="total_sales_price"),(t.price_per_carat_from||t.price_per_carat_to)&&(t.total_or_price_per_carat="price_per_carat"),t.cert_num&&(t.cert_num=(e=>{const t=e.trim(),n=t.toLowerCase(),r=n.split(",");return r.length>1?r.map(e=>e.trim().replace(/^vdb-?/i,"")).join(","):n.startsWith("vdb-")?t.replace(/^VDB-/i,""):n.startsWith("vdb")?t.replace(/^VDB/i,""):t})(t.cert_num),delete t.pair),t},pi=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2?arguments[2]:void 0,r={},i=[];const o=(e,t)=>n?n(e):t,a=o("search.carat.text","ct.");if(r.featured=e?.featured&&"true"===e?.featured?"true":"false",e?.shapes&&e?.shapes?.length)if(r.shapes=e?.shapes||[],t&&r.shapes.length>3){const e=r.shapes.slice(0,3),t=r.shapes.length-3,o=n?n("search.more.text","+ {{count}} more",{count:t}):`+ ${t} more`,a=`${e.join(", ")} ${o}`;i.push(a)}else i.push(r.shapes.join(", "));let s="";if((e?.size_from||e?.minCarat)&&(r.minCarat=e?.size_from??e?.minCarat,s+=r.minCarat+a),(e?.size_to||e?.maxCarat)&&(r.maxCarat=e?.size_to??e?.maxCarat,s+=" - "+r.maxCarat+a),i.push(s),e?.color_from||e?.simpleColors?.length){let t="";r.simpleColors=[],r.simpleColors.push(e?.color_from??[]),t+=e?.color_from,e?.color_to&&(r.simpleColors||(r.simpleColors=[]),r.simpleColors.push(e?.color_to??[]),t+=" - "+e?.color_to),e?.simpleColors&&e?.simpleColors?.length&&(r.simpleColors=e?.simpleColors||[],t=r.simpleColors.join(" - ")),t&&i.push(t)}if(e?.fancy_colors&&e?.fancy_colors?.length||e?.fancyColors1&&e.fancyColors1?.length){r.fancyColors1=e?.fancy_colors||e?.fancyColors1||[];let t=o("search.fancyColor.text","Fancy Color")+": "+r.fancyColors1.join(" - ");i.push(t)}if(e?.fancy_color_overtones&&e?.fancy_color_overtones?.length||e?.fancyColorsOvertones&&e.fancyColorsOvertones?.length){r.fancyColorsOvertones=e?.fancy_color_overtones||e?.fancyColorsOvertones||[];let t=o("search.fcOvertone.text","FC Overtone")+": "+r?.fancyColorsOvertones?.join(", ");i.push(t)}if(r.clarities=[],e?.clarity_from&&r.clarities.push(e?.clarity_from),e?.clarity_to&&r.clarities.push(e?.clarity_to),e?.clarities?.length&&(r.clarities=e?.clarities??[]),r?.clarities?.length&&i.push(r?.clarities.join(" - ")),r.cutGrades=[],e?.cut_from&&r.cutGrades.push(e?.cut_from),e?.cut_to&&r.cutGrades.push(e?.cut_to),e.cutGrades?.length&&(r.cutGrades=e.cutGrades),r.cutGrades.length){let e=o("search.cut.text","Cut")+": "+r.cutGrades.join(" - ");i.push(e)}if(r.polishes=[],e?.polish_from&&r.polishes.push(e?.polish_from),e?.polish_to&&r.polishes.push(e?.polish_to),e?.polishes?.length&&(r.polishes=e?.polishes),r.polishes?.length){let e=o("search.polish.text","Pol")+": "+r.polishes.join(" - ");i.push(e)}if(r.symmetries=[],e?.polish_from&&r.symmetries.push(e?.symmetry_from),e?.polish_to&&r.symmetries.push(e?.symmetry_to),e.symmetries?.length&&(r.symmetries=e.symmetries),r.symmetries?.length){let e=o("search.symmetry.text","Sym")+": "+r.symmetries.join(" - ");i.push(e)}if(e?.fluorescence_intensities?.length?r.fluorescences=e?.fluorescence_intensities||[]:e?.fluorescences?.length&&(r.fluorescences=e?.fluorescences||[]),r?.fluorescences?.length>0){let e=o("search.fluorescence.text","Flour")+": "+r.fluorescences.join(", ");i.push(e)}if(e?.labs&&e?.labs?.length){r.labs=e?.labs||[];let t=o("search.lab.text","Lab")+": "+r.labs.join(", ");i.push(t)}let l="";(e?.depth_percent_from&&e?.depth_percent_from>=0||e?.minDepth&&e?.minDepth>=0)&&(r.minDepth=e?.depth_percent_from??e.minDepth,l+=o("search.depth.text","Depth")+": "+r.minDepth),(e?.depth_percent_to&&e?.depth_percent_to>=0||e?.maxDepth&&e?.maxDepth>=0)&&(r.maxDepth=e?.depth_percent_to??e?.maxDepth,l+=" - "+r.maxDepth+"%"),l&&i.push(l);let u="";(e?.table_percent_from&&e?.table_percent_from>=0||e?.minTable&&e?.minTable>=0)&&(r.minTable=e?.table_percent_from??e?.minTable,u+=o("search.tableLabel.text","table")+": "+r.minTable),(e?.table_percent_to&&e?.table_percent_to>=0||e?.maxTable&&e?.maxTable>=0)&&(r.maxTable=e?.table_percent_to??e?.maxTable,u+=" - "+r.maxTable+"%"),u&&i.push(u);let c="",d=o("search.measLength.text","Meas Length");(e?.meas_length_from||e?.meas_length_to)&&(r.meas_length_from=e?.meas_length_from??"0",c=d+": "+r.meas_length_from),e?.meas_length_to&&(r.meas_length_to=e?.meas_length_to,c+=" - "+r.meas_length_to),c&&i.push(c);let h="",f=o("search.measWidth.text","Meas Width");if((e?.meas_width_from||e?.meas_width_to)&&(r.meas_width_from=e?.meas_width_from??"0",h=f+": "+r.meas_width_from),e?.meas_width_to&&(r.meas_width_to=e?.meas_width_to,h+=" - "+r.meas_width_to),h&&i.push(h),e?.meas_height_from||e?.meas_height_to?r.meas_height_from=e?.meas_height_from??"0":(e?.minDepth||e?.maxDepth)&&(r.meas_height_from=e?.minDepth??"0"),e?.meas_height_to?r.meas_height_to=e?.meas_height_to:e?.maxDepth&&(r.meas_height_to=e?.maxDepth),r.meas_height_from&&r.meas_height_to){let e=o("search.measDepth.text","Meas Depth")+": "+r.meas_height_from+" - "+r.meas_height_to;i.push(e)}if((e?.meas_ratio_from||e?.meas_ratio_to)&&(r.meas_ratio_from=e?.meas_ratio_from??"0"),e?.meas_ratio_to&&(r.meas_ratio_to=e?.meas_ratio_to),e?.meas_ratio_from&&e?.meas_ratio_to){let e=o("search.ratio.text","Ratio")+": "+r.meas_ratio_from+" - "+r.meas_ratio_to;i.push(e)}let p="",m=o("search.totalPrice.text","Total");(e?.price_total_from&&e?.price_total_from||e?.minBudget&&e?.minBudget)&&(r.minBudget=e?.price_total_from??e?.minBudget,p+=m+": "+r.minBudget),(e?.price_total_to&&e?.price_total_to>=0||e?.maxBudget&&e?.maxBudget>=0)&&(r.maxBudget=e?.price_total_to??e?.maxBudget,p+=" - "+r.maxBudget),p&&i.push(p);let g="",v=o("search.pricePerCarat.text","PPC");if((e?.price_per_carat_from||e?.minPricePerCt)&&(r.minPricePerCt=e?.price_per_carat_from??e?.minPricePerCt,g+=v+": "+r.minPricePerCt),(e?.price_per_carat_to||e?.maxPricePerCt)&&(r.maxPricePerCt=e?.price_per_carat_to??e?.maxPricePerCt,g+=" - "+r.maxPricePerCt),g&&i.push(g),e?.location_for&&(r.location_for=e?.location_for||"",i.push(r.location_for)),e?.vendor_locations&&e?.vendor_locations?.length){r.vendor_locations=e?.vendor_locations||[];let t=o("search.itemLocation.text","Item Loc")+(!0===e?.exclude_locations?" "+o("search.diamond.excluded.text","(Excluded)"):"")+": "+r.vendor_locations.join(", ");i.push(t)}if(e?.company_names&&e?.company_names?.length||e?.companyNames&&e?.companyNames?.length){r.companyNames=e?.company_names||e?.companyNames||[];let t=o("search.supplier.text","Supplier")+(!0===e?.exclude_suppliers?" "+o("search.diamond.excluded.text","(Excluded)"):"")+": "+r.companyNames.join(",");i.push(t)}if(e?.countries&&e?.countries?.length&&(r.countries=e?.countries||[],i.push(r.countries.join(", "))),e?.cities&&e?.citie?.length&&(r.cities=e?.cities||[],i.push(r.cities.join(", "))),e?.growth_type&&e?.growth_type?.length){r.growth_type=e?.growth_type||[];let t="Growth: "+r.growth_type.join(",");i.push(t)}r.total_or_price_per_carat=e?.total_or_price_per_carat||"",r.argyle=e?.argyle||{},e?.group_ids&&e?.group_ids?.length&&(r.group_ids=e?.group_ids||[],i.push(r.group_ids.join(", "))),e?.certifications&&e?.certifications?.length&&(r.certifications=e?.certifications||[],i.push(r.certifications.join(", "))),e?.parcel&&(r.parcel=e?.parcel,i.push(o("search.parcel.text","Parcel"))),e?.three_x&&!0===e?.three_x&&(r.three_x=!0,i.push(o("search.threeX.text","3X"))),e?.hearts_and_arrows&&"Hearts and Arrows"===e?.hearts_and_arrows&&(r.hearts_and_arrows=e?.hearts_and_arrows,i.push(o("search.heartsAndArrows.text","H&A"))),e?.enhancements&&e?.enhancements?.length&&(r.enhancements=e?.enhancements||[],-1!==r.enhancements.indexOf("HPHT")&&(r.enhancements[r.enhancements.indexOf("HPHT")]=o("search.colorEnhanced.text","Color Enhanced")),i.push(r.enhancements.join(", "))),e?.eye_clean&&Array.isArray(e.eye_clean)&&(r.eye_clean=e.eye_clean,i.push(r.eye_clean.join(", "))),e?.no_bgm&&(r.no_bgm=e?.no_bgm,i.push(o("search.noBgm.text","No BGM"))),e?.three_vg_plus&&(r.three_vg_plus=e?.three_vg_plus,i.push(o("search.threeVgPlus.text","3VG+"))),e?.eight_x&&(r.eight_x=e?.eight_x,i.push(o("search.eightX.text","8X"))),e?.inclusion_pattern&&(r.inclusion_pattern=e?.inclusion_pattern),e?.intensity_black_code&&(r.intensity_black_code=e?.intensity_black_code),e?.inclusion_open&&(r.inclusion_open=e?.inclusion_open),e?.with_images&&(r.with_images=e?.with_images),e?.certified_pairs&&(r.certified_pairs=e?.certified_pairs),e?.with_available_items&&(r.with_available_items=e?.with_available_items),e?.pair&&(r.pair=e?.pair),e?.discount_percent_from&&(r.discount_percent_from=e?.discount_percent_from),e?.discount_percent_to&&(r.discount_percent_to=e?.discount_percent_to);let y="",b=o("search.crown.text","Crown");e?.crown_percent_from&&e?.crown_percent_from>=0&&(r.crown_percent_from=e?.crown_percent_from,y+=b+": "+r.crown_percent_from+"%"),e?.crown_percent_to&&e?.crown_percent_to>=0&&(r.crown_percent_to=e?.crown_percent_to,y+=""===y?b+": 0% - "+r.crown_percent_to+"%":" - "+r.crown_percent_to+"%"),e?.crown_angle_from&&e?.crown_angle_from>=0&&(r.crown_angle_from=e?.crown_angle_from,y+=""===y?b+": "+r.crown_angle_from+"°":", "+r.crown_angle_from+"°"),e?.crown_angle_to&&e?.crown_angle_to>=0&&(r.crown_angle_to=e?.crown_angle_to,y+=""===y?"0° - "+r.crown_angle_to+"°":void 0===e?.crown_angle_from?", 0° - "+r.crown_angle_to+"°":" - "+r.crown_angle_to+"°"),y&&i.push(y);let _="",w=o("search.pavilion.text","Pavilion");return e?.pavilion_percent_from&&e?.pavilion_percent_from>0&&(r.pavilion_percent_from=e?.pavilion_percent_from,_+=w+": "+r.pavilion_percent_from+"%"),e?.pavilion_percent_to&&e?.pavilion_percent_to>0&&(r.pavilion_percent_to=e?.pavilion_percent_to,_+=""===_?w+": 0% - "+r.pavilion_percent_to+"%":" - "+r.pavilion_percent_to+"%"),e?.pavilion_angle_from&&e?.pavilion_angle_from>0&&(r.pavilion_angle_from=e?.pavilion_angle_from,_+=""===_?w+": "+r.pavilion_angle_from+"°":", "+r.pavilion_angle_from+"°"),e?.pavilion_angle_to&&e?.pavilion_angle_to>0&&(r.pavilion_angle_to=e?.pavilion_angle_to,_+=""===_?"0° - "+r.pavilion_angle_to+"°":void 0===e?.pavilion_angle_from?", 0° - "+r.pavilion_angle_to+"°":" - "+r.pavilion_angle_to+"°"),_&&i.push(_),{title:i.filter(Boolean).join(" | "),options:r}};let mi=function(e){return e.diam="diam",e.gem="gem",e.jewelry="jewelry",e.lab="lab",e.default="default",e}({}),gi=function(e){return e[e.primary=0]="primary",e[e.secondary=1]="secondary",e[e.tertiary=2]="tertiary",e}({}),vi=function(e){return e.DIAMOND="diamond",e.LAB_GROWN_DIAMOND="lab_grown_diamond",e.GEMSTONE="gemstone",e.JEWELRY="jewelry",e.LABGROWN_JEWELRY="lab_grown_jewelry",e}({});const yi=e=>{switch(e){case vi.DIAMOND:case"Natural":return"diam-06";case vi.GEMSTONE:return"gem-06";case vi.JEWELRY:return"jewelry-06";case vi.LAB_GROWN_DIAMOND:case"Lab-Grown":case vi.LABGROWN_JEWELRY:return"lab-06";default:return"diam-06"}},bi=e=>{switch(e){case vi.DIAMOND:return"diam-03";case vi.GEMSTONE:return"gem-03";case vi.JEWELRY:return"jewelry-03";case vi.LAB_GROWN_DIAMOND:case vi.LABGROWN_JEWELRY:return"lab-03";default:return"diam-03"}},_i=e=>{if(e)return["Champagne","Cognac","Chameleon"].includes(e)},wi=(e,t)=>{let n=null;return n=e?_i(t?.fancy_color_overtone_long)?t?.is_fancy?`${t?.fancy_color_intensity_short||t?.color||""} ${t?.fancy_color_short||""}(${t?.fancy_color_overtone_long||""})`:`${t?.fancy_color_long||t?.color||""}`:t?.is_fancy?`${t?.fancy_color_intensity_short||t?.fancy_color_intensity||""} ${t?.fancy_color_overtone_short||""}${t?.fancy_color_short||""}`:`${t?.fancy_color_long||t?.color||""}`:_i(t?.fancy_color_overtone_long)?t?.is_fancy?[t?.fancy_color_intensity_long||t?.fancy_color_intensity,t?.fancy_color_long,t?.fancy_color_overtone_long?`(${t.fancy_color_overtone_long})`:null].filter(Boolean).join(" "):t?.fancy_color_long||t?.color||"":t?.is_fancy?[t?.fancy_color_intensity_long||t?.fancy_color_intensity,t?.fancy_color_overtone_long,t?.fancy_color_long].filter(Boolean).join(" "):t?.fancy_color_long||t?.color||"",""===n?"-":n},Si=vn.View`
52
+ `,Qr=i.A.create({scroll:{maxWidth:"80%",alignSelf:"flex-start",paddingHorizontal:8},scrollInline:{maxWidth:"100%",alignSelf:"stretch",paddingHorizontal:0},container:{paddingVertical:0,flexDirection:"column",justifyContent:"center",alignItems:"center",gap:4,alignSelf:"stretch"},containerInline:{gap:6},spacer:{width:4,height:4}}),Zr=(0,t.memo)(Gr),ei=a(3384).A.get("window");function ti(e,t){const n=new Date(e);let r=n.getHours();const i=n.getMinutes(),o=r>=12?t("time.pm.text","pm"):t("time.am.text","am");return r%=12,r=r||12,`${r}:${i<10?`0${i}`:i} ${o}`}let ni=function(e){return e.LIKE="1",e.DISLIKE="2",e.UNSET="0",e}({});const ri=async()=>{const e=await Nr("persist:userInfo",{}),t=e?.user;return t.currency_symbol||"$"},ii=async()=>(await Nr("persist:userInfo",{}),!0);function oi(e){const t="string"==typeof e?parseFloat(e):e;return isNaN(t)?String(e):t.toLocaleString()}function ai(e,t,n){if("price_per_carat"===e)return oi(Math.round(Number(t)));if("total_sales_price"===e){let e=Number(t);return n&&(e=Math.round(e)),oi(e)}return oi(t)}const si=async()=>{try{const e=await Nr("persist:userInfo",{});if(!e?.user)return null;if("string"==typeof e.user)try{return JSON.parse(e.user)}catch{return null}return e.user}catch{return null}};let li=function(e){return e.WEB="web",e.IOS="ios",e.ANDROID="android",e}({}),ui=function(e){return e.WIDGET_OPENED="ai_chat_widget_opened",e.WIDGET_CLOSED="ai_chat_widget_closed",e.CHAT_CLEARED="ai_chat_cleared",e}({}),ci=function(e){return e.AI_CHAT_WIDGET="ai_chat_widget",e}({}),di=function(e){return e.WIDGET_OPENED="widget_opened",e.WIDGET_CLOSED="widget_closed",e.CHAT_CLEARED="chat_cleared",e.PRODUCT_PREVIEW_CLICKED="product_preview_clicked",e.SHOW_ALL_RESULTS_CLICKED="show_all_results_clicked",e.SEARCH_INITIATED="search_initiated",e.NO_RESULTS_FOUND="no_results_found",e.RECOMMENDATION_REQUESTED="recommendation_requested",e.RECOMMENDATION_RECEIVED="recommendation_received",e}({});const hi=()=>{const e=navigator.userAgent||navigator.vendor||window.opera;return/iPad/.test(e)||/\bMac/.test(e)&&navigator.maxTouchPoints>0&&!/iPhone/.test(e)},fi=e=>{let{searchPayload:t,priceMode:n,vdbSetting:r,searchResultViewType:i}=e;return(t?.cut_from||t?.cut_to||t?.polish_from||t?.polish_to||t?.symmetry_from||t?.symmetry_to)&&(t.cutGrades=[],t.polishes=[],t.symmetries=[],t?.shapes||(t.shapes=[])),t?.cut_from&&t.cutGrades.push(t?.cut_from),t?.cut_to&&t.cutGrades.push(t?.cut_to),t?.polish_from&&t.polishes.push(t?.polish_from),t?.polish_to&&t.polishes.push(t?.polish_to),t?.symmetry_from&&t.symmetries.push(t?.symmetry_from),t?.symmetry_to&&t.symmetries.push(t?.symmetry_to),t?.three_x&&(t.cut_from="Excellent",t.cut_to="Ideal",t.polish_from="Excellent",t.polish_to="Ideal",t.symmetry_from="Excellent",t.symmetry_to="Ideal",t.cps_three_x_options=["Ideal","Excellent"],delete t.cutGrades,delete t.polishes,delete t.symmetries),t?.three_vg_plus&&(t.cut_from="Very Good",t.cut_to="Ideal",t.polish_from="Very Good",t.polish_to="Ideal",t.symmetry_from="Very Good",t.symmetry_to="Ideal",t.cps_three_vg_plus_options=["Ideal","Very Good"],delete t.cutGrades,delete t.polishes,delete t.symmetries),t?.eight_x&&(t.cut_from="8X",t.cut_to="Ideal",t.polish_from="8X",t.polish_to="Ideal",t.symmetry_from="8X",t.symmetry_to="Ideal",t.cps_eight_x_options=["Ideal","8X"],delete t.cutGrades,delete t.polishes,delete t.symmetries),t?.page_size&&delete t.page_size,t.price_mode=n,t.vdb_setting=r?"true":"false",t.results_view_type=i||"grid",t.featured=t.featured||"false",t.pair="pair"===t.pair?"pair":"other",t.with_available_items=!!t.with_available_items,t.page_number&&delete t.page_number,t.preference=t.preference||[],t.depth_percent_from=t.depth_percent_from??"0",t.depth_percent_to=t.depth_percent_to??"100",t.table_percent_from=t.table_percent_from??"0",t.table_percent_to=t.table_percent_to??"100",(t.price_total_from||t.price_total_to)&&(t.total_or_price_per_carat="total_sales_price"),(t.price_per_carat_from||t.price_per_carat_to)&&(t.total_or_price_per_carat="price_per_carat"),t.cert_num&&(t.cert_num=(e=>{const t=e.trim(),n=t.toLowerCase(),r=n.split(",");return r.length>1?r.map(e=>e.trim().replace(/^vdb-?/i,"")).join(","):n.startsWith("vdb-")?t.replace(/^VDB-/i,""):n.startsWith("vdb")?t.replace(/^VDB/i,""):t})(t.cert_num),delete t.pair),t},pi=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2?arguments[2]:void 0,r={},i=[];const o=(e,t)=>n?n(e):t,a=o("search.carat.text","ct.");if(r.featured=e?.featured&&"true"===e?.featured?"true":"false",e?.shapes&&e?.shapes?.length)if(r.shapes=e?.shapes||[],t&&r.shapes.length>3){const e=r.shapes.slice(0,3),t=r.shapes.length-3,o=n?n("search.more.text","+ {{count}} more",{count:t}):`+ ${t} more`,a=`${e.join(", ")} ${o}`;i.push(a)}else i.push(r.shapes.join(", "));let s="";if((e?.size_from||e?.minCarat)&&(r.minCarat=e?.size_from??e?.minCarat,s+=r.minCarat+a),(e?.size_to||e?.maxCarat)&&(r.maxCarat=e?.size_to??e?.maxCarat,s+=" - "+r.maxCarat+a),i.push(s),e?.color_from||e?.simpleColors?.length){let t="";r.simpleColors=[],r.simpleColors.push(e?.color_from??[]),t+=e?.color_from,e?.color_to&&(r.simpleColors||(r.simpleColors=[]),r.simpleColors.push(e?.color_to??[]),t+=" - "+e?.color_to),e?.simpleColors&&e?.simpleColors?.length&&(r.simpleColors=e?.simpleColors||[],t=r.simpleColors.join(" - ")),t&&i.push(t)}if(e?.fancy_colors&&e?.fancy_colors?.length||e?.fancyColors1&&e.fancyColors1?.length){r.fancyColors1=e?.fancy_colors||e?.fancyColors1||[];let t=o("search.fancyColor.text","Fancy Color")+": "+r.fancyColors1.join(" - ");i.push(t)}if(e?.fancy_color_overtones&&e?.fancy_color_overtones?.length||e?.fancyColorsOvertones&&e.fancyColorsOvertones?.length){r.fancyColorsOvertones=e?.fancy_color_overtones||e?.fancyColorsOvertones||[];let t=o("search.fcOvertone.text","FC Overtone")+": "+r?.fancyColorsOvertones?.join(", ");i.push(t)}if(r.clarities=[],e?.clarity_from&&r.clarities.push(e?.clarity_from),e?.clarity_to&&r.clarities.push(e?.clarity_to),e?.clarities?.length&&(r.clarities=e?.clarities??[]),r?.clarities?.length&&i.push(r?.clarities.join(" - ")),r.cutGrades=[],e?.cut_from&&r.cutGrades.push(e?.cut_from),e?.cut_to&&r.cutGrades.push(e?.cut_to),e.cutGrades?.length&&(r.cutGrades=e.cutGrades),r.cutGrades.length){let e=o("search.cut.text","Cut")+": "+r.cutGrades.join(" - ");i.push(e)}if(r.polishes=[],e?.polish_from&&r.polishes.push(e?.polish_from),e?.polish_to&&r.polishes.push(e?.polish_to),e?.polishes?.length&&(r.polishes=e?.polishes),r.polishes?.length){let e=o("search.polish.text","Pol")+": "+r.polishes.join(" - ");i.push(e)}if(r.symmetries=[],e?.symmetry_from&&r.symmetries.push(e?.symmetry_from),e?.symmetry_to&&r.symmetries.push(e?.symmetry_to),e.symmetries?.length&&(r.symmetries=e.symmetries),r.symmetries?.length){let e=o("search.symmetry.text","Sym")+": "+r.symmetries.join(" - ");i.push(e)}if(e?.fluorescence_intensities?.length?r.fluorescences=e?.fluorescence_intensities||[]:e?.fluorescences?.length&&(r.fluorescences=e?.fluorescences||[]),r?.fluorescences?.length>0){let e=o("search.fluorescence.text","Flour")+": "+r.fluorescences.join(", ");i.push(e)}if(e?.labs&&e?.labs?.length){r.labs=e?.labs||[];let t=o("search.lab.text","Lab")+": "+r.labs.join(", ");i.push(t)}let l="";(e?.depth_percent_from&&e?.depth_percent_from>=0||e?.minDepth&&e?.minDepth>=0)&&(r.minDepth=e?.depth_percent_from??e.minDepth,l+=o("search.depth.text","Depth")+": "+r.minDepth),(e?.depth_percent_to&&e?.depth_percent_to>=0||e?.maxDepth&&e?.maxDepth>=0)&&(r.maxDepth=e?.depth_percent_to??e?.maxDepth,l+=" - "+r.maxDepth+"%"),l&&i.push(l);let u="";(e?.table_percent_from&&e?.table_percent_from>=0||e?.minTable&&e?.minTable>=0)&&(r.minTable=e?.table_percent_from??e?.minTable,u+=o("search.tableLabel.text","table")+": "+r.minTable),(e?.table_percent_to&&e?.table_percent_to>=0||e?.maxTable&&e?.maxTable>=0)&&(r.maxTable=e?.table_percent_to??e?.maxTable,u+=" - "+r.maxTable+"%"),u&&i.push(u);let c="",d=o("search.measLength.text","Meas Length");(e?.meas_length_from||e?.meas_length_to)&&(r.meas_length_from=e?.meas_length_from??"0",c=d+": "+r.meas_length_from),e?.meas_length_to&&(r.meas_length_to=e?.meas_length_to,c+=" - "+r.meas_length_to),c&&i.push(c);let h="",f=o("search.measWidth.text","Meas Width");if((e?.meas_width_from||e?.meas_width_to)&&(r.meas_width_from=e?.meas_width_from??"0",h=f+": "+r.meas_width_from),e?.meas_width_to&&(r.meas_width_to=e?.meas_width_to,h+=" - "+r.meas_width_to),h&&i.push(h),e?.meas_height_from||e?.meas_height_to?r.meas_height_from=e?.meas_height_from??"0":(e?.minDepth||e?.maxDepth)&&(r.meas_height_from=e?.minDepth??"0"),e?.meas_height_to?r.meas_height_to=e?.meas_height_to:e?.maxDepth&&(r.meas_height_to=e?.maxDepth),r.meas_height_from&&r.meas_height_to){let e=o("search.measDepth.text","Meas Depth")+": "+r.meas_height_from+" - "+r.meas_height_to;i.push(e)}if((e?.meas_ratio_from||e?.meas_ratio_to)&&(r.meas_ratio_from=e?.meas_ratio_from??"0"),e?.meas_ratio_to&&(r.meas_ratio_to=e?.meas_ratio_to),e?.meas_ratio_from&&e?.meas_ratio_to){let e=o("search.ratio.text","Ratio")+": "+r.meas_ratio_from+" - "+r.meas_ratio_to;i.push(e)}let p="",m=o("search.totalPrice.text","Total");(e?.price_total_from&&e?.price_total_from||e?.minBudget&&e?.minBudget)&&(r.minBudget=e?.price_total_from??e?.minBudget,p+=m+": "+r.minBudget),(e?.price_total_to&&e?.price_total_to>=0||e?.maxBudget&&e?.maxBudget>=0)&&(r.maxBudget=e?.price_total_to??e?.maxBudget,p+=" - "+r.maxBudget),p&&i.push(p);let g="",v=o("search.pricePerCarat.text","PPC");if((e?.price_per_carat_from||e?.minPricePerCt)&&(r.minPricePerCt=e?.price_per_carat_from??e?.minPricePerCt,g+=v+": "+r.minPricePerCt),(e?.price_per_carat_to||e?.maxPricePerCt)&&(r.maxPricePerCt=e?.price_per_carat_to??e?.maxPricePerCt,g+=" - "+r.maxPricePerCt),g&&i.push(g),e?.location_for&&(r.location_for=e?.location_for||"",i.push(r.location_for)),e?.vendor_locations&&e?.vendor_locations?.length){r.vendor_locations=e?.vendor_locations||[];let t=o("search.itemLocation.text","Item Loc")+(!0===e?.exclude_locations?" "+o("search.diamond.excluded.text","(Excluded)"):"")+": "+r.vendor_locations.join(", ");i.push(t)}if(e?.company_names&&e?.company_names?.length||e?.companyNames&&e?.companyNames?.length){r.companyNames=e?.company_names||e?.companyNames||[];let t=o("search.supplier.text","Supplier")+(!0===e?.exclude_suppliers?" "+o("search.diamond.excluded.text","(Excluded)"):"")+": "+r.companyNames.join(",");i.push(t)}if(e?.countries&&e?.countries?.length&&(r.countries=e?.countries||[],i.push(r.countries.join(", "))),e?.cities&&e?.citie?.length&&(r.cities=e?.cities||[],i.push(r.cities.join(", "))),e?.growth_type&&e?.growth_type?.length){r.growth_type=e?.growth_type||[];let t="Growth: "+r.growth_type.join(",");i.push(t)}r.total_or_price_per_carat=e?.total_or_price_per_carat||"",r.argyle=e?.argyle||{},e?.group_ids&&e?.group_ids?.length&&(r.group_ids=e?.group_ids||[],i.push(r.group_ids.join(", "))),e?.certifications&&e?.certifications?.length&&(r.certifications=e?.certifications||[],i.push(r.certifications.join(", "))),e?.parcel&&(r.parcel=e?.parcel,i.push(o("search.parcel.text","Parcel"))),e?.three_x&&!0===e?.three_x&&(r.three_x=!0,i.push(o("search.threeX.text","3X"))),e?.hearts_and_arrows&&"Hearts and Arrows"===e?.hearts_and_arrows&&(r.hearts_and_arrows=e?.hearts_and_arrows,i.push(o("search.heartsAndArrows.text","H&A"))),e?.enhancements&&e?.enhancements?.length&&(r.enhancements=e?.enhancements||[],-1!==r.enhancements.indexOf("HPHT")&&(r.enhancements[r.enhancements.indexOf("HPHT")]=o("search.colorEnhanced.text","Color Enhanced")),i.push(r.enhancements.join(", "))),e?.eye_clean&&Array.isArray(e.eye_clean)&&(r.eye_clean=e.eye_clean,i.push(r.eye_clean.join(", "))),e?.no_bgm&&(r.no_bgm=e?.no_bgm,i.push(o("search.noBgm.text","No BGM"))),e?.three_vg_plus&&(r.three_vg_plus=e?.three_vg_plus,i.push(o("search.threeVgPlus.text","3VG+"))),e?.eight_x&&(r.eight_x=e?.eight_x,i.push(o("search.eightX.text","8X"))),e?.inclusion_pattern&&(r.inclusion_pattern=e?.inclusion_pattern),e?.intensity_black_code&&(r.intensity_black_code=e?.intensity_black_code),e?.inclusion_open&&(r.inclusion_open=e?.inclusion_open),e?.with_images&&(r.with_images=e?.with_images),e?.certified_pairs&&(r.certified_pairs=e?.certified_pairs),e?.with_available_items&&(r.with_available_items=e?.with_available_items),e?.pair&&(r.pair=e?.pair),e?.discount_percent_from&&(r.discount_percent_from=e?.discount_percent_from),e?.discount_percent_to&&(r.discount_percent_to=e?.discount_percent_to);let y="",b=o("search.crown.text","Crown");e?.crown_percent_from&&e?.crown_percent_from>=0&&(r.crown_percent_from=e?.crown_percent_from,y+=b+": "+r.crown_percent_from+"%"),e?.crown_percent_to&&e?.crown_percent_to>=0&&(r.crown_percent_to=e?.crown_percent_to,y+=""===y?b+": 0% - "+r.crown_percent_to+"%":" - "+r.crown_percent_to+"%"),e?.crown_angle_from&&e?.crown_angle_from>=0&&(r.crown_angle_from=e?.crown_angle_from,y+=""===y?b+": "+r.crown_angle_from+"°":", "+r.crown_angle_from+"°"),e?.crown_angle_to&&e?.crown_angle_to>=0&&(r.crown_angle_to=e?.crown_angle_to,y+=""===y?"0° - "+r.crown_angle_to+"°":void 0===e?.crown_angle_from?", 0° - "+r.crown_angle_to+"°":" - "+r.crown_angle_to+"°"),y&&i.push(y);let _="",w=o("search.pavilion.text","Pavilion");return e?.pavilion_percent_from&&e?.pavilion_percent_from>0&&(r.pavilion_percent_from=e?.pavilion_percent_from,_+=w+": "+r.pavilion_percent_from+"%"),e?.pavilion_percent_to&&e?.pavilion_percent_to>0&&(r.pavilion_percent_to=e?.pavilion_percent_to,_+=""===_?w+": 0% - "+r.pavilion_percent_to+"%":" - "+r.pavilion_percent_to+"%"),e?.pavilion_angle_from&&e?.pavilion_angle_from>0&&(r.pavilion_angle_from=e?.pavilion_angle_from,_+=""===_?w+": "+r.pavilion_angle_from+"°":", "+r.pavilion_angle_from+"°"),e?.pavilion_angle_to&&e?.pavilion_angle_to>0&&(r.pavilion_angle_to=e?.pavilion_angle_to,_+=""===_?"0° - "+r.pavilion_angle_to+"°":void 0===e?.pavilion_angle_from?", 0° - "+r.pavilion_angle_to+"°":" - "+r.pavilion_angle_to+"°"),_&&i.push(_),{title:i.filter(Boolean).join(" | "),options:r}};let mi=function(e){return e.diam="diam",e.gem="gem",e.jewelry="jewelry",e.lab="lab",e.default="default",e}({}),gi=function(e){return e[e.primary=0]="primary",e[e.secondary=1]="secondary",e[e.tertiary=2]="tertiary",e}({}),vi=function(e){return e.DIAMOND="diamond",e.LAB_GROWN_DIAMOND="lab_grown_diamond",e.GEMSTONE="gemstone",e.JEWELRY="jewelry",e.LABGROWN_JEWELRY="lab_grown_jewelry",e}({});const yi=e=>{switch(e){case vi.DIAMOND:case"Natural":return"diam-06";case vi.GEMSTONE:return"gem-06";case vi.JEWELRY:return"jewelry-06";case vi.LAB_GROWN_DIAMOND:case"Lab-Grown":case vi.LABGROWN_JEWELRY:return"lab-06";default:return"diam-06"}},bi=e=>{switch(e){case vi.DIAMOND:return"diam-03";case vi.GEMSTONE:return"gem-03";case vi.JEWELRY:return"jewelry-03";case vi.LAB_GROWN_DIAMOND:case vi.LABGROWN_JEWELRY:return"lab-03";default:return"diam-03"}},_i=e=>{if(e)return["Champagne","Cognac","Chameleon"].includes(e)},wi=(e,t)=>{let n=null;return n=e?_i(t?.fancy_color_overtone_long)?t?.is_fancy?`${t?.fancy_color_intensity_short||t?.color||""} ${t?.fancy_color_short||""}(${t?.fancy_color_overtone_long||""})`:`${t?.fancy_color_long||t?.color||""}`:t?.is_fancy?`${t?.fancy_color_intensity_short||t?.fancy_color_intensity||""} ${t?.fancy_color_overtone_short||""}${t?.fancy_color_short||""}`:`${t?.fancy_color_long||t?.color||""}`:_i(t?.fancy_color_overtone_long)?t?.is_fancy?[t?.fancy_color_intensity_long||t?.fancy_color_intensity,t?.fancy_color_long,t?.fancy_color_overtone_long?`(${t.fancy_color_overtone_long})`:null].filter(Boolean).join(" "):t?.fancy_color_long||t?.color||"":t?.is_fancy?[t?.fancy_color_intensity_long||t?.fancy_color_intensity,t?.fancy_color_overtone_long,t?.fancy_color_long].filter(Boolean).join(" "):t?.fancy_color_long||t?.color||"",""===n?"-":n},Si=vn.View`
53
53
  background-color: ${e=>{let{theme:t,backgroundColor:n}=e;return t[n]}};
54
54
  align-items: center;
55
55
  justify-content: center;
@@ -414,7 +414,7 @@
414
414
  font-style: normal;
415
415
  font-weight: 500;
416
416
  line-height: 24px;
417
- `,qa=(0,t.forwardRef)((i,o)=>{let{apiUrl:a,userToken:s,priceMode:l,userName:u,modalHeight:c,theme:d,initialMessages:h=[],placeholder:f,onClose:p,onClearChat:m,onViewAllPress:g,onItemPress:v,isBetaMode:y,activeProductType:b,trackAnalyticsEvent:_,fromFilterScreen:w,fromFilterSplitScreen:S,translations:x,locale:E="en",classic_search_filters:C={},showWelcomeScreen:k,setShowWelcomeScreen:A}=i;const{t:R}=Br(),[T,P]=(0,t.useState)(h),[O,I]=(0,t.useState)(""),[N,L]=(0,t.useState)(!1),[D,M]=(0,t.useState)(null),[F,V]=(0,t.useState)(null),[z,j]=(0,t.useState)(""),[B,H]=(0,t.useState)({}),[$,W]=(0,t.useState)(new Set),[U,K]=(0,t.useState)(l||null),[q,Y]=(0,t.useState)(s||""),[G,X]=(0,t.useState)(!1),[J,Q]=(0,t.useState)(!0),[Z,ee]=(0,t.useState)(null),[te,ne]=(0,t.useState)(void 0),[re,ie]=(0,t.useState)(1),[oe,ae]=(0,t.useState)({}),[se,le]=(0,t.useState)(new Set),[ue,ce]=(0,t.useState)(new Set),[de,he]=(0,t.useState)(new Set),[fe,pe]=(0,t.useState)({}),[me,ge]=(0,t.useState)(null),[ve,ye]=(0,t.useState)(new Set),be=(0,t.useRef)(null),_e=(0,t.useRef)(null),we=(0,t.useRef)(!0),Se=(0,t.useRef)(0),xe=(0,t.useRef)(0),Ee=(0,t.useRef)(!1),Ce=(0,t.useRef)(!1),ke=(0,t.useRef)(!1),Ae=(0,t.useMemo)(()=>({...Vi,...d||{}}),[d]),{_identify:Re}=(()=>{const e=(0,t.useContext)(ht);return{trackEvent:async(t,n)=>{const r=await wa(),i=e||window.analytics;i&&await i.track(t,{...r,...n})},_identify:async(t,n)=>{const r=e||window.analytics;r&&await r.identify(t,n)},_track:async(t,n)=>{const i=await wa();if(o=i?.userAgent,o&&/^Mozilla\/5\.0 \([^;]+; CPU [^)]+ like Mac OS X\) AppleWebKit\/600\.1\.4 \(KHTML, like Gecko\) Version\/\d\.0 Mobile\/10B329 Safari\/8536\.25$/.test(o))return void console.warn("Skipping tracking for Segment user agent:",i.userAgent);var o;if(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return!e&&"web"===r.A.OS||[/bot/i,/crawl/i,/spider/i,/HeadlessChrome/i,/PhantomJS/i,/slurp/i,/curl/i,/wget/i,/httpclient/i].some(t=>t.test(e))}(i?.userAgent))return void console.warn("Skipping tracking for bot user agent:",i.userAgent);const a=e||window.analytics;if(!a)return;const s=await si();s?.id?await a.identify(`${s.id}`,{name:`${s.first_name} ${s.last_name}`,email:s.email,country:s.country}):(console.error("Track Event tracked without user:",t,JSON.stringify(n)),console.error("Can't identify as user is not logged in",JSON.stringify(s))),await a.track(t,{...i,...n})}}})(),Te=Boolean(y),Pe=Wt(),Oe=Pe.isTablet,{globalData:Ie}=function(){const[e,n]=(0,t.useState)(null),[r,i]=(0,t.useState)(!0),[o,a]=(0,t.useState)(null);return(0,t.useEffect)(()=>{(async()=>{try{i(!0);const e=await Pr("persist:root");if(!e)return void n(null);const t=JSON.parse(e),r="string"==typeof t?.globalData?JSON.parse(t.globalData):t?.globalData;n(r||null)}catch(e){a(e instanceof Error?e:new Error("Failed to get global data")),n(null)}finally{i(!1)}})()},[]),{globalData:e,loading:r,error:o,refetch:async()=>{try{i(!0);const e=await Pr("persist:root");if(!e)return void n(null);const t=JSON.parse(e),r="string"==typeof t?.globalData?JSON.parse(t.globalData):t?.globalData;n(r||null),a(null)}catch(e){a(e instanceof Error?e:new Error("Failed to get global data")),n(null)}finally{i(!1)}}}}();(0,t.useEffect)(()=>{jr({locale:E,translations:x})},[]),(0,t.useEffect)(()=>{(async function(){const e=await $i(),t=await Nr("vdbchat_conversations",null);return!(!t||t.token!==e)&&!0===t.chat_has_initialized})().then(ee)},[]),(0,t.useEffect)(()=>{(async(e,t)=>{if(!Dr.isInitialized)return;const n=await Vr(),r=zr(n,t),i=Fr(r);Dr.addResourceBundle(e,"translation",i,!0,!0),Dr.language!==e&&Dr.changeLanguage(e)})(E,x)},[E,x]),(0,t.useEffect)(()=>{(async()=>{try{if(!s){const e=await Nr("persist:userInfo",{}),t=JSON.parse(e?.user||"{}"),n=t?.token||"";n&&Y(n)}}catch(e){console.error("Failed to load auth data from storage",e)}})()},[s]);const Ne=async()=>{b&&await Lr("external_context",b)};(0,t.useEffect)(()=>{0===T.length&&Ne()},[T]),(0,t.useEffect)(()=>{Ne()},[b]);const Le=(0,t.useCallback)(e=>{let t=e?.search_payload;const n=JSON.stringify(t),i=e?.search_payload;if(!i)return;const o="string"==typeof i.lab_grown?"true"===i.lab_grown:"boolean"==typeof i.lab_grown&&i.lab_grown,s=`${a}webapp/${o?"lab-grown-diamonds":"natural-diamonds"}/search?priceMode=${U}&productType=${o?vi.LAB_GROWN_DIAMOND:vi.DIAMOND}&fromNewFilterScreen=false&filterSplitStep=1&sectionName=${"pair"===t.pair?"Pairs":"Single Stones"}&breadCrumbLabel=Stone%20Search&enterSecondFlow=false&saved_search=${encodeURIComponent(n)}`;g?g(s,i):"web"===r.A.OS&&window.open(s,"_parent")},[a,U,g]),De=(0,t.useCallback)(e=>{const t=`${a}webapp/${e.type===vi.LAB_GROWN_DIAMOND?"lab-grown-diamonds":"natural-diamonds"}/item-detail/${e.id}?productType=${e.type}&priceMode=${U}&breadCrumbLabel=Stone%20Details`;v?v(t,e):"web"===r.A.OS&&window.open(t,"_parent")},[a,U,v]),Me=(0,t.useMemo)(()=>Boolean(q),[q]),Fe=(0,t.useMemo)(()=>({conversationId:q}),[q]),Ve=(0,t.useCallback)(async(e,t,n)=>{try{let r="0";P(e=>{const t=e.find(e=>e.id===n);return r=t?.reaction||"0",e});const i=r===e?ni.UNSET:e,o=await(async(e,t,n,r)=>{const i=`${Hi(e,n,r)}`,o={reaction:t};return await fetch(i,{method:"POST",headers:await Wi(),body:JSON.stringify(o)})})(a,i,t,n);o.ok?P(e=>e.map(e=>e.id===n?{...e,reaction:i}:e)):console.error("Feedback API failed",o.status)}catch(e){console.error("Feedback API error",e)}},[]);(0,t.useEffect)(()=>{let e=!1;return h.length||(async()=>{if(Me)try{const t=await Gi(a,0,U);if(!e){const e=(await Yi(t,U)).reverse();if(void 0!==t?.has_more&&Q(t.has_more),void 0!==t?.next_cursor&&ne(t.next_cursor),ke.current=!1,Ee.current=!1,0===e.length){const e={id:"",role:"assistant",text:R("chat.welcome.message.text",'Describe the diamond you\'re looking for — for example, "2ct F VS2 under $10,000" or "1–2ct D–F VS pear" — and I\'ll take it from there.'),createdAt:Date.now(),isLoading:!1,suggestions:[],search_payload:{},reaction:"0"};P([e]),Q(!1)}else P(e),ee(!0)}}catch(e){console.error("Failed to fetch initial messages",e)}})(),()=>{e=!0}},[a,Fe,h.length,Me,U]),(0,t.useEffect)(()=>{if(0===T.length)return;const e=T.filter(e=>"assistant"===e.role&&e.recommendation_payload&&Object.keys(e.recommendation_payload).length>0);0!==e.length?e.forEach(e=>{const t=T.findIndex(t=>t.id===e.id);if(t<=0)return;let n;for(let e=t-1;e>=0;e--){const t=T[e];if("assistant"===t.role&&t.search_payload&&Object.keys(t.search_payload).length>0){n=t;break}}if(!n)return;if(fe[n.id])return void(ve.has(e.id)&&ye(t=>{const n=new Set(t);return n.delete(e.id),n}));const r=B[n.id]?.response?.body?.diamonds;if(!r||0===r.length)return void(ve.has(e.id)||(ye(t=>new Set(t).add(e.id)),P(t=>t.map(t=>t.id===e.id?{...t,text:R("recommendation.loading.text","Analyzing your diamonds to find the best match"),isLoading:!0}:t))));ce(e=>new Set(e).add(n.id));const i=e.recommendation_payload,o=[],a=e=>r.find(t=>String(t.id)===String(e));if(i?.best_pick){const e=a(i.best_pick.stock_item_id);e&&o.push({...e,recommendationType:"best_pick",score:i.best_pick.score,recommendation_pitch:i.best_pick.recommendation_pitch,strengths:i.best_pick.strengths,concerns:i.best_pick.concerns})}if(i?.runner_up){const e=a(i.runner_up.stock_item_id);e&&o.push({...e,recommendationType:"runner_up",score:i.runner_up.score,reason:i.runner_up.reason})}i?.also_recommended&&i.also_recommended.forEach(e=>{const t=a(e.stock_item_id);t&&o.push({...t,recommendationType:"also_recommended",score:e.score,reason:e.reason})}),o.length>0&&(pe(e=>({...e,[n.id]:o})),ye(t=>{const n=new Set(t);return n.delete(e.id),n}),P(t=>t.map(t=>t.id===e.id?{...t,text:R("recommendation.result.text","Here are my top recommendations based on your search results:"),isLoading:!1,isRecommendation:!0,sourceMessageId:n.id}:t)))}):ve.size>0&&ye(new Set)},[T,B,R]);const ze=(0,t.useCallback)(async e=>{const t=e.trim();if(!t||N)return;const n=await Nr("external_context"),r={id:`user-${Date.now()}`,role:"user",text:t,createdAt:Date.now(),external_context:n||null},i=`bot-loading-${Date.now()}`,o={id:i,role:"assistant",text:R("chat.thinking.text","Thinking"),createdAt:Date.now(),reaction:"0",isLoading:!0,search_payload:{}};P(e=>[...e,r,o]),M(i),L(!0);try{if(!Me)return void P(e=>e.map(e=>e.id===i?{...e,text:R("chat.authError.text","Chat is unavailable (missing user authentication)."),isLoading:!1}:e));const e=[...T,r],n=we.current?C:{};we.current=!1;const o=await async function(e,t,n,r,i){let o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{};const a=await Ui(),s=a?.[i]?.conversation_id??null;if(void 0===i)return null;const l=await Nr("external_context");l&&await Ir("external_context");const u={query:t,external_context:l||null,...Object.keys(o).length>0&&{classic_search_filters:o}};s&&(u.conversation_id=Number.isNaN(Number(s))?s:Number(s));const c=await fetch(ji(e),{method:"POST",headers:await Wi(),body:JSON.stringify(u)});if(!c.ok)throw new Error(`POST ${ji(e)} failed with ${c.status}`);const d=await c.json();if(d&&null!=d.conversation_id&&i){const e={...a};e[i]={conversation_id:d.conversation_id},await Ki(e)}return d}(a,t,Fe,e,U,n),s=(await Yi(o,U)).find(e=>"assistant"===e.role);if(s?.text){if(s?.search_payload&&"object"==typeof s.search_payload&&Object.keys(s.search_payload).length>0){const e=await Xi(a,s.search_payload);_?.(ci.AI_CHAT_WIDGET,{action:di.SEARCH_INITIATED,search_payload:s.search_payload});const t=e&&e.response&&e.response.body&&Array.isArray(e.response.body.diamonds)&&e.response.body.diamonds.length>0;t?w&&t&&Le({search_payload:s.search_payload}):_?.(ci.AI_CHAT_WIDGET,{action:di.NO_RESULTS_FOUND,search_payload:s.search_payload}),H(t=>({...t,[s.id]:e}))}M(null),P(e=>e.map(e=>e.id===i?{...e,id:s.id,text:"",isLoading:!1,suggestions:s.suggestions,search_payload:s.search_payload??{}}:e)),setTimeout(()=>{V(s.id),j(s.text),be.current?.scrollToEnd({animated:!0})},50)}else P(e=>e.map(e=>e.id===i?{...e,isLoading:!1}:e))}catch(e){P(e=>e.map(e=>e.id===i?{...e,text:R("chat.error.text","Sorry, something went wrong. Please try again."),isLoading:!1}:e)),console.error(e)}finally{L(!1),M(null),_e.current?.focus()}},[a,N,T,Fe,Me,U,Le,w,C]),je=(0,t.useCallback)(async()=>{const e=O.trim();e&&(I(""),ze(e),w&&!S&&k&&!1===Z&&(qi(!0).then(()=>ee(!0)),A?.(!1)))},[O,ze,w,S,k,Z]),Be=(0,t.useCallback)(e=>{ze(e)},[ze]),He=(0,t.useCallback)(async e=>{const t=e.id;try{W(e=>new Set(e).add(t));const n=e?.search_payload;if(!n||0===Object.keys(n).length)return;const r=await Xi(a,n);H(e=>({...e,[t]:r}))}catch(e){console.error("Reload results failed",e)}finally{W(e=>{const n=new Set(e);return n.delete(t),n})}},[]),$e=(0,t.useCallback)(async(e,t)=>{if(se.has(e))return;const n=(oe[e]||1)+1;if(!(n>6))try{le(t=>new Set(t).add(e));const r=await async function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;const r=await fetch(Bi(e),{method:"POST",headers:await Wi(),body:JSON.stringify({vdb:{...t,page_size:5,page_number:n}})});if(!r.ok)throw new Error(`POST failed with ${r.status}`);return await r.json()}(a,t,n);r?.response?.body?.diamonds&&(H(t=>{const n=t[e];if(!n)return t;const i=n.response?.body?.diamonds||[],o=r.response.body.diamonds;return{...t,[e]:{...n,response:{...n.response,body:{...n.response.body,diamonds:[...i,...o]}}}}}),ae(t=>({...t,[e]:n})))}catch(e){console.error("Failed to load more results:",e)}finally{le(t=>{const n=new Set(t);return n.delete(e),n})}},[a,se,oe]),We=(0,t.useCallback)(async(e,t)=>{try{const n=await Xi(a,t);n?.response?.body?.diamonds&&(H(t=>({...t,[e]:n})),ae(t=>({...t,[e]:1})))}catch(e){console.error("Failed to show less results:",e)}},[a]),Ue=(0,t.useCallback)(async e=>{const t=B[e]?.response?.body?.diamonds;if(!t||0===t.length)return;const n=await Nr("vdbchat_conversations",null),r=n?.conversations?.[U??""]?.conversation_id;if(!r)return void console.error("No conversation ID found for recommendations");ce(t=>new Set(t).add(e)),he(t=>new Set(t).add(e));const i=`recommendation-loading-${Date.now()}`,o={id:i,role:"assistant",text:R("recommendation.loading.text","Analyzing your diamonds to find the best match"),createdAt:Date.now(),isLoading:!0,reaction:"0"};P(e=>[...e,o]),ge(i);try{const n=t.slice(0,50).map(Ji),o=await async function(e,t,n){const r=await fetch(ji(e),{method:"POST",headers:await Wi(),body:JSON.stringify({conversation_id:t,agent_mode:"recommendation",query:"Recommend from my visible results",visible_items:n.slice(0,50)})});if(!r.ok)throw new Error(`POST ${ji(e)} recommendation failed with ${r.status}`);return await r.json()}(a,r,n),s=o.messages?.find(e=>"assistant"===e.role&&null!=e.recommendation_payload),l=s?.recommendation_payload,u=s?.content||R("recommendation.result.text","Here are my top recommendations based on your search results:"),c=[],d=e=>t.find(t=>String(t.id)===String(e));if(l?.best_pick){const e=d(l.best_pick.stock_item_id);e&&c.push({...e,recommendationType:"best_pick",score:l.best_pick.score,recommendation_pitch:l.best_pick.recommendation_pitch,strengths:l.best_pick.strengths,concerns:l.best_pick.concerns})}if(l?.runner_up){const e=d(l.runner_up.stock_item_id);e&&c.push({...e,recommendationType:"runner_up",score:l.runner_up.score,reason:l.runner_up.reason})}l?.also_recommended&&l.also_recommended.forEach(e=>{const t=d(e.stock_item_id);t&&c.push({...t,recommendationType:"also_recommended",score:e.score,reason:e.reason})}),pe(t=>({...t,[e]:c}));const h=`recommendation-${e}-${Date.now()}`;P(t=>t.map(t=>t.id===i?{...t,id:h,text:c.length>0?u:R("recommendation.noResults.text","I couldn't generate recommendations at this time. Please try again."),isLoading:!1,isRecommendation:!0,sourceMessageId:e}:t)),_?.(ci.AI_CHAT_WIDGET,{action:di.RECOMMENDATION_RECEIVED,recommendation_count:c.length})}catch(e){console.error("Failed to get recommendations:",e),P(e=>e.map(e=>e.id===i?{...e,text:R("recommendation.error.text","I couldn't generate a recommendation right now. Please try again."),isLoading:!1}:e))}finally{he(t=>{const n=new Set(t);return n.delete(e),n}),ge(null)}},[a,B,U,R,_]),Ke=(0,t.useCallback)(async()=>{if(G||!J||!Me)return;Ce.current=!0;const e=xe.current;X(!0);try{const t=await async function(e,t,n,r){const i=await Ui(),o=i?.[t??""]?.conversation_id??null;if(!o)return{messages:[],has_more:!1};const a={conversation_id:Number.isNaN(Number(o))?o:Number(o),fetch_history:!0};void 0!==n&&(a.cursor=n),void 0!==r&&(a.page=r);const s=await fetch(ji(e),{method:"POST",headers:await Wi(),body:JSON.stringify(a)});if(!s.ok)throw new Error(`POST ${ji(e)} failed with ${s.status}`);const l=await s.json();return{messages:l.messages||[],conversation_id:l.conversation_id,has_more:l.has_more??!1,next_cursor:l.next_cursor,total_count:l.total_count}}(a,U,te,re+1),n=(await Yi(t,U)).reverse();n.length>0?(P(e=>{const t=new Set(e.map(e=>e.id)),r=n.filter(e=>!t.has(e.id));return console.log("[...newMessages, ...prev]",[...r,...e]),[...r,...e]}),ie(e=>e+1),requestAnimationFrame(()=>{const t=xe.current-e;t>0&&be.current&&be.current.scrollTo({y:Se.current+t,animated:!1}),Ce.current=!1})):Ce.current=!1,Q(t.has_more??n.length>0),ne(t.next_cursor)}catch(e){console.error("Failed to load older messages",e),Ce.current=!1}finally{X(!1)}},[G,J,Me,a,U,te,re]);(0,t.useEffect)(()=>{const e=()=>{setTimeout(()=>{try{be.current?.scrollToEnd({animated:!0})}catch(e){}},100)},t="ios"===r.A.OS?"keyboardWillShow":"keyboardDidShow",n="ios"===r.A.OS?"keyboardWillHide":"keyboardDidHide",i=pt.A.addListener(t,e),o=pt.A.addListener(n,e);return()=>{i.remove(),o.remove()}},[]),(0,t.useEffect)(()=>(e.A.addListener("clearChat",Ye),e.A.addListener("changePriceMode",e=>qe(e.priceMode)),qe(),(async()=>{const e=await si(),t=e?.id,n=JSON.stringify(e?.email)??void 0;t&&Re(`${t}`,{email:n}).then()})(),()=>{e.A.removeAllListeners("clearChat"),e.A.removeAllListeners("changePriceMode")}),[]);const qe=async e=>{if(!e&&l&&(e=l),!e){let t=await Nr("persist:userInfo",{user:void 0});t=t&&t.user?JSON.parse(t.user):{},e=t?.price_mode}K(void 0===e?null:String(e))},Ye=(0,t.useCallback)(async()=>{try{await qi(!1),ee(!1);const e=await Nr("vdbchat_conversations",null);if(e&&U&&e.conversations?.[U]){const t={...e.conversations};delete t[U],await Lr("vdbchat_conversations",{token:e.token,conversations:t,chat_has_initialized:!1})}P([]),H({}),W(new Set),L(!1),M(null),V(null),j(""),Q(!0),ne(void 0),ie(1),ce(new Set),he(new Set),pe({}),ge(null),ye(new Set),ke.current=!1,Ee.current=!1,Ce.current=!1;const t=await Gi(a,0,U),n=(await Yi(t,U)).reverse();if(0===n.length){const e={id:"",role:"assistant",text:R("chat.welcome.message.text",'Describe the diamond you\'re looking for — for example, "2ct F VS2 under $10,000" or "1–2ct D–F VS pear" — and I\'ll take it from there.'),createdAt:Date.now(),isLoading:!1,suggestions:[],reaction:"0",search_payload:{}};P([e])}else P(n);m?.()}catch(e){console.error("Failed to clear chat",e)}},[a,U]);(0,t.useEffect)(()=>{if(!D||F)return;let e=0;const t=R("chat.thinking.text","Thinking"),n=setInterval(()=>{e=(e+1)%3;const n=".".repeat(e+1);P(e=>e.map(e=>e.id===D&&e.isLoading?{...e,text:`${t}${n}`}:e))},500);return()=>{clearInterval(n)}},[D,F,R]),(0,t.useEffect)(()=>{if(!me)return;let e=0;const t=R("recommendation.loading.text","Analyzing your diamonds to find the best match"),n=setInterval(()=>{e=(e+1)%3;const n=".".repeat(e+1);P(e=>e.map(e=>e.id===me&&e.isLoading?{...e,text:`${t}${n}`}:e))},500);return()=>{clearInterval(n)}},[me,R]),(0,t.useEffect)(()=>{if(0===ve.size)return;let e=0;const t=R("recommendation.loading.text","Analyzing your diamonds to find the best match"),n=setInterval(()=>{e=(e+1)%3;const n=".".repeat(e+1);P(e=>e.map(e=>ve.has(e.id)?{...e,text:`${t}${n}`}:e))},500);return()=>{clearInterval(n)}},[ve,R]),(0,t.useImperativeHandle)(o,()=>({clearChat:Ye}),[Ye]);const Ge=(0,t.useRef)(0);return(0,t.useEffect)(()=>{if(!F||!z)return void(Ge.current=0);Ge.current=0;const e=z.length,t=F,n=z,r=setInterval(()=>{Ge.current+=1;const i=Ge.current,o=n.slice(0,i);P(e=>e.map(e=>e.id===t?{...e,text:o}:e)),i>=e&&(clearInterval(r),V(null),j(""),P(e=>e.map(e=>e.id===t?{...e,isLoading:!1}:e)))},25);return()=>{clearInterval(r)}},[F,z]),t.createElement(Ba,null,t.createElement(Ya,{theme:Pe},t.createElement(mt.A,{style:{flex:1},behavior:"ios"===r.A.OS?"padding":"height",keyboardVerticalOffset:w?150:100},w&&!S&&!1===Z?t.createElement(Ha,{username:u||"",theme:Pe,productType:b}):t.createElement(t.Fragment,null,T?.[0]?.createdAt&&t.createElement(Ga,{theme:Pe},t.createElement(ns,{onPress:Ye},t.createElement(ts,null,R("chatbot.clearChat.text","Clear Chat"))),t.createElement(Xa,{theme:Pe},R("chat.chatStartedAt.text","Chat Started at {{time}}",{time:ti(T[0].createdAt,R)}))),t.createElement(gt.A,{ref:be,keyboardShouldPersistTaps:"handled",onScroll:e=>{const{contentOffset:t,contentSize:n,layoutMeasurement:r}=e.nativeEvent;Se.current=t.y;const i=n.height-(r.height+t.y);Ee.current=i>100,t.y<50&&J&&!G&&!Ce.current&&Ke()},scrollEventThrottle:16,style:c?{height:c,backgroundColor:Pe["core-01"]||"#FFFFFF"}:{backgroundColor:Pe["core-01"]||"#FFFFFF"},contentContainerStyle:{backgroundColor:Pe["core-01"]||Ae?.listContentBackgroundColor||"#FFFFFF",...rs.listContent,justifyContent:0===T.length?"center":"flex-end",minHeight:c||void 0,...Oe?{maxWidth:608,alignSelf:"center",width:"100%"}:{}},onContentSizeChange:(e,t)=>{xe.current=t,Ce.current||G||(ke.current?Ee.current||be.current?.scrollToEnd({animated:!1}):(be.current?.scrollToEnd({animated:!1}),ke.current=!0))}},G&&t.createElement(Za,null,t.createElement(vt.A,{size:"small",color:Pe["core-06"]||"#4F4E57"}),t.createElement(es,{theme:Pe},R("chat.loadingOlder.text","Loading older messages..."))),(()=>{const e=[...T];let r=null;for(let t=e.length-1;t>=0;t--){const n=e[t],i=Boolean(B[n.id]?.response?.body?.diamonds?.length>0);if("assistant"===n.role&&n.search_payload&&Object.keys(n.search_payload).length>0&&i){r=n.id;break}}return e.map((i,o)=>{const s=o===e.length-1,l=i.id===r,u=Boolean(B[i.id]?.response?.body?.diamonds&&B[i.id]?.response?.body?.diamonds.length>0);return t.createElement(n.A,{key:i.id+o,style:{gap:12}},t.createElement(ki,{message:i,userTheme:Ae,priceMode:U,handleFeedbackAction:Ve,onReloadResults:He,reloading:$.has(i.id),hasResults:u,totalResults:B[i.id]?.response?.header?B[i.id].response.header?.total_diamonds_found??0:null,shownResults:B[i.id]?.response?.body?.diamonds.length||0,onSuggestionSelect:Be,isLatest:s,isTyping:F===i.id}),"assistant"===i.role&&i.search_payload&&Object.keys(i.search_payload).length>0&&!B[i.id]&&t.createElement(Mo,{apiUrl:a,priceMode:U,messageId:i.id,payload:i.search_payload,onFetched:(e,t)=>{H(n=>({...n,[e]:t}))}}),"assistant"===i.role&&u&&!w&&t.createElement(Do,{data:(B[i.id]?.response?.body?.diamonds||[]).slice(0,5),totalResults:B[i.id]?.response?.header?.total_diamonds_found||0,onViewAll:Le,onItemPress:De,item:i,showMoreResults:()=>$e(i.id,i.search_payload),showLessResults:()=>We(i.id,i.search_payload),trackAnalyticsEvent:_,currentPage:oe[i.id]||1,isLoadingMore:se.has(i.id)}),"assistant"===i.role&&u&&l&&Ie?.ai_chat_bot?.show_recommendation&&!ue.has(i.id)&&t.createElement(Ho,{onPress:()=>Ue(i.id),loading:de.has(i.id)}),i.isRecommendation&&i.sourceMessageId&&i.sourceMessageId===r&&fe[i.sourceMessageId]&&fe[i.sourceMessageId].length>0&&t.createElement(ba,{recommendations:fe[i.sourceMessageId],onItemPress:De}),t.createElement(Fi,{message:i,priceMode:U||"",handleFeedbackAction:Ve,onReloadResults:He,reloading:$.has(i.id),hasResults:u}))})})()),t.createElement(Qa,null)),t.createElement(Ja,{theme:Pe},t.createElement(Wr,{value:O,onChangeText:I,onSend:je,disabled:N,placeholder:f,theme:Ae,inputRef:_e}),t.createElement(eo,{active:Te})))))});qa.displayName="ChatWidget";const Ya=vn.View`
417
+ `,qa=(0,t.forwardRef)((i,o)=>{let{apiUrl:a,userToken:s,priceMode:l,userName:u,modalHeight:c,theme:d,initialMessages:h=[],placeholder:f,onClose:p,onClearChat:m,onViewAllPress:g,onItemPress:v,isBetaMode:y,activeProductType:b,trackAnalyticsEvent:_,fromFilterScreen:w,fromFilterSplitScreen:S,translations:x,locale:E="en",classic_search_filters:C={},showWelcomeScreen:k,setShowWelcomeScreen:A}=i;const{t:R}=Br(),[T,P]=(0,t.useState)(h),[O,I]=(0,t.useState)(""),[N,L]=(0,t.useState)(!1),[D,M]=(0,t.useState)(null),[F,V]=(0,t.useState)(null),[z,j]=(0,t.useState)(""),[B,H]=(0,t.useState)({}),[$,W]=(0,t.useState)(new Set),[U,K]=(0,t.useState)(l||null),[q,Y]=(0,t.useState)(s||""),[G,X]=(0,t.useState)(!1),[J,Q]=(0,t.useState)(!0),[Z,ee]=(0,t.useState)(null),[te,ne]=(0,t.useState)(void 0),[re,ie]=(0,t.useState)(1),[oe,ae]=(0,t.useState)({}),[se,le]=(0,t.useState)(new Set),[ue,ce]=(0,t.useState)(new Set),[de,he]=(0,t.useState)(new Set),[fe,pe]=(0,t.useState)({}),[me,ge]=(0,t.useState)(null),[ve,ye]=(0,t.useState)(new Set),be=(0,t.useRef)(null),_e=(0,t.useRef)(null),we=(0,t.useRef)(!0),Se=(0,t.useRef)(0),xe=(0,t.useRef)(0),Ee=(0,t.useRef)(!1),Ce=(0,t.useRef)(!1),ke=(0,t.useRef)(!1),Ae=(0,t.useMemo)(()=>({...Vi,...d||{}}),[d]),{_identify:Re}=(()=>{const e=(0,t.useContext)(ht);return{trackEvent:async(t,n)=>{const r=await wa(),i=e||window.analytics;i&&await i.track(t,{...r,...n})},_identify:async(t,n)=>{const r=e||window.analytics;r&&await r.identify(t,n)},_track:async(t,n)=>{const i=await wa();if(o=i?.userAgent,o&&/^Mozilla\/5\.0 \([^;]+; CPU [^)]+ like Mac OS X\) AppleWebKit\/600\.1\.4 \(KHTML, like Gecko\) Version\/\d\.0 Mobile\/10B329 Safari\/8536\.25$/.test(o))return void console.warn("Skipping tracking for Segment user agent:",i.userAgent);var o;if(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return!e&&"web"===r.A.OS||[/bot/i,/crawl/i,/spider/i,/HeadlessChrome/i,/PhantomJS/i,/slurp/i,/curl/i,/wget/i,/httpclient/i].some(t=>t.test(e))}(i?.userAgent))return void console.warn("Skipping tracking for bot user agent:",i.userAgent);const a=e||window.analytics;if(!a)return;const s=await si();s?.id?await a.identify(`${s.id}`,{name:`${s.first_name} ${s.last_name}`,email:s.email,country:s.country}):(console.error("Track Event tracked without user:",t,JSON.stringify(n)),console.error("Can't identify as user is not logged in",JSON.stringify(s))),await a.track(t,{...i,...n})}}})(),Te=Boolean(y),Pe=Wt(),Oe=Pe.isTablet,{globalData:Ie}=function(){const[e,n]=(0,t.useState)(null),[r,i]=(0,t.useState)(!0),[o,a]=(0,t.useState)(null);return(0,t.useEffect)(()=>{(async()=>{try{i(!0);const e=await Pr("persist:root");if(!e)return void n(null);const t=JSON.parse(e),r="string"==typeof t?.globalData?JSON.parse(t.globalData):t?.globalData;n(r||null)}catch(e){a(e instanceof Error?e:new Error("Failed to get global data")),n(null)}finally{i(!1)}})()},[]),{globalData:e,loading:r,error:o,refetch:async()=>{try{i(!0);const e=await Pr("persist:root");if(!e)return void n(null);const t=JSON.parse(e),r="string"==typeof t?.globalData?JSON.parse(t.globalData):t?.globalData;n(r||null),a(null)}catch(e){a(e instanceof Error?e:new Error("Failed to get global data")),n(null)}finally{i(!1)}}}}();(0,t.useEffect)(()=>{jr({locale:E,translations:x})},[]),(0,t.useEffect)(()=>{(async function(){const e=await $i(),t=await Nr("vdbchat_conversations",null);return!(!t||t.token!==e)&&!0===t.chat_has_initialized})().then(ee)},[]),(0,t.useEffect)(()=>{(async(e,t)=>{if(!Dr.isInitialized)return;const n=await Vr(),r=zr(n,t),i=Fr(r);Dr.addResourceBundle(e,"translation",i,!0,!0),Dr.language!==e&&Dr.changeLanguage(e)})(E,x)},[E,x]),(0,t.useEffect)(()=>{(async()=>{try{if(!s){const e=await Nr("persist:userInfo",{}),t=JSON.parse(e?.user||"{}"),n=t?.token||"";n&&Y(n)}}catch(e){console.error("Failed to load auth data from storage",e)}})()},[s]);const Ne=async()=>{b&&await Lr("external_context",b)};(0,t.useEffect)(()=>{0===T.length&&Ne()},[T]),(0,t.useEffect)(()=>{Ne()},[b]);const Le=(0,t.useCallback)(e=>{let t=e?.search_payload;const n=JSON.stringify(t),i=e?.search_payload;if(!i)return;const o="string"==typeof i.lab_grown?"true"===i.lab_grown:"boolean"==typeof i.lab_grown&&i.lab_grown,s=`${a}webapp/${o?"lab-grown-diamonds":"natural-diamonds"}/search?priceMode=${U}&productType=${o?vi.LAB_GROWN_DIAMOND:vi.DIAMOND}&fromNewFilterScreen=false&filterSplitStep=1&sectionName=${"pair"===t.pair?"Pairs":"Single Stones"}&breadCrumbLabel=Stone%20Search&enterSecondFlow=false&saved_search=${encodeURIComponent(n)}`;g?g(s,i):"web"===r.A.OS&&window.open(s,"_parent")},[a,U,g]),De=(0,t.useCallback)(e=>{const t=`${a}webapp/${e.type===vi.LAB_GROWN_DIAMOND?"lab-grown-diamonds":"natural-diamonds"}/item-detail/${e.id}?productType=${e.type}&priceMode=${U}&breadCrumbLabel=Stone%20Details`;v?v(t,e):"web"===r.A.OS&&window.open(t,"_parent")},[a,U,v]),Me=(0,t.useMemo)(()=>Boolean(q),[q]),Fe=(0,t.useMemo)(()=>({conversationId:q}),[q]),Ve=(0,t.useCallback)(async(e,t,n)=>{try{let r="0";P(e=>{const t=e.find(e=>e.id===n);return r=t?.reaction||"0",e});const i=r===e?ni.UNSET:e,o=await(async(e,t,n,r)=>{const i=`${Hi(e,n,r)}`,o={reaction:t};return await fetch(i,{method:"POST",headers:await Wi(),body:JSON.stringify(o)})})(a,i,t,n);o.ok?P(e=>e.map(e=>e.id===n?{...e,reaction:i}:e)):console.error("Feedback API failed",o.status)}catch(e){console.error("Feedback API error",e)}},[]);(0,t.useEffect)(()=>{let e=!1;return h.length||(async()=>{if(Me)try{const t=await Gi(a,0,U);if(!e){const e=(await Yi(t,U)).reverse();if(void 0!==t?.has_more&&Q(t.has_more),void 0!==t?.next_cursor&&ne(t.next_cursor),ke.current=!1,Ee.current=!1,0===e.length){const e={id:"",role:"assistant",text:R("chat.welcome.message.text",'Describe the diamond you\'re looking for — for example, "2ct F VS2 under $10,000" or "1–2ct D–F VS pear" — and I\'ll take it from there.'),createdAt:Date.now(),isLoading:!1,suggestions:[],search_payload:{},reaction:"0"};P([e]),Q(!1)}else P(e),ee(!0)}}catch(e){console.error("Failed to fetch initial messages",e)}})(),()=>{e=!0}},[a,Fe,h.length,Me,U]),(0,t.useEffect)(()=>{if(0===T.length)return;const e=T.filter(e=>"assistant"===e.role&&e.recommendation_payload&&Object.keys(e.recommendation_payload).length>0);0!==e.length?e.forEach(e=>{const t=T.findIndex(t=>t.id===e.id);if(t<=0)return;let n;for(let e=t-1;e>=0;e--){const t=T[e];if("assistant"===t.role&&t.search_payload&&Object.keys(t.search_payload).length>0){n=t;break}}if(!n)return;if(fe[n.id])return void(ve.has(e.id)&&ye(t=>{const n=new Set(t);return n.delete(e.id),n}));const r=B[n.id]?.response?.body?.diamonds;if(!r||0===r.length)return void(ve.has(e.id)||(ye(t=>new Set(t).add(e.id)),P(t=>t.map(t=>t.id===e.id?{...t,text:R("recommendation.loading.text","Analyzing your diamonds to find the best match"),isLoading:!0}:t))));ce(e=>new Set(e).add(n.id));const i=e.recommendation_payload,o=[],a=e=>r.find(t=>String(t.id)===String(e));if(i?.best_pick){const e=a(i.best_pick.stock_item_id);e&&o.push({...e,recommendationType:"best_pick",score:i.best_pick.score,recommendation_pitch:i.best_pick.recommendation_pitch,strengths:i.best_pick.strengths,concerns:i.best_pick.concerns})}if(i?.runner_up){const e=a(i.runner_up.stock_item_id);e&&o.push({...e,recommendationType:"runner_up",score:i.runner_up.score,reason:i.runner_up.reason})}i?.also_recommended&&i.also_recommended.forEach(e=>{const t=a(e.stock_item_id);t&&o.push({...t,recommendationType:"also_recommended",score:e.score,reason:e.reason})}),o.length>0&&(pe(e=>({...e,[n.id]:o})),ye(t=>{const n=new Set(t);return n.delete(e.id),n}),P(t=>t.map(t=>t.id===e.id?{...t,text:R("recommendation.result.text","Here are my top recommendations based on your search results:"),isLoading:!1,isRecommendation:!0,sourceMessageId:n.id}:t)))}):ve.size>0&&ye(new Set)},[T,B,R]);const ze=(0,t.useCallback)(async e=>{const t=e.trim();if(!t||N)return;const n=await Nr("external_context"),r={id:`user-${Date.now()}`,role:"user",text:t,createdAt:Date.now(),external_context:n||null},i=`bot-loading-${Date.now()}`,o={id:i,role:"assistant",text:R("chat.thinking.text","Thinking"),createdAt:Date.now(),reaction:"0",isLoading:!0,search_payload:{}};P(e=>[...e,r,o]),M(i),L(!0);try{if(!Me)return void P(e=>e.map(e=>e.id===i?{...e,text:R("chat.authError.text","Chat is unavailable (missing user authentication)."),isLoading:!1}:e));const e=[...T,r],n=we.current?C:{};we.current=!1;const o=await async function(e,t,n,r,i){let o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{};const a=await Ui(),s=a?.[i]?.conversation_id??null;if(void 0===i)return null;const l=await Nr("external_context");l&&await Ir("external_context");const u={query:t,external_context:l||null,...Object.keys(o).length>0&&{classic_search_filters:o}};s&&(u.conversation_id=Number.isNaN(Number(s))?s:Number(s));const c=await fetch(ji(e),{method:"POST",headers:await Wi(),body:JSON.stringify(u)});if(!c.ok)throw new Error(`POST ${ji(e)} failed with ${c.status}`);const d=await c.json();if(d&&null!=d.conversation_id&&i){const e={...a};e[i]={conversation_id:d.conversation_id},await Ki(e)}return d}(a,t,Fe,e,U,n),s=(await Yi(o,U)).find(e=>"assistant"===e.role);if(s?.text){if(s?.search_payload&&"object"==typeof s.search_payload&&Object.keys(s.search_payload).length>0){const e=await Xi(a,s.search_payload);_?.(ci.AI_CHAT_WIDGET,{action:di.SEARCH_INITIATED,search_payload:s.search_payload});const t=e&&e.response&&e.response.body&&Array.isArray(e.response.body.diamonds)&&e.response.body.diamonds.length>0;t?w&&t&&Le({search_payload:s.search_payload}):_?.(ci.AI_CHAT_WIDGET,{action:di.NO_RESULTS_FOUND,search_payload:s.search_payload}),H(t=>({...t,[s.id]:e}))}M(null),P(e=>e.map(e=>e.id===i?{...e,id:s.id,text:"",isLoading:!1,suggestions:s.suggestions,search_payload:s.search_payload??{}}:e)),setTimeout(()=>{V(s.id),j(s.text),be.current?.scrollToEnd({animated:!0})},50)}else P(e=>e.map(e=>e.id===i?{...e,isLoading:!1}:e))}catch(e){P(e=>e.map(e=>e.id===i?{...e,text:R("chat.error.text","Sorry, something went wrong. Please try again."),isLoading:!1}:e)),console.error(e)}finally{L(!1),M(null),_e.current?.focus()}},[a,N,T,Fe,Me,U,Le,w,C]),je=(0,t.useCallback)(async()=>{const e=O.trim();e&&(I(""),ze(e),w&&k&&!1===Z&&(qi(!0).then(()=>ee(!0)),A?.(!1)))},[O,ze,w,S,k,Z]),Be=(0,t.useCallback)(e=>{ze(e)},[ze]),He=(0,t.useCallback)(async e=>{const t=e.id;try{W(e=>new Set(e).add(t));const n=e?.search_payload;if(!n||0===Object.keys(n).length)return;const r=await Xi(a,n);H(e=>({...e,[t]:r}))}catch(e){console.error("Reload results failed",e)}finally{W(e=>{const n=new Set(e);return n.delete(t),n})}},[]),$e=(0,t.useCallback)(async(e,t)=>{if(se.has(e))return;const n=(oe[e]||1)+1;if(!(n>6))try{le(t=>new Set(t).add(e));const r=await async function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;const r=await fetch(Bi(e),{method:"POST",headers:await Wi(),body:JSON.stringify({vdb:{...t,page_size:5,page_number:n}})});if(!r.ok)throw new Error(`POST failed with ${r.status}`);return await r.json()}(a,t,n);r?.response?.body?.diamonds&&(H(t=>{const n=t[e];if(!n)return t;const i=n.response?.body?.diamonds||[],o=r.response.body.diamonds;return{...t,[e]:{...n,response:{...n.response,body:{...n.response.body,diamonds:[...i,...o]}}}}}),ae(t=>({...t,[e]:n})))}catch(e){console.error("Failed to load more results:",e)}finally{le(t=>{const n=new Set(t);return n.delete(e),n})}},[a,se,oe]),We=(0,t.useCallback)(async(e,t)=>{try{const n=await Xi(a,t);n?.response?.body?.diamonds&&(H(t=>({...t,[e]:n})),ae(t=>({...t,[e]:1})))}catch(e){console.error("Failed to show less results:",e)}},[a]),Ue=(0,t.useCallback)(async e=>{const t=B[e]?.response?.body?.diamonds;if(!t||0===t.length)return;const n=await Nr("vdbchat_conversations",null),r=n?.conversations?.[U??""]?.conversation_id;if(!r)return void console.error("No conversation ID found for recommendations");ce(t=>new Set(t).add(e)),he(t=>new Set(t).add(e));const i=`recommendation-loading-${Date.now()}`,o={id:i,role:"assistant",text:R("recommendation.loading.text","Analyzing your diamonds to find the best match"),createdAt:Date.now(),isLoading:!0,reaction:"0"};P(e=>[...e,o]),ge(i);try{const n=t.slice(0,50).map(Ji),o=await async function(e,t,n){const r=await fetch(ji(e),{method:"POST",headers:await Wi(),body:JSON.stringify({conversation_id:t,agent_mode:"recommendation",query:"Recommend from my visible results",visible_items:n.slice(0,50)})});if(!r.ok)throw new Error(`POST ${ji(e)} recommendation failed with ${r.status}`);return await r.json()}(a,r,n),s=o.messages?.find(e=>"assistant"===e.role&&null!=e.recommendation_payload),l=s?.recommendation_payload,u=s?.content||R("recommendation.result.text","Here are my top recommendations based on your search results:"),c=[],d=e=>t.find(t=>String(t.id)===String(e));if(l?.best_pick){const e=d(l.best_pick.stock_item_id);e&&c.push({...e,recommendationType:"best_pick",score:l.best_pick.score,recommendation_pitch:l.best_pick.recommendation_pitch,strengths:l.best_pick.strengths,concerns:l.best_pick.concerns})}if(l?.runner_up){const e=d(l.runner_up.stock_item_id);e&&c.push({...e,recommendationType:"runner_up",score:l.runner_up.score,reason:l.runner_up.reason})}l?.also_recommended&&l.also_recommended.forEach(e=>{const t=d(e.stock_item_id);t&&c.push({...t,recommendationType:"also_recommended",score:e.score,reason:e.reason})}),pe(t=>({...t,[e]:c}));const h=`recommendation-${e}-${Date.now()}`;P(t=>t.map(t=>t.id===i?{...t,id:h,text:c.length>0?u:R("recommendation.noResults.text","I couldn't generate recommendations at this time. Please try again."),isLoading:!1,isRecommendation:!0,sourceMessageId:e}:t)),_?.(ci.AI_CHAT_WIDGET,{action:di.RECOMMENDATION_RECEIVED,recommendation_count:c.length})}catch(e){console.error("Failed to get recommendations:",e),P(e=>e.map(e=>e.id===i?{...e,text:R("recommendation.error.text","I couldn't generate a recommendation right now. Please try again."),isLoading:!1}:e))}finally{he(t=>{const n=new Set(t);return n.delete(e),n}),ge(null)}},[a,B,U,R,_]),Ke=(0,t.useCallback)(async()=>{if(G||!J||!Me)return;Ce.current=!0;const e=xe.current;X(!0);try{const t=await async function(e,t,n,r){const i=await Ui(),o=i?.[t??""]?.conversation_id??null;if(!o)return{messages:[],has_more:!1};const a={conversation_id:Number.isNaN(Number(o))?o:Number(o),fetch_history:!0};void 0!==n&&(a.cursor=n),void 0!==r&&(a.page=r);const s=await fetch(ji(e),{method:"POST",headers:await Wi(),body:JSON.stringify(a)});if(!s.ok)throw new Error(`POST ${ji(e)} failed with ${s.status}`);const l=await s.json();return{messages:l.messages||[],conversation_id:l.conversation_id,has_more:l.has_more??!1,next_cursor:l.next_cursor,total_count:l.total_count}}(a,U,te,re+1),n=(await Yi(t,U)).reverse();n.length>0?(P(e=>{const t=new Set(e.map(e=>e.id)),r=n.filter(e=>!t.has(e.id));return console.log("[...newMessages, ...prev]",[...r,...e]),[...r,...e]}),ie(e=>e+1),requestAnimationFrame(()=>{const t=xe.current-e;t>0&&be.current&&be.current.scrollTo({y:Se.current+t,animated:!1}),Ce.current=!1})):Ce.current=!1,Q(t.has_more??n.length>0),ne(t.next_cursor)}catch(e){console.error("Failed to load older messages",e),Ce.current=!1}finally{X(!1)}},[G,J,Me,a,U,te,re]);(0,t.useEffect)(()=>{const e=()=>{setTimeout(()=>{try{be.current?.scrollToEnd({animated:!0})}catch(e){}},100)},t="ios"===r.A.OS?"keyboardWillShow":"keyboardDidShow",n="ios"===r.A.OS?"keyboardWillHide":"keyboardDidHide",i=pt.A.addListener(t,e),o=pt.A.addListener(n,e);return()=>{i.remove(),o.remove()}},[]),(0,t.useEffect)(()=>(e.A.addListener("clearChat",Ye),e.A.addListener("changePriceMode",e=>qe(e.priceMode)),qe(),(async()=>{const e=await si(),t=e?.id,n=JSON.stringify(e?.email)??void 0;t&&Re(`${t}`,{email:n}).then()})(),()=>{e.A.removeAllListeners("clearChat"),e.A.removeAllListeners("changePriceMode")}),[]);const qe=async e=>{if(!e&&l&&(e=l),!e){let t=await Nr("persist:userInfo",{user:void 0});t=t&&t.user?JSON.parse(t.user):{},e=t?.price_mode}K(void 0===e?null:String(e))},Ye=(0,t.useCallback)(async()=>{try{await qi(!1),ee(!1);const e=await Nr("vdbchat_conversations",null);if(e&&U&&e.conversations?.[U]){const t={...e.conversations};delete t[U],await Lr("vdbchat_conversations",{token:e.token,conversations:t,chat_has_initialized:!1})}P([]),H({}),W(new Set),L(!1),M(null),V(null),j(""),Q(!0),ne(void 0),ie(1),ce(new Set),he(new Set),pe({}),ge(null),ye(new Set),ke.current=!1,Ee.current=!1,Ce.current=!1;const t=await Gi(a,0,U),n=(await Yi(t,U)).reverse();if(0===n.length){const e={id:"",role:"assistant",text:R("chat.welcome.message.text",'Describe the diamond you\'re looking for — for example, "2ct F VS2 under $10,000" or "1–2ct D–F VS pear" — and I\'ll take it from there.'),createdAt:Date.now(),isLoading:!1,suggestions:[],reaction:"0",search_payload:{}};P([e])}else P(n);m?.()}catch(e){console.error("Failed to clear chat",e)}},[a,U]);(0,t.useEffect)(()=>{if(!D||F)return;let e=0;const t=R("chat.thinking.text","Thinking"),n=setInterval(()=>{e=(e+1)%3;const n=".".repeat(e+1);P(e=>e.map(e=>e.id===D&&e.isLoading?{...e,text:`${t}${n}`}:e))},500);return()=>{clearInterval(n)}},[D,F,R]),(0,t.useEffect)(()=>{if(!me)return;let e=0;const t=R("recommendation.loading.text","Analyzing your diamonds to find the best match"),n=setInterval(()=>{e=(e+1)%3;const n=".".repeat(e+1);P(e=>e.map(e=>e.id===me&&e.isLoading?{...e,text:`${t}${n}`}:e))},500);return()=>{clearInterval(n)}},[me,R]),(0,t.useEffect)(()=>{if(0===ve.size)return;let e=0;const t=R("recommendation.loading.text","Analyzing your diamonds to find the best match"),n=setInterval(()=>{e=(e+1)%3;const n=".".repeat(e+1);P(e=>e.map(e=>ve.has(e.id)?{...e,text:`${t}${n}`}:e))},500);return()=>{clearInterval(n)}},[ve,R]),(0,t.useImperativeHandle)(o,()=>({clearChat:Ye}),[Ye]);const Ge=(0,t.useRef)(0);return(0,t.useEffect)(()=>{if(!F||!z)return void(Ge.current=0);Ge.current=0;const e=z.length,t=F,n=z,r=setInterval(()=>{Ge.current+=1;const i=Ge.current,o=n.slice(0,i);P(e=>e.map(e=>e.id===t?{...e,text:o}:e)),i>=e&&(clearInterval(r),V(null),j(""),P(e=>e.map(e=>e.id===t?{...e,isLoading:!1}:e)))},25);return()=>{clearInterval(r)}},[F,z]),t.createElement(Ba,null,t.createElement(Ya,{theme:Pe},t.createElement(mt.A,{style:{flex:1},behavior:"ios"===r.A.OS?"padding":"height",keyboardVerticalOffset:w?150:100},w&&!S&&!1===Z?t.createElement(Ha,{username:u||"",theme:Pe,productType:b}):t.createElement(t.Fragment,null,T?.[0]?.createdAt&&t.createElement(Ga,{theme:Pe},t.createElement(ns,{onPress:Ye},t.createElement(ts,null,R("chatbot.clearChat.text","Clear Chat"))),t.createElement(Xa,{theme:Pe},R("chat.chatStartedAt.text","Chat Started at {{time}}",{time:ti(T[0].createdAt,R)}))),t.createElement(gt.A,{ref:be,keyboardShouldPersistTaps:"handled",onScroll:e=>{const{contentOffset:t,contentSize:n,layoutMeasurement:r}=e.nativeEvent;Se.current=t.y;const i=n.height-(r.height+t.y);Ee.current=i>100,t.y<50&&J&&!G&&!Ce.current&&Ke()},scrollEventThrottle:16,style:c?{height:c,backgroundColor:Pe["core-01"]||"#FFFFFF"}:{backgroundColor:Pe["core-01"]||"#FFFFFF"},contentContainerStyle:{backgroundColor:Pe["core-01"]||Ae?.listContentBackgroundColor||"#FFFFFF",...rs.listContent,justifyContent:0===T.length?"center":"flex-end",minHeight:c||void 0,...Oe?{maxWidth:608,alignSelf:"center",width:"100%"}:{}},onContentSizeChange:(e,t)=>{xe.current=t,Ce.current||G||(ke.current?Ee.current||be.current?.scrollToEnd({animated:!1}):(be.current?.scrollToEnd({animated:!1}),ke.current=!0))}},G&&t.createElement(Za,null,t.createElement(vt.A,{size:"small",color:Pe["core-06"]||"#4F4E57"}),t.createElement(es,{theme:Pe},R("chat.loadingOlder.text","Loading older messages..."))),(()=>{const e=[...T];let r=null;for(let t=e.length-1;t>=0;t--){const n=e[t],i=Boolean(B[n.id]?.response?.body?.diamonds?.length>0);if("assistant"===n.role&&n.search_payload&&Object.keys(n.search_payload).length>0&&i){r=n.id;break}}return e.map((i,o)=>{const s=o===e.length-1,l=i.id===r,u=Boolean(B[i.id]?.response?.body?.diamonds&&B[i.id]?.response?.body?.diamonds.length>0);return t.createElement(n.A,{key:i.id+o,style:{gap:12}},t.createElement(ki,{message:i,userTheme:Ae,priceMode:U,handleFeedbackAction:Ve,onReloadResults:He,reloading:$.has(i.id),hasResults:u,totalResults:B[i.id]?.response?.header?B[i.id].response.header?.total_diamonds_found??0:null,shownResults:B[i.id]?.response?.body?.diamonds.length||0,onSuggestionSelect:Be,isLatest:s,isTyping:F===i.id}),"assistant"===i.role&&i.search_payload&&Object.keys(i.search_payload).length>0&&!B[i.id]&&t.createElement(Mo,{apiUrl:a,priceMode:U,messageId:i.id,payload:i.search_payload,onFetched:(e,t)=>{H(n=>({...n,[e]:t}))}}),"assistant"===i.role&&u&&!w&&t.createElement(Do,{data:(B[i.id]?.response?.body?.diamonds||[]).slice(0,5),totalResults:B[i.id]?.response?.header?.total_diamonds_found||0,onViewAll:Le,onItemPress:De,item:i,showMoreResults:()=>$e(i.id,i.search_payload),showLessResults:()=>We(i.id,i.search_payload),trackAnalyticsEvent:_,currentPage:oe[i.id]||1,isLoadingMore:se.has(i.id)}),"assistant"===i.role&&u&&l&&Ie?.ai_chat_bot?.show_recommendation&&!ue.has(i.id)&&t.createElement(Ho,{onPress:()=>Ue(i.id),loading:de.has(i.id)}),i.isRecommendation&&i.sourceMessageId&&i.sourceMessageId===r&&fe[i.sourceMessageId]&&fe[i.sourceMessageId].length>0&&t.createElement(ba,{recommendations:fe[i.sourceMessageId],onItemPress:De}),t.createElement(Fi,{message:i,priceMode:U||"",handleFeedbackAction:Ve,onReloadResults:He,reloading:$.has(i.id),hasResults:u}))})})()),t.createElement(Qa,null)),t.createElement(Ja,{theme:Pe},t.createElement(Wr,{value:O,onChangeText:I,onSend:je,disabled:N,placeholder:f,theme:Ae,inputRef:_e}),t.createElement(eo,{active:Te})))))});qa.displayName="ChatWidget";const Ya=vn.View`
418
418
  background-color: ${e=>{let{theme:t}=e;return t["core-01"]||"#FFFFFF"}};
419
419
  flex: 1;
420
420
  width: 100%;
@@ -500,7 +500,7 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
500
500
  if (!trimmed) return;
501
501
  setInput("");
502
502
  sendMessage(trimmed);
503
- if (fromFilterScreen && !fromFilterSplitScreen && showWelcomeScreen && chatHasInitialized === false) {
503
+ if (fromFilterScreen && showWelcomeScreen && chatHasInitialized === false) {
504
504
  void (0, _api.setChatHasInitialized)(true).then(() => setChatHasInitializedState(true));
505
505
  setShowWelcomeScreen?.(false);
506
506
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_ChatInput","_MessageBubble","_MessageMetaRow","_interopRequireDefault","_theme","_api","_BetaNotice","_ProductsList","_LazyProductsFetcher","_RecommendationCTA","_RecommendationResults","_utils","_useAnalytics","_storage","_ThemeProvider","_native","_i18n","_useGlobalData","_WelcomeScreen","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ChatWidget","exports","forwardRef","apiUrl","userToken","userTokenProp","priceMode","priceModeProp","userName","userNameProp","modalHeight","theme","themeOverrides","initialMessages","placeholder","onClose","onClearChat","onViewAllPress","onItemPress","onItemPressProp","isBetaMode","isBetaModeProp","activeProductType","trackAnalyticsEvent","fromFilterScreen","fromFilterSplitScreen","translations","locale","classic_search_filters","showWelcomeScreen","setShowWelcomeScreen","ref","useTranslation","messages","setMessages","useState","input","setInput","loading","setLoading","loadingMessageId","setLoadingMessageId","typingMessageId","setTypingMessageId","typingFullText","setTypingFullText","productsByMsg","setProductsByMsg","reloadLoadingIds","setReloadLoadingIds","Set","setPriceMode","setUserToken","loadingOlder","setLoadingOlder","hasMoreMessages","setHasMoreMessages","chatHasInitialized","setChatHasInitializedState","nextCursor","setNextCursor","undefined","currentPage","setCurrentPage","searchResultsPages","setSearchResultsPages","loadingMoreResults","setLoadingMoreResults","recommendationRequestedFor","setRecommendationRequestedFor","recommendationLoading","setRecommendationLoading","recommendationsByMsg","setRecommendationsByMsg","recommendationLoadingMsgId","setRecommendationLoadingMsgId","pendingRecommendationRestore","setPendingRecommendationRestore","scrollRef","useRef","inputRef","isFirstMessageRef","scrollYRef","contentHeightRef","isUserScrollingRef","isPaginatingRef","initialScrollDoneRef","themeProps","useMemo","mergeTheme","_identify","useUserAnalytics","betaActive","Boolean","useTheme","isTablet","globalData","useGlobalData","useEffect","initI18n","getChatHasInitialized","then","updateTranslations","loadAuthData","userInfo","Storage","getJSON","userData","JSON","parse","user","token","console","error","setActiveProduct","setJSON","length","onViewAll","useCallback","item","searchPayload","search_payload","stringifiedSearchPayload","stringify","payload","isLabgrown","lab_grown","deepLinkUrl","ProductCategory","LAB_GROWN_DIAMOND","DIAMOND","pair","encodeURIComponent","Platform","OS","window","open","type","id","hasAuth","apiParams","conversationId","handleFeedbackAction","action","conversation_id","message_id","currentReaction","prev","msg","find","m","reaction","nextAction","FeedbackAction","UNSET","res","handleFeedbackActionApi","ok","map","status","cancelled","load","initial","fetchInitialMessages","normalised","normaliseMessages","reverse","has_more","next_cursor","current","initialAssistant","role","text","createdAt","Date","now","isLoading","suggestions","recommendationMessages","filter","recommendation_payload","keys","size","forEach","recMsg","recIndex","findIndex","sourceMsg","next","delete","diamonds","response","body","add","prevMsgs","recommendations","findDiamondById","stockItemId","d","String","best_pick","diamond","stock_item_id","push","recommendationType","score","recommendation_pitch","strengths","concerns","runner_up","reason","also_recommended","rec","isRecommendation","sourceMessageId","sendMessage","rawText","trimmed","trim","external_context","userMessage","loadingId","loadingMessage","historyForApi","filtersForFirstMessage","updatedMessages","sendUserMessage","latestAssistant","productsResult","getProducts","AIEventNames","AI_CHAT_WIDGET","AIEventTypes","SEARCH_INITIATED","hasDiamonds","Array","isArray","NO_RESULTS_FOUND","setTimeout","scrollToEnd","animated","err","focus","identifySegmentUser","getUserDetails","userId","email","handleSend","setChatHasInitialized","handleSuggestionSelect","value","handleReloadResults","handleShowMoreResults","messageId","currentPageForMessage","nextPage","newResults","getProductsPaginated","currentData","existingDiamonds","newDiamonds","handleShowLessResults","initialResults","handleRecommendationRequest","stored","conversations","loadingMsgId","visibleItems","slice","mapDiamondToRecommendationItem","getRecommendations","assistantMessage","responseText","content","recommendationMsgId","RECOMMENDATION_RECEIVED","recommendation_count","loadOlderMessages","prevHeight","result","fetchOlderMessages","olderMessages","existingIds","newMessages","log","requestAnimationFrame","newHeight","heightDiff","scrollTo","y","scrollToBottom","_","showEvent","hideEvent","subShow","Keyboard","addListener","subHide","remove","DeviceEventEmitter","handleClearChat","data","changePriceMode","removeAllListeners","_priceMode","price_mode","updatedConversations","chat_has_initialized","fresh","step","base","interval","setInterval","dots","repeat","clearInterval","useImperativeHandle","clearChat","typingIndexRef","total","finalMsgId","fullText","currentIndex","renderBottomContainer","createElement","BottomContainer","ChatInput","onChangeText","onSend","disabled","active","Container","KeyboardAvoidingView","style","flex","behavior","keyboardVerticalOffset","username","productType","Fragment","EmptyContainer","ClearChatContainer","onPress","ClearChatText","EmptyText","time","formatToTime","ScrollView","keyboardShouldPersistTaps","onScroll","contentOffset","contentSize","layoutMeasurement","nativeEvent","distanceFromBottom","height","scrollEventThrottle","backgroundColor","contentContainerStyle","listContentBackgroundColor","styles","listContent","justifyContent","minHeight","maxWidth","alignSelf","width","onContentSizeChange","_width","LoadingOlderContainer","ActivityIndicator","color","LoadingOlderText","ordered","latestResultMsgId","msgHasDiamonds","index","isLatest","isLatestResultMsg","View","key","gap","MessageBubble","message","userTheme","onReloadResults","reloading","hasResults","totalResults","header","total_diamonds_found","shownResults","onSuggestionSelect","isTyping","onFetched","showMoreResults","showLessResults","isLoadingMore","ai_chat_bot","show_recommendation","LineView","displayName","styled","Text","css","TouchableOpacity","StyleSheet","create","paddingVertical","flexGrow","alignItems"],"sourceRoot":"../../../src","sources":["components/ChatWidget.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_ChatInput","_MessageBubble","_MessageMetaRow","_interopRequireDefault","_theme","_api","_BetaNotice","_ProductsList","_LazyProductsFetcher","_RecommendationCTA","_RecommendationResults","_utils","_useAnalytics","_storage","_ThemeProvider","_native","_i18n","_useGlobalData","_WelcomeScreen","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ChatWidget","exports","forwardRef","apiUrl","userToken","userTokenProp","priceMode","priceModeProp","userName","userNameProp","modalHeight","theme","themeOverrides","initialMessages","placeholder","onClose","onClearChat","onViewAllPress","onItemPress","onItemPressProp","isBetaMode","isBetaModeProp","activeProductType","trackAnalyticsEvent","fromFilterScreen","fromFilterSplitScreen","translations","locale","classic_search_filters","showWelcomeScreen","setShowWelcomeScreen","ref","useTranslation","messages","setMessages","useState","input","setInput","loading","setLoading","loadingMessageId","setLoadingMessageId","typingMessageId","setTypingMessageId","typingFullText","setTypingFullText","productsByMsg","setProductsByMsg","reloadLoadingIds","setReloadLoadingIds","Set","setPriceMode","setUserToken","loadingOlder","setLoadingOlder","hasMoreMessages","setHasMoreMessages","chatHasInitialized","setChatHasInitializedState","nextCursor","setNextCursor","undefined","currentPage","setCurrentPage","searchResultsPages","setSearchResultsPages","loadingMoreResults","setLoadingMoreResults","recommendationRequestedFor","setRecommendationRequestedFor","recommendationLoading","setRecommendationLoading","recommendationsByMsg","setRecommendationsByMsg","recommendationLoadingMsgId","setRecommendationLoadingMsgId","pendingRecommendationRestore","setPendingRecommendationRestore","scrollRef","useRef","inputRef","isFirstMessageRef","scrollYRef","contentHeightRef","isUserScrollingRef","isPaginatingRef","initialScrollDoneRef","themeProps","useMemo","mergeTheme","_identify","useUserAnalytics","betaActive","Boolean","useTheme","isTablet","globalData","useGlobalData","useEffect","initI18n","getChatHasInitialized","then","updateTranslations","loadAuthData","userInfo","Storage","getJSON","userData","JSON","parse","user","token","console","error","setActiveProduct","setJSON","length","onViewAll","useCallback","item","searchPayload","search_payload","stringifiedSearchPayload","stringify","payload","isLabgrown","lab_grown","deepLinkUrl","ProductCategory","LAB_GROWN_DIAMOND","DIAMOND","pair","encodeURIComponent","Platform","OS","window","open","type","id","hasAuth","apiParams","conversationId","handleFeedbackAction","action","conversation_id","message_id","currentReaction","prev","msg","find","m","reaction","nextAction","FeedbackAction","UNSET","res","handleFeedbackActionApi","ok","map","status","cancelled","load","initial","fetchInitialMessages","normalised","normaliseMessages","reverse","has_more","next_cursor","current","initialAssistant","role","text","createdAt","Date","now","isLoading","suggestions","recommendationMessages","filter","recommendation_payload","keys","size","forEach","recMsg","recIndex","findIndex","sourceMsg","next","delete","diamonds","response","body","add","prevMsgs","recommendations","findDiamondById","stockItemId","d","String","best_pick","diamond","stock_item_id","push","recommendationType","score","recommendation_pitch","strengths","concerns","runner_up","reason","also_recommended","rec","isRecommendation","sourceMessageId","sendMessage","rawText","trimmed","trim","external_context","userMessage","loadingId","loadingMessage","historyForApi","filtersForFirstMessage","updatedMessages","sendUserMessage","latestAssistant","productsResult","getProducts","AIEventNames","AI_CHAT_WIDGET","AIEventTypes","SEARCH_INITIATED","hasDiamonds","Array","isArray","NO_RESULTS_FOUND","setTimeout","scrollToEnd","animated","err","focus","identifySegmentUser","getUserDetails","userId","email","handleSend","setChatHasInitialized","handleSuggestionSelect","value","handleReloadResults","handleShowMoreResults","messageId","currentPageForMessage","nextPage","newResults","getProductsPaginated","currentData","existingDiamonds","newDiamonds","handleShowLessResults","initialResults","handleRecommendationRequest","stored","conversations","loadingMsgId","visibleItems","slice","mapDiamondToRecommendationItem","getRecommendations","assistantMessage","responseText","content","recommendationMsgId","RECOMMENDATION_RECEIVED","recommendation_count","loadOlderMessages","prevHeight","result","fetchOlderMessages","olderMessages","existingIds","newMessages","log","requestAnimationFrame","newHeight","heightDiff","scrollTo","y","scrollToBottom","_","showEvent","hideEvent","subShow","Keyboard","addListener","subHide","remove","DeviceEventEmitter","handleClearChat","data","changePriceMode","removeAllListeners","_priceMode","price_mode","updatedConversations","chat_has_initialized","fresh","step","base","interval","setInterval","dots","repeat","clearInterval","useImperativeHandle","clearChat","typingIndexRef","total","finalMsgId","fullText","currentIndex","renderBottomContainer","createElement","BottomContainer","ChatInput","onChangeText","onSend","disabled","active","Container","KeyboardAvoidingView","style","flex","behavior","keyboardVerticalOffset","username","productType","Fragment","EmptyContainer","ClearChatContainer","onPress","ClearChatText","EmptyText","time","formatToTime","ScrollView","keyboardShouldPersistTaps","onScroll","contentOffset","contentSize","layoutMeasurement","nativeEvent","distanceFromBottom","height","scrollEventThrottle","backgroundColor","contentContainerStyle","listContentBackgroundColor","styles","listContent","justifyContent","minHeight","maxWidth","alignSelf","width","onContentSizeChange","_width","LoadingOlderContainer","ActivityIndicator","color","LoadingOlderText","ordered","latestResultMsgId","msgHasDiamonds","index","isLatest","isLatestResultMsg","View","key","gap","MessageBubble","message","userTheme","onReloadResults","reloading","hasResults","totalResults","header","total_diamonds_found","shownResults","onSuggestionSelect","isTyping","onFetched","showMoreResults","showLessResults","isLoadingMore","ai_chat_bot","show_recommendation","LineView","displayName","styled","Text","css","TouchableOpacity","StyleSheet","create","paddingVertical","flexGrow","alignItems"],"sourceRoot":"../../../src","sources":["components/ChatWidget.tsx"],"mappings":"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","ignoreList":[]}
@@ -225,52 +225,43 @@ const renderSearchParams = ({
225
225
  searchPayload.symmetries.push(searchPayload?.symmetry_to);
226
226
  }
227
227
  if (searchPayload?.three_x) {
228
- if (searchPayload.lab_grown) {
229
- searchPayload.cutGrades = ["Excellent", "8X"];
230
- searchPayload.polishes = ["Excellent", "8X"];
231
- searchPayload.symmetries = ["Excellent", "8X"];
232
- searchPayload.cps_three_x_options = ["8X", "Excellent"];
233
- searchPayload.cut_from = "Excellent";
234
- searchPayload.cut_to = "8X";
235
- searchPayload.polish_from = "Excellent";
236
- searchPayload.polish_to = "8X";
237
- searchPayload.symmetry_from = "Excellent";
238
- searchPayload.symmetry_to = "8X";
239
- } else {
240
- searchPayload.cutGrades = ["Excellent", "Excellent"];
241
- searchPayload.polishes = ["Excellent", "Excellent"];
242
- searchPayload.symmetries = ["Excellent", "Excellent"];
243
- searchPayload.cut_from = "Excellent";
244
- searchPayload.cut_to = "Excellent";
245
- searchPayload.polish_from = "Excellent";
246
- searchPayload.polish_to = "Excellent";
247
- searchPayload.symmetry_from = "Excellent";
248
- searchPayload.symmetry_to = "Excellent";
249
- }
250
- delete searchPayload.three_x;
251
- }
252
- if (searchPayload?.three_vg_plus && searchPayload.lab_grown) {
253
- searchPayload.cutGrades = ["Very Good", "8X"];
254
- searchPayload.polishes = ["Very Good", "8X"];
255
- searchPayload.symmetries = ["Very Good", "8X"];
228
+ // 3X: Triple Excellent - Cut/Polish/Symmetry all from Excellent to Ideal
229
+ searchPayload.cut_from = "Excellent";
230
+ searchPayload.cut_to = "Ideal";
231
+ searchPayload.polish_from = "Excellent";
232
+ searchPayload.polish_to = "Ideal";
233
+ searchPayload.symmetry_from = "Excellent";
234
+ searchPayload.symmetry_to = "Ideal";
235
+ searchPayload.cps_three_x_options = ["Ideal", "Excellent"]; // [max, min] range
236
+ delete searchPayload.cutGrades;
237
+ delete searchPayload.polishes;
238
+ delete searchPayload.symmetries;
239
+ }
240
+ if (searchPayload?.three_vg_plus) {
241
+ // 3VG+: Three Very Good Plus - Cut/Polish/Symmetry all from Very Good to Ideal
256
242
  searchPayload.cut_from = "Very Good";
257
- searchPayload.cut_to = "8X";
243
+ searchPayload.cut_to = "Ideal";
258
244
  searchPayload.polish_from = "Very Good";
259
- searchPayload.polish_to = "8X";
245
+ searchPayload.polish_to = "Ideal";
260
246
  searchPayload.symmetry_from = "Very Good";
261
- searchPayload.symmetry_to = "8X";
262
- searchPayload.cps_three_vg_plus_options = ["8X", "Very Good"];
263
- }
264
- if (searchPayload?.eight_x && searchPayload.lab_grown) {
265
- searchPayload.cutGrades = ["8X", "8X"];
266
- searchPayload.polishes = ["8X", "8X"];
267
- searchPayload.symmetries = ["8X", "8X"];
247
+ searchPayload.symmetry_to = "Ideal";
248
+ searchPayload.cps_three_vg_plus_options = ["Ideal", "Very Good"]; // [max, min] range
249
+ delete searchPayload.cutGrades;
250
+ delete searchPayload.polishes;
251
+ delete searchPayload.symmetries;
252
+ }
253
+ if (searchPayload?.eight_x) {
254
+ // 8X: Cut/Polish/Symmetry all from 8X to Ideal
268
255
  searchPayload.cut_from = "8X";
269
- searchPayload.cut_to = "8X";
256
+ searchPayload.cut_to = "Ideal";
270
257
  searchPayload.polish_from = "8X";
271
- searchPayload.polish_to = "8X";
258
+ searchPayload.polish_to = "Ideal";
272
259
  searchPayload.symmetry_from = "8X";
273
- searchPayload.symmetry_to = "8X";
260
+ searchPayload.symmetry_to = "Ideal";
261
+ searchPayload.cps_eight_x_options = ["Ideal", "8X"]; // [max, min] range
262
+ delete searchPayload.cutGrades;
263
+ delete searchPayload.polishes;
264
+ delete searchPayload.symmetries;
274
265
  }
275
266
  if (searchPayload?.page_size) {
276
267
  delete searchPayload.page_size;
@@ -414,10 +405,10 @@ const generateSavedSearchName = (search_params, shortenShapeValues = false, t) =
414
405
 
415
406
  // Symmetry
416
407
  options.symmetries = [];
417
- if (search_params?.polish_from) {
408
+ if (search_params?.symmetry_from) {
418
409
  options.symmetries.push(search_params?.symmetry_from);
419
410
  }
420
- if (search_params?.polish_to) {
411
+ if (search_params?.symmetry_to) {
421
412
  options.symmetries.push(search_params?.symmetry_to);
422
413
  }
423
414
  if (search_params.symmetries?.length) options.symmetries = search_params.symmetries;