@shotstack/schemas 1.8.2 → 1.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api.bundled.json +832 -6
- package/dist/json-schema/asset.json +853 -1
- package/dist/json-schema/clip.json +853 -1
- package/dist/json-schema/edit.json +854 -2
- package/dist/json-schema/schemas.json +950 -5
- package/dist/json-schema/svg-arrow-shape.json +49 -0
- package/dist/json-schema/svg-asset.json +857 -6
- package/dist/json-schema/svg-circle-shape.json +28 -0
- package/dist/json-schema/svg-cross-shape.json +42 -0
- package/dist/json-schema/svg-ellipse-shape.json +35 -0
- package/dist/json-schema/svg-fill.json +169 -0
- package/dist/json-schema/svg-gradient-stop.json +25 -0
- package/dist/json-schema/svg-heart-shape.json +28 -0
- package/dist/json-schema/svg-line-shape.json +35 -0
- package/dist/json-schema/svg-linear-gradient-fill.json +80 -0
- package/dist/json-schema/svg-path-shape.json +26 -0
- package/dist/json-schema/svg-polygon-shape.json +35 -0
- package/dist/json-schema/svg-radial-gradient-fill.json +66 -0
- package/dist/json-schema/svg-rectangle-shape.json +49 -0
- package/dist/json-schema/svg-ring-shape.json +35 -0
- package/dist/json-schema/svg-shadow.json +79 -0
- package/dist/json-schema/svg-shape.json +404 -0
- package/dist/json-schema/svg-solid-fill.json +40 -0
- package/dist/json-schema/svg-star-shape.json +42 -0
- package/dist/json-schema/svg-stroke.json +115 -0
- package/dist/json-schema/svg-transform.json +93 -0
- package/dist/json-schema/timeline.json +854 -2
- package/dist/json-schema/track.json +854 -2
- package/dist/schema.d.ts +659 -7
- package/dist/zod/zod.gen.cjs +598 -8
- package/dist/zod/zod.gen.d.ts +8230 -156
- package/dist/zod/zod.gen.js +594 -5
- package/dist/zod/zod.gen.ts +369 -5
- package/package.json +1 -1
package/dist/schema.d.ts
CHANGED
|
@@ -1383,36 +1383,688 @@ export interface components {
|
|
|
1383
1383
|
offset?: components["schemas"]["Offset"];
|
|
1384
1384
|
};
|
|
1385
1385
|
/**
|
|
1386
|
-
* @description The SvgAsset is used to
|
|
1387
|
-
*
|
|
1386
|
+
* @description The SvgAsset is used to add scalable vector graphics (SVG) shapes to a video.
|
|
1387
|
+
* It provides two mutually exclusive ways to define shapes:
|
|
1388
1388
|
*
|
|
1389
|
+
* **Option 1: Import SVG markup using `src`**
|
|
1389
1390
|
* ```json
|
|
1390
1391
|
* {
|
|
1391
1392
|
* "type": "svg",
|
|
1392
1393
|
* "src": "<svg width=\"100\" height=\"100\"><circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"#FF0000\"/></svg>"
|
|
1393
1394
|
* }
|
|
1394
1395
|
* ```
|
|
1396
|
+
* When using `src`, no other properties are allowed. The fill, stroke, and dimensions
|
|
1397
|
+
* are automatically extracted from the SVG markup.
|
|
1395
1398
|
*
|
|
1396
|
-
*
|
|
1399
|
+
* **Option 2: Define shapes programmatically using `shape`**
|
|
1400
|
+
* ```json
|
|
1401
|
+
* {
|
|
1402
|
+
* "type": "svg",
|
|
1403
|
+
* "shape": { "type": "circle", "radius": 50 },
|
|
1404
|
+
* "fill": { "type": "solid", "color": "#FF0000" }
|
|
1405
|
+
* }
|
|
1406
|
+
* ```
|
|
1407
|
+
* When using `shape`, you can customize fill, stroke, shadow, transform, and other properties.
|
|
1408
|
+
* The `src` property is not allowed in this mode.
|
|
1409
|
+
*
|
|
1410
|
+
* **Important:** You must provide either `src` OR `shape`, but not both.
|
|
1411
|
+
* These two modes are mutually exclusive.
|
|
1412
|
+
*
|
|
1413
|
+
* **Available Shapes (Option 2 only):**
|
|
1414
|
+
* - `rectangle` - Rectangles with optional rounded corners
|
|
1415
|
+
* - `circle` - Perfect circles
|
|
1416
|
+
* - `ellipse` - Ellipses/ovals with separate x and y radii
|
|
1417
|
+
* - `line` - Straight lines with configurable thickness
|
|
1418
|
+
* - `polygon` - Regular polygons (triangle, pentagon, hexagon, etc.)
|
|
1419
|
+
* - `star` - Multi-pointed stars
|
|
1420
|
+
* - `arrow` - Directional arrows
|
|
1421
|
+
* - `heart` - Heart shapes
|
|
1422
|
+
* - `cross` - Plus/cross shapes
|
|
1423
|
+
* - `ring` - Donut/ring shapes
|
|
1424
|
+
* - `path` - Custom shapes using SVG path data
|
|
1425
|
+
*
|
|
1426
|
+
* See [W3C SVG 2 Specification](https://www.w3.org/TR/SVG2/) for path data syntax.
|
|
1397
1427
|
* @example {
|
|
1398
1428
|
* "type": "svg",
|
|
1399
|
-
* "
|
|
1429
|
+
* "shape": {
|
|
1430
|
+
* "type": "star",
|
|
1431
|
+
* "points": 5,
|
|
1432
|
+
* "outerRadius": 100,
|
|
1433
|
+
* "innerRadius": 50
|
|
1434
|
+
* },
|
|
1435
|
+
* "fill": {
|
|
1436
|
+
* "type": "linear",
|
|
1437
|
+
* "angle": 45,
|
|
1438
|
+
* "stops": [
|
|
1439
|
+
* {
|
|
1440
|
+
* "offset": 0,
|
|
1441
|
+
* "color": "#FFD700"
|
|
1442
|
+
* },
|
|
1443
|
+
* {
|
|
1444
|
+
* "offset": 1,
|
|
1445
|
+
* "color": "#FF6B6B"
|
|
1446
|
+
* }
|
|
1447
|
+
* ],
|
|
1448
|
+
* "opacity": 1
|
|
1449
|
+
* },
|
|
1450
|
+
* "stroke": {
|
|
1451
|
+
* "color": "#2C3E50",
|
|
1452
|
+
* "width": 3,
|
|
1453
|
+
* "opacity": 1,
|
|
1454
|
+
* "lineCap": "round",
|
|
1455
|
+
* "lineJoin": "round"
|
|
1456
|
+
* },
|
|
1457
|
+
* "transform": {
|
|
1458
|
+
* "x": 200,
|
|
1459
|
+
* "y": 150,
|
|
1460
|
+
* "rotation": 0,
|
|
1461
|
+
* "scale": 1
|
|
1462
|
+
* },
|
|
1463
|
+
* "opacity": 1
|
|
1400
1464
|
* }
|
|
1401
1465
|
*/
|
|
1402
1466
|
SvgAsset: {
|
|
1403
1467
|
/**
|
|
1404
|
-
* @description The asset type - set to `svg` for SVG
|
|
1468
|
+
* @description The asset type - set to `svg` for SVG shapes. (enum property replaced by openapi-typescript)
|
|
1405
1469
|
* @enum {string}
|
|
1406
1470
|
*/
|
|
1407
1471
|
type: "svg";
|
|
1408
1472
|
/**
|
|
1409
|
-
* @description Raw SVG markup string to import.
|
|
1473
|
+
* @description Raw SVG markup string to import. When provided, the shape is extracted
|
|
1474
|
+
* automatically from the SVG content.
|
|
1410
1475
|
*
|
|
1411
1476
|
* **Supported elements:** `<path>`, `<rect>`, `<circle>`, `<ellipse>`,
|
|
1412
1477
|
* `<line>`, `<polygon>`, `<polyline>`
|
|
1478
|
+
*
|
|
1479
|
+
* **Automatically extracted:**
|
|
1480
|
+
* - Path data (converted to a single combined path)
|
|
1481
|
+
* - Fill color (from `fill` attribute or `style`)
|
|
1482
|
+
* - Stroke color and width (from attributes or `style`)
|
|
1483
|
+
* - Dimensions (from `width`/`height` or `viewBox`)
|
|
1484
|
+
* - Opacity (from `opacity` attribute)
|
|
1485
|
+
*
|
|
1486
|
+
* **Important:** When using `src`, no other properties (shape, fill, stroke, etc.)
|
|
1487
|
+
* are allowed. All styling must be defined within the SVG markup itself.
|
|
1413
1488
|
* @example <svg width="100" height="100"><circle cx="50" cy="50" r="40" fill="#3498db"/></svg>
|
|
1414
1489
|
*/
|
|
1415
|
-
src
|
|
1490
|
+
src?: string;
|
|
1491
|
+
/**
|
|
1492
|
+
* @description The shape definition using primitives. The `type` property within determines
|
|
1493
|
+
* the shape kind and its specific properties.
|
|
1494
|
+
*
|
|
1495
|
+
* **Important:** When using `shape`, the `src` property is not allowed.
|
|
1496
|
+
*/
|
|
1497
|
+
shape?: components["schemas"]["SvgShape"];
|
|
1498
|
+
/**
|
|
1499
|
+
* @description Fill properties for the shape interior.
|
|
1500
|
+
* Can be a solid color or a gradient (linear/radial).
|
|
1501
|
+
* If omitted, the shape will have no fill (transparent interior).
|
|
1502
|
+
*
|
|
1503
|
+
* **Note:** Only allowed when using `shape`, not with `src`.
|
|
1504
|
+
*/
|
|
1505
|
+
fill?: components["schemas"]["SvgFill"];
|
|
1506
|
+
/**
|
|
1507
|
+
* @description Stroke (outline) properties for the shape.
|
|
1508
|
+
* If omitted, the shape will have no stroke (no outline).
|
|
1509
|
+
*
|
|
1510
|
+
* **Note:** Only allowed when using `shape`, not with `src`.
|
|
1511
|
+
*/
|
|
1512
|
+
stroke?: components["schemas"]["SvgStroke"];
|
|
1513
|
+
/**
|
|
1514
|
+
* @description Drop shadow properties for the shape.
|
|
1515
|
+
* Creates a shadow effect behind the shape.
|
|
1516
|
+
*
|
|
1517
|
+
* **Note:** Only allowed when using `shape`, not with `src`.
|
|
1518
|
+
*/
|
|
1519
|
+
shadow?: components["schemas"]["SvgShadow"];
|
|
1520
|
+
/**
|
|
1521
|
+
* @description Transform properties for positioning, rotating, and scaling the shape.
|
|
1522
|
+
* The transform is applied relative to the transformation origin.
|
|
1523
|
+
*
|
|
1524
|
+
* **Note:** Only allowed when using `shape`, not with `src`.
|
|
1525
|
+
*/
|
|
1526
|
+
transform?: components["schemas"]["SvgTransform"];
|
|
1527
|
+
/**
|
|
1528
|
+
* @description The overall opacity of the entire shape (including fill, stroke, and shadow).
|
|
1529
|
+
* `1` is fully opaque, `0` is fully transparent.
|
|
1530
|
+
* This is applied on top of individual fill/stroke/shadow opacity values.
|
|
1531
|
+
*
|
|
1532
|
+
* **Note:** Only allowed when using `shape`, not with `src`.
|
|
1533
|
+
* @default 1
|
|
1534
|
+
* @example 1
|
|
1535
|
+
*/
|
|
1536
|
+
opacity?: number;
|
|
1537
|
+
/**
|
|
1538
|
+
* @description The width of the bounding box in pixels.
|
|
1539
|
+
* If specified, the shape may be scaled to fit within this width.
|
|
1540
|
+
* If omitted, the shape uses its natural dimensions.
|
|
1541
|
+
*
|
|
1542
|
+
* **Note:** Only allowed when using `shape`, not with `src`.
|
|
1543
|
+
* @example 400
|
|
1544
|
+
*/
|
|
1545
|
+
width?: number;
|
|
1546
|
+
/**
|
|
1547
|
+
* @description The height of the bounding box in pixels.
|
|
1548
|
+
* If specified, the shape may be scaled to fit within this height.
|
|
1549
|
+
* If omitted, the shape uses its natural dimensions.
|
|
1550
|
+
*
|
|
1551
|
+
* **Note:** Only allowed when using `shape`, not with `src`.
|
|
1552
|
+
* @example 300
|
|
1553
|
+
*/
|
|
1554
|
+
height?: number;
|
|
1555
|
+
};
|
|
1556
|
+
/**
|
|
1557
|
+
* @description The shape definition for an SVG asset. Each shape type has its own specific
|
|
1558
|
+
* properties. The `type` field determines which shape is rendered.
|
|
1559
|
+
*/
|
|
1560
|
+
SvgShape: components["schemas"]["SvgRectangleShape"] | components["schemas"]["SvgCircleShape"] | components["schemas"]["SvgEllipseShape"] | components["schemas"]["SvgLineShape"] | components["schemas"]["SvgPolygonShape"] | components["schemas"]["SvgStarShape"] | components["schemas"]["SvgArrowShape"] | components["schemas"]["SvgHeartShape"] | components["schemas"]["SvgCrossShape"] | components["schemas"]["SvgRingShape"] | components["schemas"]["SvgPathShape"];
|
|
1561
|
+
/**
|
|
1562
|
+
* @description A rectangle shape with optional rounded corners.
|
|
1563
|
+
* The rectangle is defined by its width and height dimensions.
|
|
1564
|
+
*/
|
|
1565
|
+
SvgRectangleShape: {
|
|
1566
|
+
/**
|
|
1567
|
+
* @description The shape type - set to `rectangle`. (enum property replaced by openapi-typescript)
|
|
1568
|
+
* @enum {string}
|
|
1569
|
+
*/
|
|
1570
|
+
type: "rectangle";
|
|
1571
|
+
/**
|
|
1572
|
+
* @description The width of the rectangle in pixels.
|
|
1573
|
+
* @example 200
|
|
1574
|
+
*/
|
|
1575
|
+
width: number;
|
|
1576
|
+
/**
|
|
1577
|
+
* @description The height of the rectangle in pixels.
|
|
1578
|
+
* @example 100
|
|
1579
|
+
*/
|
|
1580
|
+
height: number;
|
|
1581
|
+
/**
|
|
1582
|
+
* @description The corner radius for rounded corners in pixels.
|
|
1583
|
+
* Set to `0` for sharp corners. The radius is automatically clamped
|
|
1584
|
+
* to half of the smallest dimension.
|
|
1585
|
+
* @default 0
|
|
1586
|
+
* @example 10
|
|
1587
|
+
*/
|
|
1588
|
+
cornerRadius?: number;
|
|
1589
|
+
};
|
|
1590
|
+
/**
|
|
1591
|
+
* @description A perfect circle shape defined by its radius.
|
|
1592
|
+
* The circle is centered at the shape's position.
|
|
1593
|
+
*/
|
|
1594
|
+
SvgCircleShape: {
|
|
1595
|
+
/**
|
|
1596
|
+
* @description The shape type - set to `circle`. (enum property replaced by openapi-typescript)
|
|
1597
|
+
* @enum {string}
|
|
1598
|
+
*/
|
|
1599
|
+
type: "circle";
|
|
1600
|
+
/**
|
|
1601
|
+
* @description The radius of the circle in pixels.
|
|
1602
|
+
* @example 50
|
|
1603
|
+
*/
|
|
1604
|
+
radius: number;
|
|
1605
|
+
};
|
|
1606
|
+
/**
|
|
1607
|
+
* @description An ellipse (oval) shape with separate horizontal and vertical radii.
|
|
1608
|
+
* The ellipse is centered at the shape's position.
|
|
1609
|
+
*/
|
|
1610
|
+
SvgEllipseShape: {
|
|
1611
|
+
/**
|
|
1612
|
+
* @description The shape type - set to `ellipse`. (enum property replaced by openapi-typescript)
|
|
1613
|
+
* @enum {string}
|
|
1614
|
+
*/
|
|
1615
|
+
type: "ellipse";
|
|
1616
|
+
/**
|
|
1617
|
+
* @description The horizontal radius (semi-major axis) in pixels.
|
|
1618
|
+
* @example 80
|
|
1619
|
+
*/
|
|
1620
|
+
radiusX: number;
|
|
1621
|
+
/**
|
|
1622
|
+
* @description The vertical radius (semi-minor axis) in pixels.
|
|
1623
|
+
* @example 50
|
|
1624
|
+
*/
|
|
1625
|
+
radiusY: number;
|
|
1626
|
+
};
|
|
1627
|
+
/**
|
|
1628
|
+
* @description A straight line shape with a specified length and thickness.
|
|
1629
|
+
* The line is drawn horizontally by default and can be rotated using transform.
|
|
1630
|
+
*/
|
|
1631
|
+
SvgLineShape: {
|
|
1632
|
+
/**
|
|
1633
|
+
* @description The shape type - set to `line`. (enum property replaced by openapi-typescript)
|
|
1634
|
+
* @enum {string}
|
|
1635
|
+
*/
|
|
1636
|
+
type: "line";
|
|
1637
|
+
/**
|
|
1638
|
+
* @description The length of the line in pixels.
|
|
1639
|
+
* @example 100
|
|
1640
|
+
*/
|
|
1641
|
+
length: number;
|
|
1642
|
+
/**
|
|
1643
|
+
* @description The thickness of the line in pixels.
|
|
1644
|
+
* @example 4
|
|
1645
|
+
*/
|
|
1646
|
+
thickness: number;
|
|
1647
|
+
};
|
|
1648
|
+
/**
|
|
1649
|
+
* @description A regular polygon shape with a specified number of sides.
|
|
1650
|
+
* Examples: triangle (3), square (4), pentagon (5), hexagon (6), etc.
|
|
1651
|
+
* The polygon is inscribed in a circle of the given radius.
|
|
1652
|
+
*/
|
|
1653
|
+
SvgPolygonShape: {
|
|
1654
|
+
/**
|
|
1655
|
+
* @description The shape type - set to `polygon`. (enum property replaced by openapi-typescript)
|
|
1656
|
+
* @enum {string}
|
|
1657
|
+
*/
|
|
1658
|
+
type: "polygon";
|
|
1659
|
+
/**
|
|
1660
|
+
* @description The number of sides of the polygon.
|
|
1661
|
+
* Minimum 3 (triangle), maximum 100 for practical use.
|
|
1662
|
+
* @example 6
|
|
1663
|
+
*/
|
|
1664
|
+
sides: number;
|
|
1665
|
+
/**
|
|
1666
|
+
* @description The radius of the circumscribed circle in pixels.
|
|
1667
|
+
* This determines the size of the polygon.
|
|
1668
|
+
* @example 50
|
|
1669
|
+
*/
|
|
1670
|
+
radius: number;
|
|
1671
|
+
};
|
|
1672
|
+
/**
|
|
1673
|
+
* @description A star shape with a specified number of points.
|
|
1674
|
+
* The star is defined by outer and inner radii, creating the characteristic
|
|
1675
|
+
* pointed appearance.
|
|
1676
|
+
*/
|
|
1677
|
+
SvgStarShape: {
|
|
1678
|
+
/**
|
|
1679
|
+
* @description The shape type - set to `star`. (enum property replaced by openapi-typescript)
|
|
1680
|
+
* @enum {string}
|
|
1681
|
+
*/
|
|
1682
|
+
type: "star";
|
|
1683
|
+
/**
|
|
1684
|
+
* @description The number of points on the star.
|
|
1685
|
+
* Minimum 3 for a triangle-like star, typically 5 for a classic star.
|
|
1686
|
+
* @example 5
|
|
1687
|
+
*/
|
|
1688
|
+
points: number;
|
|
1689
|
+
/**
|
|
1690
|
+
* @description The outer radius in pixels - the distance from center to the tips of the points.
|
|
1691
|
+
* @example 50
|
|
1692
|
+
*/
|
|
1693
|
+
outerRadius: number;
|
|
1694
|
+
/**
|
|
1695
|
+
* @description The inner radius in pixels - the distance from center to the inner vertices.
|
|
1696
|
+
* Should be smaller than outerRadius for a star effect.
|
|
1697
|
+
* @example 25
|
|
1698
|
+
*/
|
|
1699
|
+
innerRadius: number;
|
|
1700
|
+
};
|
|
1701
|
+
/**
|
|
1702
|
+
* @description An arrow shape pointing to the right by default.
|
|
1703
|
+
* Use transform rotation to change direction.
|
|
1704
|
+
*/
|
|
1705
|
+
SvgArrowShape: {
|
|
1706
|
+
/**
|
|
1707
|
+
* @description The shape type - set to `arrow`. (enum property replaced by openapi-typescript)
|
|
1708
|
+
* @enum {string}
|
|
1709
|
+
*/
|
|
1710
|
+
type: "arrow";
|
|
1711
|
+
/**
|
|
1712
|
+
* @description The total length of the arrow from tail to tip in pixels.
|
|
1713
|
+
* @example 100
|
|
1714
|
+
*/
|
|
1715
|
+
length: number;
|
|
1716
|
+
/**
|
|
1717
|
+
* @description The width of the arrow head (the widest part) in pixels.
|
|
1718
|
+
* @example 40
|
|
1719
|
+
*/
|
|
1720
|
+
headWidth: number;
|
|
1721
|
+
/**
|
|
1722
|
+
* @description The length of the arrow head portion in pixels.
|
|
1723
|
+
* @example 30
|
|
1724
|
+
*/
|
|
1725
|
+
headLength: number;
|
|
1726
|
+
/**
|
|
1727
|
+
* @description The width of the arrow shaft (body) in pixels.
|
|
1728
|
+
* @example 20
|
|
1729
|
+
*/
|
|
1730
|
+
shaftWidth: number;
|
|
1731
|
+
};
|
|
1732
|
+
/**
|
|
1733
|
+
* @description A heart shape commonly used for love/like icons.
|
|
1734
|
+
* The heart is defined by a single size parameter.
|
|
1735
|
+
*/
|
|
1736
|
+
SvgHeartShape: {
|
|
1737
|
+
/**
|
|
1738
|
+
* @description The shape type - set to `heart`. (enum property replaced by openapi-typescript)
|
|
1739
|
+
* @enum {string}
|
|
1740
|
+
*/
|
|
1741
|
+
type: "heart";
|
|
1742
|
+
/**
|
|
1743
|
+
* @description The size of the heart in pixels.
|
|
1744
|
+
* This determines both the width and height proportionally.
|
|
1745
|
+
* @example 100
|
|
1746
|
+
*/
|
|
1747
|
+
size: number;
|
|
1748
|
+
};
|
|
1749
|
+
/**
|
|
1750
|
+
* @description A cross or plus shape with equal or different arm lengths.
|
|
1751
|
+
* Can be styled as a plus sign (+) or a cross (x with rotation).
|
|
1752
|
+
*/
|
|
1753
|
+
SvgCrossShape: {
|
|
1754
|
+
/**
|
|
1755
|
+
* @description The shape type - set to `cross`. (enum property replaced by openapi-typescript)
|
|
1756
|
+
* @enum {string}
|
|
1757
|
+
*/
|
|
1758
|
+
type: "cross";
|
|
1759
|
+
/**
|
|
1760
|
+
* @description The total width of the cross in pixels.
|
|
1761
|
+
* @example 100
|
|
1762
|
+
*/
|
|
1763
|
+
width: number;
|
|
1764
|
+
/**
|
|
1765
|
+
* @description The total height of the cross in pixels.
|
|
1766
|
+
* @example 100
|
|
1767
|
+
*/
|
|
1768
|
+
height: number;
|
|
1769
|
+
/**
|
|
1770
|
+
* @description The thickness of the cross arms in pixels.
|
|
1771
|
+
* @example 20
|
|
1772
|
+
*/
|
|
1773
|
+
thickness: number;
|
|
1774
|
+
};
|
|
1775
|
+
/**
|
|
1776
|
+
* @description A ring (donut/annulus) shape - a circle with a circular hole in the center.
|
|
1777
|
+
* The ring is defined by outer and inner radii.
|
|
1778
|
+
*/
|
|
1779
|
+
SvgRingShape: {
|
|
1780
|
+
/**
|
|
1781
|
+
* @description The shape type - set to `ring`. (enum property replaced by openapi-typescript)
|
|
1782
|
+
* @enum {string}
|
|
1783
|
+
*/
|
|
1784
|
+
type: "ring";
|
|
1785
|
+
/**
|
|
1786
|
+
* @description The outer radius of the ring in pixels.
|
|
1787
|
+
* @example 50
|
|
1788
|
+
*/
|
|
1789
|
+
outerRadius: number;
|
|
1790
|
+
/**
|
|
1791
|
+
* @description The inner radius (hole) of the ring in pixels.
|
|
1792
|
+
* Must be smaller than outerRadius.
|
|
1793
|
+
* @example 30
|
|
1794
|
+
*/
|
|
1795
|
+
innerRadius: number;
|
|
1796
|
+
};
|
|
1797
|
+
/**
|
|
1798
|
+
* @description A custom shape defined by SVG path data.
|
|
1799
|
+
* Supports all standard SVG path commands for creating complex shapes.
|
|
1800
|
+
*
|
|
1801
|
+
* **Path Commands:**
|
|
1802
|
+
* - `M x y` / `m dx dy` - Move to (absolute/relative)
|
|
1803
|
+
* - `L x y` / `l dx dy` - Line to
|
|
1804
|
+
* - `H x` / `h dx` - Horizontal line to
|
|
1805
|
+
* - `V y` / `v dy` - Vertical line to
|
|
1806
|
+
* - `C x1 y1 x2 y2 x y` / `c` - Cubic Bezier curve
|
|
1807
|
+
* - `S x2 y2 x y` / `s` - Smooth cubic Bezier
|
|
1808
|
+
* - `Q x1 y1 x y` / `q` - Quadratic Bezier curve
|
|
1809
|
+
* - `T x y` / `t` - Smooth quadratic Bezier
|
|
1810
|
+
* - `A rx ry angle large-arc sweep x y` / `a` - Elliptical arc
|
|
1811
|
+
* - `Z` / `z` - Close path
|
|
1812
|
+
*/
|
|
1813
|
+
SvgPathShape: {
|
|
1814
|
+
/**
|
|
1815
|
+
* @description The shape type - set to `path`. (enum property replaced by openapi-typescript)
|
|
1816
|
+
* @enum {string}
|
|
1817
|
+
*/
|
|
1818
|
+
type: "path";
|
|
1819
|
+
/**
|
|
1820
|
+
* @description The SVG path data string defining the shape.
|
|
1821
|
+
* Uses standard SVG path commands (M, L, C, Q, A, Z, etc.).
|
|
1822
|
+
* Example: `M 0 0 L 100 0 L 100 100 L 0 100 Z` draws a square.
|
|
1823
|
+
* @example M 0 0 L 100 0 L 50 86.6 Z
|
|
1824
|
+
*/
|
|
1825
|
+
d: string;
|
|
1826
|
+
};
|
|
1827
|
+
/**
|
|
1828
|
+
* @description Fill properties for SVG shapes. Supports solid colors and gradients.
|
|
1829
|
+
* The fill defines how the interior of a shape is painted.
|
|
1830
|
+
*/
|
|
1831
|
+
SvgFill: components["schemas"]["SvgSolidFill"] | components["schemas"]["SvgLinearGradientFill"] | components["schemas"]["SvgRadialGradientFill"];
|
|
1832
|
+
/** @description A solid color fill for SVG shapes. */
|
|
1833
|
+
SvgSolidFill: {
|
|
1834
|
+
/**
|
|
1835
|
+
* @description The fill type - set to `solid` for a single color fill. (enum property replaced by openapi-typescript)
|
|
1836
|
+
* @enum {string}
|
|
1837
|
+
*/
|
|
1838
|
+
type: "solid";
|
|
1839
|
+
/**
|
|
1840
|
+
* @description The fill color using hexadecimal color notation (e.g., `#FF0000` for red).
|
|
1841
|
+
* Must be a 6-digit hex color code prefixed with `#`.
|
|
1842
|
+
* @default #000000
|
|
1843
|
+
* @example #3498db
|
|
1844
|
+
*/
|
|
1845
|
+
color: string;
|
|
1846
|
+
/**
|
|
1847
|
+
* @description The opacity of the fill where `1` is fully opaque and `0` is fully transparent.
|
|
1848
|
+
* Values between 0 and 1 create semi-transparent fills.
|
|
1849
|
+
* @default 1
|
|
1850
|
+
* @example 0.8
|
|
1851
|
+
*/
|
|
1852
|
+
opacity?: number;
|
|
1853
|
+
};
|
|
1854
|
+
/**
|
|
1855
|
+
* @description A linear gradient fill that transitions colors along a straight line.
|
|
1856
|
+
* The gradient direction is controlled by the `angle` property.
|
|
1857
|
+
*/
|
|
1858
|
+
SvgLinearGradientFill: {
|
|
1859
|
+
/**
|
|
1860
|
+
* @description The fill type - set to `linear` for a linear gradient fill. (enum property replaced by openapi-typescript)
|
|
1861
|
+
* @enum {string}
|
|
1862
|
+
*/
|
|
1863
|
+
type: "linear";
|
|
1864
|
+
/**
|
|
1865
|
+
* @description The angle of the gradient in degrees. `0` is horizontal (left to right),
|
|
1866
|
+
* `90` is vertical (bottom to top), `180` is right to left, etc.
|
|
1867
|
+
* @default 0
|
|
1868
|
+
* @example 45
|
|
1869
|
+
*/
|
|
1870
|
+
angle?: number;
|
|
1871
|
+
/**
|
|
1872
|
+
* @description Array of color stops that define the gradient colors and their positions.
|
|
1873
|
+
* Must have at least 2 stops. Offsets should increase from 0 to 1.
|
|
1874
|
+
*/
|
|
1875
|
+
stops: components["schemas"]["SvgGradientStop"][];
|
|
1876
|
+
/**
|
|
1877
|
+
* @description The overall opacity of the gradient where `1` is fully opaque and `0` is fully transparent.
|
|
1878
|
+
* @default 1
|
|
1879
|
+
* @example 1
|
|
1880
|
+
*/
|
|
1881
|
+
opacity?: number;
|
|
1882
|
+
};
|
|
1883
|
+
/**
|
|
1884
|
+
* @description A radial gradient fill that transitions colors radiating outward from a center point.
|
|
1885
|
+
* The gradient creates a circular or elliptical color transition.
|
|
1886
|
+
*/
|
|
1887
|
+
SvgRadialGradientFill: {
|
|
1888
|
+
/**
|
|
1889
|
+
* @description The fill type - set to `radial` for a radial gradient fill. (enum property replaced by openapi-typescript)
|
|
1890
|
+
* @enum {string}
|
|
1891
|
+
*/
|
|
1892
|
+
type: "radial";
|
|
1893
|
+
/**
|
|
1894
|
+
* @description Array of color stops that define the gradient colors and their positions.
|
|
1895
|
+
* Must have at least 2 stops. Offset `0` is the center, `1` is the outer edge.
|
|
1896
|
+
*/
|
|
1897
|
+
stops: components["schemas"]["SvgGradientStop"][];
|
|
1898
|
+
/**
|
|
1899
|
+
* @description The overall opacity of the gradient where `1` is fully opaque and `0` is fully transparent.
|
|
1900
|
+
* @default 1
|
|
1901
|
+
* @example 1
|
|
1902
|
+
*/
|
|
1903
|
+
opacity?: number;
|
|
1904
|
+
};
|
|
1905
|
+
/**
|
|
1906
|
+
* @description A color stop in a gradient. Each stop defines a color at a specific position
|
|
1907
|
+
* along the gradient vector. Gradients require at least 2 stops.
|
|
1908
|
+
*/
|
|
1909
|
+
SvgGradientStop: {
|
|
1910
|
+
/**
|
|
1911
|
+
* @description Position of the color stop along the gradient vector.
|
|
1912
|
+
* `0` represents the start and `1` represents the end of the gradient.
|
|
1913
|
+
* @example 0.5
|
|
1914
|
+
*/
|
|
1915
|
+
offset: number;
|
|
1916
|
+
/**
|
|
1917
|
+
* @description The color at this stop using hexadecimal color notation.
|
|
1918
|
+
* @example #e74c3c
|
|
1919
|
+
*/
|
|
1920
|
+
color: string;
|
|
1921
|
+
};
|
|
1922
|
+
/**
|
|
1923
|
+
* @description Stroke (outline) properties for SVG shapes. The stroke defines how the outline
|
|
1924
|
+
* of a shape is painted, including its color, width, and line style.
|
|
1925
|
+
*/
|
|
1926
|
+
SvgStroke: {
|
|
1927
|
+
/**
|
|
1928
|
+
* @description The stroke color using hexadecimal color notation.
|
|
1929
|
+
* @default #000000
|
|
1930
|
+
* @example #2c3e50
|
|
1931
|
+
*/
|
|
1932
|
+
color?: string;
|
|
1933
|
+
/**
|
|
1934
|
+
* @description The width of the stroke in pixels. Must be greater than 0.
|
|
1935
|
+
* Larger values create thicker outlines.
|
|
1936
|
+
* @default 1
|
|
1937
|
+
* @example 2
|
|
1938
|
+
*/
|
|
1939
|
+
width?: number;
|
|
1940
|
+
/**
|
|
1941
|
+
* @description The opacity of the stroke where `1` is opaque and `0` is transparent.
|
|
1942
|
+
* @default 1
|
|
1943
|
+
* @example 1
|
|
1944
|
+
*/
|
|
1945
|
+
opacity?: number;
|
|
1946
|
+
/**
|
|
1947
|
+
* @description The shape at the end of open paths (lines, polylines, unclosed paths).
|
|
1948
|
+
* <ul>
|
|
1949
|
+
* <li>`butt` - flat edge perpendicular to the line (default)</li>
|
|
1950
|
+
* <li>`round` - semicircular cap extending beyond the endpoint</li>
|
|
1951
|
+
* <li>`square` - rectangular cap extending beyond the endpoint</li>
|
|
1952
|
+
* </ul>
|
|
1953
|
+
* @default butt
|
|
1954
|
+
* @example round
|
|
1955
|
+
* @enum {string}
|
|
1956
|
+
*/
|
|
1957
|
+
lineCap?: "butt" | "round" | "square";
|
|
1958
|
+
/**
|
|
1959
|
+
* @description The shape at the corners where two lines meet.
|
|
1960
|
+
* <ul>
|
|
1961
|
+
* <li>`miter` - sharp corner (default)</li>
|
|
1962
|
+
* <li>`round` - rounded corner</li>
|
|
1963
|
+
* <li>`bevel` - flattened corner</li>
|
|
1964
|
+
* </ul>
|
|
1965
|
+
* @default miter
|
|
1966
|
+
* @example round
|
|
1967
|
+
* @enum {string}
|
|
1968
|
+
*/
|
|
1969
|
+
lineJoin?: "miter" | "round" | "bevel";
|
|
1970
|
+
/**
|
|
1971
|
+
* @description Pattern of dashes and gaps for the stroke. An array of numbers where
|
|
1972
|
+
* odd indices are dash lengths and even indices are gap lengths.
|
|
1973
|
+
* For example, `[10, 5]` creates 10px dashes with 5px gaps.
|
|
1974
|
+
* `[10, 5, 2, 5]` creates alternating 10px and 2px dashes with 5px gaps.
|
|
1975
|
+
* @example [
|
|
1976
|
+
* 10,
|
|
1977
|
+
* 5
|
|
1978
|
+
* ]
|
|
1979
|
+
*/
|
|
1980
|
+
dashArray?: number[];
|
|
1981
|
+
/**
|
|
1982
|
+
* @description Offset for the dash pattern. Positive values shift the pattern
|
|
1983
|
+
* forward along the path, negative values shift it backward.
|
|
1984
|
+
* @default 0
|
|
1985
|
+
* @example 5
|
|
1986
|
+
*/
|
|
1987
|
+
dashOffset?: number;
|
|
1988
|
+
};
|
|
1989
|
+
/** @description Drop shadow properties for SVG shapes. Creates a shadow effect behind the shape. */
|
|
1990
|
+
SvgShadow: {
|
|
1991
|
+
/**
|
|
1992
|
+
* @description Horizontal offset of the shadow in pixels.
|
|
1993
|
+
* Positive values move the shadow to the right, negative to the left.
|
|
1994
|
+
* @default 0
|
|
1995
|
+
* @example 4
|
|
1996
|
+
*/
|
|
1997
|
+
offsetX?: number;
|
|
1998
|
+
/**
|
|
1999
|
+
* @description Vertical offset of the shadow in pixels.
|
|
2000
|
+
* Positive values move the shadow down, negative values move it up.
|
|
2001
|
+
* @default 0
|
|
2002
|
+
* @example 4
|
|
2003
|
+
*/
|
|
2004
|
+
offsetY?: number;
|
|
2005
|
+
/**
|
|
2006
|
+
* @description The blur radius of the shadow in pixels. Must be 0 or greater.
|
|
2007
|
+
* @default 0
|
|
2008
|
+
* @example 8
|
|
2009
|
+
*/
|
|
2010
|
+
blur?: number;
|
|
2011
|
+
/**
|
|
2012
|
+
* @description The shadow color using hexadecimal color notation.
|
|
2013
|
+
* @default #000000
|
|
2014
|
+
* @example #000000
|
|
2015
|
+
*/
|
|
2016
|
+
color?: string;
|
|
2017
|
+
/**
|
|
2018
|
+
* @description The opacity of the shadow where `1` is opaque and `0` is transparent.
|
|
2019
|
+
* @default 0.5
|
|
2020
|
+
* @example 0.3
|
|
2021
|
+
*/
|
|
2022
|
+
opacity?: number;
|
|
2023
|
+
};
|
|
2024
|
+
/** @description Transformation properties for positioning, rotating, and scaling SVG shapes. */
|
|
2025
|
+
SvgTransform: {
|
|
2026
|
+
/**
|
|
2027
|
+
* @description The x-coordinate position of the shape in pixels.
|
|
2028
|
+
* Relative to the top-left corner of the viewport.
|
|
2029
|
+
* @default 0
|
|
2030
|
+
* @example 100
|
|
2031
|
+
*/
|
|
2032
|
+
x?: number;
|
|
2033
|
+
/**
|
|
2034
|
+
* @description The y-coordinate position of the shape in pixels.
|
|
2035
|
+
* Relative to the top-left corner of the viewport.
|
|
2036
|
+
* @default 0
|
|
2037
|
+
* @example 100
|
|
2038
|
+
*/
|
|
2039
|
+
y?: number;
|
|
2040
|
+
/**
|
|
2041
|
+
* @description Rotation angle in degrees. Positive values rotate clockwise,
|
|
2042
|
+
* negative values rotate counter-clockwise. Range: -360 to 360.
|
|
2043
|
+
* @default 0
|
|
2044
|
+
* @example 45
|
|
2045
|
+
*/
|
|
2046
|
+
rotation?: number;
|
|
2047
|
+
/**
|
|
2048
|
+
* @description Scale factor for the shape. `1` is original size, `2` is double size,
|
|
2049
|
+
* `0.5` is half size. Must be greater than 0.
|
|
2050
|
+
* @default 1
|
|
2051
|
+
* @example 1.5
|
|
2052
|
+
*/
|
|
2053
|
+
scale?: number;
|
|
2054
|
+
/**
|
|
2055
|
+
* @description The x-coordinate of the transformation origin as a value from 0 to 1.
|
|
2056
|
+
* `0` is the left edge, `0.5` is the center, `1` is the right edge.
|
|
2057
|
+
* @default 0.5
|
|
2058
|
+
* @example 0.5
|
|
2059
|
+
*/
|
|
2060
|
+
originX?: number;
|
|
2061
|
+
/**
|
|
2062
|
+
* @description The y-coordinate of the transformation origin as a value from 0 to 1.
|
|
2063
|
+
* `0` is the top edge, `0.5` is the center, `1` is the bottom edge.
|
|
2064
|
+
* @default 0.5
|
|
2065
|
+
* @example 0.5
|
|
2066
|
+
*/
|
|
2067
|
+
originY?: number;
|
|
1416
2068
|
};
|
|
1417
2069
|
/** @description In and out transitions for a clip - i.e. fade in and fade out */
|
|
1418
2070
|
Transition: {
|