/*
 * Copyright 2024 Palantir Technologies, Inc. All rights reserved.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import * as React from "react";
import type { SVGIconProps } from "../../svgIconProps";
import { IconSize } from "../../iconTypes";
import { SVGIconContainer } from "../../svgIconContainer";

export const Drone: React.FC<SVGIconProps> = React.forwardRef<any, SVGIconProps>((props, ref) => {
    const isLarge = (props.size ?? IconSize.STANDARD) >= IconSize.LARGE;
    const pixelGridSize = isLarge ? IconSize.LARGE : IconSize.STANDARD;
    const translation = `${-1 * pixelGridSize / 0.05 / 2}`;
    const style = { transformOrigin: "center" };
    return (
        <SVGIconContainer iconName="drone" ref={ref} {...props}>
            <path
                d={isLarge ? "M282.56 397.14C294.12 409.08 318.28 381.06 331.56 358.14A20 20 0 0 0 357.74 330.8400000000001C380 317.48 408.78 294.54 397.44 282.84C385.88 270.92 361.68 298.96 348.4000000000001 321.9A20 20 0 0 0 334.74 320.7200000000001A17.2 17.2 0 0 0 332.1400000000001 308.2C262.6200000000001 203.66 262.6200000000001 196.34 332.1400000000001 91.8C334.6600000000001 88 335.4600000000001 83.54 334.74 79.3A20 20 0 0 0 349.1800000000001 77.78C362.5400000000001 100.04 385.4600000000001 128.78 397.1600000000001 117.44C409.0600000000001 105.88 381.0400000000001 81.72 358.1000000000001 68.44A19.92 19.92 0 0 0 340 40A20 20 0 0 0 330.82 42.26C317.4600000000001 20 294.54 -8.74 282.86 2.56C270.92 14.12 298.94 38.32 321.86 51.6A20 20 0 0 0 320.7 65.28A17.2 17.2 0 0 0 308.2 67.88C203.66 137.4 196.34 137.38 91.8 67.88A17.2 17.2 0 0 0 79.28 65.28Q80 62.74 80 60C80 56.7000000000001 79.16 53.6 77.74 50.84C100 37.48 128.78 14.54 117.44 2.84C105.88 -9.0799999999999 81.68 18.9600000000001 68.4 41.9A20 20 0 0 0 42.22 69.2000000000001C19.96 82.56 -8.78 105.46 2.56 117.1400000000001C14.12 129.0800000000001 38.28 101.06 51.56 78.14A20 20 0 0 0 65.26 79.3A17.2 17.2 0 0 0 67.86 91.8C137.38 196.34 137.38 203.66 67.86 308.2A17.2 17.2 0 0 0 65.26 320.74A20 20 0 0 0 50.82 322.26C37.46 300 14.54 271.26 2.86 282.56C-9.08 294.12 18.94 318.32 41.86 331.6A20 20 0 0 0 69.16 357.78C82.52 380.04 105.46 408.78 117.16 397.44C129.06 385.88 101.04 361.7200000000001 78.12 348.44A20 20 0 0 0 79.26 334.74A17.2 17.2 0 0 0 91.8 332.14C196.34 262.62 203.66 262.62 308.2 332.14A17.2 17.2 0 0 0 320.7 334.74A20 20 0 0 0 322.24 349.2C299.98 362.56 271.24 385.46 282.5600000000001 397.14" : "M202.54 317.96C212.86 327.1600000000001 236.46 303.6 255.06 279.36Q257.46 280 260 280A20 20 0 0 0 279.52 255.62C304.24 236.32 327.94 211.38 317.46 202.02C307.16 192.82 283.58 216.42 264.96 240.64A20 20 0 0 0 254.54 240.78A16.4 16.4 0 0 0 251.5 228.62C202.86 163.42 202.84 156.58 251.5 91.36A16.4 16.4 0 0 0 254.54 79.24A20 20 0 0 0 264.36 79.52C283.66 104.24 308.62 127.92 317.96 117.46C327.16 107.14 303.6 83.56 279.36 64.96A20 20 0 0 0 255.62 40.48C236.34 15.7599999999999 211.38 -7.9400000000001 202.02 2.54C192.86 12.86 216.42 36.4399999999999 240.64 55.04A20 20 0 0 0 240.76 65.46A16.4 16.4 0 0 0 228.64 68.52C163.44 117.16 156.6 117.16 91.4 68.52A16.4 16.4 0 0 0 79.22 65.46A20 20 0 0 0 79.52 55.62C104.26 36.32 127.94 11.38 117.46 2.02C107.16 -7.1800000000001 83.58 16.42 64.96 40.64Q62.6 40.02 60 40A20 20 0 0 0 40.5 64.38C15.76 83.68 -7.94 108.6 2.54 117.98C12.86 127.18 36.46 103.6 55.06 79.38A20 20 0 0 0 65.46 79.24A16.4 16.4 0 0 0 68.52 91.36C117.16 156.58 117.16 163.4 68.52 228.62A16.4 16.4 0 0 0 65.48 240.78A20 20 0 0 0 55.62 240.48C36.34 215.76 11.4 192.06 2.02 202.54C-7.14 212.86 16.42 236.44 40.64 255.04A20 20 0 0 0 64.36 279.52C83.66 304.24 108.62 327.92 117.96 317.46C127.16 307.14 103.6 283.56 79.36 264.9600000000001A20 20 0 0 0 79.22 254.54C83.42 255.14 87.8 254.16 91.4 251.48C156.6 202.84 163.42 202.84 228.64 251.48A16.4 16.4 0 0 0 240.76 254.54A20 20 0 0 0 240.5 264.38C215.76 283.68 192.06 308.6 202.54 317.98"}
                fillRule="evenodd"
                transform={`scale(0.05, -0.05) translate(${translation}, ${translation})`}
                style={style}
            />
        </SVGIconContainer>
   );
});
Drone.displayName = `Blueprint6.Icon.Drone`;
export default Drone;
