/*
 * 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 Dollar: 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="dollar" ref={ref} {...props}>
            <path
                d={isLarge ? "M311.4 176.2C306 186.4 298.8 194.8 290 201.4S271 213.4 259.8 217.2C248.6 221.2 237 224.4 225.4 227.2C213.4 230 201.6 232.4 190.4 234.8C179 237.4000000000001 169 240.2 160.2 243.6S144.2 251.2 138.8 256.2000000000001S130.6 268 130.6 276.2000000000001C130.6 282.8 132.4 288.2 136.2 292.4000000000001S144.6 299.6 150 301.8S161.4 305.4 167.6 306.2000000000001S179.2 307.4 183.6 307.4C197.8 307.4 210.6 304.6 221.6 299.2S239.8000000000001 283 242.8000000000001 266.8H310.0000000000001Q307.3000000000001 292 296.2000000000001 310C288.8000000000001 322 279.6 331.6 268.6000000000001 339Q251.8000000000001 350.1 231.4000000000001 355.2C227.6000000000001 356.2 223.8000000000001 356.6 220.0000000000001 357.2V380C220.0000000000001 391 211.0000000000001 400 200.0000000000001 400H180C169 400 160 391 160 380V358C155.6 357.4 151.4 357 146.8 356C132.2 353.4 119 348.6 107.2 341.8C95.2 335 85.4 325.8 77.8 314.8C70 303.6 66.2 289.8 66.2 273.2C66.2 258 68.8 245 74.2 234.6C79.4 224.2 86.6 215.6 95.4 209S114.2 197 125.4 193.2C136.4 189.2 148 186 160.2 183.2C171.8 180.4 183.4 178 194.6 175.6S216 170.4 224.8 167S240.8 159.2 246.6 153.8C252.2 148.4 255.2 141.2 255.6 132.6S254 117 249.6 111.8S239.8 102.4 233 99.8C226.2 97 219 95.2 211.2 94.2000000000001S196.6 92.8 190.6 92.8C173.2 92.8 158.4 96.8 146 104.6S126.4 126.2 124.6 145.8H60C60.4 127.8 63.8 112.2000000000001 70.4 99Q80.3 79.2000000000001 97.4 66C108.8 57.2 122.4 50.6 138 46.4C145 44.4 152.2 43.2 159.6 42.2V20C159.6 9 168.6 0 179.6 0H199.6C210.6 0 219.6 9 219.6 20V42.6C224.6 43.4 229.6 44 234.8 45.1999999999999C250.2 48.8 264.2000000000001 54.4 276.8 62.2S299.6 80.2 307.6 92.8S319.4 120.6 319.4 138.6C319.6 153.6 316.8 166 311.4 176.2" : "M256.6 129.8Q253.6 138.8 247.6 146.6C243.6 151.8 238.6 156.4 232.6 160.6Q223.6 166.6 211.6 170.2C208.4 171 203 172.4 195.6 174.2C188.6 176 181 177.8 173.2 179.8S158.4 183.6 152 185.2C145.8 186.8 142.2 187.6 141.2 187.8C132.6 190.2 125.6 193.6 120.2 198.2S112.2 209.2 112.2 217.2Q112.2 225.9 116.4 231.6C119.2 235.4 122.8 238.4 127.2 240.8Q133.8 244.1 141.6 245.6C146.8 246.6 152 247.2 157 247.2C171.8 247.2 184 244.2 193.6 238C203.2 232 208.6 221.4 209.8 206.8H252.6C252.6 218.8 250 229.4 245 238.4S233.2 255.2 224.6 261.4S206 272.2 194.8 275.4C190 276.6 185 277.4 179.8 278.2V300C179.8 311 170.8 320 159.8 320S139.8 311 139.8 300V278.4C135.2 277.8 130.6 277 126.2 275.8C115.4 273.2 105.8 269 97.4 263.6Q84.8 255.2 77 242.6Q69.2 229.7 69.2 212.6C69.2 206.6 70 200.8 71.8 195S76.4 183.8 80.6 178.6S90.2 168.8 97.2 164.6S113 157 123.4 154.4C140.4 150.2 154.6000000000001 146.8 166.2000000000001 144C177.8000000000001 141.4 187.8000000000001 138.4 196.6 135.6C201.6 133.8 206.2000000000001 131 210.4 126.8S216.8000000000001 116.2 216.8000000000001 107.4C216.8000000000001 103.2 215.8 99 214 94.8S209.2 86.9999999999999 205 83.8S195.6 78 188.8 75.9999999999999Q178.9 72.9999999999999 164.8000000000001 72.9999999999999C156.2000000000001 72.9999999999999 148.0000000000001 73.9999999999999 140.6000000000001 75.8S126.6 80.6 120.8000000000001 84.4C115 88.3999999999999 110.6 93.3999999999999 107.4 99.5999999999999S102.6 113.1999999999999 102.6 122H60C60.2 107.8 63 95.6 68.6 85.2C74 74.8 81.4 66.4 90.6 59.8S110.4 48.2 122.8 44.9999999999999C128.2 43.6 134 42.6 139.8 41.8V20C139.8 9 148.8 0 159.8 0S179.8 9 179.8 20V41C185.8 41.6 192 42.6 197.8 44Q215.2 47.9 229.0000000000001 56.6T251.2 78.8C256.8 87.8 259.6 98.8 259.6 111.6C259.6 117.8000000000001 258.6 123.8 256.6 129.8000000000001"}
                fillRule="evenodd"
                transform={`scale(0.05, -0.05) translate(${translation}, ${translation})`}
                style={style}
            />
        </SVGIconContainer>
   );
});
Dollar.displayName = `Blueprint6.Icon.Dollar`;
export default Dollar;
