aws-sdk-amplifyuibuilder 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2946 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::AmplifyUIBuilder
11
+ module Types
12
+
13
+ # Contains the configuration settings for a user interface (UI) element
14
+ # for an Amplify app. A component is configured as a primary,
15
+ # stand-alone UI element. Use `ComponentChild` to configure an instance
16
+ # of a `Component`. A `ComponentChild` instance inherits the
17
+ # configuration of the main `Component`.
18
+ #
19
+ # @!attribute [rw] app_id
20
+ # The unique ID of the Amplify app associated with the component.
21
+ # @return [String]
22
+ #
23
+ # @!attribute [rw] binding_properties
24
+ # The information to connect a component's properties to data at
25
+ # runtime.
26
+ # @return [Hash<String,Types::ComponentBindingPropertiesValue>]
27
+ #
28
+ # @!attribute [rw] children
29
+ # A list of the component's `ComponentChild` instances.
30
+ # @return [Array<Types::ComponentChild>]
31
+ #
32
+ # @!attribute [rw] collection_properties
33
+ # The data binding configuration for the component's properties. Use
34
+ # this for a collection component.
35
+ # @return [Hash<String,Types::ComponentDataConfiguration>]
36
+ #
37
+ # @!attribute [rw] component_type
38
+ # The type of the component. This can be an Amplify custom UI
39
+ # component or another custom component.
40
+ # @return [String]
41
+ #
42
+ # @!attribute [rw] created_at
43
+ # The time that the component was created.
44
+ # @return [Time]
45
+ #
46
+ # @!attribute [rw] environment_name
47
+ # The name of the backend environment that is a part of the Amplify
48
+ # app.
49
+ # @return [String]
50
+ #
51
+ # @!attribute [rw] id
52
+ # The unique ID of the component.
53
+ # @return [String]
54
+ #
55
+ # @!attribute [rw] modified_at
56
+ # The time that the component was modified.
57
+ # @return [Time]
58
+ #
59
+ # @!attribute [rw] name
60
+ # The name of the component.
61
+ # @return [String]
62
+ #
63
+ # @!attribute [rw] overrides
64
+ # Describes the component's properties that can be overriden in a
65
+ # customized instance of the component.
66
+ # @return [Hash<String,Hash<String,String>>]
67
+ #
68
+ # @!attribute [rw] properties
69
+ # Describes the component's properties.
70
+ # @return [Hash<String,Types::ComponentProperty>]
71
+ #
72
+ # @!attribute [rw] source_id
73
+ # The unique ID of the component in its original source system, such
74
+ # as Figma.
75
+ # @return [String]
76
+ #
77
+ # @!attribute [rw] tags
78
+ # One or more key-value pairs to use when tagging the component.
79
+ # @return [Hash<String,String>]
80
+ #
81
+ # @!attribute [rw] variants
82
+ # A list of the component's variants. A variant is a unique style
83
+ # configuration of a main component.
84
+ # @return [Array<Types::ComponentVariant>]
85
+ #
86
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/Component AWS API Documentation
87
+ #
88
+ class Component < Struct.new(
89
+ :app_id,
90
+ :binding_properties,
91
+ :children,
92
+ :collection_properties,
93
+ :component_type,
94
+ :created_at,
95
+ :environment_name,
96
+ :id,
97
+ :modified_at,
98
+ :name,
99
+ :overrides,
100
+ :properties,
101
+ :source_id,
102
+ :tags,
103
+ :variants)
104
+ SENSITIVE = []
105
+ include Aws::Structure
106
+ end
107
+
108
+ # Represents the data binding configuration for a component at runtime.
109
+ # You can use `ComponentBindingPropertiesValue` to add exposed
110
+ # properties to a component to allow different values to be entered when
111
+ # a component is reused in different places in an app.
112
+ #
113
+ # @note When making an API call, you may pass ComponentBindingPropertiesValue
114
+ # data as a hash:
115
+ #
116
+ # {
117
+ # binding_properties: {
118
+ # bucket: "String",
119
+ # default_value: "String",
120
+ # field: "String",
121
+ # key: "String",
122
+ # model: "String",
123
+ # predicates: [
124
+ # {
125
+ # and: {
126
+ # # recursive PredicateList
127
+ # },
128
+ # field: "String",
129
+ # operand: "String",
130
+ # operator: "String",
131
+ # or: {
132
+ # # recursive PredicateList
133
+ # },
134
+ # },
135
+ # ],
136
+ # user_attribute: "String",
137
+ # },
138
+ # default_value: "String",
139
+ # type: "String",
140
+ # }
141
+ #
142
+ # @!attribute [rw] binding_properties
143
+ # Describes the properties to customize with data at runtime.
144
+ # @return [Types::ComponentBindingPropertiesValueProperties]
145
+ #
146
+ # @!attribute [rw] default_value
147
+ # The default value of the property.
148
+ # @return [String]
149
+ #
150
+ # @!attribute [rw] type
151
+ # The property type.
152
+ # @return [String]
153
+ #
154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ComponentBindingPropertiesValue AWS API Documentation
155
+ #
156
+ class ComponentBindingPropertiesValue < Struct.new(
157
+ :binding_properties,
158
+ :default_value,
159
+ :type)
160
+ SENSITIVE = []
161
+ include Aws::Structure
162
+ end
163
+
164
+ # Represents the data binding configuration for a specific property
165
+ # using data stored in Amazon Web Services. For Amazon Web Services
166
+ # connected properties, you can bind a property to data stored in an
167
+ # Amazon S3 bucket, an Amplify DataStore model or an authenticated user
168
+ # attribute.
169
+ #
170
+ # @note When making an API call, you may pass ComponentBindingPropertiesValueProperties
171
+ # data as a hash:
172
+ #
173
+ # {
174
+ # bucket: "String",
175
+ # default_value: "String",
176
+ # field: "String",
177
+ # key: "String",
178
+ # model: "String",
179
+ # predicates: [
180
+ # {
181
+ # and: {
182
+ # # recursive PredicateList
183
+ # },
184
+ # field: "String",
185
+ # operand: "String",
186
+ # operator: "String",
187
+ # or: {
188
+ # # recursive PredicateList
189
+ # },
190
+ # },
191
+ # ],
192
+ # user_attribute: "String",
193
+ # }
194
+ #
195
+ # @!attribute [rw] bucket
196
+ # An Amazon S3 bucket.
197
+ # @return [String]
198
+ #
199
+ # @!attribute [rw] default_value
200
+ # The default value to assign to the property.
201
+ # @return [String]
202
+ #
203
+ # @!attribute [rw] field
204
+ # The field to bind the data to.
205
+ # @return [String]
206
+ #
207
+ # @!attribute [rw] key
208
+ # The storage key for an Amazon S3 bucket.
209
+ # @return [String]
210
+ #
211
+ # @!attribute [rw] model
212
+ # An Amplify DataStore model.
213
+ # @return [String]
214
+ #
215
+ # @!attribute [rw] predicates
216
+ # A list of predicates for binding a component's properties to data.
217
+ # @return [Array<Types::Predicate>]
218
+ #
219
+ # @!attribute [rw] user_attribute
220
+ # An authenticated user attribute.
221
+ # @return [String]
222
+ #
223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ComponentBindingPropertiesValueProperties AWS API Documentation
224
+ #
225
+ class ComponentBindingPropertiesValueProperties < Struct.new(
226
+ :bucket,
227
+ :default_value,
228
+ :field,
229
+ :key,
230
+ :model,
231
+ :predicates,
232
+ :user_attribute)
233
+ SENSITIVE = []
234
+ include Aws::Structure
235
+ end
236
+
237
+ # A nested UI configuration within a parent `Component`.
238
+ #
239
+ # @note When making an API call, you may pass ComponentChild
240
+ # data as a hash:
241
+ #
242
+ # {
243
+ # children: [
244
+ # {
245
+ # children: {
246
+ # # recursive ComponentChildList
247
+ # },
248
+ # component_type: "String", # required
249
+ # name: "String", # required
250
+ # properties: { # required
251
+ # "String" => {
252
+ # binding_properties: {
253
+ # field: "String",
254
+ # property: "String", # required
255
+ # },
256
+ # bindings: {
257
+ # "String" => {
258
+ # element: "String", # required
259
+ # property: "String", # required
260
+ # },
261
+ # },
262
+ # collection_binding_properties: {
263
+ # field: "String",
264
+ # property: "String", # required
265
+ # },
266
+ # concat: [
267
+ # {
268
+ # # recursive ComponentProperty
269
+ # },
270
+ # ],
271
+ # condition: {
272
+ # else: {
273
+ # # recursive ComponentProperty
274
+ # },
275
+ # field: "String",
276
+ # operand: "String",
277
+ # operator: "String",
278
+ # property: "String",
279
+ # then: {
280
+ # # recursive ComponentProperty
281
+ # },
282
+ # },
283
+ # configured: false,
284
+ # default_value: "String",
285
+ # event: "String",
286
+ # imported_value: "String",
287
+ # model: "String",
288
+ # type: "String",
289
+ # user_attribute: "String",
290
+ # value: "String",
291
+ # },
292
+ # },
293
+ # },
294
+ # ],
295
+ # component_type: "String", # required
296
+ # name: "String", # required
297
+ # properties: { # required
298
+ # "String" => {
299
+ # binding_properties: {
300
+ # field: "String",
301
+ # property: "String", # required
302
+ # },
303
+ # bindings: {
304
+ # "String" => {
305
+ # element: "String", # required
306
+ # property: "String", # required
307
+ # },
308
+ # },
309
+ # collection_binding_properties: {
310
+ # field: "String",
311
+ # property: "String", # required
312
+ # },
313
+ # concat: [
314
+ # {
315
+ # # recursive ComponentProperty
316
+ # },
317
+ # ],
318
+ # condition: {
319
+ # else: {
320
+ # # recursive ComponentProperty
321
+ # },
322
+ # field: "String",
323
+ # operand: "String",
324
+ # operator: "String",
325
+ # property: "String",
326
+ # then: {
327
+ # # recursive ComponentProperty
328
+ # },
329
+ # },
330
+ # configured: false,
331
+ # default_value: "String",
332
+ # event: "String",
333
+ # imported_value: "String",
334
+ # model: "String",
335
+ # type: "String",
336
+ # user_attribute: "String",
337
+ # value: "String",
338
+ # },
339
+ # },
340
+ # }
341
+ #
342
+ # @!attribute [rw] children
343
+ # The list of `ComponentChild` instances for this component.
344
+ # @return [Array<Types::ComponentChild>]
345
+ #
346
+ # @!attribute [rw] component_type
347
+ # The type of the child component.
348
+ # @return [String]
349
+ #
350
+ # @!attribute [rw] name
351
+ # The name of the child component.
352
+ # @return [String]
353
+ #
354
+ # @!attribute [rw] properties
355
+ # Describes the properties of the child component.
356
+ # @return [Hash<String,Types::ComponentProperty>]
357
+ #
358
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ComponentChild AWS API Documentation
359
+ #
360
+ class ComponentChild < Struct.new(
361
+ :children,
362
+ :component_type,
363
+ :name,
364
+ :properties)
365
+ SENSITIVE = []
366
+ include Aws::Structure
367
+ end
368
+
369
+ # Represents a conditional expression to set a component property. Use
370
+ # `ComponentConditionProperty` to set a property to different values
371
+ # conditionally, based on the value of another property.
372
+ #
373
+ # @note When making an API call, you may pass ComponentConditionProperty
374
+ # data as a hash:
375
+ #
376
+ # {
377
+ # else: {
378
+ # binding_properties: {
379
+ # field: "String",
380
+ # property: "String", # required
381
+ # },
382
+ # bindings: {
383
+ # "String" => {
384
+ # element: "String", # required
385
+ # property: "String", # required
386
+ # },
387
+ # },
388
+ # collection_binding_properties: {
389
+ # field: "String",
390
+ # property: "String", # required
391
+ # },
392
+ # concat: [
393
+ # {
394
+ # # recursive ComponentProperty
395
+ # },
396
+ # ],
397
+ # condition: {
398
+ # else: {
399
+ # # recursive ComponentProperty
400
+ # },
401
+ # field: "String",
402
+ # operand: "String",
403
+ # operator: "String",
404
+ # property: "String",
405
+ # then: {
406
+ # # recursive ComponentProperty
407
+ # },
408
+ # },
409
+ # configured: false,
410
+ # default_value: "String",
411
+ # event: "String",
412
+ # imported_value: "String",
413
+ # model: "String",
414
+ # type: "String",
415
+ # user_attribute: "String",
416
+ # value: "String",
417
+ # },
418
+ # field: "String",
419
+ # operand: "String",
420
+ # operator: "String",
421
+ # property: "String",
422
+ # then: {
423
+ # binding_properties: {
424
+ # field: "String",
425
+ # property: "String", # required
426
+ # },
427
+ # bindings: {
428
+ # "String" => {
429
+ # element: "String", # required
430
+ # property: "String", # required
431
+ # },
432
+ # },
433
+ # collection_binding_properties: {
434
+ # field: "String",
435
+ # property: "String", # required
436
+ # },
437
+ # concat: [
438
+ # {
439
+ # # recursive ComponentProperty
440
+ # },
441
+ # ],
442
+ # condition: {
443
+ # else: {
444
+ # # recursive ComponentProperty
445
+ # },
446
+ # field: "String",
447
+ # operand: "String",
448
+ # operator: "String",
449
+ # property: "String",
450
+ # then: {
451
+ # # recursive ComponentProperty
452
+ # },
453
+ # },
454
+ # configured: false,
455
+ # default_value: "String",
456
+ # event: "String",
457
+ # imported_value: "String",
458
+ # model: "String",
459
+ # type: "String",
460
+ # user_attribute: "String",
461
+ # value: "String",
462
+ # },
463
+ # }
464
+ #
465
+ # @!attribute [rw] else
466
+ # The value to assign to the property if the condition is not met.
467
+ # @return [Types::ComponentProperty]
468
+ #
469
+ # @!attribute [rw] field
470
+ # The name of a field. Specify this when the property is a data model.
471
+ # @return [String]
472
+ #
473
+ # @!attribute [rw] operand
474
+ # The value of the property to evaluate.
475
+ # @return [String]
476
+ #
477
+ # @!attribute [rw] operator
478
+ # The operator to use to perform the evaluation, such as `eq` to
479
+ # represent equals.
480
+ # @return [String]
481
+ #
482
+ # @!attribute [rw] property
483
+ # The name of the conditional property.
484
+ # @return [String]
485
+ #
486
+ # @!attribute [rw] then
487
+ # The value to assign to the property if the condition is met.
488
+ # @return [Types::ComponentProperty]
489
+ #
490
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ComponentConditionProperty AWS API Documentation
491
+ #
492
+ class ComponentConditionProperty < Struct.new(
493
+ :else,
494
+ :field,
495
+ :operand,
496
+ :operator,
497
+ :property,
498
+ :then)
499
+ SENSITIVE = []
500
+ include Aws::Structure
501
+ end
502
+
503
+ # Describes the configuration for binding a component's properties to
504
+ # data.
505
+ #
506
+ # @note When making an API call, you may pass ComponentDataConfiguration
507
+ # data as a hash:
508
+ #
509
+ # {
510
+ # identifiers: ["String"],
511
+ # model: "String", # required
512
+ # predicate: {
513
+ # and: [
514
+ # {
515
+ # # recursive Predicate
516
+ # },
517
+ # ],
518
+ # field: "String",
519
+ # operand: "String",
520
+ # operator: "String",
521
+ # or: [
522
+ # {
523
+ # # recursive Predicate
524
+ # },
525
+ # ],
526
+ # },
527
+ # sort: [
528
+ # {
529
+ # direction: "ASC", # required, accepts ASC, DESC
530
+ # field: "String", # required
531
+ # },
532
+ # ],
533
+ # }
534
+ #
535
+ # @!attribute [rw] identifiers
536
+ # A list of IDs to use to bind data to a component. Use this property
537
+ # to bind specifically chosen data, rather than data retrieved from a
538
+ # query.
539
+ # @return [Array<String>]
540
+ #
541
+ # @!attribute [rw] model
542
+ # The name of the data model to use to bind data to a component.
543
+ # @return [String]
544
+ #
545
+ # @!attribute [rw] predicate
546
+ # Represents the conditional logic to use when binding data to a
547
+ # component. Use this property to retrieve only a subset of the data
548
+ # in a collection.
549
+ # @return [Types::Predicate]
550
+ #
551
+ # @!attribute [rw] sort
552
+ # Describes how to sort the component's properties.
553
+ # @return [Array<Types::SortProperty>]
554
+ #
555
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ComponentDataConfiguration AWS API Documentation
556
+ #
557
+ class ComponentDataConfiguration < Struct.new(
558
+ :identifiers,
559
+ :model,
560
+ :predicate,
561
+ :sort)
562
+ SENSITIVE = []
563
+ include Aws::Structure
564
+ end
565
+
566
+ # Describes the configuration for all of a component's properties. Use
567
+ # `ComponentProperty` to specify the values to render or bind by
568
+ # default.
569
+ #
570
+ # @note When making an API call, you may pass ComponentProperty
571
+ # data as a hash:
572
+ #
573
+ # {
574
+ # binding_properties: {
575
+ # field: "String",
576
+ # property: "String", # required
577
+ # },
578
+ # bindings: {
579
+ # "String" => {
580
+ # element: "String", # required
581
+ # property: "String", # required
582
+ # },
583
+ # },
584
+ # collection_binding_properties: {
585
+ # field: "String",
586
+ # property: "String", # required
587
+ # },
588
+ # concat: [
589
+ # {
590
+ # binding_properties: {
591
+ # field: "String",
592
+ # property: "String", # required
593
+ # },
594
+ # bindings: {
595
+ # "String" => {
596
+ # element: "String", # required
597
+ # property: "String", # required
598
+ # },
599
+ # },
600
+ # collection_binding_properties: {
601
+ # field: "String",
602
+ # property: "String", # required
603
+ # },
604
+ # concat: {
605
+ # # recursive ComponentPropertyList
606
+ # },
607
+ # condition: {
608
+ # else: {
609
+ # # recursive ComponentProperty
610
+ # },
611
+ # field: "String",
612
+ # operand: "String",
613
+ # operator: "String",
614
+ # property: "String",
615
+ # then: {
616
+ # # recursive ComponentProperty
617
+ # },
618
+ # },
619
+ # configured: false,
620
+ # default_value: "String",
621
+ # event: "String",
622
+ # imported_value: "String",
623
+ # model: "String",
624
+ # type: "String",
625
+ # user_attribute: "String",
626
+ # value: "String",
627
+ # },
628
+ # ],
629
+ # condition: {
630
+ # else: {
631
+ # binding_properties: {
632
+ # field: "String",
633
+ # property: "String", # required
634
+ # },
635
+ # bindings: {
636
+ # "String" => {
637
+ # element: "String", # required
638
+ # property: "String", # required
639
+ # },
640
+ # },
641
+ # collection_binding_properties: {
642
+ # field: "String",
643
+ # property: "String", # required
644
+ # },
645
+ # concat: [
646
+ # {
647
+ # # recursive ComponentProperty
648
+ # },
649
+ # ],
650
+ # condition: {
651
+ # # recursive ComponentConditionProperty
652
+ # },
653
+ # configured: false,
654
+ # default_value: "String",
655
+ # event: "String",
656
+ # imported_value: "String",
657
+ # model: "String",
658
+ # type: "String",
659
+ # user_attribute: "String",
660
+ # value: "String",
661
+ # },
662
+ # field: "String",
663
+ # operand: "String",
664
+ # operator: "String",
665
+ # property: "String",
666
+ # then: {
667
+ # binding_properties: {
668
+ # field: "String",
669
+ # property: "String", # required
670
+ # },
671
+ # bindings: {
672
+ # "String" => {
673
+ # element: "String", # required
674
+ # property: "String", # required
675
+ # },
676
+ # },
677
+ # collection_binding_properties: {
678
+ # field: "String",
679
+ # property: "String", # required
680
+ # },
681
+ # concat: [
682
+ # {
683
+ # # recursive ComponentProperty
684
+ # },
685
+ # ],
686
+ # condition: {
687
+ # # recursive ComponentConditionProperty
688
+ # },
689
+ # configured: false,
690
+ # default_value: "String",
691
+ # event: "String",
692
+ # imported_value: "String",
693
+ # model: "String",
694
+ # type: "String",
695
+ # user_attribute: "String",
696
+ # value: "String",
697
+ # },
698
+ # },
699
+ # configured: false,
700
+ # default_value: "String",
701
+ # event: "String",
702
+ # imported_value: "String",
703
+ # model: "String",
704
+ # type: "String",
705
+ # user_attribute: "String",
706
+ # value: "String",
707
+ # }
708
+ #
709
+ # @!attribute [rw] binding_properties
710
+ # The information to bind the component property to data at runtime.
711
+ # @return [Types::ComponentPropertyBindingProperties]
712
+ #
713
+ # @!attribute [rw] bindings
714
+ # The information to bind the component property to form data.
715
+ # @return [Hash<String,Types::FormBindingElement>]
716
+ #
717
+ # @!attribute [rw] collection_binding_properties
718
+ # The information to bind the component property to data at runtime.
719
+ # Use this for collection components.
720
+ # @return [Types::ComponentPropertyBindingProperties]
721
+ #
722
+ # @!attribute [rw] concat
723
+ # A list of component properties to concatenate to create the value to
724
+ # assign to this component property.
725
+ # @return [Array<Types::ComponentProperty>]
726
+ #
727
+ # @!attribute [rw] condition
728
+ # The conditional expression to use to assign a value to the component
729
+ # property..
730
+ # @return [Types::ComponentConditionProperty]
731
+ #
732
+ # @!attribute [rw] configured
733
+ # Specifies whether the user configured the property in Amplify Studio
734
+ # after importing it.
735
+ # @return [Boolean]
736
+ #
737
+ # @!attribute [rw] default_value
738
+ # The default value to assign to the component property.
739
+ # @return [String]
740
+ #
741
+ # @!attribute [rw] event
742
+ # An event that occurs in your app. Use this for workflow data
743
+ # binding.
744
+ # @return [String]
745
+ #
746
+ # @!attribute [rw] imported_value
747
+ # The default value assigned to property when the component is
748
+ # imported into an app.
749
+ # @return [String]
750
+ #
751
+ # @!attribute [rw] model
752
+ # The data model to use to assign a value to the component property.
753
+ # @return [String]
754
+ #
755
+ # @!attribute [rw] type
756
+ # The component type.
757
+ # @return [String]
758
+ #
759
+ # @!attribute [rw] user_attribute
760
+ # An authenticated user attribute to use to assign a value to the
761
+ # component property.
762
+ # @return [String]
763
+ #
764
+ # @!attribute [rw] value
765
+ # The value to assign to the component property.
766
+ # @return [String]
767
+ #
768
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ComponentProperty AWS API Documentation
769
+ #
770
+ class ComponentProperty < Struct.new(
771
+ :binding_properties,
772
+ :bindings,
773
+ :collection_binding_properties,
774
+ :concat,
775
+ :condition,
776
+ :configured,
777
+ :default_value,
778
+ :event,
779
+ :imported_value,
780
+ :model,
781
+ :type,
782
+ :user_attribute,
783
+ :value)
784
+ SENSITIVE = []
785
+ include Aws::Structure
786
+ end
787
+
788
+ # Associates a component property to a binding property. This enables
789
+ # exposed properties on the top level component to propagate data to the
790
+ # component's property values.
791
+ #
792
+ # @note When making an API call, you may pass ComponentPropertyBindingProperties
793
+ # data as a hash:
794
+ #
795
+ # {
796
+ # field: "String",
797
+ # property: "String", # required
798
+ # }
799
+ #
800
+ # @!attribute [rw] field
801
+ # The data field to bind the property to.
802
+ # @return [String]
803
+ #
804
+ # @!attribute [rw] property
805
+ # The component property to bind to the data field.
806
+ # @return [String]
807
+ #
808
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ComponentPropertyBindingProperties AWS API Documentation
809
+ #
810
+ class ComponentPropertyBindingProperties < Struct.new(
811
+ :field,
812
+ :property)
813
+ SENSITIVE = []
814
+ include Aws::Structure
815
+ end
816
+
817
+ # Contains a summary of a component. This is a read-only data type that
818
+ # is returned by `ListComponents`.
819
+ #
820
+ # @!attribute [rw] app_id
821
+ # The unique ID of the Amplify app associated with the component.
822
+ # @return [String]
823
+ #
824
+ # @!attribute [rw] component_type
825
+ # The component type.
826
+ # @return [String]
827
+ #
828
+ # @!attribute [rw] environment_name
829
+ # The name of the backend environment that is a part of the Amplify
830
+ # app.
831
+ # @return [String]
832
+ #
833
+ # @!attribute [rw] id
834
+ # The unique ID of the component.
835
+ # @return [String]
836
+ #
837
+ # @!attribute [rw] name
838
+ # The name of the component.
839
+ # @return [String]
840
+ #
841
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ComponentSummary AWS API Documentation
842
+ #
843
+ class ComponentSummary < Struct.new(
844
+ :app_id,
845
+ :component_type,
846
+ :environment_name,
847
+ :id,
848
+ :name)
849
+ SENSITIVE = []
850
+ include Aws::Structure
851
+ end
852
+
853
+ # Describes the style configuration of a unique variation of a main
854
+ # component.
855
+ #
856
+ # @note When making an API call, you may pass ComponentVariant
857
+ # data as a hash:
858
+ #
859
+ # {
860
+ # overrides: {
861
+ # "String" => {
862
+ # "String" => "String",
863
+ # },
864
+ # },
865
+ # variant_values: {
866
+ # "String" => "String",
867
+ # },
868
+ # }
869
+ #
870
+ # @!attribute [rw] overrides
871
+ # The properties of the component variant that can be overriden when
872
+ # customizing an instance of the component.
873
+ # @return [Hash<String,Hash<String,String>>]
874
+ #
875
+ # @!attribute [rw] variant_values
876
+ # The combination of variants that comprise this variant.
877
+ # @return [Hash<String,String>]
878
+ #
879
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ComponentVariant AWS API Documentation
880
+ #
881
+ class ComponentVariant < Struct.new(
882
+ :overrides,
883
+ :variant_values)
884
+ SENSITIVE = []
885
+ include Aws::Structure
886
+ end
887
+
888
+ # Represents all of the information that is required to create a
889
+ # component.
890
+ #
891
+ # @note When making an API call, you may pass CreateComponentData
892
+ # data as a hash:
893
+ #
894
+ # {
895
+ # binding_properties: { # required
896
+ # "String" => {
897
+ # binding_properties: {
898
+ # bucket: "String",
899
+ # default_value: "String",
900
+ # field: "String",
901
+ # key: "String",
902
+ # model: "String",
903
+ # predicates: [
904
+ # {
905
+ # and: {
906
+ # # recursive PredicateList
907
+ # },
908
+ # field: "String",
909
+ # operand: "String",
910
+ # operator: "String",
911
+ # or: {
912
+ # # recursive PredicateList
913
+ # },
914
+ # },
915
+ # ],
916
+ # user_attribute: "String",
917
+ # },
918
+ # default_value: "String",
919
+ # type: "String",
920
+ # },
921
+ # },
922
+ # children: [
923
+ # {
924
+ # children: {
925
+ # # recursive ComponentChildList
926
+ # },
927
+ # component_type: "String", # required
928
+ # name: "String", # required
929
+ # properties: { # required
930
+ # "String" => {
931
+ # binding_properties: {
932
+ # field: "String",
933
+ # property: "String", # required
934
+ # },
935
+ # bindings: {
936
+ # "String" => {
937
+ # element: "String", # required
938
+ # property: "String", # required
939
+ # },
940
+ # },
941
+ # collection_binding_properties: {
942
+ # field: "String",
943
+ # property: "String", # required
944
+ # },
945
+ # concat: [
946
+ # {
947
+ # # recursive ComponentProperty
948
+ # },
949
+ # ],
950
+ # condition: {
951
+ # else: {
952
+ # # recursive ComponentProperty
953
+ # },
954
+ # field: "String",
955
+ # operand: "String",
956
+ # operator: "String",
957
+ # property: "String",
958
+ # then: {
959
+ # # recursive ComponentProperty
960
+ # },
961
+ # },
962
+ # configured: false,
963
+ # default_value: "String",
964
+ # event: "String",
965
+ # imported_value: "String",
966
+ # model: "String",
967
+ # type: "String",
968
+ # user_attribute: "String",
969
+ # value: "String",
970
+ # },
971
+ # },
972
+ # },
973
+ # ],
974
+ # collection_properties: {
975
+ # "String" => {
976
+ # identifiers: ["String"],
977
+ # model: "String", # required
978
+ # predicate: {
979
+ # and: [
980
+ # {
981
+ # # recursive Predicate
982
+ # },
983
+ # ],
984
+ # field: "String",
985
+ # operand: "String",
986
+ # operator: "String",
987
+ # or: [
988
+ # {
989
+ # # recursive Predicate
990
+ # },
991
+ # ],
992
+ # },
993
+ # sort: [
994
+ # {
995
+ # direction: "ASC", # required, accepts ASC, DESC
996
+ # field: "String", # required
997
+ # },
998
+ # ],
999
+ # },
1000
+ # },
1001
+ # component_type: "ComponentType", # required
1002
+ # name: "ComponentName", # required
1003
+ # overrides: { # required
1004
+ # "String" => {
1005
+ # "String" => "String",
1006
+ # },
1007
+ # },
1008
+ # properties: { # required
1009
+ # "String" => {
1010
+ # binding_properties: {
1011
+ # field: "String",
1012
+ # property: "String", # required
1013
+ # },
1014
+ # bindings: {
1015
+ # "String" => {
1016
+ # element: "String", # required
1017
+ # property: "String", # required
1018
+ # },
1019
+ # },
1020
+ # collection_binding_properties: {
1021
+ # field: "String",
1022
+ # property: "String", # required
1023
+ # },
1024
+ # concat: [
1025
+ # {
1026
+ # # recursive ComponentProperty
1027
+ # },
1028
+ # ],
1029
+ # condition: {
1030
+ # else: {
1031
+ # # recursive ComponentProperty
1032
+ # },
1033
+ # field: "String",
1034
+ # operand: "String",
1035
+ # operator: "String",
1036
+ # property: "String",
1037
+ # then: {
1038
+ # # recursive ComponentProperty
1039
+ # },
1040
+ # },
1041
+ # configured: false,
1042
+ # default_value: "String",
1043
+ # event: "String",
1044
+ # imported_value: "String",
1045
+ # model: "String",
1046
+ # type: "String",
1047
+ # user_attribute: "String",
1048
+ # value: "String",
1049
+ # },
1050
+ # },
1051
+ # source_id: "String",
1052
+ # tags: {
1053
+ # "TagKey" => "TagValue",
1054
+ # },
1055
+ # variants: [ # required
1056
+ # {
1057
+ # overrides: {
1058
+ # "String" => {
1059
+ # "String" => "String",
1060
+ # },
1061
+ # },
1062
+ # variant_values: {
1063
+ # "String" => "String",
1064
+ # },
1065
+ # },
1066
+ # ],
1067
+ # }
1068
+ #
1069
+ # @!attribute [rw] binding_properties
1070
+ # The data binding information for the component's properties.
1071
+ # @return [Hash<String,Types::ComponentBindingPropertiesValue>]
1072
+ #
1073
+ # @!attribute [rw] children
1074
+ # A list of child components that are instances of the main component.
1075
+ # @return [Array<Types::ComponentChild>]
1076
+ #
1077
+ # @!attribute [rw] collection_properties
1078
+ # The data binding configuration for customizing a component's
1079
+ # properties. Use this for a collection component.
1080
+ # @return [Hash<String,Types::ComponentDataConfiguration>]
1081
+ #
1082
+ # @!attribute [rw] component_type
1083
+ # The component type. This can be an Amplify custom UI component or
1084
+ # another custom component.
1085
+ # @return [String]
1086
+ #
1087
+ # @!attribute [rw] name
1088
+ # The name of the component
1089
+ # @return [String]
1090
+ #
1091
+ # @!attribute [rw] overrides
1092
+ # Describes the component properties that can be overriden to
1093
+ # customize an instance of the component.
1094
+ # @return [Hash<String,Hash<String,String>>]
1095
+ #
1096
+ # @!attribute [rw] properties
1097
+ # Describes the component's properties.
1098
+ # @return [Hash<String,Types::ComponentProperty>]
1099
+ #
1100
+ # @!attribute [rw] source_id
1101
+ # The unique ID of the component in its original source system, such
1102
+ # as Figma.
1103
+ # @return [String]
1104
+ #
1105
+ # @!attribute [rw] tags
1106
+ # One or more key-value pairs to use when tagging the component data.
1107
+ # @return [Hash<String,String>]
1108
+ #
1109
+ # @!attribute [rw] variants
1110
+ # A list of the unique variants of this component.
1111
+ # @return [Array<Types::ComponentVariant>]
1112
+ #
1113
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/CreateComponentData AWS API Documentation
1114
+ #
1115
+ class CreateComponentData < Struct.new(
1116
+ :binding_properties,
1117
+ :children,
1118
+ :collection_properties,
1119
+ :component_type,
1120
+ :name,
1121
+ :overrides,
1122
+ :properties,
1123
+ :source_id,
1124
+ :tags,
1125
+ :variants)
1126
+ SENSITIVE = []
1127
+ include Aws::Structure
1128
+ end
1129
+
1130
+ # @note When making an API call, you may pass CreateComponentRequest
1131
+ # data as a hash:
1132
+ #
1133
+ # {
1134
+ # app_id: "String", # required
1135
+ # client_token: "String",
1136
+ # component_to_create: { # required
1137
+ # binding_properties: { # required
1138
+ # "String" => {
1139
+ # binding_properties: {
1140
+ # bucket: "String",
1141
+ # default_value: "String",
1142
+ # field: "String",
1143
+ # key: "String",
1144
+ # model: "String",
1145
+ # predicates: [
1146
+ # {
1147
+ # and: {
1148
+ # # recursive PredicateList
1149
+ # },
1150
+ # field: "String",
1151
+ # operand: "String",
1152
+ # operator: "String",
1153
+ # or: {
1154
+ # # recursive PredicateList
1155
+ # },
1156
+ # },
1157
+ # ],
1158
+ # user_attribute: "String",
1159
+ # },
1160
+ # default_value: "String",
1161
+ # type: "String",
1162
+ # },
1163
+ # },
1164
+ # children: [
1165
+ # {
1166
+ # children: {
1167
+ # # recursive ComponentChildList
1168
+ # },
1169
+ # component_type: "String", # required
1170
+ # name: "String", # required
1171
+ # properties: { # required
1172
+ # "String" => {
1173
+ # binding_properties: {
1174
+ # field: "String",
1175
+ # property: "String", # required
1176
+ # },
1177
+ # bindings: {
1178
+ # "String" => {
1179
+ # element: "String", # required
1180
+ # property: "String", # required
1181
+ # },
1182
+ # },
1183
+ # collection_binding_properties: {
1184
+ # field: "String",
1185
+ # property: "String", # required
1186
+ # },
1187
+ # concat: [
1188
+ # {
1189
+ # # recursive ComponentProperty
1190
+ # },
1191
+ # ],
1192
+ # condition: {
1193
+ # else: {
1194
+ # # recursive ComponentProperty
1195
+ # },
1196
+ # field: "String",
1197
+ # operand: "String",
1198
+ # operator: "String",
1199
+ # property: "String",
1200
+ # then: {
1201
+ # # recursive ComponentProperty
1202
+ # },
1203
+ # },
1204
+ # configured: false,
1205
+ # default_value: "String",
1206
+ # event: "String",
1207
+ # imported_value: "String",
1208
+ # model: "String",
1209
+ # type: "String",
1210
+ # user_attribute: "String",
1211
+ # value: "String",
1212
+ # },
1213
+ # },
1214
+ # },
1215
+ # ],
1216
+ # collection_properties: {
1217
+ # "String" => {
1218
+ # identifiers: ["String"],
1219
+ # model: "String", # required
1220
+ # predicate: {
1221
+ # and: [
1222
+ # {
1223
+ # # recursive Predicate
1224
+ # },
1225
+ # ],
1226
+ # field: "String",
1227
+ # operand: "String",
1228
+ # operator: "String",
1229
+ # or: [
1230
+ # {
1231
+ # # recursive Predicate
1232
+ # },
1233
+ # ],
1234
+ # },
1235
+ # sort: [
1236
+ # {
1237
+ # direction: "ASC", # required, accepts ASC, DESC
1238
+ # field: "String", # required
1239
+ # },
1240
+ # ],
1241
+ # },
1242
+ # },
1243
+ # component_type: "ComponentType", # required
1244
+ # name: "ComponentName", # required
1245
+ # overrides: { # required
1246
+ # "String" => {
1247
+ # "String" => "String",
1248
+ # },
1249
+ # },
1250
+ # properties: { # required
1251
+ # "String" => {
1252
+ # binding_properties: {
1253
+ # field: "String",
1254
+ # property: "String", # required
1255
+ # },
1256
+ # bindings: {
1257
+ # "String" => {
1258
+ # element: "String", # required
1259
+ # property: "String", # required
1260
+ # },
1261
+ # },
1262
+ # collection_binding_properties: {
1263
+ # field: "String",
1264
+ # property: "String", # required
1265
+ # },
1266
+ # concat: [
1267
+ # {
1268
+ # # recursive ComponentProperty
1269
+ # },
1270
+ # ],
1271
+ # condition: {
1272
+ # else: {
1273
+ # # recursive ComponentProperty
1274
+ # },
1275
+ # field: "String",
1276
+ # operand: "String",
1277
+ # operator: "String",
1278
+ # property: "String",
1279
+ # then: {
1280
+ # # recursive ComponentProperty
1281
+ # },
1282
+ # },
1283
+ # configured: false,
1284
+ # default_value: "String",
1285
+ # event: "String",
1286
+ # imported_value: "String",
1287
+ # model: "String",
1288
+ # type: "String",
1289
+ # user_attribute: "String",
1290
+ # value: "String",
1291
+ # },
1292
+ # },
1293
+ # source_id: "String",
1294
+ # tags: {
1295
+ # "TagKey" => "TagValue",
1296
+ # },
1297
+ # variants: [ # required
1298
+ # {
1299
+ # overrides: {
1300
+ # "String" => {
1301
+ # "String" => "String",
1302
+ # },
1303
+ # },
1304
+ # variant_values: {
1305
+ # "String" => "String",
1306
+ # },
1307
+ # },
1308
+ # ],
1309
+ # },
1310
+ # environment_name: "String", # required
1311
+ # }
1312
+ #
1313
+ # @!attribute [rw] app_id
1314
+ # The unique ID of the Amplify app to associate with the component.
1315
+ # @return [String]
1316
+ #
1317
+ # @!attribute [rw] client_token
1318
+ # The unique client token.
1319
+ #
1320
+ # **A suitable default value is auto-generated.** You should normally
1321
+ # not need to pass this option.
1322
+ # @return [String]
1323
+ #
1324
+ # @!attribute [rw] component_to_create
1325
+ # Represents the configuration of the component to create.
1326
+ # @return [Types::CreateComponentData]
1327
+ #
1328
+ # @!attribute [rw] environment_name
1329
+ # The name of the backend environment that is a part of the Amplify
1330
+ # app.
1331
+ # @return [String]
1332
+ #
1333
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/CreateComponentRequest AWS API Documentation
1334
+ #
1335
+ class CreateComponentRequest < Struct.new(
1336
+ :app_id,
1337
+ :client_token,
1338
+ :component_to_create,
1339
+ :environment_name)
1340
+ SENSITIVE = []
1341
+ include Aws::Structure
1342
+ end
1343
+
1344
+ # @!attribute [rw] entity
1345
+ # Describes the configuration of the new component.
1346
+ # @return [Types::Component]
1347
+ #
1348
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/CreateComponentResponse AWS API Documentation
1349
+ #
1350
+ class CreateComponentResponse < Struct.new(
1351
+ :entity)
1352
+ SENSITIVE = []
1353
+ include Aws::Structure
1354
+ end
1355
+
1356
+ # Represents all of the information that is required to create a theme.
1357
+ #
1358
+ # @note When making an API call, you may pass CreateThemeData
1359
+ # data as a hash:
1360
+ #
1361
+ # {
1362
+ # name: "ThemeName", # required
1363
+ # overrides: [
1364
+ # {
1365
+ # key: "String",
1366
+ # value: {
1367
+ # children: {
1368
+ # # recursive ThemeValuesList
1369
+ # },
1370
+ # value: "String",
1371
+ # },
1372
+ # },
1373
+ # ],
1374
+ # tags: {
1375
+ # "TagKey" => "TagValue",
1376
+ # },
1377
+ # values: [ # required
1378
+ # {
1379
+ # key: "String",
1380
+ # value: {
1381
+ # children: {
1382
+ # # recursive ThemeValuesList
1383
+ # },
1384
+ # value: "String",
1385
+ # },
1386
+ # },
1387
+ # ],
1388
+ # }
1389
+ #
1390
+ # @!attribute [rw] name
1391
+ # The name of the theme.
1392
+ # @return [String]
1393
+ #
1394
+ # @!attribute [rw] overrides
1395
+ # Describes the properties that can be overriden to customize an
1396
+ # instance of the theme.
1397
+ # @return [Array<Types::ThemeValues>]
1398
+ #
1399
+ # @!attribute [rw] tags
1400
+ # One or more key-value pairs to use when tagging the theme data.
1401
+ # @return [Hash<String,String>]
1402
+ #
1403
+ # @!attribute [rw] values
1404
+ # A list of key-value pairs that defines the properties of the theme.
1405
+ # @return [Array<Types::ThemeValues>]
1406
+ #
1407
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/CreateThemeData AWS API Documentation
1408
+ #
1409
+ class CreateThemeData < Struct.new(
1410
+ :name,
1411
+ :overrides,
1412
+ :tags,
1413
+ :values)
1414
+ SENSITIVE = []
1415
+ include Aws::Structure
1416
+ end
1417
+
1418
+ # @note When making an API call, you may pass CreateThemeRequest
1419
+ # data as a hash:
1420
+ #
1421
+ # {
1422
+ # app_id: "String", # required
1423
+ # client_token: "String",
1424
+ # environment_name: "String", # required
1425
+ # theme_to_create: { # required
1426
+ # name: "ThemeName", # required
1427
+ # overrides: [
1428
+ # {
1429
+ # key: "String",
1430
+ # value: {
1431
+ # children: {
1432
+ # # recursive ThemeValuesList
1433
+ # },
1434
+ # value: "String",
1435
+ # },
1436
+ # },
1437
+ # ],
1438
+ # tags: {
1439
+ # "TagKey" => "TagValue",
1440
+ # },
1441
+ # values: [ # required
1442
+ # {
1443
+ # key: "String",
1444
+ # value: {
1445
+ # children: {
1446
+ # # recursive ThemeValuesList
1447
+ # },
1448
+ # value: "String",
1449
+ # },
1450
+ # },
1451
+ # ],
1452
+ # },
1453
+ # }
1454
+ #
1455
+ # @!attribute [rw] app_id
1456
+ # The unique ID of the Amplify app associated with the theme.
1457
+ # @return [String]
1458
+ #
1459
+ # @!attribute [rw] client_token
1460
+ # The unique client token.
1461
+ #
1462
+ # **A suitable default value is auto-generated.** You should normally
1463
+ # not need to pass this option.
1464
+ # @return [String]
1465
+ #
1466
+ # @!attribute [rw] environment_name
1467
+ # The name of the backend environment that is a part of the Amplify
1468
+ # app.
1469
+ # @return [String]
1470
+ #
1471
+ # @!attribute [rw] theme_to_create
1472
+ # Represents the configuration of the theme to create.
1473
+ # @return [Types::CreateThemeData]
1474
+ #
1475
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/CreateThemeRequest AWS API Documentation
1476
+ #
1477
+ class CreateThemeRequest < Struct.new(
1478
+ :app_id,
1479
+ :client_token,
1480
+ :environment_name,
1481
+ :theme_to_create)
1482
+ SENSITIVE = []
1483
+ include Aws::Structure
1484
+ end
1485
+
1486
+ # @!attribute [rw] entity
1487
+ # Describes the configuration of the new theme.
1488
+ # @return [Types::Theme]
1489
+ #
1490
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/CreateThemeResponse AWS API Documentation
1491
+ #
1492
+ class CreateThemeResponse < Struct.new(
1493
+ :entity)
1494
+ SENSITIVE = []
1495
+ include Aws::Structure
1496
+ end
1497
+
1498
+ # @note When making an API call, you may pass DeleteComponentRequest
1499
+ # data as a hash:
1500
+ #
1501
+ # {
1502
+ # app_id: "String", # required
1503
+ # environment_name: "String", # required
1504
+ # id: "Uuid", # required
1505
+ # }
1506
+ #
1507
+ # @!attribute [rw] app_id
1508
+ # The unique ID of the Amplify app associated with the component to
1509
+ # delete.
1510
+ # @return [String]
1511
+ #
1512
+ # @!attribute [rw] environment_name
1513
+ # The name of the backend environment that is a part of the Amplify
1514
+ # app.
1515
+ # @return [String]
1516
+ #
1517
+ # @!attribute [rw] id
1518
+ # The unique ID of the component to delete.
1519
+ # @return [String]
1520
+ #
1521
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/DeleteComponentRequest AWS API Documentation
1522
+ #
1523
+ class DeleteComponentRequest < Struct.new(
1524
+ :app_id,
1525
+ :environment_name,
1526
+ :id)
1527
+ SENSITIVE = []
1528
+ include Aws::Structure
1529
+ end
1530
+
1531
+ # @note When making an API call, you may pass DeleteThemeRequest
1532
+ # data as a hash:
1533
+ #
1534
+ # {
1535
+ # app_id: "String", # required
1536
+ # environment_name: "String", # required
1537
+ # id: "Uuid", # required
1538
+ # }
1539
+ #
1540
+ # @!attribute [rw] app_id
1541
+ # The unique ID of the Amplify app associated with the theme to
1542
+ # delete.
1543
+ # @return [String]
1544
+ #
1545
+ # @!attribute [rw] environment_name
1546
+ # The name of the backend environment that is a part of the Amplify
1547
+ # app.
1548
+ # @return [String]
1549
+ #
1550
+ # @!attribute [rw] id
1551
+ # The unique ID of the theme to delete.
1552
+ # @return [String]
1553
+ #
1554
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/DeleteThemeRequest AWS API Documentation
1555
+ #
1556
+ class DeleteThemeRequest < Struct.new(
1557
+ :app_id,
1558
+ :environment_name,
1559
+ :id)
1560
+ SENSITIVE = []
1561
+ include Aws::Structure
1562
+ end
1563
+
1564
+ # @note When making an API call, you may pass ExchangeCodeForTokenRequest
1565
+ # data as a hash:
1566
+ #
1567
+ # {
1568
+ # provider: "figma", # required, accepts figma
1569
+ # request: { # required
1570
+ # code: "SyntheticExchangeCodeForTokenRequestBodyString", # required
1571
+ # redirect_uri: "String", # required
1572
+ # },
1573
+ # }
1574
+ #
1575
+ # @!attribute [rw] provider
1576
+ # The third-party provider for the token. The only valid value is
1577
+ # `figma`.
1578
+ # @return [String]
1579
+ #
1580
+ # @!attribute [rw] request
1581
+ # Describes the configuration of the request.
1582
+ # @return [Types::ExchangeCodeForTokenRequestBody]
1583
+ #
1584
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ExchangeCodeForTokenRequest AWS API Documentation
1585
+ #
1586
+ class ExchangeCodeForTokenRequest < Struct.new(
1587
+ :provider,
1588
+ :request)
1589
+ SENSITIVE = []
1590
+ include Aws::Structure
1591
+ end
1592
+
1593
+ # Describes the configuration of a request to exchange an access code
1594
+ # for a token.
1595
+ #
1596
+ # @note When making an API call, you may pass ExchangeCodeForTokenRequestBody
1597
+ # data as a hash:
1598
+ #
1599
+ # {
1600
+ # code: "SyntheticExchangeCodeForTokenRequestBodyString", # required
1601
+ # redirect_uri: "String", # required
1602
+ # }
1603
+ #
1604
+ # @!attribute [rw] code
1605
+ # The access code to send in the request.
1606
+ # @return [String]
1607
+ #
1608
+ # @!attribute [rw] redirect_uri
1609
+ # The location of the application that will receive the access code.
1610
+ # @return [String]
1611
+ #
1612
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ExchangeCodeForTokenRequestBody AWS API Documentation
1613
+ #
1614
+ class ExchangeCodeForTokenRequestBody < Struct.new(
1615
+ :code,
1616
+ :redirect_uri)
1617
+ SENSITIVE = [:code]
1618
+ include Aws::Structure
1619
+ end
1620
+
1621
+ # @!attribute [rw] access_token
1622
+ # The access token.
1623
+ # @return [String]
1624
+ #
1625
+ # @!attribute [rw] expires_in
1626
+ # The date and time when the new access token expires.
1627
+ # @return [Integer]
1628
+ #
1629
+ # @!attribute [rw] refresh_token
1630
+ # The token to use to refresh a previously issued access token that
1631
+ # might have expired.
1632
+ # @return [String]
1633
+ #
1634
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ExchangeCodeForTokenResponse AWS API Documentation
1635
+ #
1636
+ class ExchangeCodeForTokenResponse < Struct.new(
1637
+ :access_token,
1638
+ :expires_in,
1639
+ :refresh_token)
1640
+ SENSITIVE = [:access_token, :refresh_token]
1641
+ include Aws::Structure
1642
+ end
1643
+
1644
+ # @note When making an API call, you may pass ExportComponentsRequest
1645
+ # data as a hash:
1646
+ #
1647
+ # {
1648
+ # app_id: "String", # required
1649
+ # environment_name: "String", # required
1650
+ # }
1651
+ #
1652
+ # @!attribute [rw] app_id
1653
+ # The unique ID of the Amplify app to export components to.
1654
+ # @return [String]
1655
+ #
1656
+ # @!attribute [rw] environment_name
1657
+ # The name of the backend environment that is a part of the Amplify
1658
+ # app.
1659
+ # @return [String]
1660
+ #
1661
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ExportComponentsRequest AWS API Documentation
1662
+ #
1663
+ class ExportComponentsRequest < Struct.new(
1664
+ :app_id,
1665
+ :environment_name)
1666
+ SENSITIVE = []
1667
+ include Aws::Structure
1668
+ end
1669
+
1670
+ # @!attribute [rw] entities
1671
+ # Represents the configuration of the exported components.
1672
+ # @return [Array<Types::Component>]
1673
+ #
1674
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ExportComponentsResponse AWS API Documentation
1675
+ #
1676
+ class ExportComponentsResponse < Struct.new(
1677
+ :entities)
1678
+ SENSITIVE = []
1679
+ include Aws::Structure
1680
+ end
1681
+
1682
+ # @note When making an API call, you may pass ExportThemesRequest
1683
+ # data as a hash:
1684
+ #
1685
+ # {
1686
+ # app_id: "String", # required
1687
+ # environment_name: "String", # required
1688
+ # }
1689
+ #
1690
+ # @!attribute [rw] app_id
1691
+ # The unique ID of the Amplify app to export the themes to.
1692
+ # @return [String]
1693
+ #
1694
+ # @!attribute [rw] environment_name
1695
+ # The name of the backend environment that is part of the Amplify app.
1696
+ # @return [String]
1697
+ #
1698
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ExportThemesRequest AWS API Documentation
1699
+ #
1700
+ class ExportThemesRequest < Struct.new(
1701
+ :app_id,
1702
+ :environment_name)
1703
+ SENSITIVE = []
1704
+ include Aws::Structure
1705
+ end
1706
+
1707
+ # @!attribute [rw] entities
1708
+ # Represents the configuration of the exported themes.
1709
+ # @return [Array<Types::Theme>]
1710
+ #
1711
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ExportThemesResponse AWS API Documentation
1712
+ #
1713
+ class ExportThemesResponse < Struct.new(
1714
+ :entities)
1715
+ SENSITIVE = []
1716
+ include Aws::Structure
1717
+ end
1718
+
1719
+ # Describes how to bind a component property to form data.
1720
+ #
1721
+ # @note When making an API call, you may pass FormBindingElement
1722
+ # data as a hash:
1723
+ #
1724
+ # {
1725
+ # element: "String", # required
1726
+ # property: "String", # required
1727
+ # }
1728
+ #
1729
+ # @!attribute [rw] element
1730
+ # The name of the component to retrieve a value from.
1731
+ # @return [String]
1732
+ #
1733
+ # @!attribute [rw] property
1734
+ # The property to retrieve a value from.
1735
+ # @return [String]
1736
+ #
1737
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/FormBindingElement AWS API Documentation
1738
+ #
1739
+ class FormBindingElement < Struct.new(
1740
+ :element,
1741
+ :property)
1742
+ SENSITIVE = []
1743
+ include Aws::Structure
1744
+ end
1745
+
1746
+ # @note When making an API call, you may pass GetComponentRequest
1747
+ # data as a hash:
1748
+ #
1749
+ # {
1750
+ # app_id: "String", # required
1751
+ # environment_name: "String", # required
1752
+ # id: "Uuid", # required
1753
+ # }
1754
+ #
1755
+ # @!attribute [rw] app_id
1756
+ # The unique ID of the Amplify app.
1757
+ # @return [String]
1758
+ #
1759
+ # @!attribute [rw] environment_name
1760
+ # The name of the backend environment that is part of the Amplify app.
1761
+ # @return [String]
1762
+ #
1763
+ # @!attribute [rw] id
1764
+ # The unique ID of the component.
1765
+ # @return [String]
1766
+ #
1767
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/GetComponentRequest AWS API Documentation
1768
+ #
1769
+ class GetComponentRequest < Struct.new(
1770
+ :app_id,
1771
+ :environment_name,
1772
+ :id)
1773
+ SENSITIVE = []
1774
+ include Aws::Structure
1775
+ end
1776
+
1777
+ # @!attribute [rw] component
1778
+ # Represents the configuration settings for the component.
1779
+ # @return [Types::Component]
1780
+ #
1781
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/GetComponentResponse AWS API Documentation
1782
+ #
1783
+ class GetComponentResponse < Struct.new(
1784
+ :component)
1785
+ SENSITIVE = []
1786
+ include Aws::Structure
1787
+ end
1788
+
1789
+ # @note When making an API call, you may pass GetThemeRequest
1790
+ # data as a hash:
1791
+ #
1792
+ # {
1793
+ # app_id: "String", # required
1794
+ # environment_name: "String", # required
1795
+ # id: "Uuid", # required
1796
+ # }
1797
+ #
1798
+ # @!attribute [rw] app_id
1799
+ # The unique ID of the Amplify app.
1800
+ # @return [String]
1801
+ #
1802
+ # @!attribute [rw] environment_name
1803
+ # The name of the backend environment that is part of the Amplify app.
1804
+ # @return [String]
1805
+ #
1806
+ # @!attribute [rw] id
1807
+ # The unique ID for the theme.
1808
+ # @return [String]
1809
+ #
1810
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/GetThemeRequest AWS API Documentation
1811
+ #
1812
+ class GetThemeRequest < Struct.new(
1813
+ :app_id,
1814
+ :environment_name,
1815
+ :id)
1816
+ SENSITIVE = []
1817
+ include Aws::Structure
1818
+ end
1819
+
1820
+ # @!attribute [rw] theme
1821
+ # Represents the configuration settings for the theme.
1822
+ # @return [Types::Theme]
1823
+ #
1824
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/GetThemeResponse AWS API Documentation
1825
+ #
1826
+ class GetThemeResponse < Struct.new(
1827
+ :theme)
1828
+ SENSITIVE = []
1829
+ include Aws::Structure
1830
+ end
1831
+
1832
+ # An internal error has occurred. Please retry your request.
1833
+ #
1834
+ # @!attribute [rw] message
1835
+ # @return [String]
1836
+ #
1837
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/InternalServerException AWS API Documentation
1838
+ #
1839
+ class InternalServerException < Struct.new(
1840
+ :message)
1841
+ SENSITIVE = []
1842
+ include Aws::Structure
1843
+ end
1844
+
1845
+ # An invalid or out-of-range value was supplied for the input parameter.
1846
+ #
1847
+ # @!attribute [rw] message
1848
+ # @return [String]
1849
+ #
1850
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/InvalidParameterException AWS API Documentation
1851
+ #
1852
+ class InvalidParameterException < Struct.new(
1853
+ :message)
1854
+ SENSITIVE = []
1855
+ include Aws::Structure
1856
+ end
1857
+
1858
+ # @note When making an API call, you may pass ListComponentsRequest
1859
+ # data as a hash:
1860
+ #
1861
+ # {
1862
+ # app_id: "String", # required
1863
+ # environment_name: "String", # required
1864
+ # max_results: 1,
1865
+ # next_token: "String",
1866
+ # }
1867
+ #
1868
+ # @!attribute [rw] app_id
1869
+ # The unique ID for the Amplify app.
1870
+ # @return [String]
1871
+ #
1872
+ # @!attribute [rw] environment_name
1873
+ # The name of the backend environment that is a part of the Amplify
1874
+ # app.
1875
+ # @return [String]
1876
+ #
1877
+ # @!attribute [rw] max_results
1878
+ # The maximum number of components to retrieve.
1879
+ # @return [Integer]
1880
+ #
1881
+ # @!attribute [rw] next_token
1882
+ # The token to request the next page of results.
1883
+ # @return [String]
1884
+ #
1885
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ListComponentsRequest AWS API Documentation
1886
+ #
1887
+ class ListComponentsRequest < Struct.new(
1888
+ :app_id,
1889
+ :environment_name,
1890
+ :max_results,
1891
+ :next_token)
1892
+ SENSITIVE = []
1893
+ include Aws::Structure
1894
+ end
1895
+
1896
+ # @!attribute [rw] entities
1897
+ # The list of components for the Amplify app.
1898
+ # @return [Array<Types::ComponentSummary>]
1899
+ #
1900
+ # @!attribute [rw] next_token
1901
+ # The pagination token that's included if more results are available.
1902
+ # @return [String]
1903
+ #
1904
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ListComponentsResponse AWS API Documentation
1905
+ #
1906
+ class ListComponentsResponse < Struct.new(
1907
+ :entities,
1908
+ :next_token)
1909
+ SENSITIVE = []
1910
+ include Aws::Structure
1911
+ end
1912
+
1913
+ # @note When making an API call, you may pass ListThemesRequest
1914
+ # data as a hash:
1915
+ #
1916
+ # {
1917
+ # app_id: "String", # required
1918
+ # environment_name: "String", # required
1919
+ # max_results: 1,
1920
+ # next_token: "String",
1921
+ # }
1922
+ #
1923
+ # @!attribute [rw] app_id
1924
+ # The unique ID for the Amplify app.
1925
+ # @return [String]
1926
+ #
1927
+ # @!attribute [rw] environment_name
1928
+ # The name of the backend environment that is a part of the Amplify
1929
+ # app.
1930
+ # @return [String]
1931
+ #
1932
+ # @!attribute [rw] max_results
1933
+ # The maximum number of theme results to return in the response.
1934
+ # @return [Integer]
1935
+ #
1936
+ # @!attribute [rw] next_token
1937
+ # The token to request the next page of results.
1938
+ # @return [String]
1939
+ #
1940
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ListThemesRequest AWS API Documentation
1941
+ #
1942
+ class ListThemesRequest < Struct.new(
1943
+ :app_id,
1944
+ :environment_name,
1945
+ :max_results,
1946
+ :next_token)
1947
+ SENSITIVE = []
1948
+ include Aws::Structure
1949
+ end
1950
+
1951
+ # @!attribute [rw] entities
1952
+ # The list of themes for the Amplify app.
1953
+ # @return [Array<Types::ThemeSummary>]
1954
+ #
1955
+ # @!attribute [rw] next_token
1956
+ # The pagination token that's returned if more results are available.
1957
+ # @return [String]
1958
+ #
1959
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ListThemesResponse AWS API Documentation
1960
+ #
1961
+ class ListThemesResponse < Struct.new(
1962
+ :entities,
1963
+ :next_token)
1964
+ SENSITIVE = []
1965
+ include Aws::Structure
1966
+ end
1967
+
1968
+ # Stores information for generating Amplify DataStore queries. Use a
1969
+ # `Predicate` to retrieve a subset of the data in a collection.
1970
+ #
1971
+ # @note When making an API call, you may pass Predicate
1972
+ # data as a hash:
1973
+ #
1974
+ # {
1975
+ # and: [
1976
+ # {
1977
+ # and: {
1978
+ # # recursive PredicateList
1979
+ # },
1980
+ # field: "String",
1981
+ # operand: "String",
1982
+ # operator: "String",
1983
+ # or: {
1984
+ # # recursive PredicateList
1985
+ # },
1986
+ # },
1987
+ # ],
1988
+ # field: "String",
1989
+ # operand: "String",
1990
+ # operator: "String",
1991
+ # or: [
1992
+ # {
1993
+ # and: {
1994
+ # # recursive PredicateList
1995
+ # },
1996
+ # field: "String",
1997
+ # operand: "String",
1998
+ # operator: "String",
1999
+ # or: {
2000
+ # # recursive PredicateList
2001
+ # },
2002
+ # },
2003
+ # ],
2004
+ # }
2005
+ #
2006
+ # @!attribute [rw] and
2007
+ # A list of predicates to combine logically.
2008
+ # @return [Array<Types::Predicate>]
2009
+ #
2010
+ # @!attribute [rw] field
2011
+ # The field to query.
2012
+ # @return [String]
2013
+ #
2014
+ # @!attribute [rw] operand
2015
+ # The value to use when performing the evaluation.
2016
+ # @return [String]
2017
+ #
2018
+ # @!attribute [rw] operator
2019
+ # The operator to use to perform the evaluation.
2020
+ # @return [String]
2021
+ #
2022
+ # @!attribute [rw] or
2023
+ # A list of predicates to combine logically.
2024
+ # @return [Array<Types::Predicate>]
2025
+ #
2026
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/Predicate AWS API Documentation
2027
+ #
2028
+ class Predicate < Struct.new(
2029
+ :and,
2030
+ :field,
2031
+ :operand,
2032
+ :operator,
2033
+ :or)
2034
+ SENSITIVE = []
2035
+ include Aws::Structure
2036
+ end
2037
+
2038
+ # @note When making an API call, you may pass RefreshTokenRequest
2039
+ # data as a hash:
2040
+ #
2041
+ # {
2042
+ # provider: "figma", # required, accepts figma
2043
+ # refresh_token_body: { # required
2044
+ # token: "SyntheticRefreshTokenRequestBodyString", # required
2045
+ # },
2046
+ # }
2047
+ #
2048
+ # @!attribute [rw] provider
2049
+ # The third-party provider for the token. The only valid value is
2050
+ # `figma`.
2051
+ # @return [String]
2052
+ #
2053
+ # @!attribute [rw] refresh_token_body
2054
+ # Information about the refresh token request.
2055
+ # @return [Types::RefreshTokenRequestBody]
2056
+ #
2057
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/RefreshTokenRequest AWS API Documentation
2058
+ #
2059
+ class RefreshTokenRequest < Struct.new(
2060
+ :provider,
2061
+ :refresh_token_body)
2062
+ SENSITIVE = []
2063
+ include Aws::Structure
2064
+ end
2065
+
2066
+ # Describes a refresh token.
2067
+ #
2068
+ # @note When making an API call, you may pass RefreshTokenRequestBody
2069
+ # data as a hash:
2070
+ #
2071
+ # {
2072
+ # token: "SyntheticRefreshTokenRequestBodyString", # required
2073
+ # }
2074
+ #
2075
+ # @!attribute [rw] token
2076
+ # The token to use to refresh a previously issued access token that
2077
+ # might have expired.
2078
+ # @return [String]
2079
+ #
2080
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/RefreshTokenRequestBody AWS API Documentation
2081
+ #
2082
+ class RefreshTokenRequestBody < Struct.new(
2083
+ :token)
2084
+ SENSITIVE = [:token]
2085
+ include Aws::Structure
2086
+ end
2087
+
2088
+ # @!attribute [rw] access_token
2089
+ # The access token.
2090
+ # @return [String]
2091
+ #
2092
+ # @!attribute [rw] expires_in
2093
+ # The date and time when the new access token expires.
2094
+ # @return [Integer]
2095
+ #
2096
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/RefreshTokenResponse AWS API Documentation
2097
+ #
2098
+ class RefreshTokenResponse < Struct.new(
2099
+ :access_token,
2100
+ :expires_in)
2101
+ SENSITIVE = [:access_token]
2102
+ include Aws::Structure
2103
+ end
2104
+
2105
+ # The resource specified in the request conflicts with an existing
2106
+ # resource.
2107
+ #
2108
+ # @!attribute [rw] message
2109
+ # @return [String]
2110
+ #
2111
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ResourceConflictException AWS API Documentation
2112
+ #
2113
+ class ResourceConflictException < Struct.new(
2114
+ :message)
2115
+ SENSITIVE = []
2116
+ include Aws::Structure
2117
+ end
2118
+
2119
+ # The requested resource does not exist, or access was denied.
2120
+ #
2121
+ # @!attribute [rw] message
2122
+ # @return [String]
2123
+ #
2124
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ResourceNotFoundException AWS API Documentation
2125
+ #
2126
+ class ResourceNotFoundException < Struct.new(
2127
+ :message)
2128
+ SENSITIVE = []
2129
+ include Aws::Structure
2130
+ end
2131
+
2132
+ # You exceeded your service quota. Service quotas, also referred to as
2133
+ # limits, are the maximum number of service resources or operations for
2134
+ # your Amazon Web Services account.
2135
+ #
2136
+ # @!attribute [rw] message
2137
+ # @return [String]
2138
+ #
2139
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ServiceQuotaExceededException AWS API Documentation
2140
+ #
2141
+ class ServiceQuotaExceededException < Struct.new(
2142
+ :message)
2143
+ SENSITIVE = []
2144
+ include Aws::Structure
2145
+ end
2146
+
2147
+ # Describes how to sort the data that you bind to a component.
2148
+ #
2149
+ # @note When making an API call, you may pass SortProperty
2150
+ # data as a hash:
2151
+ #
2152
+ # {
2153
+ # direction: "ASC", # required, accepts ASC, DESC
2154
+ # field: "String", # required
2155
+ # }
2156
+ #
2157
+ # @!attribute [rw] direction
2158
+ # The direction of the sort, either ascending or descending.
2159
+ # @return [String]
2160
+ #
2161
+ # @!attribute [rw] field
2162
+ # The field to perform the sort on.
2163
+ # @return [String]
2164
+ #
2165
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/SortProperty AWS API Documentation
2166
+ #
2167
+ class SortProperty < Struct.new(
2168
+ :direction,
2169
+ :field)
2170
+ SENSITIVE = []
2171
+ include Aws::Structure
2172
+ end
2173
+
2174
+ # A theme is a collection of style settings that apply globally to the
2175
+ # components associated with an Amplify application.
2176
+ #
2177
+ # @!attribute [rw] app_id
2178
+ # The unique ID for the Amplify app associated with the theme.
2179
+ # @return [String]
2180
+ #
2181
+ # @!attribute [rw] created_at
2182
+ # The time that the theme was created.
2183
+ # @return [Time]
2184
+ #
2185
+ # @!attribute [rw] environment_name
2186
+ # The name of the backend environment that is a part of the Amplify
2187
+ # app.
2188
+ # @return [String]
2189
+ #
2190
+ # @!attribute [rw] id
2191
+ # The ID for the theme.
2192
+ # @return [String]
2193
+ #
2194
+ # @!attribute [rw] modified_at
2195
+ # The time that the theme was modified.
2196
+ # @return [Time]
2197
+ #
2198
+ # @!attribute [rw] name
2199
+ # The name of the theme.
2200
+ # @return [String]
2201
+ #
2202
+ # @!attribute [rw] overrides
2203
+ # Describes the properties that can be overriden to customize a theme.
2204
+ # @return [Array<Types::ThemeValues>]
2205
+ #
2206
+ # @!attribute [rw] tags
2207
+ # One or more key-value pairs to use when tagging the theme.
2208
+ # @return [Hash<String,String>]
2209
+ #
2210
+ # @!attribute [rw] values
2211
+ # A list of key-value pairs that defines the properties of the theme.
2212
+ # @return [Array<Types::ThemeValues>]
2213
+ #
2214
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/Theme AWS API Documentation
2215
+ #
2216
+ class Theme < Struct.new(
2217
+ :app_id,
2218
+ :created_at,
2219
+ :environment_name,
2220
+ :id,
2221
+ :modified_at,
2222
+ :name,
2223
+ :overrides,
2224
+ :tags,
2225
+ :values)
2226
+ SENSITIVE = []
2227
+ include Aws::Structure
2228
+ end
2229
+
2230
+ # Describes the basic information about a theme.
2231
+ #
2232
+ # @!attribute [rw] app_id
2233
+ # The unique ID for the app associated with the theme summary.
2234
+ # @return [String]
2235
+ #
2236
+ # @!attribute [rw] environment_name
2237
+ # The name of the backend environment that is part of the Amplify app.
2238
+ # @return [String]
2239
+ #
2240
+ # @!attribute [rw] id
2241
+ # The ID of the theme.
2242
+ # @return [String]
2243
+ #
2244
+ # @!attribute [rw] name
2245
+ # The name of the theme.
2246
+ # @return [String]
2247
+ #
2248
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ThemeSummary AWS API Documentation
2249
+ #
2250
+ class ThemeSummary < Struct.new(
2251
+ :app_id,
2252
+ :environment_name,
2253
+ :id,
2254
+ :name)
2255
+ SENSITIVE = []
2256
+ include Aws::Structure
2257
+ end
2258
+
2259
+ # Describes the configuration of a theme's properties.
2260
+ #
2261
+ # @note When making an API call, you may pass ThemeValue
2262
+ # data as a hash:
2263
+ #
2264
+ # {
2265
+ # children: [
2266
+ # {
2267
+ # key: "String",
2268
+ # value: {
2269
+ # children: {
2270
+ # # recursive ThemeValuesList
2271
+ # },
2272
+ # value: "String",
2273
+ # },
2274
+ # },
2275
+ # ],
2276
+ # value: "String",
2277
+ # }
2278
+ #
2279
+ # @!attribute [rw] children
2280
+ # A list of key-value pairs that define the theme's properties.
2281
+ # @return [Array<Types::ThemeValues>]
2282
+ #
2283
+ # @!attribute [rw] value
2284
+ # The value of a theme property.
2285
+ # @return [String]
2286
+ #
2287
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ThemeValue AWS API Documentation
2288
+ #
2289
+ class ThemeValue < Struct.new(
2290
+ :children,
2291
+ :value)
2292
+ SENSITIVE = []
2293
+ include Aws::Structure
2294
+ end
2295
+
2296
+ # A key-value pair that defines a property of a theme.
2297
+ #
2298
+ # @note When making an API call, you may pass ThemeValues
2299
+ # data as a hash:
2300
+ #
2301
+ # {
2302
+ # key: "String",
2303
+ # value: {
2304
+ # children: [
2305
+ # {
2306
+ # key: "String",
2307
+ # value: {
2308
+ # # recursive ThemeValue
2309
+ # },
2310
+ # },
2311
+ # ],
2312
+ # value: "String",
2313
+ # },
2314
+ # }
2315
+ #
2316
+ # @!attribute [rw] key
2317
+ # The name of the property.
2318
+ # @return [String]
2319
+ #
2320
+ # @!attribute [rw] value
2321
+ # The value of the property.
2322
+ # @return [Types::ThemeValue]
2323
+ #
2324
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ThemeValues AWS API Documentation
2325
+ #
2326
+ class ThemeValues < Struct.new(
2327
+ :key,
2328
+ :value)
2329
+ SENSITIVE = []
2330
+ include Aws::Structure
2331
+ end
2332
+
2333
+ # Updates and saves all of the information about a component, based on
2334
+ # component ID.
2335
+ #
2336
+ # @note When making an API call, you may pass UpdateComponentData
2337
+ # data as a hash:
2338
+ #
2339
+ # {
2340
+ # binding_properties: {
2341
+ # "String" => {
2342
+ # binding_properties: {
2343
+ # bucket: "String",
2344
+ # default_value: "String",
2345
+ # field: "String",
2346
+ # key: "String",
2347
+ # model: "String",
2348
+ # predicates: [
2349
+ # {
2350
+ # and: {
2351
+ # # recursive PredicateList
2352
+ # },
2353
+ # field: "String",
2354
+ # operand: "String",
2355
+ # operator: "String",
2356
+ # or: {
2357
+ # # recursive PredicateList
2358
+ # },
2359
+ # },
2360
+ # ],
2361
+ # user_attribute: "String",
2362
+ # },
2363
+ # default_value: "String",
2364
+ # type: "String",
2365
+ # },
2366
+ # },
2367
+ # children: [
2368
+ # {
2369
+ # children: {
2370
+ # # recursive ComponentChildList
2371
+ # },
2372
+ # component_type: "String", # required
2373
+ # name: "String", # required
2374
+ # properties: { # required
2375
+ # "String" => {
2376
+ # binding_properties: {
2377
+ # field: "String",
2378
+ # property: "String", # required
2379
+ # },
2380
+ # bindings: {
2381
+ # "String" => {
2382
+ # element: "String", # required
2383
+ # property: "String", # required
2384
+ # },
2385
+ # },
2386
+ # collection_binding_properties: {
2387
+ # field: "String",
2388
+ # property: "String", # required
2389
+ # },
2390
+ # concat: [
2391
+ # {
2392
+ # # recursive ComponentProperty
2393
+ # },
2394
+ # ],
2395
+ # condition: {
2396
+ # else: {
2397
+ # # recursive ComponentProperty
2398
+ # },
2399
+ # field: "String",
2400
+ # operand: "String",
2401
+ # operator: "String",
2402
+ # property: "String",
2403
+ # then: {
2404
+ # # recursive ComponentProperty
2405
+ # },
2406
+ # },
2407
+ # configured: false,
2408
+ # default_value: "String",
2409
+ # event: "String",
2410
+ # imported_value: "String",
2411
+ # model: "String",
2412
+ # type: "String",
2413
+ # user_attribute: "String",
2414
+ # value: "String",
2415
+ # },
2416
+ # },
2417
+ # },
2418
+ # ],
2419
+ # collection_properties: {
2420
+ # "String" => {
2421
+ # identifiers: ["String"],
2422
+ # model: "String", # required
2423
+ # predicate: {
2424
+ # and: [
2425
+ # {
2426
+ # # recursive Predicate
2427
+ # },
2428
+ # ],
2429
+ # field: "String",
2430
+ # operand: "String",
2431
+ # operator: "String",
2432
+ # or: [
2433
+ # {
2434
+ # # recursive Predicate
2435
+ # },
2436
+ # ],
2437
+ # },
2438
+ # sort: [
2439
+ # {
2440
+ # direction: "ASC", # required, accepts ASC, DESC
2441
+ # field: "String", # required
2442
+ # },
2443
+ # ],
2444
+ # },
2445
+ # },
2446
+ # component_type: "ComponentType",
2447
+ # id: "Uuid",
2448
+ # name: "ComponentName",
2449
+ # overrides: {
2450
+ # "String" => {
2451
+ # "String" => "String",
2452
+ # },
2453
+ # },
2454
+ # properties: {
2455
+ # "String" => {
2456
+ # binding_properties: {
2457
+ # field: "String",
2458
+ # property: "String", # required
2459
+ # },
2460
+ # bindings: {
2461
+ # "String" => {
2462
+ # element: "String", # required
2463
+ # property: "String", # required
2464
+ # },
2465
+ # },
2466
+ # collection_binding_properties: {
2467
+ # field: "String",
2468
+ # property: "String", # required
2469
+ # },
2470
+ # concat: [
2471
+ # {
2472
+ # # recursive ComponentProperty
2473
+ # },
2474
+ # ],
2475
+ # condition: {
2476
+ # else: {
2477
+ # # recursive ComponentProperty
2478
+ # },
2479
+ # field: "String",
2480
+ # operand: "String",
2481
+ # operator: "String",
2482
+ # property: "String",
2483
+ # then: {
2484
+ # # recursive ComponentProperty
2485
+ # },
2486
+ # },
2487
+ # configured: false,
2488
+ # default_value: "String",
2489
+ # event: "String",
2490
+ # imported_value: "String",
2491
+ # model: "String",
2492
+ # type: "String",
2493
+ # user_attribute: "String",
2494
+ # value: "String",
2495
+ # },
2496
+ # },
2497
+ # source_id: "String",
2498
+ # variants: [
2499
+ # {
2500
+ # overrides: {
2501
+ # "String" => {
2502
+ # "String" => "String",
2503
+ # },
2504
+ # },
2505
+ # variant_values: {
2506
+ # "String" => "String",
2507
+ # },
2508
+ # },
2509
+ # ],
2510
+ # }
2511
+ #
2512
+ # @!attribute [rw] binding_properties
2513
+ # The data binding information for the component's properties.
2514
+ # @return [Hash<String,Types::ComponentBindingPropertiesValue>]
2515
+ #
2516
+ # @!attribute [rw] children
2517
+ # The components that are instances of the main component.
2518
+ # @return [Array<Types::ComponentChild>]
2519
+ #
2520
+ # @!attribute [rw] collection_properties
2521
+ # The configuration for binding a component's properties to a data
2522
+ # model. Use this for a collection component.
2523
+ # @return [Hash<String,Types::ComponentDataConfiguration>]
2524
+ #
2525
+ # @!attribute [rw] component_type
2526
+ # The type of the component. This can be an Amplify custom UI
2527
+ # component or another custom component.
2528
+ # @return [String]
2529
+ #
2530
+ # @!attribute [rw] id
2531
+ # The unique ID of the component to update.
2532
+ # @return [String]
2533
+ #
2534
+ # @!attribute [rw] name
2535
+ # The name of the component to update.
2536
+ # @return [String]
2537
+ #
2538
+ # @!attribute [rw] overrides
2539
+ # Describes the properties that can be overriden to customize the
2540
+ # component.
2541
+ # @return [Hash<String,Hash<String,String>>]
2542
+ #
2543
+ # @!attribute [rw] properties
2544
+ # Describes the component's properties.
2545
+ # @return [Hash<String,Types::ComponentProperty>]
2546
+ #
2547
+ # @!attribute [rw] source_id
2548
+ # The unique ID of the component in its original source system, such
2549
+ # as Figma.
2550
+ # @return [String]
2551
+ #
2552
+ # @!attribute [rw] variants
2553
+ # A list of the unique variants of the main component being updated.
2554
+ # @return [Array<Types::ComponentVariant>]
2555
+ #
2556
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/UpdateComponentData AWS API Documentation
2557
+ #
2558
+ class UpdateComponentData < Struct.new(
2559
+ :binding_properties,
2560
+ :children,
2561
+ :collection_properties,
2562
+ :component_type,
2563
+ :id,
2564
+ :name,
2565
+ :overrides,
2566
+ :properties,
2567
+ :source_id,
2568
+ :variants)
2569
+ SENSITIVE = []
2570
+ include Aws::Structure
2571
+ end
2572
+
2573
+ # @note When making an API call, you may pass UpdateComponentRequest
2574
+ # data as a hash:
2575
+ #
2576
+ # {
2577
+ # app_id: "String", # required
2578
+ # client_token: "String",
2579
+ # environment_name: "String", # required
2580
+ # id: "Uuid", # required
2581
+ # updated_component: { # required
2582
+ # binding_properties: {
2583
+ # "String" => {
2584
+ # binding_properties: {
2585
+ # bucket: "String",
2586
+ # default_value: "String",
2587
+ # field: "String",
2588
+ # key: "String",
2589
+ # model: "String",
2590
+ # predicates: [
2591
+ # {
2592
+ # and: {
2593
+ # # recursive PredicateList
2594
+ # },
2595
+ # field: "String",
2596
+ # operand: "String",
2597
+ # operator: "String",
2598
+ # or: {
2599
+ # # recursive PredicateList
2600
+ # },
2601
+ # },
2602
+ # ],
2603
+ # user_attribute: "String",
2604
+ # },
2605
+ # default_value: "String",
2606
+ # type: "String",
2607
+ # },
2608
+ # },
2609
+ # children: [
2610
+ # {
2611
+ # children: {
2612
+ # # recursive ComponentChildList
2613
+ # },
2614
+ # component_type: "String", # required
2615
+ # name: "String", # required
2616
+ # properties: { # required
2617
+ # "String" => {
2618
+ # binding_properties: {
2619
+ # field: "String",
2620
+ # property: "String", # required
2621
+ # },
2622
+ # bindings: {
2623
+ # "String" => {
2624
+ # element: "String", # required
2625
+ # property: "String", # required
2626
+ # },
2627
+ # },
2628
+ # collection_binding_properties: {
2629
+ # field: "String",
2630
+ # property: "String", # required
2631
+ # },
2632
+ # concat: [
2633
+ # {
2634
+ # # recursive ComponentProperty
2635
+ # },
2636
+ # ],
2637
+ # condition: {
2638
+ # else: {
2639
+ # # recursive ComponentProperty
2640
+ # },
2641
+ # field: "String",
2642
+ # operand: "String",
2643
+ # operator: "String",
2644
+ # property: "String",
2645
+ # then: {
2646
+ # # recursive ComponentProperty
2647
+ # },
2648
+ # },
2649
+ # configured: false,
2650
+ # default_value: "String",
2651
+ # event: "String",
2652
+ # imported_value: "String",
2653
+ # model: "String",
2654
+ # type: "String",
2655
+ # user_attribute: "String",
2656
+ # value: "String",
2657
+ # },
2658
+ # },
2659
+ # },
2660
+ # ],
2661
+ # collection_properties: {
2662
+ # "String" => {
2663
+ # identifiers: ["String"],
2664
+ # model: "String", # required
2665
+ # predicate: {
2666
+ # and: [
2667
+ # {
2668
+ # # recursive Predicate
2669
+ # },
2670
+ # ],
2671
+ # field: "String",
2672
+ # operand: "String",
2673
+ # operator: "String",
2674
+ # or: [
2675
+ # {
2676
+ # # recursive Predicate
2677
+ # },
2678
+ # ],
2679
+ # },
2680
+ # sort: [
2681
+ # {
2682
+ # direction: "ASC", # required, accepts ASC, DESC
2683
+ # field: "String", # required
2684
+ # },
2685
+ # ],
2686
+ # },
2687
+ # },
2688
+ # component_type: "ComponentType",
2689
+ # id: "Uuid",
2690
+ # name: "ComponentName",
2691
+ # overrides: {
2692
+ # "String" => {
2693
+ # "String" => "String",
2694
+ # },
2695
+ # },
2696
+ # properties: {
2697
+ # "String" => {
2698
+ # binding_properties: {
2699
+ # field: "String",
2700
+ # property: "String", # required
2701
+ # },
2702
+ # bindings: {
2703
+ # "String" => {
2704
+ # element: "String", # required
2705
+ # property: "String", # required
2706
+ # },
2707
+ # },
2708
+ # collection_binding_properties: {
2709
+ # field: "String",
2710
+ # property: "String", # required
2711
+ # },
2712
+ # concat: [
2713
+ # {
2714
+ # # recursive ComponentProperty
2715
+ # },
2716
+ # ],
2717
+ # condition: {
2718
+ # else: {
2719
+ # # recursive ComponentProperty
2720
+ # },
2721
+ # field: "String",
2722
+ # operand: "String",
2723
+ # operator: "String",
2724
+ # property: "String",
2725
+ # then: {
2726
+ # # recursive ComponentProperty
2727
+ # },
2728
+ # },
2729
+ # configured: false,
2730
+ # default_value: "String",
2731
+ # event: "String",
2732
+ # imported_value: "String",
2733
+ # model: "String",
2734
+ # type: "String",
2735
+ # user_attribute: "String",
2736
+ # value: "String",
2737
+ # },
2738
+ # },
2739
+ # source_id: "String",
2740
+ # variants: [
2741
+ # {
2742
+ # overrides: {
2743
+ # "String" => {
2744
+ # "String" => "String",
2745
+ # },
2746
+ # },
2747
+ # variant_values: {
2748
+ # "String" => "String",
2749
+ # },
2750
+ # },
2751
+ # ],
2752
+ # },
2753
+ # }
2754
+ #
2755
+ # @!attribute [rw] app_id
2756
+ # The unique ID for the Amplify app.
2757
+ # @return [String]
2758
+ #
2759
+ # @!attribute [rw] client_token
2760
+ # The unique client token.
2761
+ #
2762
+ # **A suitable default value is auto-generated.** You should normally
2763
+ # not need to pass this option.
2764
+ # @return [String]
2765
+ #
2766
+ # @!attribute [rw] environment_name
2767
+ # The name of the backend environment that is part of the Amplify app.
2768
+ # @return [String]
2769
+ #
2770
+ # @!attribute [rw] id
2771
+ # The unique ID for the component.
2772
+ # @return [String]
2773
+ #
2774
+ # @!attribute [rw] updated_component
2775
+ # The configuration of the updated component.
2776
+ # @return [Types::UpdateComponentData]
2777
+ #
2778
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/UpdateComponentRequest AWS API Documentation
2779
+ #
2780
+ class UpdateComponentRequest < Struct.new(
2781
+ :app_id,
2782
+ :client_token,
2783
+ :environment_name,
2784
+ :id,
2785
+ :updated_component)
2786
+ SENSITIVE = []
2787
+ include Aws::Structure
2788
+ end
2789
+
2790
+ # @!attribute [rw] entity
2791
+ # Describes the configuration of the updated component.
2792
+ # @return [Types::Component]
2793
+ #
2794
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/UpdateComponentResponse AWS API Documentation
2795
+ #
2796
+ class UpdateComponentResponse < Struct.new(
2797
+ :entity)
2798
+ SENSITIVE = []
2799
+ include Aws::Structure
2800
+ end
2801
+
2802
+ # Saves the data binding information for a theme.
2803
+ #
2804
+ # @note When making an API call, you may pass UpdateThemeData
2805
+ # data as a hash:
2806
+ #
2807
+ # {
2808
+ # id: "Uuid",
2809
+ # name: "ThemeName",
2810
+ # overrides: [
2811
+ # {
2812
+ # key: "String",
2813
+ # value: {
2814
+ # children: {
2815
+ # # recursive ThemeValuesList
2816
+ # },
2817
+ # value: "String",
2818
+ # },
2819
+ # },
2820
+ # ],
2821
+ # values: [ # required
2822
+ # {
2823
+ # key: "String",
2824
+ # value: {
2825
+ # children: {
2826
+ # # recursive ThemeValuesList
2827
+ # },
2828
+ # value: "String",
2829
+ # },
2830
+ # },
2831
+ # ],
2832
+ # }
2833
+ #
2834
+ # @!attribute [rw] id
2835
+ # The unique ID of the theme to update.
2836
+ # @return [String]
2837
+ #
2838
+ # @!attribute [rw] name
2839
+ # The name of the theme to update.
2840
+ # @return [String]
2841
+ #
2842
+ # @!attribute [rw] overrides
2843
+ # Describes the properties that can be overriden to customize the
2844
+ # theme.
2845
+ # @return [Array<Types::ThemeValues>]
2846
+ #
2847
+ # @!attribute [rw] values
2848
+ # A list of key-value pairs that define the theme's properties.
2849
+ # @return [Array<Types::ThemeValues>]
2850
+ #
2851
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/UpdateThemeData AWS API Documentation
2852
+ #
2853
+ class UpdateThemeData < Struct.new(
2854
+ :id,
2855
+ :name,
2856
+ :overrides,
2857
+ :values)
2858
+ SENSITIVE = []
2859
+ include Aws::Structure
2860
+ end
2861
+
2862
+ # @note When making an API call, you may pass UpdateThemeRequest
2863
+ # data as a hash:
2864
+ #
2865
+ # {
2866
+ # app_id: "String", # required
2867
+ # client_token: "String",
2868
+ # environment_name: "String", # required
2869
+ # id: "Uuid", # required
2870
+ # updated_theme: { # required
2871
+ # id: "Uuid",
2872
+ # name: "ThemeName",
2873
+ # overrides: [
2874
+ # {
2875
+ # key: "String",
2876
+ # value: {
2877
+ # children: {
2878
+ # # recursive ThemeValuesList
2879
+ # },
2880
+ # value: "String",
2881
+ # },
2882
+ # },
2883
+ # ],
2884
+ # values: [ # required
2885
+ # {
2886
+ # key: "String",
2887
+ # value: {
2888
+ # children: {
2889
+ # # recursive ThemeValuesList
2890
+ # },
2891
+ # value: "String",
2892
+ # },
2893
+ # },
2894
+ # ],
2895
+ # },
2896
+ # }
2897
+ #
2898
+ # @!attribute [rw] app_id
2899
+ # The unique ID for the Amplify app.
2900
+ # @return [String]
2901
+ #
2902
+ # @!attribute [rw] client_token
2903
+ # The unique client token.
2904
+ #
2905
+ # **A suitable default value is auto-generated.** You should normally
2906
+ # not need to pass this option.
2907
+ # @return [String]
2908
+ #
2909
+ # @!attribute [rw] environment_name
2910
+ # The name of the backend environment that is part of the Amplify app.
2911
+ # @return [String]
2912
+ #
2913
+ # @!attribute [rw] id
2914
+ # The unique ID for the theme.
2915
+ # @return [String]
2916
+ #
2917
+ # @!attribute [rw] updated_theme
2918
+ # The configuration of the updated theme.
2919
+ # @return [Types::UpdateThemeData]
2920
+ #
2921
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/UpdateThemeRequest AWS API Documentation
2922
+ #
2923
+ class UpdateThemeRequest < Struct.new(
2924
+ :app_id,
2925
+ :client_token,
2926
+ :environment_name,
2927
+ :id,
2928
+ :updated_theme)
2929
+ SENSITIVE = []
2930
+ include Aws::Structure
2931
+ end
2932
+
2933
+ # @!attribute [rw] entity
2934
+ # Describes the configuration of the updated theme.
2935
+ # @return [Types::Theme]
2936
+ #
2937
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/UpdateThemeResponse AWS API Documentation
2938
+ #
2939
+ class UpdateThemeResponse < Struct.new(
2940
+ :entity)
2941
+ SENSITIVE = []
2942
+ include Aws::Structure
2943
+ end
2944
+
2945
+ end
2946
+ end