API Reference
Classes
Node
The internal node of a construct.
Methods
Name | Description |
---|---|
| Adds a connection between two constructs. |
| Add an ordering dependency on another construct. |
| Adds a metadata entry to this construct. |
| Adds a validation to this construct. |
| Return this construct and all of its children in the given order. |
| Return a direct child by id. |
| Retrieves a value from tree context if present. Otherwise, would throw an error. |
| Locks this construct from allowing more children to be added. |
| This can be used to set contextual values. |
| Return a direct child by id, or undefined. |
| Retrieves a value from tree context. |
| Remove the child with the given name, if present. |
| Validates this construct. |
addConnection
addConnection(props: AddConnectionProps): void
Adds a connection between two constructs.
A connection is a piece of metadata describing how one construct is related to another construct.
props
Required
- Type: AddConnectionProps
addDependency
addDependency(...deps: Array<IDependable>): void
Add an ordering dependency on another construct.
An IDependable
deps
Required
- Type: constructs.IDependable
addMetadata
addMetadata(type: str, data: any, options?: MetadataOptions): void
Adds a metadata entry to this construct.
Entries are arbitrary values and will also include a stack trace to allow tracing back to the code location for when the entry was added. It can be used, for example, to include source mapping in CloudFormation templates to improve diagnostics.
type
Required
- Type: str
a string denoting the type of metadata.
data
Required
- Type: any
the value of the metadata (can be a Token).
If null/undefined, metadata will not be added.
options
Optional
- Type: constructs.MetadataOptions
options.
addValidation
addValidation(validation: IValidation): void
Adds a validation to this construct.
When node.validate()
is called, the validate()
method will be called on
all validations and all errors will be returned.
validation
Required
- Type: constructs.IValidation
The validation object.
findAll
findAll(order?: ConstructOrder): MutArray<IConstruct>
Return this construct and all of its children in the given order.
order
Optional
- Type: constructs.ConstructOrder
findChild
findChild(): IConstruct
Return a direct child by id.
Throws an error if the child is not found.
getContext
getContext(key: str): any
Retrieves a value from tree context if present. Otherwise, would throw an error.
Context is usually initialized at the root, but can be overridden at any point in the tree.
key
Required
- Type: str
The context key.
lock
lock(): void
Locks this construct from allowing more children to be added.
After this call, no more children can be added to this construct or to any children.
setContext
setContext(key: str, value: any): void
This can be used to set contextual values.
Context must be set before any children are added, since children may consult context info during construction. If the key already exists, it will be overridden.
key
Required
- Type: str
The context key.
value
Required
- Type: any
The context value.
tryFindChild
tryFindChild(): IConstruct?
Return a direct child by id, or undefined.
tryGetContext
tryGetContext(key: str): any
Retrieves a value from tree context.
Context is usually initialized at the root, but can be overridden at any point in the tree.
key
Required
- Type: str
The context key.
tryRemoveChild
tryRemoveChild(childName: str): bool
Remove the child with the given name, if present.
childName
Required
- Type: str
validate
validate(): MutArray<str>
Validates this construct.
Invokes the validate()
method on all validations added through
addValidation()
.
Properties
Name | Type | Description |
---|---|---|
| str | Returns an opaque tree-unique address for this construct. |
|
| Returns the root of the construct tree (the cloud.App object). |
| MutArray<constructs.IConstruct> | All direct children of this construct. |
| MutArray<constructs.IConstruct> | Return all dependencies registered on this node (non-recursive). |
| str | The id of this construct within the current scope. |
| bool | Returns true if this construct or the scopes in which it is defined are locked. |
| MutArray<constructs.MetadataEntry> | An immutable array of metadata objects associated with this construct. |
| str | The full, absolute path of this construct in the tree. |
| constructs.IConstruct | Returns the root of the construct tree (the cloud.App object). |
| MutArray<constructs.IConstruct> | All parent scopes of this construct. |
| constructs.IConstruct | Returns the scope in which this construct is defined. |
| str | The color of the construct for display purposes. |
| constructs.IConstruct | Returns the child construct that has the id Default or Resource" . |
| str | Description of the construct for display purposes. |
| bool | Whether the node is expanded or collapsed by default in the UI. |
| bool | Whether the construct should be hidden by default in tree visualizations. |
| str | The icon of the construct for display purposes. |
| str | The source file or library where the construct was defined. |
| str | Title of the construct for display purposes. |
addr
Required
addr: str;
- Type: str
Returns an opaque tree-unique address for this construct.
Addresses are 42 characters hexadecimal strings. They begin with "c8" followed by 40 lowercase hexadecimal characters (0-9a-f).
Addresses are calculated using a SHA-1 of the components of the construct path.
To enable refactorings of construct trees, constructs with the ID Default
will be excluded from the calculation. In those cases constructs in the
same tree may have the same addreess.
Example
c83a2846e506bcc5f10682b564084bca2d275709ee
app
Required
app: IApp;
- Type: IApp
Returns the root of the construct tree (the cloud.App
object).
Similar to root
.
children
Required
children: MutArray<IConstruct>;
- Type: MutArray<constructs.IConstruct>
All direct children of this construct.
dependencies
Required
dependencies: MutArray<IConstruct>;
- Type: MutArray<constructs.IConstruct>
Return all dependencies registered on this node (non-recursive).
id
Required
id: str;
- Type: str
The id of this construct within the current scope.
This is a a scope-unique id. To obtain an app-unique id for this construct, use addr
.
locked
Required
locked: bool;
- Type: bool
Returns true if this construct or the scopes in which it is defined are locked.
metadata
Required
metadata: MutArray<MetadataEntry>;
- Type: MutArray<constructs.MetadataEntry>
An immutable array of metadata objects associated with this construct.
This can be used, for example, to implement support for deprecation notices, source mapping, etc.
path
Required
path: str;
- Type: str
The full, absolute path of this construct in the tree.
Components are separated by '/'.
root
Required
root: IConstruct;
- Type: constructs.IConstruct
Returns the root of the construct tree (the cloud.App
object).
Similar to app
.
scopes
Required
scopes: MutArray<IConstruct>;
- Type: MutArray<constructs.IConstruct>
All parent scopes of this construct.
scope
Optional
scope: IConstruct;
- Type: constructs.IConstruct
Returns the scope in which this construct is defined.
The value is undefined
at the root of the construct scope tree.
color
Optional
color: str;
- Type: str
The color of the construct for display purposes.
Supported colors are:
- orange
- sky
- emerald
- lime
- pink
- amber
- cyan
- purple
- red
- violet
- slate
defaultChild
Optional
defaultChild: IConstruct;
- Type: constructs.IConstruct
Returns the child construct that has the id Default
or Resource"
.
This is usually the construct that provides the bulk of the underlying functionality. Useful for modifications of the underlying construct that are not available at the higher levels. Override the defaultChild property.
This should only be used in the cases where the correct default child is not named 'Resource' or 'Default' as it should be.
If you set this to undefined, the default behavior of finding the child named 'Resource' or 'Default' will be used.
description
Optional
description: str;
- Type: str
Description of the construct for display purposes.
expanded
Optional
expanded: bool;
- Type: bool
- Default: false
Whether the node is expanded or collapsed by default in the UI.
By default, nodes are collapsed. Set this to true
if you want the node to be expanded by default.
hidden
Optional
hidden: bool;
- Type: bool
Whether the construct should be hidden by default in tree visualizations.
icon
Optional
icon: str;
- Type: str
The icon of the construct for display purposes.
Supported icons are from Heroicons:
- https://heroicons.com/ e.g.
- "academic-cap"
sourceModule
Optional
sourceModule: str;
- Type: str
The source file or library where the construct was defined.
title
Optional
title: str;
- Type: str
Title of the construct for display purposes.
Structs
AddConnectionProps
Props for Node.addConnection
.
Initializer
let AddConnectionProps = AddConnectionProps{ ... };
Properties
Name | Type | Description |
---|---|---|
| str | A name for the connection. |
| constructs.IConstruct | The target of the connection. |
| constructs.IConstruct | The source of the connection. |
| str | An operation that the source construct supports. |
| str | An operation that the target construct supports. |
name
Required
name: str;
- Type: str
A name for the connection.
target
Required
target: IConstruct;
- Type: constructs.IConstruct
The target of the connection.
source
Optional
source: IConstruct;
- Type: constructs.IConstruct
- Default: this
The source of the connection.
sourceOp
Optional
sourceOp: str;
- Type: str
- Default: no operation
An operation that the source construct supports.
targetOp
Optional
targetOp: str;
- Type: str
- Default: no operation
An operation that the target construct supports.
Protocols
IApp
Represents a Wing application.
Methods
Name | Description |
---|---|
| Generate a unique ID for the given scope and prefix. |
makeId
makeId(prefix?: str): str
Generate a unique ID for the given scope and prefix.
The newly generated ID is guaranteed to be unique within the given scope. It will have the form '{prefix}{n}', where '{prefix}' is the given prefix and '{n}' is an ascending sequence of integers starting from '0'.
prefix
Optional
- Type: str
prepended to the unique identifier.
Properties
Name | Type | Description |
---|---|---|
| constructs.Node | The tree node. |
| str | The directory of the entrypoint of the current Wing application. |
| bool | true if this is a testing environment. |
|
| The application's parameter registrar. |
| str | The .wing directory into which you can emit intermediate artifacts during preflight. |
node
Required
node: Node;
- Type: constructs.Node
The tree node.
entrypointDir
Required
entrypointDir: str;
- Type: str
The directory of the entrypoint of the current Wing application.
isTestEnvironment
Required
isTestEnvironment: bool;
- Type: bool
true
if this is a testing environment.
parameters
Required
parameters: ParameterRegistrar;
- Type: ParameterRegistrar
The application's parameter registrar.
workdir
Required
workdir: str;
- Type: str
The .wing
directory into which you can emit intermediate artifacts during preflight.