/*
 * ImageToolbox is an image editor for android
 * Copyright (c) 2026 T8RIN (Malik Mukhametzyanov)
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 *
 * 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.
 *
 * You should have received a copy of the Apache License
 * along with this program.  If not, see <http://www.apache.org/licenses/LICENSE-2.0>.
 */

package com.t8rin.imagetoolbox.core.resources.icons

import com.t8rin.imagetoolbox.core.resources.Icons
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp

val Icons.Rounded.Webhook: ImageVector by lazy(LazyThreadSafetyMode.NONE) {
    ImageVector.Builder(
        name = "Rounded.Webhook",
        defaultWidth = 24.dp,
        defaultHeight = 24.dp,
        viewportWidth = 960f,
        viewportHeight = 960f
    ).apply {
        path(fill = SolidColor(Color.Black)) {
            moveTo(280f, 840f)
            quadToRelative(-83f, 0f, -141.5f, -58.5f)
            reflectiveQuadTo(80f, 640f)
            quadToRelative(0f, -56f, 27f, -101.5f)
            reflectiveQuadToRelative(72f, -71.5f)
            quadToRelative(21f, -12f, 41f, 0.5f)
            reflectiveQuadToRelative(20f, 34.5f)
            quadToRelative(0f, 11f, -4.5f, 20f)
            reflectiveQuadTo(223f, 535f)
            quadToRelative(-28f, 15f, -45.5f, 43f)
            reflectiveQuadTo(160f, 640f)
            quadToRelative(0f, 50f, 35f, 85f)
            reflectiveQuadToRelative(85f, 35f)
            quadToRelative(50f, 0f, 85f, -35f)
            reflectiveQuadToRelative(35f, -85f)
            quadToRelative(0f, -17f, 9.5f, -28.5f)
            reflectiveQuadTo(436f, 600f)
            horizontalLineToRelative(199f)
            quadToRelative(8f, -9f, 19.5f, -14.5f)
            reflectiveQuadTo(680f, 580f)
            quadToRelative(25f, 0f, 42.5f, 17.5f)
            reflectiveQuadTo(740f, 640f)
            quadToRelative(0f, 25f, -17.5f, 42.5f)
            reflectiveQuadTo(680f, 700f)
            quadToRelative(-14f, 0f, -25.5f, -5.5f)
            reflectiveQuadTo(635f, 680f)
            lineTo(476f, 680f)
            quadToRelative(-14f, 69f, -68.5f, 114.5f)
            reflectiveQuadTo(280f, 840f)
            close()
            moveTo(280f, 700f)
            quadToRelative(-25f, 0f, -42.5f, -17.5f)
            reflectiveQuadTo(220f, 640f)
            quadToRelative(0f, -22f, 14f, -38f)
            reflectiveQuadToRelative(34f, -21f)
            lineToRelative(94f, -156f)
            quadToRelative(-29f, -27f, -45.5f, -64.5f)
            reflectiveQuadTo(300f, 280f)
            quadToRelative(0f, -83f, 58.5f, -141.5f)
            reflectiveQuadTo(500f, 80f)
            quadToRelative(70f, 0f, 123.5f, 42.5f)
            reflectiveQuadTo(694f, 230f)
            quadToRelative(5f, 19f, -7f, 34.5f)
            reflectiveQuadTo(655f, 280f)
            quadToRelative(-13f, 0f, -24.5f, -9.5f)
            reflectiveQuadTo(615f, 247f)
            quadToRelative(-11f, -38f, -42f, -62.5f)
            reflectiveQuadTo(500f, 160f)
            quadToRelative(-50f, 0f, -85f, 35f)
            reflectiveQuadToRelative(-35f, 85f)
            quadToRelative(0f, 33f, 16.5f, 60.5f)
            reflectiveQuadTo(439f, 384f)
            quadToRelative(14f, 8f, 17.5f, 20f)
            reflectiveQuadToRelative(-3.5f, 24f)
            lineTo(337f, 622f)
            quadToRelative(2f, 5f, 2.5f, 9f)
            reflectiveQuadToRelative(0.5f, 9f)
            quadToRelative(0f, 25f, -17.5f, 42.5f)
            reflectiveQuadTo(280f, 700f)
            close()
            moveTo(680f, 840f)
            quadToRelative(-26f, 0f, -50.5f, -6.5f)
            reflectiveQuadTo(584f, 816f)
            quadToRelative(-27f, -15f, -21.5f, -45.5f)
            reflectiveQuadTo(603f, 740f)
            quadToRelative(5f, 0f, 11f, 2f)
            reflectiveQuadToRelative(11f, 5f)
            quadToRelative(13f, 7f, 26.5f, 10f)
            reflectiveQuadToRelative(28.5f, 3f)
            quadToRelative(50f, 0f, 85f, -35f)
            reflectiveQuadToRelative(35f, -85f)
            quadToRelative(0f, -50f, -35f, -85f)
            reflectiveQuadToRelative(-85f, -35f)
            quadToRelative(-10f, 0f, -19f, 1.5f)
            reflectiveQuadToRelative(-18f, 4.5f)
            quadToRelative(-16f, 5f, -30f, 0.5f)
            reflectiveQuadTo(592f, 511f)
            lineTo(489f, 339f)
            quadToRelative(-21f, -4f, -35f, -20f)
            reflectiveQuadToRelative(-14f, -39f)
            quadToRelative(0f, -25f, 17.5f, -42.5f)
            reflectiveQuadTo(500f, 220f)
            quadToRelative(25f, 0f, 42.5f, 17.5f)
            reflectiveQuadTo(560f, 280f)
            verticalLineToRelative(8.5f)
            quadToRelative(0f, 3.5f, -2f, 8.5f)
            lineToRelative(87f, 146f)
            quadToRelative(8f, -2f, 17f, -2.5f)
            reflectiveQuadToRelative(18f, -0.5f)
            quadToRelative(83f, 0f, 141.5f, 58.5f)
            reflectiveQuadTo(880f, 640f)
            quadToRelative(0f, 83f, -58.5f, 141.5f)
            reflectiveQuadTo(680f, 840f)
            close()
        }
    }.build()
}
