Class: AWSCDK::QuickSight::CfnThemeProps

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

Overview

Properties for defining a CfnTheme.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(aws_account_id:, base_theme_id:, configuration:, name:, theme_id:, permissions: nil, tags: nil, version_description: nil) ⇒ CfnThemeProps

Returns a new instance of CfnThemeProps.

Parameters:

  • aws_account_id (String)

    The ID of the AWS account where you want to store the new theme.

  • base_theme_id (String)

    The ID of the theme that a custom theme will inherit from.

  • configuration (AWSCDK::IResolvable, AWSCDK::QuickSight::CfnTheme::ThemeConfigurationProperty)

    The theme configuration, which contains the theme display properties.

  • name (String)

    A display name for the theme.

  • theme_id (String)

    An ID for the theme that you want to create.

  • permissions (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::QuickSight::CfnTheme::ResourcePermissionProperty>, nil) (defaults to: nil)

    A valid grouping of resource permissions to apply to the new theme.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    A map of the key-value pairs for the resource tag or tags that you want to add to the resource.

  • version_description (String, nil) (defaults to: nil)

    A description of the first version of the theme that you're creating.



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'quick_sight/cfn_theme_props.rb', line 17

def initialize(aws_account_id:, base_theme_id:, configuration:, name:, theme_id:, permissions: nil, tags: nil, version_description: nil)
  @aws_account_id = 
  Jsii::Type.check_type(@aws_account_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "awsAccountId")
  @base_theme_id = base_theme_id
  Jsii::Type.check_type(@base_theme_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "baseThemeId")
  @configuration = configuration.is_a?(Hash) ? ::AWSCDK::QuickSight::CfnTheme::ThemeConfigurationProperty.new(**configuration.transform_keys(&:to_sym)) : configuration
  Jsii::Type.check_type(@configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19xdWlja3NpZ2h0LkNmblRoZW1lLlRoZW1lQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "configuration")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @theme_id = theme_id
  Jsii::Type.check_type(@theme_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "themeId")
  @permissions = permissions
  Jsii::Type.check_type(@permissions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfcXVpY2tzaWdodC5DZm5UaGVtZS5SZXNvdXJjZVBlcm1pc3Npb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "permissions") unless @permissions.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
  @version_description = version_description
  Jsii::Type.check_type(@version_description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "versionDescription") unless @version_description.nil?
end

Instance Attribute Details

#aws_account_idString (readonly)

The ID of the AWS account where you want to store the new theme.



40
41
42
# File 'quick_sight/cfn_theme_props.rb', line 40

def 
  @aws_account_id
end

#base_theme_idString (readonly)

The ID of the theme that a custom theme will inherit from.

All themes inherit from one of the starting themes defined by Amazon Quick Sight. For a list of the starting themes, use ListThemes or choose Themes from within an analysis.



47
48
49
# File 'quick_sight/cfn_theme_props.rb', line 47

def base_theme_id
  @base_theme_id
end

#configurationAWSCDK::IResolvable, AWSCDK::QuickSight::CfnTheme::ThemeConfigurationProperty (readonly)

The theme configuration, which contains the theme display properties.



52
53
54
# File 'quick_sight/cfn_theme_props.rb', line 52

def configuration
  @configuration
end

#nameString (readonly)

A display name for the theme.



57
58
59
# File 'quick_sight/cfn_theme_props.rb', line 57

def name
  @name
end

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

A valid grouping of resource permissions to apply to the new theme.



69
70
71
# File 'quick_sight/cfn_theme_props.rb', line 69

def permissions
  @permissions
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

A map of the key-value pairs for the resource tag or tags that you want to add to the resource.



74
75
76
# File 'quick_sight/cfn_theme_props.rb', line 74

def tags
  @tags
end

#theme_idString (readonly)

An ID for the theme that you want to create.

The theme ID is unique per AWS Region in each AWS account.



64
65
66
# File 'quick_sight/cfn_theme_props.rb', line 64

def theme_id
  @theme_id
end

#version_descriptionString? (readonly)

A description of the first version of the theme that you're creating.

Every time UpdateTheme is called, a new version is created. Each version of the theme has a description of the version in the VersionDescription field.



81
82
83
# File 'quick_sight/cfn_theme_props.rb', line 81

def version_description
  @version_description
end

Class Method Details

.jsii_propertiesObject



83
84
85
86
87
88
89
90
91
92
93
94
# File 'quick_sight/cfn_theme_props.rb', line 83

def self.jsii_properties
  {
    :aws_account_id => "awsAccountId",
    :base_theme_id => "baseThemeId",
    :configuration => "configuration",
    :name => "name",
    :theme_id => "themeId",
    :permissions => "permissions",
    :tags => "tags",
    :version_description => "versionDescription",
  }
end

Instance Method Details

#to_jsiiObject



96
97
98
99
100
101
102
103
104
105
106
107
108
109
# File 'quick_sight/cfn_theme_props.rb', line 96

def to_jsii
  result = {}
  result.merge!({
    "awsAccountId" => @aws_account_id,
    "baseThemeId" => @base_theme_id,
    "configuration" => @configuration,
    "name" => @name,
    "themeId" => @theme_id,
    "permissions" => @permissions,
    "tags" => @tags,
    "versionDescription" => @version_description,
  })
  result.compact
end