// Line-icon set for the e-shop UI kit (Lucide-style, 1.7 stroke).
// Exposed as window.VNIcon — usage: <VNIcon name="cart" size={22} />
(function () {
  // This file is also concatenated into _ds_bundle.js. Bail when React is
  // absent (e.g. a consumer loading only the bundle) so nothing throws.
  if (typeof React === "undefined") return;
  const P = {
    search: <><circle cx="11" cy="11" r="7" /><path d="M21 21l-4.3-4.3" strokeLinecap="round" /></>,
    heart: <path d="M12 20.5l-1.5-1.4C5.4 14.6 3 11.8 3 8.5 3 6 4.9 4 7.3 4c1.5 0 2.9.7 3.7 1.9C11.8 4.7 13.2 4 14.7 4 17.1 4 19 6 19 8.5c0 3.3-2.4 6.1-7.5 10.6z" strokeLinecap="round" strokeLinejoin="round" />,
    heartFill: <path d="M12 20.5l-1.5-1.4C5.4 14.6 3 11.8 3 8.5 3 6 4.9 4 7.3 4c1.5 0 2.9.7 3.7 1.9C11.8 4.7 13.2 4 14.7 4 17.1 4 19 6 19 8.5c0 3.3-2.4 6.1-7.5 10.6z" fill="currentColor" stroke="none" />,
    cart: <><path d="M3 4h2l2.2 11.2a1 1 0 001 .8h9.4a1 1 0 001-.8L21 7.5H6" strokeLinecap="round" strokeLinejoin="round" /><circle cx="9" cy="20" r="1.5" /><circle cx="18" cy="20" r="1.5" /></>,
    menu: <path d="M4 7h16M4 12h16M4 17h16" strokeLinecap="round" />,
    close: <path d="M6 6l12 12M18 6L6 18" strokeLinecap="round" />,
    pin: <><path d="M12 21s7-5.6 7-11a7 7 0 10-14 0c0 5.4 7 11 7 11z" /><circle cx="12" cy="10" r="2.4" /></>,
    hexagon: <path d="M12 2.6l8.2 4.7v9.4L12 21.4 3.8 16.7V7.3z" strokeLinejoin="round" />,
    truck: <><path d="M2 6h11v9H2zM13 9h4l3 3v3h-7z" strokeLinejoin="round" /><circle cx="6.5" cy="18" r="1.6" /><circle cx="16.5" cy="18" r="1.6" /></>,
    door: <><path d="M5 21V4a1 1 0 011-1h9a1 1 0 011 1v17M3 21h18" strokeLinecap="round" strokeLinejoin="round" /><circle cx="13" cy="12" r=".9" fill="currentColor" stroke="none" /></>,
    chevronDown: <path d="M6 9l6 6 6-6" strokeLinecap="round" strokeLinejoin="round" />,
    chevronRight: <path d="M9 6l6 6-6 6" strokeLinecap="round" strokeLinejoin="round" />,
    arrowRight: <path d="M5 12h14M13 6l6 6-6 6" strokeLinecap="round" strokeLinejoin="round" />,
    arrowUpRight: <path d="M7 17L17 7M8 7h9v9" strokeLinecap="round" strokeLinejoin="round" />,
    arrowLeft: <path d="M19 12H5M11 6l-6 6 6 6" strokeLinecap="round" strokeLinejoin="round" />,
    plus: <path d="M12 5v14M5 12h14" strokeLinecap="round" />,
    minus: <path d="M5 12h14" strokeLinecap="round" />,
    check: <path d="M5 12.5l4.5 4.5L19 7" strokeLinecap="round" strokeLinejoin="round" />,
    leaf: <path d="M5 20c0-8 5-13 14-14 0 9-5 14-14 14zM5 20c2.5-5 5.5-7.5 9-9.5" strokeLinecap="round" strokeLinejoin="round" />,
    mail: <><rect x="3" y="5" width="18" height="14" rx="2" /><path d="M4 7l8 6 8-6" strokeLinecap="round" /></>,
    phone: <path d="M5 4h4l1.5 5-2.5 1.5a11 11 0 005.5 5.5L19 18l-1 4a16 16 0 01-13-14z" strokeLinejoin="round" />,
    instagram: <><rect x="3.5" y="3.5" width="17" height="17" rx="5" /><circle cx="12" cy="12" r="4" /><circle cx="17" cy="7" r="1" fill="currentColor" stroke="none" /></>,
    facebook: <path d="M14 8.5h2.5V5H14c-2 0-3.5 1.5-3.5 3.5V11H8v3.5h2.5V21H14v-6.5h2.5L17 11h-3V8.8c0-.2.1-.3.4-.3z" fill="currentColor" stroke="none" />,
    youtube: <><rect x="3" y="6" width="18" height="12" rx="3.5" /><path d="M11 9.5l4 2.5-4 2.5z" fill="currentColor" stroke="none" /></>,
    whatsapp: <path d="M5 19l1-3.4A7 7 0 1119 9.5 7 7 0 018.4 18L5 19zM9.5 9c-.3 0-.6.1-.8.4-.3.4-.6 1-.4 1.8.3 1.4 1.6 2.9 3.4 3.6.8.3 1.5.2 1.9-.1.3-.2.5-.6.4-1 0-.1-.1-.2-.3-.3l-1.2-.5c-.1 0-.3 0-.4.1l-.3.4c-.1.1-.2.1-.3.1-.6-.3-1.4-1-1.7-1.7 0-.1 0-.2.1-.3l.3-.4v-.4l-.5-1.1c-.1-.2-.2-.3-.3-.3z" fill="currentColor" stroke="none" />,
    quote: <path d="M9 7H5v5h3v5H4M19 7h-4v5h3v5h-4" strokeLinejoin="round" />,
    star: <path d="M12 3l2.6 5.5 6 .6-4.5 4 1.3 5.9L12 21l-5.4 3 1.3-5.9-4.5-4 6-.6z" strokeLinejoin="round" />,
    shield: <path d="M12 3l7 2.5v5c0 4.5-3 8-7 9.5-4-1.5-7-5-7-9.5v-5z" strokeLinejoin="round" />,
    navigation: <path d="M3 11l19-9-9 19-2-8-8-2z" strokeLinecap="round" strokeLinejoin="round" />,
    copy: <><rect x="9" y="9" width="13" height="13" rx="2" /><path d="M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1" strokeLinecap="round" /></>,
    fileText: <><path d="M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z" strokeLinejoin="round" /><path d="M14 3v5h5M8.5 13h7M8.5 16.5h7" strokeLinecap="round" /></>,
    filter: <path d="M4 6h16M7 12h10M10 18h4" strokeLinecap="round" />,
    grid: <><rect x="4" y="4" width="7" height="7" rx="1" /><rect x="13" y="4" width="7" height="7" rx="1" /><rect x="4" y="13" width="7" height="7" rx="1" /><rect x="13" y="13" width="7" height="7" rx="1" /></>,
    gift: <><rect x="3.5" y="8.5" width="17" height="5" rx="1" /><path d="M5 13.5V20h14v-6.5M12 8.5V20M12 8.5C12 6 10.5 4.5 9 4.5S6.5 6 8 8.5h4zM12 8.5C12 6 13.5 4.5 15 4.5S17.5 6 16 8.5h-4z" strokeLinejoin="round" /></>,
    spark: <path d="M12 3l1.6 6.4L20 11l-6.4 1.6L12 19l-1.6-6.4L4 11l6.4-1.6z" strokeLinejoin="round" />,
    hive: <><path d="M5 7.5l7-3.2 7 3.2" strokeLinejoin="round" /><rect x="6" y="7.5" width="12" height="3.4" rx="1.2" /><rect x="4.6" y="10.9" width="14.8" height="3.4" rx="1.2" /><rect x="6" y="14.3" width="12" height="4" rx="1.2" /><path d="M10.4 16.3h3.2" /></>,
    bee: <><path d="M12 8.2c-2.1 0-3.4 2-3.4 4.6s1.3 5 3.4 5 3.4-2.4 3.4-5-1.3-4.6-3.4-4.6z" /><path d="M8.8 12.3h6.4M9.1 15.2h5.8" /><path d="M9 9.2C6.6 6.9 4.2 7.5 4.2 9.4c0 1.7 2 2.3 3.9 1.2" strokeLinejoin="round" /><path d="M15 9.2c2.4-2.3 4.8-1.7 4.8.2 0 1.7-2 2.3-3.9 1.2" strokeLinejoin="round" /><path d="M10.8 7.6l-.9-2M13.2 7.6l.9-2" strokeLinecap="round" /></>,
    dipper: <><path d="M12 3.5v7" strokeLinecap="round" /><ellipse cx="12" cy="14" rx="3.6" ry="4.2" /><path d="M8.6 12.6h6.8M8.6 15.4h6.8" /><path d="M12 18.2c0 1.4 0 2.3 0 2.3" strokeLinecap="round" /></>,
    rosette: <><circle cx="12" cy="9" r="5" /><path d="M9.8 9l1.5 1.5L14.4 7.4" strokeLinecap="round" strokeLinejoin="round" /><path d="M9.3 13.2L7.5 20.5l4.5-2.6 4.5 2.6-1.8-7.3" strokeLinejoin="round" /></>,
    user: <><circle cx="12" cy="8" r="4" /><path d="M5 20c0-3.9 3.1-7 7-7s7 3.1 7 7" strokeLinecap="round" /></>,
    creditCard: <><rect x="3" y="5" width="18" height="14" rx="2.5" /><path d="M3 9.5h18" strokeLinecap="round" /><path d="M6.5 15h3.5" strokeLinecap="round" /></>,
    bell: <><path d="M6 9.5a6 6 0 1112 0c0 4.5 2 5.5 2 5.5H4s2-1 2-5.5z" strokeLinejoin="round" /><path d="M9.5 19a2.5 2.5 0 005 0" strokeLinecap="round" /></>,
    lock: <><rect x="4.5" y="10.5" width="15" height="9.5" rx="2.2" /><path d="M8 10.5V8a4 4 0 018 0v2.5" strokeLinecap="round" /><circle cx="12" cy="15" r="1.1" fill="currentColor" stroke="none" /></>,
    logout: <><path d="M14 4h3.5a1.5 1.5 0 011.5 1.5v13a1.5 1.5 0 01-1.5 1.5H14" strokeLinecap="round" strokeLinejoin="round" /><path d="M10 12h9M16 8.5l3.5 3.5L16 15.5" strokeLinecap="round" strokeLinejoin="round" /></>,
    edit: <><path d="M4 20h4L18.5 9.5a2 2 0 00-2.83-2.83L5 17.5z" strokeLinejoin="round" /><path d="M14 8.2l2.8 2.8" strokeLinecap="round" /></>,
    trash: <><path d="M4 7h16M9 7V5a1 1 0 011-1h4a1 1 0 011 1v2M6.5 7l.9 13a1 1 0 001 .95h7.2a1 1 0 001-.95L17.5 7" strokeLinecap="round" strokeLinejoin="round" /></>,
    bank: <><path d="M4 9.5l8-5 8 5M5 9.5v9M19 9.5v9M9 9.5v9M15 9.5v9M3 21.5h18" strokeLinecap="round" strokeLinejoin="round" /></>,
    smartphone: <><rect x="7" y="3" width="10" height="18" rx="2.5" /><path d="M11 18h2" strokeLinecap="round" /></>,
    wallet: <><rect x="3" y="6.5" width="18" height="12" rx="2.5" /><path d="M16 11.5h3.5v3H16a1.5 1.5 0 010-3z" strokeLinejoin="round" /><path d="M3 9.5c0-1 .8-2 2-2.4L15 4" strokeLinecap="round" strokeLinejoin="round" /></>,
    check2: <path d="M5 12.5l4.5 4.5L19 7" strokeLinecap="round" strokeLinejoin="round" />,
    clock: <><circle cx="12" cy="12" r="8.5" /><path d="M12 7.5V12l3 2" strokeLinecap="round" strokeLinejoin="round" /></>,
  };

  window.VNIcon = function VNIcon({ name, size = 24, className = "", style = {}, strokeWidth = 1.5 }) {
    const g = P[name];
    if (!g) return null;
    const filled = name === "heartFill" || name === "facebook" || name === "youtube" || name === "whatsapp";
    return (
      <svg width={size} height={size} viewBox="0 0 24 24"
        fill="none" stroke="currentColor" strokeWidth={strokeWidth}
        className={className} style={style} aria-hidden="true">
        {g}
      </svg>
    );
  };
})();
