Skip to content

API Reference

Structs

ArrowFormat

Theme arrow format definition.

Initializer

from aws.pdk.aws_arch import aws_arch

aws_arch.ArrowFormat(
  color: typing.Union[str, bool],
  head: str,
  style: str,
  tail: str,
  width: typing.Union[int, float]
)

Properties

Name Type Description
color typing.Union[str, bool] No description.
head str No description.
style str No description.
tail str No description.
width typing.Union[int, float] No description.

colorRequired
color: typing.Union[str, bool]
  • Type: typing.Union[str, bool]

headRequired
head: str
  • Type: str

styleRequired
style: str
  • Type: str

tailRequired
tail: str
  • Type: str

widthRequired
width: typing.Union[int, float]
  • Type: typing.Union[int, float]

AwsCategoryDefinition

Category definition.

Initializer

from aws.pdk.aws_arch import aws_arch

aws_arch.AwsCategoryDefinition(
  fill_color: str,
  gradient_color: str,
  id: str,
  name: str,
  font_color: str = None,
  variants: typing.List[str] = None
)

Properties

Name Type Description
fill_color str No description.
gradient_color str No description.
id str No description.
name str No description.
font_color str No description.
variants typing.List[str] No description.

fill_colorRequired
fill_color: str
  • Type: str

gradient_colorRequired
gradient_color: str
  • Type: str

idRequired
id: str
  • Type: str

nameRequired
name: str
  • Type: str

font_colorOptional
font_color: str
  • Type: str

variantsOptional
variants: typing.List[str]
  • Type: typing.List[str]

AwsDrawioResourceIconStyle

Drawio resource icon style definition for AWS Resources.

Initializer

import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsDrawioResourceIconStyle(
  align: str,
  aspect: str,
  dashed: typing.Union[int, float],
  font_size: typing.Union[int, float],
  font_style: typing.Union[str, typing.Union[int, float]],
  gradient_direction: str,
  html: typing.Union[int, float],
  outline_connect: typing.Union[int, float],
  stroke_color: str,
  vertical_align: str,
  vertical_label_position: str,
  pointer_event: typing.Union[int, float] = None,
  fill_color: str,
  font_color: str,
  gradient_color: str,
  res_icon: ShapeNames,
  shape: DrawioAws4ParentShapes
)

Properties

Name Type Description
align str No description.
aspect str No description.
dashed typing.Union[int, float] No description.
font_size typing.Union[int, float] No description.
font_style typing.Union[str, typing.Union[int, float]] No description.
gradient_direction str No description.
html typing.Union[int, float] No description.
outline_connect typing.Union[int, float] No description.
stroke_color str No description.
vertical_align str No description.
vertical_label_position str No description.
pointer_event typing.Union[int, float] No description.
fill_color str No description.
font_color str No description.
gradient_color str No description.
res_icon aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames No description.
shape aws.pdk.aws_arch.aws_arch.DrawioAws4ParentShapes No description.

alignRequired
align: str
  • Type: str

aspectRequired
aspect: str
  • Type: str

dashedRequired
dashed: typing.Union[int, float]
  • Type: typing.Union[int, float]

font_sizeRequired
font_size: typing.Union[int, float]
  • Type: typing.Union[int, float]

font_styleRequired
font_style: typing.Union[str, typing.Union[int, float]]
  • Type: typing.Union[str, typing.Union[int, float]]

gradient_directionRequired
gradient_direction: str
  • Type: str

htmlRequired
html: typing.Union[int, float]
  • Type: typing.Union[int, float]

outline_connectRequired
outline_connect: typing.Union[int, float]
  • Type: typing.Union[int, float]

stroke_colorRequired
stroke_color: str
  • Type: str

vertical_alignRequired
vertical_align: str
  • Type: str

vertical_label_positionRequired
vertical_label_position: str
  • Type: str

pointer_eventOptional
pointer_event: typing.Union[int, float]
  • Type: typing.Union[int, float]

fill_colorRequired
fill_color: str
  • Type: str

font_colorRequired
font_color: str
  • Type: str

gradient_colorRequired
gradient_color: str
  • Type: str

res_iconRequired
res_icon: ShapeNames
  • Type: aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames

shapeRequired
shape: DrawioAws4ParentShapes
  • Type: aws.pdk.aws_arch.aws_arch.DrawioAws4ParentShapes

AwsDrawioShapeStyle

Drawio shape based style definition.

Initializer

import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsDrawioShapeStyle(
  align: str,
  aspect: str,
  dashed: typing.Union[int, float],
  font_size: typing.Union[int, float],
  font_style: typing.Union[str, typing.Union[int, float]],
  gradient_direction: str,
  html: typing.Union[int, float],
  outline_connect: typing.Union[int, float],
  stroke_color: str,
  vertical_align: str,
  vertical_label_position: str,
  pointer_event: typing.Union[int, float] = None,
  fill_color: str,
  font_color: str,
  gradient_color: str,
  shape: ShapeNames
)

Properties

Name Type Description
align str No description.
aspect str No description.
dashed typing.Union[int, float] No description.
font_size typing.Union[int, float] No description.
font_style typing.Union[str, typing.Union[int, float]] No description.
gradient_direction str No description.
html typing.Union[int, float] No description.
outline_connect typing.Union[int, float] No description.
stroke_color str No description.
vertical_align str No description.
vertical_label_position str No description.
pointer_event typing.Union[int, float] No description.
fill_color str No description.
font_color str No description.
gradient_color str No description.
shape aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames No description.

alignRequired
align: str
  • Type: str

aspectRequired
aspect: str
  • Type: str

dashedRequired
dashed: typing.Union[int, float]
  • Type: typing.Union[int, float]

font_sizeRequired
font_size: typing.Union[int, float]
  • Type: typing.Union[int, float]

font_styleRequired
font_style: typing.Union[str, typing.Union[int, float]]
  • Type: typing.Union[str, typing.Union[int, float]]

gradient_directionRequired
gradient_direction: str
  • Type: str

htmlRequired
html: typing.Union[int, float]
  • Type: typing.Union[int, float]

outline_connectRequired
outline_connect: typing.Union[int, float]
  • Type: typing.Union[int, float]

stroke_colorRequired
stroke_color: str
  • Type: str

vertical_alignRequired
vertical_align: str
  • Type: str

vertical_label_positionRequired
vertical_label_position: str
  • Type: str

pointer_eventOptional
pointer_event: typing.Union[int, float]
  • Type: typing.Union[int, float]

fill_colorRequired
fill_color: str
  • Type: str

font_colorRequired
font_color: str
  • Type: str

gradient_colorRequired
gradient_color: str
  • Type: str

shapeRequired
shape: ShapeNames
  • Type: aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames

DrawioAwsResourceIconStyleBase

Based style definition for drawio aws resource icon.

Initializer

from aws.pdk.aws_arch import aws_arch

aws_arch.DrawioAwsResourceIconStyleBase(
  align: str,
  aspect: str,
  dashed: typing.Union[int, float],
  font_size: typing.Union[int, float],
  font_style: typing.Union[str, typing.Union[int, float]],
  gradient_direction: str,
  html: typing.Union[int, float],
  outline_connect: typing.Union[int, float],
  stroke_color: str,
  vertical_align: str,
  vertical_label_position: str,
  pointer_event: typing.Union[int, float] = None,
  fill_color: str,
  font_color: str,
  gradient_color: str
)

Properties

Name Type Description
align str No description.
aspect str No description.
dashed typing.Union[int, float] No description.
font_size typing.Union[int, float] No description.
font_style typing.Union[str, typing.Union[int, float]] No description.
gradient_direction str No description.
html typing.Union[int, float] No description.
outline_connect typing.Union[int, float] No description.
stroke_color str No description.
vertical_align str No description.
vertical_label_position str No description.
pointer_event typing.Union[int, float] No description.
fill_color str No description.
font_color str No description.
gradient_color str No description.

alignRequired
align: str
  • Type: str

aspectRequired
aspect: str
  • Type: str

dashedRequired
dashed: typing.Union[int, float]
  • Type: typing.Union[int, float]

font_sizeRequired
font_size: typing.Union[int, float]
  • Type: typing.Union[int, float]

font_styleRequired
font_style: typing.Union[str, typing.Union[int, float]]
  • Type: typing.Union[str, typing.Union[int, float]]

gradient_directionRequired
gradient_direction: str
  • Type: str

htmlRequired
html: typing.Union[int, float]
  • Type: typing.Union[int, float]

outline_connectRequired
outline_connect: typing.Union[int, float]
  • Type: typing.Union[int, float]

stroke_colorRequired
stroke_color: str
  • Type: str

vertical_alignRequired
vertical_align: str
  • Type: str

vertical_label_positionRequired
vertical_label_position: str
  • Type: str

pointer_eventOptional
pointer_event: typing.Union[int, float]
  • Type: typing.Union[int, float]

fill_colorRequired
fill_color: str
  • Type: str

font_colorRequired
font_color: str
  • Type: str

gradient_colorRequired
gradient_color: str
  • Type: str

DrawioAwsShapeStyleBase

Base definition of drawio aws shape style.

Initializer

from aws.pdk.aws_arch import aws_arch

aws_arch.DrawioAwsShapeStyleBase(
  align: str,
  aspect: str,
  dashed: typing.Union[int, float],
  font_size: typing.Union[int, float],
  font_style: typing.Union[str, typing.Union[int, float]],
  gradient_direction: str,
  html: typing.Union[int, float],
  outline_connect: typing.Union[int, float],
  stroke_color: str,
  vertical_align: str,
  vertical_label_position: str,
  pointer_event: typing.Union[int, float] = None
)

Properties

Name Type Description
align str No description.
aspect str No description.
dashed typing.Union[int, float] No description.
font_size typing.Union[int, float] No description.
font_style typing.Union[str, typing.Union[int, float]] No description.
gradient_direction str No description.
html typing.Union[int, float] No description.
outline_connect typing.Union[int, float] No description.
stroke_color str No description.
vertical_align str No description.
vertical_label_position str No description.
pointer_event typing.Union[int, float] No description.

alignRequired
align: str
  • Type: str

aspectRequired
aspect: str
  • Type: str

dashedRequired
dashed: typing.Union[int, float]
  • Type: typing.Union[int, float]

font_sizeRequired
font_size: typing.Union[int, float]
  • Type: typing.Union[int, float]

font_styleRequired
font_style: typing.Union[str, typing.Union[int, float]]
  • Type: typing.Union[str, typing.Union[int, float]]

gradient_directionRequired
gradient_direction: str
  • Type: str

htmlRequired
html: typing.Union[int, float]
  • Type: typing.Union[int, float]

outline_connectRequired
outline_connect: typing.Union[int, float]
  • Type: typing.Union[int, float]

stroke_colorRequired
stroke_color: str
  • Type: str

vertical_alignRequired
vertical_align: str
  • Type: str

vertical_label_positionRequired
vertical_label_position: str
  • Type: str

pointer_eventOptional
pointer_event: typing.Union[int, float]
  • Type: typing.Union[int, float]

GroupFormat

Theme group format definition.

Initializer

from aws.pdk.aws_arch import aws_arch

aws_arch.GroupFormat(
  bgcolor: typing.Union[str, bool],
  border_color: typing.Union[str, bool],
  border_style: str,
  color: typing.Union[str, bool],
  icon_png: str = None,
  label_location: str = None
)

Properties

Name Type Description
bgcolor typing.Union[str, bool] No description.
border_color typing.Union[str, bool] No description.
border_style str No description.
color typing.Union[str, bool] No description.
icon_png str No description.
label_location str No description.

bgcolorRequired
bgcolor: typing.Union[str, bool]
  • Type: typing.Union[str, bool]

border_colorRequired
border_color: typing.Union[str, bool]
  • Type: typing.Union[str, bool]

border_styleRequired
border_style: str
  • Type: str

colorRequired
color: typing.Union[str, bool]
  • Type: typing.Union[str, bool]

icon_pngOptional
icon_png: str
  • Type: str

label_locationOptional
label_location: str
  • Type: str

ParsedAssetKey

Parsed asset key.

Initializer

import aws.pdk.aws_arch

aws.pdk.aws_arch.ParsedAssetKey(
  asset_key: str,
  basename: str,
  category: str,
  instance_type: str = None,
  iot_thing: str = None,
  resource: str = None,
  service: str = None
)

Properties

Name Type Description
asset_key str Reference to the full key that was parsed.
basename str The last segment of the key (which is the nested icon).
category str Category id.
instance_type str The instance type if key is for an ec2 instance.
iot_thing str The iot thing if key is for an iot thing.
resource str Resource id if key is for a resource.
service str Service id if key is partitioned by resource.

asset_keyRequired
asset_key: str
  • Type: str

Reference to the full key that was parsed.


basenameRequired
basename: str
  • Type: str

The last segment of the key (which is the nested icon).

For instances and things this includes the dir prefix.


categoryRequired
category: str
  • Type: str

Category id.


instance_typeOptional
instance_type: str
  • Type: str

The instance type if key is for an ec2 instance.


iot_thingOptional
iot_thing: str
  • Type: str

The iot thing if key is for an iot thing.


resourceOptional
resource: str
  • Type: str

Resource id if key is for a resource.


serviceOptional
service: str
  • Type: str

Service id if key is partitioned by resource.


ParsedAssetKey

Parsed asset key.

Initializer

from aws.pdk.aws_arch import aws_arch

aws_arch.ParsedAssetKey(
  asset_key: str,
  basename: str,
  category: str,
  instance_type: str = None,
  iot_thing: str = None,
  resource: str = None,
  service: str = None
)

Properties

Name Type Description
asset_key str Reference to the full key that was parsed.
basename str The last segment of the key (which is the nested icon).
category str Category id.
instance_type str The instance type if key is for an ec2 instance.
iot_thing str The iot thing if key is for an iot thing.
resource str Resource id if key is for a resource.
service str Service id if key is partitioned by resource.

asset_keyRequired
asset_key: str
  • Type: str

Reference to the full key that was parsed.


basenameRequired
basename: str
  • Type: str

The last segment of the key (which is the nested icon).

For instances and things this includes the dir prefix.


categoryRequired
category: str
  • Type: str

Category id.


instance_typeOptional
instance_type: str
  • Type: str

The instance type if key is for an ec2 instance.


iot_thingOptional
iot_thing: str
  • Type: str

The iot thing if key is for an iot thing.


resourceOptional
resource: str
  • Type: str

Resource id if key is for a resource.


serviceOptional
service: str
  • Type: str

Service id if key is partitioned by resource.


Theme

Theme definition.

Initializer

from aws.pdk.aws_arch import aws_arch

aws_arch.Theme(
  arrows: ThemeArrows,
  backgrounds: ThemeBackgrounds,
  groups: ThemeGroups,
  id: str,
  text: ThemeText
)

Properties

Name Type Description
arrows aws.pdk.aws_arch.aws_arch.ThemeArrows No description.
backgrounds aws.pdk.aws_arch.aws_arch.ThemeBackgrounds No description.
groups aws.pdk.aws_arch.aws_arch.ThemeGroups No description.
id str No description.
text aws.pdk.aws_arch.aws_arch.ThemeText No description.

arrowsRequired
arrows: ThemeArrows
  • Type: aws.pdk.aws_arch.aws_arch.ThemeArrows

backgroundsRequired
backgrounds: ThemeBackgrounds
  • Type: aws.pdk.aws_arch.aws_arch.ThemeBackgrounds

groupsRequired
groups: ThemeGroups
  • Type: aws.pdk.aws_arch.aws_arch.ThemeGroups

idRequired
id: str
  • Type: str

textRequired
text: ThemeText
  • Type: aws.pdk.aws_arch.aws_arch.ThemeText

ThemeArrows

Theme arrow dictionary.

Initializer

from aws.pdk.aws_arch import aws_arch

aws_arch.ThemeArrows(
  child: ArrowFormat,
  default: ArrowFormat,
  dependency: ArrowFormat,
  reference: ArrowFormat
)

Properties

Name Type Description
child aws.pdk.aws_arch.aws_arch.ArrowFormat No description.
default aws.pdk.aws_arch.aws_arch.ArrowFormat No description.
dependency aws.pdk.aws_arch.aws_arch.ArrowFormat No description.
reference aws.pdk.aws_arch.aws_arch.ArrowFormat No description.

childRequired
child: ArrowFormat
  • Type: aws.pdk.aws_arch.aws_arch.ArrowFormat

defaultRequired
default: ArrowFormat
  • Type: aws.pdk.aws_arch.aws_arch.ArrowFormat

dependencyRequired
dependency: ArrowFormat
  • Type: aws.pdk.aws_arch.aws_arch.ArrowFormat

referenceRequired
reference: ArrowFormat
  • Type: aws.pdk.aws_arch.aws_arch.ArrowFormat

ThemeBackgrounds

Theme background dictionary.

Initializer

from aws.pdk.aws_arch import aws_arch

aws_arch.ThemeBackgrounds(
  base: str,
  generic: str,
  private: str,
  public: str
)

Properties

Name Type Description
base str No description.
generic str No description.
private str No description.
public str No description.

baseRequired
base: str
  • Type: str

genericRequired
generic: str
  • Type: str

privateRequired
private: str
  • Type: str

publicRequired
public: str
  • Type: str

ThemeGroups

Theme group dicionary.

Initializer

from aws.pdk.aws_arch import aws_arch

aws_arch.ThemeGroups(
  auto_scaling_group: GroupFormat,
  availability_zone: GroupFormat,
  aws_account: GroupFormat,
  aws_io_t_greengrass: GroupFormat,
  aws_io_t_greengrass_deployment: GroupFormat,
  aws_step_functions_workflow: GroupFormat,
  cloud: GroupFormat,
  cloud_alt: GroupFormat,
  corporate_data_center: GroupFormat,
  ec2_instance_contents: GroupFormat,
  elastic_beanstalk_container: GroupFormat,
  generic: GroupFormat,
  generic_alt: GroupFormat,
  private_subnet: GroupFormat,
  public_subnet: GroupFormat,
  region: GroupFormat,
  security_group: GroupFormat,
  server_contents: GroupFormat,
  spot_fleet: GroupFormat,
  vpc: GroupFormat
)

Properties

Name Type Description
auto_scaling_group aws.pdk.aws_arch.aws_arch.GroupFormat No description.
availability_zone aws.pdk.aws_arch.aws_arch.GroupFormat No description.
aws_account aws.pdk.aws_arch.aws_arch.GroupFormat No description.
aws_io_t_greengrass aws.pdk.aws_arch.aws_arch.GroupFormat No description.
aws_io_t_greengrass_deployment aws.pdk.aws_arch.aws_arch.GroupFormat No description.
aws_step_functions_workflow aws.pdk.aws_arch.aws_arch.GroupFormat No description.
cloud aws.pdk.aws_arch.aws_arch.GroupFormat No description.
cloud_alt aws.pdk.aws_arch.aws_arch.GroupFormat No description.
corporate_data_center aws.pdk.aws_arch.aws_arch.GroupFormat No description.
ec2_instance_contents aws.pdk.aws_arch.aws_arch.GroupFormat No description.
elastic_beanstalk_container aws.pdk.aws_arch.aws_arch.GroupFormat No description.
generic aws.pdk.aws_arch.aws_arch.GroupFormat No description.
generic_alt aws.pdk.aws_arch.aws_arch.GroupFormat No description.
private_subnet aws.pdk.aws_arch.aws_arch.GroupFormat No description.
public_subnet aws.pdk.aws_arch.aws_arch.GroupFormat No description.
region aws.pdk.aws_arch.aws_arch.GroupFormat No description.
security_group aws.pdk.aws_arch.aws_arch.GroupFormat No description.
server_contents aws.pdk.aws_arch.aws_arch.GroupFormat No description.
spot_fleet aws.pdk.aws_arch.aws_arch.GroupFormat No description.
vpc aws.pdk.aws_arch.aws_arch.GroupFormat No description.

auto_scaling_groupRequired
auto_scaling_group: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

availability_zoneRequired
availability_zone: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

aws_accountRequired
aws_account: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

aws_io_t_greengrassRequired
aws_io_t_greengrass: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

aws_io_t_greengrass_deploymentRequired
aws_io_t_greengrass_deployment: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

aws_step_functions_workflowRequired
aws_step_functions_workflow: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

cloudRequired
cloud: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

cloud_altRequired
cloud_alt: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

corporate_data_centerRequired
corporate_data_center: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

ec2_instance_contentsRequired
ec2_instance_contents: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

elastic_beanstalk_containerRequired
elastic_beanstalk_container: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

genericRequired
generic: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

generic_altRequired
generic_alt: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

private_subnetRequired
private_subnet: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

public_subnetRequired
public_subnet: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

regionRequired
region: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

security_groupRequired
security_group: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

server_contentsRequired
server_contents: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

spot_fleetRequired
spot_fleet: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

vpcRequired
vpc: GroupFormat
  • Type: aws.pdk.aws_arch.aws_arch.GroupFormat

ThemeText

Theme text dictionary.

Initializer

from aws.pdk.aws_arch import aws_arch

aws_arch.ThemeText(
  default: str,
  primary: str,
  secondary: str,
  tertiary: str
)

Properties

Name Type Description
default str No description.
primary str No description.
secondary str No description.
tertiary str No description.

defaultRequired
default: str
  • Type: str

primaryRequired
primary: str
  • Type: str

secondaryRequired
secondary: str
  • Type: str

tertiaryRequired
tertiary: str
  • Type: str

Classes

AwsArchitecture

AwsArchitecture provides an interface for retrieving the inferred normalization between @aws-cdk/cfnspec and AWS Architecture Icons systems for all CloudFormation "services" and "resources".

Static Functions

Name Description
format_asset_path Gets formatted asset path including extension and theme.
get_category Get specific category based on id.
get_instance_type_icon Get icon for EC2 instance type.
get_rds_instance_type_icon Get icon for RDS instance type.
get_resource Get resource based on Cfn Resource Type (eg: AWS::S3::Bucket).
get_service Get specific service based on identifier (eg: S3, AWS::S3, AWS::S3::Bucket).
parse_asset_path Parse assets path into part descriptor.
resolve_asset_path Resolve relative asset path to absolute asset path.
resolve_asset_svg_data_url Resolve relative asset path as SVG Data URL.

format_asset_path
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsArchitecture.format_asset_path(
  qualified_asset_key: str,
  format: str,
  theme: str = None
)

Gets formatted asset path including extension and theme.

qualified_asset_keyRequired
  • Type: str

The qualified asset key (eg: compute/ec2/service_icon, storage/s3/bucket).


formatRequired
  • Type: str

The format to return (eg: png, svg).


themeOptional
  • Type: str

(Optional) The theme to use, if not specific or now matching asset for the them, the default theme is used.


get_category
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsArchitecture.get_category(
  category: str
)

Get specific category based on id.

{@link AwsCategory.getCategory }

categoryRequired
  • Type: str

get_instance_type_icon
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsArchitecture.get_instance_type_icon(
  instance_type: str,
  format: str = None,
  theme: str = None
)

Get icon for EC2 instance type.

instance_typeRequired
  • Type: str

The {@link AwsAsset.InstanceType} to get icon for.


formatOptional
  • Type: str

The format of icon.


themeOptional
  • Type: str

Optional theme.


get_rds_instance_type_icon
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsArchitecture.get_rds_instance_type_icon(
  instance_type: str,
  format: str = None,
  theme: str = None
)

Get icon for RDS instance type.

instance_typeRequired
  • Type: str

The {@link AwsAsset.RdsInstanceType} to get icon for.


formatOptional
  • Type: str

The format of icon.


themeOptional
  • Type: str

Optional theme.


get_resource
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsArchitecture.get_resource(
  cfn_type: str
)

Get resource based on Cfn Resource Type (eg: AWS::S3::Bucket).

{@link AwsResource.getResource }

cfn_typeRequired
  • Type: str

get_service
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsArchitecture.get_service(
  identifier: str
)

Get specific service based on identifier (eg: S3, AWS::S3, AWS::S3::Bucket).

{@link AwsSerfice.getService }

identifierRequired
  • Type: str

parse_asset_path
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsArchitecture.parse_asset_path(
  asset_path: str
)

Parse assets path into part descriptor.

asset_pathRequired
  • Type: str

Absolute or relative asset file path to parse.


resolve_asset_path
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsArchitecture.resolve_asset_path(
  asset_path: str
)

Resolve relative asset path to absolute asset path.

asset_pathRequired
  • Type: str

The relative asset path to resolve.


resolve_asset_svg_data_url
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsArchitecture.resolve_asset_svg_data_url(
  svg_asset_path: str
)

Resolve relative asset path as SVG Data URL.

data:image/svg+xml;base64,...

svg_asset_pathRequired
  • Type: str

The relative path of svg asset to resolve.


Properties

Name Type Description
asset_directory str The absolute directory where AWS Architecture Icons are stored and retrieved.
categories typing.Mapping[AwsCategory] Get all categories.
resources typing.Mapping[AwsResource] Get all resources.
services typing.Mapping[AwsService] Get all services.

asset_directoryRequired
asset_directory: str
  • Type: str

The absolute directory where AWS Architecture Icons are stored and retrieved.


categoriesRequired
categories: typing.Mapping[AwsCategory]

Get all categories.

{@link AwsCategory.categories }


resourcesRequired
resources: typing.Mapping[AwsResource]

Get all resources.

{@link AwsResource.resources }


servicesRequired
services: typing.Mapping[AwsService]

Get all services.

{@link AwsService.services }


AwsCategory

AwsCategory class provides an interface for normalizing category metadata between mapped systems.

Methods

Name Description
category_services Gets a list of all services within this category.
icon Retrieves a well-formatted relative path to the icon for this given category in the specified format.

category_services
def category_services() -> typing.List[AwsService]

Gets a list of all services within this category.

icon
def icon(
  format: str,
  theme: str = None
) -> str

Retrieves a well-formatted relative path to the icon for this given category in the specified format.

formatRequired
  • Type: str

themeOptional
  • Type: str

Static Functions

Name Description
get_category Get {@link AwsCategory} based on {@link AwsCategoryId}.

get_category
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsCategory.get_category(
  id: str
)

Get {@link AwsCategory} based on {@link AwsCategoryId}.

idRequired
  • Type: str

The id of the category to retrieve.


Properties

Name Type Description
categories typing.Mapping[AwsCategory] Get record of all categories keyed by category id.
fill_color str Fill color for the category.
font_color str Font color for the category.
gradient_color str Gradien color for the category.
id str The unique id of the category.
name str The proper name of the category.
variants typing.List[str] Alternative names used to identity this category.
drawio_styles AwsCategoryDrawioStyles Drawio style definition for this category.

categoriesRequired
categories: typing.Mapping[AwsCategory]

Get record of all categories keyed by category id.


fill_colorRequired
fill_color: str
  • Type: str

Fill color for the category.


font_colorRequired
font_color: str
  • Type: str

Font color for the category.


gradient_colorRequired
gradient_color: str
  • Type: str

Gradien color for the category.


idRequired
id: str
  • Type: str

The unique id of the category.


Example

"security_identity_compliance"
nameRequired
name: str
  • Type: str

The proper name of the category.


Example

"Security, Identity, & Compliance"
variantsRequired
variants: typing.List[str]
  • Type: typing.List[str]

Alternative names used to identity this category.


drawio_stylesOptional
drawio_styles: AwsCategoryDrawioStyles

Drawio style definition for this category.


AwsCategoryDrawioStyles

AwsCategoryDrawioStyles is a utility class for constructing drawio shape styles for services and resources.

Initializers

import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsCategoryDrawioStyles(
  category_shape: ShapeNames,
  align: str,
  aspect: str,
  dashed: typing.Union[int, float],
  font_size: typing.Union[int, float],
  font_style: typing.Union[str, typing.Union[int, float]],
  gradient_direction: str,
  html: typing.Union[int, float],
  outline_connect: typing.Union[int, float],
  stroke_color: str,
  vertical_align: str,
  vertical_label_position: str,
  pointer_event: typing.Union[int, float] = None,
  fill_color: str,
  font_color: str,
  gradient_color: str
)
Name Type Description
category_shape aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames No description.
align str No description.
aspect str No description.
dashed typing.Union[int, float] No description.
font_size typing.Union[int, float] No description.
font_style typing.Union[str, typing.Union[int, float]] No description.
gradient_direction str No description.
html typing.Union[int, float] No description.
outline_connect typing.Union[int, float] No description.
stroke_color str No description.
vertical_align str No description.
vertical_label_position str No description.
pointer_event typing.Union[int, float] No description.
fill_color str No description.
font_color str No description.
gradient_color str No description.

category_shapeRequired
  • Type: aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames

alignRequired
  • Type: str

aspectRequired
  • Type: str

dashedRequired
  • Type: typing.Union[int, float]

font_sizeRequired
  • Type: typing.Union[int, float]

font_styleRequired
  • Type: typing.Union[str, typing.Union[int, float]]

gradient_directionRequired
  • Type: str

htmlRequired
  • Type: typing.Union[int, float]

outline_connectRequired
  • Type: typing.Union[int, float]

stroke_colorRequired
  • Type: str

vertical_alignRequired
  • Type: str

vertical_label_positionRequired
  • Type: str

pointer_eventOptional
  • Type: typing.Union[int, float]

fill_colorRequired
  • Type: str

font_colorRequired
  • Type: str

gradient_colorRequired
  • Type: str

Methods

Name Description
get_resource_style Gets the drawio style for a resource based on the category style.
get_service_style Gets the drawio style for a service based on the category style.

get_resource_style
def get_resource_style(
  resource_shape: ShapeNames
) -> AwsDrawioShapeStyle

Gets the drawio style for a resource based on the category style.

resource_shapeRequired
  • Type: aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames

The resource shape to style based on category.


get_service_style
def get_service_style(
  service_shape: ShapeNames
) -> AwsDrawioResourceIconStyle

Gets the drawio style for a service based on the category style.

service_shapeRequired
  • Type: aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames

The service shape to style based on category.


Properties

Name Type Description
base aws.pdk.aws_arch.aws_arch.DrawioAwsResourceIconStyleBase No description.
category_shape aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames No description.
category_style AwsDrawioResourceIconStyle Get the drawio style for this category.

baseRequired
base: DrawioAwsResourceIconStyleBase
  • Type: aws.pdk.aws_arch.aws_arch.DrawioAwsResourceIconStyleBase

category_shapeRequired
category_shape: ShapeNames
  • Type: aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames

category_styleRequired
category_style: AwsDrawioResourceIconStyle

Get the drawio style for this category.


AwsResource

AwsResource class provides an interface for normalizing resource metadata between mapped systems.

Methods

Name Description
drawio_style Gets the draiwio style for the resource.
get_category_icon Gets the category icon for the resource.
get_general_icon Gets the general icon for the resource if available.
get_resource_icon Gets the resource specific icon for the resource.
get_service_icon Gets the service icon for the resource.
icon Gets the best icon match for the resource following the order of: 1.

drawio_style
def drawio_style() -> AwsDrawioShapeStyle

Gets the draiwio style for the resource.

get_category_icon
def get_category_icon(
  format: str,
  theme: str = None
) -> str

Gets the category icon for the resource.

This maybe different than {@link AwsResource.service.category.icon } based on mappings overrides, which if do not exist will fallback to {@link AwsResource.service.category.icon }.

{@link AwsService.icon }

formatRequired
  • Type: str

The format of icon.


themeOptional
  • Type: str

Optional theme.


get_general_icon
def get_general_icon(
  format: str,
  theme: str = None
) -> str

Gets the general icon for the resource if available.

formatRequired
  • Type: str

The format of icon.


themeOptional
  • Type: str

Optional theme.


get_resource_icon
def get_resource_icon(
  format: str,
  theme: str = None
) -> str

Gets the resource specific icon for the resource.

formatRequired
  • Type: str

The format of icon.


themeOptional
  • Type: str

Optional theme.


get_service_icon
def get_service_icon(
  format: str,
  theme: str = None
) -> str

Gets the service icon for the resource.

This maybe different than {@link AwsResource.service.icon } based on mappings overrides, which if do not exist will fallback to {@link AwsResource.service.icon }.

{@link AwsService.icon }

formatRequired
  • Type: str

The format of icon.


themeOptional
  • Type: str

Optional theme.


icon
def icon(
  format: str,
  theme: str = None
) -> str

Gets the best icon match for the resource following the order of: 1.

explicit resource icon 2. general icon 3. service icon

formatRequired
  • Type: str

The format of icon.


themeOptional
  • Type: str

Optional theme.


Static Functions

Name Description
find_resource Find {@link AwsResource} associated with given value.
get_resource Get {@link AwsResource} by CloudFormation resource type.

find_resource
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsResource.find_resource(
  value: str
)

Find {@link AwsResource} associated with given value.

valueRequired
  • Type: str

The value to match {@link AwsResource};

can be id, asset key, full name, etc.


get_resource
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsResource.get_resource(
  cfn_resource_type: str
)

Get {@link AwsResource} by CloudFormation resource type.

cfn_resource_typeRequired
  • Type: str

Fully qualifief CloudFormation resource type (eg: AWS:S3:Bucket).


Properties

Name Type Description
resources typing.Mapping[AwsResource] Get record of all resources keyed by resource id.
cfn_resource_type str Fully-qualified CloudFormation resource type (eg: "AWS:S3:Bucket").
service AwsService The {@link AwsService} the resource belongs to.
drawio_shape aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames The drawio shape mapped to this resource, or undefined if no mapping.
full_name str The proper full name of the resource.

resourcesRequired
resources: typing.Mapping[AwsResource]

Get record of all resources keyed by resource id.


cfn_resource_typeRequired
cfn_resource_type: str
  • Type: str

Fully-qualified CloudFormation resource type (eg: "AWS:S3:Bucket").


serviceRequired
service: AwsService

The {@link AwsService} the resource belongs to.


drawio_shapeOptional
drawio_shape: ShapeNames
  • Type: aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames

The drawio shape mapped to this resource, or undefined if no mapping.


full_nameOptional
full_name: str
  • Type: str

The proper full name of the resource.


Example

# Example automatically generated from non-compiling source. May contain errors.
"Bucket" , "Amazon S3 on Outposts"

AwsService

AwsService class provides an interface for normalizing service metadata between mapped systems.

Methods

Name Description
drawio_style Get drawio style for this service.
icon Get relative asset icon for the service for a given format and optional theme.
service_resources List all resources of this service.

drawio_style
def drawio_style() -> AwsDrawioResourceIconStyle

Get drawio style for this service.

icon
def icon(
  format: str,
  theme: str = None
) -> str

Get relative asset icon for the service for a given format and optional theme.

formatRequired
  • Type: str

The format of icon.


themeOptional
  • Type: str

Optional theme.


service_resources
def service_resources() -> typing.List[AwsResource]

List all resources of this service.

Static Functions

Name Description
find_service Finds the {@link AwsService} associated with a given value.
get_service Get {@link AwsService} by CloudFormation "service" name, where service name is expressed as <provider>::<service>::<resource>.

find_service
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsService.find_service(
  value: str
)

Finds the {@link AwsService} associated with a given value.

valueRequired
  • Type: str

Value to match {@link AwsService}, which can be id, assetKey, fullName, etc.


get_service
import aws.pdk.aws_arch

aws.pdk.aws_arch.AwsService.get_service(
  cfn_service: str
)

Get {@link AwsService} by CloudFormation "service" name, where service name is expressed as <provider>::<service>::<resource>.

cfn_serviceRequired
  • Type: str

The service name to retrieve {@link AwsService} for.


Properties

Name Type Description
services typing.Mapping[AwsService] Get record of all {@link AwsService}s keyed by id.
cfn_provider str The CloudFormation "provider" for the service, as expressed by <provicer>::<service>::<resource>.
cfn_service str The CloudFormation "service" for the service, as expressed by <provicer>::<service>::<resource>.
full_name str The proper full name of the service.
category AwsCategory The category the service belongs to, or undefined if does not belong to a category.
drawio_shape aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames Drawio shape associated with this service, or undefined if service not mapped to draiwio shape.
pricing_metadata aws.pdk.aws_arch.aws_arch.PricingManifest.Service Get service pricing metadata.
pricing_service_code str The pricing serviceCode associated with this service, or undefined if service not mapped to pricing.

servicesRequired
services: typing.Mapping[AwsService]

Get record of all {@link AwsService}s keyed by id.


cfn_providerRequired
cfn_provider: str
  • Type: str

The CloudFormation "provider" for the service, as expressed by <provicer>::<service>::<resource>.


cfn_serviceRequired
cfn_service: str
  • Type: str

The CloudFormation "service" for the service, as expressed by <provicer>::<service>::<resource>.


full_nameRequired
full_name: str
  • Type: str

The proper full name of the service.


Example

# Example automatically generated from non-compiling source. May contain errors.
"AWS Glue" , "Amazon S3"
categoryOptional
category: AwsCategory

The category the service belongs to, or undefined if does not belong to a category.


drawio_shapeOptional
drawio_shape: ShapeNames
  • Type: aws.pdk.aws_arch.aws_arch.DrawioSpec.Aws4.ShapeNames

Drawio shape associated with this service, or undefined if service not mapped to draiwio shape.


pricing_metadataOptional
pricing_metadata: Service
  • Type: aws.pdk.aws_arch.aws_arch.PricingManifest.Service

Get service pricing metadata.


pricing_service_codeOptional
pricing_service_code: str
  • Type: str

The pricing serviceCode associated with this service, or undefined if service not mapped to pricing.


Enums

DarkPalette

Dark theme color palette.

Members

Name Description
PUBLIC No description.
PRIVATE No description.
GENERIC No description.
PRIMARY No description.
SECONDARY No description.
TERTIARY No description.

PUBLIC

PRIVATE

GENERIC

PRIMARY

SECONDARY

TERTIARY

DrawioAws4ParentShapes

Draiwio aws4 parent shapes enum.

Members

Name Description
RESOURCE_ICON No description.

RESOURCE_ICON

LightPalette

Light theme color palette.

Members

Name Description
PUBLIC No description.
PRIVATE No description.
GENERIC No description.
PRIMARY No description.
SECONDARY No description.
TERTIARY No description.

PUBLIC

PRIVATE

GENERIC

PRIMARY

SECONDARY

TERTIARY


Last update: 2024-05-08