1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789
|
// Code generated by smithy-go-codegen DO NOT EDIT.
package types
import (
smithydocument "github.com/aws/smithy-go/document"
"time"
)
// Represents the event action configuration for an element of a Component or
// ComponentChild . Use for the workflow feature in Amplify Studio that allows you
// to bind events and actions to components. ActionParameters defines the action
// that is performed when an event occurs on the component.
type ActionParameters struct {
// The HTML anchor link to the location to open. Specify this value for a
// navigation action.
Anchor *ComponentProperty
// A dictionary of key-value pairs mapping Amplify Studio properties to fields in
// a data model. Use when the action performs an operation on an Amplify DataStore
// model.
Fields map[string]ComponentProperty
// Specifies whether the user should be signed out globally. Specify this value
// for an auth sign out action.
Global *ComponentProperty
// The unique ID of the component that the ActionParameters apply to.
Id *ComponentProperty
// The name of the data model. Use when the action performs an operation on an
// Amplify DataStore model.
Model *string
// A key-value pair that specifies the state property name and its initial value.
State *MutationActionSetStateParameter
// The element within the same component to modify when the action occurs.
Target *ComponentProperty
// The type of navigation action. Valid values are url and anchor . This value is
// required for a navigation action.
Type *ComponentProperty
// The URL to the location to open. Specify this value for a navigation action.
Url *ComponentProperty
noSmithyDocumentSerde
}
// Describes the API configuration for a code generation job.
//
// The following types satisfy this interface:
//
// ApiConfigurationMemberDataStoreConfig
// ApiConfigurationMemberGraphQLConfig
// ApiConfigurationMemberNoApiConfig
type ApiConfiguration interface {
isApiConfiguration()
}
// The configuration for an application using DataStore APIs.
type ApiConfigurationMemberDataStoreConfig struct {
Value DataStoreRenderConfig
noSmithyDocumentSerde
}
func (*ApiConfigurationMemberDataStoreConfig) isApiConfiguration() {}
// The configuration for an application using GraphQL APIs.
type ApiConfigurationMemberGraphQLConfig struct {
Value GraphQLRenderConfig
noSmithyDocumentSerde
}
func (*ApiConfigurationMemberGraphQLConfig) isApiConfiguration() {}
// The configuration for an application with no API being used.
type ApiConfigurationMemberNoApiConfig struct {
Value NoApiRenderConfig
noSmithyDocumentSerde
}
func (*ApiConfigurationMemberNoApiConfig) isApiConfiguration() {}
// Dependency package that may be required for the project code to run.
type CodegenDependency struct {
// Determines if the dependency package is using Semantic versioning. If set to
// true, it indicates that the dependency package uses Semantic versioning.
IsSemVer *bool
// Name of the dependency package.
Name *string
// Indicates the reason to include the dependency package in your project code.
Reason *string
// Indicates the version of the supported dependency package.
SupportedVersion *string
noSmithyDocumentSerde
}
// Describes the feature flags that you can specify for a code generation job.
type CodegenFeatureFlags struct {
// Specifies whether a code generation job supports non models.
IsNonModelSupported *bool
// Specifes whether a code generation job supports data relationships.
IsRelationshipSupported *bool
noSmithyDocumentSerde
}
// Describes the enums in a generic data schema.
type CodegenGenericDataEnum struct {
// The list of enum values in the generic data schema.
//
// This member is required.
Values []string
noSmithyDocumentSerde
}
// Describes a field in a generic data schema.
type CodegenGenericDataField struct {
// The data type for the generic data field.
//
// This member is required.
DataType CodegenGenericDataFieldDataType
// The value of the data type for the generic data field.
//
// This member is required.
DataTypeValue *string
// Specifies whether the generic data field is an array.
//
// This member is required.
IsArray *bool
// Specifies whether the generic data field is read-only.
//
// This member is required.
ReadOnly *bool
// Specifies whether the generic data field is required.
//
// This member is required.
Required *bool
// The relationship of the generic data schema.
Relationship *CodegenGenericDataRelationshipType
noSmithyDocumentSerde
}
// Describes a model in a generic data schema.
type CodegenGenericDataModel struct {
// The fields in the generic data model.
//
// This member is required.
Fields map[string]CodegenGenericDataField
// The primary keys of the generic data model.
//
// This member is required.
PrimaryKeys []string
// Specifies whether the generic data model is a join table.
IsJoinTable *bool
noSmithyDocumentSerde
}
// Describes a non-model in a generic data schema.
type CodegenGenericDataNonModel struct {
// The fields in a generic data schema non model.
//
// This member is required.
Fields map[string]CodegenGenericDataField
noSmithyDocumentSerde
}
// Describes the relationship between generic data models.
type CodegenGenericDataRelationshipType struct {
// The name of the related model in the data relationship.
//
// This member is required.
RelatedModelName *string
// The data relationship type.
//
// This member is required.
Type GenericDataRelationshipType
// The associated fields of the data relationship.
AssociatedFields []string
// The value of the belongsTo field on the related data model.
BelongsToFieldOnRelatedModel *string
// Specifies whether the relationship can unlink the associated model.
CanUnlinkAssociatedModel *bool
// Specifies whether the @index directive is supported for a hasMany data
// relationship.
IsHasManyIndex *bool
// The name of the related join field in the data relationship.
RelatedJoinFieldName *string
// The name of the related join table in the data relationship.
RelatedJoinTableName *string
// The related model fields in the data relationship.
RelatedModelFields []string
noSmithyDocumentSerde
}
// Describes the configuration for a code generation job that is associated with
// an Amplify app.
type CodegenJob struct {
// The ID of the Amplify app associated with the code generation job.
//
// This member is required.
AppId *string
// The name of the backend environment associated with the code generation job.
//
// This member is required.
EnvironmentName *string
// The unique ID for the code generation job.
//
// This member is required.
Id *string
// The CodegenJobAsset to use for the code generation job.
Asset *CodegenJobAsset
// Specifies whether to autogenerate forms in the code generation job.
AutoGenerateForms *bool
// The time that the code generation job was created.
CreatedAt *time.Time
// Lists the dependency packages that may be required for the project code to run.
Dependencies []CodegenDependency
// Describes the feature flags that you can specify for a code generation job.
Features *CodegenFeatureFlags
// Describes the data schema for a code generation job.
GenericDataSchema *CodegenJobGenericDataSchema
// The time that the code generation job was modified.
ModifiedAt *time.Time
// Describes the configuration information for rendering the UI component
// associated with the code generation job.
RenderConfig CodegenJobRenderConfig
// The status of the code generation job.
Status CodegenJobStatus
// The customized status message for the code generation job.
StatusMessage *string
// One or more key-value pairs to use when tagging the code generation job.
Tags map[string]string
noSmithyDocumentSerde
}
// Describes an asset for a code generation job.
type CodegenJobAsset struct {
// The URL to use to access the asset.
DownloadUrl *string
noSmithyDocumentSerde
}
// Describes the data schema for a code generation job.
type CodegenJobGenericDataSchema struct {
// The type of the data source for the schema. Currently, the only valid value is
// an Amplify DataStore .
//
// This member is required.
DataSourceType CodegenJobGenericDataSourceType
// The name of a CodegenGenericDataEnum .
//
// This member is required.
Enums map[string]CodegenGenericDataEnum
// The name of a CodegenGenericDataModel .
//
// This member is required.
Models map[string]CodegenGenericDataModel
// The name of a CodegenGenericDataNonModel .
//
// This member is required.
NonModels map[string]CodegenGenericDataNonModel
noSmithyDocumentSerde
}
// Describes the configuration information for rendering the UI component
// associated with the code generation job.
//
// The following types satisfy this interface:
//
// CodegenJobRenderConfigMemberReact
type CodegenJobRenderConfig interface {
isCodegenJobRenderConfig()
}
// The name of the ReactStartCodegenJobData object.
type CodegenJobRenderConfigMemberReact struct {
Value ReactStartCodegenJobData
noSmithyDocumentSerde
}
func (*CodegenJobRenderConfigMemberReact) isCodegenJobRenderConfig() {}
// A summary of the basic information about the code generation job.
type CodegenJobSummary struct {
// The unique ID of the Amplify app associated with the code generation job.
//
// This member is required.
AppId *string
// The name of the backend environment associated with the code generation job.
//
// This member is required.
EnvironmentName *string
// The unique ID for the code generation job summary.
//
// This member is required.
Id *string
// The time that the code generation job summary was created.
CreatedAt *time.Time
// The time that the code generation job summary was modified.
ModifiedAt *time.Time
noSmithyDocumentSerde
}
// Contains the configuration settings for a user interface (UI) element for an
// Amplify app. A component is configured as a primary, stand-alone UI element. Use
// ComponentChild to configure an instance of a Component . A ComponentChild
// instance inherits the configuration of the main Component .
type Component struct {
// The unique ID of the Amplify app associated with the component.
//
// This member is required.
AppId *string
// The information to connect a component's properties to data at runtime. You
// can't specify tags as a valid property for bindingProperties .
//
// This member is required.
BindingProperties map[string]ComponentBindingPropertiesValue
// The type of the component. This can be an Amplify custom UI component or
// another custom component.
//
// This member is required.
ComponentType *string
// The time that the component was created.
//
// This member is required.
CreatedAt *time.Time
// The name of the backend environment that is a part of the Amplify app.
//
// This member is required.
EnvironmentName *string
// The unique ID of the component.
//
// This member is required.
Id *string
// The name of the component.
//
// This member is required.
Name *string
// Describes the component's properties that can be overriden in a customized
// instance of the component. You can't specify tags as a valid property for
// overrides .
//
// This member is required.
Overrides map[string]map[string]string
// Describes the component's properties. You can't specify tags as a valid
// property for properties .
//
// This member is required.
Properties map[string]ComponentProperty
// A list of the component's variants. A variant is a unique style configuration
// of a main component.
//
// This member is required.
Variants []ComponentVariant
// A list of the component's ComponentChild instances.
Children []ComponentChild
// The data binding configuration for the component's properties. Use this for a
// collection component. You can't specify tags as a valid property for
// collectionProperties .
CollectionProperties map[string]ComponentDataConfiguration
// Describes the events that can be raised on the component. Use for the workflow
// feature in Amplify Studio that allows you to bind events and actions to
// components.
Events map[string]ComponentEvent
// The time that the component was modified.
ModifiedAt *time.Time
// The schema version of the component when it was imported.
SchemaVersion *string
// The unique ID of the component in its original source system, such as Figma.
SourceId *string
// One or more key-value pairs to use when tagging the component.
Tags map[string]string
noSmithyDocumentSerde
}
// Represents the data binding configuration for a component at runtime. You can
// use ComponentBindingPropertiesValue to add exposed properties to a component to
// allow different values to be entered when a component is reused in different
// places in an app.
type ComponentBindingPropertiesValue struct {
// Describes the properties to customize with data at runtime.
BindingProperties *ComponentBindingPropertiesValueProperties
// The default value of the property.
DefaultValue *string
// The property type.
Type *string
noSmithyDocumentSerde
}
// Represents the data binding configuration for a specific property using data
// stored in Amazon Web Services. For Amazon Web Services connected properties, you
// can bind a property to data stored in an Amazon S3 bucket, an Amplify DataStore
// model or an authenticated user attribute.
type ComponentBindingPropertiesValueProperties struct {
// An Amazon S3 bucket.
Bucket *string
// The default value to assign to the property.
DefaultValue *string
// The field to bind the data to.
Field *string
// The storage key for an Amazon S3 bucket.
Key *string
// An Amplify DataStore model.
Model *string
// A list of predicates for binding a component's properties to data.
Predicates []Predicate
// The name of a component slot.
SlotName *string
// An authenticated user attribute.
UserAttribute *string
noSmithyDocumentSerde
}
// A nested UI configuration within a parent Component .
type ComponentChild struct {
// The type of the child component.
//
// This member is required.
ComponentType *string
// The name of the child component.
//
// This member is required.
Name *string
// Describes the properties of the child component. You can't specify tags as a
// valid property for properties .
//
// This member is required.
Properties map[string]ComponentProperty
// The list of ComponentChild instances for this component.
Children []ComponentChild
// Describes the events that can be raised on the child component. Use for the
// workflow feature in Amplify Studio that allows you to bind events and actions to
// components.
Events map[string]ComponentEvent
// The unique ID of the child component in its original source system, such as
// Figma.
SourceId *string
noSmithyDocumentSerde
}
// Represents a conditional expression to set a component property. Use
// ComponentConditionProperty to set a property to different values conditionally,
// based on the value of another property.
type ComponentConditionProperty struct {
// The value to assign to the property if the condition is not met.
Else *ComponentProperty
// The name of a field. Specify this when the property is a data model.
Field *string
// The value of the property to evaluate.
Operand *string
// The type of the property to evaluate.
OperandType *string
// The operator to use to perform the evaluation, such as eq to represent equals.
Operator *string
// The name of the conditional property.
Property *string
// The value to assign to the property if the condition is met.
Then *ComponentProperty
noSmithyDocumentSerde
}
// Describes the configuration for binding a component's properties to data.
type ComponentDataConfiguration struct {
// The name of the data model to use to bind data to a component.
//
// This member is required.
Model *string
// A list of IDs to use to bind data to a component. Use this property to bind
// specifically chosen data, rather than data retrieved from a query.
Identifiers []string
// Represents the conditional logic to use when binding data to a component. Use
// this property to retrieve only a subset of the data in a collection.
Predicate *Predicate
// Describes how to sort the component's properties.
Sort []SortProperty
noSmithyDocumentSerde
}
// Describes the configuration of an event. You can bind an event and a
// corresponding action to a Component or a ComponentChild . A button click is an
// example of an event.
type ComponentEvent struct {
// The action to perform when a specific event is raised.
Action *string
// Binds an event to an action on a component. When you specify a bindingEvent ,
// the event is called when the action is performed.
BindingEvent *string
// Describes information about the action.
Parameters *ActionParameters
noSmithyDocumentSerde
}
// Describes the configuration for all of a component's properties. Use
// ComponentProperty to specify the values to render or bind by default.
type ComponentProperty struct {
// The information to bind the component property to data at runtime.
BindingProperties *ComponentPropertyBindingProperties
// The information to bind the component property to form data.
Bindings map[string]FormBindingElement
// The information to bind the component property to data at runtime. Use this for
// collection components.
CollectionBindingProperties *ComponentPropertyBindingProperties
// The name of the component that is affected by an event.
ComponentName *string
// A list of component properties to concatenate to create the value to assign to
// this component property.
Concat []ComponentProperty
// The conditional expression to use to assign a value to the component property.
Condition *ComponentConditionProperty
// Specifies whether the user configured the property in Amplify Studio after
// importing it.
Configured *bool
// The default value to assign to the component property.
DefaultValue *string
// An event that occurs in your app. Use this for workflow data binding.
Event *string
// The default value assigned to the property when the component is imported into
// an app.
ImportedValue *string
// The data model to use to assign a value to the component property.
Model *string
// The name of the component's property that is affected by an event.
Property *string
// The component type.
Type *string
// An authenticated user attribute to use to assign a value to the component
// property.
UserAttribute *string
// The value to assign to the component property.
Value *string
noSmithyDocumentSerde
}
// Associates a component property to a binding property. This enables exposed
// properties on the top level component to propagate data to the component's
// property values.
type ComponentPropertyBindingProperties struct {
// The component property to bind to the data field.
//
// This member is required.
Property *string
// The data field to bind the property to.
Field *string
noSmithyDocumentSerde
}
// Contains a summary of a component. This is a read-only data type that is
// returned by ListComponents .
type ComponentSummary struct {
// The unique ID of the Amplify app associated with the component.
//
// This member is required.
AppId *string
// The component type.
//
// This member is required.
ComponentType *string
// The name of the backend environment that is a part of the Amplify app.
//
// This member is required.
EnvironmentName *string
// The unique ID of the component.
//
// This member is required.
Id *string
// The name of the component.
//
// This member is required.
Name *string
noSmithyDocumentSerde
}
// Describes the style configuration of a unique variation of a main component.
type ComponentVariant struct {
// The properties of the component variant that can be overriden when customizing
// an instance of the component. You can't specify tags as a valid property for
// overrides .
Overrides map[string]map[string]string
// The combination of variants that comprise this variant. You can't specify tags
// as a valid property for variantValues .
VariantValues map[string]string
noSmithyDocumentSerde
}
// Represents all of the information that is required to create a component.
type CreateComponentData struct {
// The data binding information for the component's properties.
//
// This member is required.
BindingProperties map[string]ComponentBindingPropertiesValue
// The component type. This can be an Amplify custom UI component or another
// custom component.
//
// This member is required.
ComponentType *string
// The name of the component
//
// This member is required.
Name *string
// Describes the component properties that can be overriden to customize an
// instance of the component.
//
// This member is required.
Overrides map[string]map[string]string
// Describes the component's properties.
//
// This member is required.
Properties map[string]ComponentProperty
// A list of the unique variants of this component.
//
// This member is required.
Variants []ComponentVariant
// A list of child components that are instances of the main component.
Children []ComponentChild
// The data binding configuration for customizing a component's properties. Use
// this for a collection component.
CollectionProperties map[string]ComponentDataConfiguration
// The event configuration for the component. Use for the workflow feature in
// Amplify Studio that allows you to bind events and actions to components.
Events map[string]ComponentEvent
// The schema version of the component when it was imported.
SchemaVersion *string
// The unique ID of the component in its original source system, such as Figma.
SourceId *string
// One or more key-value pairs to use when tagging the component data.
Tags map[string]string
noSmithyDocumentSerde
}
// Represents all of the information that is required to create a form.
type CreateFormData struct {
// The type of data source to use to create the form.
//
// This member is required.
DataType *FormDataTypeConfig
// The configuration information for the form's fields.
//
// This member is required.
Fields map[string]FieldConfig
// Specifies whether to perform a create or update action on the form.
//
// This member is required.
FormActionType FormActionType
// The name of the form.
//
// This member is required.
Name *string
// The schema version of the form.
//
// This member is required.
SchemaVersion *string
// The configuration information for the visual helper elements for the form.
// These elements are not associated with any data.
//
// This member is required.
SectionalElements map[string]SectionalElement
// The configuration for the form's style.
//
// This member is required.
Style *FormStyle
// The FormCTA object that stores the call to action configuration for the form.
Cta *FormCTA
// Specifies an icon or decoration to display on the form.
LabelDecorator LabelDecorator
// One or more key-value pairs to use when tagging the form data.
Tags map[string]string
noSmithyDocumentSerde
}
// Represents all of the information that is required to create a theme.
type CreateThemeData struct {
// The name of the theme.
//
// This member is required.
Name *string
// A list of key-value pairs that defines the properties of the theme.
//
// This member is required.
Values []ThemeValues
// Describes the properties that can be overriden to customize an instance of the
// theme.
Overrides []ThemeValues
// One or more key-value pairs to use when tagging the theme data.
Tags map[string]string
noSmithyDocumentSerde
}
// Describes the DataStore configuration for an API for a code generation job.
type DataStoreRenderConfig struct {
noSmithyDocumentSerde
}
// Describes the configuration of a request to exchange an access code for a token.
type ExchangeCodeForTokenRequestBody struct {
// The access code to send in the request.
//
// This member is required.
Code *string
// The location of the application that will receive the access code.
//
// This member is required.
RedirectUri *string
// The ID of the client to request the token from.
ClientId *string
noSmithyDocumentSerde
}
// Describes the configuration information for a field in a table.
type FieldConfig struct {
// Specifies whether to hide a field.
Excluded *bool
// Describes the configuration for the default input value to display for a field.
InputType *FieldInputConfig
// The label for the field.
Label *string
// Specifies the field position.
Position FieldPosition
// The validations to perform on the value in the field.
Validations []FieldValidationConfiguration
noSmithyDocumentSerde
}
// Describes the configuration for the default input values to display for a field.
type FieldInputConfig struct {
// The input type for the field.
//
// This member is required.
Type *string
// Specifies whether a field has a default value.
DefaultChecked *bool
// The default country code for a phone number.
DefaultCountryCode *string
// The default value for the field.
DefaultValue *string
// The text to display to describe the field.
DescriptiveText *string
// The configuration for the file uploader field.
FileUploaderConfig *FileUploaderFieldConfig
// Specifies whether to render the field as an array. This property is ignored if
// the dataSourceType for the form is a Data Store.
IsArray *bool
// The maximum value to display for the field.
MaxValue *float32
// The minimum value to display for the field.
MinValue *float32
// The name of the field.
Name *string
// The text to display as a placeholder for the field.
Placeholder *string
// Specifies a read only field.
ReadOnly *bool
// Specifies a field that requires input.
Required *bool
// The stepping increment for a numeric value in a field.
Step *float32
// The value for the field.
Value *string
// The information to use to customize the input fields with data at runtime.
ValueMappings *ValueMappings
noSmithyDocumentSerde
}
// Describes the field position.
//
// The following types satisfy this interface:
//
// FieldPositionMemberBelow
// FieldPositionMemberFixed
// FieldPositionMemberRightOf
type FieldPosition interface {
isFieldPosition()
}
// The field position is below the field specified by the string.
type FieldPositionMemberBelow struct {
Value string
noSmithyDocumentSerde
}
func (*FieldPositionMemberBelow) isFieldPosition() {}
// The field position is fixed and doesn't change in relation to other fields.
type FieldPositionMemberFixed struct {
Value FixedPosition
noSmithyDocumentSerde
}
func (*FieldPositionMemberFixed) isFieldPosition() {}
// The field position is to the right of the field specified by the string.
type FieldPositionMemberRightOf struct {
Value string
noSmithyDocumentSerde
}
func (*FieldPositionMemberRightOf) isFieldPosition() {}
// Describes the validation configuration for a field.
type FieldValidationConfiguration struct {
// The validation to perform on an object type.
//
// This member is required.
Type *string
// The validation to perform on a number value.
NumValues []int32
// The validation to perform on a string value.
StrValues []string
// The validation message to display.
ValidationMessage *string
noSmithyDocumentSerde
}
// Describes the configuration for the file uploader field.
type FileUploaderFieldConfig struct {
// The file types that are allowed to be uploaded by the file uploader. Provide
// this information in an array of strings specifying the valid file extensions.
//
// This member is required.
AcceptedFileTypes []string
// The access level to assign to the uploaded files in the Amazon S3 bucket where
// they are stored. The valid values for this property are private , protected , or
// public . For detailed information about the permissions associated with each
// access level, see File access levels (https://docs.amplify.aws/lib/storage/configureaccess/q/platform/js/)
// in the Amplify documentation.
//
// This member is required.
AccessLevel StorageAccessLevel
// Allows the file upload operation to be paused and resumed. The default value is
// false . When isResumable is set to true , the file uploader uses a multipart
// upload to break the files into chunks before upload. The progress of the upload
// isn't continuous, because the file uploader uploads a chunk at a time.
IsResumable *bool
// Specifies the maximum number of files that can be selected to upload. The
// default value is an unlimited number of files.
MaxFileCount *int32
// The maximum file size in bytes that the file uploader will accept. The default
// value is an unlimited file size.
MaxSize *int32
// Specifies whether to display or hide the image preview after selecting a file
// for upload. The default value is true to display the image preview.
ShowThumbnails *bool
noSmithyDocumentSerde
}
// Contains the configuration settings for a Form user interface (UI) element for
// an Amplify app. A form is a component you can add to your project by specifying
// a data source as the default configuration for the form.
type Form struct {
// The unique ID of the Amplify app associated with the form.
//
// This member is required.
AppId *string
// The type of data source to use to create the form.
//
// This member is required.
DataType *FormDataTypeConfig
// The name of the backend environment that is a part of the Amplify app.
//
// This member is required.
EnvironmentName *string
// Stores the information about the form's fields.
//
// This member is required.
Fields map[string]FieldConfig
// The operation to perform on the specified form.
//
// This member is required.
FormActionType FormActionType
// The unique ID of the form.
//
// This member is required.
Id *string
// The name of the form.
//
// This member is required.
Name *string
// The schema version of the form when it was imported.
//
// This member is required.
SchemaVersion *string
// Stores the visual helper elements for the form that are not associated with any
// data.
//
// This member is required.
SectionalElements map[string]SectionalElement
// Stores the configuration for the form's style.
//
// This member is required.
Style *FormStyle
// Stores the call to action configuration for the form.
Cta *FormCTA
// Specifies an icon or decoration to display on the form.
LabelDecorator LabelDecorator
// One or more key-value pairs to use when tagging the form.
Tags map[string]string
noSmithyDocumentSerde
}
// Describes how to bind a component property to form data.
type FormBindingElement struct {
// The name of the component to retrieve a value from.
//
// This member is required.
Element *string
// The property to retrieve a value from.
//
// This member is required.
Property *string
noSmithyDocumentSerde
}
// Describes the configuration for a button UI element that is a part of a form.
type FormButton struct {
// Describes the button's properties.
Children *string
// Specifies whether the button is visible on the form.
Excluded *bool
// The position of the button.
Position FieldPosition
noSmithyDocumentSerde
}
// Describes the call to action button configuration for the form.
type FormCTA struct {
// Displays a cancel button.
Cancel *FormButton
// Displays a clear button.
Clear *FormButton
// The position of the button.
Position FormButtonsPosition
// Displays a submit button.
Submit *FormButton
noSmithyDocumentSerde
}
// Describes the data type configuration for the data source associated with a
// form.
type FormDataTypeConfig struct {
// The data source type, either an Amplify DataStore model or a custom data type.
//
// This member is required.
DataSourceType FormDataSourceType
// The unique name of the data type you are using as the data source for the form.
//
// This member is required.
DataTypeName *string
noSmithyDocumentSerde
}
// Represents the data binding configuration for a form's input fields at
// runtime.You can use FormInputBindingPropertiesValue to add exposed properties
// to a form to allow different values to be entered when a form is reused in
// different places in an app.
type FormInputBindingPropertiesValue struct {
// Describes the properties to customize with data at runtime.
BindingProperties *FormInputBindingPropertiesValueProperties
// The property type.
Type *string
noSmithyDocumentSerde
}
// Represents the data binding configuration for a specific property using data
// stored in Amazon Web Services. For Amazon Web Services connected properties, you
// can bind a property to data stored in an Amplify DataStore model.
type FormInputBindingPropertiesValueProperties struct {
// An Amplify DataStore model.
Model *string
noSmithyDocumentSerde
}
// Describes the configuration for an input field on a form. Use
// FormInputValueProperty to specify the values to render or bind by default.
type FormInputValueProperty struct {
// The information to bind fields to data at runtime.
BindingProperties *FormInputValuePropertyBindingProperties
// A list of form properties to concatenate to create the value to assign to this
// field property.
Concat []FormInputValueProperty
// The value to assign to the input field.
Value *string
noSmithyDocumentSerde
}
// Associates a form property to a binding property. This enables exposed
// properties on the top level form to propagate data to the form's property
// values.
type FormInputValuePropertyBindingProperties struct {
// The form property to bind to the data field.
//
// This member is required.
Property *string
// The data field to bind the property to.
Field *string
noSmithyDocumentSerde
}
// Describes the configuration for the form's style.
type FormStyle struct {
// The spacing for the horizontal gap.
HorizontalGap FormStyleConfig
// The size of the outer padding for the form.
OuterPadding FormStyleConfig
// The spacing for the vertical gap.
VerticalGap FormStyleConfig
noSmithyDocumentSerde
}
// Describes the configuration settings for the form's style properties.
//
// The following types satisfy this interface:
//
// FormStyleConfigMemberTokenReference
// FormStyleConfigMemberValue
type FormStyleConfig interface {
isFormStyleConfig()
}
// A reference to a design token to use to bind the form's style properties to an
// existing theme.
type FormStyleConfigMemberTokenReference struct {
Value string
noSmithyDocumentSerde
}
func (*FormStyleConfigMemberTokenReference) isFormStyleConfig() {}
// The value of the style setting.
type FormStyleConfigMemberValue struct {
Value string
noSmithyDocumentSerde
}
func (*FormStyleConfigMemberValue) isFormStyleConfig() {}
// Describes the basic information about a form.
type FormSummary struct {
// The unique ID for the app associated with the form summary.
//
// This member is required.
AppId *string
// The form's data source type.
//
// This member is required.
DataType *FormDataTypeConfig
// The name of the backend environment that is part of the Amplify app.
//
// This member is required.
EnvironmentName *string
// The type of operation to perform on the form.
//
// This member is required.
FormActionType FormActionType
// The ID of the form.
//
// This member is required.
Id *string
// The name of the form.
//
// This member is required.
Name *string
noSmithyDocumentSerde
}
// Describes the GraphQL configuration for an API for a code generation job.
type GraphQLRenderConfig struct {
// The path to the GraphQL fragments file, relative to the component output
// directory.
//
// This member is required.
FragmentsFilePath *string
// The path to the GraphQL mutations file, relative to the component output
// directory.
//
// This member is required.
MutationsFilePath *string
// The path to the GraphQL queries file, relative to the component output
// directory.
//
// This member is required.
QueriesFilePath *string
// The path to the GraphQL subscriptions file, relative to the component output
// directory.
//
// This member is required.
SubscriptionsFilePath *string
// The path to the GraphQL types file, relative to the component output directory.
//
// This member is required.
TypesFilePath *string
noSmithyDocumentSerde
}
// Represents the state configuration when an action modifies a property of
// another element within the same component.
type MutationActionSetStateParameter struct {
// The name of the component that is being modified.
//
// This member is required.
ComponentName *string
// The name of the component property to apply the state configuration to.
//
// This member is required.
Property *string
// The state configuration to assign to the property.
//
// This member is required.
Set *ComponentProperty
noSmithyDocumentSerde
}
// Describes the configuration for an application with no API being used.
type NoApiRenderConfig struct {
noSmithyDocumentSerde
}
// Stores information for generating Amplify DataStore queries. Use a Predicate to
// retrieve a subset of the data in a collection.
type Predicate struct {
// A list of predicates to combine logically.
And []Predicate
// The field to query.
Field *string
// The value to use when performing the evaluation.
Operand *string
// The type of value to use when performing the evaluation.
OperandType *string
// The operator to use to perform the evaluation.
Operator *string
// A list of predicates to combine logically.
Or []Predicate
noSmithyDocumentSerde
}
// Stores the metadata information about a feature on a form.
type PutMetadataFlagBody struct {
// The new information to store.
//
// This member is required.
NewValue *string
noSmithyDocumentSerde
}
// Describes the code generation job configuration for a React project.
type ReactStartCodegenJobData struct {
// The API configuration for the code generation job.
ApiConfiguration ApiConfiguration
// Lists the dependency packages that may be required for the project code to run.
Dependencies map[string]string
// Specifies whether the code generation job should render inline source maps.
InlineSourceMap bool
// The JavaScript module type.
Module JSModule
// Specifies whether the code generation job should render type declaration files.
RenderTypeDeclarations bool
// The file type to use for a JavaScript project.
Script JSScript
// The ECMAScript specification to use.
Target JSTarget
noSmithyDocumentSerde
}
// Describes a refresh token.
type RefreshTokenRequestBody struct {
// The token to use to refresh a previously issued access token that might have
// expired.
//
// This member is required.
Token *string
// The ID of the client to request the token from.
ClientId *string
noSmithyDocumentSerde
}
// Stores the configuration information for a visual helper element for a form. A
// sectional element can be a header, a text block, or a divider. These elements
// are static and not associated with any data.
type SectionalElement struct {
// The type of sectional element. Valid values are Heading , Text , and Divider .
//
// This member is required.
Type *string
// Excludes a sectional element that was generated by default for a specified data
// model.
Excluded *bool
// Specifies the size of the font for a Heading sectional element. Valid values
// are 1 | 2 | 3 | 4 | 5 | 6 .
Level *int32
// Specifies the orientation for a Divider sectional element. Valid values are
// horizontal or vertical .
Orientation *string
// Specifies the position of the text in a field for a Text sectional element.
Position FieldPosition
// The text for a Text sectional element.
Text *string
noSmithyDocumentSerde
}
// Describes how to sort the data that you bind to a component.
type SortProperty struct {
// The direction of the sort, either ascending or descending.
//
// This member is required.
Direction SortDirection
// The field to perform the sort on.
//
// This member is required.
Field *string
noSmithyDocumentSerde
}
// The code generation job resource configuration.
type StartCodegenJobData struct {
// The code generation configuration for the codegen job.
//
// This member is required.
RenderConfig CodegenJobRenderConfig
// Specifies whether to autogenerate forms in the code generation job.
AutoGenerateForms *bool
// The feature flags for a code generation job.
Features *CodegenFeatureFlags
// The data schema to use for a code generation job.
GenericDataSchema *CodegenJobGenericDataSchema
// One or more key-value pairs to use when tagging the code generation job data.
Tags map[string]string
noSmithyDocumentSerde
}
// A theme is a collection of style settings that apply globally to the components
// associated with an Amplify application.
type Theme struct {
// The unique ID for the Amplify app associated with the theme.
//
// This member is required.
AppId *string
// The time that the theme was created.
//
// This member is required.
CreatedAt *time.Time
// The name of the backend environment that is a part of the Amplify app.
//
// This member is required.
EnvironmentName *string
// The ID for the theme.
//
// This member is required.
Id *string
// The name of the theme.
//
// This member is required.
Name *string
// A list of key-value pairs that defines the properties of the theme.
//
// This member is required.
Values []ThemeValues
// The time that the theme was modified.
ModifiedAt *time.Time
// Describes the properties that can be overriden to customize a theme.
Overrides []ThemeValues
// One or more key-value pairs to use when tagging the theme.
Tags map[string]string
noSmithyDocumentSerde
}
// Describes the basic information about a theme.
type ThemeSummary struct {
// The unique ID for the app associated with the theme summary.
//
// This member is required.
AppId *string
// The name of the backend environment that is part of the Amplify app.
//
// This member is required.
EnvironmentName *string
// The ID of the theme.
//
// This member is required.
Id *string
// The name of the theme.
//
// This member is required.
Name *string
noSmithyDocumentSerde
}
// Describes the configuration of a theme's properties.
type ThemeValue struct {
// A list of key-value pairs that define the theme's properties.
Children []ThemeValues
// The value of a theme property.
Value *string
noSmithyDocumentSerde
}
// A key-value pair that defines a property of a theme.
type ThemeValues struct {
// The name of the property.
Key *string
// The value of the property.
Value *ThemeValue
noSmithyDocumentSerde
}
// Updates and saves all of the information about a component, based on component
// ID.
type UpdateComponentData struct {
// The data binding information for the component's properties.
BindingProperties map[string]ComponentBindingPropertiesValue
// The components that are instances of the main component.
Children []ComponentChild
// The configuration for binding a component's properties to a data model. Use
// this for a collection component.
CollectionProperties map[string]ComponentDataConfiguration
// The type of the component. This can be an Amplify custom UI component or
// another custom component.
ComponentType *string
// The event configuration for the component. Use for the workflow feature in
// Amplify Studio that allows you to bind events and actions to components.
Events map[string]ComponentEvent
// The unique ID of the component to update.
Id *string
// The name of the component to update.
Name *string
// Describes the properties that can be overriden to customize the component.
Overrides map[string]map[string]string
// Describes the component's properties.
Properties map[string]ComponentProperty
// The schema version of the component when it was imported.
SchemaVersion *string
// The unique ID of the component in its original source system, such as Figma.
SourceId *string
// A list of the unique variants of the main component being updated.
Variants []ComponentVariant
noSmithyDocumentSerde
}
// Updates and saves all of the information about a form, based on form ID.
type UpdateFormData struct {
// The FormCTA object that stores the call to action configuration for the form.
Cta *FormCTA
// The type of data source to use to create the form.
DataType *FormDataTypeConfig
// The configuration information for the form's fields.
Fields map[string]FieldConfig
// Specifies whether to perform a create or update action on the form.
FormActionType FormActionType
// Specifies an icon or decoration to display on the form.
LabelDecorator LabelDecorator
// The name of the form.
Name *string
// The schema version of the form.
SchemaVersion *string
// The configuration information for the visual helper elements for the form.
// These elements are not associated with any data.
SectionalElements map[string]SectionalElement
// The configuration for the form's style.
Style *FormStyle
noSmithyDocumentSerde
}
// Saves the data binding information for a theme.
type UpdateThemeData struct {
// A list of key-value pairs that define the theme's properties.
//
// This member is required.
Values []ThemeValues
// The unique ID of the theme to update.
Id *string
// The name of the theme to update.
Name *string
// Describes the properties that can be overriden to customize the theme.
Overrides []ThemeValues
noSmithyDocumentSerde
}
// Associates a complex object with a display value. Use ValueMapping to store how
// to represent complex objects when they are displayed.
type ValueMapping struct {
// The complex object.
//
// This member is required.
Value *FormInputValueProperty
// The value to display for the complex object.
DisplayValue *FormInputValueProperty
noSmithyDocumentSerde
}
// Represents the data binding configuration for a value map.
type ValueMappings struct {
// The value and display value pairs.
//
// This member is required.
Values []ValueMapping
// The information to bind fields to data at runtime.
BindingProperties map[string]FormInputBindingPropertiesValue
noSmithyDocumentSerde
}
type noSmithyDocumentSerde = smithydocument.NoSerde
// UnknownUnionMember is returned when a union member is returned over the wire,
// but has an unknown tag.
type UnknownUnionMember struct {
Tag string
Value []byte
noSmithyDocumentSerde
}
func (*UnknownUnionMember) isApiConfiguration() {}
func (*UnknownUnionMember) isCodegenJobRenderConfig() {}
func (*UnknownUnionMember) isFieldPosition() {}
func (*UnknownUnionMember) isFormStyleConfig() {}
|