@anker-in/ui 0.1.5 → 0.1.9

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.
@@ -14,7 +14,7 @@ var Title = ({
14
14
  title = "",
15
15
  ...props
16
16
  }) => {
17
- return /* @__PURE__ */ jsx("div", { className: cn("w-full"), ...props, children: /* @__PURE__ */ jsx("h2", { className: "text-[48px] font-semibold mb-12 text-[#080A0F]", children: title }) });
17
+ return /* @__PURE__ */ jsx("div", { className: cn("w-full"), ...props, children: /* @__PURE__ */ jsx("h2", { className: "text-[32px] min-l:text-[48px] font-bold mb-12 text-[#080A0F]", children: title }) });
18
18
  };
19
19
  Title.displayName = "Title";
20
20
  var StudioCard = ({
@@ -22,18 +22,18 @@ var StudioCard = ({
22
22
  name,
23
23
  availableTime,
24
24
  address,
25
- city,
26
- state,
27
- zipCode,
28
- country = "United States",
29
25
  euifyMakeModel,
30
26
  distance,
31
27
  onSchedule,
28
+ pageData = {
29
+ scheduleNow: "Schedule Now",
30
+ available: "Available",
31
+ away: "away"
32
+ },
32
33
  className,
33
34
  style,
34
35
  ...props
35
36
  }) => {
36
- const fullAddress = `${address}, ${city}, ${state} ${country} ${zipCode}`;
37
37
  const [isHovered, setIsHovered] = React2.useState(false);
38
38
  const handleScheduleClick = () => {
39
39
  onSchedule?.(code);
@@ -66,7 +66,8 @@ var StudioCard = ({
66
66
  /* @__PURE__ */ jsx("h3", { className: "text-xl font-semibold text-gray-900", children: name }),
67
67
  distance !== void 0 && /* @__PURE__ */ jsxs("span", { className: "text-sm font-medium text-[#2E8B57] bg-[#E8F5E9] px-3 py-1 rounded-full whitespace-nowrap ml-2", children: [
68
68
  formatDistance(distance),
69
- " away"
69
+ " ",
70
+ pageData.away
70
71
  ] })
71
72
  ] }),
72
73
  /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3 mb-3", children: [
@@ -123,7 +124,8 @@ var StudioCard = ({
123
124
  }
124
125
  ),
125
126
  /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsxs("p", { className: "text-sm text-gray-600", children: [
126
- "Available ",
127
+ pageData.available,
128
+ " ",
127
129
  availableTime
128
130
  ] }) })
129
131
  ] }),
@@ -157,7 +159,7 @@ var StudioCard = ({
157
159
  ]
158
160
  }
159
161
  ),
160
- /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("p", { className: "text-sm text-gray-600", children: fullAddress }) })
162
+ /* @__PURE__ */ jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsx("p", { className: "text-sm text-gray-600 break-words", children: address }) })
161
163
  ] }),
162
164
  /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3 mb-6", children: [
163
165
  /* @__PURE__ */ jsxs(
@@ -214,10 +216,10 @@ var StudioCard = ({
214
216
  "w-full px-6 py-3 rounded-full",
215
217
  "bg-white text-gray-900 border border-gray-900",
216
218
  "font-medium text-sm",
217
- "hover:bg-gray-900",
219
+ "hover:bg-gray-900 hover:text-white",
218
220
  "transition-all duration-200"
219
221
  ),
220
- children: "Schedule Now"
222
+ children: pageData.scheduleNow
221
223
  }
222
224
  )
223
225
  ]
@@ -249,6 +251,12 @@ var StudioMap = ({
249
251
  defaultZoom = 4,
250
252
  mapHeight = "600px",
251
253
  onSchedule,
254
+ pageData = {
255
+ apiKeyRequired: "Google Maps API Key is required",
256
+ loadingMap: "Loading map...",
257
+ scheduleNow: "Schedule Now",
258
+ available: "Available"
259
+ },
252
260
  className,
253
261
  ...props
254
262
  }) => {
@@ -325,18 +333,22 @@ var StudioMap = ({
325
333
  validLocations.forEach((location) => {
326
334
  const lat = Number(location.lat);
327
335
  const lng = Number(location.lng);
336
+ const svgIcon = {
337
+ url: `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(`
338
+ <svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
339
+ <circle cx="24" cy="24" r="22" fill="#00000010"/>
340
+ <circle cx="24" cy="24" r="10" fill="#000000"/>
341
+ <circle cx="24" cy="24" r="5" fill="#3ADB67"/>
342
+ </svg>
343
+ `)}`,
344
+ scaledSize: { width: 48, height: 48 },
345
+ anchor: { x: 24, y: 24 }
346
+ };
328
347
  const marker = new google.maps.Marker({
329
348
  position: { lat, lng },
330
349
  map: googleMapRef.current,
331
350
  title: location.name,
332
- icon: {
333
- path: google.maps.SymbolPath.CIRCLE,
334
- scale: 10,
335
- fillColor: "#000000",
336
- fillOpacity: 1,
337
- strokeColor: "#ffffff",
338
- strokeWeight: 2
339
- }
351
+ icon: svgIcon
340
352
  });
341
353
  marker.addListener("click", () => {
342
354
  setSelectedLocation(location);
@@ -347,13 +359,13 @@ var StudioMap = ({
347
359
  <svg style="display: inline-block; width: 16px; height: 16px; margin-right: 4px; vertical-align: middle;" fill="currentColor" viewBox="0 0 20 20">
348
360
  <path d="M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z"/>
349
361
  </svg>
350
- <span style="vertical-align: middle;">Available ${location.availableTime}</span>
362
+ <span style="vertical-align: middle;">${pageData.available} ${location.availableTime}</span>
351
363
  </div>` : ""}
352
364
  <div style="margin-bottom: 8px; color: #666;">
353
365
  <svg style="display: inline-block; width: 16px; height: 16px; margin-right: 4px; vertical-align: middle;" fill="currentColor" viewBox="0 0 20 20">
354
366
  <path fill-rule="evenodd" d="M5.05 4.05a7 7 0 119.9 9.9L10 18.9l-4.95-4.95a7 7 0 010-9.9zM10 11a2 2 0 100-4 2 2 0 000 4z" clip-rule="evenodd"/>
355
367
  </svg>
356
- <span style="vertical-align: middle;">${location.address}, ${location.city}, ${location.state} ${location.country} ${location.zipCode}</span>
368
+ <span style="vertical-align: middle;">${location.address}</span>
357
369
  </div>
358
370
  ${location.euifyMakeModel ? `<div style="margin-bottom: 12px; color: #666;">
359
371
  <svg style="display: inline-block; width: 16px; height: 16px; margin-right: 4px; vertical-align: middle;" fill="currentColor" viewBox="0 0 20 20">
@@ -377,7 +389,7 @@ var StudioMap = ({
377
389
  onmouseover="this.style.background='#333'"
378
390
  onmouseout="this.style.background='#000'"
379
391
  >
380
- Schedule Now
392
+ ${pageData.scheduleNow}
381
393
  </button>
382
394
  </div>
383
395
  `;
@@ -433,13 +445,13 @@ var StudioMap = ({
433
445
  <svg style="display: inline-block; width: 16px; height: 16px; margin-right: 4px; vertical-align: middle;" fill="currentColor" viewBox="0 0 20 20">
434
446
  <path d="M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z"/>
435
447
  </svg>
436
- <span style="vertical-align: middle;">Available ${location.availableTime}</span>
448
+ <span style="vertical-align: middle;">${pageData.available} ${location.availableTime}</span>
437
449
  </div>` : ""}
438
450
  <div style="margin-bottom: 8px; color: #666;">
439
451
  <svg style="display: inline-block; width: 16px; height: 16px; margin-right: 4px; vertical-align: middle;" fill="currentColor" viewBox="0 0 20 20">
440
452
  <path fill-rule="evenodd" d="M5.05 4.05a7 7 0 119.9 9.9L10 18.9l-4.95-4.95a7 7 0 010-9.9zM10 11a2 2 0 100-4 2 2 0 000 4z" clip-rule="evenodd"/>
441
453
  </svg>
442
- <span style="vertical-align: middle;">${location.address}, ${location.city}, ${location.state} ${location.country} ${location.zipCode}</span>
454
+ <span style="vertical-align: middle;">${location.address}</span>
443
455
  </div>
444
456
  ${location.euifyMakeModel ? `<div style="margin-bottom: 12px; color: #666;">
445
457
  <svg style="display: inline-block; width: 16px; height: 16px; margin-right: 4px; vertical-align: middle;" fill="currentColor" viewBox="0 0 20 20">
@@ -463,7 +475,7 @@ var StudioMap = ({
463
475
  onmouseover="this.style.background='#333'"
464
476
  onmouseout="this.style.background='#000'"
465
477
  >
466
- Schedule Now
478
+ ${pageData.scheduleNow}
467
479
  </button>
468
480
  </div>
469
481
  `;
@@ -499,7 +511,7 @@ var StudioMap = ({
499
511
  ),
500
512
  style: { height: mapHeight },
501
513
  ...props,
502
- children: /* @__PURE__ */ jsx("p", { className: "text-gray-600", children: "Google Maps API Key is required" })
514
+ children: /* @__PURE__ */ jsx("p", { className: "text-gray-600", children: pageData.apiKeyRequired })
503
515
  }
504
516
  );
505
517
  }
@@ -512,7 +524,7 @@ var StudioMap = ({
512
524
  /* @__PURE__ */ jsx("div", { ref: mapRef, style: { height: mapHeight } }),
513
525
  !isLoaded && /* @__PURE__ */ jsx("div", { className: "absolute inset-0 flex items-center justify-center bg-gray-100", children: /* @__PURE__ */ jsxs("div", { className: "text-center", children: [
514
526
  /* @__PURE__ */ jsx("div", { className: "inline-block animate-spin rounded-full h-8 w-8 border-4 border-gray-300 border-t-gray-900 mb-2" }),
515
- /* @__PURE__ */ jsx("p", { className: "text-gray-600", children: "Loading map..." })
527
+ /* @__PURE__ */ jsx("p", { className: "text-gray-600", children: pageData.loadingMap })
516
528
  ] }) })
517
529
  ]
518
530
  }
@@ -608,65 +620,6 @@ var AntdMobileIsolated = ({
608
620
  AntdMobileIsolated.displayName = "AntdMobileIsolated";
609
621
 
610
622
  // src/components/DemoRoom/utils/addressParser.ts
611
- var KNOWN_COUNTRIES = [
612
- "United States",
613
- "United Kingdom",
614
- "American Samoa",
615
- "United Arab Emirates",
616
- "Bosnia and Herzegovina",
617
- "Trinidad and Tobago",
618
- "Saint Kitts and Nevis",
619
- "Antigua and Barbuda",
620
- "Saint Vincent and the Grenadines",
621
- "S\xE3o Tom\xE9 and Pr\xEDncipe",
622
- "United States Minor Outlying Islands",
623
- "British Virgin Islands",
624
- "United States Virgin Islands",
625
- "Cayman Islands",
626
- "Cook Islands",
627
- "Falkland Islands",
628
- "Faroe Islands",
629
- "Marshall Islands",
630
- "Northern Mariana Islands",
631
- "Pitcairn Islands",
632
- "Solomon Islands",
633
- "Turks and Caicos Islands",
634
- "Wallis and Futuna"
635
- ];
636
- function parseAddress(address) {
637
- const parts = address.split(",").map((part) => part.trim()).filter(Boolean);
638
- let country = "United States";
639
- let state = "";
640
- let city = "";
641
- if (parts.length === 0) {
642
- return { country, state, city };
643
- }
644
- const lastPart = parts[parts.length - 1];
645
- const matchedCountry = KNOWN_COUNTRIES.find(
646
- (knownCountry) => lastPart.toLowerCase() === knownCountry.toLowerCase()
647
- );
648
- if (matchedCountry) {
649
- country = matchedCountry;
650
- if (parts.length >= 2) {
651
- state = parts[parts.length - 2].split(" ")[0];
652
- }
653
- if (parts.length >= 3) {
654
- city = parts[parts.length - 3];
655
- }
656
- } else {
657
- if (parts.length >= 2) {
658
- state = parts[parts.length - 1].split(" ")[0];
659
- city = parts[parts.length - 2];
660
- } else if (parts.length === 1) {
661
- city = parts[0];
662
- }
663
- }
664
- return {
665
- country: country.trim(),
666
- state: state.trim(),
667
- city: city.trim()
668
- };
669
- }
670
623
  function groupByAlphabet(items) {
671
624
  const groups = /* @__PURE__ */ new Map();
672
625
  items.forEach((item) => {
@@ -693,7 +646,15 @@ var LocationFilter = ({
693
646
  locations,
694
647
  onSelect,
695
648
  visible = false,
696
- onClose
649
+ onClose,
650
+ pageData = {
651
+ allLocations: "All Locations",
652
+ clear: "Clear",
653
+ country: "Country",
654
+ state: "State",
655
+ city: "City",
656
+ noStudiosFound: "No studios found in this location"
657
+ }
697
658
  }) => {
698
659
  const [currentLevel, setCurrentLevel] = useState("country");
699
660
  const [selectedCountry, setSelectedCountry] = useState();
@@ -704,7 +665,7 @@ var LocationFilter = ({
704
665
  const states = /* @__PURE__ */ new Map();
705
666
  const cities = /* @__PURE__ */ new Map();
706
667
  locations.forEach((location) => {
707
- const { country, state, city } = parseAddress(location.address);
668
+ const { country, state, city } = location;
708
669
  if (country) {
709
670
  const existing = countries.get(country);
710
671
  countries.set(country, {
@@ -841,7 +802,7 @@ var LocationFilter = ({
841
802
  "pb-[4px] transition-colors",
842
803
  currentLevel === "country" ? "text-[#1D1D1F] border-b-2 border-[#2E8B57]" : "text-[#767880]"
843
804
  ),
844
- children: "Country"
805
+ children: pageData.country
845
806
  }
846
807
  ),
847
808
  /* @__PURE__ */ jsx(
@@ -854,7 +815,7 @@ var LocationFilter = ({
854
815
  currentLevel === "state" ? "text-[#1D1D1F] border-b-2 border-[#2E8B57]" : "text-[#767880]",
855
816
  !selectedCountry && "opacity-50 cursor-not-allowed"
856
817
  ),
857
- children: "State"
818
+ children: pageData.state
858
819
  }
859
820
  ),
860
821
  /* @__PURE__ */ jsx(
@@ -867,7 +828,7 @@ var LocationFilter = ({
867
828
  currentLevel === "city" ? "text-[#1D1D1F] border-b-2 border-[#2E8B57]" : "text-[#767880]",
868
829
  !selectedState && "opacity-50 cursor-not-allowed"
869
830
  ),
870
- children: "City"
831
+ children: pageData.city
871
832
  }
872
833
  )
873
834
  ] })
@@ -899,11 +860,38 @@ var LocationFilter = ({
899
860
  );
900
861
  };
901
862
  LocationFilter.displayName = "LocationFilter";
863
+ var defaultPageData = {
864
+ title: "Find a Studio Near You",
865
+ loadingText: "Loading demo rooms...",
866
+ errorTitle: "Failed to load demo rooms",
867
+ machine: "eufymake E1",
868
+ locationFilter: {
869
+ allLocations: "All Locations",
870
+ clear: "Clear",
871
+ country: "Country",
872
+ state: "State",
873
+ city: "City",
874
+ noStudiosFound: "No studios found in this location"
875
+ },
876
+ studioCard: {
877
+ scheduleNow: "Schedule Now",
878
+ available: "Available",
879
+ away: "away"
880
+ },
881
+ map: {
882
+ apiKeyRequired: "Google Maps API Key is required",
883
+ loadingMap: "Loading map...",
884
+ scheduleNow: "Schedule Now",
885
+ available: "Available"
886
+ },
887
+ defaultCountry: "United States",
888
+ noAvailableTime: "No available time"
889
+ };
902
890
  var defaultStudioLocations = [
903
891
  {
904
892
  id: "1",
905
893
  name: "Design District Demo Room",
906
- address: "111 8th St",
894
+ address: "111 8th St, San Francisco, CA, United States",
907
895
  city: "San Francisco",
908
896
  state: "CA",
909
897
  zipCode: "94108",
@@ -916,7 +904,7 @@ var defaultStudioLocations = [
916
904
  {
917
905
  id: "2",
918
906
  name: "Brooklyn Creative Studio",
919
- address: "456 Broadway",
907
+ address: "456 Broadway, Brooklyn, NY, United States",
920
908
  city: "Brooklyn",
921
909
  state: "NY",
922
910
  zipCode: "11211",
@@ -929,7 +917,7 @@ var defaultStudioLocations = [
929
917
  {
930
918
  id: "3",
931
919
  name: "Austin Innovation Hub",
932
- address: "789 Tech Blvd",
920
+ address: "789 Tech Blvd, Austin, TX, United States",
933
921
  city: "Austin",
934
922
  state: "TX",
935
923
  zipCode: "78701",
@@ -942,7 +930,7 @@ var defaultStudioLocations = [
942
930
  {
943
931
  id: "4",
944
932
  name: "Seattle Maker Space",
945
- address: "321 Pine St",
933
+ address: "321 Pine St, Seattle, WA, United States",
946
934
  city: "Seattle",
947
935
  state: "WA",
948
936
  zipCode: "98101",
@@ -955,7 +943,7 @@ var defaultStudioLocations = [
955
943
  {
956
944
  id: "5",
957
945
  name: "Chicago Design Center",
958
- address: "654 Michigan Ave",
946
+ address: "654 Michigan Ave, Chicago, IL, United States",
959
947
  city: "Chicago",
960
948
  state: "IL",
961
949
  zipCode: "60611",
@@ -968,7 +956,7 @@ var defaultStudioLocations = [
968
956
  {
969
957
  id: "6",
970
958
  name: "Miami Beach Studio",
971
- address: "987 Ocean Drive",
959
+ address: "987 Ocean Drive, Miami Beach, FL, United States",
972
960
  city: "Miami Beach",
973
961
  state: "FL",
974
962
  zipCode: "33139",
@@ -981,7 +969,7 @@ var defaultStudioLocations = [
981
969
  {
982
970
  id: "7",
983
971
  name: "Denver Mountain Studio",
984
- address: "147 16th St",
972
+ address: "147 16th St, Denver, CO, United States",
985
973
  city: "Denver",
986
974
  state: "CO",
987
975
  zipCode: "80202",
@@ -994,7 +982,7 @@ var defaultStudioLocations = [
994
982
  {
995
983
  id: "8",
996
984
  name: "Los Angeles Creative Lab",
997
- address: "258 Main St",
985
+ address: "258 Main St, Los Angeles, CA, United States",
998
986
  city: "Los Angeles",
999
987
  state: "CA",
1000
988
  zipCode: "90012",
@@ -1012,8 +1000,22 @@ var RoomsList = ({
1012
1000
  teamCode,
1013
1001
  brandWebsite,
1014
1002
  onSchedule,
1003
+ pageData,
1015
1004
  ...props
1016
1005
  }) => {
1006
+ const mergedPageData = useMemo(
1007
+ () => ({
1008
+ ...defaultPageData,
1009
+ ...pageData,
1010
+ locationFilter: {
1011
+ ...defaultPageData.locationFilter,
1012
+ ...pageData?.locationFilter
1013
+ },
1014
+ studioCard: { ...defaultPageData.studioCard, ...pageData?.studioCard },
1015
+ map: { ...defaultPageData.map, ...pageData?.map }
1016
+ }),
1017
+ [pageData]
1018
+ );
1017
1019
  const [showLocationFilter, setShowLocationFilter] = useState(false);
1018
1020
  const [selectedLocation, setSelectedLocation] = useState();
1019
1021
  const [hoveredRoomId, setHoveredRoomId] = useState(null);
@@ -1032,18 +1034,22 @@ var RoomsList = ({
1032
1034
  const nextAvailableTimeslot = room?.timeslots?.find(
1033
1035
  (slot) => slot.status === "available"
1034
1036
  );
1035
- const { country, state, city } = parseAddress(room.address);
1037
+ const country = room.location?.country || mergedPageData.defaultCountry;
1038
+ const state = room.location?.state || "";
1039
+ const city = room.location?.city || "";
1040
+ const addressParts = [room.address, city, state, country].filter(Boolean);
1041
+ const fullAddress = addressParts.join(", ");
1036
1042
  return {
1037
1043
  id: room.code,
1038
1044
  name: room.name,
1039
- address: room.address,
1045
+ address: fullAddress,
1040
1046
  city,
1041
1047
  state,
1042
1048
  zipCode: "",
1043
1049
  country,
1044
1050
  lat: Number(room.latitude) || 34.0522,
1045
1051
  lng: Number(room.longitude) || -118.2437,
1046
- availableTime: nextAvailableTimeslot ? `${nextAvailableTimeslot.start_time}` : "No available time",
1052
+ availableTime: nextAvailableTimeslot ? `${nextAvailableTimeslot.start_time}` : mergedPageData.noAvailableTime,
1047
1053
  euifyMakeModel: room?.description
1048
1054
  };
1049
1055
  });
@@ -1051,25 +1057,24 @@ var RoomsList = ({
1051
1057
  const filteredStudioLocations = useMemo(() => {
1052
1058
  if (!selectedLocation) return studioLocations;
1053
1059
  return studioLocations.filter((location) => {
1054
- const { country, state, city } = parseAddress(location.address);
1055
1060
  if (selectedLocation.city) {
1056
- return country === selectedLocation.country && state === selectedLocation.state && city === selectedLocation.city;
1061
+ return location.country === selectedLocation.country && location.state === selectedLocation.state && location.city === selectedLocation.city;
1057
1062
  }
1058
1063
  if (selectedLocation.state) {
1059
- return country === selectedLocation.country && state === selectedLocation.state;
1064
+ return location.country === selectedLocation.country && location.state === selectedLocation.state;
1060
1065
  }
1061
1066
  if (selectedLocation.country) {
1062
- return country === selectedLocation.country;
1067
+ return location.country === selectedLocation.country;
1063
1068
  }
1064
1069
  return true;
1065
1070
  });
1066
1071
  }, [studioLocations, selectedLocation]);
1067
1072
  const getSelectedLocationName = () => {
1068
- if (!selectedLocation) return "All Locations";
1073
+ if (!selectedLocation) return mergedPageData.locationFilter.allLocations;
1069
1074
  if (selectedLocation.city) return selectedLocation.city;
1070
1075
  if (selectedLocation.state) return selectedLocation.state;
1071
1076
  if (selectedLocation.country) return selectedLocation.country;
1072
- return "All Locations";
1077
+ return mergedPageData.locationFilter.allLocations;
1073
1078
  };
1074
1079
  const handleLocationSelect = (selection) => {
1075
1080
  setSelectedLocation(selection);
@@ -1080,17 +1085,17 @@ var RoomsList = ({
1080
1085
  };
1081
1086
  console.log(filteredStudioLocations);
1082
1087
  return /* @__PURE__ */ jsxs("div", { className, ...props, children: [
1083
- /* @__PURE__ */ jsx(Title, { title: "Find a Studio Near You" }),
1084
- loading && /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center h-[794px]", children: /* @__PURE__ */ jsx("div", { className: "text-center", children: /* @__PURE__ */ jsx("div", { className: "text-lg font-medium", children: "Loading demo rooms..." }) }) }),
1088
+ /* @__PURE__ */ jsx(Title, { title: mergedPageData.title }),
1089
+ loading && /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center h-[794px]", children: /* @__PURE__ */ jsx("div", { className: "text-center", children: /* @__PURE__ */ jsx("div", { className: "text-lg font-medium", children: mergedPageData.loadingText }) }) }),
1085
1090
  error && /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center h-[794px]", children: /* @__PURE__ */ jsxs("div", { className: "text-center", style: { color: "#FF4D4D" }, children: [
1086
- /* @__PURE__ */ jsx("div", { className: "text-lg font-medium", children: "Failed to load demo rooms" }),
1091
+ /* @__PURE__ */ jsx("div", { className: "text-lg font-medium", children: mergedPageData.errorTitle }),
1087
1092
  /* @__PURE__ */ jsx("div", { className: "text-sm mt-2", children: error.message })
1088
1093
  ] }) }),
1089
1094
  !loading && !error && /* @__PURE__ */ jsxs("div", { className: "flex h-[794px] gap-4", children: [
1090
1095
  /* @__PURE__ */ jsxs(
1091
1096
  "div",
1092
1097
  {
1093
- className: "flex-none relative w-[420px]",
1098
+ className: "flex-none relative w-[420px] l:!w-full",
1094
1099
  style: { height: "794px" },
1095
1100
  children: [
1096
1101
  /* @__PURE__ */ jsx("div", { className: "rounded-[12px] mb-4 bg-white border border-[#E4E5E6] px-[20px] py-[16px]", children: /* @__PURE__ */ jsxs("div", { className: "h-[40px] font-bold text-[16px] gap-10 flex items-center", children: [
@@ -1126,11 +1131,11 @@ var RoomsList = ({
1126
1131
  {
1127
1132
  onClick: handleClearFilter,
1128
1133
  className: "ml-auto text-[14px] text-[#2E8B57] hover:underline",
1129
- children: "Clear"
1134
+ children: mergedPageData.locationFilter.clear
1130
1135
  }
1131
1136
  ),
1132
1137
  /* @__PURE__ */ jsxs("div", { className: "flex text-[#767880] cursor-not-allowed", children: [
1133
- "eufymake E1",
1138
+ mergedPageData.machine,
1134
1139
  /* @__PURE__ */ jsx(
1135
1140
  "svg",
1136
1141
  {
@@ -1155,7 +1160,7 @@ var RoomsList = ({
1155
1160
  {
1156
1161
  style: { maxHeight: "706px", overflow: "auto" },
1157
1162
  className: "rounded-[12px] bg-white border border-[#E4E5E6]",
1158
- children: filteredStudioLocations.length === 0 ? /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center h-[200px] text-[#767880]", children: "No studios found in this location" }) : filteredStudioLocations.map((item) => {
1163
+ children: filteredStudioLocations.length === 0 ? /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center h-[200px] text-[#767880]", children: mergedPageData.locationFilter.noStudiosFound }) : filteredStudioLocations.map((item) => {
1159
1164
  return /* @__PURE__ */ jsx(
1160
1165
  StudioCard,
1161
1166
  {
@@ -1169,7 +1174,8 @@ var RoomsList = ({
1169
1174
  euifyMakeModel: item?.euifyMakeModel || "",
1170
1175
  onSchedule,
1171
1176
  onMouseEnter: () => setHoveredRoomId(item.id),
1172
- onMouseLeave: () => setHoveredRoomId(null)
1177
+ onMouseLeave: () => setHoveredRoomId(null),
1178
+ pageData: mergedPageData.studioCard
1173
1179
  },
1174
1180
  item.id
1175
1181
  );
@@ -1180,25 +1186,29 @@ var RoomsList = ({
1180
1186
  LocationFilter,
1181
1187
  {
1182
1188
  locations: studioLocations.map((loc) => ({
1183
- address: loc.address,
1184
- id: loc.id
1189
+ id: loc.id,
1190
+ country: loc.country,
1191
+ state: loc.state,
1192
+ city: loc.city
1185
1193
  })),
1186
1194
  visible: showLocationFilter,
1187
1195
  onSelect: handleLocationSelect,
1188
- onClose: () => setShowLocationFilter(false)
1196
+ onClose: () => setShowLocationFilter(false),
1197
+ pageData: mergedPageData.locationFilter
1189
1198
  }
1190
1199
  )
1191
1200
  ]
1192
1201
  }
1193
1202
  ),
1194
- googleMapsApiKey && /* @__PURE__ */ jsx("div", { className: cn("flex-1"), children: /* @__PURE__ */ jsx(
1203
+ googleMapsApiKey && /* @__PURE__ */ jsx("div", { className: cn("flex-1 l:!hidden"), children: /* @__PURE__ */ jsx(
1195
1204
  StudioMap,
1196
1205
  {
1197
1206
  googleMapsApiKey,
1198
1207
  locations: filteredStudioLocations,
1199
1208
  hoveredLocationId: hoveredRoomId,
1200
1209
  onSchedule,
1201
- mapHeight: "794px"
1210
+ mapHeight: "794px",
1211
+ pageData: mergedPageData.map
1202
1212
  }
1203
1213
  ) })
1204
1214
  ] })
@@ -1380,6 +1390,7 @@ var DemoRoom = ({
1380
1390
  teamCode,
1381
1391
  brandWebsite,
1382
1392
  onSchedule,
1393
+ pageData,
1383
1394
  ...props
1384
1395
  }) => {
1385
1396
  const apiClient = useMemo(
@@ -1394,7 +1405,8 @@ var DemoRoom = ({
1394
1405
  apiClient,
1395
1406
  teamCode,
1396
1407
  brandWebsite,
1397
- onSchedule
1408
+ onSchedule,
1409
+ pageData
1398
1410
  }
1399
1411
  ) });
1400
1412
  };