/*
 * 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 AddColumnLeft: 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="add-column-left" ref={ref} {...props}>
            <path
                d={isLarge ? "M80 180H120V140C120 129 129 120 140 120S160 129 160 140V180H200C211 180 220 189 220 200S211 220 200 220H160V260C160 271 151 280 140 280S120 271 120 260V220H80C69 220 60 211 60 200S69 180 80 180M380 400H20C9 400 0 391 0 380V20C0 9 9 0 20 0H380C391 0 400 9 400 20V380C400 391 391 400 380 400M240 40H40V360H240zM360 40H260V360H360z" : "M300 320H20C9 320 0 311 0 300V20C0 9 9 0 20 0H300C311 0 320 9 320 20V300C320 311 311 320 300 320M200 40H40V280H200zM280 40H220V280H280zM80 140H100V120C100 109 109 100 120 100S140 109 140 120V140H160C171 140 180 149 180 160S171 180 160 180H140V200C140 211 131 220 120 220S100 211 100 200V180H80C69 180 60 171 60 160S69 140 80 140"}
                fillRule="evenodd"
                transform={`scale(0.05, -0.05) translate(${translation}, ${translation})`}
                style={style}
            />
        </SVGIconContainer>
   );
});
AddColumnLeft.displayName = `Blueprint6.Icon.AddColumnLeft`;
export default AddColumnLeft;
