perf: convert all images to webp, update references
- 77 jpg/png/gif → webp (kept 7 where webp larger) - public/ assets: 23.3 MB → ~12 MB (~50% smaller) - 110 image references updated across data files + components - scripts/convert-to-webp.mjs + scripts/fix-image-refs.mjs added Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.7
parent
de25d774af
commit
dda358b59d
@@ -116,7 +116,7 @@ export default async function BuSunaidahPage() {
|
||||
{BU_SUNAIDAH_REEL == null ? (
|
||||
<div className="bs-reel-placeholder">
|
||||
<Image
|
||||
src="/images/robots/unitree-g1.png"
|
||||
src="/images/robots/unitree-g1.webp"
|
||||
alt="Bu Sunaidah persona — reel preview"
|
||||
fill
|
||||
sizes="(max-width: 900px) 100vw, 980px"
|
||||
|
||||
@@ -18,8 +18,8 @@ export const metadata: Metadata = {
|
||||
|
||||
const HERO_COLLAGE: { src: string; alt: string }[] = [
|
||||
{ src: '/industries/cards/hospitality.webp', alt: 'Service robot in a luxury hospitality lobby' },
|
||||
{ src: '/industries/cards/security-surveillance.jpg', alt: 'Quadruped robot on security patrol' },
|
||||
{ src: '/images/robots/unitree-h1.jpg', alt: 'Humanoid robot engaging with students in a classroom' },
|
||||
{ src: '/industries/cards/security-surveillance.webp', alt: 'Quadruped robot on security patrol' },
|
||||
{ src: '/images/robots/unitree-h1.webp', alt: 'Humanoid robot engaging with students in a classroom' },
|
||||
{ src: '/industries/cards/healthcare.webp', alt: 'Delivery robot moving through a hospital corridor' },
|
||||
];
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@ export function FooterAndContact() {
|
||||
<div className="ft-logo-row">
|
||||
<span className="ft-logo">
|
||||
<Image
|
||||
src="/images/brands/ys-lootah-robotics-logo.png"
|
||||
src="/images/brands/ys-lootah-robotics-logo.webp"
|
||||
alt="YS Lootah Robotics logo"
|
||||
fill
|
||||
sizes="46px"
|
||||
|
||||
@@ -91,7 +91,7 @@ export function Navbar() {
|
||||
}}
|
||||
>
|
||||
<Image
|
||||
src="/images/brands/ys-lootah-robotics-logo.png"
|
||||
src="/images/brands/ys-lootah-robotics-logo.webp"
|
||||
alt="YS Lootah Robotics logo"
|
||||
fill
|
||||
sizes="40px"
|
||||
|
||||
@@ -19,16 +19,16 @@ const BRAND_VISUALS: Record<RobotBrand, BrandVisual> = {
|
||||
description:
|
||||
'Quadruped and humanoid robotics platforms available in the UAE through YS Lootah Robotics.',
|
||||
chips: ['Quadruped', 'Humanoid', 'Inspection', 'Research'],
|
||||
primary: { src: '/images/robots/unitree-g1.png', alt: 'Unitree G1 humanoid robot' },
|
||||
secondary: { src: '/images/robots/unitree-go2.png', alt: 'Unitree Go2 quadruped robot' },
|
||||
primary: { src: '/images/robots/unitree-g1.webp', alt: 'Unitree G1 humanoid robot' },
|
||||
secondary: { src: '/images/robots/unitree-go2.webp', alt: 'Unitree Go2 quadruped robot' },
|
||||
},
|
||||
pudu: {
|
||||
logo: { src: '/brands/pudu-logo.svg', alt: 'Pudu Robotics logo', width: 121, height: 32 },
|
||||
description:
|
||||
'Service, delivery, cleaning, and hospitality robotics available in the UAE through YS Lootah Robotics.',
|
||||
chips: ['Service', 'Delivery', 'Cleaning', 'Hospitality'],
|
||||
primary: { src: '/images/robots/pudu-bellabot.png', alt: 'Pudu BellaBot multi-tray delivery robot' },
|
||||
secondary: { src: '/images/robots/pudu-kettybot.png', alt: 'Pudu KettyBot Pro service robot with built-in advertising display' },
|
||||
primary: { src: '/images/robots/pudu-bellabot.webp', alt: 'Pudu BellaBot multi-tray delivery robot' },
|
||||
secondary: { src: '/images/robots/pudu-kettybot.webp', alt: 'Pudu KettyBot Pro service robot with built-in advertising display' },
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@@ -105,16 +105,16 @@ export function ExclusiveAccessSection() {
|
||||
brand="Unitree"
|
||||
tag="Quadruped · Humanoid"
|
||||
accent="#DEE0F0"
|
||||
primary={{ src: '/images/robots/unitree-g1.png', alt: 'Unitree G1 humanoid robot' }}
|
||||
secondary={{ src: '/images/robots/unitree-go2.png', alt: 'Unitree Go2 quadruped robot' }}
|
||||
primary={{ src: '/images/robots/unitree-g1.webp', alt: 'Unitree G1 humanoid robot' }}
|
||||
secondary={{ src: '/images/robots/unitree-go2.webp', alt: 'Unitree Go2 quadruped robot' }}
|
||||
/>
|
||||
<BrandShowcaseTile
|
||||
href="/brands/#pudu"
|
||||
brand="Pudu Robotics"
|
||||
tag="Service · Delivery · Cleaning"
|
||||
accent="#8891C7"
|
||||
primary={{ src: '/images/robots/pudu-bellabot.png', alt: 'Pudu BellaBot multi-tray delivery robot' }}
|
||||
secondary={{ src: '/images/robots/pudu-kettybot.png', alt: 'Pudu KettyBot Pro service robot with built-in advertising display' }}
|
||||
primary={{ src: '/images/robots/pudu-bellabot.webp', alt: 'Pudu BellaBot multi-tray delivery robot' }}
|
||||
secondary={{ src: '/images/robots/pudu-kettybot.webp', alt: 'Pudu KettyBot Pro service robot with built-in advertising display' }}
|
||||
/>
|
||||
<TerritoryTile />
|
||||
<ShowroomTile />
|
||||
|
||||
@@ -14,10 +14,10 @@ const ease = [0.16, 1, 0.3, 1] as const;
|
||||
|
||||
/* unique exhibit visuals per slug — transparent renders for clean dark integration */
|
||||
const FEATURED_IMG: Record<string, string> = {
|
||||
'unitree-g1': '/images/robots/unitree-g1.png',
|
||||
'unitree-go2': '/images/robots/featured-go2.png',
|
||||
'pudu-bellabot': '/images/robots/featured-bellabot-pro.png',
|
||||
'pudu-kettybot': '/images/robots/pudu-kettybot.png',
|
||||
'unitree-g1': '/images/robots/unitree-g1.webp',
|
||||
'unitree-go2': '/images/robots/featured-go2.webp',
|
||||
'pudu-bellabot': '/images/robots/featured-bellabot-pro.webp',
|
||||
'pudu-kettybot': '/images/robots/pudu-kettybot.webp',
|
||||
};
|
||||
const exhibitImg = (slug: string, fallback: string) => FEATURED_IMG[slug] ?? fallback;
|
||||
|
||||
|
||||
@@ -15,21 +15,21 @@ const SHOWROOM_ROBOTS = [
|
||||
{
|
||||
name: 'Unitree G1',
|
||||
slug: 'unitree-g1',
|
||||
image: '/images/robots/unitree-g1.png',
|
||||
image: '/images/robots/unitree-g1.webp',
|
||||
category: 'Humanoid',
|
||||
accent: '#DEE0F0',
|
||||
},
|
||||
{
|
||||
name: 'Unitree Go2',
|
||||
slug: 'unitree-go2',
|
||||
image: '/images/robots/unitree-go2.png',
|
||||
image: '/images/robots/unitree-go2.webp',
|
||||
category: 'Quadruped',
|
||||
accent: '#D7DBEA',
|
||||
},
|
||||
{
|
||||
name: 'Pudu BellaBot',
|
||||
slug: 'pudu-bellabot',
|
||||
image: '/images/robots/pudu-bellabot.png',
|
||||
image: '/images/robots/pudu-bellabot.webp',
|
||||
category: 'Delivery',
|
||||
accent: '#8891C7',
|
||||
},
|
||||
|
||||
+21
-21
@@ -93,7 +93,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Survived 100+ drop tests',
|
||||
'1000 Hz sensor / comm rate',
|
||||
],
|
||||
image: '/images/accessories/unitree-dex2-5.jpg',
|
||||
image: '/images/accessories/unitree-dex2-5.webp',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.unitree.com/Dex2-5',
|
||||
compatibility: ['Unitree G1', 'Unitree R1'],
|
||||
@@ -182,7 +182,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Low-damping, small-clearance reducers',
|
||||
'1000 Hz comm + sensor rate',
|
||||
],
|
||||
image: '/images/accessories/unitree-dex5-1.png',
|
||||
image: '/images/accessories/unitree-dex5-1.webp',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.unitree.com/Dex5-1',
|
||||
compatibility: ['Unitree G1', 'Unitree H1', 'Unitree H2', 'Research arms'],
|
||||
@@ -286,7 +286,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
],
|
||||
},
|
||||
],
|
||||
paramsImage: '/images/accessories/unitree-dex5-1/params.png',
|
||||
paramsImage: '/images/accessories/unitree-dex5-1/params.webp',
|
||||
footnotes: [
|
||||
'Size refers to dexterous hand in flat state.',
|
||||
'Pressure data represents force from a vertically-applied 1 cm diameter cylinder; varies by application scenario.',
|
||||
@@ -429,7 +429,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'6 Mbps RS485 communication',
|
||||
'Advanced version includes 1080p camera',
|
||||
],
|
||||
image: '/images/accessories/unitree-dex1-1.png',
|
||||
image: '/images/accessories/unitree-dex1-1.webp',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.unitree.com/Dex1-1',
|
||||
compatibility: ['Unitree G1', 'Unitree H2', 'Unitree R1', 'Standalone'],
|
||||
@@ -490,7 +490,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
],
|
||||
},
|
||||
],
|
||||
paramsImage: '/images/accessories/unitree-dex1-1/diagram.png',
|
||||
paramsImage: '/images/accessories/unitree-dex1-1/diagram.webp',
|
||||
footnotes: [
|
||||
'The gripper width is 78 mm when half-open, 120 mm when fully open, and 124.5 mm when fully closed (with side rails extended).',
|
||||
'Listed values for speed, gripping force, and full-stroke closing time are measured under varying conditions (24 V – 60 V) by adjusting motor stiffness, damping, and torque. Values may vary depending on the application.',
|
||||
@@ -524,7 +524,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Harmonic reducer joint motors',
|
||||
'Ethernet interface, Ubuntu OS',
|
||||
],
|
||||
image: '/images/accessories/unitree-z1.png',
|
||||
image: '/images/accessories/unitree-z1.webp',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.unitree.com/z1',
|
||||
compatibility: ['Unitree AlienGo', 'Unitree B1', 'Mobile platforms'],
|
||||
@@ -636,7 +636,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'24 V @ 2.5 A standard / 5 A max',
|
||||
'RJ45 + Type-C debug interface',
|
||||
],
|
||||
image: '/images/accessories/unitree-d1-t.jpg',
|
||||
image: '/images/accessories/unitree-d1-t.webp',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.unitree.com/D1-T',
|
||||
compatibility: ['Embodied AI research', 'Data collection'],
|
||||
@@ -838,7 +838,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Multiple device pairing',
|
||||
'Customizable call zones',
|
||||
],
|
||||
image: '/images/accessories/pudu-pager.png',
|
||||
image: '/images/accessories/pudu-pager.webp',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['BellaBot', 'BellaBot Pro', 'KettyBot', 'HolaBot', 'PuduBot 2'],
|
||||
@@ -861,7 +861,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Multi-robot management',
|
||||
'Pudu Link integration',
|
||||
],
|
||||
image: '/images/accessories/pudu-pager.png',
|
||||
image: '/images/accessories/pudu-pager.webp',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['All Pudu service robots'],
|
||||
@@ -886,7 +886,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Status indicators',
|
||||
'Pudu Link cloud integration',
|
||||
],
|
||||
image: '/images/robots/pudu-sh1.png',
|
||||
image: '/images/robots/pudu-sh1.webp',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['CC1', 'T300', 'FlashBot Max', 'BellaBot Pro', 'PuduBot 2'],
|
||||
@@ -909,7 +909,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Indoor commercial environments',
|
||||
'Fleet-ready',
|
||||
],
|
||||
image: '/images/accessories/pudu-self-cleaning-dock.png',
|
||||
image: '/images/accessories/pudu-self-cleaning-dock.webp',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['CC1', 'CC1 Pro'],
|
||||
@@ -932,7 +932,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Modular tank',
|
||||
'Cleaning-ready operation',
|
||||
],
|
||||
image: '/images/accessories/pudu-mobile-water-station.png',
|
||||
image: '/images/accessories/pudu-mobile-water-station.webp',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['CC1', 'SH1'],
|
||||
@@ -957,7 +957,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Available colors',
|
||||
'Heavy-traffic ready',
|
||||
],
|
||||
image: '/images/accessories/pudu-protection-case.png',
|
||||
image: '/images/accessories/pudu-protection-case.webp',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['BellaBot Pro', 'KettyBot Pro', 'T300', 'FlashBot Max'],
|
||||
@@ -980,7 +980,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'High-traffic delivery ready',
|
||||
'Quick install',
|
||||
],
|
||||
image: '/images/accessories/pudu-retractable-tray-baffle.png',
|
||||
image: '/images/accessories/pudu-retractable-tray-baffle.webp',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['BellaBot Pro', 'KettyBot Pro'],
|
||||
@@ -1003,7 +1003,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Quick swap',
|
||||
'Multiple finishes',
|
||||
],
|
||||
image: '/images/robots/pudu-pudubot2.png',
|
||||
image: '/images/robots/pudu-pudubot2.webp',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['BellaBot', 'BellaBot Pro', 'KettyBot Pro', 'PuduBot 2'],
|
||||
@@ -1026,7 +1026,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Heavy-duty rollers',
|
||||
'Conveyor IoT integration',
|
||||
],
|
||||
image: '/images/accessories/pudu-conveyor-single-layer.png',
|
||||
image: '/images/accessories/pudu-conveyor-single-layer.webp',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['PUDU T300'],
|
||||
@@ -1072,7 +1072,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Long-life reflective surface',
|
||||
'Indoor / semi-outdoor use',
|
||||
],
|
||||
image: '/images/accessories/pudu-reflective-post.png',
|
||||
image: '/images/accessories/pudu-reflective-post.webp',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['All Pudu service + delivery robots'],
|
||||
@@ -1095,7 +1095,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Multi-compartment layout',
|
||||
'Compatible with FlashBot family',
|
||||
],
|
||||
image: '/images/robots/pudu-flashbot-max.png',
|
||||
image: '/images/robots/pudu-flashbot-max.webp',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['FlashBot', 'FlashBot Max'],
|
||||
@@ -1120,7 +1120,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Secure access integration',
|
||||
'Pudu Link cloud',
|
||||
],
|
||||
image: '/images/accessories/pudu-elevator-control-module.png',
|
||||
image: '/images/accessories/pudu-elevator-control-module.webp',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['FlashBot', 'FlashBot Max', 'PuduBot 2', 'SwiftBot'],
|
||||
@@ -1143,7 +1143,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Secure facility ready',
|
||||
'Pudu Link cloud',
|
||||
],
|
||||
image: '/images/accessories/pudu-gate-control-module.png',
|
||||
image: '/images/accessories/pudu-gate-control-module.webp',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['FlashBot', 'FlashBot Max', 'SwiftBot', 'PuduBot 2'],
|
||||
@@ -1166,7 +1166,7 @@ export const ACCESSORIES: Accessory[] = [
|
||||
'Hospitality + corporate ready',
|
||||
'Pudu Link cloud',
|
||||
],
|
||||
image: '/images/robots/pudu-kettybot.png',
|
||||
image: '/images/robots/pudu-kettybot.webp',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/accessory',
|
||||
compatibility: ['FlashBot', 'FlashBot Max', 'SwiftBot'],
|
||||
|
||||
@@ -90,7 +90,7 @@ export const INDUSTRIES: Industry[] = [
|
||||
matchCategories: ['humanoid', 'service'],
|
||||
accent: '#8891C7',
|
||||
icon: 'graduation-cap',
|
||||
image: '/images/robots/unitree-h1.jpg',
|
||||
image: '/images/robots/unitree-h1.webp',
|
||||
imageAlt: 'Humanoid research robot in a UAE STEM lab',
|
||||
},
|
||||
{
|
||||
@@ -103,7 +103,7 @@ export const INDUSTRIES: Industry[] = [
|
||||
matchCategories: ['quadruped', 'commercial'],
|
||||
accent: '#DEE0F0',
|
||||
icon: 'shield',
|
||||
image: '/industries/cards/security-surveillance.jpg',
|
||||
image: '/industries/cards/security-surveillance.webp',
|
||||
imageAlt: 'Quadruped robot on autonomous security patrol at a UAE facility',
|
||||
},
|
||||
{
|
||||
@@ -155,7 +155,7 @@ export const INDUSTRIES: Industry[] = [
|
||||
matchCategories: ['humanoid', 'quadruped', 'service'],
|
||||
accent: '#273F94',
|
||||
icon: 'landmark',
|
||||
image: '/industries/unitree/utility-room.jpg',
|
||||
image: '/industries/unitree/utility-room.webp',
|
||||
imageAlt: 'Quadruped robots deployed for UAE civic and emergency services',
|
||||
},
|
||||
];
|
||||
|
||||
+41
-41
@@ -75,10 +75,10 @@ export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
{ value: 'Premium', label: 'Brand moments' },
|
||||
],
|
||||
gallery: [
|
||||
{ src: '/images/robots/pudu-bellabot.png', alt: 'BellaBot service-floor delivery', caption: 'BellaBot Pro — service-floor delivery.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-kettybot.png', alt: 'KettyBot front-of-house greeter', caption: 'KettyBot Pro — front-of-house greeter.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-cc1.png', alt: 'PUDU CC1 lobby cleaning', caption: 'PUDU CC1 — overnight lobby cleaning.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/unitree-g1.png', alt: 'Unitree G1 humanoid concierge', caption: 'Unitree G1 — humanoid concierge moments.', credit: 'Unitree' },
|
||||
{ src: '/images/robots/pudu-bellabot.webp', alt: 'BellaBot service-floor delivery', caption: 'BellaBot Pro — service-floor delivery.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-kettybot.webp', alt: 'KettyBot front-of-house greeter', caption: 'KettyBot Pro — front-of-house greeter.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-cc1.webp', alt: 'PUDU CC1 lobby cleaning', caption: 'PUDU CC1 — overnight lobby cleaning.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/unitree-g1.webp', alt: 'Unitree G1 humanoid concierge', caption: 'Unitree G1 — humanoid concierge moments.', credit: 'Unitree' },
|
||||
],
|
||||
problemPoints: [
|
||||
'Guest service teams are stretched thin during peak hours and events.',
|
||||
@@ -162,9 +162,9 @@ export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
{ value: 'Greet+Deliver', label: 'Hybrid roles' },
|
||||
],
|
||||
gallery: [
|
||||
{ src: '/images/robots/pudu-bellabot.png', alt: 'Pudu BellaBot multi-tray delivery robot', caption: 'BellaBot Pro — multi-tray food delivery.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/featured-bellabot-pro.png', alt: 'BellaBot Pro on restaurant floor', caption: 'Designed for restaurant peak service.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-kettybot.png', alt: 'Pudu KettyBot greeter robot', caption: 'KettyBot Pro — greeter with ad display.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-bellabot.webp', alt: 'Pudu BellaBot multi-tray delivery robot', caption: 'BellaBot Pro — multi-tray food delivery.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/featured-bellabot-pro.webp', alt: 'BellaBot Pro on restaurant floor', caption: 'Designed for restaurant peak service.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-kettybot.webp', alt: 'Pudu KettyBot greeter robot', caption: 'KettyBot Pro — greeter with ad display.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/featured-kettybot-black.webp', alt: 'KettyBot in black', caption: 'KettyBot Pro — premium black finish.', credit: 'Pudu' },
|
||||
],
|
||||
problemPoints: [
|
||||
@@ -244,10 +244,10 @@ export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
{ value: 'Premium', label: 'Guest moments' },
|
||||
],
|
||||
gallery: [
|
||||
{ src: '/images/robots/pudu-holabot.png', alt: 'Pudu HolaBot multi-floor delivery', caption: 'HolaBot / FlashBot — multi-floor delivery.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-cc1.png', alt: 'PUDU CC1 cleaning scrubber', caption: 'PUDU CC1 — commercial cleaning scrubber.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-pudubot2.png', alt: 'PuduBot 2 indoor delivery', caption: 'PuduBot 2 — indoor logistics platform.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/unitree-g1.png', alt: 'Unitree G1 humanoid for concierge moments', caption: 'Unitree G1 — humanoid concierge moments.', credit: 'Unitree' },
|
||||
{ src: '/images/robots/pudu-holabot.webp', alt: 'Pudu HolaBot multi-floor delivery', caption: 'HolaBot / FlashBot — multi-floor delivery.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-cc1.webp', alt: 'PUDU CC1 cleaning scrubber', caption: 'PUDU CC1 — commercial cleaning scrubber.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-pudubot2.webp', alt: 'PuduBot 2 indoor delivery', caption: 'PuduBot 2 — indoor logistics platform.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/unitree-g1.webp', alt: 'Unitree G1 humanoid for concierge moments', caption: 'Unitree G1 — humanoid concierge moments.', credit: 'Unitree' },
|
||||
],
|
||||
problemPoints: [
|
||||
'Room service and back-of-house logistics consume operational hours.',
|
||||
@@ -326,9 +326,9 @@ export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
{ value: 'Overnight', label: 'Auto-cycles' },
|
||||
],
|
||||
gallery: [
|
||||
{ src: '/images/robots/pudu-cc1.png', alt: 'PUDU CC1 auto-scrubber', caption: 'PUDU CC1 — auto-scrubber for large floors.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-kettybot.png', alt: 'KettyBot wayfinding and ad display', caption: 'KettyBot Pro — wayfinding and promo runs.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/unitree-go2.png', alt: 'Unitree Go2 night patrol', caption: 'Unitree Go2 — night patrol across decks.', credit: 'Unitree' },
|
||||
{ src: '/images/robots/pudu-cc1.webp', alt: 'PUDU CC1 auto-scrubber', caption: 'PUDU CC1 — auto-scrubber for large floors.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-kettybot.webp', alt: 'KettyBot wayfinding and ad display', caption: 'KettyBot Pro — wayfinding and promo runs.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/unitree-go2.webp', alt: 'Unitree Go2 night patrol', caption: 'Unitree Go2 — night patrol across decks.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/thermal.jpg', alt: 'Thermal + LiDAR patrol sensors', caption: 'Thermal + LiDAR sensors for after-hours rounds.', credit: 'Unitree' },
|
||||
],
|
||||
problemPoints: [
|
||||
@@ -414,10 +414,10 @@ export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
{ value: '24/7', label: 'Continuous ops' },
|
||||
],
|
||||
gallery: [
|
||||
{ src: '/images/robots/pudu-holabot.png', alt: 'Pudu HolaBot hospital delivery', caption: 'HolaBot / FlashBot — medication and meal delivery.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-cc1.png', alt: 'PUDU CC1 cleaning between cycles', caption: 'PUDU CC1 — between-cycle floor cleaning.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-d9.png', alt: 'PUDU D9 disinfection robot', caption: 'PUDU D9 — UV-C disinfection.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-kettybot.png', alt: 'KettyBot visitor reception', caption: 'KettyBot Pro — visitor reception.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-holabot.webp', alt: 'Pudu HolaBot hospital delivery', caption: 'HolaBot / FlashBot — medication and meal delivery.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-cc1.webp', alt: 'PUDU CC1 cleaning between cycles', caption: 'PUDU CC1 — between-cycle floor cleaning.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-d9.webp', alt: 'PUDU D9 disinfection robot', caption: 'PUDU D9 — UV-C disinfection.', credit: 'Pudu' },
|
||||
{ src: '/images/robots/pudu-kettybot.webp', alt: 'KettyBot visitor reception', caption: 'KettyBot Pro — visitor reception.', credit: 'Pudu' },
|
||||
],
|
||||
problemPoints: [
|
||||
'Clinical staff lose hours to non-clinical transport tasks.',
|
||||
@@ -486,7 +486,7 @@ export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
'Humanoid and quadruped robots that bring AI, programming, and modern robotics into UAE schools, universities, and innovation labs.',
|
||||
heroTags: ['STEM labs', 'Robotics clubs', 'Innovation programs', 'Research'],
|
||||
heroImage: {
|
||||
src: '/images/robots/unitree-h1.jpg',
|
||||
src: '/images/robots/unitree-h1.webp',
|
||||
alt: 'Humanoid research robot in a UAE STEM lab',
|
||||
},
|
||||
proofPoints: [
|
||||
@@ -496,10 +496,10 @@ export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
{ value: 'K-12 → PhD', label: 'Curriculum range' },
|
||||
],
|
||||
gallery: [
|
||||
{ src: '/images/robots/unitree-g1.png', alt: 'Unitree G1 humanoid in STEM lab', caption: 'Unitree G1 — humanoid platform for AI and HRI labs.', credit: 'Unitree' },
|
||||
{ src: '/images/robots/unitree-go2.png', alt: 'Unitree Go2 quadruped for STEM', caption: 'Unitree Go2 / Go2 EDU — programmable quadruped.', credit: 'Unitree' },
|
||||
{ src: '/images/robots/unitree-b2.png', alt: 'Unitree B2 research platform', caption: 'Unitree B2 — advanced research projects.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/modular.jpg', alt: 'Modular sensor and payload kits', caption: 'Modular sensor and payload options for course work.', credit: 'Unitree' },
|
||||
{ src: '/images/robots/unitree-g1.webp', alt: 'Unitree G1 humanoid in STEM lab', caption: 'Unitree G1 — humanoid platform for AI and HRI labs.', credit: 'Unitree' },
|
||||
{ src: '/images/robots/unitree-go2.webp', alt: 'Unitree Go2 quadruped for STEM', caption: 'Unitree Go2 / Go2 EDU — programmable quadruped.', credit: 'Unitree' },
|
||||
{ src: '/images/robots/unitree-b2.webp', alt: 'Unitree B2 research platform', caption: 'Unitree B2 — advanced research projects.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/modular.webp', alt: 'Modular sensor and payload kits', caption: 'Modular sensor and payload options for course work.', credit: 'Unitree' },
|
||||
],
|
||||
problemPoints: [
|
||||
'Schools need hands-on robotics and AI learning tools.',
|
||||
@@ -595,7 +595,7 @@ export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
'Quadruped robots with thermal imaging, LiDAR, and AI vision that walk routine patrol and inspection routes across critical UAE facilities — consistently and on schedule.',
|
||||
heroTags: ['Patrol', 'Thermal imaging', 'LiDAR + AI vision', 'Continuous'],
|
||||
heroImage: {
|
||||
src: '/industries/unitree/terrain.jpg',
|
||||
src: '/industries/unitree/terrain.webp',
|
||||
alt: 'Quadruped robot on autonomous patrol in a UAE industrial site',
|
||||
},
|
||||
proofPoints: [
|
||||
@@ -605,15 +605,15 @@ export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
{ value: '4–6h', label: 'Patrol endurance' },
|
||||
],
|
||||
gallery: [
|
||||
{ src: '/industries/unitree/terrain.jpg', alt: 'Quadruped robot on mixed industrial terrain', caption: 'Stairs, gullies, and uneven ground handled on one platform.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/terrain.webp', alt: 'Quadruped robot on mixed industrial terrain', caption: 'Stairs, gullies, and uneven ground handled on one platform.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/thermal.jpg', alt: 'Thermal imaging and laser-radar detection', caption: 'Thermal, laser-radar, and AI imaging for routine monitoring.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/substation.jpg', alt: 'Power substation patrol', caption: 'Substation patrol — switchgear and transformer scans.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/pipeline.jpg', alt: 'Pipeline corridor patrol', caption: 'Pipeline and refinery corridor inspection rounds.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/industrial-park.jpg', alt: 'Industrial park perimeter coverage', caption: 'Industrial park and large-compound perimeter coverage.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/utility-room.jpg', alt: 'Utility plant room inspection', caption: 'Utility and plant-room routine checks.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/substation.webp', alt: 'Power substation patrol', caption: 'Substation patrol — switchgear and transformer scans.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/pipeline.webp', alt: 'Pipeline corridor patrol', caption: 'Pipeline and refinery corridor inspection rounds.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/industrial-park.webp', alt: 'Industrial park perimeter coverage', caption: 'Industrial park and large-compound perimeter coverage.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/utility-room.webp', alt: 'Utility plant room inspection', caption: 'Utility and plant-room routine checks.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/mine.jpg', alt: 'Tunnel inspection', caption: 'Tunnel and confined-zone inspection.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/terrain-night.jpg', alt: 'Quadruped robot on night patrol', caption: 'After-hours rounds with consistent route timing.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/b2-render.png', alt: 'Unitree B2 industrial quadruped render', caption: 'B2 — industrial-grade quadruped platform.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/terrain-night.webp', alt: 'Quadruped robot on night patrol', caption: 'After-hours rounds with consistent route timing.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/b2-render.webp', alt: 'Unitree B2 industrial quadruped render', caption: 'B2 — industrial-grade quadruped platform.', credit: 'Unitree' },
|
||||
],
|
||||
problemPoints: [
|
||||
'Manual patrols are repetitive, costly, and uneven across shifts.',
|
||||
@@ -711,7 +711,7 @@ export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
'Inspection, transport, and monitoring robots that scale repetitive work across UAE logistics sites and industrial facilities — thermal vision, LiDAR, and AI route planning.',
|
||||
heroTags: ['Aisle inspection', 'Thermal + LiDAR', 'AI patrols', 'Cloud fleet'],
|
||||
heroImage: {
|
||||
src: '/industries/unitree/patrol-system.png',
|
||||
src: '/industries/unitree/patrol-system.webp',
|
||||
alt: 'Industrial inspection robot in a UAE warehouse facility',
|
||||
},
|
||||
proofPoints: [
|
||||
@@ -721,15 +721,15 @@ export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
{ value: 'Scheduled', label: 'Auto run cycles' },
|
||||
],
|
||||
gallery: [
|
||||
{ src: '/industries/unitree/patrol-system.png', alt: 'Patrol system overview', caption: 'End-to-end patrol and inspection platform.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/ai-patrol.jpg', alt: 'AI-planned facility patrols', caption: 'AI route planning across facility zones.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/digital-twin.jpg', alt: 'Digital twin facility view', caption: 'Digital twin view of facility and fleet status.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/analytics.jpg', alt: 'Inference and anomaly analytics dashboard', caption: 'Anomaly analytics on live patrol data.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/flight-path.jpg', alt: '3D auto-generated route path', caption: '3D route planning for repeatable rounds.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/sensor-overview.png', alt: 'Modular sensor and payload diagram', caption: 'Modular sensor and payload options.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/cloud.jpg', alt: 'Cloud-connected fleet management', caption: 'Cloud platform for fleet operations.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/cost-efficiency.jpg', alt: 'Long-term operational cost view', caption: 'Lower long-term cost across cycles.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/go2-render.png', alt: 'Unitree Go2 quadruped render', caption: 'Go2 — agile inspection platform.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/patrol-system.webp', alt: 'Patrol system overview', caption: 'End-to-end patrol and inspection platform.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/ai-patrol.webp', alt: 'AI-planned facility patrols', caption: 'AI route planning across facility zones.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/digital-twin.webp', alt: 'Digital twin facility view', caption: 'Digital twin view of facility and fleet status.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/analytics.webp', alt: 'Inference and anomaly analytics dashboard', caption: 'Anomaly analytics on live patrol data.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/flight-path.webp', alt: '3D auto-generated route path', caption: '3D route planning for repeatable rounds.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/sensor-overview.webp', alt: 'Modular sensor and payload diagram', caption: 'Modular sensor and payload options.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/cloud.webp', alt: 'Cloud-connected fleet management', caption: 'Cloud platform for fleet operations.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/cost-efficiency.webp', alt: 'Long-term operational cost view', caption: 'Lower long-term cost across cycles.', credit: 'Unitree' },
|
||||
{ src: '/industries/unitree/go2-render.webp', alt: 'Unitree Go2 quadruped render', caption: 'Go2 — agile inspection platform.', credit: 'Unitree' },
|
||||
],
|
||||
problemPoints: [
|
||||
'Inventory and inspection routes scale poorly with human hours.',
|
||||
|
||||
+25
-25
@@ -110,7 +110,7 @@ export const ROBOTS: Robot[] = [
|
||||
SPEC_CONSULT,
|
||||
SPEC_PLACEHOLDER,
|
||||
],
|
||||
image: '/images/robots/unitree-g1.png',
|
||||
image: '/images/robots/unitree-g1.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.unitree.com/g1',
|
||||
@@ -149,7 +149,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Top Speed', value: '3.3 m/s' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/unitree-h1.jpg',
|
||||
image: '/images/robots/unitree-h1.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.unitree.com/h1',
|
||||
@@ -182,7 +182,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Joints', value: '31 DOF' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/unitree-h2.png',
|
||||
image: '/images/robots/unitree-h2.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.unitree.com/H2',
|
||||
@@ -215,7 +215,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Height', value: '≤123 cm' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/unitree-r1.png',
|
||||
image: '/images/robots/unitree-r1.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.unitree.com/R1',
|
||||
@@ -255,7 +255,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Payload Options', value: 'Cameras, LiDAR, sensors' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/unitree-go2.png',
|
||||
image: '/images/robots/unitree-go2.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.unitree.com/go2',
|
||||
@@ -321,7 +321,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Top Speed', value: '5 m/s' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/unitree-as2.png',
|
||||
image: '/images/robots/unitree-as2.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.unitree.com/As2',
|
||||
@@ -354,7 +354,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Payload', value: '3–5 kg' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/unitree-go1.png',
|
||||
image: '/images/robots/unitree-go1.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.unitree.com/go1',
|
||||
@@ -387,7 +387,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Payload', value: '5 kg' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/unitree-a1.png',
|
||||
image: '/images/robots/unitree-a1.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.unitree.com/a1',
|
||||
@@ -427,7 +427,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Top Speed', value: '6 m/s' },
|
||||
{ label: 'Payload', value: '40+ kg' },
|
||||
],
|
||||
image: '/images/robots/unitree-b2.png',
|
||||
image: '/images/robots/unitree-b2.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.unitree.com/b2',
|
||||
@@ -460,7 +460,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Payload', value: '40 kg' },
|
||||
{ label: 'IP Rating', value: 'IP67' },
|
||||
],
|
||||
image: '/images/robots/unitree-b2-w.jpg',
|
||||
image: '/images/robots/unitree-b2-w.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.unitree.com/b2-w',
|
||||
@@ -493,7 +493,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Battery', value: 'Hot-swappable dual' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/unitree-a2.png',
|
||||
image: '/images/robots/unitree-a2.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.unitree.com/A2',
|
||||
@@ -526,7 +526,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Battery', value: 'Hot-swappable dual' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/unitree-a2-w.jpg',
|
||||
image: '/images/robots/unitree-a2-w.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.unitree.com/A2-W',
|
||||
@@ -559,7 +559,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Battery', value: '932 Wh' },
|
||||
{ label: 'IP Rating', value: 'IP68' },
|
||||
],
|
||||
image: '/images/robots/unitree-b1.png',
|
||||
image: '/images/robots/unitree-b1.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.unitree.com/b1',
|
||||
@@ -592,7 +592,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'I/O', value: 'Ethernet / USB 3.0 / RS485' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/unitree-aliengo.png',
|
||||
image: '/images/robots/unitree-aliengo.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.unitree.com/aliengo',
|
||||
@@ -627,7 +627,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Displays', value: '18.5" + 10.1"' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/featured-bellabot-pro.png',
|
||||
image: '/images/robots/featured-bellabot-pro.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/products/bellabotpro',
|
||||
@@ -660,7 +660,7 @@ export const ROBOTS: Robot[] = [
|
||||
SPEC_CONSULT,
|
||||
SPEC_PLACEHOLDER,
|
||||
],
|
||||
image: '/images/robots/pudu-bellabot.png',
|
||||
image: '/images/robots/pudu-bellabot.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/products/bellabot',
|
||||
@@ -726,7 +726,7 @@ export const ROBOTS: Robot[] = [
|
||||
SPEC_CONSULT,
|
||||
SPEC_PLACEHOLDER,
|
||||
],
|
||||
image: '/images/robots/pudu-kettybot.png',
|
||||
image: '/images/robots/pudu-kettybot.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/products/kettybot',
|
||||
@@ -759,7 +759,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'IP Rating', value: 'IPX5 cabin' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/pudu-holabot.png',
|
||||
image: '/images/robots/pudu-holabot.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/products/holabot',
|
||||
@@ -825,7 +825,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Trays', value: 'Up to 7' },
|
||||
{ label: 'Runtime', value: '24 h' },
|
||||
],
|
||||
image: '/images/robots/pudu-pudubot2.png',
|
||||
image: '/images/robots/pudu-pudubot2.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/products/pudubot',
|
||||
@@ -858,7 +858,7 @@ export const ROBOTS: Robot[] = [
|
||||
SPEC_CONSULT,
|
||||
SPEC_PLACEHOLDER,
|
||||
],
|
||||
image: '/images/robots/pudu-flashbot-max.png',
|
||||
image: '/images/robots/pudu-flashbot-max.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/products/flashbot-new',
|
||||
@@ -891,7 +891,7 @@ export const ROBOTS: Robot[] = [
|
||||
SPEC_CONSULT,
|
||||
SPEC_PLACEHOLDER,
|
||||
],
|
||||
image: '/images/robots/pudu-flashbot.png',
|
||||
image: '/images/robots/pudu-flashbot.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/products/flashbot',
|
||||
@@ -926,7 +926,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Safety', value: 'ISO 3691-4' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/pudu-t300.png',
|
||||
image: '/images/robots/pudu-t300.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/products/pudut300',
|
||||
@@ -961,7 +961,7 @@ export const ROBOTS: Robot[] = [
|
||||
SPEC_CONSULT,
|
||||
SPEC_PLACEHOLDER,
|
||||
],
|
||||
image: '/images/robots/pudu-cc1.png',
|
||||
image: '/images/robots/pudu-cc1.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRONZE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/products/puduCC1',
|
||||
@@ -994,7 +994,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Suction', value: '20,000 Pa' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/pudu-sh1.png',
|
||||
image: '/images/robots/pudu-sh1.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_CHAMPAGNE,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/products/puduSH1',
|
||||
@@ -1027,7 +1027,7 @@ export const ROBOTS: Robot[] = [
|
||||
{ label: 'Runtime', value: '4–8 h' },
|
||||
SPEC_CONSULT,
|
||||
],
|
||||
image: '/images/robots/pudu-mt1.png',
|
||||
image: '/images/robots/pudu-mt1.webp',
|
||||
imageType: 'photo',
|
||||
accent: GOLD_BRAND,
|
||||
officialUrl: 'https://www.pudurobotics.com/en/products/mt1',
|
||||
|
||||
Reference in New Issue
Block a user