amazonka-amplifyuibuilder (empty) → 2.0
raw patch · 132 files changed
+14393/−0 lines, 132 filesdep +amazonka-amplifyuibuilderdep +amazonka-coredep +amazonka-test
Dependencies added: amazonka-amplifyuibuilder, amazonka-core, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-amplifyuibuilder.cabal +155/−0
- fixture/CreateComponent.yaml +10/−0
- fixture/CreateComponentResponse.proto +0/−0
- fixture/CreateForm.yaml +10/−0
- fixture/CreateFormResponse.proto +0/−0
- fixture/CreateTheme.yaml +10/−0
- fixture/CreateThemeResponse.proto +0/−0
- fixture/DeleteComponent.yaml +10/−0
- fixture/DeleteComponentResponse.proto +0/−0
- fixture/DeleteForm.yaml +10/−0
- fixture/DeleteFormResponse.proto +0/−0
- fixture/DeleteTheme.yaml +10/−0
- fixture/DeleteThemeResponse.proto +0/−0
- fixture/ExchangeCodeForToken.yaml +10/−0
- fixture/ExchangeCodeForTokenResponse.proto +0/−0
- fixture/ExportComponents.yaml +10/−0
- fixture/ExportComponentsResponse.proto +0/−0
- fixture/ExportForms.yaml +10/−0
- fixture/ExportFormsResponse.proto +0/−0
- fixture/ExportThemes.yaml +10/−0
- fixture/ExportThemesResponse.proto +0/−0
- fixture/GetComponent.yaml +10/−0
- fixture/GetComponentResponse.proto +0/−0
- fixture/GetForm.yaml +10/−0
- fixture/GetFormResponse.proto +0/−0
- fixture/GetMetadata.yaml +10/−0
- fixture/GetMetadataResponse.proto +0/−0
- fixture/GetTheme.yaml +10/−0
- fixture/GetThemeResponse.proto +0/−0
- fixture/ListComponents.yaml +10/−0
- fixture/ListComponentsResponse.proto +0/−0
- fixture/ListForms.yaml +10/−0
- fixture/ListFormsResponse.proto +0/−0
- fixture/ListThemes.yaml +10/−0
- fixture/ListThemesResponse.proto +0/−0
- fixture/PutMetadataFlag.yaml +10/−0
- fixture/PutMetadataFlagResponse.proto +0/−0
- fixture/RefreshToken.yaml +10/−0
- fixture/RefreshTokenResponse.proto +0/−0
- fixture/UpdateComponent.yaml +10/−0
- fixture/UpdateComponentResponse.proto +0/−0
- fixture/UpdateForm.yaml +10/−0
- fixture/UpdateFormResponse.proto +0/−0
- fixture/UpdateTheme.yaml +10/−0
- fixture/UpdateThemeResponse.proto +0/−0
- gen/Amazonka/AmplifyUiBuilder.hs +442/−0
- gen/Amazonka/AmplifyUiBuilder/CreateComponent.hs +215/−0
- gen/Amazonka/AmplifyUiBuilder/CreateForm.hs +212/−0
- gen/Amazonka/AmplifyUiBuilder/CreateTheme.hs +212/−0
- gen/Amazonka/AmplifyUiBuilder/DeleteComponent.hs +164/−0
- gen/Amazonka/AmplifyUiBuilder/DeleteForm.hs +158/−0
- gen/Amazonka/AmplifyUiBuilder/DeleteTheme.hs +158/−0
- gen/Amazonka/AmplifyUiBuilder/ExchangeCodeForToken.hs +219/−0
- gen/Amazonka/AmplifyUiBuilder/ExportComponents.hs +229/−0
- gen/Amazonka/AmplifyUiBuilder/ExportForms.hs +225/−0
- gen/Amazonka/AmplifyUiBuilder/ExportThemes.hs +226/−0
- gen/Amazonka/AmplifyUiBuilder/GetComponent.hs +194/−0
- gen/Amazonka/AmplifyUiBuilder/GetForm.hs +194/−0
- gen/Amazonka/AmplifyUiBuilder/GetMetadata.hs +179/−0
- gen/Amazonka/AmplifyUiBuilder/GetTheme.hs +194/−0
- gen/Amazonka/AmplifyUiBuilder/Lens.hs +570/−0
- gen/Amazonka/AmplifyUiBuilder/ListComponents.hs +244/−0
- gen/Amazonka/AmplifyUiBuilder/ListForms.hs +240/−0
- gen/Amazonka/AmplifyUiBuilder/ListThemes.hs +240/−0
- gen/Amazonka/AmplifyUiBuilder/PutMetadataFlag.hs +182/−0
- gen/Amazonka/AmplifyUiBuilder/RefreshToken.hs +197/−0
- gen/Amazonka/AmplifyUiBuilder/Types.hs +629/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ActionParameters.hs +214/−0
- gen/Amazonka/AmplifyUiBuilder/Types/Component.hs +331/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentBindingPropertiesValue.hs +123/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentBindingPropertiesValueProperties.hs +190/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentChild.hs +163/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentConditionProperty.hs +165/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentConditionProperty.hs-boot +33/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentDataConfiguration.hs +134/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentEvent.hs +112/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentProperty.hs +287/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentProperty.hs-boot +33/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentPropertyBindingProperties.hs +112/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentSummary.hs +136/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ComponentVariant.hs +103/−0
- gen/Amazonka/AmplifyUiBuilder/Types/CreateComponentData.hs +234/−0
- gen/Amazonka/AmplifyUiBuilder/Types/CreateFormData.hs +196/−0
- gen/Amazonka/AmplifyUiBuilder/Types/CreateThemeData.hs +113/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ExchangeCodeForTokenRequestBody.hs +99/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FieldConfig.hs +138/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FieldInputConfig.hs +275/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FieldPosition.hs +110/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FieldValidationConfiguration.hs +126/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FixedPosition.hs +66/−0
- gen/Amazonka/AmplifyUiBuilder/Types/Form.hs +243/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FormActionType.hs +71/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FormBindingElement.hs +97/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FormButton.hs +108/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FormButtonsPosition.hs +76/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FormCTA.hs +121/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FormDataSourceType.hs +71/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FormDataTypeConfig.hs +107/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FormInputValueProperty.hs +77/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FormStyle.hs +107/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FormStyleConfig.hs +97/−0
- gen/Amazonka/AmplifyUiBuilder/Types/FormSummary.hs +152/−0
- gen/Amazonka/AmplifyUiBuilder/Types/MutationActionSetStateParameter.hs +130/−0
- gen/Amazonka/AmplifyUiBuilder/Types/Predicate.hs +133/−0
- gen/Amazonka/AmplifyUiBuilder/Types/PutMetadataFlagBody.hs +68/−0
- gen/Amazonka/AmplifyUiBuilder/Types/RefreshTokenRequestBody.hs +74/−0
- gen/Amazonka/AmplifyUiBuilder/Types/SectionalElement.hs +149/−0
- gen/Amazonka/AmplifyUiBuilder/Types/SortDirection.hs +71/−0
- gen/Amazonka/AmplifyUiBuilder/Types/SortProperty.hs +98/−0
- gen/Amazonka/AmplifyUiBuilder/Types/Theme.hs +185/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ThemeSummary.hs +116/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ThemeValue.hs +94/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ThemeValue.hs-boot +33/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ThemeValues.hs +93/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ThemeValues.hs-boot +33/−0
- gen/Amazonka/AmplifyUiBuilder/Types/TokenProviders.hs +66/−0
- gen/Amazonka/AmplifyUiBuilder/Types/UpdateComponentData.hs +231/−0
- gen/Amazonka/AmplifyUiBuilder/Types/UpdateFormData.hs +169/−0
- gen/Amazonka/AmplifyUiBuilder/Types/UpdateThemeData.hs +108/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ValueMapping.hs +97/−0
- gen/Amazonka/AmplifyUiBuilder/Types/ValueMappings.hs +76/−0
- gen/Amazonka/AmplifyUiBuilder/UpdateComponent.hs +231/−0
- gen/Amazonka/AmplifyUiBuilder/UpdateForm.hs +228/−0
- gen/Amazonka/AmplifyUiBuilder/UpdateTheme.hs +228/−0
- gen/Amazonka/AmplifyUiBuilder/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/AmplifyUiBuilder.hs +20/−0
- test/Test/Amazonka/AmplifyUiBuilder/Internal.hs +8/−0
- test/Test/Amazonka/Gen/AmplifyUiBuilder.hs +478/−0
+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+ means each individual or legal entity that creates, contributes to+ the creation of, or owns Covered Software.++1.2. "Contributor Version"+ means the combination of the Contributions of others (if any) used+ by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+ means Covered Software of a particular Contributor.++1.4. "Covered Software"+ means Source Code Form to which the initial Contributor has attached+ the notice in Exhibit A, the Executable Form of such Source Code+ Form, and Modifications of such Source Code Form, in each case+ including portions thereof.++1.5. "Incompatible With Secondary Licenses"+ means++ (a) that the initial Contributor has attached the notice described+ in Exhibit B to the Covered Software; or++ (b) that the Covered Software was made available under the terms of+ version 1.1 or earlier of the License, but not also under the+ terms of a Secondary License.++1.6. "Executable Form"+ means any form of the work other than Source Code Form.++1.7. "Larger Work"+ means a work that combines Covered Software with other material, in+ a separate file or files, that is not Covered Software.++1.8. "License"+ means this document.++1.9. "Licensable"+ means having the right to grant, to the maximum extent possible,+ whether at the time of the initial grant or subsequently, any and+ all of the rights conveyed by this License.++1.10. "Modifications"+ means any of the following:++ (a) any file in Source Code Form that results from an addition to,+ deletion from, or modification of the contents of Covered+ Software; or++ (b) any new file in Source Code Form that contains any Covered+ Software.++1.11. "Patent Claims" of a Contributor+ means any patent claim(s), including without limitation, method,+ process, and apparatus claims, in any patent Licensable by such+ Contributor that would be infringed, but for the grant of the+ License, by the making, using, selling, offering for sale, having+ made, import, or transfer of either its Contributions or its+ Contributor Version.++1.12. "Secondary License"+ means either the GNU General Public License, Version 2.0, the GNU+ Lesser General Public License, Version 2.1, the GNU Affero General+ Public License, Version 3.0, or any later versions of those+ licenses.++1.13. "Source Code Form"+ means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+ means an individual or a legal entity exercising rights under this+ License. For legal entities, "You" includes any entity that+ controls, is controlled by, or is under common control with You. For+ purposes of this definition, "control" means (a) the power, direct+ or indirect, to cause the direction or management of such entity,+ whether by contract or otherwise, or (b) ownership of more than+ fifty percent (50%) of the outstanding shares or beneficial+ ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+ Licensable by such Contributor to use, reproduce, make available,+ modify, display, perform, distribute, and otherwise exploit its+ Contributions, either on an unmodified basis, with Modifications, or+ as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+ for sale, have made, import, and otherwise transfer either its+ Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+ or++(b) for infringements caused by: (i) Your and any other third party's+ modifications of Covered Software, or (ii) the combination of its+ Contributions with other software (except as part of its Contributor+ Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+ its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+ Form, as described in Section 3.1, and You must inform recipients of+ the Executable Form how they can obtain a copy of such Source Code+ Form by reasonable means in a timely manner, at a charge no more+ than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+ License, or sublicense it under different terms, provided that the+ license for the Executable Form does not attempt to limit or alter+ the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+* *+* 6. Disclaimer of Warranty *+* ------------------------- *+* *+* Covered Software is provided under this License on an "as is" *+* basis, without warranty of any kind, either expressed, implied, or *+* statutory, including, without limitation, warranties that the *+* Covered Software is free of defects, merchantable, fit for a *+* particular purpose or non-infringing. The entire risk as to the *+* quality and performance of the Covered Software is with You. *+* Should any Covered Software prove defective in any respect, You *+* (not any Contributor) assume the cost of any necessary servicing, *+* repair, or correction. This disclaimer of warranty constitutes an *+* essential part of this License. No use of any Covered Software is *+* authorized under this License except under this disclaimer. *+* *+************************************************************************++************************************************************************+* *+* 7. Limitation of Liability *+* -------------------------- *+* *+* Under no circumstances and under no legal theory, whether tort *+* (including negligence), contract, or otherwise, shall any *+* Contributor, or anyone who distributes Covered Software as *+* permitted above, be liable to You for any direct, indirect, *+* special, incidental, or consequential damages of any character *+* including, without limitation, damages for lost profits, loss of *+* goodwill, work stoppage, computer failure or malfunction, or any *+* and all other commercial damages or losses, even if such party *+* shall have been informed of the possibility of such damages. This *+* limitation of liability shall not apply to liability for death or *+* personal injury resulting from such party's negligence to the *+* extent applicable law prohibits such limitation. Some *+* jurisdictions do not allow the exclusion or limitation of *+* incidental or consequential damages, so this exclusion and *+* limitation may not apply to You. *+* *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++ This Source Code Form is subject to the terms of the Mozilla Public+ License, v. 2.0. If a copy of the MPL was not distributed with this+ file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,44 @@+# Amazon Amplify UI Builder SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2021-08-11@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-amplifyuibuilder)+and the [AWS API Reference](https://aws.amazon.com/documentation/).++The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information, sending requests,+and receiving responses.++Lenses are used for constructing and manipulating types,+due to the depth of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core).++See [Amazonka.AmplifyUiBuilder](http://hackage.haskell.org/package/amazonka-amplifyuibuilder/docs/Amazonka-AmplifyUiBuilder.html)+or [the AWS documentation](https://aws.amazon.com/documentation/) to get started.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+++## Licence++`amazonka-amplifyuibuilder` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).++Parts of the code are derived from AWS service descriptions, licensed under Apache 2.0.+Source files subject to this contain an additional licensing clause in their header.
+ amazonka-amplifyuibuilder.cabal view
@@ -0,0 +1,155 @@+cabal-version: 2.2+name: amazonka-amplifyuibuilder+version: 2.0+synopsis: Amazon Amplify UI Builder SDK.+homepage: https://github.com/brendanhay/amazonka+bug-reports: https://github.com/brendanhay/amazonka/issues+license: MPL-2.0+license-file: LICENSE+author: Brendan Hay+maintainer:+ Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright: Copyright (c) 2013-2023 Brendan Hay+category: AWS+build-type: Simple+extra-source-files:+ fixture/*.proto+ fixture/*.yaml+ README.md+ src/.gitkeep++description:+ Derived from API version @2021-08-11@ of the AWS service descriptions, licensed under Apache 2.0.+ .+ The types from this library are intended to be used with <http://hackage.haskell.org/package/amazonka amazonka>,+ which provides mechanisms for specifying AuthN/AuthZ information, sending requests, and receiving responses.+ .+ It is recommended to use generic lenses or optics from packages such as <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify optional fields and deconstruct responses.+ .+ Generated lenses can be found in "Amazonka.AmplifyUiBuilder.Lens" and are+ suitable for use with a lens package such as <http://hackage.haskell.org/package/lens lens> or <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Amazonka.AmplifyUiBuilder" and the <https://aws.amazon.com/documentation/ AWS documentation> to get started.++source-repository head+ type: git+ location: git://github.com/brendanhay/amazonka.git+ subdir: amazonka-amplifyuibuilder++library+ default-language: Haskell2010+ hs-source-dirs: src gen+ ghc-options:+ -Wall -fwarn-incomplete-uni-patterns+ -fwarn-incomplete-record-updates -funbox-strict-fields++ exposed-modules:+ Amazonka.AmplifyUiBuilder+ Amazonka.AmplifyUiBuilder.CreateComponent+ Amazonka.AmplifyUiBuilder.CreateForm+ Amazonka.AmplifyUiBuilder.CreateTheme+ Amazonka.AmplifyUiBuilder.DeleteComponent+ Amazonka.AmplifyUiBuilder.DeleteForm+ Amazonka.AmplifyUiBuilder.DeleteTheme+ Amazonka.AmplifyUiBuilder.ExchangeCodeForToken+ Amazonka.AmplifyUiBuilder.ExportComponents+ Amazonka.AmplifyUiBuilder.ExportForms+ Amazonka.AmplifyUiBuilder.ExportThemes+ Amazonka.AmplifyUiBuilder.GetComponent+ Amazonka.AmplifyUiBuilder.GetForm+ Amazonka.AmplifyUiBuilder.GetMetadata+ Amazonka.AmplifyUiBuilder.GetTheme+ Amazonka.AmplifyUiBuilder.Lens+ Amazonka.AmplifyUiBuilder.ListComponents+ Amazonka.AmplifyUiBuilder.ListForms+ Amazonka.AmplifyUiBuilder.ListThemes+ Amazonka.AmplifyUiBuilder.PutMetadataFlag+ Amazonka.AmplifyUiBuilder.RefreshToken+ Amazonka.AmplifyUiBuilder.Types+ Amazonka.AmplifyUiBuilder.Types.ActionParameters+ Amazonka.AmplifyUiBuilder.Types.Component+ Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValue+ Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValueProperties+ Amazonka.AmplifyUiBuilder.Types.ComponentChild+ Amazonka.AmplifyUiBuilder.Types.ComponentConditionProperty+ Amazonka.AmplifyUiBuilder.Types.ComponentDataConfiguration+ Amazonka.AmplifyUiBuilder.Types.ComponentEvent+ Amazonka.AmplifyUiBuilder.Types.ComponentProperty+ Amazonka.AmplifyUiBuilder.Types.ComponentPropertyBindingProperties+ Amazonka.AmplifyUiBuilder.Types.ComponentSummary+ Amazonka.AmplifyUiBuilder.Types.ComponentVariant+ Amazonka.AmplifyUiBuilder.Types.CreateComponentData+ Amazonka.AmplifyUiBuilder.Types.CreateFormData+ Amazonka.AmplifyUiBuilder.Types.CreateThemeData+ Amazonka.AmplifyUiBuilder.Types.ExchangeCodeForTokenRequestBody+ Amazonka.AmplifyUiBuilder.Types.FieldConfig+ Amazonka.AmplifyUiBuilder.Types.FieldInputConfig+ Amazonka.AmplifyUiBuilder.Types.FieldPosition+ Amazonka.AmplifyUiBuilder.Types.FieldValidationConfiguration+ Amazonka.AmplifyUiBuilder.Types.FixedPosition+ Amazonka.AmplifyUiBuilder.Types.Form+ Amazonka.AmplifyUiBuilder.Types.FormActionType+ Amazonka.AmplifyUiBuilder.Types.FormBindingElement+ Amazonka.AmplifyUiBuilder.Types.FormButton+ Amazonka.AmplifyUiBuilder.Types.FormButtonsPosition+ Amazonka.AmplifyUiBuilder.Types.FormCTA+ Amazonka.AmplifyUiBuilder.Types.FormDataSourceType+ Amazonka.AmplifyUiBuilder.Types.FormDataTypeConfig+ Amazonka.AmplifyUiBuilder.Types.FormInputValueProperty+ Amazonka.AmplifyUiBuilder.Types.FormStyle+ Amazonka.AmplifyUiBuilder.Types.FormStyleConfig+ Amazonka.AmplifyUiBuilder.Types.FormSummary+ Amazonka.AmplifyUiBuilder.Types.MutationActionSetStateParameter+ Amazonka.AmplifyUiBuilder.Types.Predicate+ Amazonka.AmplifyUiBuilder.Types.PutMetadataFlagBody+ Amazonka.AmplifyUiBuilder.Types.RefreshTokenRequestBody+ Amazonka.AmplifyUiBuilder.Types.SectionalElement+ Amazonka.AmplifyUiBuilder.Types.SortDirection+ Amazonka.AmplifyUiBuilder.Types.SortProperty+ Amazonka.AmplifyUiBuilder.Types.Theme+ Amazonka.AmplifyUiBuilder.Types.ThemeSummary+ Amazonka.AmplifyUiBuilder.Types.ThemeValue+ Amazonka.AmplifyUiBuilder.Types.ThemeValues+ Amazonka.AmplifyUiBuilder.Types.TokenProviders+ Amazonka.AmplifyUiBuilder.Types.UpdateComponentData+ Amazonka.AmplifyUiBuilder.Types.UpdateFormData+ Amazonka.AmplifyUiBuilder.Types.UpdateThemeData+ Amazonka.AmplifyUiBuilder.Types.ValueMapping+ Amazonka.AmplifyUiBuilder.Types.ValueMappings+ Amazonka.AmplifyUiBuilder.UpdateComponent+ Amazonka.AmplifyUiBuilder.UpdateForm+ Amazonka.AmplifyUiBuilder.UpdateTheme+ Amazonka.AmplifyUiBuilder.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-amplifyuibuilder-test+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs+ ghc-options: -Wall -threaded++ -- This section is encoded by the template and any modules added by+ -- hand outside these namespaces will not correctly be added to the+ -- distribution package.+ other-modules:+ Test.Amazonka.AmplifyUiBuilder+ Test.Amazonka.AmplifyUiBuilder.Internal+ Test.Amazonka.Gen.AmplifyUiBuilder++ build-depends:+ , amazonka-amplifyuibuilder+ , amazonka-core >=2.0 && <2.1+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/CreateComponent.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateComponentResponse.proto view
+ fixture/CreateForm.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateFormResponse.proto view
+ fixture/CreateTheme.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateThemeResponse.proto view
+ fixture/DeleteComponent.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteComponentResponse.proto view
+ fixture/DeleteForm.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteFormResponse.proto view
+ fixture/DeleteTheme.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteThemeResponse.proto view
+ fixture/ExchangeCodeForToken.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ExchangeCodeForTokenResponse.proto view
+ fixture/ExportComponents.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ExportComponentsResponse.proto view
+ fixture/ExportForms.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ExportFormsResponse.proto view
+ fixture/ExportThemes.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ExportThemesResponse.proto view
+ fixture/GetComponent.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetComponentResponse.proto view
+ fixture/GetForm.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetFormResponse.proto view
+ fixture/GetMetadata.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetMetadataResponse.proto view
+ fixture/GetTheme.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetThemeResponse.proto view
+ fixture/ListComponents.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListComponentsResponse.proto view
+ fixture/ListForms.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListFormsResponse.proto view
+ fixture/ListThemes.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListThemesResponse.proto view
+ fixture/PutMetadataFlag.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/PutMetadataFlagResponse.proto view
+ fixture/RefreshToken.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/RefreshTokenResponse.proto view
+ fixture/UpdateComponent.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateComponentResponse.proto view
+ fixture/UpdateForm.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateFormResponse.proto view
+ fixture/UpdateTheme.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/amplifyuibuilder/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: amplifyuibuilder.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateThemeResponse.proto view
+ gen/Amazonka/AmplifyUiBuilder.hs view
@@ -0,0 +1,442 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.AmplifyUiBuilder+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2021-08-11@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- The Amplify UI Builder API provides a programmatic interface for+-- creating and configuring user interface (UI) component libraries and+-- themes for use in your Amplify applications. You can then connect these+-- UI components to an application\'s backend Amazon Web Services+-- resources.+--+-- You can also use the Amplify Studio visual designer to create UI+-- components and model data for an app. For more information, see+-- <https://docs.amplify.aws/console/adminui/intro Introduction> in the+-- /Amplify Docs/.+--+-- The Amplify Framework is a comprehensive set of SDKs, libraries, tools,+-- and documentation for client app development. For more information, see+-- the <https://docs.amplify.aws/ Amplify Framework>. For more information+-- about deploying an Amplify application to Amazon Web Services, see the+-- <https://docs.aws.amazon.com/amplify/latest/userguide/welcome.html Amplify User Guide>.+module Amazonka.AmplifyUiBuilder+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** InternalServerException+ _InternalServerException,++ -- ** InvalidParameterException+ _InvalidParameterException,++ -- ** ResourceConflictException+ _ResourceConflictException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceQuotaExceededException+ _ServiceQuotaExceededException,++ -- ** UnauthorizedException+ _UnauthorizedException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** CreateComponent+ CreateComponent (CreateComponent'),+ newCreateComponent,+ CreateComponentResponse (CreateComponentResponse'),+ newCreateComponentResponse,++ -- ** CreateForm+ CreateForm (CreateForm'),+ newCreateForm,+ CreateFormResponse (CreateFormResponse'),+ newCreateFormResponse,++ -- ** CreateTheme+ CreateTheme (CreateTheme'),+ newCreateTheme,+ CreateThemeResponse (CreateThemeResponse'),+ newCreateThemeResponse,++ -- ** DeleteComponent+ DeleteComponent (DeleteComponent'),+ newDeleteComponent,+ DeleteComponentResponse (DeleteComponentResponse'),+ newDeleteComponentResponse,++ -- ** DeleteForm+ DeleteForm (DeleteForm'),+ newDeleteForm,+ DeleteFormResponse (DeleteFormResponse'),+ newDeleteFormResponse,++ -- ** DeleteTheme+ DeleteTheme (DeleteTheme'),+ newDeleteTheme,+ DeleteThemeResponse (DeleteThemeResponse'),+ newDeleteThemeResponse,++ -- ** ExchangeCodeForToken+ ExchangeCodeForToken (ExchangeCodeForToken'),+ newExchangeCodeForToken,+ ExchangeCodeForTokenResponse (ExchangeCodeForTokenResponse'),+ newExchangeCodeForTokenResponse,++ -- ** ExportComponents (Paginated)+ ExportComponents (ExportComponents'),+ newExportComponents,+ ExportComponentsResponse (ExportComponentsResponse'),+ newExportComponentsResponse,++ -- ** ExportForms (Paginated)+ ExportForms (ExportForms'),+ newExportForms,+ ExportFormsResponse (ExportFormsResponse'),+ newExportFormsResponse,++ -- ** ExportThemes (Paginated)+ ExportThemes (ExportThemes'),+ newExportThemes,+ ExportThemesResponse (ExportThemesResponse'),+ newExportThemesResponse,++ -- ** GetComponent+ GetComponent (GetComponent'),+ newGetComponent,+ GetComponentResponse (GetComponentResponse'),+ newGetComponentResponse,++ -- ** GetForm+ GetForm (GetForm'),+ newGetForm,+ GetFormResponse (GetFormResponse'),+ newGetFormResponse,++ -- ** GetMetadata+ GetMetadata (GetMetadata'),+ newGetMetadata,+ GetMetadataResponse (GetMetadataResponse'),+ newGetMetadataResponse,++ -- ** GetTheme+ GetTheme (GetTheme'),+ newGetTheme,+ GetThemeResponse (GetThemeResponse'),+ newGetThemeResponse,++ -- ** ListComponents (Paginated)+ ListComponents (ListComponents'),+ newListComponents,+ ListComponentsResponse (ListComponentsResponse'),+ newListComponentsResponse,++ -- ** ListForms (Paginated)+ ListForms (ListForms'),+ newListForms,+ ListFormsResponse (ListFormsResponse'),+ newListFormsResponse,++ -- ** ListThemes (Paginated)+ ListThemes (ListThemes'),+ newListThemes,+ ListThemesResponse (ListThemesResponse'),+ newListThemesResponse,++ -- ** PutMetadataFlag+ PutMetadataFlag (PutMetadataFlag'),+ newPutMetadataFlag,+ PutMetadataFlagResponse (PutMetadataFlagResponse'),+ newPutMetadataFlagResponse,++ -- ** RefreshToken+ RefreshToken (RefreshToken'),+ newRefreshToken,+ RefreshTokenResponse (RefreshTokenResponse'),+ newRefreshTokenResponse,++ -- ** UpdateComponent+ UpdateComponent (UpdateComponent'),+ newUpdateComponent,+ UpdateComponentResponse (UpdateComponentResponse'),+ newUpdateComponentResponse,++ -- ** UpdateForm+ UpdateForm (UpdateForm'),+ newUpdateForm,+ UpdateFormResponse (UpdateFormResponse'),+ newUpdateFormResponse,++ -- ** UpdateTheme+ UpdateTheme (UpdateTheme'),+ newUpdateTheme,+ UpdateThemeResponse (UpdateThemeResponse'),+ newUpdateThemeResponse,++ -- * Types++ -- ** FixedPosition+ FixedPosition (..),++ -- ** FormActionType+ FormActionType (..),++ -- ** FormButtonsPosition+ FormButtonsPosition (..),++ -- ** FormDataSourceType+ FormDataSourceType (..),++ -- ** SortDirection+ SortDirection (..),++ -- ** TokenProviders+ TokenProviders (..),++ -- ** ActionParameters+ ActionParameters (ActionParameters'),+ newActionParameters,++ -- ** Component+ Component (Component'),+ newComponent,++ -- ** ComponentBindingPropertiesValue+ ComponentBindingPropertiesValue (ComponentBindingPropertiesValue'),+ newComponentBindingPropertiesValue,++ -- ** ComponentBindingPropertiesValueProperties+ ComponentBindingPropertiesValueProperties (ComponentBindingPropertiesValueProperties'),+ newComponentBindingPropertiesValueProperties,++ -- ** ComponentChild+ ComponentChild (ComponentChild'),+ newComponentChild,++ -- ** ComponentConditionProperty+ ComponentConditionProperty (ComponentConditionProperty'),+ newComponentConditionProperty,++ -- ** ComponentDataConfiguration+ ComponentDataConfiguration (ComponentDataConfiguration'),+ newComponentDataConfiguration,++ -- ** ComponentEvent+ ComponentEvent (ComponentEvent'),+ newComponentEvent,++ -- ** ComponentProperty+ ComponentProperty (ComponentProperty'),+ newComponentProperty,++ -- ** ComponentPropertyBindingProperties+ ComponentPropertyBindingProperties (ComponentPropertyBindingProperties'),+ newComponentPropertyBindingProperties,++ -- ** ComponentSummary+ ComponentSummary (ComponentSummary'),+ newComponentSummary,++ -- ** ComponentVariant+ ComponentVariant (ComponentVariant'),+ newComponentVariant,++ -- ** CreateComponentData+ CreateComponentData (CreateComponentData'),+ newCreateComponentData,++ -- ** CreateFormData+ CreateFormData (CreateFormData'),+ newCreateFormData,++ -- ** CreateThemeData+ CreateThemeData (CreateThemeData'),+ newCreateThemeData,++ -- ** ExchangeCodeForTokenRequestBody+ ExchangeCodeForTokenRequestBody (ExchangeCodeForTokenRequestBody'),+ newExchangeCodeForTokenRequestBody,++ -- ** FieldConfig+ FieldConfig (FieldConfig'),+ newFieldConfig,++ -- ** FieldInputConfig+ FieldInputConfig (FieldInputConfig'),+ newFieldInputConfig,++ -- ** FieldPosition+ FieldPosition (FieldPosition'),+ newFieldPosition,++ -- ** FieldValidationConfiguration+ FieldValidationConfiguration (FieldValidationConfiguration'),+ newFieldValidationConfiguration,++ -- ** Form+ Form (Form'),+ newForm,++ -- ** FormBindingElement+ FormBindingElement (FormBindingElement'),+ newFormBindingElement,++ -- ** FormButton+ FormButton (FormButton'),+ newFormButton,++ -- ** FormCTA+ FormCTA (FormCTA'),+ newFormCTA,++ -- ** FormDataTypeConfig+ FormDataTypeConfig (FormDataTypeConfig'),+ newFormDataTypeConfig,++ -- ** FormInputValueProperty+ FormInputValueProperty (FormInputValueProperty'),+ newFormInputValueProperty,++ -- ** FormStyle+ FormStyle (FormStyle'),+ newFormStyle,++ -- ** FormStyleConfig+ FormStyleConfig (FormStyleConfig'),+ newFormStyleConfig,++ -- ** FormSummary+ FormSummary (FormSummary'),+ newFormSummary,++ -- ** MutationActionSetStateParameter+ MutationActionSetStateParameter (MutationActionSetStateParameter'),+ newMutationActionSetStateParameter,++ -- ** Predicate+ Predicate (Predicate'),+ newPredicate,++ -- ** PutMetadataFlagBody+ PutMetadataFlagBody (PutMetadataFlagBody'),+ newPutMetadataFlagBody,++ -- ** RefreshTokenRequestBody+ RefreshTokenRequestBody (RefreshTokenRequestBody'),+ newRefreshTokenRequestBody,++ -- ** SectionalElement+ SectionalElement (SectionalElement'),+ newSectionalElement,++ -- ** SortProperty+ SortProperty (SortProperty'),+ newSortProperty,++ -- ** Theme+ Theme (Theme'),+ newTheme,++ -- ** ThemeSummary+ ThemeSummary (ThemeSummary'),+ newThemeSummary,++ -- ** ThemeValue+ ThemeValue (ThemeValue'),+ newThemeValue,++ -- ** ThemeValues+ ThemeValues (ThemeValues'),+ newThemeValues,++ -- ** UpdateComponentData+ UpdateComponentData (UpdateComponentData'),+ newUpdateComponentData,++ -- ** UpdateFormData+ UpdateFormData (UpdateFormData'),+ newUpdateFormData,++ -- ** UpdateThemeData+ UpdateThemeData (UpdateThemeData'),+ newUpdateThemeData,++ -- ** ValueMapping+ ValueMapping (ValueMapping'),+ newValueMapping,++ -- ** ValueMappings+ ValueMappings (ValueMappings'),+ newValueMappings,+ )+where++import Amazonka.AmplifyUiBuilder.CreateComponent+import Amazonka.AmplifyUiBuilder.CreateForm+import Amazonka.AmplifyUiBuilder.CreateTheme+import Amazonka.AmplifyUiBuilder.DeleteComponent+import Amazonka.AmplifyUiBuilder.DeleteForm+import Amazonka.AmplifyUiBuilder.DeleteTheme+import Amazonka.AmplifyUiBuilder.ExchangeCodeForToken+import Amazonka.AmplifyUiBuilder.ExportComponents+import Amazonka.AmplifyUiBuilder.ExportForms+import Amazonka.AmplifyUiBuilder.ExportThemes+import Amazonka.AmplifyUiBuilder.GetComponent+import Amazonka.AmplifyUiBuilder.GetForm+import Amazonka.AmplifyUiBuilder.GetMetadata+import Amazonka.AmplifyUiBuilder.GetTheme+import Amazonka.AmplifyUiBuilder.Lens+import Amazonka.AmplifyUiBuilder.ListComponents+import Amazonka.AmplifyUiBuilder.ListForms+import Amazonka.AmplifyUiBuilder.ListThemes+import Amazonka.AmplifyUiBuilder.PutMetadataFlag+import Amazonka.AmplifyUiBuilder.RefreshToken+import Amazonka.AmplifyUiBuilder.Types+import Amazonka.AmplifyUiBuilder.UpdateComponent+import Amazonka.AmplifyUiBuilder.UpdateForm+import Amazonka.AmplifyUiBuilder.UpdateTheme+import Amazonka.AmplifyUiBuilder.Waiters++-- $errors+-- Error matchers are designed for use with the functions provided by+-- <http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+-- This allows catching (and rethrowing) service specific errors returned+-- by 'AmplifyUiBuilder'.++-- $operations+-- Some AWS operations return results that are incomplete and require subsequent+-- requests in order to obtain the entire result set. The process of sending+-- subsequent requests to continue where a previous request left off is called+-- pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+-- 1000 objects at a time, and you must send subsequent requests with the+-- appropriate Marker in order to retrieve the next page of results.+--+-- Operations that have an 'AWSPager' instance can transparently perform subsequent+-- requests, correctly setting Markers and other request facets to iterate through+-- the entire result set of a truncated API operation. Operations which support+-- this have an additional note in the documentation.+--+-- Many operations have the ability to filter results on the server side. See the+-- individual operation parameters for details.++-- $waiters+-- Waiters poll by repeatedly sending a request until some remote success condition+-- configured by the 'Wait' specification is fulfilled. The 'Wait' specification+-- determines how many attempts should be made, in addition to delay and retry strategies.
+ gen/Amazonka/AmplifyUiBuilder/CreateComponent.hs view
@@ -0,0 +1,215 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.CreateComponent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new component for an Amplify app.+module Amazonka.AmplifyUiBuilder.CreateComponent+ ( -- * Creating a Request+ CreateComponent (..),+ newCreateComponent,++ -- * Request Lenses+ createComponent_clientToken,+ createComponent_appId,+ createComponent_componentToCreate,+ createComponent_environmentName,++ -- * Destructuring the Response+ CreateComponentResponse (..),+ newCreateComponentResponse,++ -- * Response Lenses+ createComponentResponse_entity,+ createComponentResponse_httpStatus,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateComponent' smart constructor.+data CreateComponent = CreateComponent'+ { -- | The unique client token.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID of the Amplify app to associate with the component.+ appId :: Prelude.Text,+ -- | Represents the configuration of the component to create.+ componentToCreate :: CreateComponentData,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateComponent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createComponent_clientToken' - The unique client token.+--+-- 'appId', 'createComponent_appId' - The unique ID of the Amplify app to associate with the component.+--+-- 'componentToCreate', 'createComponent_componentToCreate' - Represents the configuration of the component to create.+--+-- 'environmentName', 'createComponent_environmentName' - The name of the backend environment that is a part of the Amplify app.+newCreateComponent ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'componentToCreate'+ CreateComponentData ->+ -- | 'environmentName'+ Prelude.Text ->+ CreateComponent+newCreateComponent+ pAppId_+ pComponentToCreate_+ pEnvironmentName_ =+ CreateComponent'+ { clientToken = Prelude.Nothing,+ appId = pAppId_,+ componentToCreate = pComponentToCreate_,+ environmentName = pEnvironmentName_+ }++-- | The unique client token.+createComponent_clientToken :: Lens.Lens' CreateComponent (Prelude.Maybe Prelude.Text)+createComponent_clientToken = Lens.lens (\CreateComponent' {clientToken} -> clientToken) (\s@CreateComponent' {} a -> s {clientToken = a} :: CreateComponent)++-- | The unique ID of the Amplify app to associate with the component.+createComponent_appId :: Lens.Lens' CreateComponent Prelude.Text+createComponent_appId = Lens.lens (\CreateComponent' {appId} -> appId) (\s@CreateComponent' {} a -> s {appId = a} :: CreateComponent)++-- | Represents the configuration of the component to create.+createComponent_componentToCreate :: Lens.Lens' CreateComponent CreateComponentData+createComponent_componentToCreate = Lens.lens (\CreateComponent' {componentToCreate} -> componentToCreate) (\s@CreateComponent' {} a -> s {componentToCreate = a} :: CreateComponent)++-- | The name of the backend environment that is a part of the Amplify app.+createComponent_environmentName :: Lens.Lens' CreateComponent Prelude.Text+createComponent_environmentName = Lens.lens (\CreateComponent' {environmentName} -> environmentName) (\s@CreateComponent' {} a -> s {environmentName = a} :: CreateComponent)++instance Core.AWSRequest CreateComponent where+ type+ AWSResponse CreateComponent =+ CreateComponentResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateComponentResponse'+ Prelude.<$> (Data.eitherParseJSON x)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateComponent where+ hashWithSalt _salt CreateComponent' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` componentToCreate+ `Prelude.hashWithSalt` environmentName++instance Prelude.NFData CreateComponent where+ rnf CreateComponent' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf componentToCreate+ `Prelude.seq` Prelude.rnf environmentName++instance Data.ToHeaders CreateComponent where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateComponent where+ toJSON CreateComponent' {..} =+ Data.toJSON componentToCreate++instance Data.ToPath CreateComponent where+ toPath CreateComponent' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/components"+ ]++instance Data.ToQuery CreateComponent where+ toQuery CreateComponent' {..} =+ Prelude.mconcat ["clientToken" Data.=: clientToken]++-- | /See:/ 'newCreateComponentResponse' smart constructor.+data CreateComponentResponse = CreateComponentResponse'+ { -- | Describes the configuration of the new component.+ entity :: Prelude.Maybe Component,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateComponentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'entity', 'createComponentResponse_entity' - Describes the configuration of the new component.+--+-- 'httpStatus', 'createComponentResponse_httpStatus' - The response's http status code.+newCreateComponentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateComponentResponse+newCreateComponentResponse pHttpStatus_ =+ CreateComponentResponse'+ { entity = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Describes the configuration of the new component.+createComponentResponse_entity :: Lens.Lens' CreateComponentResponse (Prelude.Maybe Component)+createComponentResponse_entity = Lens.lens (\CreateComponentResponse' {entity} -> entity) (\s@CreateComponentResponse' {} a -> s {entity = a} :: CreateComponentResponse)++-- | The response's http status code.+createComponentResponse_httpStatus :: Lens.Lens' CreateComponentResponse Prelude.Int+createComponentResponse_httpStatus = Lens.lens (\CreateComponentResponse' {httpStatus} -> httpStatus) (\s@CreateComponentResponse' {} a -> s {httpStatus = a} :: CreateComponentResponse)++instance Prelude.NFData CreateComponentResponse where+ rnf CreateComponentResponse' {..} =+ Prelude.rnf entity+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/AmplifyUiBuilder/CreateForm.hs view
@@ -0,0 +1,212 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.CreateForm+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new form for an Amplify app.+module Amazonka.AmplifyUiBuilder.CreateForm+ ( -- * Creating a Request+ CreateForm (..),+ newCreateForm,++ -- * Request Lenses+ createForm_clientToken,+ createForm_appId,+ createForm_environmentName,+ createForm_formToCreate,++ -- * Destructuring the Response+ CreateFormResponse (..),+ newCreateFormResponse,++ -- * Response Lenses+ createFormResponse_entity,+ createFormResponse_httpStatus,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateForm' smart constructor.+data CreateForm = CreateForm'+ { -- | The unique client token.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID of the Amplify app to associate with the form.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | Represents the configuration of the form to create.+ formToCreate :: CreateFormData+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateForm' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createForm_clientToken' - The unique client token.+--+-- 'appId', 'createForm_appId' - The unique ID of the Amplify app to associate with the form.+--+-- 'environmentName', 'createForm_environmentName' - The name of the backend environment that is a part of the Amplify app.+--+-- 'formToCreate', 'createForm_formToCreate' - Represents the configuration of the form to create.+newCreateForm ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'formToCreate'+ CreateFormData ->+ CreateForm+newCreateForm+ pAppId_+ pEnvironmentName_+ pFormToCreate_ =+ CreateForm'+ { clientToken = Prelude.Nothing,+ appId = pAppId_,+ environmentName = pEnvironmentName_,+ formToCreate = pFormToCreate_+ }++-- | The unique client token.+createForm_clientToken :: Lens.Lens' CreateForm (Prelude.Maybe Prelude.Text)+createForm_clientToken = Lens.lens (\CreateForm' {clientToken} -> clientToken) (\s@CreateForm' {} a -> s {clientToken = a} :: CreateForm)++-- | The unique ID of the Amplify app to associate with the form.+createForm_appId :: Lens.Lens' CreateForm Prelude.Text+createForm_appId = Lens.lens (\CreateForm' {appId} -> appId) (\s@CreateForm' {} a -> s {appId = a} :: CreateForm)++-- | The name of the backend environment that is a part of the Amplify app.+createForm_environmentName :: Lens.Lens' CreateForm Prelude.Text+createForm_environmentName = Lens.lens (\CreateForm' {environmentName} -> environmentName) (\s@CreateForm' {} a -> s {environmentName = a} :: CreateForm)++-- | Represents the configuration of the form to create.+createForm_formToCreate :: Lens.Lens' CreateForm CreateFormData+createForm_formToCreate = Lens.lens (\CreateForm' {formToCreate} -> formToCreate) (\s@CreateForm' {} a -> s {formToCreate = a} :: CreateForm)++instance Core.AWSRequest CreateForm where+ type AWSResponse CreateForm = CreateFormResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateFormResponse'+ Prelude.<$> (Data.eitherParseJSON x)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateForm where+ hashWithSalt _salt CreateForm' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` formToCreate++instance Prelude.NFData CreateForm where+ rnf CreateForm' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf formToCreate++instance Data.ToHeaders CreateForm where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateForm where+ toJSON CreateForm' {..} = Data.toJSON formToCreate++instance Data.ToPath CreateForm where+ toPath CreateForm' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/forms"+ ]++instance Data.ToQuery CreateForm where+ toQuery CreateForm' {..} =+ Prelude.mconcat ["clientToken" Data.=: clientToken]++-- | /See:/ 'newCreateFormResponse' smart constructor.+data CreateFormResponse = CreateFormResponse'+ { -- | Describes the configuration of the new form.+ entity :: Prelude.Maybe Form,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateFormResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'entity', 'createFormResponse_entity' - Describes the configuration of the new form.+--+-- 'httpStatus', 'createFormResponse_httpStatus' - The response's http status code.+newCreateFormResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateFormResponse+newCreateFormResponse pHttpStatus_ =+ CreateFormResponse'+ { entity = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Describes the configuration of the new form.+createFormResponse_entity :: Lens.Lens' CreateFormResponse (Prelude.Maybe Form)+createFormResponse_entity = Lens.lens (\CreateFormResponse' {entity} -> entity) (\s@CreateFormResponse' {} a -> s {entity = a} :: CreateFormResponse)++-- | The response's http status code.+createFormResponse_httpStatus :: Lens.Lens' CreateFormResponse Prelude.Int+createFormResponse_httpStatus = Lens.lens (\CreateFormResponse' {httpStatus} -> httpStatus) (\s@CreateFormResponse' {} a -> s {httpStatus = a} :: CreateFormResponse)++instance Prelude.NFData CreateFormResponse where+ rnf CreateFormResponse' {..} =+ Prelude.rnf entity+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/AmplifyUiBuilder/CreateTheme.hs view
@@ -0,0 +1,212 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.CreateTheme+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a theme to apply to the components in an Amplify app.+module Amazonka.AmplifyUiBuilder.CreateTheme+ ( -- * Creating a Request+ CreateTheme (..),+ newCreateTheme,++ -- * Request Lenses+ createTheme_clientToken,+ createTheme_appId,+ createTheme_environmentName,+ createTheme_themeToCreate,++ -- * Destructuring the Response+ CreateThemeResponse (..),+ newCreateThemeResponse,++ -- * Response Lenses+ createThemeResponse_entity,+ createThemeResponse_httpStatus,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateTheme' smart constructor.+data CreateTheme = CreateTheme'+ { -- | The unique client token.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID of the Amplify app associated with the theme.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | Represents the configuration of the theme to create.+ themeToCreate :: CreateThemeData+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateTheme' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createTheme_clientToken' - The unique client token.+--+-- 'appId', 'createTheme_appId' - The unique ID of the Amplify app associated with the theme.+--+-- 'environmentName', 'createTheme_environmentName' - The name of the backend environment that is a part of the Amplify app.+--+-- 'themeToCreate', 'createTheme_themeToCreate' - Represents the configuration of the theme to create.+newCreateTheme ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'themeToCreate'+ CreateThemeData ->+ CreateTheme+newCreateTheme+ pAppId_+ pEnvironmentName_+ pThemeToCreate_ =+ CreateTheme'+ { clientToken = Prelude.Nothing,+ appId = pAppId_,+ environmentName = pEnvironmentName_,+ themeToCreate = pThemeToCreate_+ }++-- | The unique client token.+createTheme_clientToken :: Lens.Lens' CreateTheme (Prelude.Maybe Prelude.Text)+createTheme_clientToken = Lens.lens (\CreateTheme' {clientToken} -> clientToken) (\s@CreateTheme' {} a -> s {clientToken = a} :: CreateTheme)++-- | The unique ID of the Amplify app associated with the theme.+createTheme_appId :: Lens.Lens' CreateTheme Prelude.Text+createTheme_appId = Lens.lens (\CreateTheme' {appId} -> appId) (\s@CreateTheme' {} a -> s {appId = a} :: CreateTheme)++-- | The name of the backend environment that is a part of the Amplify app.+createTheme_environmentName :: Lens.Lens' CreateTheme Prelude.Text+createTheme_environmentName = Lens.lens (\CreateTheme' {environmentName} -> environmentName) (\s@CreateTheme' {} a -> s {environmentName = a} :: CreateTheme)++-- | Represents the configuration of the theme to create.+createTheme_themeToCreate :: Lens.Lens' CreateTheme CreateThemeData+createTheme_themeToCreate = Lens.lens (\CreateTheme' {themeToCreate} -> themeToCreate) (\s@CreateTheme' {} a -> s {themeToCreate = a} :: CreateTheme)++instance Core.AWSRequest CreateTheme where+ type AWSResponse CreateTheme = CreateThemeResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateThemeResponse'+ Prelude.<$> (Data.eitherParseJSON x)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateTheme where+ hashWithSalt _salt CreateTheme' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` themeToCreate++instance Prelude.NFData CreateTheme where+ rnf CreateTheme' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf themeToCreate++instance Data.ToHeaders CreateTheme where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateTheme where+ toJSON CreateTheme' {..} = Data.toJSON themeToCreate++instance Data.ToPath CreateTheme where+ toPath CreateTheme' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/themes"+ ]++instance Data.ToQuery CreateTheme where+ toQuery CreateTheme' {..} =+ Prelude.mconcat ["clientToken" Data.=: clientToken]++-- | /See:/ 'newCreateThemeResponse' smart constructor.+data CreateThemeResponse = CreateThemeResponse'+ { -- | Describes the configuration of the new theme.+ entity :: Prelude.Maybe Theme,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateThemeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'entity', 'createThemeResponse_entity' - Describes the configuration of the new theme.+--+-- 'httpStatus', 'createThemeResponse_httpStatus' - The response's http status code.+newCreateThemeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateThemeResponse+newCreateThemeResponse pHttpStatus_ =+ CreateThemeResponse'+ { entity = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Describes the configuration of the new theme.+createThemeResponse_entity :: Lens.Lens' CreateThemeResponse (Prelude.Maybe Theme)+createThemeResponse_entity = Lens.lens (\CreateThemeResponse' {entity} -> entity) (\s@CreateThemeResponse' {} a -> s {entity = a} :: CreateThemeResponse)++-- | The response's http status code.+createThemeResponse_httpStatus :: Lens.Lens' CreateThemeResponse Prelude.Int+createThemeResponse_httpStatus = Lens.lens (\CreateThemeResponse' {httpStatus} -> httpStatus) (\s@CreateThemeResponse' {} a -> s {httpStatus = a} :: CreateThemeResponse)++instance Prelude.NFData CreateThemeResponse where+ rnf CreateThemeResponse' {..} =+ Prelude.rnf entity+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/AmplifyUiBuilder/DeleteComponent.hs view
@@ -0,0 +1,164 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.DeleteComponent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a component from an Amplify app.+module Amazonka.AmplifyUiBuilder.DeleteComponent+ ( -- * Creating a Request+ DeleteComponent (..),+ newDeleteComponent,++ -- * Request Lenses+ deleteComponent_appId,+ deleteComponent_environmentName,+ deleteComponent_id,++ -- * Destructuring the Response+ DeleteComponentResponse (..),+ newDeleteComponentResponse,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteComponent' smart constructor.+data DeleteComponent = DeleteComponent'+ { -- | The unique ID of the Amplify app associated with the component to+ -- delete.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The unique ID of the component to delete.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteComponent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appId', 'deleteComponent_appId' - The unique ID of the Amplify app associated with the component to+-- delete.+--+-- 'environmentName', 'deleteComponent_environmentName' - The name of the backend environment that is a part of the Amplify app.+--+-- 'id', 'deleteComponent_id' - The unique ID of the component to delete.+newDeleteComponent ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ DeleteComponent+newDeleteComponent pAppId_ pEnvironmentName_ pId_ =+ DeleteComponent'+ { appId = pAppId_,+ environmentName = pEnvironmentName_,+ id = pId_+ }++-- | The unique ID of the Amplify app associated with the component to+-- delete.+deleteComponent_appId :: Lens.Lens' DeleteComponent Prelude.Text+deleteComponent_appId = Lens.lens (\DeleteComponent' {appId} -> appId) (\s@DeleteComponent' {} a -> s {appId = a} :: DeleteComponent)++-- | The name of the backend environment that is a part of the Amplify app.+deleteComponent_environmentName :: Lens.Lens' DeleteComponent Prelude.Text+deleteComponent_environmentName = Lens.lens (\DeleteComponent' {environmentName} -> environmentName) (\s@DeleteComponent' {} a -> s {environmentName = a} :: DeleteComponent)++-- | The unique ID of the component to delete.+deleteComponent_id :: Lens.Lens' DeleteComponent Prelude.Text+deleteComponent_id = Lens.lens (\DeleteComponent' {id} -> id) (\s@DeleteComponent' {} a -> s {id = a} :: DeleteComponent)++instance Core.AWSRequest DeleteComponent where+ type+ AWSResponse DeleteComponent =+ DeleteComponentResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveNull DeleteComponentResponse'++instance Prelude.Hashable DeleteComponent where+ hashWithSalt _salt DeleteComponent' {..} =+ _salt+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id++instance Prelude.NFData DeleteComponent where+ rnf DeleteComponent' {..} =+ Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders DeleteComponent where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteComponent where+ toPath DeleteComponent' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/components/",+ Data.toBS id+ ]++instance Data.ToQuery DeleteComponent where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteComponentResponse' smart constructor.+data DeleteComponentResponse = DeleteComponentResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteComponentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteComponentResponse ::+ DeleteComponentResponse+newDeleteComponentResponse = DeleteComponentResponse'++instance Prelude.NFData DeleteComponentResponse where+ rnf _ = ()
+ gen/Amazonka/AmplifyUiBuilder/DeleteForm.hs view
@@ -0,0 +1,158 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.DeleteForm+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a form from an Amplify app.+module Amazonka.AmplifyUiBuilder.DeleteForm+ ( -- * Creating a Request+ DeleteForm (..),+ newDeleteForm,++ -- * Request Lenses+ deleteForm_appId,+ deleteForm_environmentName,+ deleteForm_id,++ -- * Destructuring the Response+ DeleteFormResponse (..),+ newDeleteFormResponse,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteForm' smart constructor.+data DeleteForm = DeleteForm'+ { -- | The unique ID of the Amplify app associated with the form to delete.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The unique ID of the form to delete.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteForm' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appId', 'deleteForm_appId' - The unique ID of the Amplify app associated with the form to delete.+--+-- 'environmentName', 'deleteForm_environmentName' - The name of the backend environment that is a part of the Amplify app.+--+-- 'id', 'deleteForm_id' - The unique ID of the form to delete.+newDeleteForm ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ DeleteForm+newDeleteForm pAppId_ pEnvironmentName_ pId_ =+ DeleteForm'+ { appId = pAppId_,+ environmentName = pEnvironmentName_,+ id = pId_+ }++-- | The unique ID of the Amplify app associated with the form to delete.+deleteForm_appId :: Lens.Lens' DeleteForm Prelude.Text+deleteForm_appId = Lens.lens (\DeleteForm' {appId} -> appId) (\s@DeleteForm' {} a -> s {appId = a} :: DeleteForm)++-- | The name of the backend environment that is a part of the Amplify app.+deleteForm_environmentName :: Lens.Lens' DeleteForm Prelude.Text+deleteForm_environmentName = Lens.lens (\DeleteForm' {environmentName} -> environmentName) (\s@DeleteForm' {} a -> s {environmentName = a} :: DeleteForm)++-- | The unique ID of the form to delete.+deleteForm_id :: Lens.Lens' DeleteForm Prelude.Text+deleteForm_id = Lens.lens (\DeleteForm' {id} -> id) (\s@DeleteForm' {} a -> s {id = a} :: DeleteForm)++instance Core.AWSRequest DeleteForm where+ type AWSResponse DeleteForm = DeleteFormResponse+ request overrides =+ Request.delete (overrides defaultService)+ response = Response.receiveNull DeleteFormResponse'++instance Prelude.Hashable DeleteForm where+ hashWithSalt _salt DeleteForm' {..} =+ _salt+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id++instance Prelude.NFData DeleteForm where+ rnf DeleteForm' {..} =+ Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders DeleteForm where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteForm where+ toPath DeleteForm' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/forms/",+ Data.toBS id+ ]++instance Data.ToQuery DeleteForm where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteFormResponse' smart constructor.+data DeleteFormResponse = DeleteFormResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteFormResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteFormResponse ::+ DeleteFormResponse+newDeleteFormResponse = DeleteFormResponse'++instance Prelude.NFData DeleteFormResponse where+ rnf _ = ()
+ gen/Amazonka/AmplifyUiBuilder/DeleteTheme.hs view
@@ -0,0 +1,158 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.DeleteTheme+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a theme from an Amplify app.+module Amazonka.AmplifyUiBuilder.DeleteTheme+ ( -- * Creating a Request+ DeleteTheme (..),+ newDeleteTheme,++ -- * Request Lenses+ deleteTheme_appId,+ deleteTheme_environmentName,+ deleteTheme_id,++ -- * Destructuring the Response+ DeleteThemeResponse (..),+ newDeleteThemeResponse,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteTheme' smart constructor.+data DeleteTheme = DeleteTheme'+ { -- | The unique ID of the Amplify app associated with the theme to delete.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The unique ID of the theme to delete.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteTheme' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appId', 'deleteTheme_appId' - The unique ID of the Amplify app associated with the theme to delete.+--+-- 'environmentName', 'deleteTheme_environmentName' - The name of the backend environment that is a part of the Amplify app.+--+-- 'id', 'deleteTheme_id' - The unique ID of the theme to delete.+newDeleteTheme ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ DeleteTheme+newDeleteTheme pAppId_ pEnvironmentName_ pId_ =+ DeleteTheme'+ { appId = pAppId_,+ environmentName = pEnvironmentName_,+ id = pId_+ }++-- | The unique ID of the Amplify app associated with the theme to delete.+deleteTheme_appId :: Lens.Lens' DeleteTheme Prelude.Text+deleteTheme_appId = Lens.lens (\DeleteTheme' {appId} -> appId) (\s@DeleteTheme' {} a -> s {appId = a} :: DeleteTheme)++-- | The name of the backend environment that is a part of the Amplify app.+deleteTheme_environmentName :: Lens.Lens' DeleteTheme Prelude.Text+deleteTheme_environmentName = Lens.lens (\DeleteTheme' {environmentName} -> environmentName) (\s@DeleteTheme' {} a -> s {environmentName = a} :: DeleteTheme)++-- | The unique ID of the theme to delete.+deleteTheme_id :: Lens.Lens' DeleteTheme Prelude.Text+deleteTheme_id = Lens.lens (\DeleteTheme' {id} -> id) (\s@DeleteTheme' {} a -> s {id = a} :: DeleteTheme)++instance Core.AWSRequest DeleteTheme where+ type AWSResponse DeleteTheme = DeleteThemeResponse+ request overrides =+ Request.delete (overrides defaultService)+ response = Response.receiveNull DeleteThemeResponse'++instance Prelude.Hashable DeleteTheme where+ hashWithSalt _salt DeleteTheme' {..} =+ _salt+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id++instance Prelude.NFData DeleteTheme where+ rnf DeleteTheme' {..} =+ Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders DeleteTheme where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteTheme where+ toPath DeleteTheme' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/themes/",+ Data.toBS id+ ]++instance Data.ToQuery DeleteTheme where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteThemeResponse' smart constructor.+data DeleteThemeResponse = DeleteThemeResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteThemeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteThemeResponse ::+ DeleteThemeResponse+newDeleteThemeResponse = DeleteThemeResponse'++instance Prelude.NFData DeleteThemeResponse where+ rnf _ = ()
+ gen/Amazonka/AmplifyUiBuilder/ExchangeCodeForToken.hs view
@@ -0,0 +1,219 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.ExchangeCodeForToken+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Exchanges an access code for a token.+module Amazonka.AmplifyUiBuilder.ExchangeCodeForToken+ ( -- * Creating a Request+ ExchangeCodeForToken (..),+ newExchangeCodeForToken,++ -- * Request Lenses+ exchangeCodeForToken_provider,+ exchangeCodeForToken_request,++ -- * Destructuring the Response+ ExchangeCodeForTokenResponse (..),+ newExchangeCodeForTokenResponse,++ -- * Response Lenses+ exchangeCodeForTokenResponse_httpStatus,+ exchangeCodeForTokenResponse_accessToken,+ exchangeCodeForTokenResponse_expiresIn,+ exchangeCodeForTokenResponse_refreshToken,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newExchangeCodeForToken' smart constructor.+data ExchangeCodeForToken = ExchangeCodeForToken'+ { -- | The third-party provider for the token. The only valid value is @figma@.+ provider :: TokenProviders,+ -- | Describes the configuration of the request.+ request :: ExchangeCodeForTokenRequestBody+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExchangeCodeForToken' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'provider', 'exchangeCodeForToken_provider' - The third-party provider for the token. The only valid value is @figma@.+--+-- 'request', 'exchangeCodeForToken_request' - Describes the configuration of the request.+newExchangeCodeForToken ::+ -- | 'provider'+ TokenProviders ->+ -- | 'request'+ ExchangeCodeForTokenRequestBody ->+ ExchangeCodeForToken+newExchangeCodeForToken pProvider_ pRequest_ =+ ExchangeCodeForToken'+ { provider = pProvider_,+ request = pRequest_+ }++-- | The third-party provider for the token. The only valid value is @figma@.+exchangeCodeForToken_provider :: Lens.Lens' ExchangeCodeForToken TokenProviders+exchangeCodeForToken_provider = Lens.lens (\ExchangeCodeForToken' {provider} -> provider) (\s@ExchangeCodeForToken' {} a -> s {provider = a} :: ExchangeCodeForToken)++-- | Describes the configuration of the request.+exchangeCodeForToken_request :: Lens.Lens' ExchangeCodeForToken ExchangeCodeForTokenRequestBody+exchangeCodeForToken_request = Lens.lens (\ExchangeCodeForToken' {request} -> request) (\s@ExchangeCodeForToken' {} a -> s {request = a} :: ExchangeCodeForToken)++instance Core.AWSRequest ExchangeCodeForToken where+ type+ AWSResponse ExchangeCodeForToken =+ ExchangeCodeForTokenResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ExchangeCodeForTokenResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "accessToken")+ Prelude.<*> (x Data..:> "expiresIn")+ Prelude.<*> (x Data..:> "refreshToken")+ )++instance Prelude.Hashable ExchangeCodeForToken where+ hashWithSalt _salt ExchangeCodeForToken' {..} =+ _salt+ `Prelude.hashWithSalt` provider+ `Prelude.hashWithSalt` request++instance Prelude.NFData ExchangeCodeForToken where+ rnf ExchangeCodeForToken' {..} =+ Prelude.rnf provider+ `Prelude.seq` Prelude.rnf request++instance Data.ToHeaders ExchangeCodeForToken where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ExchangeCodeForToken where+ toJSON ExchangeCodeForToken' {..} =+ Data.toJSON request++instance Data.ToPath ExchangeCodeForToken where+ toPath ExchangeCodeForToken' {..} =+ Prelude.mconcat ["/tokens/", Data.toBS provider]++instance Data.ToQuery ExchangeCodeForToken where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newExchangeCodeForTokenResponse' smart constructor.+data ExchangeCodeForTokenResponse = ExchangeCodeForTokenResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The access token.+ accessToken :: Data.Sensitive Prelude.Text,+ -- | The date and time when the new access token expires.+ expiresIn :: Prelude.Int,+ -- | The token to use to refresh a previously issued access token that might+ -- have expired.+ refreshToken :: Data.Sensitive Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExchangeCodeForTokenResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'exchangeCodeForTokenResponse_httpStatus' - The response's http status code.+--+-- 'accessToken', 'exchangeCodeForTokenResponse_accessToken' - The access token.+--+-- 'expiresIn', 'exchangeCodeForTokenResponse_expiresIn' - The date and time when the new access token expires.+--+-- 'refreshToken', 'exchangeCodeForTokenResponse_refreshToken' - The token to use to refresh a previously issued access token that might+-- have expired.+newExchangeCodeForTokenResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'accessToken'+ Prelude.Text ->+ -- | 'expiresIn'+ Prelude.Int ->+ -- | 'refreshToken'+ Prelude.Text ->+ ExchangeCodeForTokenResponse+newExchangeCodeForTokenResponse+ pHttpStatus_+ pAccessToken_+ pExpiresIn_+ pRefreshToken_ =+ ExchangeCodeForTokenResponse'+ { httpStatus =+ pHttpStatus_,+ accessToken =+ Data._Sensitive Lens.# pAccessToken_,+ expiresIn = pExpiresIn_,+ refreshToken =+ Data._Sensitive Lens.# pRefreshToken_+ }++-- | The response's http status code.+exchangeCodeForTokenResponse_httpStatus :: Lens.Lens' ExchangeCodeForTokenResponse Prelude.Int+exchangeCodeForTokenResponse_httpStatus = Lens.lens (\ExchangeCodeForTokenResponse' {httpStatus} -> httpStatus) (\s@ExchangeCodeForTokenResponse' {} a -> s {httpStatus = a} :: ExchangeCodeForTokenResponse)++-- | The access token.+exchangeCodeForTokenResponse_accessToken :: Lens.Lens' ExchangeCodeForTokenResponse Prelude.Text+exchangeCodeForTokenResponse_accessToken = Lens.lens (\ExchangeCodeForTokenResponse' {accessToken} -> accessToken) (\s@ExchangeCodeForTokenResponse' {} a -> s {accessToken = a} :: ExchangeCodeForTokenResponse) Prelude.. Data._Sensitive++-- | The date and time when the new access token expires.+exchangeCodeForTokenResponse_expiresIn :: Lens.Lens' ExchangeCodeForTokenResponse Prelude.Int+exchangeCodeForTokenResponse_expiresIn = Lens.lens (\ExchangeCodeForTokenResponse' {expiresIn} -> expiresIn) (\s@ExchangeCodeForTokenResponse' {} a -> s {expiresIn = a} :: ExchangeCodeForTokenResponse)++-- | The token to use to refresh a previously issued access token that might+-- have expired.+exchangeCodeForTokenResponse_refreshToken :: Lens.Lens' ExchangeCodeForTokenResponse Prelude.Text+exchangeCodeForTokenResponse_refreshToken = Lens.lens (\ExchangeCodeForTokenResponse' {refreshToken} -> refreshToken) (\s@ExchangeCodeForTokenResponse' {} a -> s {refreshToken = a} :: ExchangeCodeForTokenResponse) Prelude.. Data._Sensitive++instance Prelude.NFData ExchangeCodeForTokenResponse where+ rnf ExchangeCodeForTokenResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf accessToken+ `Prelude.seq` Prelude.rnf expiresIn+ `Prelude.seq` Prelude.rnf refreshToken
+ gen/Amazonka/AmplifyUiBuilder/ExportComponents.hs view
@@ -0,0 +1,229 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.ExportComponents+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Exports component configurations to code that is ready to integrate into+-- an Amplify app.+--+-- This operation returns paginated results.+module Amazonka.AmplifyUiBuilder.ExportComponents+ ( -- * Creating a Request+ ExportComponents (..),+ newExportComponents,++ -- * Request Lenses+ exportComponents_nextToken,+ exportComponents_appId,+ exportComponents_environmentName,++ -- * Destructuring the Response+ ExportComponentsResponse (..),+ newExportComponentsResponse,++ -- * Response Lenses+ exportComponentsResponse_nextToken,+ exportComponentsResponse_httpStatus,+ exportComponentsResponse_entities,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newExportComponents' smart constructor.+data ExportComponents = ExportComponents'+ { -- | The token to request the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID of the Amplify app to export components to.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportComponents' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'exportComponents_nextToken' - The token to request the next page of results.+--+-- 'appId', 'exportComponents_appId' - The unique ID of the Amplify app to export components to.+--+-- 'environmentName', 'exportComponents_environmentName' - The name of the backend environment that is a part of the Amplify app.+newExportComponents ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ ExportComponents+newExportComponents pAppId_ pEnvironmentName_ =+ ExportComponents'+ { nextToken = Prelude.Nothing,+ appId = pAppId_,+ environmentName = pEnvironmentName_+ }++-- | The token to request the next page of results.+exportComponents_nextToken :: Lens.Lens' ExportComponents (Prelude.Maybe Prelude.Text)+exportComponents_nextToken = Lens.lens (\ExportComponents' {nextToken} -> nextToken) (\s@ExportComponents' {} a -> s {nextToken = a} :: ExportComponents)++-- | The unique ID of the Amplify app to export components to.+exportComponents_appId :: Lens.Lens' ExportComponents Prelude.Text+exportComponents_appId = Lens.lens (\ExportComponents' {appId} -> appId) (\s@ExportComponents' {} a -> s {appId = a} :: ExportComponents)++-- | The name of the backend environment that is a part of the Amplify app.+exportComponents_environmentName :: Lens.Lens' ExportComponents Prelude.Text+exportComponents_environmentName = Lens.lens (\ExportComponents' {environmentName} -> environmentName) (\s@ExportComponents' {} a -> s {environmentName = a} :: ExportComponents)++instance Core.AWSPager ExportComponents where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? exportComponentsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ (rs Lens.^. exportComponentsResponse_entities) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& exportComponents_nextToken+ Lens..~ rs+ Lens.^? exportComponentsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ExportComponents where+ type+ AWSResponse ExportComponents =+ ExportComponentsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ExportComponentsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..?> "entities" Core..!@ Prelude.mempty)+ )++instance Prelude.Hashable ExportComponents where+ hashWithSalt _salt ExportComponents' {..} =+ _salt+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName++instance Prelude.NFData ExportComponents where+ rnf ExportComponents' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName++instance Data.ToHeaders ExportComponents where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ExportComponents where+ toPath ExportComponents' {..} =+ Prelude.mconcat+ [ "/export/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/components"+ ]++instance Data.ToQuery ExportComponents where+ toQuery ExportComponents' {..} =+ Prelude.mconcat ["nextToken" Data.=: nextToken]++-- | /See:/ 'newExportComponentsResponse' smart constructor.+data ExportComponentsResponse = ExportComponentsResponse'+ { -- | The pagination token that\'s included if more results are available.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Represents the configuration of the exported components.+ entities :: [Component]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportComponentsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'exportComponentsResponse_nextToken' - The pagination token that\'s included if more results are available.+--+-- 'httpStatus', 'exportComponentsResponse_httpStatus' - The response's http status code.+--+-- 'entities', 'exportComponentsResponse_entities' - Represents the configuration of the exported components.+newExportComponentsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ExportComponentsResponse+newExportComponentsResponse pHttpStatus_ =+ ExportComponentsResponse'+ { nextToken =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ entities = Prelude.mempty+ }++-- | The pagination token that\'s included if more results are available.+exportComponentsResponse_nextToken :: Lens.Lens' ExportComponentsResponse (Prelude.Maybe Prelude.Text)+exportComponentsResponse_nextToken = Lens.lens (\ExportComponentsResponse' {nextToken} -> nextToken) (\s@ExportComponentsResponse' {} a -> s {nextToken = a} :: ExportComponentsResponse)++-- | The response's http status code.+exportComponentsResponse_httpStatus :: Lens.Lens' ExportComponentsResponse Prelude.Int+exportComponentsResponse_httpStatus = Lens.lens (\ExportComponentsResponse' {httpStatus} -> httpStatus) (\s@ExportComponentsResponse' {} a -> s {httpStatus = a} :: ExportComponentsResponse)++-- | Represents the configuration of the exported components.+exportComponentsResponse_entities :: Lens.Lens' ExportComponentsResponse [Component]+exportComponentsResponse_entities = Lens.lens (\ExportComponentsResponse' {entities} -> entities) (\s@ExportComponentsResponse' {} a -> s {entities = a} :: ExportComponentsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ExportComponentsResponse where+ rnf ExportComponentsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf entities
+ gen/Amazonka/AmplifyUiBuilder/ExportForms.hs view
@@ -0,0 +1,225 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.ExportForms+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Exports form configurations to code that is ready to integrate into an+-- Amplify app.+--+-- This operation returns paginated results.+module Amazonka.AmplifyUiBuilder.ExportForms+ ( -- * Creating a Request+ ExportForms (..),+ newExportForms,++ -- * Request Lenses+ exportForms_nextToken,+ exportForms_appId,+ exportForms_environmentName,++ -- * Destructuring the Response+ ExportFormsResponse (..),+ newExportFormsResponse,++ -- * Response Lenses+ exportFormsResponse_nextToken,+ exportFormsResponse_httpStatus,+ exportFormsResponse_entities,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newExportForms' smart constructor.+data ExportForms = ExportForms'+ { -- | The token to request the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID of the Amplify app to export forms to.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportForms' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'exportForms_nextToken' - The token to request the next page of results.+--+-- 'appId', 'exportForms_appId' - The unique ID of the Amplify app to export forms to.+--+-- 'environmentName', 'exportForms_environmentName' - The name of the backend environment that is a part of the Amplify app.+newExportForms ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ ExportForms+newExportForms pAppId_ pEnvironmentName_ =+ ExportForms'+ { nextToken = Prelude.Nothing,+ appId = pAppId_,+ environmentName = pEnvironmentName_+ }++-- | The token to request the next page of results.+exportForms_nextToken :: Lens.Lens' ExportForms (Prelude.Maybe Prelude.Text)+exportForms_nextToken = Lens.lens (\ExportForms' {nextToken} -> nextToken) (\s@ExportForms' {} a -> s {nextToken = a} :: ExportForms)++-- | The unique ID of the Amplify app to export forms to.+exportForms_appId :: Lens.Lens' ExportForms Prelude.Text+exportForms_appId = Lens.lens (\ExportForms' {appId} -> appId) (\s@ExportForms' {} a -> s {appId = a} :: ExportForms)++-- | The name of the backend environment that is a part of the Amplify app.+exportForms_environmentName :: Lens.Lens' ExportForms Prelude.Text+exportForms_environmentName = Lens.lens (\ExportForms' {environmentName} -> environmentName) (\s@ExportForms' {} a -> s {environmentName = a} :: ExportForms)++instance Core.AWSPager ExportForms where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? exportFormsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop (rs Lens.^. exportFormsResponse_entities) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& exportForms_nextToken+ Lens..~ rs+ Lens.^? exportFormsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ExportForms where+ type AWSResponse ExportForms = ExportFormsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ExportFormsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..?> "entities" Core..!@ Prelude.mempty)+ )++instance Prelude.Hashable ExportForms where+ hashWithSalt _salt ExportForms' {..} =+ _salt+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName++instance Prelude.NFData ExportForms where+ rnf ExportForms' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName++instance Data.ToHeaders ExportForms where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ExportForms where+ toPath ExportForms' {..} =+ Prelude.mconcat+ [ "/export/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/forms"+ ]++instance Data.ToQuery ExportForms where+ toQuery ExportForms' {..} =+ Prelude.mconcat ["nextToken" Data.=: nextToken]++-- | /See:/ 'newExportFormsResponse' smart constructor.+data ExportFormsResponse = ExportFormsResponse'+ { -- | The pagination token that\'s included if more results are available.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Represents the configuration of the exported forms.+ entities :: [Form]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportFormsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'exportFormsResponse_nextToken' - The pagination token that\'s included if more results are available.+--+-- 'httpStatus', 'exportFormsResponse_httpStatus' - The response's http status code.+--+-- 'entities', 'exportFormsResponse_entities' - Represents the configuration of the exported forms.+newExportFormsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ExportFormsResponse+newExportFormsResponse pHttpStatus_ =+ ExportFormsResponse'+ { nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ entities = Prelude.mempty+ }++-- | The pagination token that\'s included if more results are available.+exportFormsResponse_nextToken :: Lens.Lens' ExportFormsResponse (Prelude.Maybe Prelude.Text)+exportFormsResponse_nextToken = Lens.lens (\ExportFormsResponse' {nextToken} -> nextToken) (\s@ExportFormsResponse' {} a -> s {nextToken = a} :: ExportFormsResponse)++-- | The response's http status code.+exportFormsResponse_httpStatus :: Lens.Lens' ExportFormsResponse Prelude.Int+exportFormsResponse_httpStatus = Lens.lens (\ExportFormsResponse' {httpStatus} -> httpStatus) (\s@ExportFormsResponse' {} a -> s {httpStatus = a} :: ExportFormsResponse)++-- | Represents the configuration of the exported forms.+exportFormsResponse_entities :: Lens.Lens' ExportFormsResponse [Form]+exportFormsResponse_entities = Lens.lens (\ExportFormsResponse' {entities} -> entities) (\s@ExportFormsResponse' {} a -> s {entities = a} :: ExportFormsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ExportFormsResponse where+ rnf ExportFormsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf entities
+ gen/Amazonka/AmplifyUiBuilder/ExportThemes.hs view
@@ -0,0 +1,226 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.ExportThemes+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Exports theme configurations to code that is ready to integrate into an+-- Amplify app.+--+-- This operation returns paginated results.+module Amazonka.AmplifyUiBuilder.ExportThemes+ ( -- * Creating a Request+ ExportThemes (..),+ newExportThemes,++ -- * Request Lenses+ exportThemes_nextToken,+ exportThemes_appId,+ exportThemes_environmentName,++ -- * Destructuring the Response+ ExportThemesResponse (..),+ newExportThemesResponse,++ -- * Response Lenses+ exportThemesResponse_nextToken,+ exportThemesResponse_httpStatus,+ exportThemesResponse_entities,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newExportThemes' smart constructor.+data ExportThemes = ExportThemes'+ { -- | The token to request the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID of the Amplify app to export the themes to.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is part of the Amplify app.+ environmentName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportThemes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'exportThemes_nextToken' - The token to request the next page of results.+--+-- 'appId', 'exportThemes_appId' - The unique ID of the Amplify app to export the themes to.+--+-- 'environmentName', 'exportThemes_environmentName' - The name of the backend environment that is part of the Amplify app.+newExportThemes ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ ExportThemes+newExportThemes pAppId_ pEnvironmentName_ =+ ExportThemes'+ { nextToken = Prelude.Nothing,+ appId = pAppId_,+ environmentName = pEnvironmentName_+ }++-- | The token to request the next page of results.+exportThemes_nextToken :: Lens.Lens' ExportThemes (Prelude.Maybe Prelude.Text)+exportThemes_nextToken = Lens.lens (\ExportThemes' {nextToken} -> nextToken) (\s@ExportThemes' {} a -> s {nextToken = a} :: ExportThemes)++-- | The unique ID of the Amplify app to export the themes to.+exportThemes_appId :: Lens.Lens' ExportThemes Prelude.Text+exportThemes_appId = Lens.lens (\ExportThemes' {appId} -> appId) (\s@ExportThemes' {} a -> s {appId = a} :: ExportThemes)++-- | The name of the backend environment that is part of the Amplify app.+exportThemes_environmentName :: Lens.Lens' ExportThemes Prelude.Text+exportThemes_environmentName = Lens.lens (\ExportThemes' {environmentName} -> environmentName) (\s@ExportThemes' {} a -> s {environmentName = a} :: ExportThemes)++instance Core.AWSPager ExportThemes where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? exportThemesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ (rs Lens.^. exportThemesResponse_entities) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& exportThemes_nextToken+ Lens..~ rs+ Lens.^? exportThemesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ExportThemes where+ type AWSResponse ExportThemes = ExportThemesResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ExportThemesResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..?> "entities" Core..!@ Prelude.mempty)+ )++instance Prelude.Hashable ExportThemes where+ hashWithSalt _salt ExportThemes' {..} =+ _salt+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName++instance Prelude.NFData ExportThemes where+ rnf ExportThemes' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName++instance Data.ToHeaders ExportThemes where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ExportThemes where+ toPath ExportThemes' {..} =+ Prelude.mconcat+ [ "/export/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/themes"+ ]++instance Data.ToQuery ExportThemes where+ toQuery ExportThemes' {..} =+ Prelude.mconcat ["nextToken" Data.=: nextToken]++-- | /See:/ 'newExportThemesResponse' smart constructor.+data ExportThemesResponse = ExportThemesResponse'+ { -- | The pagination token that\'s included if more results are available.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Represents the configuration of the exported themes.+ entities :: [Theme]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExportThemesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'exportThemesResponse_nextToken' - The pagination token that\'s included if more results are available.+--+-- 'httpStatus', 'exportThemesResponse_httpStatus' - The response's http status code.+--+-- 'entities', 'exportThemesResponse_entities' - Represents the configuration of the exported themes.+newExportThemesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ExportThemesResponse+newExportThemesResponse pHttpStatus_ =+ ExportThemesResponse'+ { nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ entities = Prelude.mempty+ }++-- | The pagination token that\'s included if more results are available.+exportThemesResponse_nextToken :: Lens.Lens' ExportThemesResponse (Prelude.Maybe Prelude.Text)+exportThemesResponse_nextToken = Lens.lens (\ExportThemesResponse' {nextToken} -> nextToken) (\s@ExportThemesResponse' {} a -> s {nextToken = a} :: ExportThemesResponse)++-- | The response's http status code.+exportThemesResponse_httpStatus :: Lens.Lens' ExportThemesResponse Prelude.Int+exportThemesResponse_httpStatus = Lens.lens (\ExportThemesResponse' {httpStatus} -> httpStatus) (\s@ExportThemesResponse' {} a -> s {httpStatus = a} :: ExportThemesResponse)++-- | Represents the configuration of the exported themes.+exportThemesResponse_entities :: Lens.Lens' ExportThemesResponse [Theme]+exportThemesResponse_entities = Lens.lens (\ExportThemesResponse' {entities} -> entities) (\s@ExportThemesResponse' {} a -> s {entities = a} :: ExportThemesResponse) Prelude.. Lens.coerced++instance Prelude.NFData ExportThemesResponse where+ rnf ExportThemesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf entities
+ gen/Amazonka/AmplifyUiBuilder/GetComponent.hs view
@@ -0,0 +1,194 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.GetComponent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns an existing component for an Amplify app.+module Amazonka.AmplifyUiBuilder.GetComponent+ ( -- * Creating a Request+ GetComponent (..),+ newGetComponent,++ -- * Request Lenses+ getComponent_appId,+ getComponent_environmentName,+ getComponent_id,++ -- * Destructuring the Response+ GetComponentResponse (..),+ newGetComponentResponse,++ -- * Response Lenses+ getComponentResponse_component,+ getComponentResponse_httpStatus,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetComponent' smart constructor.+data GetComponent = GetComponent'+ { -- | The unique ID of the Amplify app.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The unique ID of the component.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetComponent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appId', 'getComponent_appId' - The unique ID of the Amplify app.+--+-- 'environmentName', 'getComponent_environmentName' - The name of the backend environment that is part of the Amplify app.+--+-- 'id', 'getComponent_id' - The unique ID of the component.+newGetComponent ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ GetComponent+newGetComponent pAppId_ pEnvironmentName_ pId_ =+ GetComponent'+ { appId = pAppId_,+ environmentName = pEnvironmentName_,+ id = pId_+ }++-- | The unique ID of the Amplify app.+getComponent_appId :: Lens.Lens' GetComponent Prelude.Text+getComponent_appId = Lens.lens (\GetComponent' {appId} -> appId) (\s@GetComponent' {} a -> s {appId = a} :: GetComponent)++-- | The name of the backend environment that is part of the Amplify app.+getComponent_environmentName :: Lens.Lens' GetComponent Prelude.Text+getComponent_environmentName = Lens.lens (\GetComponent' {environmentName} -> environmentName) (\s@GetComponent' {} a -> s {environmentName = a} :: GetComponent)++-- | The unique ID of the component.+getComponent_id :: Lens.Lens' GetComponent Prelude.Text+getComponent_id = Lens.lens (\GetComponent' {id} -> id) (\s@GetComponent' {} a -> s {id = a} :: GetComponent)++instance Core.AWSRequest GetComponent where+ type AWSResponse GetComponent = GetComponentResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetComponentResponse'+ Prelude.<$> (Data.eitherParseJSON x)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetComponent where+ hashWithSalt _salt GetComponent' {..} =+ _salt+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id++instance Prelude.NFData GetComponent where+ rnf GetComponent' {..} =+ Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders GetComponent where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetComponent where+ toPath GetComponent' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/components/",+ Data.toBS id+ ]++instance Data.ToQuery GetComponent where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetComponentResponse' smart constructor.+data GetComponentResponse = GetComponentResponse'+ { -- | Represents the configuration settings for the component.+ component :: Prelude.Maybe Component,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetComponentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'component', 'getComponentResponse_component' - Represents the configuration settings for the component.+--+-- 'httpStatus', 'getComponentResponse_httpStatus' - The response's http status code.+newGetComponentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetComponentResponse+newGetComponentResponse pHttpStatus_ =+ GetComponentResponse'+ { component = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Represents the configuration settings for the component.+getComponentResponse_component :: Lens.Lens' GetComponentResponse (Prelude.Maybe Component)+getComponentResponse_component = Lens.lens (\GetComponentResponse' {component} -> component) (\s@GetComponentResponse' {} a -> s {component = a} :: GetComponentResponse)++-- | The response's http status code.+getComponentResponse_httpStatus :: Lens.Lens' GetComponentResponse Prelude.Int+getComponentResponse_httpStatus = Lens.lens (\GetComponentResponse' {httpStatus} -> httpStatus) (\s@GetComponentResponse' {} a -> s {httpStatus = a} :: GetComponentResponse)++instance Prelude.NFData GetComponentResponse where+ rnf GetComponentResponse' {..} =+ Prelude.rnf component+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/AmplifyUiBuilder/GetForm.hs view
@@ -0,0 +1,194 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.GetForm+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns an existing form for an Amplify app.+module Amazonka.AmplifyUiBuilder.GetForm+ ( -- * Creating a Request+ GetForm (..),+ newGetForm,++ -- * Request Lenses+ getForm_appId,+ getForm_environmentName,+ getForm_id,++ -- * Destructuring the Response+ GetFormResponse (..),+ newGetFormResponse,++ -- * Response Lenses+ getFormResponse_form,+ getFormResponse_httpStatus,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetForm' smart constructor.+data GetForm = GetForm'+ { -- | The unique ID of the Amplify app.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The unique ID of the form.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetForm' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appId', 'getForm_appId' - The unique ID of the Amplify app.+--+-- 'environmentName', 'getForm_environmentName' - The name of the backend environment that is part of the Amplify app.+--+-- 'id', 'getForm_id' - The unique ID of the form.+newGetForm ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ GetForm+newGetForm pAppId_ pEnvironmentName_ pId_ =+ GetForm'+ { appId = pAppId_,+ environmentName = pEnvironmentName_,+ id = pId_+ }++-- | The unique ID of the Amplify app.+getForm_appId :: Lens.Lens' GetForm Prelude.Text+getForm_appId = Lens.lens (\GetForm' {appId} -> appId) (\s@GetForm' {} a -> s {appId = a} :: GetForm)++-- | The name of the backend environment that is part of the Amplify app.+getForm_environmentName :: Lens.Lens' GetForm Prelude.Text+getForm_environmentName = Lens.lens (\GetForm' {environmentName} -> environmentName) (\s@GetForm' {} a -> s {environmentName = a} :: GetForm)++-- | The unique ID of the form.+getForm_id :: Lens.Lens' GetForm Prelude.Text+getForm_id = Lens.lens (\GetForm' {id} -> id) (\s@GetForm' {} a -> s {id = a} :: GetForm)++instance Core.AWSRequest GetForm where+ type AWSResponse GetForm = GetFormResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetFormResponse'+ Prelude.<$> (Data.eitherParseJSON x)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetForm where+ hashWithSalt _salt GetForm' {..} =+ _salt+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id++instance Prelude.NFData GetForm where+ rnf GetForm' {..} =+ Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders GetForm where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetForm where+ toPath GetForm' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/forms/",+ Data.toBS id+ ]++instance Data.ToQuery GetForm where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetFormResponse' smart constructor.+data GetFormResponse = GetFormResponse'+ { -- | Represents the configuration settings for the form.+ form :: Prelude.Maybe Form,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetFormResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'form', 'getFormResponse_form' - Represents the configuration settings for the form.+--+-- 'httpStatus', 'getFormResponse_httpStatus' - The response's http status code.+newGetFormResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetFormResponse+newGetFormResponse pHttpStatus_ =+ GetFormResponse'+ { form = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Represents the configuration settings for the form.+getFormResponse_form :: Lens.Lens' GetFormResponse (Prelude.Maybe Form)+getFormResponse_form = Lens.lens (\GetFormResponse' {form} -> form) (\s@GetFormResponse' {} a -> s {form = a} :: GetFormResponse)++-- | The response's http status code.+getFormResponse_httpStatus :: Lens.Lens' GetFormResponse Prelude.Int+getFormResponse_httpStatus = Lens.lens (\GetFormResponse' {httpStatus} -> httpStatus) (\s@GetFormResponse' {} a -> s {httpStatus = a} :: GetFormResponse)++instance Prelude.NFData GetFormResponse where+ rnf GetFormResponse' {..} =+ Prelude.rnf form+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/AmplifyUiBuilder/GetMetadata.hs view
@@ -0,0 +1,179 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.GetMetadata+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns existing metadata for an Amplify app.+module Amazonka.AmplifyUiBuilder.GetMetadata+ ( -- * Creating a Request+ GetMetadata (..),+ newGetMetadata,++ -- * Request Lenses+ getMetadata_appId,+ getMetadata_environmentName,++ -- * Destructuring the Response+ GetMetadataResponse (..),+ newGetMetadataResponse,++ -- * Response Lenses+ getMetadataResponse_httpStatus,+ getMetadataResponse_features,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetMetadata' smart constructor.+data GetMetadata = GetMetadata'+ { -- | The unique ID of the Amplify app.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is part of the Amplify app.+ environmentName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetMetadata' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appId', 'getMetadata_appId' - The unique ID of the Amplify app.+--+-- 'environmentName', 'getMetadata_environmentName' - The name of the backend environment that is part of the Amplify app.+newGetMetadata ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ GetMetadata+newGetMetadata pAppId_ pEnvironmentName_ =+ GetMetadata'+ { appId = pAppId_,+ environmentName = pEnvironmentName_+ }++-- | The unique ID of the Amplify app.+getMetadata_appId :: Lens.Lens' GetMetadata Prelude.Text+getMetadata_appId = Lens.lens (\GetMetadata' {appId} -> appId) (\s@GetMetadata' {} a -> s {appId = a} :: GetMetadata)++-- | The name of the backend environment that is part of the Amplify app.+getMetadata_environmentName :: Lens.Lens' GetMetadata Prelude.Text+getMetadata_environmentName = Lens.lens (\GetMetadata' {environmentName} -> environmentName) (\s@GetMetadata' {} a -> s {environmentName = a} :: GetMetadata)++instance Core.AWSRequest GetMetadata where+ type AWSResponse GetMetadata = GetMetadataResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetMetadataResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..?> "features" Core..!@ Prelude.mempty)+ )++instance Prelude.Hashable GetMetadata where+ hashWithSalt _salt GetMetadata' {..} =+ _salt+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName++instance Prelude.NFData GetMetadata where+ rnf GetMetadata' {..} =+ Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName++instance Data.ToHeaders GetMetadata where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetMetadata where+ toPath GetMetadata' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/metadata"+ ]++instance Data.ToQuery GetMetadata where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetMetadataResponse' smart constructor.+data GetMetadataResponse = GetMetadataResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Represents the configuration settings for the features metadata.+ features :: Prelude.HashMap Prelude.Text Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetMetadataResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'getMetadataResponse_httpStatus' - The response's http status code.+--+-- 'features', 'getMetadataResponse_features' - Represents the configuration settings for the features metadata.+newGetMetadataResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetMetadataResponse+newGetMetadataResponse pHttpStatus_ =+ GetMetadataResponse'+ { httpStatus = pHttpStatus_,+ features = Prelude.mempty+ }++-- | The response's http status code.+getMetadataResponse_httpStatus :: Lens.Lens' GetMetadataResponse Prelude.Int+getMetadataResponse_httpStatus = Lens.lens (\GetMetadataResponse' {httpStatus} -> httpStatus) (\s@GetMetadataResponse' {} a -> s {httpStatus = a} :: GetMetadataResponse)++-- | Represents the configuration settings for the features metadata.+getMetadataResponse_features :: Lens.Lens' GetMetadataResponse (Prelude.HashMap Prelude.Text Prelude.Text)+getMetadataResponse_features = Lens.lens (\GetMetadataResponse' {features} -> features) (\s@GetMetadataResponse' {} a -> s {features = a} :: GetMetadataResponse) Prelude.. Lens.coerced++instance Prelude.NFData GetMetadataResponse where+ rnf GetMetadataResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf features
+ gen/Amazonka/AmplifyUiBuilder/GetTheme.hs view
@@ -0,0 +1,194 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.GetTheme+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns an existing theme for an Amplify app.+module Amazonka.AmplifyUiBuilder.GetTheme+ ( -- * Creating a Request+ GetTheme (..),+ newGetTheme,++ -- * Request Lenses+ getTheme_appId,+ getTheme_environmentName,+ getTheme_id,++ -- * Destructuring the Response+ GetThemeResponse (..),+ newGetThemeResponse,++ -- * Response Lenses+ getThemeResponse_theme,+ getThemeResponse_httpStatus,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetTheme' smart constructor.+data GetTheme = GetTheme'+ { -- | The unique ID of the Amplify app.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The unique ID for the theme.+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetTheme' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appId', 'getTheme_appId' - The unique ID of the Amplify app.+--+-- 'environmentName', 'getTheme_environmentName' - The name of the backend environment that is part of the Amplify app.+--+-- 'id', 'getTheme_id' - The unique ID for the theme.+newGetTheme ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ GetTheme+newGetTheme pAppId_ pEnvironmentName_ pId_ =+ GetTheme'+ { appId = pAppId_,+ environmentName = pEnvironmentName_,+ id = pId_+ }++-- | The unique ID of the Amplify app.+getTheme_appId :: Lens.Lens' GetTheme Prelude.Text+getTheme_appId = Lens.lens (\GetTheme' {appId} -> appId) (\s@GetTheme' {} a -> s {appId = a} :: GetTheme)++-- | The name of the backend environment that is part of the Amplify app.+getTheme_environmentName :: Lens.Lens' GetTheme Prelude.Text+getTheme_environmentName = Lens.lens (\GetTheme' {environmentName} -> environmentName) (\s@GetTheme' {} a -> s {environmentName = a} :: GetTheme)++-- | The unique ID for the theme.+getTheme_id :: Lens.Lens' GetTheme Prelude.Text+getTheme_id = Lens.lens (\GetTheme' {id} -> id) (\s@GetTheme' {} a -> s {id = a} :: GetTheme)++instance Core.AWSRequest GetTheme where+ type AWSResponse GetTheme = GetThemeResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetThemeResponse'+ Prelude.<$> (Data.eitherParseJSON x)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetTheme where+ hashWithSalt _salt GetTheme' {..} =+ _salt+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id++instance Prelude.NFData GetTheme where+ rnf GetTheme' {..} =+ Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders GetTheme where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetTheme where+ toPath GetTheme' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/themes/",+ Data.toBS id+ ]++instance Data.ToQuery GetTheme where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetThemeResponse' smart constructor.+data GetThemeResponse = GetThemeResponse'+ { -- | Represents the configuration settings for the theme.+ theme :: Prelude.Maybe Theme,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetThemeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'theme', 'getThemeResponse_theme' - Represents the configuration settings for the theme.+--+-- 'httpStatus', 'getThemeResponse_httpStatus' - The response's http status code.+newGetThemeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetThemeResponse+newGetThemeResponse pHttpStatus_ =+ GetThemeResponse'+ { theme = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Represents the configuration settings for the theme.+getThemeResponse_theme :: Lens.Lens' GetThemeResponse (Prelude.Maybe Theme)+getThemeResponse_theme = Lens.lens (\GetThemeResponse' {theme} -> theme) (\s@GetThemeResponse' {} a -> s {theme = a} :: GetThemeResponse)++-- | The response's http status code.+getThemeResponse_httpStatus :: Lens.Lens' GetThemeResponse Prelude.Int+getThemeResponse_httpStatus = Lens.lens (\GetThemeResponse' {httpStatus} -> httpStatus) (\s@GetThemeResponse' {} a -> s {httpStatus = a} :: GetThemeResponse)++instance Prelude.NFData GetThemeResponse where+ rnf GetThemeResponse' {..} =+ Prelude.rnf theme+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/AmplifyUiBuilder/Lens.hs view
@@ -0,0 +1,570 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Lens+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Lens+ ( -- * Operations++ -- ** CreateComponent+ createComponent_clientToken,+ createComponent_appId,+ createComponent_componentToCreate,+ createComponent_environmentName,+ createComponentResponse_entity,+ createComponentResponse_httpStatus,++ -- ** CreateForm+ createForm_clientToken,+ createForm_appId,+ createForm_environmentName,+ createForm_formToCreate,+ createFormResponse_entity,+ createFormResponse_httpStatus,++ -- ** CreateTheme+ createTheme_clientToken,+ createTheme_appId,+ createTheme_environmentName,+ createTheme_themeToCreate,+ createThemeResponse_entity,+ createThemeResponse_httpStatus,++ -- ** DeleteComponent+ deleteComponent_appId,+ deleteComponent_environmentName,+ deleteComponent_id,++ -- ** DeleteForm+ deleteForm_appId,+ deleteForm_environmentName,+ deleteForm_id,++ -- ** DeleteTheme+ deleteTheme_appId,+ deleteTheme_environmentName,+ deleteTheme_id,++ -- ** ExchangeCodeForToken+ exchangeCodeForToken_provider,+ exchangeCodeForToken_request,+ exchangeCodeForTokenResponse_httpStatus,+ exchangeCodeForTokenResponse_accessToken,+ exchangeCodeForTokenResponse_expiresIn,+ exchangeCodeForTokenResponse_refreshToken,++ -- ** ExportComponents+ exportComponents_nextToken,+ exportComponents_appId,+ exportComponents_environmentName,+ exportComponentsResponse_nextToken,+ exportComponentsResponse_httpStatus,+ exportComponentsResponse_entities,++ -- ** ExportForms+ exportForms_nextToken,+ exportForms_appId,+ exportForms_environmentName,+ exportFormsResponse_nextToken,+ exportFormsResponse_httpStatus,+ exportFormsResponse_entities,++ -- ** ExportThemes+ exportThemes_nextToken,+ exportThemes_appId,+ exportThemes_environmentName,+ exportThemesResponse_nextToken,+ exportThemesResponse_httpStatus,+ exportThemesResponse_entities,++ -- ** GetComponent+ getComponent_appId,+ getComponent_environmentName,+ getComponent_id,+ getComponentResponse_component,+ getComponentResponse_httpStatus,++ -- ** GetForm+ getForm_appId,+ getForm_environmentName,+ getForm_id,+ getFormResponse_form,+ getFormResponse_httpStatus,++ -- ** GetMetadata+ getMetadata_appId,+ getMetadata_environmentName,+ getMetadataResponse_httpStatus,+ getMetadataResponse_features,++ -- ** GetTheme+ getTheme_appId,+ getTheme_environmentName,+ getTheme_id,+ getThemeResponse_theme,+ getThemeResponse_httpStatus,++ -- ** ListComponents+ listComponents_maxResults,+ listComponents_nextToken,+ listComponents_appId,+ listComponents_environmentName,+ listComponentsResponse_nextToken,+ listComponentsResponse_httpStatus,+ listComponentsResponse_entities,++ -- ** ListForms+ listForms_maxResults,+ listForms_nextToken,+ listForms_appId,+ listForms_environmentName,+ listFormsResponse_nextToken,+ listFormsResponse_httpStatus,+ listFormsResponse_entities,++ -- ** ListThemes+ listThemes_maxResults,+ listThemes_nextToken,+ listThemes_appId,+ listThemes_environmentName,+ listThemesResponse_nextToken,+ listThemesResponse_httpStatus,+ listThemesResponse_entities,++ -- ** PutMetadataFlag+ putMetadataFlag_appId,+ putMetadataFlag_body,+ putMetadataFlag_environmentName,+ putMetadataFlag_featureName,++ -- ** RefreshToken+ refreshToken_provider,+ refreshToken_refreshTokenBody,+ refreshTokenResponse_httpStatus,+ refreshTokenResponse_accessToken,+ refreshTokenResponse_expiresIn,++ -- ** UpdateComponent+ updateComponent_clientToken,+ updateComponent_appId,+ updateComponent_environmentName,+ updateComponent_id,+ updateComponent_updatedComponent,+ updateComponentResponse_entity,+ updateComponentResponse_httpStatus,++ -- ** UpdateForm+ updateForm_clientToken,+ updateForm_appId,+ updateForm_environmentName,+ updateForm_id,+ updateForm_updatedForm,+ updateFormResponse_entity,+ updateFormResponse_httpStatus,++ -- ** UpdateTheme+ updateTheme_clientToken,+ updateTheme_appId,+ updateTheme_environmentName,+ updateTheme_id,+ updateTheme_updatedTheme,+ updateThemeResponse_entity,+ updateThemeResponse_httpStatus,++ -- * Types++ -- ** ActionParameters+ actionParameters_anchor,+ actionParameters_fields,+ actionParameters_global,+ actionParameters_id,+ actionParameters_model,+ actionParameters_state,+ actionParameters_target,+ actionParameters_type,+ actionParameters_url,++ -- ** Component+ component_children,+ component_collectionProperties,+ component_events,+ component_modifiedAt,+ component_schemaVersion,+ component_sourceId,+ component_tags,+ component_appId,+ component_bindingProperties,+ component_componentType,+ component_createdAt,+ component_environmentName,+ component_id,+ component_name,+ component_overrides,+ component_properties,+ component_variants,++ -- ** ComponentBindingPropertiesValue+ componentBindingPropertiesValue_bindingProperties,+ componentBindingPropertiesValue_defaultValue,+ componentBindingPropertiesValue_type,++ -- ** ComponentBindingPropertiesValueProperties+ componentBindingPropertiesValueProperties_bucket,+ componentBindingPropertiesValueProperties_defaultValue,+ componentBindingPropertiesValueProperties_field,+ componentBindingPropertiesValueProperties_key,+ componentBindingPropertiesValueProperties_model,+ componentBindingPropertiesValueProperties_predicates,+ componentBindingPropertiesValueProperties_slotName,+ componentBindingPropertiesValueProperties_userAttribute,++ -- ** ComponentChild+ componentChild_children,+ componentChild_events,+ componentChild_sourceId,+ componentChild_componentType,+ componentChild_name,+ componentChild_properties,++ -- ** ComponentConditionProperty+ componentConditionProperty_else,+ componentConditionProperty_field,+ componentConditionProperty_operand,+ componentConditionProperty_operandType,+ componentConditionProperty_operator,+ componentConditionProperty_property,+ componentConditionProperty_then,++ -- ** ComponentDataConfiguration+ componentDataConfiguration_identifiers,+ componentDataConfiguration_predicate,+ componentDataConfiguration_sort,+ componentDataConfiguration_model,++ -- ** ComponentEvent+ componentEvent_action,+ componentEvent_bindingEvent,+ componentEvent_parameters,++ -- ** ComponentProperty+ componentProperty_bindingProperties,+ componentProperty_bindings,+ componentProperty_collectionBindingProperties,+ componentProperty_componentName,+ componentProperty_concat,+ componentProperty_condition,+ componentProperty_configured,+ componentProperty_defaultValue,+ componentProperty_event,+ componentProperty_importedValue,+ componentProperty_model,+ componentProperty_property,+ componentProperty_type,+ componentProperty_userAttribute,+ componentProperty_value,++ -- ** ComponentPropertyBindingProperties+ componentPropertyBindingProperties_field,+ componentPropertyBindingProperties_property,++ -- ** ComponentSummary+ componentSummary_appId,+ componentSummary_componentType,+ componentSummary_environmentName,+ componentSummary_id,+ componentSummary_name,++ -- ** ComponentVariant+ componentVariant_overrides,+ componentVariant_variantValues,++ -- ** CreateComponentData+ createComponentData_children,+ createComponentData_collectionProperties,+ createComponentData_events,+ createComponentData_schemaVersion,+ createComponentData_sourceId,+ createComponentData_tags,+ createComponentData_bindingProperties,+ createComponentData_componentType,+ createComponentData_name,+ createComponentData_overrides,+ createComponentData_properties,+ createComponentData_variants,++ -- ** CreateFormData+ createFormData_cta,+ createFormData_tags,+ createFormData_dataType,+ createFormData_fields,+ createFormData_formActionType,+ createFormData_name,+ createFormData_schemaVersion,+ createFormData_sectionalElements,+ createFormData_style,++ -- ** CreateThemeData+ createThemeData_overrides,+ createThemeData_tags,+ createThemeData_name,+ createThemeData_values,++ -- ** ExchangeCodeForTokenRequestBody+ exchangeCodeForTokenRequestBody_code,+ exchangeCodeForTokenRequestBody_redirectUri,++ -- ** FieldConfig+ fieldConfig_excluded,+ fieldConfig_inputType,+ fieldConfig_label,+ fieldConfig_position,+ fieldConfig_validations,++ -- ** FieldInputConfig+ fieldInputConfig_defaultChecked,+ fieldInputConfig_defaultCountryCode,+ fieldInputConfig_defaultValue,+ fieldInputConfig_descriptiveText,+ fieldInputConfig_isArray,+ fieldInputConfig_maxValue,+ fieldInputConfig_minValue,+ fieldInputConfig_name,+ fieldInputConfig_placeholder,+ fieldInputConfig_readOnly,+ fieldInputConfig_required,+ fieldInputConfig_step,+ fieldInputConfig_value,+ fieldInputConfig_valueMappings,+ fieldInputConfig_type,++ -- ** FieldPosition+ fieldPosition_below,+ fieldPosition_fixed,+ fieldPosition_rightOf,++ -- ** FieldValidationConfiguration+ fieldValidationConfiguration_numValues,+ fieldValidationConfiguration_strValues,+ fieldValidationConfiguration_validationMessage,+ fieldValidationConfiguration_type,++ -- ** Form+ form_cta,+ form_tags,+ form_appId,+ form_dataType,+ form_environmentName,+ form_fields,+ form_formActionType,+ form_id,+ form_name,+ form_schemaVersion,+ form_sectionalElements,+ form_style,++ -- ** FormBindingElement+ formBindingElement_element,+ formBindingElement_property,++ -- ** FormButton+ formButton_children,+ formButton_excluded,+ formButton_position,++ -- ** FormCTA+ formCTA_cancel,+ formCTA_clear,+ formCTA_position,+ formCTA_submit,++ -- ** FormDataTypeConfig+ formDataTypeConfig_dataSourceType,+ formDataTypeConfig_dataTypeName,++ -- ** FormInputValueProperty+ formInputValueProperty_value,++ -- ** FormStyle+ formStyle_horizontalGap,+ formStyle_outerPadding,+ formStyle_verticalGap,++ -- ** FormStyleConfig+ formStyleConfig_tokenReference,+ formStyleConfig_value,++ -- ** FormSummary+ formSummary_appId,+ formSummary_dataType,+ formSummary_environmentName,+ formSummary_formActionType,+ formSummary_id,+ formSummary_name,++ -- ** MutationActionSetStateParameter+ mutationActionSetStateParameter_componentName,+ mutationActionSetStateParameter_property,+ mutationActionSetStateParameter_set,++ -- ** Predicate+ predicate_and,+ predicate_field,+ predicate_operand,+ predicate_operator,+ predicate_or,++ -- ** PutMetadataFlagBody+ putMetadataFlagBody_newValue,++ -- ** RefreshTokenRequestBody+ refreshTokenRequestBody_token,++ -- ** SectionalElement+ sectionalElement_level,+ sectionalElement_orientation,+ sectionalElement_position,+ sectionalElement_text,+ sectionalElement_type,++ -- ** SortProperty+ sortProperty_direction,+ sortProperty_field,++ -- ** Theme+ theme_modifiedAt,+ theme_overrides,+ theme_tags,+ theme_appId,+ theme_createdAt,+ theme_environmentName,+ theme_id,+ theme_name,+ theme_values,++ -- ** ThemeSummary+ themeSummary_appId,+ themeSummary_environmentName,+ themeSummary_id,+ themeSummary_name,++ -- ** ThemeValue+ themeValue_children,+ themeValue_value,++ -- ** ThemeValues+ themeValues_key,+ themeValues_value,++ -- ** UpdateComponentData+ updateComponentData_bindingProperties,+ updateComponentData_children,+ updateComponentData_collectionProperties,+ updateComponentData_componentType,+ updateComponentData_events,+ updateComponentData_id,+ updateComponentData_name,+ updateComponentData_overrides,+ updateComponentData_properties,+ updateComponentData_schemaVersion,+ updateComponentData_sourceId,+ updateComponentData_variants,++ -- ** UpdateFormData+ updateFormData_cta,+ updateFormData_dataType,+ updateFormData_fields,+ updateFormData_formActionType,+ updateFormData_name,+ updateFormData_schemaVersion,+ updateFormData_sectionalElements,+ updateFormData_style,++ -- ** UpdateThemeData+ updateThemeData_id,+ updateThemeData_name,+ updateThemeData_overrides,+ updateThemeData_values,++ -- ** ValueMapping+ valueMapping_displayValue,+ valueMapping_value,++ -- ** ValueMappings+ valueMappings_values,+ )+where++import Amazonka.AmplifyUiBuilder.CreateComponent+import Amazonka.AmplifyUiBuilder.CreateForm+import Amazonka.AmplifyUiBuilder.CreateTheme+import Amazonka.AmplifyUiBuilder.DeleteComponent+import Amazonka.AmplifyUiBuilder.DeleteForm+import Amazonka.AmplifyUiBuilder.DeleteTheme+import Amazonka.AmplifyUiBuilder.ExchangeCodeForToken+import Amazonka.AmplifyUiBuilder.ExportComponents+import Amazonka.AmplifyUiBuilder.ExportForms+import Amazonka.AmplifyUiBuilder.ExportThemes+import Amazonka.AmplifyUiBuilder.GetComponent+import Amazonka.AmplifyUiBuilder.GetForm+import Amazonka.AmplifyUiBuilder.GetMetadata+import Amazonka.AmplifyUiBuilder.GetTheme+import Amazonka.AmplifyUiBuilder.ListComponents+import Amazonka.AmplifyUiBuilder.ListForms+import Amazonka.AmplifyUiBuilder.ListThemes+import Amazonka.AmplifyUiBuilder.PutMetadataFlag+import Amazonka.AmplifyUiBuilder.RefreshToken+import Amazonka.AmplifyUiBuilder.Types.ActionParameters+import Amazonka.AmplifyUiBuilder.Types.Component+import Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValue+import Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValueProperties+import Amazonka.AmplifyUiBuilder.Types.ComponentChild+import Amazonka.AmplifyUiBuilder.Types.ComponentConditionProperty+import Amazonka.AmplifyUiBuilder.Types.ComponentDataConfiguration+import Amazonka.AmplifyUiBuilder.Types.ComponentEvent+import Amazonka.AmplifyUiBuilder.Types.ComponentProperty+import Amazonka.AmplifyUiBuilder.Types.ComponentPropertyBindingProperties+import Amazonka.AmplifyUiBuilder.Types.ComponentSummary+import Amazonka.AmplifyUiBuilder.Types.ComponentVariant+import Amazonka.AmplifyUiBuilder.Types.CreateComponentData+import Amazonka.AmplifyUiBuilder.Types.CreateFormData+import Amazonka.AmplifyUiBuilder.Types.CreateThemeData+import Amazonka.AmplifyUiBuilder.Types.ExchangeCodeForTokenRequestBody+import Amazonka.AmplifyUiBuilder.Types.FieldConfig+import Amazonka.AmplifyUiBuilder.Types.FieldInputConfig+import Amazonka.AmplifyUiBuilder.Types.FieldPosition+import Amazonka.AmplifyUiBuilder.Types.FieldValidationConfiguration+import Amazonka.AmplifyUiBuilder.Types.Form+import Amazonka.AmplifyUiBuilder.Types.FormBindingElement+import Amazonka.AmplifyUiBuilder.Types.FormButton+import Amazonka.AmplifyUiBuilder.Types.FormCTA+import Amazonka.AmplifyUiBuilder.Types.FormDataTypeConfig+import Amazonka.AmplifyUiBuilder.Types.FormInputValueProperty+import Amazonka.AmplifyUiBuilder.Types.FormStyle+import Amazonka.AmplifyUiBuilder.Types.FormStyleConfig+import Amazonka.AmplifyUiBuilder.Types.FormSummary+import Amazonka.AmplifyUiBuilder.Types.MutationActionSetStateParameter+import Amazonka.AmplifyUiBuilder.Types.Predicate+import Amazonka.AmplifyUiBuilder.Types.PutMetadataFlagBody+import Amazonka.AmplifyUiBuilder.Types.RefreshTokenRequestBody+import Amazonka.AmplifyUiBuilder.Types.SectionalElement+import Amazonka.AmplifyUiBuilder.Types.SortProperty+import Amazonka.AmplifyUiBuilder.Types.Theme+import Amazonka.AmplifyUiBuilder.Types.ThemeSummary+import Amazonka.AmplifyUiBuilder.Types.ThemeValue+import Amazonka.AmplifyUiBuilder.Types.ThemeValues+import Amazonka.AmplifyUiBuilder.Types.UpdateComponentData+import Amazonka.AmplifyUiBuilder.Types.UpdateFormData+import Amazonka.AmplifyUiBuilder.Types.UpdateThemeData+import Amazonka.AmplifyUiBuilder.Types.ValueMapping+import Amazonka.AmplifyUiBuilder.Types.ValueMappings+import Amazonka.AmplifyUiBuilder.UpdateComponent+import Amazonka.AmplifyUiBuilder.UpdateForm+import Amazonka.AmplifyUiBuilder.UpdateTheme
+ gen/Amazonka/AmplifyUiBuilder/ListComponents.hs view
@@ -0,0 +1,244 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.ListComponents+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a list of components for a specified Amplify app and backend+-- environment.+--+-- This operation returns paginated results.+module Amazonka.AmplifyUiBuilder.ListComponents+ ( -- * Creating a Request+ ListComponents (..),+ newListComponents,++ -- * Request Lenses+ listComponents_maxResults,+ listComponents_nextToken,+ listComponents_appId,+ listComponents_environmentName,++ -- * Destructuring the Response+ ListComponentsResponse (..),+ newListComponentsResponse,++ -- * Response Lenses+ listComponentsResponse_nextToken,+ listComponentsResponse_httpStatus,+ listComponentsResponse_entities,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListComponents' smart constructor.+data ListComponents = ListComponents'+ { -- | The maximum number of components to retrieve.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token to request the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID for the Amplify app.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListComponents' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listComponents_maxResults' - The maximum number of components to retrieve.+--+-- 'nextToken', 'listComponents_nextToken' - The token to request the next page of results.+--+-- 'appId', 'listComponents_appId' - The unique ID for the Amplify app.+--+-- 'environmentName', 'listComponents_environmentName' - The name of the backend environment that is a part of the Amplify app.+newListComponents ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ ListComponents+newListComponents pAppId_ pEnvironmentName_ =+ ListComponents'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ appId = pAppId_,+ environmentName = pEnvironmentName_+ }++-- | The maximum number of components to retrieve.+listComponents_maxResults :: Lens.Lens' ListComponents (Prelude.Maybe Prelude.Natural)+listComponents_maxResults = Lens.lens (\ListComponents' {maxResults} -> maxResults) (\s@ListComponents' {} a -> s {maxResults = a} :: ListComponents)++-- | The token to request the next page of results.+listComponents_nextToken :: Lens.Lens' ListComponents (Prelude.Maybe Prelude.Text)+listComponents_nextToken = Lens.lens (\ListComponents' {nextToken} -> nextToken) (\s@ListComponents' {} a -> s {nextToken = a} :: ListComponents)++-- | The unique ID for the Amplify app.+listComponents_appId :: Lens.Lens' ListComponents Prelude.Text+listComponents_appId = Lens.lens (\ListComponents' {appId} -> appId) (\s@ListComponents' {} a -> s {appId = a} :: ListComponents)++-- | The name of the backend environment that is a part of the Amplify app.+listComponents_environmentName :: Lens.Lens' ListComponents Prelude.Text+listComponents_environmentName = Lens.lens (\ListComponents' {environmentName} -> environmentName) (\s@ListComponents' {} a -> s {environmentName = a} :: ListComponents)++instance Core.AWSPager ListComponents where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listComponentsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ (rs Lens.^. listComponentsResponse_entities) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listComponents_nextToken+ Lens..~ rs+ Lens.^? listComponentsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListComponents where+ type+ AWSResponse ListComponents =+ ListComponentsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListComponentsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..?> "entities" Core..!@ Prelude.mempty)+ )++instance Prelude.Hashable ListComponents where+ hashWithSalt _salt ListComponents' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName++instance Prelude.NFData ListComponents where+ rnf ListComponents' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName++instance Data.ToHeaders ListComponents where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListComponents where+ toPath ListComponents' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/components"+ ]++instance Data.ToQuery ListComponents where+ toQuery ListComponents' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListComponentsResponse' smart constructor.+data ListComponentsResponse = ListComponentsResponse'+ { -- | The pagination token that\'s included if more results are available.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of components for the Amplify app.+ entities :: [ComponentSummary]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListComponentsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listComponentsResponse_nextToken' - The pagination token that\'s included if more results are available.+--+-- 'httpStatus', 'listComponentsResponse_httpStatus' - The response's http status code.+--+-- 'entities', 'listComponentsResponse_entities' - The list of components for the Amplify app.+newListComponentsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListComponentsResponse+newListComponentsResponse pHttpStatus_ =+ ListComponentsResponse'+ { nextToken =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ entities = Prelude.mempty+ }++-- | The pagination token that\'s included if more results are available.+listComponentsResponse_nextToken :: Lens.Lens' ListComponentsResponse (Prelude.Maybe Prelude.Text)+listComponentsResponse_nextToken = Lens.lens (\ListComponentsResponse' {nextToken} -> nextToken) (\s@ListComponentsResponse' {} a -> s {nextToken = a} :: ListComponentsResponse)++-- | The response's http status code.+listComponentsResponse_httpStatus :: Lens.Lens' ListComponentsResponse Prelude.Int+listComponentsResponse_httpStatus = Lens.lens (\ListComponentsResponse' {httpStatus} -> httpStatus) (\s@ListComponentsResponse' {} a -> s {httpStatus = a} :: ListComponentsResponse)++-- | The list of components for the Amplify app.+listComponentsResponse_entities :: Lens.Lens' ListComponentsResponse [ComponentSummary]+listComponentsResponse_entities = Lens.lens (\ListComponentsResponse' {entities} -> entities) (\s@ListComponentsResponse' {} a -> s {entities = a} :: ListComponentsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListComponentsResponse where+ rnf ListComponentsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf entities
+ gen/Amazonka/AmplifyUiBuilder/ListForms.hs view
@@ -0,0 +1,240 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.ListForms+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a list of forms for a specified Amplify app and backend+-- environment.+--+-- This operation returns paginated results.+module Amazonka.AmplifyUiBuilder.ListForms+ ( -- * Creating a Request+ ListForms (..),+ newListForms,++ -- * Request Lenses+ listForms_maxResults,+ listForms_nextToken,+ listForms_appId,+ listForms_environmentName,++ -- * Destructuring the Response+ ListFormsResponse (..),+ newListFormsResponse,++ -- * Response Lenses+ listFormsResponse_nextToken,+ listFormsResponse_httpStatus,+ listFormsResponse_entities,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListForms' smart constructor.+data ListForms = ListForms'+ { -- | The maximum number of forms to retrieve.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token to request the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID for the Amplify app.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListForms' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listForms_maxResults' - The maximum number of forms to retrieve.+--+-- 'nextToken', 'listForms_nextToken' - The token to request the next page of results.+--+-- 'appId', 'listForms_appId' - The unique ID for the Amplify app.+--+-- 'environmentName', 'listForms_environmentName' - The name of the backend environment that is a part of the Amplify app.+newListForms ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ ListForms+newListForms pAppId_ pEnvironmentName_ =+ ListForms'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ appId = pAppId_,+ environmentName = pEnvironmentName_+ }++-- | The maximum number of forms to retrieve.+listForms_maxResults :: Lens.Lens' ListForms (Prelude.Maybe Prelude.Natural)+listForms_maxResults = Lens.lens (\ListForms' {maxResults} -> maxResults) (\s@ListForms' {} a -> s {maxResults = a} :: ListForms)++-- | The token to request the next page of results.+listForms_nextToken :: Lens.Lens' ListForms (Prelude.Maybe Prelude.Text)+listForms_nextToken = Lens.lens (\ListForms' {nextToken} -> nextToken) (\s@ListForms' {} a -> s {nextToken = a} :: ListForms)++-- | The unique ID for the Amplify app.+listForms_appId :: Lens.Lens' ListForms Prelude.Text+listForms_appId = Lens.lens (\ListForms' {appId} -> appId) (\s@ListForms' {} a -> s {appId = a} :: ListForms)++-- | The name of the backend environment that is a part of the Amplify app.+listForms_environmentName :: Lens.Lens' ListForms Prelude.Text+listForms_environmentName = Lens.lens (\ListForms' {environmentName} -> environmentName) (\s@ListForms' {} a -> s {environmentName = a} :: ListForms)++instance Core.AWSPager ListForms where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listFormsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop (rs Lens.^. listFormsResponse_entities) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listForms_nextToken+ Lens..~ rs+ Lens.^? listFormsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListForms where+ type AWSResponse ListForms = ListFormsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListFormsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..?> "entities" Core..!@ Prelude.mempty)+ )++instance Prelude.Hashable ListForms where+ hashWithSalt _salt ListForms' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName++instance Prelude.NFData ListForms where+ rnf ListForms' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName++instance Data.ToHeaders ListForms where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListForms where+ toPath ListForms' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/forms"+ ]++instance Data.ToQuery ListForms where+ toQuery ListForms' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListFormsResponse' smart constructor.+data ListFormsResponse = ListFormsResponse'+ { -- | The pagination token that\'s included if more results are available.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of forms for the Amplify app.+ entities :: [FormSummary]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListFormsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listFormsResponse_nextToken' - The pagination token that\'s included if more results are available.+--+-- 'httpStatus', 'listFormsResponse_httpStatus' - The response's http status code.+--+-- 'entities', 'listFormsResponse_entities' - The list of forms for the Amplify app.+newListFormsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListFormsResponse+newListFormsResponse pHttpStatus_ =+ ListFormsResponse'+ { nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ entities = Prelude.mempty+ }++-- | The pagination token that\'s included if more results are available.+listFormsResponse_nextToken :: Lens.Lens' ListFormsResponse (Prelude.Maybe Prelude.Text)+listFormsResponse_nextToken = Lens.lens (\ListFormsResponse' {nextToken} -> nextToken) (\s@ListFormsResponse' {} a -> s {nextToken = a} :: ListFormsResponse)++-- | The response's http status code.+listFormsResponse_httpStatus :: Lens.Lens' ListFormsResponse Prelude.Int+listFormsResponse_httpStatus = Lens.lens (\ListFormsResponse' {httpStatus} -> httpStatus) (\s@ListFormsResponse' {} a -> s {httpStatus = a} :: ListFormsResponse)++-- | The list of forms for the Amplify app.+listFormsResponse_entities :: Lens.Lens' ListFormsResponse [FormSummary]+listFormsResponse_entities = Lens.lens (\ListFormsResponse' {entities} -> entities) (\s@ListFormsResponse' {} a -> s {entities = a} :: ListFormsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListFormsResponse where+ rnf ListFormsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf entities
+ gen/Amazonka/AmplifyUiBuilder/ListThemes.hs view
@@ -0,0 +1,240 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.ListThemes+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a list of themes for a specified Amplify app and backend+-- environment.+--+-- This operation returns paginated results.+module Amazonka.AmplifyUiBuilder.ListThemes+ ( -- * Creating a Request+ ListThemes (..),+ newListThemes,++ -- * Request Lenses+ listThemes_maxResults,+ listThemes_nextToken,+ listThemes_appId,+ listThemes_environmentName,++ -- * Destructuring the Response+ ListThemesResponse (..),+ newListThemesResponse,++ -- * Response Lenses+ listThemesResponse_nextToken,+ listThemesResponse_httpStatus,+ listThemesResponse_entities,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListThemes' smart constructor.+data ListThemes = ListThemes'+ { -- | The maximum number of theme results to return in the response.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token to request the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID for the Amplify app.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListThemes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listThemes_maxResults' - The maximum number of theme results to return in the response.+--+-- 'nextToken', 'listThemes_nextToken' - The token to request the next page of results.+--+-- 'appId', 'listThemes_appId' - The unique ID for the Amplify app.+--+-- 'environmentName', 'listThemes_environmentName' - The name of the backend environment that is a part of the Amplify app.+newListThemes ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ ListThemes+newListThemes pAppId_ pEnvironmentName_ =+ ListThemes'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ appId = pAppId_,+ environmentName = pEnvironmentName_+ }++-- | The maximum number of theme results to return in the response.+listThemes_maxResults :: Lens.Lens' ListThemes (Prelude.Maybe Prelude.Natural)+listThemes_maxResults = Lens.lens (\ListThemes' {maxResults} -> maxResults) (\s@ListThemes' {} a -> s {maxResults = a} :: ListThemes)++-- | The token to request the next page of results.+listThemes_nextToken :: Lens.Lens' ListThemes (Prelude.Maybe Prelude.Text)+listThemes_nextToken = Lens.lens (\ListThemes' {nextToken} -> nextToken) (\s@ListThemes' {} a -> s {nextToken = a} :: ListThemes)++-- | The unique ID for the Amplify app.+listThemes_appId :: Lens.Lens' ListThemes Prelude.Text+listThemes_appId = Lens.lens (\ListThemes' {appId} -> appId) (\s@ListThemes' {} a -> s {appId = a} :: ListThemes)++-- | The name of the backend environment that is a part of the Amplify app.+listThemes_environmentName :: Lens.Lens' ListThemes Prelude.Text+listThemes_environmentName = Lens.lens (\ListThemes' {environmentName} -> environmentName) (\s@ListThemes' {} a -> s {environmentName = a} :: ListThemes)++instance Core.AWSPager ListThemes where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listThemesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop (rs Lens.^. listThemesResponse_entities) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listThemes_nextToken+ Lens..~ rs+ Lens.^? listThemesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListThemes where+ type AWSResponse ListThemes = ListThemesResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListThemesResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..?> "entities" Core..!@ Prelude.mempty)+ )++instance Prelude.Hashable ListThemes where+ hashWithSalt _salt ListThemes' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName++instance Prelude.NFData ListThemes where+ rnf ListThemes' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName++instance Data.ToHeaders ListThemes where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListThemes where+ toPath ListThemes' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/themes"+ ]++instance Data.ToQuery ListThemes where+ toQuery ListThemes' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListThemesResponse' smart constructor.+data ListThemesResponse = ListThemesResponse'+ { -- | The pagination token that\'s returned if more results are available.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of themes for the Amplify app.+ entities :: [ThemeSummary]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListThemesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listThemesResponse_nextToken' - The pagination token that\'s returned if more results are available.+--+-- 'httpStatus', 'listThemesResponse_httpStatus' - The response's http status code.+--+-- 'entities', 'listThemesResponse_entities' - The list of themes for the Amplify app.+newListThemesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListThemesResponse+newListThemesResponse pHttpStatus_ =+ ListThemesResponse'+ { nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ entities = Prelude.mempty+ }++-- | The pagination token that\'s returned if more results are available.+listThemesResponse_nextToken :: Lens.Lens' ListThemesResponse (Prelude.Maybe Prelude.Text)+listThemesResponse_nextToken = Lens.lens (\ListThemesResponse' {nextToken} -> nextToken) (\s@ListThemesResponse' {} a -> s {nextToken = a} :: ListThemesResponse)++-- | The response's http status code.+listThemesResponse_httpStatus :: Lens.Lens' ListThemesResponse Prelude.Int+listThemesResponse_httpStatus = Lens.lens (\ListThemesResponse' {httpStatus} -> httpStatus) (\s@ListThemesResponse' {} a -> s {httpStatus = a} :: ListThemesResponse)++-- | The list of themes for the Amplify app.+listThemesResponse_entities :: Lens.Lens' ListThemesResponse [ThemeSummary]+listThemesResponse_entities = Lens.lens (\ListThemesResponse' {entities} -> entities) (\s@ListThemesResponse' {} a -> s {entities = a} :: ListThemesResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListThemesResponse where+ rnf ListThemesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf entities
+ gen/Amazonka/AmplifyUiBuilder/PutMetadataFlag.hs view
@@ -0,0 +1,182 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.PutMetadataFlag+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Stores the metadata information about a feature on a form or view.+module Amazonka.AmplifyUiBuilder.PutMetadataFlag+ ( -- * Creating a Request+ PutMetadataFlag (..),+ newPutMetadataFlag,++ -- * Request Lenses+ putMetadataFlag_appId,+ putMetadataFlag_body,+ putMetadataFlag_environmentName,+ putMetadataFlag_featureName,++ -- * Destructuring the Response+ PutMetadataFlagResponse (..),+ newPutMetadataFlagResponse,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newPutMetadataFlag' smart constructor.+data PutMetadataFlag = PutMetadataFlag'+ { -- | The unique ID for the Amplify app.+ appId :: Prelude.Text,+ -- | The metadata information to store.+ body :: PutMetadataFlagBody,+ -- | The name of the backend environment that is part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The name of the feature associated with the metadata.+ featureName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutMetadataFlag' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appId', 'putMetadataFlag_appId' - The unique ID for the Amplify app.+--+-- 'body', 'putMetadataFlag_body' - The metadata information to store.+--+-- 'environmentName', 'putMetadataFlag_environmentName' - The name of the backend environment that is part of the Amplify app.+--+-- 'featureName', 'putMetadataFlag_featureName' - The name of the feature associated with the metadata.+newPutMetadataFlag ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'body'+ PutMetadataFlagBody ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'featureName'+ Prelude.Text ->+ PutMetadataFlag+newPutMetadataFlag+ pAppId_+ pBody_+ pEnvironmentName_+ pFeatureName_ =+ PutMetadataFlag'+ { appId = pAppId_,+ body = pBody_,+ environmentName = pEnvironmentName_,+ featureName = pFeatureName_+ }++-- | The unique ID for the Amplify app.+putMetadataFlag_appId :: Lens.Lens' PutMetadataFlag Prelude.Text+putMetadataFlag_appId = Lens.lens (\PutMetadataFlag' {appId} -> appId) (\s@PutMetadataFlag' {} a -> s {appId = a} :: PutMetadataFlag)++-- | The metadata information to store.+putMetadataFlag_body :: Lens.Lens' PutMetadataFlag PutMetadataFlagBody+putMetadataFlag_body = Lens.lens (\PutMetadataFlag' {body} -> body) (\s@PutMetadataFlag' {} a -> s {body = a} :: PutMetadataFlag)++-- | The name of the backend environment that is part of the Amplify app.+putMetadataFlag_environmentName :: Lens.Lens' PutMetadataFlag Prelude.Text+putMetadataFlag_environmentName = Lens.lens (\PutMetadataFlag' {environmentName} -> environmentName) (\s@PutMetadataFlag' {} a -> s {environmentName = a} :: PutMetadataFlag)++-- | The name of the feature associated with the metadata.+putMetadataFlag_featureName :: Lens.Lens' PutMetadataFlag Prelude.Text+putMetadataFlag_featureName = Lens.lens (\PutMetadataFlag' {featureName} -> featureName) (\s@PutMetadataFlag' {} a -> s {featureName = a} :: PutMetadataFlag)++instance Core.AWSRequest PutMetadataFlag where+ type+ AWSResponse PutMetadataFlag =+ PutMetadataFlagResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveNull PutMetadataFlagResponse'++instance Prelude.Hashable PutMetadataFlag where+ hashWithSalt _salt PutMetadataFlag' {..} =+ _salt+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` body+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` featureName++instance Prelude.NFData PutMetadataFlag where+ rnf PutMetadataFlag' {..} =+ Prelude.rnf appId+ `Prelude.seq` Prelude.rnf body+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf featureName++instance Data.ToHeaders PutMetadataFlag where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON PutMetadataFlag where+ toJSON PutMetadataFlag' {..} = Data.toJSON body++instance Data.ToPath PutMetadataFlag where+ toPath PutMetadataFlag' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/metadata/features/",+ Data.toBS featureName+ ]++instance Data.ToQuery PutMetadataFlag where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newPutMetadataFlagResponse' smart constructor.+data PutMetadataFlagResponse = PutMetadataFlagResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutMetadataFlagResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newPutMetadataFlagResponse ::+ PutMetadataFlagResponse+newPutMetadataFlagResponse = PutMetadataFlagResponse'++instance Prelude.NFData PutMetadataFlagResponse where+ rnf _ = ()
+ gen/Amazonka/AmplifyUiBuilder/RefreshToken.hs view
@@ -0,0 +1,197 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.RefreshToken+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Refreshes a previously issued access token that might have expired.+module Amazonka.AmplifyUiBuilder.RefreshToken+ ( -- * Creating a Request+ RefreshToken (..),+ newRefreshToken,++ -- * Request Lenses+ refreshToken_provider,+ refreshToken_refreshTokenBody,++ -- * Destructuring the Response+ RefreshTokenResponse (..),+ newRefreshTokenResponse,++ -- * Response Lenses+ refreshTokenResponse_httpStatus,+ refreshTokenResponse_accessToken,+ refreshTokenResponse_expiresIn,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newRefreshToken' smart constructor.+data RefreshToken = RefreshToken'+ { -- | The third-party provider for the token. The only valid value is @figma@.+ provider :: TokenProviders,+ -- | Information about the refresh token request.+ refreshTokenBody :: RefreshTokenRequestBody+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RefreshToken' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'provider', 'refreshToken_provider' - The third-party provider for the token. The only valid value is @figma@.+--+-- 'refreshTokenBody', 'refreshToken_refreshTokenBody' - Information about the refresh token request.+newRefreshToken ::+ -- | 'provider'+ TokenProviders ->+ -- | 'refreshTokenBody'+ RefreshTokenRequestBody ->+ RefreshToken+newRefreshToken pProvider_ pRefreshTokenBody_ =+ RefreshToken'+ { provider = pProvider_,+ refreshTokenBody = pRefreshTokenBody_+ }++-- | The third-party provider for the token. The only valid value is @figma@.+refreshToken_provider :: Lens.Lens' RefreshToken TokenProviders+refreshToken_provider = Lens.lens (\RefreshToken' {provider} -> provider) (\s@RefreshToken' {} a -> s {provider = a} :: RefreshToken)++-- | Information about the refresh token request.+refreshToken_refreshTokenBody :: Lens.Lens' RefreshToken RefreshTokenRequestBody+refreshToken_refreshTokenBody = Lens.lens (\RefreshToken' {refreshTokenBody} -> refreshTokenBody) (\s@RefreshToken' {} a -> s {refreshTokenBody = a} :: RefreshToken)++instance Core.AWSRequest RefreshToken where+ type AWSResponse RefreshToken = RefreshTokenResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ RefreshTokenResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "accessToken")+ Prelude.<*> (x Data..:> "expiresIn")+ )++instance Prelude.Hashable RefreshToken where+ hashWithSalt _salt RefreshToken' {..} =+ _salt+ `Prelude.hashWithSalt` provider+ `Prelude.hashWithSalt` refreshTokenBody++instance Prelude.NFData RefreshToken where+ rnf RefreshToken' {..} =+ Prelude.rnf provider+ `Prelude.seq` Prelude.rnf refreshTokenBody++instance Data.ToHeaders RefreshToken where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON RefreshToken where+ toJSON RefreshToken' {..} =+ Data.toJSON refreshTokenBody++instance Data.ToPath RefreshToken where+ toPath RefreshToken' {..} =+ Prelude.mconcat+ ["/tokens/", Data.toBS provider, "/refresh"]++instance Data.ToQuery RefreshToken where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newRefreshTokenResponse' smart constructor.+data RefreshTokenResponse = RefreshTokenResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The access token.+ accessToken :: Data.Sensitive Prelude.Text,+ -- | The date and time when the new access token expires.+ expiresIn :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RefreshTokenResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'refreshTokenResponse_httpStatus' - The response's http status code.+--+-- 'accessToken', 'refreshTokenResponse_accessToken' - The access token.+--+-- 'expiresIn', 'refreshTokenResponse_expiresIn' - The date and time when the new access token expires.+newRefreshTokenResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'accessToken'+ Prelude.Text ->+ -- | 'expiresIn'+ Prelude.Int ->+ RefreshTokenResponse+newRefreshTokenResponse+ pHttpStatus_+ pAccessToken_+ pExpiresIn_ =+ RefreshTokenResponse'+ { httpStatus = pHttpStatus_,+ accessToken = Data._Sensitive Lens.# pAccessToken_,+ expiresIn = pExpiresIn_+ }++-- | The response's http status code.+refreshTokenResponse_httpStatus :: Lens.Lens' RefreshTokenResponse Prelude.Int+refreshTokenResponse_httpStatus = Lens.lens (\RefreshTokenResponse' {httpStatus} -> httpStatus) (\s@RefreshTokenResponse' {} a -> s {httpStatus = a} :: RefreshTokenResponse)++-- | The access token.+refreshTokenResponse_accessToken :: Lens.Lens' RefreshTokenResponse Prelude.Text+refreshTokenResponse_accessToken = Lens.lens (\RefreshTokenResponse' {accessToken} -> accessToken) (\s@RefreshTokenResponse' {} a -> s {accessToken = a} :: RefreshTokenResponse) Prelude.. Data._Sensitive++-- | The date and time when the new access token expires.+refreshTokenResponse_expiresIn :: Lens.Lens' RefreshTokenResponse Prelude.Int+refreshTokenResponse_expiresIn = Lens.lens (\RefreshTokenResponse' {expiresIn} -> expiresIn) (\s@RefreshTokenResponse' {} a -> s {expiresIn = a} :: RefreshTokenResponse)++instance Prelude.NFData RefreshTokenResponse where+ rnf RefreshTokenResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf accessToken+ `Prelude.seq` Prelude.rnf expiresIn
+ gen/Amazonka/AmplifyUiBuilder/Types.hs view
@@ -0,0 +1,629 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _InternalServerException,+ _InvalidParameterException,+ _ResourceConflictException,+ _ResourceNotFoundException,+ _ServiceQuotaExceededException,+ _UnauthorizedException,++ -- * FixedPosition+ FixedPosition (..),++ -- * FormActionType+ FormActionType (..),++ -- * FormButtonsPosition+ FormButtonsPosition (..),++ -- * FormDataSourceType+ FormDataSourceType (..),++ -- * SortDirection+ SortDirection (..),++ -- * TokenProviders+ TokenProviders (..),++ -- * ActionParameters+ ActionParameters (..),+ newActionParameters,+ actionParameters_anchor,+ actionParameters_fields,+ actionParameters_global,+ actionParameters_id,+ actionParameters_model,+ actionParameters_state,+ actionParameters_target,+ actionParameters_type,+ actionParameters_url,++ -- * Component+ Component (..),+ newComponent,+ component_children,+ component_collectionProperties,+ component_events,+ component_modifiedAt,+ component_schemaVersion,+ component_sourceId,+ component_tags,+ component_appId,+ component_bindingProperties,+ component_componentType,+ component_createdAt,+ component_environmentName,+ component_id,+ component_name,+ component_overrides,+ component_properties,+ component_variants,++ -- * ComponentBindingPropertiesValue+ ComponentBindingPropertiesValue (..),+ newComponentBindingPropertiesValue,+ componentBindingPropertiesValue_bindingProperties,+ componentBindingPropertiesValue_defaultValue,+ componentBindingPropertiesValue_type,++ -- * ComponentBindingPropertiesValueProperties+ ComponentBindingPropertiesValueProperties (..),+ newComponentBindingPropertiesValueProperties,+ componentBindingPropertiesValueProperties_bucket,+ componentBindingPropertiesValueProperties_defaultValue,+ componentBindingPropertiesValueProperties_field,+ componentBindingPropertiesValueProperties_key,+ componentBindingPropertiesValueProperties_model,+ componentBindingPropertiesValueProperties_predicates,+ componentBindingPropertiesValueProperties_slotName,+ componentBindingPropertiesValueProperties_userAttribute,++ -- * ComponentChild+ ComponentChild (..),+ newComponentChild,+ componentChild_children,+ componentChild_events,+ componentChild_sourceId,+ componentChild_componentType,+ componentChild_name,+ componentChild_properties,++ -- * ComponentConditionProperty+ ComponentConditionProperty (..),+ newComponentConditionProperty,+ componentConditionProperty_else,+ componentConditionProperty_field,+ componentConditionProperty_operand,+ componentConditionProperty_operandType,+ componentConditionProperty_operator,+ componentConditionProperty_property,+ componentConditionProperty_then,++ -- * ComponentDataConfiguration+ ComponentDataConfiguration (..),+ newComponentDataConfiguration,+ componentDataConfiguration_identifiers,+ componentDataConfiguration_predicate,+ componentDataConfiguration_sort,+ componentDataConfiguration_model,++ -- * ComponentEvent+ ComponentEvent (..),+ newComponentEvent,+ componentEvent_action,+ componentEvent_bindingEvent,+ componentEvent_parameters,++ -- * ComponentProperty+ ComponentProperty (..),+ newComponentProperty,+ componentProperty_bindingProperties,+ componentProperty_bindings,+ componentProperty_collectionBindingProperties,+ componentProperty_componentName,+ componentProperty_concat,+ componentProperty_condition,+ componentProperty_configured,+ componentProperty_defaultValue,+ componentProperty_event,+ componentProperty_importedValue,+ componentProperty_model,+ componentProperty_property,+ componentProperty_type,+ componentProperty_userAttribute,+ componentProperty_value,++ -- * ComponentPropertyBindingProperties+ ComponentPropertyBindingProperties (..),+ newComponentPropertyBindingProperties,+ componentPropertyBindingProperties_field,+ componentPropertyBindingProperties_property,++ -- * ComponentSummary+ ComponentSummary (..),+ newComponentSummary,+ componentSummary_appId,+ componentSummary_componentType,+ componentSummary_environmentName,+ componentSummary_id,+ componentSummary_name,++ -- * ComponentVariant+ ComponentVariant (..),+ newComponentVariant,+ componentVariant_overrides,+ componentVariant_variantValues,++ -- * CreateComponentData+ CreateComponentData (..),+ newCreateComponentData,+ createComponentData_children,+ createComponentData_collectionProperties,+ createComponentData_events,+ createComponentData_schemaVersion,+ createComponentData_sourceId,+ createComponentData_tags,+ createComponentData_bindingProperties,+ createComponentData_componentType,+ createComponentData_name,+ createComponentData_overrides,+ createComponentData_properties,+ createComponentData_variants,++ -- * CreateFormData+ CreateFormData (..),+ newCreateFormData,+ createFormData_cta,+ createFormData_tags,+ createFormData_dataType,+ createFormData_fields,+ createFormData_formActionType,+ createFormData_name,+ createFormData_schemaVersion,+ createFormData_sectionalElements,+ createFormData_style,++ -- * CreateThemeData+ CreateThemeData (..),+ newCreateThemeData,+ createThemeData_overrides,+ createThemeData_tags,+ createThemeData_name,+ createThemeData_values,++ -- * ExchangeCodeForTokenRequestBody+ ExchangeCodeForTokenRequestBody (..),+ newExchangeCodeForTokenRequestBody,+ exchangeCodeForTokenRequestBody_code,+ exchangeCodeForTokenRequestBody_redirectUri,++ -- * FieldConfig+ FieldConfig (..),+ newFieldConfig,+ fieldConfig_excluded,+ fieldConfig_inputType,+ fieldConfig_label,+ fieldConfig_position,+ fieldConfig_validations,++ -- * FieldInputConfig+ FieldInputConfig (..),+ newFieldInputConfig,+ fieldInputConfig_defaultChecked,+ fieldInputConfig_defaultCountryCode,+ fieldInputConfig_defaultValue,+ fieldInputConfig_descriptiveText,+ fieldInputConfig_isArray,+ fieldInputConfig_maxValue,+ fieldInputConfig_minValue,+ fieldInputConfig_name,+ fieldInputConfig_placeholder,+ fieldInputConfig_readOnly,+ fieldInputConfig_required,+ fieldInputConfig_step,+ fieldInputConfig_value,+ fieldInputConfig_valueMappings,+ fieldInputConfig_type,++ -- * FieldPosition+ FieldPosition (..),+ newFieldPosition,+ fieldPosition_below,+ fieldPosition_fixed,+ fieldPosition_rightOf,++ -- * FieldValidationConfiguration+ FieldValidationConfiguration (..),+ newFieldValidationConfiguration,+ fieldValidationConfiguration_numValues,+ fieldValidationConfiguration_strValues,+ fieldValidationConfiguration_validationMessage,+ fieldValidationConfiguration_type,++ -- * Form+ Form (..),+ newForm,+ form_cta,+ form_tags,+ form_appId,+ form_dataType,+ form_environmentName,+ form_fields,+ form_formActionType,+ form_id,+ form_name,+ form_schemaVersion,+ form_sectionalElements,+ form_style,++ -- * FormBindingElement+ FormBindingElement (..),+ newFormBindingElement,+ formBindingElement_element,+ formBindingElement_property,++ -- * FormButton+ FormButton (..),+ newFormButton,+ formButton_children,+ formButton_excluded,+ formButton_position,++ -- * FormCTA+ FormCTA (..),+ newFormCTA,+ formCTA_cancel,+ formCTA_clear,+ formCTA_position,+ formCTA_submit,++ -- * FormDataTypeConfig+ FormDataTypeConfig (..),+ newFormDataTypeConfig,+ formDataTypeConfig_dataSourceType,+ formDataTypeConfig_dataTypeName,++ -- * FormInputValueProperty+ FormInputValueProperty (..),+ newFormInputValueProperty,+ formInputValueProperty_value,++ -- * FormStyle+ FormStyle (..),+ newFormStyle,+ formStyle_horizontalGap,+ formStyle_outerPadding,+ formStyle_verticalGap,++ -- * FormStyleConfig+ FormStyleConfig (..),+ newFormStyleConfig,+ formStyleConfig_tokenReference,+ formStyleConfig_value,++ -- * FormSummary+ FormSummary (..),+ newFormSummary,+ formSummary_appId,+ formSummary_dataType,+ formSummary_environmentName,+ formSummary_formActionType,+ formSummary_id,+ formSummary_name,++ -- * MutationActionSetStateParameter+ MutationActionSetStateParameter (..),+ newMutationActionSetStateParameter,+ mutationActionSetStateParameter_componentName,+ mutationActionSetStateParameter_property,+ mutationActionSetStateParameter_set,++ -- * Predicate+ Predicate (..),+ newPredicate,+ predicate_and,+ predicate_field,+ predicate_operand,+ predicate_operator,+ predicate_or,++ -- * PutMetadataFlagBody+ PutMetadataFlagBody (..),+ newPutMetadataFlagBody,+ putMetadataFlagBody_newValue,++ -- * RefreshTokenRequestBody+ RefreshTokenRequestBody (..),+ newRefreshTokenRequestBody,+ refreshTokenRequestBody_token,++ -- * SectionalElement+ SectionalElement (..),+ newSectionalElement,+ sectionalElement_level,+ sectionalElement_orientation,+ sectionalElement_position,+ sectionalElement_text,+ sectionalElement_type,++ -- * SortProperty+ SortProperty (..),+ newSortProperty,+ sortProperty_direction,+ sortProperty_field,++ -- * Theme+ Theme (..),+ newTheme,+ theme_modifiedAt,+ theme_overrides,+ theme_tags,+ theme_appId,+ theme_createdAt,+ theme_environmentName,+ theme_id,+ theme_name,+ theme_values,++ -- * ThemeSummary+ ThemeSummary (..),+ newThemeSummary,+ themeSummary_appId,+ themeSummary_environmentName,+ themeSummary_id,+ themeSummary_name,++ -- * ThemeValue+ ThemeValue (..),+ newThemeValue,+ themeValue_children,+ themeValue_value,++ -- * ThemeValues+ ThemeValues (..),+ newThemeValues,+ themeValues_key,+ themeValues_value,++ -- * UpdateComponentData+ UpdateComponentData (..),+ newUpdateComponentData,+ updateComponentData_bindingProperties,+ updateComponentData_children,+ updateComponentData_collectionProperties,+ updateComponentData_componentType,+ updateComponentData_events,+ updateComponentData_id,+ updateComponentData_name,+ updateComponentData_overrides,+ updateComponentData_properties,+ updateComponentData_schemaVersion,+ updateComponentData_sourceId,+ updateComponentData_variants,++ -- * UpdateFormData+ UpdateFormData (..),+ newUpdateFormData,+ updateFormData_cta,+ updateFormData_dataType,+ updateFormData_fields,+ updateFormData_formActionType,+ updateFormData_name,+ updateFormData_schemaVersion,+ updateFormData_sectionalElements,+ updateFormData_style,++ -- * UpdateThemeData+ UpdateThemeData (..),+ newUpdateThemeData,+ updateThemeData_id,+ updateThemeData_name,+ updateThemeData_overrides,+ updateThemeData_values,++ -- * ValueMapping+ ValueMapping (..),+ newValueMapping,+ valueMapping_displayValue,+ valueMapping_value,++ -- * ValueMappings+ ValueMappings (..),+ newValueMappings,+ valueMappings_values,+ )+where++import Amazonka.AmplifyUiBuilder.Types.ActionParameters+import Amazonka.AmplifyUiBuilder.Types.Component+import Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValue+import Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValueProperties+import Amazonka.AmplifyUiBuilder.Types.ComponentChild+import Amazonka.AmplifyUiBuilder.Types.ComponentConditionProperty+import Amazonka.AmplifyUiBuilder.Types.ComponentDataConfiguration+import Amazonka.AmplifyUiBuilder.Types.ComponentEvent+import Amazonka.AmplifyUiBuilder.Types.ComponentProperty+import Amazonka.AmplifyUiBuilder.Types.ComponentPropertyBindingProperties+import Amazonka.AmplifyUiBuilder.Types.ComponentSummary+import Amazonka.AmplifyUiBuilder.Types.ComponentVariant+import Amazonka.AmplifyUiBuilder.Types.CreateComponentData+import Amazonka.AmplifyUiBuilder.Types.CreateFormData+import Amazonka.AmplifyUiBuilder.Types.CreateThemeData+import Amazonka.AmplifyUiBuilder.Types.ExchangeCodeForTokenRequestBody+import Amazonka.AmplifyUiBuilder.Types.FieldConfig+import Amazonka.AmplifyUiBuilder.Types.FieldInputConfig+import Amazonka.AmplifyUiBuilder.Types.FieldPosition+import Amazonka.AmplifyUiBuilder.Types.FieldValidationConfiguration+import Amazonka.AmplifyUiBuilder.Types.FixedPosition+import Amazonka.AmplifyUiBuilder.Types.Form+import Amazonka.AmplifyUiBuilder.Types.FormActionType+import Amazonka.AmplifyUiBuilder.Types.FormBindingElement+import Amazonka.AmplifyUiBuilder.Types.FormButton+import Amazonka.AmplifyUiBuilder.Types.FormButtonsPosition+import Amazonka.AmplifyUiBuilder.Types.FormCTA+import Amazonka.AmplifyUiBuilder.Types.FormDataSourceType+import Amazonka.AmplifyUiBuilder.Types.FormDataTypeConfig+import Amazonka.AmplifyUiBuilder.Types.FormInputValueProperty+import Amazonka.AmplifyUiBuilder.Types.FormStyle+import Amazonka.AmplifyUiBuilder.Types.FormStyleConfig+import Amazonka.AmplifyUiBuilder.Types.FormSummary+import Amazonka.AmplifyUiBuilder.Types.MutationActionSetStateParameter+import Amazonka.AmplifyUiBuilder.Types.Predicate+import Amazonka.AmplifyUiBuilder.Types.PutMetadataFlagBody+import Amazonka.AmplifyUiBuilder.Types.RefreshTokenRequestBody+import Amazonka.AmplifyUiBuilder.Types.SectionalElement+import Amazonka.AmplifyUiBuilder.Types.SortDirection+import Amazonka.AmplifyUiBuilder.Types.SortProperty+import Amazonka.AmplifyUiBuilder.Types.Theme+import Amazonka.AmplifyUiBuilder.Types.ThemeSummary+import Amazonka.AmplifyUiBuilder.Types.ThemeValue+import Amazonka.AmplifyUiBuilder.Types.ThemeValues+import Amazonka.AmplifyUiBuilder.Types.TokenProviders+import Amazonka.AmplifyUiBuilder.Types.UpdateComponentData+import Amazonka.AmplifyUiBuilder.Types.UpdateFormData+import Amazonka.AmplifyUiBuilder.Types.UpdateThemeData+import Amazonka.AmplifyUiBuilder.Types.ValueMapping+import Amazonka.AmplifyUiBuilder.Types.ValueMappings+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2021-08-11@ of the Amazon Amplify UI Builder SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "AmplifyUiBuilder",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "amplifyuibuilder",+ Core.signingName = "amplifyuibuilder",+ Core.version = "2021-08-11",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "AmplifyUiBuilder",+ Core.retry = retry+ }+ where+ retry =+ Core.Exponential+ { Core.base = 5.0e-2,+ Core.growth = 2,+ Core.attempts = 5,+ Core.check = check+ }+ check e+ | Lens.has (Core.hasStatus 502) e =+ Prelude.Just "bad_gateway"+ | Lens.has (Core.hasStatus 504) e =+ Prelude.Just "gateway_timeout"+ | Lens.has (Core.hasStatus 500) e =+ Prelude.Just "general_server_error"+ | Lens.has (Core.hasStatus 509) e =+ Prelude.Just "limit_exceeded"+ | Lens.has+ ( Core.hasCode "RequestThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "request_throttled_exception"+ | Lens.has (Core.hasStatus 503) e =+ Prelude.Just "service_unavailable"+ | Lens.has+ ( Core.hasCode "ThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttled_exception"+ | Lens.has+ ( Core.hasCode "Throttling"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling"+ | Lens.has+ ( Core.hasCode "ThrottlingException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling_exception"+ | Lens.has+ ( Core.hasCode+ "ProvisionedThroughputExceededException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throughput_exceeded"+ | Lens.has (Core.hasStatus 429) e =+ Prelude.Just "too_many_requests"+ | Prelude.otherwise = Prelude.Nothing++-- | An internal error has occurred. Please retry your request.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | An invalid or out-of-range value was supplied for the input parameter.+_InvalidParameterException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidParameterException =+ Core._MatchServiceError+ defaultService+ "InvalidParameterException"+ Prelude.. Core.hasStatus 400++-- | The resource specified in the request conflicts with an existing+-- resource.+_ResourceConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceConflictException =+ Core._MatchServiceError+ defaultService+ "ResourceConflictException"+ Prelude.. Core.hasStatus 409++-- | The requested resource does not exist, or access was denied.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | You exceeded your service quota. Service quotas, also referred to as+-- limits, are the maximum number of service resources or operations for+-- your Amazon Web Services account.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+ Core._MatchServiceError+ defaultService+ "ServiceQuotaExceededException"+ Prelude.. Core.hasStatus 402++-- | You don\'t have permission to perform this operation.+_UnauthorizedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_UnauthorizedException =+ Core._MatchServiceError+ defaultService+ "UnauthorizedException"+ Prelude.. Core.hasStatus 401
+ gen/Amazonka/AmplifyUiBuilder/Types/ActionParameters.hs view
@@ -0,0 +1,214 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ActionParameters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ActionParameters where++import Amazonka.AmplifyUiBuilder.Types.ComponentProperty+import Amazonka.AmplifyUiBuilder.Types.MutationActionSetStateParameter+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | 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.+--+-- /See:/ 'newActionParameters' smart constructor.+data ActionParameters = ActionParameters'+ { -- | The HTML anchor link to the location to open. Specify this value for a+ -- navigation action.+ anchor :: Prelude.Maybe 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 :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentProperty),+ -- | Specifies whether the user should be signed out globally. Specify this+ -- value for an auth sign out action.+ global :: Prelude.Maybe ComponentProperty,+ -- | The unique ID of the component that the @ActionParameters@ apply to.+ id :: Prelude.Maybe ComponentProperty,+ -- | The name of the data model. Use when the action performs an operation on+ -- an Amplify DataStore model.+ model :: Prelude.Maybe Prelude.Text,+ -- | A key-value pair that specifies the state property name and its initial+ -- value.+ state :: Prelude.Maybe MutationActionSetStateParameter,+ -- | The element within the same component to modify when the action occurs.+ target :: Prelude.Maybe ComponentProperty,+ -- | The type of navigation action. Valid values are @url@ and @anchor@. This+ -- value is required for a navigation action.+ type' :: Prelude.Maybe ComponentProperty,+ -- | The URL to the location to open. Specify this value for a navigation+ -- action.+ url :: Prelude.Maybe ComponentProperty+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ActionParameters' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'anchor', 'actionParameters_anchor' - The HTML anchor link to the location to open. Specify this value for a+-- navigation action.+--+-- 'fields', 'actionParameters_fields' - 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.+--+-- 'global', 'actionParameters_global' - Specifies whether the user should be signed out globally. Specify this+-- value for an auth sign out action.+--+-- 'id', 'actionParameters_id' - The unique ID of the component that the @ActionParameters@ apply to.+--+-- 'model', 'actionParameters_model' - The name of the data model. Use when the action performs an operation on+-- an Amplify DataStore model.+--+-- 'state', 'actionParameters_state' - A key-value pair that specifies the state property name and its initial+-- value.+--+-- 'target', 'actionParameters_target' - The element within the same component to modify when the action occurs.+--+-- 'type'', 'actionParameters_type' - The type of navigation action. Valid values are @url@ and @anchor@. This+-- value is required for a navigation action.+--+-- 'url', 'actionParameters_url' - The URL to the location to open. Specify this value for a navigation+-- action.+newActionParameters ::+ ActionParameters+newActionParameters =+ ActionParameters'+ { anchor = Prelude.Nothing,+ fields = Prelude.Nothing,+ global = Prelude.Nothing,+ id = Prelude.Nothing,+ model = Prelude.Nothing,+ state = Prelude.Nothing,+ target = Prelude.Nothing,+ type' = Prelude.Nothing,+ url = Prelude.Nothing+ }++-- | The HTML anchor link to the location to open. Specify this value for a+-- navigation action.+actionParameters_anchor :: Lens.Lens' ActionParameters (Prelude.Maybe ComponentProperty)+actionParameters_anchor = Lens.lens (\ActionParameters' {anchor} -> anchor) (\s@ActionParameters' {} a -> s {anchor = a} :: ActionParameters)++-- | 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.+actionParameters_fields :: Lens.Lens' ActionParameters (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentProperty))+actionParameters_fields = Lens.lens (\ActionParameters' {fields} -> fields) (\s@ActionParameters' {} a -> s {fields = a} :: ActionParameters) Prelude.. Lens.mapping Lens.coerced++-- | Specifies whether the user should be signed out globally. Specify this+-- value for an auth sign out action.+actionParameters_global :: Lens.Lens' ActionParameters (Prelude.Maybe ComponentProperty)+actionParameters_global = Lens.lens (\ActionParameters' {global} -> global) (\s@ActionParameters' {} a -> s {global = a} :: ActionParameters)++-- | The unique ID of the component that the @ActionParameters@ apply to.+actionParameters_id :: Lens.Lens' ActionParameters (Prelude.Maybe ComponentProperty)+actionParameters_id = Lens.lens (\ActionParameters' {id} -> id) (\s@ActionParameters' {} a -> s {id = a} :: ActionParameters)++-- | The name of the data model. Use when the action performs an operation on+-- an Amplify DataStore model.+actionParameters_model :: Lens.Lens' ActionParameters (Prelude.Maybe Prelude.Text)+actionParameters_model = Lens.lens (\ActionParameters' {model} -> model) (\s@ActionParameters' {} a -> s {model = a} :: ActionParameters)++-- | A key-value pair that specifies the state property name and its initial+-- value.+actionParameters_state :: Lens.Lens' ActionParameters (Prelude.Maybe MutationActionSetStateParameter)+actionParameters_state = Lens.lens (\ActionParameters' {state} -> state) (\s@ActionParameters' {} a -> s {state = a} :: ActionParameters)++-- | The element within the same component to modify when the action occurs.+actionParameters_target :: Lens.Lens' ActionParameters (Prelude.Maybe ComponentProperty)+actionParameters_target = Lens.lens (\ActionParameters' {target} -> target) (\s@ActionParameters' {} a -> s {target = a} :: ActionParameters)++-- | The type of navigation action. Valid values are @url@ and @anchor@. This+-- value is required for a navigation action.+actionParameters_type :: Lens.Lens' ActionParameters (Prelude.Maybe ComponentProperty)+actionParameters_type = Lens.lens (\ActionParameters' {type'} -> type') (\s@ActionParameters' {} a -> s {type' = a} :: ActionParameters)++-- | The URL to the location to open. Specify this value for a navigation+-- action.+actionParameters_url :: Lens.Lens' ActionParameters (Prelude.Maybe ComponentProperty)+actionParameters_url = Lens.lens (\ActionParameters' {url} -> url) (\s@ActionParameters' {} a -> s {url = a} :: ActionParameters)++instance Data.FromJSON ActionParameters where+ parseJSON =+ Data.withObject+ "ActionParameters"+ ( \x ->+ ActionParameters'+ Prelude.<$> (x Data..:? "anchor")+ Prelude.<*> (x Data..:? "fields" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "global")+ Prelude.<*> (x Data..:? "id")+ Prelude.<*> (x Data..:? "model")+ Prelude.<*> (x Data..:? "state")+ Prelude.<*> (x Data..:? "target")+ Prelude.<*> (x Data..:? "type")+ Prelude.<*> (x Data..:? "url")+ )++instance Prelude.Hashable ActionParameters where+ hashWithSalt _salt ActionParameters' {..} =+ _salt+ `Prelude.hashWithSalt` anchor+ `Prelude.hashWithSalt` fields+ `Prelude.hashWithSalt` global+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` model+ `Prelude.hashWithSalt` state+ `Prelude.hashWithSalt` target+ `Prelude.hashWithSalt` type'+ `Prelude.hashWithSalt` url++instance Prelude.NFData ActionParameters where+ rnf ActionParameters' {..} =+ Prelude.rnf anchor+ `Prelude.seq` Prelude.rnf fields+ `Prelude.seq` Prelude.rnf global+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf model+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf target+ `Prelude.seq` Prelude.rnf type'+ `Prelude.seq` Prelude.rnf url++instance Data.ToJSON ActionParameters where+ toJSON ActionParameters' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("anchor" Data..=) Prelude.<$> anchor,+ ("fields" Data..=) Prelude.<$> fields,+ ("global" Data..=) Prelude.<$> global,+ ("id" Data..=) Prelude.<$> id,+ ("model" Data..=) Prelude.<$> model,+ ("state" Data..=) Prelude.<$> state,+ ("target" Data..=) Prelude.<$> target,+ ("type" Data..=) Prelude.<$> type',+ ("url" Data..=) Prelude.<$> url+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/Component.hs view
@@ -0,0 +1,331 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.Component+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.Component where++import Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValue+import Amazonka.AmplifyUiBuilder.Types.ComponentChild+import Amazonka.AmplifyUiBuilder.Types.ComponentDataConfiguration+import Amazonka.AmplifyUiBuilder.Types.ComponentEvent+import Amazonka.AmplifyUiBuilder.Types.ComponentProperty+import Amazonka.AmplifyUiBuilder.Types.ComponentVariant+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | 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@.+--+-- /See:/ 'newComponent' smart constructor.+data Component = Component'+ { -- | A list of the component\'s @ComponentChild@ instances.+ children :: Prelude.Maybe [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 :: Prelude.Maybe (Prelude.HashMap Prelude.Text 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 :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentEvent),+ -- | The time that the component was modified.+ modifiedAt :: Prelude.Maybe Data.ISO8601,+ -- | The schema version of the component when it was imported.+ schemaVersion :: Prelude.Maybe Prelude.Text,+ -- | The unique ID of the component in its original source system, such as+ -- Figma.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | One or more key-value pairs to use when tagging the component.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The unique ID of the Amplify app associated with the component.+ appId :: Prelude.Text,+ -- | The information to connect a component\'s properties to data at runtime.+ -- You can\'t specify @tags@ as a valid property for @bindingProperties@.+ bindingProperties :: Prelude.HashMap Prelude.Text ComponentBindingPropertiesValue,+ -- | The type of the component. This can be an Amplify custom UI component or+ -- another custom component.+ componentType :: Prelude.Text,+ -- | The time that the component was created.+ createdAt :: Data.ISO8601,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The unique ID of the component.+ id :: Prelude.Text,+ -- | The name of the component.+ name :: Prelude.Text,+ -- | 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@.+ overrides :: Prelude.HashMap Prelude.Text (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | Describes the component\'s properties. You can\'t specify @tags@ as a+ -- valid property for @properties@.+ properties :: Prelude.HashMap Prelude.Text ComponentProperty,+ -- | A list of the component\'s variants. A variant is a unique style+ -- configuration of a main component.+ variants :: [ComponentVariant]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Component' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'children', 'component_children' - A list of the component\'s @ComponentChild@ instances.+--+-- 'collectionProperties', 'component_collectionProperties' - 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@.+--+-- 'events', 'component_events' - 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.+--+-- 'modifiedAt', 'component_modifiedAt' - The time that the component was modified.+--+-- 'schemaVersion', 'component_schemaVersion' - The schema version of the component when it was imported.+--+-- 'sourceId', 'component_sourceId' - The unique ID of the component in its original source system, such as+-- Figma.+--+-- 'tags', 'component_tags' - One or more key-value pairs to use when tagging the component.+--+-- 'appId', 'component_appId' - The unique ID of the Amplify app associated with the component.+--+-- 'bindingProperties', 'component_bindingProperties' - The information to connect a component\'s properties to data at runtime.+-- You can\'t specify @tags@ as a valid property for @bindingProperties@.+--+-- 'componentType', 'component_componentType' - The type of the component. This can be an Amplify custom UI component or+-- another custom component.+--+-- 'createdAt', 'component_createdAt' - The time that the component was created.+--+-- 'environmentName', 'component_environmentName' - The name of the backend environment that is a part of the Amplify app.+--+-- 'id', 'component_id' - The unique ID of the component.+--+-- 'name', 'component_name' - The name of the component.+--+-- 'overrides', 'component_overrides' - 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@.+--+-- 'properties', 'component_properties' - Describes the component\'s properties. You can\'t specify @tags@ as a+-- valid property for @properties@.+--+-- 'variants', 'component_variants' - A list of the component\'s variants. A variant is a unique style+-- configuration of a main component.+newComponent ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'componentType'+ Prelude.Text ->+ -- | 'createdAt'+ Prelude.UTCTime ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ Component+newComponent+ pAppId_+ pComponentType_+ pCreatedAt_+ pEnvironmentName_+ pId_+ pName_ =+ Component'+ { children = Prelude.Nothing,+ collectionProperties = Prelude.Nothing,+ events = Prelude.Nothing,+ modifiedAt = Prelude.Nothing,+ schemaVersion = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ tags = Prelude.Nothing,+ appId = pAppId_,+ bindingProperties = Prelude.mempty,+ componentType = pComponentType_,+ createdAt = Data._Time Lens.# pCreatedAt_,+ environmentName = pEnvironmentName_,+ id = pId_,+ name = pName_,+ overrides = Prelude.mempty,+ properties = Prelude.mempty,+ variants = Prelude.mempty+ }++-- | A list of the component\'s @ComponentChild@ instances.+component_children :: Lens.Lens' Component (Prelude.Maybe [ComponentChild])+component_children = Lens.lens (\Component' {children} -> children) (\s@Component' {} a -> s {children = a} :: Component) Prelude.. Lens.mapping Lens.coerced++-- | 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@.+component_collectionProperties :: Lens.Lens' Component (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentDataConfiguration))+component_collectionProperties = Lens.lens (\Component' {collectionProperties} -> collectionProperties) (\s@Component' {} a -> s {collectionProperties = a} :: Component) Prelude.. Lens.mapping Lens.coerced++-- | 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.+component_events :: Lens.Lens' Component (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentEvent))+component_events = Lens.lens (\Component' {events} -> events) (\s@Component' {} a -> s {events = a} :: Component) Prelude.. Lens.mapping Lens.coerced++-- | The time that the component was modified.+component_modifiedAt :: Lens.Lens' Component (Prelude.Maybe Prelude.UTCTime)+component_modifiedAt = Lens.lens (\Component' {modifiedAt} -> modifiedAt) (\s@Component' {} a -> s {modifiedAt = a} :: Component) Prelude.. Lens.mapping Data._Time++-- | The schema version of the component when it was imported.+component_schemaVersion :: Lens.Lens' Component (Prelude.Maybe Prelude.Text)+component_schemaVersion = Lens.lens (\Component' {schemaVersion} -> schemaVersion) (\s@Component' {} a -> s {schemaVersion = a} :: Component)++-- | The unique ID of the component in its original source system, such as+-- Figma.+component_sourceId :: Lens.Lens' Component (Prelude.Maybe Prelude.Text)+component_sourceId = Lens.lens (\Component' {sourceId} -> sourceId) (\s@Component' {} a -> s {sourceId = a} :: Component)++-- | One or more key-value pairs to use when tagging the component.+component_tags :: Lens.Lens' Component (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+component_tags = Lens.lens (\Component' {tags} -> tags) (\s@Component' {} a -> s {tags = a} :: Component) Prelude.. Lens.mapping Lens.coerced++-- | The unique ID of the Amplify app associated with the component.+component_appId :: Lens.Lens' Component Prelude.Text+component_appId = Lens.lens (\Component' {appId} -> appId) (\s@Component' {} a -> s {appId = a} :: Component)++-- | The information to connect a component\'s properties to data at runtime.+-- You can\'t specify @tags@ as a valid property for @bindingProperties@.+component_bindingProperties :: Lens.Lens' Component (Prelude.HashMap Prelude.Text ComponentBindingPropertiesValue)+component_bindingProperties = Lens.lens (\Component' {bindingProperties} -> bindingProperties) (\s@Component' {} a -> s {bindingProperties = a} :: Component) Prelude.. Lens.coerced++-- | The type of the component. This can be an Amplify custom UI component or+-- another custom component.+component_componentType :: Lens.Lens' Component Prelude.Text+component_componentType = Lens.lens (\Component' {componentType} -> componentType) (\s@Component' {} a -> s {componentType = a} :: Component)++-- | The time that the component was created.+component_createdAt :: Lens.Lens' Component Prelude.UTCTime+component_createdAt = Lens.lens (\Component' {createdAt} -> createdAt) (\s@Component' {} a -> s {createdAt = a} :: Component) Prelude.. Data._Time++-- | The name of the backend environment that is a part of the Amplify app.+component_environmentName :: Lens.Lens' Component Prelude.Text+component_environmentName = Lens.lens (\Component' {environmentName} -> environmentName) (\s@Component' {} a -> s {environmentName = a} :: Component)++-- | The unique ID of the component.+component_id :: Lens.Lens' Component Prelude.Text+component_id = Lens.lens (\Component' {id} -> id) (\s@Component' {} a -> s {id = a} :: Component)++-- | The name of the component.+component_name :: Lens.Lens' Component Prelude.Text+component_name = Lens.lens (\Component' {name} -> name) (\s@Component' {} a -> s {name = a} :: Component)++-- | 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@.+component_overrides :: Lens.Lens' Component (Prelude.HashMap Prelude.Text (Prelude.HashMap Prelude.Text Prelude.Text))+component_overrides = Lens.lens (\Component' {overrides} -> overrides) (\s@Component' {} a -> s {overrides = a} :: Component) Prelude.. Lens.coerced++-- | Describes the component\'s properties. You can\'t specify @tags@ as a+-- valid property for @properties@.+component_properties :: Lens.Lens' Component (Prelude.HashMap Prelude.Text ComponentProperty)+component_properties = Lens.lens (\Component' {properties} -> properties) (\s@Component' {} a -> s {properties = a} :: Component) Prelude.. Lens.coerced++-- | A list of the component\'s variants. A variant is a unique style+-- configuration of a main component.+component_variants :: Lens.Lens' Component [ComponentVariant]+component_variants = Lens.lens (\Component' {variants} -> variants) (\s@Component' {} a -> s {variants = a} :: Component) Prelude.. Lens.coerced++instance Data.FromJSON Component where+ parseJSON =+ Data.withObject+ "Component"+ ( \x ->+ Component'+ Prelude.<$> (x Data..:? "children" Data..!= Prelude.mempty)+ Prelude.<*> ( x+ Data..:? "collectionProperties"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "events" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "modifiedAt")+ Prelude.<*> (x Data..:? "schemaVersion")+ Prelude.<*> (x Data..:? "sourceId")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "appId")+ Prelude.<*> ( x+ Data..:? "bindingProperties"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..: "componentType")+ Prelude.<*> (x Data..: "createdAt")+ Prelude.<*> (x Data..: "environmentName")+ Prelude.<*> (x Data..: "id")+ Prelude.<*> (x Data..: "name")+ Prelude.<*> (x Data..:? "overrides" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "properties" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "variants" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable Component where+ hashWithSalt _salt Component' {..} =+ _salt+ `Prelude.hashWithSalt` children+ `Prelude.hashWithSalt` collectionProperties+ `Prelude.hashWithSalt` events+ `Prelude.hashWithSalt` modifiedAt+ `Prelude.hashWithSalt` schemaVersion+ `Prelude.hashWithSalt` sourceId+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` bindingProperties+ `Prelude.hashWithSalt` componentType+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` overrides+ `Prelude.hashWithSalt` properties+ `Prelude.hashWithSalt` variants++instance Prelude.NFData Component where+ rnf Component' {..} =+ Prelude.rnf children+ `Prelude.seq` Prelude.rnf collectionProperties+ `Prelude.seq` Prelude.rnf events+ `Prelude.seq` Prelude.rnf modifiedAt+ `Prelude.seq` Prelude.rnf schemaVersion+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf bindingProperties+ `Prelude.seq` Prelude.rnf componentType+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf overrides+ `Prelude.seq` Prelude.rnf properties+ `Prelude.seq` Prelude.rnf variants
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentBindingPropertiesValue.hs view
@@ -0,0 +1,123 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValue where++import Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValueProperties+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | 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.+--+-- /See:/ 'newComponentBindingPropertiesValue' smart constructor.+data ComponentBindingPropertiesValue = ComponentBindingPropertiesValue'+ { -- | Describes the properties to customize with data at runtime.+ bindingProperties :: Prelude.Maybe ComponentBindingPropertiesValueProperties,+ -- | The default value of the property.+ defaultValue :: Prelude.Maybe Prelude.Text,+ -- | The property type.+ type' :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentBindingPropertiesValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'bindingProperties', 'componentBindingPropertiesValue_bindingProperties' - Describes the properties to customize with data at runtime.+--+-- 'defaultValue', 'componentBindingPropertiesValue_defaultValue' - The default value of the property.+--+-- 'type'', 'componentBindingPropertiesValue_type' - The property type.+newComponentBindingPropertiesValue ::+ ComponentBindingPropertiesValue+newComponentBindingPropertiesValue =+ ComponentBindingPropertiesValue'+ { bindingProperties =+ Prelude.Nothing,+ defaultValue = Prelude.Nothing,+ type' = Prelude.Nothing+ }++-- | Describes the properties to customize with data at runtime.+componentBindingPropertiesValue_bindingProperties :: Lens.Lens' ComponentBindingPropertiesValue (Prelude.Maybe ComponentBindingPropertiesValueProperties)+componentBindingPropertiesValue_bindingProperties = Lens.lens (\ComponentBindingPropertiesValue' {bindingProperties} -> bindingProperties) (\s@ComponentBindingPropertiesValue' {} a -> s {bindingProperties = a} :: ComponentBindingPropertiesValue)++-- | The default value of the property.+componentBindingPropertiesValue_defaultValue :: Lens.Lens' ComponentBindingPropertiesValue (Prelude.Maybe Prelude.Text)+componentBindingPropertiesValue_defaultValue = Lens.lens (\ComponentBindingPropertiesValue' {defaultValue} -> defaultValue) (\s@ComponentBindingPropertiesValue' {} a -> s {defaultValue = a} :: ComponentBindingPropertiesValue)++-- | The property type.+componentBindingPropertiesValue_type :: Lens.Lens' ComponentBindingPropertiesValue (Prelude.Maybe Prelude.Text)+componentBindingPropertiesValue_type = Lens.lens (\ComponentBindingPropertiesValue' {type'} -> type') (\s@ComponentBindingPropertiesValue' {} a -> s {type' = a} :: ComponentBindingPropertiesValue)++instance+ Data.FromJSON+ ComponentBindingPropertiesValue+ where+ parseJSON =+ Data.withObject+ "ComponentBindingPropertiesValue"+ ( \x ->+ ComponentBindingPropertiesValue'+ Prelude.<$> (x Data..:? "bindingProperties")+ Prelude.<*> (x Data..:? "defaultValue")+ Prelude.<*> (x Data..:? "type")+ )++instance+ Prelude.Hashable+ ComponentBindingPropertiesValue+ where+ hashWithSalt+ _salt+ ComponentBindingPropertiesValue' {..} =+ _salt+ `Prelude.hashWithSalt` bindingProperties+ `Prelude.hashWithSalt` defaultValue+ `Prelude.hashWithSalt` type'++instance+ Prelude.NFData+ ComponentBindingPropertiesValue+ where+ rnf ComponentBindingPropertiesValue' {..} =+ Prelude.rnf bindingProperties+ `Prelude.seq` Prelude.rnf defaultValue+ `Prelude.seq` Prelude.rnf type'++instance Data.ToJSON ComponentBindingPropertiesValue where+ toJSON ComponentBindingPropertiesValue' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("bindingProperties" Data..=)+ Prelude.<$> bindingProperties,+ ("defaultValue" Data..=) Prelude.<$> defaultValue,+ ("type" Data..=) Prelude.<$> type'+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentBindingPropertiesValueProperties.hs view
@@ -0,0 +1,190 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValueProperties+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValueProperties where++import Amazonka.AmplifyUiBuilder.Types.Predicate+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | 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.+--+-- /See:/ 'newComponentBindingPropertiesValueProperties' smart constructor.+data ComponentBindingPropertiesValueProperties = ComponentBindingPropertiesValueProperties'+ { -- | An Amazon S3 bucket.+ bucket :: Prelude.Maybe Prelude.Text,+ -- | The default value to assign to the property.+ defaultValue :: Prelude.Maybe Prelude.Text,+ -- | The field to bind the data to.+ field :: Prelude.Maybe Prelude.Text,+ -- | The storage key for an Amazon S3 bucket.+ key :: Prelude.Maybe Prelude.Text,+ -- | An Amplify DataStore model.+ model :: Prelude.Maybe Prelude.Text,+ -- | A list of predicates for binding a component\'s properties to data.+ predicates :: Prelude.Maybe [Predicate],+ -- | The name of a component slot.+ slotName :: Prelude.Maybe Prelude.Text,+ -- | An authenticated user attribute.+ userAttribute :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentBindingPropertiesValueProperties' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'bucket', 'componentBindingPropertiesValueProperties_bucket' - An Amazon S3 bucket.+--+-- 'defaultValue', 'componentBindingPropertiesValueProperties_defaultValue' - The default value to assign to the property.+--+-- 'field', 'componentBindingPropertiesValueProperties_field' - The field to bind the data to.+--+-- 'key', 'componentBindingPropertiesValueProperties_key' - The storage key for an Amazon S3 bucket.+--+-- 'model', 'componentBindingPropertiesValueProperties_model' - An Amplify DataStore model.+--+-- 'predicates', 'componentBindingPropertiesValueProperties_predicates' - A list of predicates for binding a component\'s properties to data.+--+-- 'slotName', 'componentBindingPropertiesValueProperties_slotName' - The name of a component slot.+--+-- 'userAttribute', 'componentBindingPropertiesValueProperties_userAttribute' - An authenticated user attribute.+newComponentBindingPropertiesValueProperties ::+ ComponentBindingPropertiesValueProperties+newComponentBindingPropertiesValueProperties =+ ComponentBindingPropertiesValueProperties'+ { bucket =+ Prelude.Nothing,+ defaultValue = Prelude.Nothing,+ field = Prelude.Nothing,+ key = Prelude.Nothing,+ model = Prelude.Nothing,+ predicates = Prelude.Nothing,+ slotName = Prelude.Nothing,+ userAttribute = Prelude.Nothing+ }++-- | An Amazon S3 bucket.+componentBindingPropertiesValueProperties_bucket :: Lens.Lens' ComponentBindingPropertiesValueProperties (Prelude.Maybe Prelude.Text)+componentBindingPropertiesValueProperties_bucket = Lens.lens (\ComponentBindingPropertiesValueProperties' {bucket} -> bucket) (\s@ComponentBindingPropertiesValueProperties' {} a -> s {bucket = a} :: ComponentBindingPropertiesValueProperties)++-- | The default value to assign to the property.+componentBindingPropertiesValueProperties_defaultValue :: Lens.Lens' ComponentBindingPropertiesValueProperties (Prelude.Maybe Prelude.Text)+componentBindingPropertiesValueProperties_defaultValue = Lens.lens (\ComponentBindingPropertiesValueProperties' {defaultValue} -> defaultValue) (\s@ComponentBindingPropertiesValueProperties' {} a -> s {defaultValue = a} :: ComponentBindingPropertiesValueProperties)++-- | The field to bind the data to.+componentBindingPropertiesValueProperties_field :: Lens.Lens' ComponentBindingPropertiesValueProperties (Prelude.Maybe Prelude.Text)+componentBindingPropertiesValueProperties_field = Lens.lens (\ComponentBindingPropertiesValueProperties' {field} -> field) (\s@ComponentBindingPropertiesValueProperties' {} a -> s {field = a} :: ComponentBindingPropertiesValueProperties)++-- | The storage key for an Amazon S3 bucket.+componentBindingPropertiesValueProperties_key :: Lens.Lens' ComponentBindingPropertiesValueProperties (Prelude.Maybe Prelude.Text)+componentBindingPropertiesValueProperties_key = Lens.lens (\ComponentBindingPropertiesValueProperties' {key} -> key) (\s@ComponentBindingPropertiesValueProperties' {} a -> s {key = a} :: ComponentBindingPropertiesValueProperties)++-- | An Amplify DataStore model.+componentBindingPropertiesValueProperties_model :: Lens.Lens' ComponentBindingPropertiesValueProperties (Prelude.Maybe Prelude.Text)+componentBindingPropertiesValueProperties_model = Lens.lens (\ComponentBindingPropertiesValueProperties' {model} -> model) (\s@ComponentBindingPropertiesValueProperties' {} a -> s {model = a} :: ComponentBindingPropertiesValueProperties)++-- | A list of predicates for binding a component\'s properties to data.+componentBindingPropertiesValueProperties_predicates :: Lens.Lens' ComponentBindingPropertiesValueProperties (Prelude.Maybe [Predicate])+componentBindingPropertiesValueProperties_predicates = Lens.lens (\ComponentBindingPropertiesValueProperties' {predicates} -> predicates) (\s@ComponentBindingPropertiesValueProperties' {} a -> s {predicates = a} :: ComponentBindingPropertiesValueProperties) Prelude.. Lens.mapping Lens.coerced++-- | The name of a component slot.+componentBindingPropertiesValueProperties_slotName :: Lens.Lens' ComponentBindingPropertiesValueProperties (Prelude.Maybe Prelude.Text)+componentBindingPropertiesValueProperties_slotName = Lens.lens (\ComponentBindingPropertiesValueProperties' {slotName} -> slotName) (\s@ComponentBindingPropertiesValueProperties' {} a -> s {slotName = a} :: ComponentBindingPropertiesValueProperties)++-- | An authenticated user attribute.+componentBindingPropertiesValueProperties_userAttribute :: Lens.Lens' ComponentBindingPropertiesValueProperties (Prelude.Maybe Prelude.Text)+componentBindingPropertiesValueProperties_userAttribute = Lens.lens (\ComponentBindingPropertiesValueProperties' {userAttribute} -> userAttribute) (\s@ComponentBindingPropertiesValueProperties' {} a -> s {userAttribute = a} :: ComponentBindingPropertiesValueProperties)++instance+ Data.FromJSON+ ComponentBindingPropertiesValueProperties+ where+ parseJSON =+ Data.withObject+ "ComponentBindingPropertiesValueProperties"+ ( \x ->+ ComponentBindingPropertiesValueProperties'+ Prelude.<$> (x Data..:? "bucket")+ Prelude.<*> (x Data..:? "defaultValue")+ Prelude.<*> (x Data..:? "field")+ Prelude.<*> (x Data..:? "key")+ Prelude.<*> (x Data..:? "model")+ Prelude.<*> (x Data..:? "predicates" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "slotName")+ Prelude.<*> (x Data..:? "userAttribute")+ )++instance+ Prelude.Hashable+ ComponentBindingPropertiesValueProperties+ where+ hashWithSalt+ _salt+ ComponentBindingPropertiesValueProperties' {..} =+ _salt+ `Prelude.hashWithSalt` bucket+ `Prelude.hashWithSalt` defaultValue+ `Prelude.hashWithSalt` field+ `Prelude.hashWithSalt` key+ `Prelude.hashWithSalt` model+ `Prelude.hashWithSalt` predicates+ `Prelude.hashWithSalt` slotName+ `Prelude.hashWithSalt` userAttribute++instance+ Prelude.NFData+ ComponentBindingPropertiesValueProperties+ where+ rnf ComponentBindingPropertiesValueProperties' {..} =+ Prelude.rnf bucket+ `Prelude.seq` Prelude.rnf defaultValue+ `Prelude.seq` Prelude.rnf field+ `Prelude.seq` Prelude.rnf key+ `Prelude.seq` Prelude.rnf model+ `Prelude.seq` Prelude.rnf predicates+ `Prelude.seq` Prelude.rnf slotName+ `Prelude.seq` Prelude.rnf userAttribute++instance+ Data.ToJSON+ ComponentBindingPropertiesValueProperties+ where+ toJSON ComponentBindingPropertiesValueProperties' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("bucket" Data..=) Prelude.<$> bucket,+ ("defaultValue" Data..=) Prelude.<$> defaultValue,+ ("field" Data..=) Prelude.<$> field,+ ("key" Data..=) Prelude.<$> key,+ ("model" Data..=) Prelude.<$> model,+ ("predicates" Data..=) Prelude.<$> predicates,+ ("slotName" Data..=) Prelude.<$> slotName,+ ("userAttribute" Data..=) Prelude.<$> userAttribute+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentChild.hs view
@@ -0,0 +1,163 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentChild+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentChild where++import Amazonka.AmplifyUiBuilder.Types.ComponentEvent+import Amazonka.AmplifyUiBuilder.Types.ComponentProperty+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A nested UI configuration within a parent @Component@.+--+-- /See:/ 'newComponentChild' smart constructor.+data ComponentChild = ComponentChild'+ { -- | The list of @ComponentChild@ instances for this component.+ children :: Prelude.Maybe [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 :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentEvent),+ -- | The unique ID of the child component in its original source system, such+ -- as Figma.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | The type of the child component.+ componentType :: Prelude.Text,+ -- | The name of the child component.+ name :: Prelude.Text,+ -- | Describes the properties of the child component. You can\'t specify+ -- @tags@ as a valid property for @properties@.+ properties :: Prelude.HashMap Prelude.Text ComponentProperty+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentChild' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'children', 'componentChild_children' - The list of @ComponentChild@ instances for this component.+--+-- 'events', 'componentChild_events' - 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.+--+-- 'sourceId', 'componentChild_sourceId' - The unique ID of the child component in its original source system, such+-- as Figma.+--+-- 'componentType', 'componentChild_componentType' - The type of the child component.+--+-- 'name', 'componentChild_name' - The name of the child component.+--+-- 'properties', 'componentChild_properties' - Describes the properties of the child component. You can\'t specify+-- @tags@ as a valid property for @properties@.+newComponentChild ::+ -- | 'componentType'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ ComponentChild+newComponentChild pComponentType_ pName_ =+ ComponentChild'+ { children = Prelude.Nothing,+ events = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ componentType = pComponentType_,+ name = pName_,+ properties = Prelude.mempty+ }++-- | The list of @ComponentChild@ instances for this component.+componentChild_children :: Lens.Lens' ComponentChild (Prelude.Maybe [ComponentChild])+componentChild_children = Lens.lens (\ComponentChild' {children} -> children) (\s@ComponentChild' {} a -> s {children = a} :: ComponentChild) Prelude.. Lens.mapping Lens.coerced++-- | 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.+componentChild_events :: Lens.Lens' ComponentChild (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentEvent))+componentChild_events = Lens.lens (\ComponentChild' {events} -> events) (\s@ComponentChild' {} a -> s {events = a} :: ComponentChild) Prelude.. Lens.mapping Lens.coerced++-- | The unique ID of the child component in its original source system, such+-- as Figma.+componentChild_sourceId :: Lens.Lens' ComponentChild (Prelude.Maybe Prelude.Text)+componentChild_sourceId = Lens.lens (\ComponentChild' {sourceId} -> sourceId) (\s@ComponentChild' {} a -> s {sourceId = a} :: ComponentChild)++-- | The type of the child component.+componentChild_componentType :: Lens.Lens' ComponentChild Prelude.Text+componentChild_componentType = Lens.lens (\ComponentChild' {componentType} -> componentType) (\s@ComponentChild' {} a -> s {componentType = a} :: ComponentChild)++-- | The name of the child component.+componentChild_name :: Lens.Lens' ComponentChild Prelude.Text+componentChild_name = Lens.lens (\ComponentChild' {name} -> name) (\s@ComponentChild' {} a -> s {name = a} :: ComponentChild)++-- | Describes the properties of the child component. You can\'t specify+-- @tags@ as a valid property for @properties@.+componentChild_properties :: Lens.Lens' ComponentChild (Prelude.HashMap Prelude.Text ComponentProperty)+componentChild_properties = Lens.lens (\ComponentChild' {properties} -> properties) (\s@ComponentChild' {} a -> s {properties = a} :: ComponentChild) Prelude.. Lens.coerced++instance Data.FromJSON ComponentChild where+ parseJSON =+ Data.withObject+ "ComponentChild"+ ( \x ->+ ComponentChild'+ Prelude.<$> (x Data..:? "children" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "events" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "sourceId")+ Prelude.<*> (x Data..: "componentType")+ Prelude.<*> (x Data..: "name")+ Prelude.<*> (x Data..:? "properties" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable ComponentChild where+ hashWithSalt _salt ComponentChild' {..} =+ _salt+ `Prelude.hashWithSalt` children+ `Prelude.hashWithSalt` events+ `Prelude.hashWithSalt` sourceId+ `Prelude.hashWithSalt` componentType+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` properties++instance Prelude.NFData ComponentChild where+ rnf ComponentChild' {..} =+ Prelude.rnf children+ `Prelude.seq` Prelude.rnf events+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf componentType+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf properties++instance Data.ToJSON ComponentChild where+ toJSON ComponentChild' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("children" Data..=) Prelude.<$> children,+ ("events" Data..=) Prelude.<$> events,+ ("sourceId" Data..=) Prelude.<$> sourceId,+ Prelude.Just ("componentType" Data..= componentType),+ Prelude.Just ("name" Data..= name),+ Prelude.Just ("properties" Data..= properties)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentConditionProperty.hs view
@@ -0,0 +1,165 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentConditionProperty+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentConditionProperty where++import {-# SOURCE #-} Amazonka.AmplifyUiBuilder.Types.ComponentProperty+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | 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.+--+-- /See:/ 'newComponentConditionProperty' smart constructor.+data ComponentConditionProperty = ComponentConditionProperty'+ { -- | The value to assign to the property if the condition is not met.+ else' :: Prelude.Maybe ComponentProperty,+ -- | The name of a field. Specify this when the property is a data model.+ field :: Prelude.Maybe Prelude.Text,+ -- | The value of the property to evaluate.+ operand :: Prelude.Maybe Prelude.Text,+ -- | The type of the property to evaluate.+ operandType :: Prelude.Maybe Prelude.Text,+ -- | The operator to use to perform the evaluation, such as @eq@ to represent+ -- equals.+ operator :: Prelude.Maybe Prelude.Text,+ -- | The name of the conditional property.+ property :: Prelude.Maybe Prelude.Text,+ -- | The value to assign to the property if the condition is met.+ then' :: Prelude.Maybe ComponentProperty+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentConditionProperty' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'else'', 'componentConditionProperty_else' - The value to assign to the property if the condition is not met.+--+-- 'field', 'componentConditionProperty_field' - The name of a field. Specify this when the property is a data model.+--+-- 'operand', 'componentConditionProperty_operand' - The value of the property to evaluate.+--+-- 'operandType', 'componentConditionProperty_operandType' - The type of the property to evaluate.+--+-- 'operator', 'componentConditionProperty_operator' - The operator to use to perform the evaluation, such as @eq@ to represent+-- equals.+--+-- 'property', 'componentConditionProperty_property' - The name of the conditional property.+--+-- 'then'', 'componentConditionProperty_then' - The value to assign to the property if the condition is met.+newComponentConditionProperty ::+ ComponentConditionProperty+newComponentConditionProperty =+ ComponentConditionProperty'+ { else' =+ Prelude.Nothing,+ field = Prelude.Nothing,+ operand = Prelude.Nothing,+ operandType = Prelude.Nothing,+ operator = Prelude.Nothing,+ property = Prelude.Nothing,+ then' = Prelude.Nothing+ }++-- | The value to assign to the property if the condition is not met.+componentConditionProperty_else :: Lens.Lens' ComponentConditionProperty (Prelude.Maybe ComponentProperty)+componentConditionProperty_else = Lens.lens (\ComponentConditionProperty' {else'} -> else') (\s@ComponentConditionProperty' {} a -> s {else' = a} :: ComponentConditionProperty)++-- | The name of a field. Specify this when the property is a data model.+componentConditionProperty_field :: Lens.Lens' ComponentConditionProperty (Prelude.Maybe Prelude.Text)+componentConditionProperty_field = Lens.lens (\ComponentConditionProperty' {field} -> field) (\s@ComponentConditionProperty' {} a -> s {field = a} :: ComponentConditionProperty)++-- | The value of the property to evaluate.+componentConditionProperty_operand :: Lens.Lens' ComponentConditionProperty (Prelude.Maybe Prelude.Text)+componentConditionProperty_operand = Lens.lens (\ComponentConditionProperty' {operand} -> operand) (\s@ComponentConditionProperty' {} a -> s {operand = a} :: ComponentConditionProperty)++-- | The type of the property to evaluate.+componentConditionProperty_operandType :: Lens.Lens' ComponentConditionProperty (Prelude.Maybe Prelude.Text)+componentConditionProperty_operandType = Lens.lens (\ComponentConditionProperty' {operandType} -> operandType) (\s@ComponentConditionProperty' {} a -> s {operandType = a} :: ComponentConditionProperty)++-- | The operator to use to perform the evaluation, such as @eq@ to represent+-- equals.+componentConditionProperty_operator :: Lens.Lens' ComponentConditionProperty (Prelude.Maybe Prelude.Text)+componentConditionProperty_operator = Lens.lens (\ComponentConditionProperty' {operator} -> operator) (\s@ComponentConditionProperty' {} a -> s {operator = a} :: ComponentConditionProperty)++-- | The name of the conditional property.+componentConditionProperty_property :: Lens.Lens' ComponentConditionProperty (Prelude.Maybe Prelude.Text)+componentConditionProperty_property = Lens.lens (\ComponentConditionProperty' {property} -> property) (\s@ComponentConditionProperty' {} a -> s {property = a} :: ComponentConditionProperty)++-- | The value to assign to the property if the condition is met.+componentConditionProperty_then :: Lens.Lens' ComponentConditionProperty (Prelude.Maybe ComponentProperty)+componentConditionProperty_then = Lens.lens (\ComponentConditionProperty' {then'} -> then') (\s@ComponentConditionProperty' {} a -> s {then' = a} :: ComponentConditionProperty)++instance Data.FromJSON ComponentConditionProperty where+ parseJSON =+ Data.withObject+ "ComponentConditionProperty"+ ( \x ->+ ComponentConditionProperty'+ Prelude.<$> (x Data..:? "else")+ Prelude.<*> (x Data..:? "field")+ Prelude.<*> (x Data..:? "operand")+ Prelude.<*> (x Data..:? "operandType")+ Prelude.<*> (x Data..:? "operator")+ Prelude.<*> (x Data..:? "property")+ Prelude.<*> (x Data..:? "then")+ )++instance Prelude.Hashable ComponentConditionProperty where+ hashWithSalt _salt ComponentConditionProperty' {..} =+ _salt+ `Prelude.hashWithSalt` else'+ `Prelude.hashWithSalt` field+ `Prelude.hashWithSalt` operand+ `Prelude.hashWithSalt` operandType+ `Prelude.hashWithSalt` operator+ `Prelude.hashWithSalt` property+ `Prelude.hashWithSalt` then'++instance Prelude.NFData ComponentConditionProperty where+ rnf ComponentConditionProperty' {..} =+ Prelude.rnf else'+ `Prelude.seq` Prelude.rnf field+ `Prelude.seq` Prelude.rnf operand+ `Prelude.seq` Prelude.rnf operandType+ `Prelude.seq` Prelude.rnf operator+ `Prelude.seq` Prelude.rnf property+ `Prelude.seq` Prelude.rnf then'++instance Data.ToJSON ComponentConditionProperty where+ toJSON ComponentConditionProperty' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("else" Data..=) Prelude.<$> else',+ ("field" Data..=) Prelude.<$> field,+ ("operand" Data..=) Prelude.<$> operand,+ ("operandType" Data..=) Prelude.<$> operandType,+ ("operator" Data..=) Prelude.<$> operator,+ ("property" Data..=) Prelude.<$> property,+ ("then" Data..=) Prelude.<$> then'+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentConditionProperty.hs-boot view
@@ -0,0 +1,33 @@+{-# OPTIONS_GHC -Wno-missing-methods #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentConditionProperty+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentConditionProperty where++import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++data ComponentConditionProperty++instance Prelude.Eq ComponentConditionProperty++instance Prelude.Read ComponentConditionProperty++instance Prelude.Show ComponentConditionProperty++instance Prelude.Generic ComponentConditionProperty++instance Data.ToJSON ComponentConditionProperty++instance Data.FromJSON ComponentConditionProperty++instance Prelude.NFData ComponentConditionProperty++instance Prelude.Hashable ComponentConditionProperty
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentDataConfiguration.hs view
@@ -0,0 +1,134 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentDataConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentDataConfiguration where++import Amazonka.AmplifyUiBuilder.Types.Predicate+import Amazonka.AmplifyUiBuilder.Types.SortProperty+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the configuration for binding a component\'s properties to+-- data.+--+-- /See:/ 'newComponentDataConfiguration' smart constructor.+data ComponentDataConfiguration = ComponentDataConfiguration'+ { -- | 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 :: Prelude.Maybe [Prelude.Text],+ -- | 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 :: Prelude.Maybe Predicate,+ -- | Describes how to sort the component\'s properties.+ sort :: Prelude.Maybe [SortProperty],+ -- | The name of the data model to use to bind data to a component.+ model :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentDataConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'identifiers', 'componentDataConfiguration_identifiers' - 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.+--+-- 'predicate', 'componentDataConfiguration_predicate' - 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.+--+-- 'sort', 'componentDataConfiguration_sort' - Describes how to sort the component\'s properties.+--+-- 'model', 'componentDataConfiguration_model' - The name of the data model to use to bind data to a component.+newComponentDataConfiguration ::+ -- | 'model'+ Prelude.Text ->+ ComponentDataConfiguration+newComponentDataConfiguration pModel_ =+ ComponentDataConfiguration'+ { identifiers =+ Prelude.Nothing,+ predicate = Prelude.Nothing,+ sort = Prelude.Nothing,+ model = pModel_+ }++-- | 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.+componentDataConfiguration_identifiers :: Lens.Lens' ComponentDataConfiguration (Prelude.Maybe [Prelude.Text])+componentDataConfiguration_identifiers = Lens.lens (\ComponentDataConfiguration' {identifiers} -> identifiers) (\s@ComponentDataConfiguration' {} a -> s {identifiers = a} :: ComponentDataConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | 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.+componentDataConfiguration_predicate :: Lens.Lens' ComponentDataConfiguration (Prelude.Maybe Predicate)+componentDataConfiguration_predicate = Lens.lens (\ComponentDataConfiguration' {predicate} -> predicate) (\s@ComponentDataConfiguration' {} a -> s {predicate = a} :: ComponentDataConfiguration)++-- | Describes how to sort the component\'s properties.+componentDataConfiguration_sort :: Lens.Lens' ComponentDataConfiguration (Prelude.Maybe [SortProperty])+componentDataConfiguration_sort = Lens.lens (\ComponentDataConfiguration' {sort} -> sort) (\s@ComponentDataConfiguration' {} a -> s {sort = a} :: ComponentDataConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | The name of the data model to use to bind data to a component.+componentDataConfiguration_model :: Lens.Lens' ComponentDataConfiguration Prelude.Text+componentDataConfiguration_model = Lens.lens (\ComponentDataConfiguration' {model} -> model) (\s@ComponentDataConfiguration' {} a -> s {model = a} :: ComponentDataConfiguration)++instance Data.FromJSON ComponentDataConfiguration where+ parseJSON =+ Data.withObject+ "ComponentDataConfiguration"+ ( \x ->+ ComponentDataConfiguration'+ Prelude.<$> (x Data..:? "identifiers" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "predicate")+ Prelude.<*> (x Data..:? "sort" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "model")+ )++instance Prelude.Hashable ComponentDataConfiguration where+ hashWithSalt _salt ComponentDataConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` identifiers+ `Prelude.hashWithSalt` predicate+ `Prelude.hashWithSalt` sort+ `Prelude.hashWithSalt` model++instance Prelude.NFData ComponentDataConfiguration where+ rnf ComponentDataConfiguration' {..} =+ Prelude.rnf identifiers+ `Prelude.seq` Prelude.rnf predicate+ `Prelude.seq` Prelude.rnf sort+ `Prelude.seq` Prelude.rnf model++instance Data.ToJSON ComponentDataConfiguration where+ toJSON ComponentDataConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("identifiers" Data..=) Prelude.<$> identifiers,+ ("predicate" Data..=) Prelude.<$> predicate,+ ("sort" Data..=) Prelude.<$> sort,+ Prelude.Just ("model" Data..= model)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentEvent.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentEvent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentEvent where++import Amazonka.AmplifyUiBuilder.Types.ActionParameters+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | 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.+--+-- /See:/ 'newComponentEvent' smart constructor.+data ComponentEvent = ComponentEvent'+ { -- | The action to perform when a specific event is raised.+ action :: Prelude.Maybe Prelude.Text,+ -- | Binds an event to an action on a component. When you specify a+ -- @bindingEvent@, the event is called when the action is performed.+ bindingEvent :: Prelude.Maybe Prelude.Text,+ -- | Describes information about the action.+ parameters :: Prelude.Maybe ActionParameters+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentEvent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'action', 'componentEvent_action' - The action to perform when a specific event is raised.+--+-- 'bindingEvent', 'componentEvent_bindingEvent' - Binds an event to an action on a component. When you specify a+-- @bindingEvent@, the event is called when the action is performed.+--+-- 'parameters', 'componentEvent_parameters' - Describes information about the action.+newComponentEvent ::+ ComponentEvent+newComponentEvent =+ ComponentEvent'+ { action = Prelude.Nothing,+ bindingEvent = Prelude.Nothing,+ parameters = Prelude.Nothing+ }++-- | The action to perform when a specific event is raised.+componentEvent_action :: Lens.Lens' ComponentEvent (Prelude.Maybe Prelude.Text)+componentEvent_action = Lens.lens (\ComponentEvent' {action} -> action) (\s@ComponentEvent' {} a -> s {action = a} :: ComponentEvent)++-- | Binds an event to an action on a component. When you specify a+-- @bindingEvent@, the event is called when the action is performed.+componentEvent_bindingEvent :: Lens.Lens' ComponentEvent (Prelude.Maybe Prelude.Text)+componentEvent_bindingEvent = Lens.lens (\ComponentEvent' {bindingEvent} -> bindingEvent) (\s@ComponentEvent' {} a -> s {bindingEvent = a} :: ComponentEvent)++-- | Describes information about the action.+componentEvent_parameters :: Lens.Lens' ComponentEvent (Prelude.Maybe ActionParameters)+componentEvent_parameters = Lens.lens (\ComponentEvent' {parameters} -> parameters) (\s@ComponentEvent' {} a -> s {parameters = a} :: ComponentEvent)++instance Data.FromJSON ComponentEvent where+ parseJSON =+ Data.withObject+ "ComponentEvent"+ ( \x ->+ ComponentEvent'+ Prelude.<$> (x Data..:? "action")+ Prelude.<*> (x Data..:? "bindingEvent")+ Prelude.<*> (x Data..:? "parameters")+ )++instance Prelude.Hashable ComponentEvent where+ hashWithSalt _salt ComponentEvent' {..} =+ _salt+ `Prelude.hashWithSalt` action+ `Prelude.hashWithSalt` bindingEvent+ `Prelude.hashWithSalt` parameters++instance Prelude.NFData ComponentEvent where+ rnf ComponentEvent' {..} =+ Prelude.rnf action+ `Prelude.seq` Prelude.rnf bindingEvent+ `Prelude.seq` Prelude.rnf parameters++instance Data.ToJSON ComponentEvent where+ toJSON ComponentEvent' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("action" Data..=) Prelude.<$> action,+ ("bindingEvent" Data..=) Prelude.<$> bindingEvent,+ ("parameters" Data..=) Prelude.<$> parameters+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentProperty.hs view
@@ -0,0 +1,287 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentProperty+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentProperty where++import {-# SOURCE #-} Amazonka.AmplifyUiBuilder.Types.ComponentConditionProperty+import Amazonka.AmplifyUiBuilder.Types.ComponentPropertyBindingProperties+import Amazonka.AmplifyUiBuilder.Types.FormBindingElement+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the configuration for all of a component\'s properties. Use+-- @ComponentProperty@ to specify the values to render or bind by default.+--+-- /See:/ 'newComponentProperty' smart constructor.+data ComponentProperty = ComponentProperty'+ { -- | The information to bind the component property to data at runtime.+ bindingProperties :: Prelude.Maybe ComponentPropertyBindingProperties,+ -- | The information to bind the component property to form data.+ bindings :: Prelude.Maybe (Prelude.HashMap Prelude.Text FormBindingElement),+ -- | The information to bind the component property to data at runtime. Use+ -- this for collection components.+ collectionBindingProperties :: Prelude.Maybe ComponentPropertyBindingProperties,+ -- | The name of the component that is affected by an event.+ componentName :: Prelude.Maybe Prelude.Text,+ -- | A list of component properties to concatenate to create the value to+ -- assign to this component property.+ concat :: Prelude.Maybe [ComponentProperty],+ -- | The conditional expression to use to assign a value to the component+ -- property.+ condition :: Prelude.Maybe ComponentConditionProperty,+ -- | Specifies whether the user configured the property in Amplify Studio+ -- after importing it.+ configured :: Prelude.Maybe Prelude.Bool,+ -- | The default value to assign to the component property.+ defaultValue :: Prelude.Maybe Prelude.Text,+ -- | An event that occurs in your app. Use this for workflow data binding.+ event :: Prelude.Maybe Prelude.Text,+ -- | The default value assigned to the property when the component is+ -- imported into an app.+ importedValue :: Prelude.Maybe Prelude.Text,+ -- | The data model to use to assign a value to the component property.+ model :: Prelude.Maybe Prelude.Text,+ -- | The name of the component\'s property that is affected by an event.+ property :: Prelude.Maybe Prelude.Text,+ -- | The component type.+ type' :: Prelude.Maybe Prelude.Text,+ -- | An authenticated user attribute to use to assign a value to the+ -- component property.+ userAttribute :: Prelude.Maybe Prelude.Text,+ -- | The value to assign to the component property.+ value :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentProperty' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'bindingProperties', 'componentProperty_bindingProperties' - The information to bind the component property to data at runtime.+--+-- 'bindings', 'componentProperty_bindings' - The information to bind the component property to form data.+--+-- 'collectionBindingProperties', 'componentProperty_collectionBindingProperties' - The information to bind the component property to data at runtime. Use+-- this for collection components.+--+-- 'componentName', 'componentProperty_componentName' - The name of the component that is affected by an event.+--+-- 'concat', 'componentProperty_concat' - A list of component properties to concatenate to create the value to+-- assign to this component property.+--+-- 'condition', 'componentProperty_condition' - The conditional expression to use to assign a value to the component+-- property.+--+-- 'configured', 'componentProperty_configured' - Specifies whether the user configured the property in Amplify Studio+-- after importing it.+--+-- 'defaultValue', 'componentProperty_defaultValue' - The default value to assign to the component property.+--+-- 'event', 'componentProperty_event' - An event that occurs in your app. Use this for workflow data binding.+--+-- 'importedValue', 'componentProperty_importedValue' - The default value assigned to the property when the component is+-- imported into an app.+--+-- 'model', 'componentProperty_model' - The data model to use to assign a value to the component property.+--+-- 'property', 'componentProperty_property' - The name of the component\'s property that is affected by an event.+--+-- 'type'', 'componentProperty_type' - The component type.+--+-- 'userAttribute', 'componentProperty_userAttribute' - An authenticated user attribute to use to assign a value to the+-- component property.+--+-- 'value', 'componentProperty_value' - The value to assign to the component property.+newComponentProperty ::+ ComponentProperty+newComponentProperty =+ ComponentProperty'+ { bindingProperties =+ Prelude.Nothing,+ bindings = Prelude.Nothing,+ collectionBindingProperties = Prelude.Nothing,+ componentName = Prelude.Nothing,+ concat = Prelude.Nothing,+ condition = Prelude.Nothing,+ configured = Prelude.Nothing,+ defaultValue = Prelude.Nothing,+ event = Prelude.Nothing,+ importedValue = Prelude.Nothing,+ model = Prelude.Nothing,+ property = Prelude.Nothing,+ type' = Prelude.Nothing,+ userAttribute = Prelude.Nothing,+ value = Prelude.Nothing+ }++-- | The information to bind the component property to data at runtime.+componentProperty_bindingProperties :: Lens.Lens' ComponentProperty (Prelude.Maybe ComponentPropertyBindingProperties)+componentProperty_bindingProperties = Lens.lens (\ComponentProperty' {bindingProperties} -> bindingProperties) (\s@ComponentProperty' {} a -> s {bindingProperties = a} :: ComponentProperty)++-- | The information to bind the component property to form data.+componentProperty_bindings :: Lens.Lens' ComponentProperty (Prelude.Maybe (Prelude.HashMap Prelude.Text FormBindingElement))+componentProperty_bindings = Lens.lens (\ComponentProperty' {bindings} -> bindings) (\s@ComponentProperty' {} a -> s {bindings = a} :: ComponentProperty) Prelude.. Lens.mapping Lens.coerced++-- | The information to bind the component property to data at runtime. Use+-- this for collection components.+componentProperty_collectionBindingProperties :: Lens.Lens' ComponentProperty (Prelude.Maybe ComponentPropertyBindingProperties)+componentProperty_collectionBindingProperties = Lens.lens (\ComponentProperty' {collectionBindingProperties} -> collectionBindingProperties) (\s@ComponentProperty' {} a -> s {collectionBindingProperties = a} :: ComponentProperty)++-- | The name of the component that is affected by an event.+componentProperty_componentName :: Lens.Lens' ComponentProperty (Prelude.Maybe Prelude.Text)+componentProperty_componentName = Lens.lens (\ComponentProperty' {componentName} -> componentName) (\s@ComponentProperty' {} a -> s {componentName = a} :: ComponentProperty)++-- | A list of component properties to concatenate to create the value to+-- assign to this component property.+componentProperty_concat :: Lens.Lens' ComponentProperty (Prelude.Maybe [ComponentProperty])+componentProperty_concat = Lens.lens (\ComponentProperty' {concat} -> concat) (\s@ComponentProperty' {} a -> s {concat = a} :: ComponentProperty) Prelude.. Lens.mapping Lens.coerced++-- | The conditional expression to use to assign a value to the component+-- property.+componentProperty_condition :: Lens.Lens' ComponentProperty (Prelude.Maybe ComponentConditionProperty)+componentProperty_condition = Lens.lens (\ComponentProperty' {condition} -> condition) (\s@ComponentProperty' {} a -> s {condition = a} :: ComponentProperty)++-- | Specifies whether the user configured the property in Amplify Studio+-- after importing it.+componentProperty_configured :: Lens.Lens' ComponentProperty (Prelude.Maybe Prelude.Bool)+componentProperty_configured = Lens.lens (\ComponentProperty' {configured} -> configured) (\s@ComponentProperty' {} a -> s {configured = a} :: ComponentProperty)++-- | The default value to assign to the component property.+componentProperty_defaultValue :: Lens.Lens' ComponentProperty (Prelude.Maybe Prelude.Text)+componentProperty_defaultValue = Lens.lens (\ComponentProperty' {defaultValue} -> defaultValue) (\s@ComponentProperty' {} a -> s {defaultValue = a} :: ComponentProperty)++-- | An event that occurs in your app. Use this for workflow data binding.+componentProperty_event :: Lens.Lens' ComponentProperty (Prelude.Maybe Prelude.Text)+componentProperty_event = Lens.lens (\ComponentProperty' {event} -> event) (\s@ComponentProperty' {} a -> s {event = a} :: ComponentProperty)++-- | The default value assigned to the property when the component is+-- imported into an app.+componentProperty_importedValue :: Lens.Lens' ComponentProperty (Prelude.Maybe Prelude.Text)+componentProperty_importedValue = Lens.lens (\ComponentProperty' {importedValue} -> importedValue) (\s@ComponentProperty' {} a -> s {importedValue = a} :: ComponentProperty)++-- | The data model to use to assign a value to the component property.+componentProperty_model :: Lens.Lens' ComponentProperty (Prelude.Maybe Prelude.Text)+componentProperty_model = Lens.lens (\ComponentProperty' {model} -> model) (\s@ComponentProperty' {} a -> s {model = a} :: ComponentProperty)++-- | The name of the component\'s property that is affected by an event.+componentProperty_property :: Lens.Lens' ComponentProperty (Prelude.Maybe Prelude.Text)+componentProperty_property = Lens.lens (\ComponentProperty' {property} -> property) (\s@ComponentProperty' {} a -> s {property = a} :: ComponentProperty)++-- | The component type.+componentProperty_type :: Lens.Lens' ComponentProperty (Prelude.Maybe Prelude.Text)+componentProperty_type = Lens.lens (\ComponentProperty' {type'} -> type') (\s@ComponentProperty' {} a -> s {type' = a} :: ComponentProperty)++-- | An authenticated user attribute to use to assign a value to the+-- component property.+componentProperty_userAttribute :: Lens.Lens' ComponentProperty (Prelude.Maybe Prelude.Text)+componentProperty_userAttribute = Lens.lens (\ComponentProperty' {userAttribute} -> userAttribute) (\s@ComponentProperty' {} a -> s {userAttribute = a} :: ComponentProperty)++-- | The value to assign to the component property.+componentProperty_value :: Lens.Lens' ComponentProperty (Prelude.Maybe Prelude.Text)+componentProperty_value = Lens.lens (\ComponentProperty' {value} -> value) (\s@ComponentProperty' {} a -> s {value = a} :: ComponentProperty)++instance Data.FromJSON ComponentProperty where+ parseJSON =+ Data.withObject+ "ComponentProperty"+ ( \x ->+ ComponentProperty'+ Prelude.<$> (x Data..:? "bindingProperties")+ Prelude.<*> (x Data..:? "bindings" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "collectionBindingProperties")+ Prelude.<*> (x Data..:? "componentName")+ Prelude.<*> (x Data..:? "concat" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "condition")+ Prelude.<*> (x Data..:? "configured")+ Prelude.<*> (x Data..:? "defaultValue")+ Prelude.<*> (x Data..:? "event")+ Prelude.<*> (x Data..:? "importedValue")+ Prelude.<*> (x Data..:? "model")+ Prelude.<*> (x Data..:? "property")+ Prelude.<*> (x Data..:? "type")+ Prelude.<*> (x Data..:? "userAttribute")+ Prelude.<*> (x Data..:? "value")+ )++instance Prelude.Hashable ComponentProperty where+ hashWithSalt _salt ComponentProperty' {..} =+ _salt+ `Prelude.hashWithSalt` bindingProperties+ `Prelude.hashWithSalt` bindings+ `Prelude.hashWithSalt` collectionBindingProperties+ `Prelude.hashWithSalt` componentName+ `Prelude.hashWithSalt` concat+ `Prelude.hashWithSalt` condition+ `Prelude.hashWithSalt` configured+ `Prelude.hashWithSalt` defaultValue+ `Prelude.hashWithSalt` event+ `Prelude.hashWithSalt` importedValue+ `Prelude.hashWithSalt` model+ `Prelude.hashWithSalt` property+ `Prelude.hashWithSalt` type'+ `Prelude.hashWithSalt` userAttribute+ `Prelude.hashWithSalt` value++instance Prelude.NFData ComponentProperty where+ rnf ComponentProperty' {..} =+ Prelude.rnf bindingProperties+ `Prelude.seq` Prelude.rnf bindings+ `Prelude.seq` Prelude.rnf collectionBindingProperties+ `Prelude.seq` Prelude.rnf componentName+ `Prelude.seq` Prelude.rnf concat+ `Prelude.seq` Prelude.rnf condition+ `Prelude.seq` Prelude.rnf configured+ `Prelude.seq` Prelude.rnf defaultValue+ `Prelude.seq` Prelude.rnf event+ `Prelude.seq` Prelude.rnf importedValue+ `Prelude.seq` Prelude.rnf model+ `Prelude.seq` Prelude.rnf property+ `Prelude.seq` Prelude.rnf type'+ `Prelude.seq` Prelude.rnf userAttribute+ `Prelude.seq` Prelude.rnf value++instance Data.ToJSON ComponentProperty where+ toJSON ComponentProperty' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("bindingProperties" Data..=)+ Prelude.<$> bindingProperties,+ ("bindings" Data..=) Prelude.<$> bindings,+ ("collectionBindingProperties" Data..=)+ Prelude.<$> collectionBindingProperties,+ ("componentName" Data..=) Prelude.<$> componentName,+ ("concat" Data..=) Prelude.<$> concat,+ ("condition" Data..=) Prelude.<$> condition,+ ("configured" Data..=) Prelude.<$> configured,+ ("defaultValue" Data..=) Prelude.<$> defaultValue,+ ("event" Data..=) Prelude.<$> event,+ ("importedValue" Data..=) Prelude.<$> importedValue,+ ("model" Data..=) Prelude.<$> model,+ ("property" Data..=) Prelude.<$> property,+ ("type" Data..=) Prelude.<$> type',+ ("userAttribute" Data..=) Prelude.<$> userAttribute,+ ("value" Data..=) Prelude.<$> value+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentProperty.hs-boot view
@@ -0,0 +1,33 @@+{-# OPTIONS_GHC -Wno-missing-methods #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentProperty+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentProperty where++import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++data ComponentProperty++instance Prelude.Eq ComponentProperty++instance Prelude.Read ComponentProperty++instance Prelude.Show ComponentProperty++instance Prelude.Generic ComponentProperty++instance Data.ToJSON ComponentProperty++instance Data.FromJSON ComponentProperty++instance Prelude.NFData ComponentProperty++instance Prelude.Hashable ComponentProperty
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentPropertyBindingProperties.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentPropertyBindingProperties+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentPropertyBindingProperties where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | 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.+--+-- /See:/ 'newComponentPropertyBindingProperties' smart constructor.+data ComponentPropertyBindingProperties = ComponentPropertyBindingProperties'+ { -- | The data field to bind the property to.+ field :: Prelude.Maybe Prelude.Text,+ -- | The component property to bind to the data field.+ property :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentPropertyBindingProperties' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'field', 'componentPropertyBindingProperties_field' - The data field to bind the property to.+--+-- 'property', 'componentPropertyBindingProperties_property' - The component property to bind to the data field.+newComponentPropertyBindingProperties ::+ -- | 'property'+ Prelude.Text ->+ ComponentPropertyBindingProperties+newComponentPropertyBindingProperties pProperty_ =+ ComponentPropertyBindingProperties'+ { field =+ Prelude.Nothing,+ property = pProperty_+ }++-- | The data field to bind the property to.+componentPropertyBindingProperties_field :: Lens.Lens' ComponentPropertyBindingProperties (Prelude.Maybe Prelude.Text)+componentPropertyBindingProperties_field = Lens.lens (\ComponentPropertyBindingProperties' {field} -> field) (\s@ComponentPropertyBindingProperties' {} a -> s {field = a} :: ComponentPropertyBindingProperties)++-- | The component property to bind to the data field.+componentPropertyBindingProperties_property :: Lens.Lens' ComponentPropertyBindingProperties Prelude.Text+componentPropertyBindingProperties_property = Lens.lens (\ComponentPropertyBindingProperties' {property} -> property) (\s@ComponentPropertyBindingProperties' {} a -> s {property = a} :: ComponentPropertyBindingProperties)++instance+ Data.FromJSON+ ComponentPropertyBindingProperties+ where+ parseJSON =+ Data.withObject+ "ComponentPropertyBindingProperties"+ ( \x ->+ ComponentPropertyBindingProperties'+ Prelude.<$> (x Data..:? "field")+ Prelude.<*> (x Data..: "property")+ )++instance+ Prelude.Hashable+ ComponentPropertyBindingProperties+ where+ hashWithSalt+ _salt+ ComponentPropertyBindingProperties' {..} =+ _salt+ `Prelude.hashWithSalt` field+ `Prelude.hashWithSalt` property++instance+ Prelude.NFData+ ComponentPropertyBindingProperties+ where+ rnf ComponentPropertyBindingProperties' {..} =+ Prelude.rnf field+ `Prelude.seq` Prelude.rnf property++instance+ Data.ToJSON+ ComponentPropertyBindingProperties+ where+ toJSON ComponentPropertyBindingProperties' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("field" Data..=) Prelude.<$> field,+ Prelude.Just ("property" Data..= property)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentSummary.hs view
@@ -0,0 +1,136 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains a summary of a component. This is a read-only data type that is+-- returned by @ListComponents@.+--+-- /See:/ 'newComponentSummary' smart constructor.+data ComponentSummary = ComponentSummary'+ { -- | The unique ID of the Amplify app associated with the component.+ appId :: Prelude.Text,+ -- | The component type.+ componentType :: Prelude.Text,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The unique ID of the component.+ id :: Prelude.Text,+ -- | The name of the component.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appId', 'componentSummary_appId' - The unique ID of the Amplify app associated with the component.+--+-- 'componentType', 'componentSummary_componentType' - The component type.+--+-- 'environmentName', 'componentSummary_environmentName' - The name of the backend environment that is a part of the Amplify app.+--+-- 'id', 'componentSummary_id' - The unique ID of the component.+--+-- 'name', 'componentSummary_name' - The name of the component.+newComponentSummary ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'componentType'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ ComponentSummary+newComponentSummary+ pAppId_+ pComponentType_+ pEnvironmentName_+ pId_+ pName_ =+ ComponentSummary'+ { appId = pAppId_,+ componentType = pComponentType_,+ environmentName = pEnvironmentName_,+ id = pId_,+ name = pName_+ }++-- | The unique ID of the Amplify app associated with the component.+componentSummary_appId :: Lens.Lens' ComponentSummary Prelude.Text+componentSummary_appId = Lens.lens (\ComponentSummary' {appId} -> appId) (\s@ComponentSummary' {} a -> s {appId = a} :: ComponentSummary)++-- | The component type.+componentSummary_componentType :: Lens.Lens' ComponentSummary Prelude.Text+componentSummary_componentType = Lens.lens (\ComponentSummary' {componentType} -> componentType) (\s@ComponentSummary' {} a -> s {componentType = a} :: ComponentSummary)++-- | The name of the backend environment that is a part of the Amplify app.+componentSummary_environmentName :: Lens.Lens' ComponentSummary Prelude.Text+componentSummary_environmentName = Lens.lens (\ComponentSummary' {environmentName} -> environmentName) (\s@ComponentSummary' {} a -> s {environmentName = a} :: ComponentSummary)++-- | The unique ID of the component.+componentSummary_id :: Lens.Lens' ComponentSummary Prelude.Text+componentSummary_id = Lens.lens (\ComponentSummary' {id} -> id) (\s@ComponentSummary' {} a -> s {id = a} :: ComponentSummary)++-- | The name of the component.+componentSummary_name :: Lens.Lens' ComponentSummary Prelude.Text+componentSummary_name = Lens.lens (\ComponentSummary' {name} -> name) (\s@ComponentSummary' {} a -> s {name = a} :: ComponentSummary)++instance Data.FromJSON ComponentSummary where+ parseJSON =+ Data.withObject+ "ComponentSummary"+ ( \x ->+ ComponentSummary'+ Prelude.<$> (x Data..: "appId")+ Prelude.<*> (x Data..: "componentType")+ Prelude.<*> (x Data..: "environmentName")+ Prelude.<*> (x Data..: "id")+ Prelude.<*> (x Data..: "name")+ )++instance Prelude.Hashable ComponentSummary where+ hashWithSalt _salt ComponentSummary' {..} =+ _salt+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` componentType+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` name++instance Prelude.NFData ComponentSummary where+ rnf ComponentSummary' {..} =+ Prelude.rnf appId+ `Prelude.seq` Prelude.rnf componentType+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name
+ gen/Amazonka/AmplifyUiBuilder/Types/ComponentVariant.hs view
@@ -0,0 +1,103 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ComponentVariant+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ComponentVariant where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the style configuration of a unique variation of a main+-- component.+--+-- /See:/ 'newComponentVariant' smart constructor.+data ComponentVariant = ComponentVariant'+ { -- | 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 :: Prelude.Maybe (Prelude.HashMap Prelude.Text (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The combination of variants that comprise this variant. You can\'t+ -- specify @tags@ as a valid property for @variantValues@.+ variantValues :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentVariant' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'overrides', 'componentVariant_overrides' - 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@.+--+-- 'variantValues', 'componentVariant_variantValues' - The combination of variants that comprise this variant. You can\'t+-- specify @tags@ as a valid property for @variantValues@.+newComponentVariant ::+ ComponentVariant+newComponentVariant =+ ComponentVariant'+ { overrides = Prelude.Nothing,+ variantValues = Prelude.Nothing+ }++-- | 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@.+componentVariant_overrides :: Lens.Lens' ComponentVariant (Prelude.Maybe (Prelude.HashMap Prelude.Text (Prelude.HashMap Prelude.Text Prelude.Text)))+componentVariant_overrides = Lens.lens (\ComponentVariant' {overrides} -> overrides) (\s@ComponentVariant' {} a -> s {overrides = a} :: ComponentVariant) Prelude.. Lens.mapping Lens.coerced++-- | The combination of variants that comprise this variant. You can\'t+-- specify @tags@ as a valid property for @variantValues@.+componentVariant_variantValues :: Lens.Lens' ComponentVariant (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+componentVariant_variantValues = Lens.lens (\ComponentVariant' {variantValues} -> variantValues) (\s@ComponentVariant' {} a -> s {variantValues = a} :: ComponentVariant) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON ComponentVariant where+ parseJSON =+ Data.withObject+ "ComponentVariant"+ ( \x ->+ ComponentVariant'+ Prelude.<$> (x Data..:? "overrides" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "variantValues" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable ComponentVariant where+ hashWithSalt _salt ComponentVariant' {..} =+ _salt+ `Prelude.hashWithSalt` overrides+ `Prelude.hashWithSalt` variantValues++instance Prelude.NFData ComponentVariant where+ rnf ComponentVariant' {..} =+ Prelude.rnf overrides+ `Prelude.seq` Prelude.rnf variantValues++instance Data.ToJSON ComponentVariant where+ toJSON ComponentVariant' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("overrides" Data..=) Prelude.<$> overrides,+ ("variantValues" Data..=) Prelude.<$> variantValues+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/CreateComponentData.hs view
@@ -0,0 +1,234 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.CreateComponentData+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.CreateComponentData where++import Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValue+import Amazonka.AmplifyUiBuilder.Types.ComponentChild+import Amazonka.AmplifyUiBuilder.Types.ComponentDataConfiguration+import Amazonka.AmplifyUiBuilder.Types.ComponentEvent+import Amazonka.AmplifyUiBuilder.Types.ComponentProperty+import Amazonka.AmplifyUiBuilder.Types.ComponentVariant+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Represents all of the information that is required to create a+-- component.+--+-- /See:/ 'newCreateComponentData' smart constructor.+data CreateComponentData = CreateComponentData'+ { -- | A list of child components that are instances of the main component.+ children :: Prelude.Maybe [ComponentChild],+ -- | The data binding configuration for customizing a component\'s+ -- properties. Use this for a collection component.+ collectionProperties :: Prelude.Maybe (Prelude.HashMap Prelude.Text 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 :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentEvent),+ -- | The schema version of the component when it was imported.+ schemaVersion :: Prelude.Maybe Prelude.Text,+ -- | The unique ID of the component in its original source system, such as+ -- Figma.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | One or more key-value pairs to use when tagging the component data.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The data binding information for the component\'s properties.+ bindingProperties :: Prelude.HashMap Prelude.Text ComponentBindingPropertiesValue,+ -- | The component type. This can be an Amplify custom UI component or+ -- another custom component.+ componentType :: Prelude.Text,+ -- | The name of the component+ name :: Prelude.Text,+ -- | Describes the component properties that can be overriden to customize an+ -- instance of the component.+ overrides :: Prelude.HashMap Prelude.Text (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | Describes the component\'s properties.+ properties :: Prelude.HashMap Prelude.Text ComponentProperty,+ -- | A list of the unique variants of this component.+ variants :: [ComponentVariant]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateComponentData' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'children', 'createComponentData_children' - A list of child components that are instances of the main component.+--+-- 'collectionProperties', 'createComponentData_collectionProperties' - The data binding configuration for customizing a component\'s+-- properties. Use this for a collection component.+--+-- 'events', 'createComponentData_events' - The event configuration for the component. Use for the workflow feature+-- in Amplify Studio that allows you to bind events and actions to+-- components.+--+-- 'schemaVersion', 'createComponentData_schemaVersion' - The schema version of the component when it was imported.+--+-- 'sourceId', 'createComponentData_sourceId' - The unique ID of the component in its original source system, such as+-- Figma.+--+-- 'tags', 'createComponentData_tags' - One or more key-value pairs to use when tagging the component data.+--+-- 'bindingProperties', 'createComponentData_bindingProperties' - The data binding information for the component\'s properties.+--+-- 'componentType', 'createComponentData_componentType' - The component type. This can be an Amplify custom UI component or+-- another custom component.+--+-- 'name', 'createComponentData_name' - The name of the component+--+-- 'overrides', 'createComponentData_overrides' - Describes the component properties that can be overriden to customize an+-- instance of the component.+--+-- 'properties', 'createComponentData_properties' - Describes the component\'s properties.+--+-- 'variants', 'createComponentData_variants' - A list of the unique variants of this component.+newCreateComponentData ::+ -- | 'componentType'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ CreateComponentData+newCreateComponentData pComponentType_ pName_ =+ CreateComponentData'+ { children = Prelude.Nothing,+ collectionProperties = Prelude.Nothing,+ events = Prelude.Nothing,+ schemaVersion = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ tags = Prelude.Nothing,+ bindingProperties = Prelude.mempty,+ componentType = pComponentType_,+ name = pName_,+ overrides = Prelude.mempty,+ properties = Prelude.mempty,+ variants = Prelude.mempty+ }++-- | A list of child components that are instances of the main component.+createComponentData_children :: Lens.Lens' CreateComponentData (Prelude.Maybe [ComponentChild])+createComponentData_children = Lens.lens (\CreateComponentData' {children} -> children) (\s@CreateComponentData' {} a -> s {children = a} :: CreateComponentData) Prelude.. Lens.mapping Lens.coerced++-- | The data binding configuration for customizing a component\'s+-- properties. Use this for a collection component.+createComponentData_collectionProperties :: Lens.Lens' CreateComponentData (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentDataConfiguration))+createComponentData_collectionProperties = Lens.lens (\CreateComponentData' {collectionProperties} -> collectionProperties) (\s@CreateComponentData' {} a -> s {collectionProperties = a} :: CreateComponentData) Prelude.. Lens.mapping Lens.coerced++-- | The event configuration for the component. Use for the workflow feature+-- in Amplify Studio that allows you to bind events and actions to+-- components.+createComponentData_events :: Lens.Lens' CreateComponentData (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentEvent))+createComponentData_events = Lens.lens (\CreateComponentData' {events} -> events) (\s@CreateComponentData' {} a -> s {events = a} :: CreateComponentData) Prelude.. Lens.mapping Lens.coerced++-- | The schema version of the component when it was imported.+createComponentData_schemaVersion :: Lens.Lens' CreateComponentData (Prelude.Maybe Prelude.Text)+createComponentData_schemaVersion = Lens.lens (\CreateComponentData' {schemaVersion} -> schemaVersion) (\s@CreateComponentData' {} a -> s {schemaVersion = a} :: CreateComponentData)++-- | The unique ID of the component in its original source system, such as+-- Figma.+createComponentData_sourceId :: Lens.Lens' CreateComponentData (Prelude.Maybe Prelude.Text)+createComponentData_sourceId = Lens.lens (\CreateComponentData' {sourceId} -> sourceId) (\s@CreateComponentData' {} a -> s {sourceId = a} :: CreateComponentData)++-- | One or more key-value pairs to use when tagging the component data.+createComponentData_tags :: Lens.Lens' CreateComponentData (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createComponentData_tags = Lens.lens (\CreateComponentData' {tags} -> tags) (\s@CreateComponentData' {} a -> s {tags = a} :: CreateComponentData) Prelude.. Lens.mapping Lens.coerced++-- | The data binding information for the component\'s properties.+createComponentData_bindingProperties :: Lens.Lens' CreateComponentData (Prelude.HashMap Prelude.Text ComponentBindingPropertiesValue)+createComponentData_bindingProperties = Lens.lens (\CreateComponentData' {bindingProperties} -> bindingProperties) (\s@CreateComponentData' {} a -> s {bindingProperties = a} :: CreateComponentData) Prelude.. Lens.coerced++-- | The component type. This can be an Amplify custom UI component or+-- another custom component.+createComponentData_componentType :: Lens.Lens' CreateComponentData Prelude.Text+createComponentData_componentType = Lens.lens (\CreateComponentData' {componentType} -> componentType) (\s@CreateComponentData' {} a -> s {componentType = a} :: CreateComponentData)++-- | The name of the component+createComponentData_name :: Lens.Lens' CreateComponentData Prelude.Text+createComponentData_name = Lens.lens (\CreateComponentData' {name} -> name) (\s@CreateComponentData' {} a -> s {name = a} :: CreateComponentData)++-- | Describes the component properties that can be overriden to customize an+-- instance of the component.+createComponentData_overrides :: Lens.Lens' CreateComponentData (Prelude.HashMap Prelude.Text (Prelude.HashMap Prelude.Text Prelude.Text))+createComponentData_overrides = Lens.lens (\CreateComponentData' {overrides} -> overrides) (\s@CreateComponentData' {} a -> s {overrides = a} :: CreateComponentData) Prelude.. Lens.coerced++-- | Describes the component\'s properties.+createComponentData_properties :: Lens.Lens' CreateComponentData (Prelude.HashMap Prelude.Text ComponentProperty)+createComponentData_properties = Lens.lens (\CreateComponentData' {properties} -> properties) (\s@CreateComponentData' {} a -> s {properties = a} :: CreateComponentData) Prelude.. Lens.coerced++-- | A list of the unique variants of this component.+createComponentData_variants :: Lens.Lens' CreateComponentData [ComponentVariant]+createComponentData_variants = Lens.lens (\CreateComponentData' {variants} -> variants) (\s@CreateComponentData' {} a -> s {variants = a} :: CreateComponentData) Prelude.. Lens.coerced++instance Prelude.Hashable CreateComponentData where+ hashWithSalt _salt CreateComponentData' {..} =+ _salt+ `Prelude.hashWithSalt` children+ `Prelude.hashWithSalt` collectionProperties+ `Prelude.hashWithSalt` events+ `Prelude.hashWithSalt` schemaVersion+ `Prelude.hashWithSalt` sourceId+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` bindingProperties+ `Prelude.hashWithSalt` componentType+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` overrides+ `Prelude.hashWithSalt` properties+ `Prelude.hashWithSalt` variants++instance Prelude.NFData CreateComponentData where+ rnf CreateComponentData' {..} =+ Prelude.rnf children+ `Prelude.seq` Prelude.rnf collectionProperties+ `Prelude.seq` Prelude.rnf events+ `Prelude.seq` Prelude.rnf schemaVersion+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf bindingProperties+ `Prelude.seq` Prelude.rnf componentType+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf overrides+ `Prelude.seq` Prelude.rnf properties+ `Prelude.seq` Prelude.rnf variants++instance Data.ToJSON CreateComponentData where+ toJSON CreateComponentData' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("children" Data..=) Prelude.<$> children,+ ("collectionProperties" Data..=)+ Prelude.<$> collectionProperties,+ ("events" Data..=) Prelude.<$> events,+ ("schemaVersion" Data..=) Prelude.<$> schemaVersion,+ ("sourceId" Data..=) Prelude.<$> sourceId,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just+ ("bindingProperties" Data..= bindingProperties),+ Prelude.Just ("componentType" Data..= componentType),+ Prelude.Just ("name" Data..= name),+ Prelude.Just ("overrides" Data..= overrides),+ Prelude.Just ("properties" Data..= properties),+ Prelude.Just ("variants" Data..= variants)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/CreateFormData.hs view
@@ -0,0 +1,196 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.CreateFormData+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.CreateFormData where++import Amazonka.AmplifyUiBuilder.Types.FieldConfig+import Amazonka.AmplifyUiBuilder.Types.FormActionType+import Amazonka.AmplifyUiBuilder.Types.FormCTA+import Amazonka.AmplifyUiBuilder.Types.FormDataTypeConfig+import Amazonka.AmplifyUiBuilder.Types.FormStyle+import Amazonka.AmplifyUiBuilder.Types.SectionalElement+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Represents all of the information that is required to create a form.+--+-- /See:/ 'newCreateFormData' smart constructor.+data CreateFormData = CreateFormData'+ { -- | The @FormCTA@ object that stores the call to action configuration for+ -- the form.+ cta :: Prelude.Maybe FormCTA,+ -- | One or more key-value pairs to use when tagging the form data.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The type of data source to use to create the form.+ dataType :: FormDataTypeConfig,+ -- | The configuration information for the form\'s fields.+ fields :: Prelude.HashMap Prelude.Text FieldConfig,+ -- | Specifies whether to perform a create or update action on the form.+ formActionType :: FormActionType,+ -- | The name of the form.+ name :: Prelude.Text,+ -- | The schema version of the form.+ schemaVersion :: Prelude.Text,+ -- | The configuration information for the visual helper elements for the+ -- form. These elements are not associated with any data.+ sectionalElements :: Prelude.HashMap Prelude.Text SectionalElement,+ -- | The configuration for the form\'s style.+ style :: FormStyle+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateFormData' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cta', 'createFormData_cta' - The @FormCTA@ object that stores the call to action configuration for+-- the form.+--+-- 'tags', 'createFormData_tags' - One or more key-value pairs to use when tagging the form data.+--+-- 'dataType', 'createFormData_dataType' - The type of data source to use to create the form.+--+-- 'fields', 'createFormData_fields' - The configuration information for the form\'s fields.+--+-- 'formActionType', 'createFormData_formActionType' - Specifies whether to perform a create or update action on the form.+--+-- 'name', 'createFormData_name' - The name of the form.+--+-- 'schemaVersion', 'createFormData_schemaVersion' - The schema version of the form.+--+-- 'sectionalElements', 'createFormData_sectionalElements' - The configuration information for the visual helper elements for the+-- form. These elements are not associated with any data.+--+-- 'style', 'createFormData_style' - The configuration for the form\'s style.+newCreateFormData ::+ -- | 'dataType'+ FormDataTypeConfig ->+ -- | 'formActionType'+ FormActionType ->+ -- | 'name'+ Prelude.Text ->+ -- | 'schemaVersion'+ Prelude.Text ->+ -- | 'style'+ FormStyle ->+ CreateFormData+newCreateFormData+ pDataType_+ pFormActionType_+ pName_+ pSchemaVersion_+ pStyle_ =+ CreateFormData'+ { cta = Prelude.Nothing,+ tags = Prelude.Nothing,+ dataType = pDataType_,+ fields = Prelude.mempty,+ formActionType = pFormActionType_,+ name = pName_,+ schemaVersion = pSchemaVersion_,+ sectionalElements = Prelude.mempty,+ style = pStyle_+ }++-- | The @FormCTA@ object that stores the call to action configuration for+-- the form.+createFormData_cta :: Lens.Lens' CreateFormData (Prelude.Maybe FormCTA)+createFormData_cta = Lens.lens (\CreateFormData' {cta} -> cta) (\s@CreateFormData' {} a -> s {cta = a} :: CreateFormData)++-- | One or more key-value pairs to use when tagging the form data.+createFormData_tags :: Lens.Lens' CreateFormData (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createFormData_tags = Lens.lens (\CreateFormData' {tags} -> tags) (\s@CreateFormData' {} a -> s {tags = a} :: CreateFormData) Prelude.. Lens.mapping Lens.coerced++-- | The type of data source to use to create the form.+createFormData_dataType :: Lens.Lens' CreateFormData FormDataTypeConfig+createFormData_dataType = Lens.lens (\CreateFormData' {dataType} -> dataType) (\s@CreateFormData' {} a -> s {dataType = a} :: CreateFormData)++-- | The configuration information for the form\'s fields.+createFormData_fields :: Lens.Lens' CreateFormData (Prelude.HashMap Prelude.Text FieldConfig)+createFormData_fields = Lens.lens (\CreateFormData' {fields} -> fields) (\s@CreateFormData' {} a -> s {fields = a} :: CreateFormData) Prelude.. Lens.coerced++-- | Specifies whether to perform a create or update action on the form.+createFormData_formActionType :: Lens.Lens' CreateFormData FormActionType+createFormData_formActionType = Lens.lens (\CreateFormData' {formActionType} -> formActionType) (\s@CreateFormData' {} a -> s {formActionType = a} :: CreateFormData)++-- | The name of the form.+createFormData_name :: Lens.Lens' CreateFormData Prelude.Text+createFormData_name = Lens.lens (\CreateFormData' {name} -> name) (\s@CreateFormData' {} a -> s {name = a} :: CreateFormData)++-- | The schema version of the form.+createFormData_schemaVersion :: Lens.Lens' CreateFormData Prelude.Text+createFormData_schemaVersion = Lens.lens (\CreateFormData' {schemaVersion} -> schemaVersion) (\s@CreateFormData' {} a -> s {schemaVersion = a} :: CreateFormData)++-- | The configuration information for the visual helper elements for the+-- form. These elements are not associated with any data.+createFormData_sectionalElements :: Lens.Lens' CreateFormData (Prelude.HashMap Prelude.Text SectionalElement)+createFormData_sectionalElements = Lens.lens (\CreateFormData' {sectionalElements} -> sectionalElements) (\s@CreateFormData' {} a -> s {sectionalElements = a} :: CreateFormData) Prelude.. Lens.coerced++-- | The configuration for the form\'s style.+createFormData_style :: Lens.Lens' CreateFormData FormStyle+createFormData_style = Lens.lens (\CreateFormData' {style} -> style) (\s@CreateFormData' {} a -> s {style = a} :: CreateFormData)++instance Prelude.Hashable CreateFormData where+ hashWithSalt _salt CreateFormData' {..} =+ _salt+ `Prelude.hashWithSalt` cta+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` dataType+ `Prelude.hashWithSalt` fields+ `Prelude.hashWithSalt` formActionType+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` schemaVersion+ `Prelude.hashWithSalt` sectionalElements+ `Prelude.hashWithSalt` style++instance Prelude.NFData CreateFormData where+ rnf CreateFormData' {..} =+ Prelude.rnf cta+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf dataType+ `Prelude.seq` Prelude.rnf fields+ `Prelude.seq` Prelude.rnf formActionType+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf schemaVersion+ `Prelude.seq` Prelude.rnf sectionalElements+ `Prelude.seq` Prelude.rnf style++instance Data.ToJSON CreateFormData where+ toJSON CreateFormData' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("cta" Data..=) Prelude.<$> cta,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("dataType" Data..= dataType),+ Prelude.Just ("fields" Data..= fields),+ Prelude.Just+ ("formActionType" Data..= formActionType),+ Prelude.Just ("name" Data..= name),+ Prelude.Just ("schemaVersion" Data..= schemaVersion),+ Prelude.Just+ ("sectionalElements" Data..= sectionalElements),+ Prelude.Just ("style" Data..= style)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/CreateThemeData.hs view
@@ -0,0 +1,113 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.CreateThemeData+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.CreateThemeData where++import Amazonka.AmplifyUiBuilder.Types.ThemeValues+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Represents all of the information that is required to create a theme.+--+-- /See:/ 'newCreateThemeData' smart constructor.+data CreateThemeData = CreateThemeData'+ { -- | Describes the properties that can be overriden to customize an instance+ -- of the theme.+ overrides :: Prelude.Maybe [ThemeValues],+ -- | One or more key-value pairs to use when tagging the theme data.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The name of the theme.+ name :: Prelude.Text,+ -- | A list of key-value pairs that defines the properties of the theme.+ values :: [ThemeValues]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateThemeData' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'overrides', 'createThemeData_overrides' - Describes the properties that can be overriden to customize an instance+-- of the theme.+--+-- 'tags', 'createThemeData_tags' - One or more key-value pairs to use when tagging the theme data.+--+-- 'name', 'createThemeData_name' - The name of the theme.+--+-- 'values', 'createThemeData_values' - A list of key-value pairs that defines the properties of the theme.+newCreateThemeData ::+ -- | 'name'+ Prelude.Text ->+ CreateThemeData+newCreateThemeData pName_ =+ CreateThemeData'+ { overrides = Prelude.Nothing,+ tags = Prelude.Nothing,+ name = pName_,+ values = Prelude.mempty+ }++-- | Describes the properties that can be overriden to customize an instance+-- of the theme.+createThemeData_overrides :: Lens.Lens' CreateThemeData (Prelude.Maybe [ThemeValues])+createThemeData_overrides = Lens.lens (\CreateThemeData' {overrides} -> overrides) (\s@CreateThemeData' {} a -> s {overrides = a} :: CreateThemeData) Prelude.. Lens.mapping Lens.coerced++-- | One or more key-value pairs to use when tagging the theme data.+createThemeData_tags :: Lens.Lens' CreateThemeData (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createThemeData_tags = Lens.lens (\CreateThemeData' {tags} -> tags) (\s@CreateThemeData' {} a -> s {tags = a} :: CreateThemeData) Prelude.. Lens.mapping Lens.coerced++-- | The name of the theme.+createThemeData_name :: Lens.Lens' CreateThemeData Prelude.Text+createThemeData_name = Lens.lens (\CreateThemeData' {name} -> name) (\s@CreateThemeData' {} a -> s {name = a} :: CreateThemeData)++-- | A list of key-value pairs that defines the properties of the theme.+createThemeData_values :: Lens.Lens' CreateThemeData [ThemeValues]+createThemeData_values = Lens.lens (\CreateThemeData' {values} -> values) (\s@CreateThemeData' {} a -> s {values = a} :: CreateThemeData) Prelude.. Lens.coerced++instance Prelude.Hashable CreateThemeData where+ hashWithSalt _salt CreateThemeData' {..} =+ _salt+ `Prelude.hashWithSalt` overrides+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values++instance Prelude.NFData CreateThemeData where+ rnf CreateThemeData' {..} =+ Prelude.rnf overrides+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf values++instance Data.ToJSON CreateThemeData where+ toJSON CreateThemeData' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("overrides" Data..=) Prelude.<$> overrides,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("name" Data..= name),+ Prelude.Just ("values" Data..= values)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ExchangeCodeForTokenRequestBody.hs view
@@ -0,0 +1,99 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ExchangeCodeForTokenRequestBody+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ExchangeCodeForTokenRequestBody where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the configuration of a request to exchange an access code for+-- a token.+--+-- /See:/ 'newExchangeCodeForTokenRequestBody' smart constructor.+data ExchangeCodeForTokenRequestBody = ExchangeCodeForTokenRequestBody'+ { -- | The access code to send in the request.+ code :: Data.Sensitive Prelude.Text,+ -- | The location of the application that will receive the access code.+ redirectUri :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExchangeCodeForTokenRequestBody' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'code', 'exchangeCodeForTokenRequestBody_code' - The access code to send in the request.+--+-- 'redirectUri', 'exchangeCodeForTokenRequestBody_redirectUri' - The location of the application that will receive the access code.+newExchangeCodeForTokenRequestBody ::+ -- | 'code'+ Prelude.Text ->+ -- | 'redirectUri'+ Prelude.Text ->+ ExchangeCodeForTokenRequestBody+newExchangeCodeForTokenRequestBody+ pCode_+ pRedirectUri_ =+ ExchangeCodeForTokenRequestBody'+ { code =+ Data._Sensitive Lens.# pCode_,+ redirectUri = pRedirectUri_+ }++-- | The access code to send in the request.+exchangeCodeForTokenRequestBody_code :: Lens.Lens' ExchangeCodeForTokenRequestBody Prelude.Text+exchangeCodeForTokenRequestBody_code = Lens.lens (\ExchangeCodeForTokenRequestBody' {code} -> code) (\s@ExchangeCodeForTokenRequestBody' {} a -> s {code = a} :: ExchangeCodeForTokenRequestBody) Prelude.. Data._Sensitive++-- | The location of the application that will receive the access code.+exchangeCodeForTokenRequestBody_redirectUri :: Lens.Lens' ExchangeCodeForTokenRequestBody Prelude.Text+exchangeCodeForTokenRequestBody_redirectUri = Lens.lens (\ExchangeCodeForTokenRequestBody' {redirectUri} -> redirectUri) (\s@ExchangeCodeForTokenRequestBody' {} a -> s {redirectUri = a} :: ExchangeCodeForTokenRequestBody)++instance+ Prelude.Hashable+ ExchangeCodeForTokenRequestBody+ where+ hashWithSalt+ _salt+ ExchangeCodeForTokenRequestBody' {..} =+ _salt+ `Prelude.hashWithSalt` code+ `Prelude.hashWithSalt` redirectUri++instance+ Prelude.NFData+ ExchangeCodeForTokenRequestBody+ where+ rnf ExchangeCodeForTokenRequestBody' {..} =+ Prelude.rnf code+ `Prelude.seq` Prelude.rnf redirectUri++instance Data.ToJSON ExchangeCodeForTokenRequestBody where+ toJSON ExchangeCodeForTokenRequestBody' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("code" Data..= code),+ Prelude.Just ("redirectUri" Data..= redirectUri)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FieldConfig.hs view
@@ -0,0 +1,138 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FieldConfig+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FieldConfig where++import Amazonka.AmplifyUiBuilder.Types.FieldInputConfig+import Amazonka.AmplifyUiBuilder.Types.FieldPosition+import Amazonka.AmplifyUiBuilder.Types.FieldValidationConfiguration+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the configuration information for a field in a table.+--+-- /See:/ 'newFieldConfig' smart constructor.+data FieldConfig = FieldConfig'+ { -- | Specifies whether to hide a field.+ excluded :: Prelude.Maybe Prelude.Bool,+ -- | Describes the configuration for the default input value to display for a+ -- field.+ inputType :: Prelude.Maybe FieldInputConfig,+ -- | The label for the field.+ label :: Prelude.Maybe Prelude.Text,+ -- | Specifies the field position.+ position :: Prelude.Maybe FieldPosition,+ -- | The validations to perform on the value in the field.+ validations :: Prelude.Maybe [FieldValidationConfiguration]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FieldConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'excluded', 'fieldConfig_excluded' - Specifies whether to hide a field.+--+-- 'inputType', 'fieldConfig_inputType' - Describes the configuration for the default input value to display for a+-- field.+--+-- 'label', 'fieldConfig_label' - The label for the field.+--+-- 'position', 'fieldConfig_position' - Specifies the field position.+--+-- 'validations', 'fieldConfig_validations' - The validations to perform on the value in the field.+newFieldConfig ::+ FieldConfig+newFieldConfig =+ FieldConfig'+ { excluded = Prelude.Nothing,+ inputType = Prelude.Nothing,+ label = Prelude.Nothing,+ position = Prelude.Nothing,+ validations = Prelude.Nothing+ }++-- | Specifies whether to hide a field.+fieldConfig_excluded :: Lens.Lens' FieldConfig (Prelude.Maybe Prelude.Bool)+fieldConfig_excluded = Lens.lens (\FieldConfig' {excluded} -> excluded) (\s@FieldConfig' {} a -> s {excluded = a} :: FieldConfig)++-- | Describes the configuration for the default input value to display for a+-- field.+fieldConfig_inputType :: Lens.Lens' FieldConfig (Prelude.Maybe FieldInputConfig)+fieldConfig_inputType = Lens.lens (\FieldConfig' {inputType} -> inputType) (\s@FieldConfig' {} a -> s {inputType = a} :: FieldConfig)++-- | The label for the field.+fieldConfig_label :: Lens.Lens' FieldConfig (Prelude.Maybe Prelude.Text)+fieldConfig_label = Lens.lens (\FieldConfig' {label} -> label) (\s@FieldConfig' {} a -> s {label = a} :: FieldConfig)++-- | Specifies the field position.+fieldConfig_position :: Lens.Lens' FieldConfig (Prelude.Maybe FieldPosition)+fieldConfig_position = Lens.lens (\FieldConfig' {position} -> position) (\s@FieldConfig' {} a -> s {position = a} :: FieldConfig)++-- | The validations to perform on the value in the field.+fieldConfig_validations :: Lens.Lens' FieldConfig (Prelude.Maybe [FieldValidationConfiguration])+fieldConfig_validations = Lens.lens (\FieldConfig' {validations} -> validations) (\s@FieldConfig' {} a -> s {validations = a} :: FieldConfig) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON FieldConfig where+ parseJSON =+ Data.withObject+ "FieldConfig"+ ( \x ->+ FieldConfig'+ Prelude.<$> (x Data..:? "excluded")+ Prelude.<*> (x Data..:? "inputType")+ Prelude.<*> (x Data..:? "label")+ Prelude.<*> (x Data..:? "position")+ Prelude.<*> (x Data..:? "validations" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable FieldConfig where+ hashWithSalt _salt FieldConfig' {..} =+ _salt+ `Prelude.hashWithSalt` excluded+ `Prelude.hashWithSalt` inputType+ `Prelude.hashWithSalt` label+ `Prelude.hashWithSalt` position+ `Prelude.hashWithSalt` validations++instance Prelude.NFData FieldConfig where+ rnf FieldConfig' {..} =+ Prelude.rnf excluded+ `Prelude.seq` Prelude.rnf inputType+ `Prelude.seq` Prelude.rnf label+ `Prelude.seq` Prelude.rnf position+ `Prelude.seq` Prelude.rnf validations++instance Data.ToJSON FieldConfig where+ toJSON FieldConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("excluded" Data..=) Prelude.<$> excluded,+ ("inputType" Data..=) Prelude.<$> inputType,+ ("label" Data..=) Prelude.<$> label,+ ("position" Data..=) Prelude.<$> position,+ ("validations" Data..=) Prelude.<$> validations+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FieldInputConfig.hs view
@@ -0,0 +1,275 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FieldInputConfig+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FieldInputConfig where++import Amazonka.AmplifyUiBuilder.Types.ValueMappings+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the configuration for the default input values to display for+-- a field.+--+-- /See:/ 'newFieldInputConfig' smart constructor.+data FieldInputConfig = FieldInputConfig'+ { -- | Specifies whether a field has a default value.+ defaultChecked :: Prelude.Maybe Prelude.Bool,+ -- | The default country code for a phone number.+ defaultCountryCode :: Prelude.Maybe Prelude.Text,+ -- | The default value for the field.+ defaultValue :: Prelude.Maybe Prelude.Text,+ -- | The text to display to describe the field.+ descriptiveText :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether to render the field as an array. This property is+ -- ignored if the @dataSourceType@ for the form is a Data Store.+ isArray :: Prelude.Maybe Prelude.Bool,+ -- | The maximum value to display for the field.+ maxValue :: Prelude.Maybe Prelude.Double,+ -- | The minimum value to display for the field.+ minValue :: Prelude.Maybe Prelude.Double,+ -- | The name of the field.+ name :: Prelude.Maybe Prelude.Text,+ -- | The text to display as a placeholder for the field.+ placeholder :: Prelude.Maybe Prelude.Text,+ -- | Specifies a read only field.+ readOnly :: Prelude.Maybe Prelude.Bool,+ -- | Specifies a field that requires input.+ required :: Prelude.Maybe Prelude.Bool,+ -- | The stepping increment for a numeric value in a field.+ step :: Prelude.Maybe Prelude.Double,+ -- | The value for the field.+ value :: Prelude.Maybe Prelude.Text,+ -- | The information to use to customize the input fields with data at+ -- runtime.+ valueMappings :: Prelude.Maybe ValueMappings,+ -- | The input type for the field.+ type' :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FieldInputConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'defaultChecked', 'fieldInputConfig_defaultChecked' - Specifies whether a field has a default value.+--+-- 'defaultCountryCode', 'fieldInputConfig_defaultCountryCode' - The default country code for a phone number.+--+-- 'defaultValue', 'fieldInputConfig_defaultValue' - The default value for the field.+--+-- 'descriptiveText', 'fieldInputConfig_descriptiveText' - The text to display to describe the field.+--+-- 'isArray', 'fieldInputConfig_isArray' - Specifies whether to render the field as an array. This property is+-- ignored if the @dataSourceType@ for the form is a Data Store.+--+-- 'maxValue', 'fieldInputConfig_maxValue' - The maximum value to display for the field.+--+-- 'minValue', 'fieldInputConfig_minValue' - The minimum value to display for the field.+--+-- 'name', 'fieldInputConfig_name' - The name of the field.+--+-- 'placeholder', 'fieldInputConfig_placeholder' - The text to display as a placeholder for the field.+--+-- 'readOnly', 'fieldInputConfig_readOnly' - Specifies a read only field.+--+-- 'required', 'fieldInputConfig_required' - Specifies a field that requires input.+--+-- 'step', 'fieldInputConfig_step' - The stepping increment for a numeric value in a field.+--+-- 'value', 'fieldInputConfig_value' - The value for the field.+--+-- 'valueMappings', 'fieldInputConfig_valueMappings' - The information to use to customize the input fields with data at+-- runtime.+--+-- 'type'', 'fieldInputConfig_type' - The input type for the field.+newFieldInputConfig ::+ -- | 'type''+ Prelude.Text ->+ FieldInputConfig+newFieldInputConfig pType_ =+ FieldInputConfig'+ { defaultChecked = Prelude.Nothing,+ defaultCountryCode = Prelude.Nothing,+ defaultValue = Prelude.Nothing,+ descriptiveText = Prelude.Nothing,+ isArray = Prelude.Nothing,+ maxValue = Prelude.Nothing,+ minValue = Prelude.Nothing,+ name = Prelude.Nothing,+ placeholder = Prelude.Nothing,+ readOnly = Prelude.Nothing,+ required = Prelude.Nothing,+ step = Prelude.Nothing,+ value = Prelude.Nothing,+ valueMappings = Prelude.Nothing,+ type' = pType_+ }++-- | Specifies whether a field has a default value.+fieldInputConfig_defaultChecked :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Bool)+fieldInputConfig_defaultChecked = Lens.lens (\FieldInputConfig' {defaultChecked} -> defaultChecked) (\s@FieldInputConfig' {} a -> s {defaultChecked = a} :: FieldInputConfig)++-- | The default country code for a phone number.+fieldInputConfig_defaultCountryCode :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Text)+fieldInputConfig_defaultCountryCode = Lens.lens (\FieldInputConfig' {defaultCountryCode} -> defaultCountryCode) (\s@FieldInputConfig' {} a -> s {defaultCountryCode = a} :: FieldInputConfig)++-- | The default value for the field.+fieldInputConfig_defaultValue :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Text)+fieldInputConfig_defaultValue = Lens.lens (\FieldInputConfig' {defaultValue} -> defaultValue) (\s@FieldInputConfig' {} a -> s {defaultValue = a} :: FieldInputConfig)++-- | The text to display to describe the field.+fieldInputConfig_descriptiveText :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Text)+fieldInputConfig_descriptiveText = Lens.lens (\FieldInputConfig' {descriptiveText} -> descriptiveText) (\s@FieldInputConfig' {} a -> s {descriptiveText = a} :: FieldInputConfig)++-- | Specifies whether to render the field as an array. This property is+-- ignored if the @dataSourceType@ for the form is a Data Store.+fieldInputConfig_isArray :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Bool)+fieldInputConfig_isArray = Lens.lens (\FieldInputConfig' {isArray} -> isArray) (\s@FieldInputConfig' {} a -> s {isArray = a} :: FieldInputConfig)++-- | The maximum value to display for the field.+fieldInputConfig_maxValue :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Double)+fieldInputConfig_maxValue = Lens.lens (\FieldInputConfig' {maxValue} -> maxValue) (\s@FieldInputConfig' {} a -> s {maxValue = a} :: FieldInputConfig)++-- | The minimum value to display for the field.+fieldInputConfig_minValue :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Double)+fieldInputConfig_minValue = Lens.lens (\FieldInputConfig' {minValue} -> minValue) (\s@FieldInputConfig' {} a -> s {minValue = a} :: FieldInputConfig)++-- | The name of the field.+fieldInputConfig_name :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Text)+fieldInputConfig_name = Lens.lens (\FieldInputConfig' {name} -> name) (\s@FieldInputConfig' {} a -> s {name = a} :: FieldInputConfig)++-- | The text to display as a placeholder for the field.+fieldInputConfig_placeholder :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Text)+fieldInputConfig_placeholder = Lens.lens (\FieldInputConfig' {placeholder} -> placeholder) (\s@FieldInputConfig' {} a -> s {placeholder = a} :: FieldInputConfig)++-- | Specifies a read only field.+fieldInputConfig_readOnly :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Bool)+fieldInputConfig_readOnly = Lens.lens (\FieldInputConfig' {readOnly} -> readOnly) (\s@FieldInputConfig' {} a -> s {readOnly = a} :: FieldInputConfig)++-- | Specifies a field that requires input.+fieldInputConfig_required :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Bool)+fieldInputConfig_required = Lens.lens (\FieldInputConfig' {required} -> required) (\s@FieldInputConfig' {} a -> s {required = a} :: FieldInputConfig)++-- | The stepping increment for a numeric value in a field.+fieldInputConfig_step :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Double)+fieldInputConfig_step = Lens.lens (\FieldInputConfig' {step} -> step) (\s@FieldInputConfig' {} a -> s {step = a} :: FieldInputConfig)++-- | The value for the field.+fieldInputConfig_value :: Lens.Lens' FieldInputConfig (Prelude.Maybe Prelude.Text)+fieldInputConfig_value = Lens.lens (\FieldInputConfig' {value} -> value) (\s@FieldInputConfig' {} a -> s {value = a} :: FieldInputConfig)++-- | The information to use to customize the input fields with data at+-- runtime.+fieldInputConfig_valueMappings :: Lens.Lens' FieldInputConfig (Prelude.Maybe ValueMappings)+fieldInputConfig_valueMappings = Lens.lens (\FieldInputConfig' {valueMappings} -> valueMappings) (\s@FieldInputConfig' {} a -> s {valueMappings = a} :: FieldInputConfig)++-- | The input type for the field.+fieldInputConfig_type :: Lens.Lens' FieldInputConfig Prelude.Text+fieldInputConfig_type = Lens.lens (\FieldInputConfig' {type'} -> type') (\s@FieldInputConfig' {} a -> s {type' = a} :: FieldInputConfig)++instance Data.FromJSON FieldInputConfig where+ parseJSON =+ Data.withObject+ "FieldInputConfig"+ ( \x ->+ FieldInputConfig'+ Prelude.<$> (x Data..:? "defaultChecked")+ Prelude.<*> (x Data..:? "defaultCountryCode")+ Prelude.<*> (x Data..:? "defaultValue")+ Prelude.<*> (x Data..:? "descriptiveText")+ Prelude.<*> (x Data..:? "isArray")+ Prelude.<*> (x Data..:? "maxValue")+ Prelude.<*> (x Data..:? "minValue")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "placeholder")+ Prelude.<*> (x Data..:? "readOnly")+ Prelude.<*> (x Data..:? "required")+ Prelude.<*> (x Data..:? "step")+ Prelude.<*> (x Data..:? "value")+ Prelude.<*> (x Data..:? "valueMappings")+ Prelude.<*> (x Data..: "type")+ )++instance Prelude.Hashable FieldInputConfig where+ hashWithSalt _salt FieldInputConfig' {..} =+ _salt+ `Prelude.hashWithSalt` defaultChecked+ `Prelude.hashWithSalt` defaultCountryCode+ `Prelude.hashWithSalt` defaultValue+ `Prelude.hashWithSalt` descriptiveText+ `Prelude.hashWithSalt` isArray+ `Prelude.hashWithSalt` maxValue+ `Prelude.hashWithSalt` minValue+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` placeholder+ `Prelude.hashWithSalt` readOnly+ `Prelude.hashWithSalt` required+ `Prelude.hashWithSalt` step+ `Prelude.hashWithSalt` value+ `Prelude.hashWithSalt` valueMappings+ `Prelude.hashWithSalt` type'++instance Prelude.NFData FieldInputConfig where+ rnf FieldInputConfig' {..} =+ Prelude.rnf defaultChecked+ `Prelude.seq` Prelude.rnf defaultCountryCode+ `Prelude.seq` Prelude.rnf defaultValue+ `Prelude.seq` Prelude.rnf descriptiveText+ `Prelude.seq` Prelude.rnf isArray+ `Prelude.seq` Prelude.rnf maxValue+ `Prelude.seq` Prelude.rnf minValue+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf placeholder+ `Prelude.seq` Prelude.rnf readOnly+ `Prelude.seq` Prelude.rnf required+ `Prelude.seq` Prelude.rnf step+ `Prelude.seq` Prelude.rnf value+ `Prelude.seq` Prelude.rnf valueMappings+ `Prelude.seq` Prelude.rnf type'++instance Data.ToJSON FieldInputConfig where+ toJSON FieldInputConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("defaultChecked" Data..=)+ Prelude.<$> defaultChecked,+ ("defaultCountryCode" Data..=)+ Prelude.<$> defaultCountryCode,+ ("defaultValue" Data..=) Prelude.<$> defaultValue,+ ("descriptiveText" Data..=)+ Prelude.<$> descriptiveText,+ ("isArray" Data..=) Prelude.<$> isArray,+ ("maxValue" Data..=) Prelude.<$> maxValue,+ ("minValue" Data..=) Prelude.<$> minValue,+ ("name" Data..=) Prelude.<$> name,+ ("placeholder" Data..=) Prelude.<$> placeholder,+ ("readOnly" Data..=) Prelude.<$> readOnly,+ ("required" Data..=) Prelude.<$> required,+ ("step" Data..=) Prelude.<$> step,+ ("value" Data..=) Prelude.<$> value,+ ("valueMappings" Data..=) Prelude.<$> valueMappings,+ Prelude.Just ("type" Data..= type')+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FieldPosition.hs view
@@ -0,0 +1,110 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FieldPosition+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FieldPosition where++import Amazonka.AmplifyUiBuilder.Types.FixedPosition+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the field position.+--+-- /See:/ 'newFieldPosition' smart constructor.+data FieldPosition = FieldPosition'+ { -- | The field position is below the field specified by the string.+ below :: Prelude.Maybe Prelude.Text,+ -- | The field position is fixed and doesn\'t change in relation to other+ -- fields.+ fixed :: Prelude.Maybe FixedPosition,+ -- | The field position is to the right of the field specified by the string.+ rightOf :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FieldPosition' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'below', 'fieldPosition_below' - The field position is below the field specified by the string.+--+-- 'fixed', 'fieldPosition_fixed' - The field position is fixed and doesn\'t change in relation to other+-- fields.+--+-- 'rightOf', 'fieldPosition_rightOf' - The field position is to the right of the field specified by the string.+newFieldPosition ::+ FieldPosition+newFieldPosition =+ FieldPosition'+ { below = Prelude.Nothing,+ fixed = Prelude.Nothing,+ rightOf = Prelude.Nothing+ }++-- | The field position is below the field specified by the string.+fieldPosition_below :: Lens.Lens' FieldPosition (Prelude.Maybe Prelude.Text)+fieldPosition_below = Lens.lens (\FieldPosition' {below} -> below) (\s@FieldPosition' {} a -> s {below = a} :: FieldPosition)++-- | The field position is fixed and doesn\'t change in relation to other+-- fields.+fieldPosition_fixed :: Lens.Lens' FieldPosition (Prelude.Maybe FixedPosition)+fieldPosition_fixed = Lens.lens (\FieldPosition' {fixed} -> fixed) (\s@FieldPosition' {} a -> s {fixed = a} :: FieldPosition)++-- | The field position is to the right of the field specified by the string.+fieldPosition_rightOf :: Lens.Lens' FieldPosition (Prelude.Maybe Prelude.Text)+fieldPosition_rightOf = Lens.lens (\FieldPosition' {rightOf} -> rightOf) (\s@FieldPosition' {} a -> s {rightOf = a} :: FieldPosition)++instance Data.FromJSON FieldPosition where+ parseJSON =+ Data.withObject+ "FieldPosition"+ ( \x ->+ FieldPosition'+ Prelude.<$> (x Data..:? "below")+ Prelude.<*> (x Data..:? "fixed")+ Prelude.<*> (x Data..:? "rightOf")+ )++instance Prelude.Hashable FieldPosition where+ hashWithSalt _salt FieldPosition' {..} =+ _salt+ `Prelude.hashWithSalt` below+ `Prelude.hashWithSalt` fixed+ `Prelude.hashWithSalt` rightOf++instance Prelude.NFData FieldPosition where+ rnf FieldPosition' {..} =+ Prelude.rnf below+ `Prelude.seq` Prelude.rnf fixed+ `Prelude.seq` Prelude.rnf rightOf++instance Data.ToJSON FieldPosition where+ toJSON FieldPosition' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("below" Data..=) Prelude.<$> below,+ ("fixed" Data..=) Prelude.<$> fixed,+ ("rightOf" Data..=) Prelude.<$> rightOf+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FieldValidationConfiguration.hs view
@@ -0,0 +1,126 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FieldValidationConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FieldValidationConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the validation configuration for a field.+--+-- /See:/ 'newFieldValidationConfiguration' smart constructor.+data FieldValidationConfiguration = FieldValidationConfiguration'+ { -- | The validation to perform on a number value.+ numValues :: Prelude.Maybe [Prelude.Int],+ -- | The validation to perform on a string value.+ strValues :: Prelude.Maybe [Prelude.Text],+ -- | The validation message to display.+ validationMessage :: Prelude.Maybe Prelude.Text,+ -- | The validation to perform on an object type.+ type' :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FieldValidationConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'numValues', 'fieldValidationConfiguration_numValues' - The validation to perform on a number value.+--+-- 'strValues', 'fieldValidationConfiguration_strValues' - The validation to perform on a string value.+--+-- 'validationMessage', 'fieldValidationConfiguration_validationMessage' - The validation message to display.+--+-- 'type'', 'fieldValidationConfiguration_type' - The validation to perform on an object type.+newFieldValidationConfiguration ::+ -- | 'type''+ Prelude.Text ->+ FieldValidationConfiguration+newFieldValidationConfiguration pType_ =+ FieldValidationConfiguration'+ { numValues =+ Prelude.Nothing,+ strValues = Prelude.Nothing,+ validationMessage = Prelude.Nothing,+ type' = pType_+ }++-- | The validation to perform on a number value.+fieldValidationConfiguration_numValues :: Lens.Lens' FieldValidationConfiguration (Prelude.Maybe [Prelude.Int])+fieldValidationConfiguration_numValues = Lens.lens (\FieldValidationConfiguration' {numValues} -> numValues) (\s@FieldValidationConfiguration' {} a -> s {numValues = a} :: FieldValidationConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | The validation to perform on a string value.+fieldValidationConfiguration_strValues :: Lens.Lens' FieldValidationConfiguration (Prelude.Maybe [Prelude.Text])+fieldValidationConfiguration_strValues = Lens.lens (\FieldValidationConfiguration' {strValues} -> strValues) (\s@FieldValidationConfiguration' {} a -> s {strValues = a} :: FieldValidationConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | The validation message to display.+fieldValidationConfiguration_validationMessage :: Lens.Lens' FieldValidationConfiguration (Prelude.Maybe Prelude.Text)+fieldValidationConfiguration_validationMessage = Lens.lens (\FieldValidationConfiguration' {validationMessage} -> validationMessage) (\s@FieldValidationConfiguration' {} a -> s {validationMessage = a} :: FieldValidationConfiguration)++-- | The validation to perform on an object type.+fieldValidationConfiguration_type :: Lens.Lens' FieldValidationConfiguration Prelude.Text+fieldValidationConfiguration_type = Lens.lens (\FieldValidationConfiguration' {type'} -> type') (\s@FieldValidationConfiguration' {} a -> s {type' = a} :: FieldValidationConfiguration)++instance Data.FromJSON FieldValidationConfiguration where+ parseJSON =+ Data.withObject+ "FieldValidationConfiguration"+ ( \x ->+ FieldValidationConfiguration'+ Prelude.<$> (x Data..:? "numValues" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "strValues" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "validationMessage")+ Prelude.<*> (x Data..: "type")+ )++instance+ Prelude.Hashable+ FieldValidationConfiguration+ where+ hashWithSalt _salt FieldValidationConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` numValues+ `Prelude.hashWithSalt` strValues+ `Prelude.hashWithSalt` validationMessage+ `Prelude.hashWithSalt` type'++instance Prelude.NFData FieldValidationConfiguration where+ rnf FieldValidationConfiguration' {..} =+ Prelude.rnf numValues+ `Prelude.seq` Prelude.rnf strValues+ `Prelude.seq` Prelude.rnf validationMessage+ `Prelude.seq` Prelude.rnf type'++instance Data.ToJSON FieldValidationConfiguration where+ toJSON FieldValidationConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("numValues" Data..=) Prelude.<$> numValues,+ ("strValues" Data..=) Prelude.<$> strValues,+ ("validationMessage" Data..=)+ Prelude.<$> validationMessage,+ Prelude.Just ("type" Data..= type')+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FixedPosition.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FixedPosition+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FixedPosition+ ( FixedPosition+ ( ..,+ FixedPosition_First+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype FixedPosition = FixedPosition'+ { fromFixedPosition ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern FixedPosition_First :: FixedPosition+pattern FixedPosition_First = FixedPosition' "first"++{-# COMPLETE+ FixedPosition_First,+ FixedPosition'+ #-}
+ gen/Amazonka/AmplifyUiBuilder/Types/Form.hs view
@@ -0,0 +1,243 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.Form+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.Form where++import Amazonka.AmplifyUiBuilder.Types.FieldConfig+import Amazonka.AmplifyUiBuilder.Types.FormActionType+import Amazonka.AmplifyUiBuilder.Types.FormCTA+import Amazonka.AmplifyUiBuilder.Types.FormDataTypeConfig+import Amazonka.AmplifyUiBuilder.Types.FormStyle+import Amazonka.AmplifyUiBuilder.Types.SectionalElement+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | 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.+--+-- /See:/ 'newForm' smart constructor.+data Form = Form'+ { -- | Stores the call to action configuration for the form.+ cta :: Prelude.Maybe FormCTA,+ -- | One or more key-value pairs to use when tagging the form.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The unique ID of the Amplify app associated with the form.+ appId :: Prelude.Text,+ -- | The type of data source to use to create the form.+ dataType :: FormDataTypeConfig,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | Stores the information about the form\'s fields.+ fields :: Prelude.HashMap Prelude.Text FieldConfig,+ -- | The operation to perform on the specified form.+ formActionType :: FormActionType,+ -- | The unique ID of the form.+ id :: Prelude.Text,+ -- | The name of the form.+ name :: Prelude.Text,+ -- | The schema version of the form when it was imported.+ schemaVersion :: Prelude.Text,+ -- | Stores the visual helper elements for the form that are not associated+ -- with any data.+ sectionalElements :: Prelude.HashMap Prelude.Text SectionalElement,+ -- | Stores the configuration for the form\'s style.+ style :: FormStyle+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Form' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cta', 'form_cta' - Stores the call to action configuration for the form.+--+-- 'tags', 'form_tags' - One or more key-value pairs to use when tagging the form.+--+-- 'appId', 'form_appId' - The unique ID of the Amplify app associated with the form.+--+-- 'dataType', 'form_dataType' - The type of data source to use to create the form.+--+-- 'environmentName', 'form_environmentName' - The name of the backend environment that is a part of the Amplify app.+--+-- 'fields', 'form_fields' - Stores the information about the form\'s fields.+--+-- 'formActionType', 'form_formActionType' - The operation to perform on the specified form.+--+-- 'id', 'form_id' - The unique ID of the form.+--+-- 'name', 'form_name' - The name of the form.+--+-- 'schemaVersion', 'form_schemaVersion' - The schema version of the form when it was imported.+--+-- 'sectionalElements', 'form_sectionalElements' - Stores the visual helper elements for the form that are not associated+-- with any data.+--+-- 'style', 'form_style' - Stores the configuration for the form\'s style.+newForm ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'dataType'+ FormDataTypeConfig ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'formActionType'+ FormActionType ->+ -- | 'id'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ -- | 'schemaVersion'+ Prelude.Text ->+ -- | 'style'+ FormStyle ->+ Form+newForm+ pAppId_+ pDataType_+ pEnvironmentName_+ pFormActionType_+ pId_+ pName_+ pSchemaVersion_+ pStyle_ =+ Form'+ { cta = Prelude.Nothing,+ tags = Prelude.Nothing,+ appId = pAppId_,+ dataType = pDataType_,+ environmentName = pEnvironmentName_,+ fields = Prelude.mempty,+ formActionType = pFormActionType_,+ id = pId_,+ name = pName_,+ schemaVersion = pSchemaVersion_,+ sectionalElements = Prelude.mempty,+ style = pStyle_+ }++-- | Stores the call to action configuration for the form.+form_cta :: Lens.Lens' Form (Prelude.Maybe FormCTA)+form_cta = Lens.lens (\Form' {cta} -> cta) (\s@Form' {} a -> s {cta = a} :: Form)++-- | One or more key-value pairs to use when tagging the form.+form_tags :: Lens.Lens' Form (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+form_tags = Lens.lens (\Form' {tags} -> tags) (\s@Form' {} a -> s {tags = a} :: Form) Prelude.. Lens.mapping Lens.coerced++-- | The unique ID of the Amplify app associated with the form.+form_appId :: Lens.Lens' Form Prelude.Text+form_appId = Lens.lens (\Form' {appId} -> appId) (\s@Form' {} a -> s {appId = a} :: Form)++-- | The type of data source to use to create the form.+form_dataType :: Lens.Lens' Form FormDataTypeConfig+form_dataType = Lens.lens (\Form' {dataType} -> dataType) (\s@Form' {} a -> s {dataType = a} :: Form)++-- | The name of the backend environment that is a part of the Amplify app.+form_environmentName :: Lens.Lens' Form Prelude.Text+form_environmentName = Lens.lens (\Form' {environmentName} -> environmentName) (\s@Form' {} a -> s {environmentName = a} :: Form)++-- | Stores the information about the form\'s fields.+form_fields :: Lens.Lens' Form (Prelude.HashMap Prelude.Text FieldConfig)+form_fields = Lens.lens (\Form' {fields} -> fields) (\s@Form' {} a -> s {fields = a} :: Form) Prelude.. Lens.coerced++-- | The operation to perform on the specified form.+form_formActionType :: Lens.Lens' Form FormActionType+form_formActionType = Lens.lens (\Form' {formActionType} -> formActionType) (\s@Form' {} a -> s {formActionType = a} :: Form)++-- | The unique ID of the form.+form_id :: Lens.Lens' Form Prelude.Text+form_id = Lens.lens (\Form' {id} -> id) (\s@Form' {} a -> s {id = a} :: Form)++-- | The name of the form.+form_name :: Lens.Lens' Form Prelude.Text+form_name = Lens.lens (\Form' {name} -> name) (\s@Form' {} a -> s {name = a} :: Form)++-- | The schema version of the form when it was imported.+form_schemaVersion :: Lens.Lens' Form Prelude.Text+form_schemaVersion = Lens.lens (\Form' {schemaVersion} -> schemaVersion) (\s@Form' {} a -> s {schemaVersion = a} :: Form)++-- | Stores the visual helper elements for the form that are not associated+-- with any data.+form_sectionalElements :: Lens.Lens' Form (Prelude.HashMap Prelude.Text SectionalElement)+form_sectionalElements = Lens.lens (\Form' {sectionalElements} -> sectionalElements) (\s@Form' {} a -> s {sectionalElements = a} :: Form) Prelude.. Lens.coerced++-- | Stores the configuration for the form\'s style.+form_style :: Lens.Lens' Form FormStyle+form_style = Lens.lens (\Form' {style} -> style) (\s@Form' {} a -> s {style = a} :: Form)++instance Data.FromJSON Form where+ parseJSON =+ Data.withObject+ "Form"+ ( \x ->+ Form'+ Prelude.<$> (x Data..:? "cta")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "appId")+ Prelude.<*> (x Data..: "dataType")+ Prelude.<*> (x Data..: "environmentName")+ Prelude.<*> (x Data..:? "fields" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "formActionType")+ Prelude.<*> (x Data..: "id")+ Prelude.<*> (x Data..: "name")+ Prelude.<*> (x Data..: "schemaVersion")+ Prelude.<*> ( x+ Data..:? "sectionalElements"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..: "style")+ )++instance Prelude.Hashable Form where+ hashWithSalt _salt Form' {..} =+ _salt+ `Prelude.hashWithSalt` cta+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` dataType+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` fields+ `Prelude.hashWithSalt` formActionType+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` schemaVersion+ `Prelude.hashWithSalt` sectionalElements+ `Prelude.hashWithSalt` style++instance Prelude.NFData Form where+ rnf Form' {..} =+ Prelude.rnf cta+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf dataType+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf fields+ `Prelude.seq` Prelude.rnf formActionType+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf schemaVersion+ `Prelude.seq` Prelude.rnf sectionalElements+ `Prelude.seq` Prelude.rnf style
+ gen/Amazonka/AmplifyUiBuilder/Types/FormActionType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FormActionType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FormActionType+ ( FormActionType+ ( ..,+ FormActionType_Create,+ FormActionType_Update+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype FormActionType = FormActionType'+ { fromFormActionType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern FormActionType_Create :: FormActionType+pattern FormActionType_Create = FormActionType' "create"++pattern FormActionType_Update :: FormActionType+pattern FormActionType_Update = FormActionType' "update"++{-# COMPLETE+ FormActionType_Create,+ FormActionType_Update,+ FormActionType'+ #-}
+ gen/Amazonka/AmplifyUiBuilder/Types/FormBindingElement.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FormBindingElement+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FormBindingElement where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes how to bind a component property to form data.+--+-- /See:/ 'newFormBindingElement' smart constructor.+data FormBindingElement = FormBindingElement'+ { -- | The name of the component to retrieve a value from.+ element :: Prelude.Text,+ -- | The property to retrieve a value from.+ property :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FormBindingElement' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'element', 'formBindingElement_element' - The name of the component to retrieve a value from.+--+-- 'property', 'formBindingElement_property' - The property to retrieve a value from.+newFormBindingElement ::+ -- | 'element'+ Prelude.Text ->+ -- | 'property'+ Prelude.Text ->+ FormBindingElement+newFormBindingElement pElement_ pProperty_ =+ FormBindingElement'+ { element = pElement_,+ property = pProperty_+ }++-- | The name of the component to retrieve a value from.+formBindingElement_element :: Lens.Lens' FormBindingElement Prelude.Text+formBindingElement_element = Lens.lens (\FormBindingElement' {element} -> element) (\s@FormBindingElement' {} a -> s {element = a} :: FormBindingElement)++-- | The property to retrieve a value from.+formBindingElement_property :: Lens.Lens' FormBindingElement Prelude.Text+formBindingElement_property = Lens.lens (\FormBindingElement' {property} -> property) (\s@FormBindingElement' {} a -> s {property = a} :: FormBindingElement)++instance Data.FromJSON FormBindingElement where+ parseJSON =+ Data.withObject+ "FormBindingElement"+ ( \x ->+ FormBindingElement'+ Prelude.<$> (x Data..: "element")+ Prelude.<*> (x Data..: "property")+ )++instance Prelude.Hashable FormBindingElement where+ hashWithSalt _salt FormBindingElement' {..} =+ _salt+ `Prelude.hashWithSalt` element+ `Prelude.hashWithSalt` property++instance Prelude.NFData FormBindingElement where+ rnf FormBindingElement' {..} =+ Prelude.rnf element+ `Prelude.seq` Prelude.rnf property++instance Data.ToJSON FormBindingElement where+ toJSON FormBindingElement' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("element" Data..= element),+ Prelude.Just ("property" Data..= property)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FormButton.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FormButton+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FormButton where++import Amazonka.AmplifyUiBuilder.Types.FieldPosition+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the configuration for a button UI element that is a part of a+-- form.+--+-- /See:/ 'newFormButton' smart constructor.+data FormButton = FormButton'+ { -- | Describes the button\'s properties.+ children :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether the button is visible on the form.+ excluded :: Prelude.Maybe Prelude.Bool,+ -- | The position of the button.+ position :: Prelude.Maybe FieldPosition+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FormButton' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'children', 'formButton_children' - Describes the button\'s properties.+--+-- 'excluded', 'formButton_excluded' - Specifies whether the button is visible on the form.+--+-- 'position', 'formButton_position' - The position of the button.+newFormButton ::+ FormButton+newFormButton =+ FormButton'+ { children = Prelude.Nothing,+ excluded = Prelude.Nothing,+ position = Prelude.Nothing+ }++-- | Describes the button\'s properties.+formButton_children :: Lens.Lens' FormButton (Prelude.Maybe Prelude.Text)+formButton_children = Lens.lens (\FormButton' {children} -> children) (\s@FormButton' {} a -> s {children = a} :: FormButton)++-- | Specifies whether the button is visible on the form.+formButton_excluded :: Lens.Lens' FormButton (Prelude.Maybe Prelude.Bool)+formButton_excluded = Lens.lens (\FormButton' {excluded} -> excluded) (\s@FormButton' {} a -> s {excluded = a} :: FormButton)++-- | The position of the button.+formButton_position :: Lens.Lens' FormButton (Prelude.Maybe FieldPosition)+formButton_position = Lens.lens (\FormButton' {position} -> position) (\s@FormButton' {} a -> s {position = a} :: FormButton)++instance Data.FromJSON FormButton where+ parseJSON =+ Data.withObject+ "FormButton"+ ( \x ->+ FormButton'+ Prelude.<$> (x Data..:? "children")+ Prelude.<*> (x Data..:? "excluded")+ Prelude.<*> (x Data..:? "position")+ )++instance Prelude.Hashable FormButton where+ hashWithSalt _salt FormButton' {..} =+ _salt+ `Prelude.hashWithSalt` children+ `Prelude.hashWithSalt` excluded+ `Prelude.hashWithSalt` position++instance Prelude.NFData FormButton where+ rnf FormButton' {..} =+ Prelude.rnf children+ `Prelude.seq` Prelude.rnf excluded+ `Prelude.seq` Prelude.rnf position++instance Data.ToJSON FormButton where+ toJSON FormButton' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("children" Data..=) Prelude.<$> children,+ ("excluded" Data..=) Prelude.<$> excluded,+ ("position" Data..=) Prelude.<$> position+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FormButtonsPosition.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FormButtonsPosition+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FormButtonsPosition+ ( FormButtonsPosition+ ( ..,+ FormButtonsPosition_Bottom,+ FormButtonsPosition_Top,+ FormButtonsPosition_Top_and_bottom+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype FormButtonsPosition = FormButtonsPosition'+ { fromFormButtonsPosition ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern FormButtonsPosition_Bottom :: FormButtonsPosition+pattern FormButtonsPosition_Bottom = FormButtonsPosition' "bottom"++pattern FormButtonsPosition_Top :: FormButtonsPosition+pattern FormButtonsPosition_Top = FormButtonsPosition' "top"++pattern FormButtonsPosition_Top_and_bottom :: FormButtonsPosition+pattern FormButtonsPosition_Top_and_bottom = FormButtonsPosition' "top_and_bottom"++{-# COMPLETE+ FormButtonsPosition_Bottom,+ FormButtonsPosition_Top,+ FormButtonsPosition_Top_and_bottom,+ FormButtonsPosition'+ #-}
+ gen/Amazonka/AmplifyUiBuilder/Types/FormCTA.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FormCTA+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FormCTA where++import Amazonka.AmplifyUiBuilder.Types.FormButton+import Amazonka.AmplifyUiBuilder.Types.FormButtonsPosition+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the call to action button configuration for the form.+--+-- /See:/ 'newFormCTA' smart constructor.+data FormCTA = FormCTA'+ { -- | Displays a cancel button.+ cancel :: Prelude.Maybe FormButton,+ -- | Displays a clear button.+ clear :: Prelude.Maybe FormButton,+ -- | The position of the button.+ position :: Prelude.Maybe FormButtonsPosition,+ -- | Displays a submit button.+ submit :: Prelude.Maybe FormButton+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FormCTA' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cancel', 'formCTA_cancel' - Displays a cancel button.+--+-- 'clear', 'formCTA_clear' - Displays a clear button.+--+-- 'position', 'formCTA_position' - The position of the button.+--+-- 'submit', 'formCTA_submit' - Displays a submit button.+newFormCTA ::+ FormCTA+newFormCTA =+ FormCTA'+ { cancel = Prelude.Nothing,+ clear = Prelude.Nothing,+ position = Prelude.Nothing,+ submit = Prelude.Nothing+ }++-- | Displays a cancel button.+formCTA_cancel :: Lens.Lens' FormCTA (Prelude.Maybe FormButton)+formCTA_cancel = Lens.lens (\FormCTA' {cancel} -> cancel) (\s@FormCTA' {} a -> s {cancel = a} :: FormCTA)++-- | Displays a clear button.+formCTA_clear :: Lens.Lens' FormCTA (Prelude.Maybe FormButton)+formCTA_clear = Lens.lens (\FormCTA' {clear} -> clear) (\s@FormCTA' {} a -> s {clear = a} :: FormCTA)++-- | The position of the button.+formCTA_position :: Lens.Lens' FormCTA (Prelude.Maybe FormButtonsPosition)+formCTA_position = Lens.lens (\FormCTA' {position} -> position) (\s@FormCTA' {} a -> s {position = a} :: FormCTA)++-- | Displays a submit button.+formCTA_submit :: Lens.Lens' FormCTA (Prelude.Maybe FormButton)+formCTA_submit = Lens.lens (\FormCTA' {submit} -> submit) (\s@FormCTA' {} a -> s {submit = a} :: FormCTA)++instance Data.FromJSON FormCTA where+ parseJSON =+ Data.withObject+ "FormCTA"+ ( \x ->+ FormCTA'+ Prelude.<$> (x Data..:? "cancel")+ Prelude.<*> (x Data..:? "clear")+ Prelude.<*> (x Data..:? "position")+ Prelude.<*> (x Data..:? "submit")+ )++instance Prelude.Hashable FormCTA where+ hashWithSalt _salt FormCTA' {..} =+ _salt+ `Prelude.hashWithSalt` cancel+ `Prelude.hashWithSalt` clear+ `Prelude.hashWithSalt` position+ `Prelude.hashWithSalt` submit++instance Prelude.NFData FormCTA where+ rnf FormCTA' {..} =+ Prelude.rnf cancel+ `Prelude.seq` Prelude.rnf clear+ `Prelude.seq` Prelude.rnf position+ `Prelude.seq` Prelude.rnf submit++instance Data.ToJSON FormCTA where+ toJSON FormCTA' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("cancel" Data..=) Prelude.<$> cancel,+ ("clear" Data..=) Prelude.<$> clear,+ ("position" Data..=) Prelude.<$> position,+ ("submit" Data..=) Prelude.<$> submit+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FormDataSourceType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FormDataSourceType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FormDataSourceType+ ( FormDataSourceType+ ( ..,+ FormDataSourceType_Custom,+ FormDataSourceType_DataStore+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype FormDataSourceType = FormDataSourceType'+ { fromFormDataSourceType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern FormDataSourceType_Custom :: FormDataSourceType+pattern FormDataSourceType_Custom = FormDataSourceType' "Custom"++pattern FormDataSourceType_DataStore :: FormDataSourceType+pattern FormDataSourceType_DataStore = FormDataSourceType' "DataStore"++{-# COMPLETE+ FormDataSourceType_Custom,+ FormDataSourceType_DataStore,+ FormDataSourceType'+ #-}
+ gen/Amazonka/AmplifyUiBuilder/Types/FormDataTypeConfig.hs view
@@ -0,0 +1,107 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FormDataTypeConfig+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FormDataTypeConfig where++import Amazonka.AmplifyUiBuilder.Types.FormDataSourceType+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the data type configuration for the data source associated+-- with a form.+--+-- /See:/ 'newFormDataTypeConfig' smart constructor.+data FormDataTypeConfig = FormDataTypeConfig'+ { -- | The data source type, either an Amplify DataStore model or a custom data+ -- type.+ dataSourceType :: FormDataSourceType,+ -- | The unique name of the data type you are using as the data source for+ -- the form.+ dataTypeName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FormDataTypeConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dataSourceType', 'formDataTypeConfig_dataSourceType' - The data source type, either an Amplify DataStore model or a custom data+-- type.+--+-- 'dataTypeName', 'formDataTypeConfig_dataTypeName' - The unique name of the data type you are using as the data source for+-- the form.+newFormDataTypeConfig ::+ -- | 'dataSourceType'+ FormDataSourceType ->+ -- | 'dataTypeName'+ Prelude.Text ->+ FormDataTypeConfig+newFormDataTypeConfig pDataSourceType_ pDataTypeName_ =+ FormDataTypeConfig'+ { dataSourceType =+ pDataSourceType_,+ dataTypeName = pDataTypeName_+ }++-- | The data source type, either an Amplify DataStore model or a custom data+-- type.+formDataTypeConfig_dataSourceType :: Lens.Lens' FormDataTypeConfig FormDataSourceType+formDataTypeConfig_dataSourceType = Lens.lens (\FormDataTypeConfig' {dataSourceType} -> dataSourceType) (\s@FormDataTypeConfig' {} a -> s {dataSourceType = a} :: FormDataTypeConfig)++-- | The unique name of the data type you are using as the data source for+-- the form.+formDataTypeConfig_dataTypeName :: Lens.Lens' FormDataTypeConfig Prelude.Text+formDataTypeConfig_dataTypeName = Lens.lens (\FormDataTypeConfig' {dataTypeName} -> dataTypeName) (\s@FormDataTypeConfig' {} a -> s {dataTypeName = a} :: FormDataTypeConfig)++instance Data.FromJSON FormDataTypeConfig where+ parseJSON =+ Data.withObject+ "FormDataTypeConfig"+ ( \x ->+ FormDataTypeConfig'+ Prelude.<$> (x Data..: "dataSourceType")+ Prelude.<*> (x Data..: "dataTypeName")+ )++instance Prelude.Hashable FormDataTypeConfig where+ hashWithSalt _salt FormDataTypeConfig' {..} =+ _salt+ `Prelude.hashWithSalt` dataSourceType+ `Prelude.hashWithSalt` dataTypeName++instance Prelude.NFData FormDataTypeConfig where+ rnf FormDataTypeConfig' {..} =+ Prelude.rnf dataSourceType+ `Prelude.seq` Prelude.rnf dataTypeName++instance Data.ToJSON FormDataTypeConfig where+ toJSON FormDataTypeConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("dataSourceType" Data..= dataSourceType),+ Prelude.Just ("dataTypeName" Data..= dataTypeName)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FormInputValueProperty.hs view
@@ -0,0 +1,77 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FormInputValueProperty+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FormInputValueProperty where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the configuration for an input field on a form. Use+-- @FormInputValueProperty@ to specify the values to render or bind by+-- default.+--+-- /See:/ 'newFormInputValueProperty' smart constructor.+data FormInputValueProperty = FormInputValueProperty'+ { -- | The value to assign to the input field.+ value :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FormInputValueProperty' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'value', 'formInputValueProperty_value' - The value to assign to the input field.+newFormInputValueProperty ::+ FormInputValueProperty+newFormInputValueProperty =+ FormInputValueProperty' {value = Prelude.Nothing}++-- | The value to assign to the input field.+formInputValueProperty_value :: Lens.Lens' FormInputValueProperty (Prelude.Maybe Prelude.Text)+formInputValueProperty_value = Lens.lens (\FormInputValueProperty' {value} -> value) (\s@FormInputValueProperty' {} a -> s {value = a} :: FormInputValueProperty)++instance Data.FromJSON FormInputValueProperty where+ parseJSON =+ Data.withObject+ "FormInputValueProperty"+ ( \x ->+ FormInputValueProperty'+ Prelude.<$> (x Data..:? "value")+ )++instance Prelude.Hashable FormInputValueProperty where+ hashWithSalt _salt FormInputValueProperty' {..} =+ _salt `Prelude.hashWithSalt` value++instance Prelude.NFData FormInputValueProperty where+ rnf FormInputValueProperty' {..} = Prelude.rnf value++instance Data.ToJSON FormInputValueProperty where+ toJSON FormInputValueProperty' {..} =+ Data.object+ ( Prelude.catMaybes+ [("value" Data..=) Prelude.<$> value]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FormStyle.hs view
@@ -0,0 +1,107 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FormStyle+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FormStyle where++import Amazonka.AmplifyUiBuilder.Types.FormStyleConfig+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the configuration for the form\'s style.+--+-- /See:/ 'newFormStyle' smart constructor.+data FormStyle = FormStyle'+ { -- | The spacing for the horizontal gap.+ horizontalGap :: Prelude.Maybe FormStyleConfig,+ -- | The size of the outer padding for the form.+ outerPadding :: Prelude.Maybe FormStyleConfig,+ -- | The spacing for the vertical gap.+ verticalGap :: Prelude.Maybe FormStyleConfig+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FormStyle' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'horizontalGap', 'formStyle_horizontalGap' - The spacing for the horizontal gap.+--+-- 'outerPadding', 'formStyle_outerPadding' - The size of the outer padding for the form.+--+-- 'verticalGap', 'formStyle_verticalGap' - The spacing for the vertical gap.+newFormStyle ::+ FormStyle+newFormStyle =+ FormStyle'+ { horizontalGap = Prelude.Nothing,+ outerPadding = Prelude.Nothing,+ verticalGap = Prelude.Nothing+ }++-- | The spacing for the horizontal gap.+formStyle_horizontalGap :: Lens.Lens' FormStyle (Prelude.Maybe FormStyleConfig)+formStyle_horizontalGap = Lens.lens (\FormStyle' {horizontalGap} -> horizontalGap) (\s@FormStyle' {} a -> s {horizontalGap = a} :: FormStyle)++-- | The size of the outer padding for the form.+formStyle_outerPadding :: Lens.Lens' FormStyle (Prelude.Maybe FormStyleConfig)+formStyle_outerPadding = Lens.lens (\FormStyle' {outerPadding} -> outerPadding) (\s@FormStyle' {} a -> s {outerPadding = a} :: FormStyle)++-- | The spacing for the vertical gap.+formStyle_verticalGap :: Lens.Lens' FormStyle (Prelude.Maybe FormStyleConfig)+formStyle_verticalGap = Lens.lens (\FormStyle' {verticalGap} -> verticalGap) (\s@FormStyle' {} a -> s {verticalGap = a} :: FormStyle)++instance Data.FromJSON FormStyle where+ parseJSON =+ Data.withObject+ "FormStyle"+ ( \x ->+ FormStyle'+ Prelude.<$> (x Data..:? "horizontalGap")+ Prelude.<*> (x Data..:? "outerPadding")+ Prelude.<*> (x Data..:? "verticalGap")+ )++instance Prelude.Hashable FormStyle where+ hashWithSalt _salt FormStyle' {..} =+ _salt+ `Prelude.hashWithSalt` horizontalGap+ `Prelude.hashWithSalt` outerPadding+ `Prelude.hashWithSalt` verticalGap++instance Prelude.NFData FormStyle where+ rnf FormStyle' {..} =+ Prelude.rnf horizontalGap+ `Prelude.seq` Prelude.rnf outerPadding+ `Prelude.seq` Prelude.rnf verticalGap++instance Data.ToJSON FormStyle where+ toJSON FormStyle' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("horizontalGap" Data..=) Prelude.<$> horizontalGap,+ ("outerPadding" Data..=) Prelude.<$> outerPadding,+ ("verticalGap" Data..=) Prelude.<$> verticalGap+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FormStyleConfig.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FormStyleConfig+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FormStyleConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the configuration settings for the form\'s style properties.+--+-- /See:/ 'newFormStyleConfig' smart constructor.+data FormStyleConfig = FormStyleConfig'+ { -- | A reference to a design token to use to bind the form\'s style+ -- properties to an existing theme.+ tokenReference :: Prelude.Maybe Prelude.Text,+ -- | The value of the style setting.+ value :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FormStyleConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tokenReference', 'formStyleConfig_tokenReference' - A reference to a design token to use to bind the form\'s style+-- properties to an existing theme.+--+-- 'value', 'formStyleConfig_value' - The value of the style setting.+newFormStyleConfig ::+ FormStyleConfig+newFormStyleConfig =+ FormStyleConfig'+ { tokenReference = Prelude.Nothing,+ value = Prelude.Nothing+ }++-- | A reference to a design token to use to bind the form\'s style+-- properties to an existing theme.+formStyleConfig_tokenReference :: Lens.Lens' FormStyleConfig (Prelude.Maybe Prelude.Text)+formStyleConfig_tokenReference = Lens.lens (\FormStyleConfig' {tokenReference} -> tokenReference) (\s@FormStyleConfig' {} a -> s {tokenReference = a} :: FormStyleConfig)++-- | The value of the style setting.+formStyleConfig_value :: Lens.Lens' FormStyleConfig (Prelude.Maybe Prelude.Text)+formStyleConfig_value = Lens.lens (\FormStyleConfig' {value} -> value) (\s@FormStyleConfig' {} a -> s {value = a} :: FormStyleConfig)++instance Data.FromJSON FormStyleConfig where+ parseJSON =+ Data.withObject+ "FormStyleConfig"+ ( \x ->+ FormStyleConfig'+ Prelude.<$> (x Data..:? "tokenReference")+ Prelude.<*> (x Data..:? "value")+ )++instance Prelude.Hashable FormStyleConfig where+ hashWithSalt _salt FormStyleConfig' {..} =+ _salt+ `Prelude.hashWithSalt` tokenReference+ `Prelude.hashWithSalt` value++instance Prelude.NFData FormStyleConfig where+ rnf FormStyleConfig' {..} =+ Prelude.rnf tokenReference+ `Prelude.seq` Prelude.rnf value++instance Data.ToJSON FormStyleConfig where+ toJSON FormStyleConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("tokenReference" Data..=)+ Prelude.<$> tokenReference,+ ("value" Data..=) Prelude.<$> value+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/FormSummary.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.FormSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.FormSummary where++import Amazonka.AmplifyUiBuilder.Types.FormActionType+import Amazonka.AmplifyUiBuilder.Types.FormDataTypeConfig+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the basic information about a form.+--+-- /See:/ 'newFormSummary' smart constructor.+data FormSummary = FormSummary'+ { -- | The unique ID for the app associated with the form summary.+ appId :: Prelude.Text,+ -- | The form\'s data source type.+ dataType :: FormDataTypeConfig,+ -- | The name of the backend environment that is part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The type of operation to perform on the form.+ formActionType :: FormActionType,+ -- | The ID of the form.+ id :: Prelude.Text,+ -- | The name of the form.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FormSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appId', 'formSummary_appId' - The unique ID for the app associated with the form summary.+--+-- 'dataType', 'formSummary_dataType' - The form\'s data source type.+--+-- 'environmentName', 'formSummary_environmentName' - The name of the backend environment that is part of the Amplify app.+--+-- 'formActionType', 'formSummary_formActionType' - The type of operation to perform on the form.+--+-- 'id', 'formSummary_id' - The ID of the form.+--+-- 'name', 'formSummary_name' - The name of the form.+newFormSummary ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'dataType'+ FormDataTypeConfig ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'formActionType'+ FormActionType ->+ -- | 'id'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ FormSummary+newFormSummary+ pAppId_+ pDataType_+ pEnvironmentName_+ pFormActionType_+ pId_+ pName_ =+ FormSummary'+ { appId = pAppId_,+ dataType = pDataType_,+ environmentName = pEnvironmentName_,+ formActionType = pFormActionType_,+ id = pId_,+ name = pName_+ }++-- | The unique ID for the app associated with the form summary.+formSummary_appId :: Lens.Lens' FormSummary Prelude.Text+formSummary_appId = Lens.lens (\FormSummary' {appId} -> appId) (\s@FormSummary' {} a -> s {appId = a} :: FormSummary)++-- | The form\'s data source type.+formSummary_dataType :: Lens.Lens' FormSummary FormDataTypeConfig+formSummary_dataType = Lens.lens (\FormSummary' {dataType} -> dataType) (\s@FormSummary' {} a -> s {dataType = a} :: FormSummary)++-- | The name of the backend environment that is part of the Amplify app.+formSummary_environmentName :: Lens.Lens' FormSummary Prelude.Text+formSummary_environmentName = Lens.lens (\FormSummary' {environmentName} -> environmentName) (\s@FormSummary' {} a -> s {environmentName = a} :: FormSummary)++-- | The type of operation to perform on the form.+formSummary_formActionType :: Lens.Lens' FormSummary FormActionType+formSummary_formActionType = Lens.lens (\FormSummary' {formActionType} -> formActionType) (\s@FormSummary' {} a -> s {formActionType = a} :: FormSummary)++-- | The ID of the form.+formSummary_id :: Lens.Lens' FormSummary Prelude.Text+formSummary_id = Lens.lens (\FormSummary' {id} -> id) (\s@FormSummary' {} a -> s {id = a} :: FormSummary)++-- | The name of the form.+formSummary_name :: Lens.Lens' FormSummary Prelude.Text+formSummary_name = Lens.lens (\FormSummary' {name} -> name) (\s@FormSummary' {} a -> s {name = a} :: FormSummary)++instance Data.FromJSON FormSummary where+ parseJSON =+ Data.withObject+ "FormSummary"+ ( \x ->+ FormSummary'+ Prelude.<$> (x Data..: "appId")+ Prelude.<*> (x Data..: "dataType")+ Prelude.<*> (x Data..: "environmentName")+ Prelude.<*> (x Data..: "formActionType")+ Prelude.<*> (x Data..: "id")+ Prelude.<*> (x Data..: "name")+ )++instance Prelude.Hashable FormSummary where+ hashWithSalt _salt FormSummary' {..} =+ _salt+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` dataType+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` formActionType+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` name++instance Prelude.NFData FormSummary where+ rnf FormSummary' {..} =+ Prelude.rnf appId+ `Prelude.seq` Prelude.rnf dataType+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf formActionType+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name
+ gen/Amazonka/AmplifyUiBuilder/Types/MutationActionSetStateParameter.hs view
@@ -0,0 +1,130 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.MutationActionSetStateParameter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.MutationActionSetStateParameter where++import Amazonka.AmplifyUiBuilder.Types.ComponentProperty+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Represents the state configuration when an action modifies a property of+-- another element within the same component.+--+-- /See:/ 'newMutationActionSetStateParameter' smart constructor.+data MutationActionSetStateParameter = MutationActionSetStateParameter'+ { -- | The name of the component that is being modified.+ componentName :: Prelude.Text,+ -- | The name of the component property to apply the state configuration to.+ property :: Prelude.Text,+ -- | The state configuration to assign to the property.+ set :: ComponentProperty+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MutationActionSetStateParameter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentName', 'mutationActionSetStateParameter_componentName' - The name of the component that is being modified.+--+-- 'property', 'mutationActionSetStateParameter_property' - The name of the component property to apply the state configuration to.+--+-- 'set', 'mutationActionSetStateParameter_set' - The state configuration to assign to the property.+newMutationActionSetStateParameter ::+ -- | 'componentName'+ Prelude.Text ->+ -- | 'property'+ Prelude.Text ->+ -- | 'set'+ ComponentProperty ->+ MutationActionSetStateParameter+newMutationActionSetStateParameter+ pComponentName_+ pProperty_+ pSet_ =+ MutationActionSetStateParameter'+ { componentName =+ pComponentName_,+ property = pProperty_,+ set = pSet_+ }++-- | The name of the component that is being modified.+mutationActionSetStateParameter_componentName :: Lens.Lens' MutationActionSetStateParameter Prelude.Text+mutationActionSetStateParameter_componentName = Lens.lens (\MutationActionSetStateParameter' {componentName} -> componentName) (\s@MutationActionSetStateParameter' {} a -> s {componentName = a} :: MutationActionSetStateParameter)++-- | The name of the component property to apply the state configuration to.+mutationActionSetStateParameter_property :: Lens.Lens' MutationActionSetStateParameter Prelude.Text+mutationActionSetStateParameter_property = Lens.lens (\MutationActionSetStateParameter' {property} -> property) (\s@MutationActionSetStateParameter' {} a -> s {property = a} :: MutationActionSetStateParameter)++-- | The state configuration to assign to the property.+mutationActionSetStateParameter_set :: Lens.Lens' MutationActionSetStateParameter ComponentProperty+mutationActionSetStateParameter_set = Lens.lens (\MutationActionSetStateParameter' {set} -> set) (\s@MutationActionSetStateParameter' {} a -> s {set = a} :: MutationActionSetStateParameter)++instance+ Data.FromJSON+ MutationActionSetStateParameter+ where+ parseJSON =+ Data.withObject+ "MutationActionSetStateParameter"+ ( \x ->+ MutationActionSetStateParameter'+ Prelude.<$> (x Data..: "componentName")+ Prelude.<*> (x Data..: "property")+ Prelude.<*> (x Data..: "set")+ )++instance+ Prelude.Hashable+ MutationActionSetStateParameter+ where+ hashWithSalt+ _salt+ MutationActionSetStateParameter' {..} =+ _salt+ `Prelude.hashWithSalt` componentName+ `Prelude.hashWithSalt` property+ `Prelude.hashWithSalt` set++instance+ Prelude.NFData+ MutationActionSetStateParameter+ where+ rnf MutationActionSetStateParameter' {..} =+ Prelude.rnf componentName+ `Prelude.seq` Prelude.rnf property+ `Prelude.seq` Prelude.rnf set++instance Data.ToJSON MutationActionSetStateParameter where+ toJSON MutationActionSetStateParameter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("componentName" Data..= componentName),+ Prelude.Just ("property" Data..= property),+ Prelude.Just ("set" Data..= set)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/Predicate.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.Predicate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.Predicate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Stores information for generating Amplify DataStore queries. Use a+-- @Predicate@ to retrieve a subset of the data in a collection.+--+-- /See:/ 'newPredicate' smart constructor.+data Predicate = Predicate'+ { -- | A list of predicates to combine logically.+ and :: Prelude.Maybe [Predicate],+ -- | The field to query.+ field :: Prelude.Maybe Prelude.Text,+ -- | The value to use when performing the evaluation.+ operand :: Prelude.Maybe Prelude.Text,+ -- | The operator to use to perform the evaluation.+ operator :: Prelude.Maybe Prelude.Text,+ -- | A list of predicates to combine logically.+ or :: Prelude.Maybe [Predicate]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Predicate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'and', 'predicate_and' - A list of predicates to combine logically.+--+-- 'field', 'predicate_field' - The field to query.+--+-- 'operand', 'predicate_operand' - The value to use when performing the evaluation.+--+-- 'operator', 'predicate_operator' - The operator to use to perform the evaluation.+--+-- 'or', 'predicate_or' - A list of predicates to combine logically.+newPredicate ::+ Predicate+newPredicate =+ Predicate'+ { and = Prelude.Nothing,+ field = Prelude.Nothing,+ operand = Prelude.Nothing,+ operator = Prelude.Nothing,+ or = Prelude.Nothing+ }++-- | A list of predicates to combine logically.+predicate_and :: Lens.Lens' Predicate (Prelude.Maybe [Predicate])+predicate_and = Lens.lens (\Predicate' {and} -> and) (\s@Predicate' {} a -> s {and = a} :: Predicate) Prelude.. Lens.mapping Lens.coerced++-- | The field to query.+predicate_field :: Lens.Lens' Predicate (Prelude.Maybe Prelude.Text)+predicate_field = Lens.lens (\Predicate' {field} -> field) (\s@Predicate' {} a -> s {field = a} :: Predicate)++-- | The value to use when performing the evaluation.+predicate_operand :: Lens.Lens' Predicate (Prelude.Maybe Prelude.Text)+predicate_operand = Lens.lens (\Predicate' {operand} -> operand) (\s@Predicate' {} a -> s {operand = a} :: Predicate)++-- | The operator to use to perform the evaluation.+predicate_operator :: Lens.Lens' Predicate (Prelude.Maybe Prelude.Text)+predicate_operator = Lens.lens (\Predicate' {operator} -> operator) (\s@Predicate' {} a -> s {operator = a} :: Predicate)++-- | A list of predicates to combine logically.+predicate_or :: Lens.Lens' Predicate (Prelude.Maybe [Predicate])+predicate_or = Lens.lens (\Predicate' {or} -> or) (\s@Predicate' {} a -> s {or = a} :: Predicate) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON Predicate where+ parseJSON =+ Data.withObject+ "Predicate"+ ( \x ->+ Predicate'+ Prelude.<$> (x Data..:? "and" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "field")+ Prelude.<*> (x Data..:? "operand")+ Prelude.<*> (x Data..:? "operator")+ Prelude.<*> (x Data..:? "or" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable Predicate where+ hashWithSalt _salt Predicate' {..} =+ _salt+ `Prelude.hashWithSalt` and+ `Prelude.hashWithSalt` field+ `Prelude.hashWithSalt` operand+ `Prelude.hashWithSalt` operator+ `Prelude.hashWithSalt` or++instance Prelude.NFData Predicate where+ rnf Predicate' {..} =+ Prelude.rnf and+ `Prelude.seq` Prelude.rnf field+ `Prelude.seq` Prelude.rnf operand+ `Prelude.seq` Prelude.rnf operator+ `Prelude.seq` Prelude.rnf or++instance Data.ToJSON Predicate where+ toJSON Predicate' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("and" Data..=) Prelude.<$> and,+ ("field" Data..=) Prelude.<$> field,+ ("operand" Data..=) Prelude.<$> operand,+ ("operator" Data..=) Prelude.<$> operator,+ ("or" Data..=) Prelude.<$> or+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/PutMetadataFlagBody.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.PutMetadataFlagBody+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.PutMetadataFlagBody where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Stores the metadata information about a feature on a form or view.+--+-- /See:/ 'newPutMetadataFlagBody' smart constructor.+data PutMetadataFlagBody = PutMetadataFlagBody'+ { -- | The new information to store.+ newValue' :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutMetadataFlagBody' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'newValue'', 'putMetadataFlagBody_newValue' - The new information to store.+newPutMetadataFlagBody ::+ -- | 'newValue''+ Prelude.Text ->+ PutMetadataFlagBody+newPutMetadataFlagBody pNewValue_ =+ PutMetadataFlagBody' {newValue' = pNewValue_}++-- | The new information to store.+putMetadataFlagBody_newValue :: Lens.Lens' PutMetadataFlagBody Prelude.Text+putMetadataFlagBody_newValue = Lens.lens (\PutMetadataFlagBody' {newValue'} -> newValue') (\s@PutMetadataFlagBody' {} a -> s {newValue' = a} :: PutMetadataFlagBody)++instance Prelude.Hashable PutMetadataFlagBody where+ hashWithSalt _salt PutMetadataFlagBody' {..} =+ _salt `Prelude.hashWithSalt` newValue'++instance Prelude.NFData PutMetadataFlagBody where+ rnf PutMetadataFlagBody' {..} = Prelude.rnf newValue'++instance Data.ToJSON PutMetadataFlagBody where+ toJSON PutMetadataFlagBody' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("newValue" Data..= newValue')]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/RefreshTokenRequestBody.hs view
@@ -0,0 +1,74 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.RefreshTokenRequestBody+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.RefreshTokenRequestBody where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes a refresh token.+--+-- /See:/ 'newRefreshTokenRequestBody' smart constructor.+data RefreshTokenRequestBody = RefreshTokenRequestBody'+ { -- | The token to use to refresh a previously issued access token that might+ -- have expired.+ token :: Data.Sensitive Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RefreshTokenRequestBody' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'token', 'refreshTokenRequestBody_token' - The token to use to refresh a previously issued access token that might+-- have expired.+newRefreshTokenRequestBody ::+ -- | 'token'+ Prelude.Text ->+ RefreshTokenRequestBody+newRefreshTokenRequestBody pToken_ =+ RefreshTokenRequestBody'+ { token =+ Data._Sensitive Lens.# pToken_+ }++-- | The token to use to refresh a previously issued access token that might+-- have expired.+refreshTokenRequestBody_token :: Lens.Lens' RefreshTokenRequestBody Prelude.Text+refreshTokenRequestBody_token = Lens.lens (\RefreshTokenRequestBody' {token} -> token) (\s@RefreshTokenRequestBody' {} a -> s {token = a} :: RefreshTokenRequestBody) Prelude.. Data._Sensitive++instance Prelude.Hashable RefreshTokenRequestBody where+ hashWithSalt _salt RefreshTokenRequestBody' {..} =+ _salt `Prelude.hashWithSalt` token++instance Prelude.NFData RefreshTokenRequestBody where+ rnf RefreshTokenRequestBody' {..} = Prelude.rnf token++instance Data.ToJSON RefreshTokenRequestBody where+ toJSON RefreshTokenRequestBody' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("token" Data..= token)]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/SectionalElement.hs view
@@ -0,0 +1,149 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.SectionalElement+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.SectionalElement where++import Amazonka.AmplifyUiBuilder.Types.FieldPosition+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | 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.+--+-- /See:/ 'newSectionalElement' smart constructor.+data SectionalElement = SectionalElement'+ { -- | Specifies the size of the font for a @Heading@ sectional element. Valid+ -- values are @1 | 2 | 3 | 4 | 5 | 6@.+ level :: Prelude.Maybe Prelude.Int,+ -- | Specifies the orientation for a @Divider@ sectional element. Valid+ -- values are @horizontal@ or @vertical@.+ orientation :: Prelude.Maybe Prelude.Text,+ -- | Specifies the position of the text in a field for a @Text@ sectional+ -- element.+ position :: Prelude.Maybe FieldPosition,+ -- | The text for a @Text@ sectional element.+ text :: Prelude.Maybe Prelude.Text,+ -- | The type of sectional element. Valid values are @Heading@, @Text@, and+ -- @Divider@.+ type' :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SectionalElement' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'level', 'sectionalElement_level' - Specifies the size of the font for a @Heading@ sectional element. Valid+-- values are @1 | 2 | 3 | 4 | 5 | 6@.+--+-- 'orientation', 'sectionalElement_orientation' - Specifies the orientation for a @Divider@ sectional element. Valid+-- values are @horizontal@ or @vertical@.+--+-- 'position', 'sectionalElement_position' - Specifies the position of the text in a field for a @Text@ sectional+-- element.+--+-- 'text', 'sectionalElement_text' - The text for a @Text@ sectional element.+--+-- 'type'', 'sectionalElement_type' - The type of sectional element. Valid values are @Heading@, @Text@, and+-- @Divider@.+newSectionalElement ::+ -- | 'type''+ Prelude.Text ->+ SectionalElement+newSectionalElement pType_ =+ SectionalElement'+ { level = Prelude.Nothing,+ orientation = Prelude.Nothing,+ position = Prelude.Nothing,+ text = Prelude.Nothing,+ type' = pType_+ }++-- | Specifies the size of the font for a @Heading@ sectional element. Valid+-- values are @1 | 2 | 3 | 4 | 5 | 6@.+sectionalElement_level :: Lens.Lens' SectionalElement (Prelude.Maybe Prelude.Int)+sectionalElement_level = Lens.lens (\SectionalElement' {level} -> level) (\s@SectionalElement' {} a -> s {level = a} :: SectionalElement)++-- | Specifies the orientation for a @Divider@ sectional element. Valid+-- values are @horizontal@ or @vertical@.+sectionalElement_orientation :: Lens.Lens' SectionalElement (Prelude.Maybe Prelude.Text)+sectionalElement_orientation = Lens.lens (\SectionalElement' {orientation} -> orientation) (\s@SectionalElement' {} a -> s {orientation = a} :: SectionalElement)++-- | Specifies the position of the text in a field for a @Text@ sectional+-- element.+sectionalElement_position :: Lens.Lens' SectionalElement (Prelude.Maybe FieldPosition)+sectionalElement_position = Lens.lens (\SectionalElement' {position} -> position) (\s@SectionalElement' {} a -> s {position = a} :: SectionalElement)++-- | The text for a @Text@ sectional element.+sectionalElement_text :: Lens.Lens' SectionalElement (Prelude.Maybe Prelude.Text)+sectionalElement_text = Lens.lens (\SectionalElement' {text} -> text) (\s@SectionalElement' {} a -> s {text = a} :: SectionalElement)++-- | The type of sectional element. Valid values are @Heading@, @Text@, and+-- @Divider@.+sectionalElement_type :: Lens.Lens' SectionalElement Prelude.Text+sectionalElement_type = Lens.lens (\SectionalElement' {type'} -> type') (\s@SectionalElement' {} a -> s {type' = a} :: SectionalElement)++instance Data.FromJSON SectionalElement where+ parseJSON =+ Data.withObject+ "SectionalElement"+ ( \x ->+ SectionalElement'+ Prelude.<$> (x Data..:? "level")+ Prelude.<*> (x Data..:? "orientation")+ Prelude.<*> (x Data..:? "position")+ Prelude.<*> (x Data..:? "text")+ Prelude.<*> (x Data..: "type")+ )++instance Prelude.Hashable SectionalElement where+ hashWithSalt _salt SectionalElement' {..} =+ _salt+ `Prelude.hashWithSalt` level+ `Prelude.hashWithSalt` orientation+ `Prelude.hashWithSalt` position+ `Prelude.hashWithSalt` text+ `Prelude.hashWithSalt` type'++instance Prelude.NFData SectionalElement where+ rnf SectionalElement' {..} =+ Prelude.rnf level+ `Prelude.seq` Prelude.rnf orientation+ `Prelude.seq` Prelude.rnf position+ `Prelude.seq` Prelude.rnf text+ `Prelude.seq` Prelude.rnf type'++instance Data.ToJSON SectionalElement where+ toJSON SectionalElement' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("level" Data..=) Prelude.<$> level,+ ("orientation" Data..=) Prelude.<$> orientation,+ ("position" Data..=) Prelude.<$> position,+ ("text" Data..=) Prelude.<$> text,+ Prelude.Just ("type" Data..= type')+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/SortDirection.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.SortDirection+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.SortDirection+ ( SortDirection+ ( ..,+ SortDirection_ASC,+ SortDirection_DESC+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SortDirection = SortDirection'+ { fromSortDirection ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SortDirection_ASC :: SortDirection+pattern SortDirection_ASC = SortDirection' "ASC"++pattern SortDirection_DESC :: SortDirection+pattern SortDirection_DESC = SortDirection' "DESC"++{-# COMPLETE+ SortDirection_ASC,+ SortDirection_DESC,+ SortDirection'+ #-}
+ gen/Amazonka/AmplifyUiBuilder/Types/SortProperty.hs view
@@ -0,0 +1,98 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.SortProperty+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.SortProperty where++import Amazonka.AmplifyUiBuilder.Types.SortDirection+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes how to sort the data that you bind to a component.+--+-- /See:/ 'newSortProperty' smart constructor.+data SortProperty = SortProperty'+ { -- | The direction of the sort, either ascending or descending.+ direction :: SortDirection,+ -- | The field to perform the sort on.+ field :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SortProperty' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'direction', 'sortProperty_direction' - The direction of the sort, either ascending or descending.+--+-- 'field', 'sortProperty_field' - The field to perform the sort on.+newSortProperty ::+ -- | 'direction'+ SortDirection ->+ -- | 'field'+ Prelude.Text ->+ SortProperty+newSortProperty pDirection_ pField_ =+ SortProperty'+ { direction = pDirection_,+ field = pField_+ }++-- | The direction of the sort, either ascending or descending.+sortProperty_direction :: Lens.Lens' SortProperty SortDirection+sortProperty_direction = Lens.lens (\SortProperty' {direction} -> direction) (\s@SortProperty' {} a -> s {direction = a} :: SortProperty)++-- | The field to perform the sort on.+sortProperty_field :: Lens.Lens' SortProperty Prelude.Text+sortProperty_field = Lens.lens (\SortProperty' {field} -> field) (\s@SortProperty' {} a -> s {field = a} :: SortProperty)++instance Data.FromJSON SortProperty where+ parseJSON =+ Data.withObject+ "SortProperty"+ ( \x ->+ SortProperty'+ Prelude.<$> (x Data..: "direction")+ Prelude.<*> (x Data..: "field")+ )++instance Prelude.Hashable SortProperty where+ hashWithSalt _salt SortProperty' {..} =+ _salt+ `Prelude.hashWithSalt` direction+ `Prelude.hashWithSalt` field++instance Prelude.NFData SortProperty where+ rnf SortProperty' {..} =+ Prelude.rnf direction+ `Prelude.seq` Prelude.rnf field++instance Data.ToJSON SortProperty where+ toJSON SortProperty' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("direction" Data..= direction),+ Prelude.Just ("field" Data..= field)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/Theme.hs view
@@ -0,0 +1,185 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.Theme+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.Theme where++import Amazonka.AmplifyUiBuilder.Types.ThemeValues+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A theme is a collection of style settings that apply globally to the+-- components associated with an Amplify application.+--+-- /See:/ 'newTheme' smart constructor.+data Theme = Theme'+ { -- | The time that the theme was modified.+ modifiedAt :: Prelude.Maybe Data.ISO8601,+ -- | Describes the properties that can be overriden to customize a theme.+ overrides :: Prelude.Maybe [ThemeValues],+ -- | One or more key-value pairs to use when tagging the theme.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The unique ID for the Amplify app associated with the theme.+ appId :: Prelude.Text,+ -- | The time that the theme was created.+ createdAt :: Data.ISO8601,+ -- | The name of the backend environment that is a part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The ID for the theme.+ id :: Prelude.Text,+ -- | The name of the theme.+ name :: Prelude.Text,+ -- | A list of key-value pairs that defines the properties of the theme.+ values :: [ThemeValues]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Theme' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'modifiedAt', 'theme_modifiedAt' - The time that the theme was modified.+--+-- 'overrides', 'theme_overrides' - Describes the properties that can be overriden to customize a theme.+--+-- 'tags', 'theme_tags' - One or more key-value pairs to use when tagging the theme.+--+-- 'appId', 'theme_appId' - The unique ID for the Amplify app associated with the theme.+--+-- 'createdAt', 'theme_createdAt' - The time that the theme was created.+--+-- 'environmentName', 'theme_environmentName' - The name of the backend environment that is a part of the Amplify app.+--+-- 'id', 'theme_id' - The ID for the theme.+--+-- 'name', 'theme_name' - The name of the theme.+--+-- 'values', 'theme_values' - A list of key-value pairs that defines the properties of the theme.+newTheme ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'createdAt'+ Prelude.UTCTime ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ Theme+newTheme+ pAppId_+ pCreatedAt_+ pEnvironmentName_+ pId_+ pName_ =+ Theme'+ { modifiedAt = Prelude.Nothing,+ overrides = Prelude.Nothing,+ tags = Prelude.Nothing,+ appId = pAppId_,+ createdAt = Data._Time Lens.# pCreatedAt_,+ environmentName = pEnvironmentName_,+ id = pId_,+ name = pName_,+ values = Prelude.mempty+ }++-- | The time that the theme was modified.+theme_modifiedAt :: Lens.Lens' Theme (Prelude.Maybe Prelude.UTCTime)+theme_modifiedAt = Lens.lens (\Theme' {modifiedAt} -> modifiedAt) (\s@Theme' {} a -> s {modifiedAt = a} :: Theme) Prelude.. Lens.mapping Data._Time++-- | Describes the properties that can be overriden to customize a theme.+theme_overrides :: Lens.Lens' Theme (Prelude.Maybe [ThemeValues])+theme_overrides = Lens.lens (\Theme' {overrides} -> overrides) (\s@Theme' {} a -> s {overrides = a} :: Theme) Prelude.. Lens.mapping Lens.coerced++-- | One or more key-value pairs to use when tagging the theme.+theme_tags :: Lens.Lens' Theme (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+theme_tags = Lens.lens (\Theme' {tags} -> tags) (\s@Theme' {} a -> s {tags = a} :: Theme) Prelude.. Lens.mapping Lens.coerced++-- | The unique ID for the Amplify app associated with the theme.+theme_appId :: Lens.Lens' Theme Prelude.Text+theme_appId = Lens.lens (\Theme' {appId} -> appId) (\s@Theme' {} a -> s {appId = a} :: Theme)++-- | The time that the theme was created.+theme_createdAt :: Lens.Lens' Theme Prelude.UTCTime+theme_createdAt = Lens.lens (\Theme' {createdAt} -> createdAt) (\s@Theme' {} a -> s {createdAt = a} :: Theme) Prelude.. Data._Time++-- | The name of the backend environment that is a part of the Amplify app.+theme_environmentName :: Lens.Lens' Theme Prelude.Text+theme_environmentName = Lens.lens (\Theme' {environmentName} -> environmentName) (\s@Theme' {} a -> s {environmentName = a} :: Theme)++-- | The ID for the theme.+theme_id :: Lens.Lens' Theme Prelude.Text+theme_id = Lens.lens (\Theme' {id} -> id) (\s@Theme' {} a -> s {id = a} :: Theme)++-- | The name of the theme.+theme_name :: Lens.Lens' Theme Prelude.Text+theme_name = Lens.lens (\Theme' {name} -> name) (\s@Theme' {} a -> s {name = a} :: Theme)++-- | A list of key-value pairs that defines the properties of the theme.+theme_values :: Lens.Lens' Theme [ThemeValues]+theme_values = Lens.lens (\Theme' {values} -> values) (\s@Theme' {} a -> s {values = a} :: Theme) Prelude.. Lens.coerced++instance Data.FromJSON Theme where+ parseJSON =+ Data.withObject+ "Theme"+ ( \x ->+ Theme'+ Prelude.<$> (x Data..:? "modifiedAt")+ Prelude.<*> (x Data..:? "overrides" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "appId")+ Prelude.<*> (x Data..: "createdAt")+ Prelude.<*> (x Data..: "environmentName")+ Prelude.<*> (x Data..: "id")+ Prelude.<*> (x Data..: "name")+ Prelude.<*> (x Data..:? "values" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable Theme where+ hashWithSalt _salt Theme' {..} =+ _salt+ `Prelude.hashWithSalt` modifiedAt+ `Prelude.hashWithSalt` overrides+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values++instance Prelude.NFData Theme where+ rnf Theme' {..} =+ Prelude.rnf modifiedAt+ `Prelude.seq` Prelude.rnf overrides+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf values
+ gen/Amazonka/AmplifyUiBuilder/Types/ThemeSummary.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ThemeSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ThemeSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the basic information about a theme.+--+-- /See:/ 'newThemeSummary' smart constructor.+data ThemeSummary = ThemeSummary'+ { -- | The unique ID for the app associated with the theme summary.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The ID of the theme.+ id :: Prelude.Text,+ -- | The name of the theme.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ThemeSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appId', 'themeSummary_appId' - The unique ID for the app associated with the theme summary.+--+-- 'environmentName', 'themeSummary_environmentName' - The name of the backend environment that is part of the Amplify app.+--+-- 'id', 'themeSummary_id' - The ID of the theme.+--+-- 'name', 'themeSummary_name' - The name of the theme.+newThemeSummary ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ ThemeSummary+newThemeSummary pAppId_ pEnvironmentName_ pId_ pName_ =+ ThemeSummary'+ { appId = pAppId_,+ environmentName = pEnvironmentName_,+ id = pId_,+ name = pName_+ }++-- | The unique ID for the app associated with the theme summary.+themeSummary_appId :: Lens.Lens' ThemeSummary Prelude.Text+themeSummary_appId = Lens.lens (\ThemeSummary' {appId} -> appId) (\s@ThemeSummary' {} a -> s {appId = a} :: ThemeSummary)++-- | The name of the backend environment that is part of the Amplify app.+themeSummary_environmentName :: Lens.Lens' ThemeSummary Prelude.Text+themeSummary_environmentName = Lens.lens (\ThemeSummary' {environmentName} -> environmentName) (\s@ThemeSummary' {} a -> s {environmentName = a} :: ThemeSummary)++-- | The ID of the theme.+themeSummary_id :: Lens.Lens' ThemeSummary Prelude.Text+themeSummary_id = Lens.lens (\ThemeSummary' {id} -> id) (\s@ThemeSummary' {} a -> s {id = a} :: ThemeSummary)++-- | The name of the theme.+themeSummary_name :: Lens.Lens' ThemeSummary Prelude.Text+themeSummary_name = Lens.lens (\ThemeSummary' {name} -> name) (\s@ThemeSummary' {} a -> s {name = a} :: ThemeSummary)++instance Data.FromJSON ThemeSummary where+ parseJSON =+ Data.withObject+ "ThemeSummary"+ ( \x ->+ ThemeSummary'+ Prelude.<$> (x Data..: "appId")+ Prelude.<*> (x Data..: "environmentName")+ Prelude.<*> (x Data..: "id")+ Prelude.<*> (x Data..: "name")+ )++instance Prelude.Hashable ThemeSummary where+ hashWithSalt _salt ThemeSummary' {..} =+ _salt+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` name++instance Prelude.NFData ThemeSummary where+ rnf ThemeSummary' {..} =+ Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name
+ gen/Amazonka/AmplifyUiBuilder/Types/ThemeValue.hs view
@@ -0,0 +1,94 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ThemeValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ThemeValue where++import {-# SOURCE #-} Amazonka.AmplifyUiBuilder.Types.ThemeValues+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes the configuration of a theme\'s properties.+--+-- /See:/ 'newThemeValue' smart constructor.+data ThemeValue = ThemeValue'+ { -- | A list of key-value pairs that define the theme\'s properties.+ children :: Prelude.Maybe [ThemeValues],+ -- | The value of a theme property.+ value :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ThemeValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'children', 'themeValue_children' - A list of key-value pairs that define the theme\'s properties.+--+-- 'value', 'themeValue_value' - The value of a theme property.+newThemeValue ::+ ThemeValue+newThemeValue =+ ThemeValue'+ { children = Prelude.Nothing,+ value = Prelude.Nothing+ }++-- | A list of key-value pairs that define the theme\'s properties.+themeValue_children :: Lens.Lens' ThemeValue (Prelude.Maybe [ThemeValues])+themeValue_children = Lens.lens (\ThemeValue' {children} -> children) (\s@ThemeValue' {} a -> s {children = a} :: ThemeValue) Prelude.. Lens.mapping Lens.coerced++-- | The value of a theme property.+themeValue_value :: Lens.Lens' ThemeValue (Prelude.Maybe Prelude.Text)+themeValue_value = Lens.lens (\ThemeValue' {value} -> value) (\s@ThemeValue' {} a -> s {value = a} :: ThemeValue)++instance Data.FromJSON ThemeValue where+ parseJSON =+ Data.withObject+ "ThemeValue"+ ( \x ->+ ThemeValue'+ Prelude.<$> (x Data..:? "children" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "value")+ )++instance Prelude.Hashable ThemeValue where+ hashWithSalt _salt ThemeValue' {..} =+ _salt+ `Prelude.hashWithSalt` children+ `Prelude.hashWithSalt` value++instance Prelude.NFData ThemeValue where+ rnf ThemeValue' {..} =+ Prelude.rnf children+ `Prelude.seq` Prelude.rnf value++instance Data.ToJSON ThemeValue where+ toJSON ThemeValue' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("children" Data..=) Prelude.<$> children,+ ("value" Data..=) Prelude.<$> value+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ThemeValue.hs-boot view
@@ -0,0 +1,33 @@+{-# OPTIONS_GHC -Wno-missing-methods #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ThemeValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ThemeValue where++import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++data ThemeValue++instance Prelude.Eq ThemeValue++instance Prelude.Read ThemeValue++instance Prelude.Show ThemeValue++instance Prelude.Generic ThemeValue++instance Data.ToJSON ThemeValue++instance Data.FromJSON ThemeValue++instance Prelude.NFData ThemeValue++instance Prelude.Hashable ThemeValue
+ gen/Amazonka/AmplifyUiBuilder/Types/ThemeValues.hs view
@@ -0,0 +1,93 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ThemeValues+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ThemeValues where++import {-# SOURCE #-} Amazonka.AmplifyUiBuilder.Types.ThemeValue+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A key-value pair that defines a property of a theme.+--+-- /See:/ 'newThemeValues' smart constructor.+data ThemeValues = ThemeValues'+ { -- | The name of the property.+ key :: Prelude.Maybe Prelude.Text,+ -- | The value of the property.+ value :: Prelude.Maybe ThemeValue+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ThemeValues' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'key', 'themeValues_key' - The name of the property.+--+-- 'value', 'themeValues_value' - The value of the property.+newThemeValues ::+ ThemeValues+newThemeValues =+ ThemeValues'+ { key = Prelude.Nothing,+ value = Prelude.Nothing+ }++-- | The name of the property.+themeValues_key :: Lens.Lens' ThemeValues (Prelude.Maybe Prelude.Text)+themeValues_key = Lens.lens (\ThemeValues' {key} -> key) (\s@ThemeValues' {} a -> s {key = a} :: ThemeValues)++-- | The value of the property.+themeValues_value :: Lens.Lens' ThemeValues (Prelude.Maybe ThemeValue)+themeValues_value = Lens.lens (\ThemeValues' {value} -> value) (\s@ThemeValues' {} a -> s {value = a} :: ThemeValues)++instance Data.FromJSON ThemeValues where+ parseJSON =+ Data.withObject+ "ThemeValues"+ ( \x ->+ ThemeValues'+ Prelude.<$> (x Data..:? "key")+ Prelude.<*> (x Data..:? "value")+ )++instance Prelude.Hashable ThemeValues where+ hashWithSalt _salt ThemeValues' {..} =+ _salt+ `Prelude.hashWithSalt` key+ `Prelude.hashWithSalt` value++instance Prelude.NFData ThemeValues where+ rnf ThemeValues' {..} =+ Prelude.rnf key `Prelude.seq` Prelude.rnf value++instance Data.ToJSON ThemeValues where+ toJSON ThemeValues' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("key" Data..=) Prelude.<$> key,+ ("value" Data..=) Prelude.<$> value+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ThemeValues.hs-boot view
@@ -0,0 +1,33 @@+{-# OPTIONS_GHC -Wno-missing-methods #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ThemeValues+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ThemeValues where++import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++data ThemeValues++instance Prelude.Eq ThemeValues++instance Prelude.Read ThemeValues++instance Prelude.Show ThemeValues++instance Prelude.Generic ThemeValues++instance Data.ToJSON ThemeValues++instance Data.FromJSON ThemeValues++instance Prelude.NFData ThemeValues++instance Prelude.Hashable ThemeValues
+ gen/Amazonka/AmplifyUiBuilder/Types/TokenProviders.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.TokenProviders+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.TokenProviders+ ( TokenProviders+ ( ..,+ TokenProviders_Figma+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype TokenProviders = TokenProviders'+ { fromTokenProviders ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern TokenProviders_Figma :: TokenProviders+pattern TokenProviders_Figma = TokenProviders' "figma"++{-# COMPLETE+ TokenProviders_Figma,+ TokenProviders'+ #-}
+ gen/Amazonka/AmplifyUiBuilder/Types/UpdateComponentData.hs view
@@ -0,0 +1,231 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.UpdateComponentData+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.UpdateComponentData where++import Amazonka.AmplifyUiBuilder.Types.ComponentBindingPropertiesValue+import Amazonka.AmplifyUiBuilder.Types.ComponentChild+import Amazonka.AmplifyUiBuilder.Types.ComponentDataConfiguration+import Amazonka.AmplifyUiBuilder.Types.ComponentEvent+import Amazonka.AmplifyUiBuilder.Types.ComponentProperty+import Amazonka.AmplifyUiBuilder.Types.ComponentVariant+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Updates and saves all of the information about a component, based on+-- component ID.+--+-- /See:/ 'newUpdateComponentData' smart constructor.+data UpdateComponentData = UpdateComponentData'+ { -- | The data binding information for the component\'s properties.+ bindingProperties :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentBindingPropertiesValue),+ -- | The components that are instances of the main component.+ children :: Prelude.Maybe [ComponentChild],+ -- | The configuration for binding a component\'s properties to a data model.+ -- Use this for a collection component.+ collectionProperties :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentDataConfiguration),+ -- | The type of the component. This can be an Amplify custom UI component or+ -- another custom component.+ componentType :: Prelude.Maybe Prelude.Text,+ -- | 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 :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentEvent),+ -- | The unique ID of the component to update.+ id :: Prelude.Maybe Prelude.Text,+ -- | The name of the component to update.+ name :: Prelude.Maybe Prelude.Text,+ -- | Describes the properties that can be overriden to customize the+ -- component.+ overrides :: Prelude.Maybe (Prelude.HashMap Prelude.Text (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Describes the component\'s properties.+ properties :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentProperty),+ -- | The schema version of the component when it was imported.+ schemaVersion :: Prelude.Maybe Prelude.Text,+ -- | The unique ID of the component in its original source system, such as+ -- Figma.+ sourceId :: Prelude.Maybe Prelude.Text,+ -- | A list of the unique variants of the main component being updated.+ variants :: Prelude.Maybe [ComponentVariant]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateComponentData' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'bindingProperties', 'updateComponentData_bindingProperties' - The data binding information for the component\'s properties.+--+-- 'children', 'updateComponentData_children' - The components that are instances of the main component.+--+-- 'collectionProperties', 'updateComponentData_collectionProperties' - The configuration for binding a component\'s properties to a data model.+-- Use this for a collection component.+--+-- 'componentType', 'updateComponentData_componentType' - The type of the component. This can be an Amplify custom UI component or+-- another custom component.+--+-- 'events', 'updateComponentData_events' - The event configuration for the component. Use for the workflow feature+-- in Amplify Studio that allows you to bind events and actions to+-- components.+--+-- 'id', 'updateComponentData_id' - The unique ID of the component to update.+--+-- 'name', 'updateComponentData_name' - The name of the component to update.+--+-- 'overrides', 'updateComponentData_overrides' - Describes the properties that can be overriden to customize the+-- component.+--+-- 'properties', 'updateComponentData_properties' - Describes the component\'s properties.+--+-- 'schemaVersion', 'updateComponentData_schemaVersion' - The schema version of the component when it was imported.+--+-- 'sourceId', 'updateComponentData_sourceId' - The unique ID of the component in its original source system, such as+-- Figma.+--+-- 'variants', 'updateComponentData_variants' - A list of the unique variants of the main component being updated.+newUpdateComponentData ::+ UpdateComponentData+newUpdateComponentData =+ UpdateComponentData'+ { bindingProperties =+ Prelude.Nothing,+ children = Prelude.Nothing,+ collectionProperties = Prelude.Nothing,+ componentType = Prelude.Nothing,+ events = Prelude.Nothing,+ id = Prelude.Nothing,+ name = Prelude.Nothing,+ overrides = Prelude.Nothing,+ properties = Prelude.Nothing,+ schemaVersion = Prelude.Nothing,+ sourceId = Prelude.Nothing,+ variants = Prelude.Nothing+ }++-- | The data binding information for the component\'s properties.+updateComponentData_bindingProperties :: Lens.Lens' UpdateComponentData (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentBindingPropertiesValue))+updateComponentData_bindingProperties = Lens.lens (\UpdateComponentData' {bindingProperties} -> bindingProperties) (\s@UpdateComponentData' {} a -> s {bindingProperties = a} :: UpdateComponentData) Prelude.. Lens.mapping Lens.coerced++-- | The components that are instances of the main component.+updateComponentData_children :: Lens.Lens' UpdateComponentData (Prelude.Maybe [ComponentChild])+updateComponentData_children = Lens.lens (\UpdateComponentData' {children} -> children) (\s@UpdateComponentData' {} a -> s {children = a} :: UpdateComponentData) Prelude.. Lens.mapping Lens.coerced++-- | The configuration for binding a component\'s properties to a data model.+-- Use this for a collection component.+updateComponentData_collectionProperties :: Lens.Lens' UpdateComponentData (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentDataConfiguration))+updateComponentData_collectionProperties = Lens.lens (\UpdateComponentData' {collectionProperties} -> collectionProperties) (\s@UpdateComponentData' {} a -> s {collectionProperties = a} :: UpdateComponentData) Prelude.. Lens.mapping Lens.coerced++-- | The type of the component. This can be an Amplify custom UI component or+-- another custom component.+updateComponentData_componentType :: Lens.Lens' UpdateComponentData (Prelude.Maybe Prelude.Text)+updateComponentData_componentType = Lens.lens (\UpdateComponentData' {componentType} -> componentType) (\s@UpdateComponentData' {} a -> s {componentType = a} :: UpdateComponentData)++-- | The event configuration for the component. Use for the workflow feature+-- in Amplify Studio that allows you to bind events and actions to+-- components.+updateComponentData_events :: Lens.Lens' UpdateComponentData (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentEvent))+updateComponentData_events = Lens.lens (\UpdateComponentData' {events} -> events) (\s@UpdateComponentData' {} a -> s {events = a} :: UpdateComponentData) Prelude.. Lens.mapping Lens.coerced++-- | The unique ID of the component to update.+updateComponentData_id :: Lens.Lens' UpdateComponentData (Prelude.Maybe Prelude.Text)+updateComponentData_id = Lens.lens (\UpdateComponentData' {id} -> id) (\s@UpdateComponentData' {} a -> s {id = a} :: UpdateComponentData)++-- | The name of the component to update.+updateComponentData_name :: Lens.Lens' UpdateComponentData (Prelude.Maybe Prelude.Text)+updateComponentData_name = Lens.lens (\UpdateComponentData' {name} -> name) (\s@UpdateComponentData' {} a -> s {name = a} :: UpdateComponentData)++-- | Describes the properties that can be overriden to customize the+-- component.+updateComponentData_overrides :: Lens.Lens' UpdateComponentData (Prelude.Maybe (Prelude.HashMap Prelude.Text (Prelude.HashMap Prelude.Text Prelude.Text)))+updateComponentData_overrides = Lens.lens (\UpdateComponentData' {overrides} -> overrides) (\s@UpdateComponentData' {} a -> s {overrides = a} :: UpdateComponentData) Prelude.. Lens.mapping Lens.coerced++-- | Describes the component\'s properties.+updateComponentData_properties :: Lens.Lens' UpdateComponentData (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentProperty))+updateComponentData_properties = Lens.lens (\UpdateComponentData' {properties} -> properties) (\s@UpdateComponentData' {} a -> s {properties = a} :: UpdateComponentData) Prelude.. Lens.mapping Lens.coerced++-- | The schema version of the component when it was imported.+updateComponentData_schemaVersion :: Lens.Lens' UpdateComponentData (Prelude.Maybe Prelude.Text)+updateComponentData_schemaVersion = Lens.lens (\UpdateComponentData' {schemaVersion} -> schemaVersion) (\s@UpdateComponentData' {} a -> s {schemaVersion = a} :: UpdateComponentData)++-- | The unique ID of the component in its original source system, such as+-- Figma.+updateComponentData_sourceId :: Lens.Lens' UpdateComponentData (Prelude.Maybe Prelude.Text)+updateComponentData_sourceId = Lens.lens (\UpdateComponentData' {sourceId} -> sourceId) (\s@UpdateComponentData' {} a -> s {sourceId = a} :: UpdateComponentData)++-- | A list of the unique variants of the main component being updated.+updateComponentData_variants :: Lens.Lens' UpdateComponentData (Prelude.Maybe [ComponentVariant])+updateComponentData_variants = Lens.lens (\UpdateComponentData' {variants} -> variants) (\s@UpdateComponentData' {} a -> s {variants = a} :: UpdateComponentData) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable UpdateComponentData where+ hashWithSalt _salt UpdateComponentData' {..} =+ _salt+ `Prelude.hashWithSalt` bindingProperties+ `Prelude.hashWithSalt` children+ `Prelude.hashWithSalt` collectionProperties+ `Prelude.hashWithSalt` componentType+ `Prelude.hashWithSalt` events+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` overrides+ `Prelude.hashWithSalt` properties+ `Prelude.hashWithSalt` schemaVersion+ `Prelude.hashWithSalt` sourceId+ `Prelude.hashWithSalt` variants++instance Prelude.NFData UpdateComponentData where+ rnf UpdateComponentData' {..} =+ Prelude.rnf bindingProperties+ `Prelude.seq` Prelude.rnf children+ `Prelude.seq` Prelude.rnf collectionProperties+ `Prelude.seq` Prelude.rnf componentType+ `Prelude.seq` Prelude.rnf events+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf overrides+ `Prelude.seq` Prelude.rnf properties+ `Prelude.seq` Prelude.rnf schemaVersion+ `Prelude.seq` Prelude.rnf sourceId+ `Prelude.seq` Prelude.rnf variants++instance Data.ToJSON UpdateComponentData where+ toJSON UpdateComponentData' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("bindingProperties" Data..=)+ Prelude.<$> bindingProperties,+ ("children" Data..=) Prelude.<$> children,+ ("collectionProperties" Data..=)+ Prelude.<$> collectionProperties,+ ("componentType" Data..=) Prelude.<$> componentType,+ ("events" Data..=) Prelude.<$> events,+ ("id" Data..=) Prelude.<$> id,+ ("name" Data..=) Prelude.<$> name,+ ("overrides" Data..=) Prelude.<$> overrides,+ ("properties" Data..=) Prelude.<$> properties,+ ("schemaVersion" Data..=) Prelude.<$> schemaVersion,+ ("sourceId" Data..=) Prelude.<$> sourceId,+ ("variants" Data..=) Prelude.<$> variants+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/UpdateFormData.hs view
@@ -0,0 +1,169 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.UpdateFormData+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.UpdateFormData where++import Amazonka.AmplifyUiBuilder.Types.FieldConfig+import Amazonka.AmplifyUiBuilder.Types.FormActionType+import Amazonka.AmplifyUiBuilder.Types.FormCTA+import Amazonka.AmplifyUiBuilder.Types.FormDataTypeConfig+import Amazonka.AmplifyUiBuilder.Types.FormStyle+import Amazonka.AmplifyUiBuilder.Types.SectionalElement+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Updates and saves all of the information about a form, based on form ID.+--+-- /See:/ 'newUpdateFormData' smart constructor.+data UpdateFormData = UpdateFormData'+ { -- | The @FormCTA@ object that stores the call to action configuration for+ -- the form.+ cta :: Prelude.Maybe FormCTA,+ -- | The type of data source to use to create the form.+ dataType :: Prelude.Maybe FormDataTypeConfig,+ -- | The configuration information for the form\'s fields.+ fields :: Prelude.Maybe (Prelude.HashMap Prelude.Text FieldConfig),+ -- | Specifies whether to perform a create or update action on the form.+ formActionType :: Prelude.Maybe FormActionType,+ -- | The name of the form.+ name :: Prelude.Maybe Prelude.Text,+ -- | The schema version of the form.+ schemaVersion :: Prelude.Maybe Prelude.Text,+ -- | The configuration information for the visual helper elements for the+ -- form. These elements are not associated with any data.+ sectionalElements :: Prelude.Maybe (Prelude.HashMap Prelude.Text SectionalElement),+ -- | The configuration for the form\'s style.+ style :: Prelude.Maybe FormStyle+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateFormData' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cta', 'updateFormData_cta' - The @FormCTA@ object that stores the call to action configuration for+-- the form.+--+-- 'dataType', 'updateFormData_dataType' - The type of data source to use to create the form.+--+-- 'fields', 'updateFormData_fields' - The configuration information for the form\'s fields.+--+-- 'formActionType', 'updateFormData_formActionType' - Specifies whether to perform a create or update action on the form.+--+-- 'name', 'updateFormData_name' - The name of the form.+--+-- 'schemaVersion', 'updateFormData_schemaVersion' - The schema version of the form.+--+-- 'sectionalElements', 'updateFormData_sectionalElements' - The configuration information for the visual helper elements for the+-- form. These elements are not associated with any data.+--+-- 'style', 'updateFormData_style' - The configuration for the form\'s style.+newUpdateFormData ::+ UpdateFormData+newUpdateFormData =+ UpdateFormData'+ { cta = Prelude.Nothing,+ dataType = Prelude.Nothing,+ fields = Prelude.Nothing,+ formActionType = Prelude.Nothing,+ name = Prelude.Nothing,+ schemaVersion = Prelude.Nothing,+ sectionalElements = Prelude.Nothing,+ style = Prelude.Nothing+ }++-- | The @FormCTA@ object that stores the call to action configuration for+-- the form.+updateFormData_cta :: Lens.Lens' UpdateFormData (Prelude.Maybe FormCTA)+updateFormData_cta = Lens.lens (\UpdateFormData' {cta} -> cta) (\s@UpdateFormData' {} a -> s {cta = a} :: UpdateFormData)++-- | The type of data source to use to create the form.+updateFormData_dataType :: Lens.Lens' UpdateFormData (Prelude.Maybe FormDataTypeConfig)+updateFormData_dataType = Lens.lens (\UpdateFormData' {dataType} -> dataType) (\s@UpdateFormData' {} a -> s {dataType = a} :: UpdateFormData)++-- | The configuration information for the form\'s fields.+updateFormData_fields :: Lens.Lens' UpdateFormData (Prelude.Maybe (Prelude.HashMap Prelude.Text FieldConfig))+updateFormData_fields = Lens.lens (\UpdateFormData' {fields} -> fields) (\s@UpdateFormData' {} a -> s {fields = a} :: UpdateFormData) Prelude.. Lens.mapping Lens.coerced++-- | Specifies whether to perform a create or update action on the form.+updateFormData_formActionType :: Lens.Lens' UpdateFormData (Prelude.Maybe FormActionType)+updateFormData_formActionType = Lens.lens (\UpdateFormData' {formActionType} -> formActionType) (\s@UpdateFormData' {} a -> s {formActionType = a} :: UpdateFormData)++-- | The name of the form.+updateFormData_name :: Lens.Lens' UpdateFormData (Prelude.Maybe Prelude.Text)+updateFormData_name = Lens.lens (\UpdateFormData' {name} -> name) (\s@UpdateFormData' {} a -> s {name = a} :: UpdateFormData)++-- | The schema version of the form.+updateFormData_schemaVersion :: Lens.Lens' UpdateFormData (Prelude.Maybe Prelude.Text)+updateFormData_schemaVersion = Lens.lens (\UpdateFormData' {schemaVersion} -> schemaVersion) (\s@UpdateFormData' {} a -> s {schemaVersion = a} :: UpdateFormData)++-- | The configuration information for the visual helper elements for the+-- form. These elements are not associated with any data.+updateFormData_sectionalElements :: Lens.Lens' UpdateFormData (Prelude.Maybe (Prelude.HashMap Prelude.Text SectionalElement))+updateFormData_sectionalElements = Lens.lens (\UpdateFormData' {sectionalElements} -> sectionalElements) (\s@UpdateFormData' {} a -> s {sectionalElements = a} :: UpdateFormData) Prelude.. Lens.mapping Lens.coerced++-- | The configuration for the form\'s style.+updateFormData_style :: Lens.Lens' UpdateFormData (Prelude.Maybe FormStyle)+updateFormData_style = Lens.lens (\UpdateFormData' {style} -> style) (\s@UpdateFormData' {} a -> s {style = a} :: UpdateFormData)++instance Prelude.Hashable UpdateFormData where+ hashWithSalt _salt UpdateFormData' {..} =+ _salt+ `Prelude.hashWithSalt` cta+ `Prelude.hashWithSalt` dataType+ `Prelude.hashWithSalt` fields+ `Prelude.hashWithSalt` formActionType+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` schemaVersion+ `Prelude.hashWithSalt` sectionalElements+ `Prelude.hashWithSalt` style++instance Prelude.NFData UpdateFormData where+ rnf UpdateFormData' {..} =+ Prelude.rnf cta+ `Prelude.seq` Prelude.rnf dataType+ `Prelude.seq` Prelude.rnf fields+ `Prelude.seq` Prelude.rnf formActionType+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf schemaVersion+ `Prelude.seq` Prelude.rnf sectionalElements+ `Prelude.seq` Prelude.rnf style++instance Data.ToJSON UpdateFormData where+ toJSON UpdateFormData' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("cta" Data..=) Prelude.<$> cta,+ ("dataType" Data..=) Prelude.<$> dataType,+ ("fields" Data..=) Prelude.<$> fields,+ ("formActionType" Data..=)+ Prelude.<$> formActionType,+ ("name" Data..=) Prelude.<$> name,+ ("schemaVersion" Data..=) Prelude.<$> schemaVersion,+ ("sectionalElements" Data..=)+ Prelude.<$> sectionalElements,+ ("style" Data..=) Prelude.<$> style+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/UpdateThemeData.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.UpdateThemeData+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.UpdateThemeData where++import Amazonka.AmplifyUiBuilder.Types.ThemeValues+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Saves the data binding information for a theme.+--+-- /See:/ 'newUpdateThemeData' smart constructor.+data UpdateThemeData = UpdateThemeData'+ { -- | The unique ID of the theme to update.+ id :: Prelude.Maybe Prelude.Text,+ -- | The name of the theme to update.+ name :: Prelude.Maybe Prelude.Text,+ -- | Describes the properties that can be overriden to customize the theme.+ overrides :: Prelude.Maybe [ThemeValues],+ -- | A list of key-value pairs that define the theme\'s properties.+ values :: [ThemeValues]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateThemeData' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'updateThemeData_id' - The unique ID of the theme to update.+--+-- 'name', 'updateThemeData_name' - The name of the theme to update.+--+-- 'overrides', 'updateThemeData_overrides' - Describes the properties that can be overriden to customize the theme.+--+-- 'values', 'updateThemeData_values' - A list of key-value pairs that define the theme\'s properties.+newUpdateThemeData ::+ UpdateThemeData+newUpdateThemeData =+ UpdateThemeData'+ { id = Prelude.Nothing,+ name = Prelude.Nothing,+ overrides = Prelude.Nothing,+ values = Prelude.mempty+ }++-- | The unique ID of the theme to update.+updateThemeData_id :: Lens.Lens' UpdateThemeData (Prelude.Maybe Prelude.Text)+updateThemeData_id = Lens.lens (\UpdateThemeData' {id} -> id) (\s@UpdateThemeData' {} a -> s {id = a} :: UpdateThemeData)++-- | The name of the theme to update.+updateThemeData_name :: Lens.Lens' UpdateThemeData (Prelude.Maybe Prelude.Text)+updateThemeData_name = Lens.lens (\UpdateThemeData' {name} -> name) (\s@UpdateThemeData' {} a -> s {name = a} :: UpdateThemeData)++-- | Describes the properties that can be overriden to customize the theme.+updateThemeData_overrides :: Lens.Lens' UpdateThemeData (Prelude.Maybe [ThemeValues])+updateThemeData_overrides = Lens.lens (\UpdateThemeData' {overrides} -> overrides) (\s@UpdateThemeData' {} a -> s {overrides = a} :: UpdateThemeData) Prelude.. Lens.mapping Lens.coerced++-- | A list of key-value pairs that define the theme\'s properties.+updateThemeData_values :: Lens.Lens' UpdateThemeData [ThemeValues]+updateThemeData_values = Lens.lens (\UpdateThemeData' {values} -> values) (\s@UpdateThemeData' {} a -> s {values = a} :: UpdateThemeData) Prelude.. Lens.coerced++instance Prelude.Hashable UpdateThemeData where+ hashWithSalt _salt UpdateThemeData' {..} =+ _salt+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` overrides+ `Prelude.hashWithSalt` values++instance Prelude.NFData UpdateThemeData where+ rnf UpdateThemeData' {..} =+ Prelude.rnf id+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf overrides+ `Prelude.seq` Prelude.rnf values++instance Data.ToJSON UpdateThemeData where+ toJSON UpdateThemeData' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("id" Data..=) Prelude.<$> id,+ ("name" Data..=) Prelude.<$> name,+ ("overrides" Data..=) Prelude.<$> overrides,+ Prelude.Just ("values" Data..= values)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ValueMapping.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ValueMapping+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ValueMapping where++import Amazonka.AmplifyUiBuilder.Types.FormInputValueProperty+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Associates a complex object with a display value. Use @ValueMapping@ to+-- store how to represent complex objects when they are displayed.+--+-- /See:/ 'newValueMapping' smart constructor.+data ValueMapping = ValueMapping'+ { -- | The value to display for the complex object.+ displayValue :: Prelude.Maybe FormInputValueProperty,+ -- | The complex object.+ value :: FormInputValueProperty+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ValueMapping' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'displayValue', 'valueMapping_displayValue' - The value to display for the complex object.+--+-- 'value', 'valueMapping_value' - The complex object.+newValueMapping ::+ -- | 'value'+ FormInputValueProperty ->+ ValueMapping+newValueMapping pValue_ =+ ValueMapping'+ { displayValue = Prelude.Nothing,+ value = pValue_+ }++-- | The value to display for the complex object.+valueMapping_displayValue :: Lens.Lens' ValueMapping (Prelude.Maybe FormInputValueProperty)+valueMapping_displayValue = Lens.lens (\ValueMapping' {displayValue} -> displayValue) (\s@ValueMapping' {} a -> s {displayValue = a} :: ValueMapping)++-- | The complex object.+valueMapping_value :: Lens.Lens' ValueMapping FormInputValueProperty+valueMapping_value = Lens.lens (\ValueMapping' {value} -> value) (\s@ValueMapping' {} a -> s {value = a} :: ValueMapping)++instance Data.FromJSON ValueMapping where+ parseJSON =+ Data.withObject+ "ValueMapping"+ ( \x ->+ ValueMapping'+ Prelude.<$> (x Data..:? "displayValue")+ Prelude.<*> (x Data..: "value")+ )++instance Prelude.Hashable ValueMapping where+ hashWithSalt _salt ValueMapping' {..} =+ _salt+ `Prelude.hashWithSalt` displayValue+ `Prelude.hashWithSalt` value++instance Prelude.NFData ValueMapping where+ rnf ValueMapping' {..} =+ Prelude.rnf displayValue+ `Prelude.seq` Prelude.rnf value++instance Data.ToJSON ValueMapping where+ toJSON ValueMapping' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("displayValue" Data..=) Prelude.<$> displayValue,+ Prelude.Just ("value" Data..= value)+ ]+ )
+ gen/Amazonka/AmplifyUiBuilder/Types/ValueMappings.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Types.ValueMappings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Types.ValueMappings where++import Amazonka.AmplifyUiBuilder.Types.ValueMapping+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Represents the data binding configuration for a value map.+--+-- /See:/ 'newValueMappings' smart constructor.+data ValueMappings = ValueMappings'+ { -- | The value and display value pairs.+ values :: [ValueMapping]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ValueMappings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'values', 'valueMappings_values' - The value and display value pairs.+newValueMappings ::+ ValueMappings+newValueMappings =+ ValueMappings' {values = Prelude.mempty}++-- | The value and display value pairs.+valueMappings_values :: Lens.Lens' ValueMappings [ValueMapping]+valueMappings_values = Lens.lens (\ValueMappings' {values} -> values) (\s@ValueMappings' {} a -> s {values = a} :: ValueMappings) Prelude.. Lens.coerced++instance Data.FromJSON ValueMappings where+ parseJSON =+ Data.withObject+ "ValueMappings"+ ( \x ->+ ValueMappings'+ Prelude.<$> (x Data..:? "values" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable ValueMappings where+ hashWithSalt _salt ValueMappings' {..} =+ _salt `Prelude.hashWithSalt` values++instance Prelude.NFData ValueMappings where+ rnf ValueMappings' {..} = Prelude.rnf values++instance Data.ToJSON ValueMappings where+ toJSON ValueMappings' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("values" Data..= values)]+ )
+ gen/Amazonka/AmplifyUiBuilder/UpdateComponent.hs view
@@ -0,0 +1,231 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.UpdateComponent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates an existing component.+module Amazonka.AmplifyUiBuilder.UpdateComponent+ ( -- * Creating a Request+ UpdateComponent (..),+ newUpdateComponent,++ -- * Request Lenses+ updateComponent_clientToken,+ updateComponent_appId,+ updateComponent_environmentName,+ updateComponent_id,+ updateComponent_updatedComponent,++ -- * Destructuring the Response+ UpdateComponentResponse (..),+ newUpdateComponentResponse,++ -- * Response Lenses+ updateComponentResponse_entity,+ updateComponentResponse_httpStatus,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateComponent' smart constructor.+data UpdateComponent = UpdateComponent'+ { -- | The unique client token.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID for the Amplify app.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The unique ID for the component.+ id :: Prelude.Text,+ -- | The configuration of the updated component.+ updatedComponent :: UpdateComponentData+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateComponent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'updateComponent_clientToken' - The unique client token.+--+-- 'appId', 'updateComponent_appId' - The unique ID for the Amplify app.+--+-- 'environmentName', 'updateComponent_environmentName' - The name of the backend environment that is part of the Amplify app.+--+-- 'id', 'updateComponent_id' - The unique ID for the component.+--+-- 'updatedComponent', 'updateComponent_updatedComponent' - The configuration of the updated component.+newUpdateComponent ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ -- | 'updatedComponent'+ UpdateComponentData ->+ UpdateComponent+newUpdateComponent+ pAppId_+ pEnvironmentName_+ pId_+ pUpdatedComponent_ =+ UpdateComponent'+ { clientToken = Prelude.Nothing,+ appId = pAppId_,+ environmentName = pEnvironmentName_,+ id = pId_,+ updatedComponent = pUpdatedComponent_+ }++-- | The unique client token.+updateComponent_clientToken :: Lens.Lens' UpdateComponent (Prelude.Maybe Prelude.Text)+updateComponent_clientToken = Lens.lens (\UpdateComponent' {clientToken} -> clientToken) (\s@UpdateComponent' {} a -> s {clientToken = a} :: UpdateComponent)++-- | The unique ID for the Amplify app.+updateComponent_appId :: Lens.Lens' UpdateComponent Prelude.Text+updateComponent_appId = Lens.lens (\UpdateComponent' {appId} -> appId) (\s@UpdateComponent' {} a -> s {appId = a} :: UpdateComponent)++-- | The name of the backend environment that is part of the Amplify app.+updateComponent_environmentName :: Lens.Lens' UpdateComponent Prelude.Text+updateComponent_environmentName = Lens.lens (\UpdateComponent' {environmentName} -> environmentName) (\s@UpdateComponent' {} a -> s {environmentName = a} :: UpdateComponent)++-- | The unique ID for the component.+updateComponent_id :: Lens.Lens' UpdateComponent Prelude.Text+updateComponent_id = Lens.lens (\UpdateComponent' {id} -> id) (\s@UpdateComponent' {} a -> s {id = a} :: UpdateComponent)++-- | The configuration of the updated component.+updateComponent_updatedComponent :: Lens.Lens' UpdateComponent UpdateComponentData+updateComponent_updatedComponent = Lens.lens (\UpdateComponent' {updatedComponent} -> updatedComponent) (\s@UpdateComponent' {} a -> s {updatedComponent = a} :: UpdateComponent)++instance Core.AWSRequest UpdateComponent where+ type+ AWSResponse UpdateComponent =+ UpdateComponentResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateComponentResponse'+ Prelude.<$> (Data.eitherParseJSON x)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateComponent where+ hashWithSalt _salt UpdateComponent' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` updatedComponent++instance Prelude.NFData UpdateComponent where+ rnf UpdateComponent' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf updatedComponent++instance Data.ToHeaders UpdateComponent where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateComponent where+ toJSON UpdateComponent' {..} =+ Data.toJSON updatedComponent++instance Data.ToPath UpdateComponent where+ toPath UpdateComponent' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/components/",+ Data.toBS id+ ]++instance Data.ToQuery UpdateComponent where+ toQuery UpdateComponent' {..} =+ Prelude.mconcat ["clientToken" Data.=: clientToken]++-- | /See:/ 'newUpdateComponentResponse' smart constructor.+data UpdateComponentResponse = UpdateComponentResponse'+ { -- | Describes the configuration of the updated component.+ entity :: Prelude.Maybe Component,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateComponentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'entity', 'updateComponentResponse_entity' - Describes the configuration of the updated component.+--+-- 'httpStatus', 'updateComponentResponse_httpStatus' - The response's http status code.+newUpdateComponentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateComponentResponse+newUpdateComponentResponse pHttpStatus_ =+ UpdateComponentResponse'+ { entity = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Describes the configuration of the updated component.+updateComponentResponse_entity :: Lens.Lens' UpdateComponentResponse (Prelude.Maybe Component)+updateComponentResponse_entity = Lens.lens (\UpdateComponentResponse' {entity} -> entity) (\s@UpdateComponentResponse' {} a -> s {entity = a} :: UpdateComponentResponse)++-- | The response's http status code.+updateComponentResponse_httpStatus :: Lens.Lens' UpdateComponentResponse Prelude.Int+updateComponentResponse_httpStatus = Lens.lens (\UpdateComponentResponse' {httpStatus} -> httpStatus) (\s@UpdateComponentResponse' {} a -> s {httpStatus = a} :: UpdateComponentResponse)++instance Prelude.NFData UpdateComponentResponse where+ rnf UpdateComponentResponse' {..} =+ Prelude.rnf entity+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/AmplifyUiBuilder/UpdateForm.hs view
@@ -0,0 +1,228 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.UpdateForm+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates an existing form.+module Amazonka.AmplifyUiBuilder.UpdateForm+ ( -- * Creating a Request+ UpdateForm (..),+ newUpdateForm,++ -- * Request Lenses+ updateForm_clientToken,+ updateForm_appId,+ updateForm_environmentName,+ updateForm_id,+ updateForm_updatedForm,++ -- * Destructuring the Response+ UpdateFormResponse (..),+ newUpdateFormResponse,++ -- * Response Lenses+ updateFormResponse_entity,+ updateFormResponse_httpStatus,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateForm' smart constructor.+data UpdateForm = UpdateForm'+ { -- | The unique client token.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID for the Amplify app.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The unique ID for the form.+ id :: Prelude.Text,+ -- | The request accepts the following data in JSON format.+ updatedForm :: UpdateFormData+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateForm' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'updateForm_clientToken' - The unique client token.+--+-- 'appId', 'updateForm_appId' - The unique ID for the Amplify app.+--+-- 'environmentName', 'updateForm_environmentName' - The name of the backend environment that is part of the Amplify app.+--+-- 'id', 'updateForm_id' - The unique ID for the form.+--+-- 'updatedForm', 'updateForm_updatedForm' - The request accepts the following data in JSON format.+newUpdateForm ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ -- | 'updatedForm'+ UpdateFormData ->+ UpdateForm+newUpdateForm+ pAppId_+ pEnvironmentName_+ pId_+ pUpdatedForm_ =+ UpdateForm'+ { clientToken = Prelude.Nothing,+ appId = pAppId_,+ environmentName = pEnvironmentName_,+ id = pId_,+ updatedForm = pUpdatedForm_+ }++-- | The unique client token.+updateForm_clientToken :: Lens.Lens' UpdateForm (Prelude.Maybe Prelude.Text)+updateForm_clientToken = Lens.lens (\UpdateForm' {clientToken} -> clientToken) (\s@UpdateForm' {} a -> s {clientToken = a} :: UpdateForm)++-- | The unique ID for the Amplify app.+updateForm_appId :: Lens.Lens' UpdateForm Prelude.Text+updateForm_appId = Lens.lens (\UpdateForm' {appId} -> appId) (\s@UpdateForm' {} a -> s {appId = a} :: UpdateForm)++-- | The name of the backend environment that is part of the Amplify app.+updateForm_environmentName :: Lens.Lens' UpdateForm Prelude.Text+updateForm_environmentName = Lens.lens (\UpdateForm' {environmentName} -> environmentName) (\s@UpdateForm' {} a -> s {environmentName = a} :: UpdateForm)++-- | The unique ID for the form.+updateForm_id :: Lens.Lens' UpdateForm Prelude.Text+updateForm_id = Lens.lens (\UpdateForm' {id} -> id) (\s@UpdateForm' {} a -> s {id = a} :: UpdateForm)++-- | The request accepts the following data in JSON format.+updateForm_updatedForm :: Lens.Lens' UpdateForm UpdateFormData+updateForm_updatedForm = Lens.lens (\UpdateForm' {updatedForm} -> updatedForm) (\s@UpdateForm' {} a -> s {updatedForm = a} :: UpdateForm)++instance Core.AWSRequest UpdateForm where+ type AWSResponse UpdateForm = UpdateFormResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateFormResponse'+ Prelude.<$> (Data.eitherParseJSON x)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateForm where+ hashWithSalt _salt UpdateForm' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` updatedForm++instance Prelude.NFData UpdateForm where+ rnf UpdateForm' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf updatedForm++instance Data.ToHeaders UpdateForm where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateForm where+ toJSON UpdateForm' {..} = Data.toJSON updatedForm++instance Data.ToPath UpdateForm where+ toPath UpdateForm' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/forms/",+ Data.toBS id+ ]++instance Data.ToQuery UpdateForm where+ toQuery UpdateForm' {..} =+ Prelude.mconcat ["clientToken" Data.=: clientToken]++-- | /See:/ 'newUpdateFormResponse' smart constructor.+data UpdateFormResponse = UpdateFormResponse'+ { -- | Describes the configuration of the updated form.+ entity :: Prelude.Maybe Form,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateFormResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'entity', 'updateFormResponse_entity' - Describes the configuration of the updated form.+--+-- 'httpStatus', 'updateFormResponse_httpStatus' - The response's http status code.+newUpdateFormResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateFormResponse+newUpdateFormResponse pHttpStatus_ =+ UpdateFormResponse'+ { entity = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Describes the configuration of the updated form.+updateFormResponse_entity :: Lens.Lens' UpdateFormResponse (Prelude.Maybe Form)+updateFormResponse_entity = Lens.lens (\UpdateFormResponse' {entity} -> entity) (\s@UpdateFormResponse' {} a -> s {entity = a} :: UpdateFormResponse)++-- | The response's http status code.+updateFormResponse_httpStatus :: Lens.Lens' UpdateFormResponse Prelude.Int+updateFormResponse_httpStatus = Lens.lens (\UpdateFormResponse' {httpStatus} -> httpStatus) (\s@UpdateFormResponse' {} a -> s {httpStatus = a} :: UpdateFormResponse)++instance Prelude.NFData UpdateFormResponse where+ rnf UpdateFormResponse' {..} =+ Prelude.rnf entity+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/AmplifyUiBuilder/UpdateTheme.hs view
@@ -0,0 +1,228 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.UpdateTheme+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates an existing theme.+module Amazonka.AmplifyUiBuilder.UpdateTheme+ ( -- * Creating a Request+ UpdateTheme (..),+ newUpdateTheme,++ -- * Request Lenses+ updateTheme_clientToken,+ updateTheme_appId,+ updateTheme_environmentName,+ updateTheme_id,+ updateTheme_updatedTheme,++ -- * Destructuring the Response+ UpdateThemeResponse (..),+ newUpdateThemeResponse,++ -- * Response Lenses+ updateThemeResponse_entity,+ updateThemeResponse_httpStatus,+ )+where++import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateTheme' smart constructor.+data UpdateTheme = UpdateTheme'+ { -- | The unique client token.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | The unique ID for the Amplify app.+ appId :: Prelude.Text,+ -- | The name of the backend environment that is part of the Amplify app.+ environmentName :: Prelude.Text,+ -- | The unique ID for the theme.+ id :: Prelude.Text,+ -- | The configuration of the updated theme.+ updatedTheme :: UpdateThemeData+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateTheme' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'updateTheme_clientToken' - The unique client token.+--+-- 'appId', 'updateTheme_appId' - The unique ID for the Amplify app.+--+-- 'environmentName', 'updateTheme_environmentName' - The name of the backend environment that is part of the Amplify app.+--+-- 'id', 'updateTheme_id' - The unique ID for the theme.+--+-- 'updatedTheme', 'updateTheme_updatedTheme' - The configuration of the updated theme.+newUpdateTheme ::+ -- | 'appId'+ Prelude.Text ->+ -- | 'environmentName'+ Prelude.Text ->+ -- | 'id'+ Prelude.Text ->+ -- | 'updatedTheme'+ UpdateThemeData ->+ UpdateTheme+newUpdateTheme+ pAppId_+ pEnvironmentName_+ pId_+ pUpdatedTheme_ =+ UpdateTheme'+ { clientToken = Prelude.Nothing,+ appId = pAppId_,+ environmentName = pEnvironmentName_,+ id = pId_,+ updatedTheme = pUpdatedTheme_+ }++-- | The unique client token.+updateTheme_clientToken :: Lens.Lens' UpdateTheme (Prelude.Maybe Prelude.Text)+updateTheme_clientToken = Lens.lens (\UpdateTheme' {clientToken} -> clientToken) (\s@UpdateTheme' {} a -> s {clientToken = a} :: UpdateTheme)++-- | The unique ID for the Amplify app.+updateTheme_appId :: Lens.Lens' UpdateTheme Prelude.Text+updateTheme_appId = Lens.lens (\UpdateTheme' {appId} -> appId) (\s@UpdateTheme' {} a -> s {appId = a} :: UpdateTheme)++-- | The name of the backend environment that is part of the Amplify app.+updateTheme_environmentName :: Lens.Lens' UpdateTheme Prelude.Text+updateTheme_environmentName = Lens.lens (\UpdateTheme' {environmentName} -> environmentName) (\s@UpdateTheme' {} a -> s {environmentName = a} :: UpdateTheme)++-- | The unique ID for the theme.+updateTheme_id :: Lens.Lens' UpdateTheme Prelude.Text+updateTheme_id = Lens.lens (\UpdateTheme' {id} -> id) (\s@UpdateTheme' {} a -> s {id = a} :: UpdateTheme)++-- | The configuration of the updated theme.+updateTheme_updatedTheme :: Lens.Lens' UpdateTheme UpdateThemeData+updateTheme_updatedTheme = Lens.lens (\UpdateTheme' {updatedTheme} -> updatedTheme) (\s@UpdateTheme' {} a -> s {updatedTheme = a} :: UpdateTheme)++instance Core.AWSRequest UpdateTheme where+ type AWSResponse UpdateTheme = UpdateThemeResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateThemeResponse'+ Prelude.<$> (Data.eitherParseJSON x)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateTheme where+ hashWithSalt _salt UpdateTheme' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` appId+ `Prelude.hashWithSalt` environmentName+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` updatedTheme++instance Prelude.NFData UpdateTheme where+ rnf UpdateTheme' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf appId+ `Prelude.seq` Prelude.rnf environmentName+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf updatedTheme++instance Data.ToHeaders UpdateTheme where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateTheme where+ toJSON UpdateTheme' {..} = Data.toJSON updatedTheme++instance Data.ToPath UpdateTheme where+ toPath UpdateTheme' {..} =+ Prelude.mconcat+ [ "/app/",+ Data.toBS appId,+ "/environment/",+ Data.toBS environmentName,+ "/themes/",+ Data.toBS id+ ]++instance Data.ToQuery UpdateTheme where+ toQuery UpdateTheme' {..} =+ Prelude.mconcat ["clientToken" Data.=: clientToken]++-- | /See:/ 'newUpdateThemeResponse' smart constructor.+data UpdateThemeResponse = UpdateThemeResponse'+ { -- | Describes the configuration of the updated theme.+ entity :: Prelude.Maybe Theme,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateThemeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'entity', 'updateThemeResponse_entity' - Describes the configuration of the updated theme.+--+-- 'httpStatus', 'updateThemeResponse_httpStatus' - The response's http status code.+newUpdateThemeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateThemeResponse+newUpdateThemeResponse pHttpStatus_ =+ UpdateThemeResponse'+ { entity = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Describes the configuration of the updated theme.+updateThemeResponse_entity :: Lens.Lens' UpdateThemeResponse (Prelude.Maybe Theme)+updateThemeResponse_entity = Lens.lens (\UpdateThemeResponse' {entity} -> entity) (\s@UpdateThemeResponse' {} a -> s {entity = a} :: UpdateThemeResponse)++-- | The response's http status code.+updateThemeResponse_httpStatus :: Lens.Lens' UpdateThemeResponse Prelude.Int+updateThemeResponse_httpStatus = Lens.lens (\UpdateThemeResponse' {httpStatus} -> httpStatus) (\s@UpdateThemeResponse' {} a -> s {httpStatus = a} :: UpdateThemeResponse)++instance Prelude.NFData UpdateThemeResponse where+ rnf UpdateThemeResponse' {..} =+ Prelude.rnf entity+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/AmplifyUiBuilder/Waiters.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.AmplifyUiBuilder.Waiters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.AmplifyUiBuilder.Waiters where++import Amazonka.AmplifyUiBuilder.Lens+import Amazonka.AmplifyUiBuilder.Types+import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.AmplifyUiBuilder+import Test.Amazonka.AmplifyUiBuilder.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "AmplifyUiBuilder"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/AmplifyUiBuilder.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.AmplifyUiBuilder+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.AmplifyUiBuilder+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/AmplifyUiBuilder/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.AmplifyUiBuilder.Internal+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.AmplifyUiBuilder.Internal where
+ test/Test/Amazonka/Gen/AmplifyUiBuilder.hs view
@@ -0,0 +1,478 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.Amazonka.Gen.AmplifyUiBuilder+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.Gen.AmplifyUiBuilder where++import Amazonka.AmplifyUiBuilder+import qualified Data.Proxy as Proxy+import Test.Amazonka.AmplifyUiBuilder.Internal+import Test.Amazonka.Fixture+import Test.Amazonka.Prelude+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ requestCreateComponent $+-- newCreateComponent+--+-- , requestCreateForm $+-- newCreateForm+--+-- , requestCreateTheme $+-- newCreateTheme+--+-- , requestDeleteComponent $+-- newDeleteComponent+--+-- , requestDeleteForm $+-- newDeleteForm+--+-- , requestDeleteTheme $+-- newDeleteTheme+--+-- , requestExchangeCodeForToken $+-- newExchangeCodeForToken+--+-- , requestExportComponents $+-- newExportComponents+--+-- , requestExportForms $+-- newExportForms+--+-- , requestExportThemes $+-- newExportThemes+--+-- , requestGetComponent $+-- newGetComponent+--+-- , requestGetForm $+-- newGetForm+--+-- , requestGetMetadata $+-- newGetMetadata+--+-- , requestGetTheme $+-- newGetTheme+--+-- , requestListComponents $+-- newListComponents+--+-- , requestListForms $+-- newListForms+--+-- , requestListThemes $+-- newListThemes+--+-- , requestPutMetadataFlag $+-- newPutMetadataFlag+--+-- , requestRefreshToken $+-- newRefreshToken+--+-- , requestUpdateComponent $+-- newUpdateComponent+--+-- , requestUpdateForm $+-- newUpdateForm+--+-- , requestUpdateTheme $+-- newUpdateTheme+--+-- ]++-- , testGroup "response"+-- [ responseCreateComponent $+-- newCreateComponentResponse+--+-- , responseCreateForm $+-- newCreateFormResponse+--+-- , responseCreateTheme $+-- newCreateThemeResponse+--+-- , responseDeleteComponent $+-- newDeleteComponentResponse+--+-- , responseDeleteForm $+-- newDeleteFormResponse+--+-- , responseDeleteTheme $+-- newDeleteThemeResponse+--+-- , responseExchangeCodeForToken $+-- newExchangeCodeForTokenResponse+--+-- , responseExportComponents $+-- newExportComponentsResponse+--+-- , responseExportForms $+-- newExportFormsResponse+--+-- , responseExportThemes $+-- newExportThemesResponse+--+-- , responseGetComponent $+-- newGetComponentResponse+--+-- , responseGetForm $+-- newGetFormResponse+--+-- , responseGetMetadata $+-- newGetMetadataResponse+--+-- , responseGetTheme $+-- newGetThemeResponse+--+-- , responseListComponents $+-- newListComponentsResponse+--+-- , responseListForms $+-- newListFormsResponse+--+-- , responseListThemes $+-- newListThemesResponse+--+-- , responsePutMetadataFlag $+-- newPutMetadataFlagResponse+--+-- , responseRefreshToken $+-- newRefreshTokenResponse+--+-- , responseUpdateComponent $+-- newUpdateComponentResponse+--+-- , responseUpdateForm $+-- newUpdateFormResponse+--+-- , responseUpdateTheme $+-- newUpdateThemeResponse+--+-- ]+-- ]++-- Requests++requestCreateComponent :: CreateComponent -> TestTree+requestCreateComponent =+ req+ "CreateComponent"+ "fixture/CreateComponent.yaml"++requestCreateForm :: CreateForm -> TestTree+requestCreateForm =+ req+ "CreateForm"+ "fixture/CreateForm.yaml"++requestCreateTheme :: CreateTheme -> TestTree+requestCreateTheme =+ req+ "CreateTheme"+ "fixture/CreateTheme.yaml"++requestDeleteComponent :: DeleteComponent -> TestTree+requestDeleteComponent =+ req+ "DeleteComponent"+ "fixture/DeleteComponent.yaml"++requestDeleteForm :: DeleteForm -> TestTree+requestDeleteForm =+ req+ "DeleteForm"+ "fixture/DeleteForm.yaml"++requestDeleteTheme :: DeleteTheme -> TestTree+requestDeleteTheme =+ req+ "DeleteTheme"+ "fixture/DeleteTheme.yaml"++requestExchangeCodeForToken :: ExchangeCodeForToken -> TestTree+requestExchangeCodeForToken =+ req+ "ExchangeCodeForToken"+ "fixture/ExchangeCodeForToken.yaml"++requestExportComponents :: ExportComponents -> TestTree+requestExportComponents =+ req+ "ExportComponents"+ "fixture/ExportComponents.yaml"++requestExportForms :: ExportForms -> TestTree+requestExportForms =+ req+ "ExportForms"+ "fixture/ExportForms.yaml"++requestExportThemes :: ExportThemes -> TestTree+requestExportThemes =+ req+ "ExportThemes"+ "fixture/ExportThemes.yaml"++requestGetComponent :: GetComponent -> TestTree+requestGetComponent =+ req+ "GetComponent"+ "fixture/GetComponent.yaml"++requestGetForm :: GetForm -> TestTree+requestGetForm =+ req+ "GetForm"+ "fixture/GetForm.yaml"++requestGetMetadata :: GetMetadata -> TestTree+requestGetMetadata =+ req+ "GetMetadata"+ "fixture/GetMetadata.yaml"++requestGetTheme :: GetTheme -> TestTree+requestGetTheme =+ req+ "GetTheme"+ "fixture/GetTheme.yaml"++requestListComponents :: ListComponents -> TestTree+requestListComponents =+ req+ "ListComponents"+ "fixture/ListComponents.yaml"++requestListForms :: ListForms -> TestTree+requestListForms =+ req+ "ListForms"+ "fixture/ListForms.yaml"++requestListThemes :: ListThemes -> TestTree+requestListThemes =+ req+ "ListThemes"+ "fixture/ListThemes.yaml"++requestPutMetadataFlag :: PutMetadataFlag -> TestTree+requestPutMetadataFlag =+ req+ "PutMetadataFlag"+ "fixture/PutMetadataFlag.yaml"++requestRefreshToken :: RefreshToken -> TestTree+requestRefreshToken =+ req+ "RefreshToken"+ "fixture/RefreshToken.yaml"++requestUpdateComponent :: UpdateComponent -> TestTree+requestUpdateComponent =+ req+ "UpdateComponent"+ "fixture/UpdateComponent.yaml"++requestUpdateForm :: UpdateForm -> TestTree+requestUpdateForm =+ req+ "UpdateForm"+ "fixture/UpdateForm.yaml"++requestUpdateTheme :: UpdateTheme -> TestTree+requestUpdateTheme =+ req+ "UpdateTheme"+ "fixture/UpdateTheme.yaml"++-- Responses++responseCreateComponent :: CreateComponentResponse -> TestTree+responseCreateComponent =+ res+ "CreateComponentResponse"+ "fixture/CreateComponentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateComponent)++responseCreateForm :: CreateFormResponse -> TestTree+responseCreateForm =+ res+ "CreateFormResponse"+ "fixture/CreateFormResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateForm)++responseCreateTheme :: CreateThemeResponse -> TestTree+responseCreateTheme =+ res+ "CreateThemeResponse"+ "fixture/CreateThemeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateTheme)++responseDeleteComponent :: DeleteComponentResponse -> TestTree+responseDeleteComponent =+ res+ "DeleteComponentResponse"+ "fixture/DeleteComponentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteComponent)++responseDeleteForm :: DeleteFormResponse -> TestTree+responseDeleteForm =+ res+ "DeleteFormResponse"+ "fixture/DeleteFormResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteForm)++responseDeleteTheme :: DeleteThemeResponse -> TestTree+responseDeleteTheme =+ res+ "DeleteThemeResponse"+ "fixture/DeleteThemeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteTheme)++responseExchangeCodeForToken :: ExchangeCodeForTokenResponse -> TestTree+responseExchangeCodeForToken =+ res+ "ExchangeCodeForTokenResponse"+ "fixture/ExchangeCodeForTokenResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ExchangeCodeForToken)++responseExportComponents :: ExportComponentsResponse -> TestTree+responseExportComponents =+ res+ "ExportComponentsResponse"+ "fixture/ExportComponentsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ExportComponents)++responseExportForms :: ExportFormsResponse -> TestTree+responseExportForms =+ res+ "ExportFormsResponse"+ "fixture/ExportFormsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ExportForms)++responseExportThemes :: ExportThemesResponse -> TestTree+responseExportThemes =+ res+ "ExportThemesResponse"+ "fixture/ExportThemesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ExportThemes)++responseGetComponent :: GetComponentResponse -> TestTree+responseGetComponent =+ res+ "GetComponentResponse"+ "fixture/GetComponentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetComponent)++responseGetForm :: GetFormResponse -> TestTree+responseGetForm =+ res+ "GetFormResponse"+ "fixture/GetFormResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetForm)++responseGetMetadata :: GetMetadataResponse -> TestTree+responseGetMetadata =+ res+ "GetMetadataResponse"+ "fixture/GetMetadataResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetMetadata)++responseGetTheme :: GetThemeResponse -> TestTree+responseGetTheme =+ res+ "GetThemeResponse"+ "fixture/GetThemeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetTheme)++responseListComponents :: ListComponentsResponse -> TestTree+responseListComponents =+ res+ "ListComponentsResponse"+ "fixture/ListComponentsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListComponents)++responseListForms :: ListFormsResponse -> TestTree+responseListForms =+ res+ "ListFormsResponse"+ "fixture/ListFormsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListForms)++responseListThemes :: ListThemesResponse -> TestTree+responseListThemes =+ res+ "ListThemesResponse"+ "fixture/ListThemesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListThemes)++responsePutMetadataFlag :: PutMetadataFlagResponse -> TestTree+responsePutMetadataFlag =+ res+ "PutMetadataFlagResponse"+ "fixture/PutMetadataFlagResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutMetadataFlag)++responseRefreshToken :: RefreshTokenResponse -> TestTree+responseRefreshToken =+ res+ "RefreshTokenResponse"+ "fixture/RefreshTokenResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RefreshToken)++responseUpdateComponent :: UpdateComponentResponse -> TestTree+responseUpdateComponent =+ res+ "UpdateComponentResponse"+ "fixture/UpdateComponentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateComponent)++responseUpdateForm :: UpdateFormResponse -> TestTree+responseUpdateForm =+ res+ "UpdateFormResponse"+ "fixture/UpdateFormResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateForm)++responseUpdateTheme :: UpdateThemeResponse -> TestTree+responseUpdateTheme =+ res+ "UpdateThemeResponse"+ "fixture/UpdateThemeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateTheme)