Class: AWSCDK::QuickSight::CfnDashboard::LayoutConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
quick_sight/cfn_dashboard.rb

Overview

The configuration that determines what the type of layout will be used on a sheet.

This is a union type structure. For this structure to be valid, only one of the attributes can be defined.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(free_form_layout: nil, grid_layout: nil, section_based_layout: nil) ⇒ LayoutConfigurationProperty

Returns a new instance of LayoutConfigurationProperty.

Parameters:



18346
18347
18348
18349
18350
18351
18352
18353
# File 'quick_sight/cfn_dashboard.rb', line 18346

def initialize(free_form_layout: nil, grid_layout: nil, section_based_layout: nil)
  @free_form_layout = free_form_layout.is_a?(Hash) ? ::AWSCDK::QuickSight::CfnDashboard::FreeFormLayoutConfigurationProperty.new(**free_form_layout.transform_keys(&:to_sym)) : free_form_layout
  Jsii::Type.check_type(@free_form_layout, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19xdWlja3NpZ2h0LkNmbkRhc2hib2FyZC5GcmVlRm9ybUxheW91dENvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "freeFormLayout") unless @free_form_layout.nil?
  @grid_layout = grid_layout.is_a?(Hash) ? ::AWSCDK::QuickSight::CfnDashboard::GridLayoutConfigurationProperty.new(**grid_layout.transform_keys(&:to_sym)) : grid_layout
  Jsii::Type.check_type(@grid_layout, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19xdWlja3NpZ2h0LkNmbkRhc2hib2FyZC5HcmlkTGF5b3V0Q29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "gridLayout") unless @grid_layout.nil?
  @section_based_layout = section_based_layout.is_a?(Hash) ? ::AWSCDK::QuickSight::CfnDashboard::SectionBasedLayoutConfigurationProperty.new(**section_based_layout.transform_keys(&:to_sym)) : section_based_layout
  Jsii::Type.check_type(@section_based_layout, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19xdWlja3NpZ2h0LkNmbkRhc2hib2FyZC5TZWN0aW9uQmFzZWRMYXlvdXRDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "sectionBasedLayout") unless @section_based_layout.nil?
end

Instance Attribute Details

#free_form_layoutAWSCDK::IResolvable, ... (readonly)

A free-form is optimized for a fixed width and has more control over the exact placement of layout elements.



18359
18360
18361
# File 'quick_sight/cfn_dashboard.rb', line 18359

def free_form_layout
  @free_form_layout
end

#grid_layoutAWSCDK::IResolvable, ... (readonly)

A type of layout that can be used on a sheet.

In a grid layout, visuals snap to a grid with standard spacing and alignment. Dashboards are displayed as designed, with options to fit to screen or view at actual size. A grid layout can be configured to behave in one of two ways when the viewport is resized: FIXED or RESPONSIVE .



18366
18367
18368
# File 'quick_sight/cfn_dashboard.rb', line 18366

def grid_layout
  @grid_layout
end

#section_based_layoutAWSCDK::IResolvable, ... (readonly)

A section based layout organizes visuals into multiple sections and has customized header, footer and page break.



18371
18372
18373
# File 'quick_sight/cfn_dashboard.rb', line 18371

def section_based_layout
  @section_based_layout
end

Class Method Details

.jsii_propertiesObject



18373
18374
18375
18376
18377
18378
18379
# File 'quick_sight/cfn_dashboard.rb', line 18373

def self.jsii_properties
  {
    :free_form_layout => "freeFormLayout",
    :grid_layout => "gridLayout",
    :section_based_layout => "sectionBasedLayout",
  }
end

Instance Method Details

#to_jsiiObject



18381
18382
18383
18384
18385
18386
18387
18388
18389
# File 'quick_sight/cfn_dashboard.rb', line 18381

def to_jsii
  result = {}
  result.merge!({
    "freeFormLayout" => @free_form_layout,
    "gridLayout" => @grid_layout,
    "sectionBasedLayout" => @section_based_layout,
  })
  result.compact
end