/*
* Copyright Amazon.com, Inc. or its affiliates. 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.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file 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.
*/
/*
* Do not modify this file. This file is generated from the amplifyuibuilder-2021-08-11.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.AmplifyUIBuilder.Model
{
///
/// 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.
///
public partial class Form
{
private string _appId;
private FormCTA _cta;
private FormDataTypeConfig _dataType;
private string _environmentName;
private Dictionary _fields = new Dictionary();
private FormActionType _formActionType;
private string _id;
private LabelDecorator _labelDecorator;
private string _name;
private string _schemaVersion;
private Dictionary _sectionalElements = new Dictionary();
private FormStyle _style;
private Dictionary _tags = new Dictionary();
///
/// Gets and sets the property AppId.
///
/// The unique ID of the Amplify app associated with the form.
///
///
[AWSProperty(Required=true)]
public string AppId
{
get { return this._appId; }
set { this._appId = value; }
}
// Check to see if AppId property is set
internal bool IsSetAppId()
{
return this._appId != null;
}
///
/// Gets and sets the property Cta.
///
/// Stores the call to action configuration for the form.
///
///
public FormCTA Cta
{
get { return this._cta; }
set { this._cta = value; }
}
// Check to see if Cta property is set
internal bool IsSetCta()
{
return this._cta != null;
}
///
/// Gets and sets the property DataType.
///
/// The type of data source to use to create the form.
///
///
[AWSProperty(Required=true)]
public FormDataTypeConfig DataType
{
get { return this._dataType; }
set { this._dataType = value; }
}
// Check to see if DataType property is set
internal bool IsSetDataType()
{
return this._dataType != null;
}
///
/// Gets and sets the property EnvironmentName.
///
/// The name of the backend environment that is a part of the Amplify app.
///
///
[AWSProperty(Required=true)]
public string EnvironmentName
{
get { return this._environmentName; }
set { this._environmentName = value; }
}
// Check to see if EnvironmentName property is set
internal bool IsSetEnvironmentName()
{
return this._environmentName != null;
}
///
/// Gets and sets the property Fields.
///
/// Stores the information about the form's fields.
///
///
[AWSProperty(Required=true)]
public Dictionary Fields
{
get { return this._fields; }
set { this._fields = value; }
}
// Check to see if Fields property is set
internal bool IsSetFields()
{
return this._fields != null && this._fields.Count > 0;
}
///
/// Gets and sets the property FormActionType.
///
/// The operation to perform on the specified form.
///
///
[AWSProperty(Required=true)]
public FormActionType FormActionType
{
get { return this._formActionType; }
set { this._formActionType = value; }
}
// Check to see if FormActionType property is set
internal bool IsSetFormActionType()
{
return this._formActionType != null;
}
///
/// Gets and sets the property Id.
///
/// The unique ID of the form.
///
///
[AWSProperty(Required=true)]
public string Id
{
get { return this._id; }
set { this._id = value; }
}
// Check to see if Id property is set
internal bool IsSetId()
{
return this._id != null;
}
///
/// Gets and sets the property LabelDecorator.
///
/// Specifies an icon or decoration to display on the form.
///
///
public LabelDecorator LabelDecorator
{
get { return this._labelDecorator; }
set { this._labelDecorator = value; }
}
// Check to see if LabelDecorator property is set
internal bool IsSetLabelDecorator()
{
return this._labelDecorator != null;
}
///
/// Gets and sets the property Name.
///
/// The name of the form.
///
///
[AWSProperty(Required=true, Min=1, Max=255)]
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property SchemaVersion.
///
/// The schema version of the form when it was imported.
///
///
[AWSProperty(Required=true)]
public string SchemaVersion
{
get { return this._schemaVersion; }
set { this._schemaVersion = value; }
}
// Check to see if SchemaVersion property is set
internal bool IsSetSchemaVersion()
{
return this._schemaVersion != null;
}
///
/// Gets and sets the property SectionalElements.
///
/// Stores the visual helper elements for the form that are not associated with any data.
///
///
[AWSProperty(Required=true)]
public Dictionary SectionalElements
{
get { return this._sectionalElements; }
set { this._sectionalElements = value; }
}
// Check to see if SectionalElements property is set
internal bool IsSetSectionalElements()
{
return this._sectionalElements != null && this._sectionalElements.Count > 0;
}
///
/// Gets and sets the property Style.
///
/// Stores the configuration for the form's style.
///
///
[AWSProperty(Required=true)]
public FormStyle Style
{
get { return this._style; }
set { this._style = value; }
}
// Check to see if Style property is set
internal bool IsSetStyle()
{
return this._style != null;
}
///
/// Gets and sets the property Tags.
///
/// One or more key-value pairs to use when tagging the form.
///
///
public Dictionary Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
}
}