翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
フロントエンドウィザードを使用したブループリント機能の変更
のブループリント選択ウィザード CodeCatalyst は、 blueprint.ts
ファイルのOptions
インターフェイスによって自動的に生成されます。フロントエンドウィザードは、スタイルコメントとタグ Options
を使用して、ブループリントの変更と機能をサポートします。 JSDOC Options
インターフェイスから TypeScript タイプから生成された抽象構文ツリー (AST) を解釈することで機能します。ウィザードは、可能な限り最適なタイプに自動的に設定します。すべてのタイプがサポートされているわけではありません。サポートされている他のタイプには、リージョンセレクタと環境セレクタが含まれます。
以下は、ブループリントの でJSDOCコメントとタグを使用するウィザードの例ですOptions
。
export interface Options { /** * What do you want to call your new blueprint? * @validationRegex /^[a-zA-Z0-9_]+$/ * @validationMessage Must contain only upper and lowercase letters, numbers and underscores */ blueprintName: string; /** * Add a description for your new blueprint. */ description?: string; /** * Tags for your Blueprint: * @collapsed true */ tags?: string[]; }
Options
インターフェイスの各オプションの表示名はcamelCase
、デフォルトで に表示されます。JSDOC スタイルコメントのプレーンテキストは、ウィザードのオプションの上にテキストとして表示されます。
サポートされているタグ
以下のJSDOCタグは、フロントエンドウィザードOptions
のカスタムブループリントでサポートされています。
@inlinePolicy ./path/to/policy/file.json
必須 - タイプ のオプション
Role
。使用状況 - ロールに必要なインラインポリシーを通信できます。
policy.json
パスはソースコードの下にあることが予想されます。ロールのカスタムポリシーが必要な場合は、このタグを使用します。依存関係 -
blueprint-cli 0.1.12
以上例 -
@inlinePolicy ./deployment-policy.json
environment: EnvironmentDefinition{ awsAccountConnection: AccountConnection{ /** * @inlinePolicy ./path/to/deployment-policy.json */ cdkRole: Role[]; }; };
@trustPolicy ./path/to/policy/file.json
必須 - タイプ のオプション
Role
。使用状況 - ロールに必要な信頼ポリシーを伝達できます。
policy.json
パスはソースコードの下にあることが予想されます。ロールのカスタムポリシーが必要な場合は、このタグを使用します。依存関係 -
blueprint-cli 0.1.12
以上例 -
@trustPolicy ./trust-policy.json
environment: EnvironmentDefinition{ awsAccountConnection: AccountConnection{ /** * @trustPolicy ./path/to/trust-policy.json */ cdkRole: Role[]; }; };
@validationRegex Regex 式
必須 - オプションを文字列にする必要があります。
使用状況 - 指定された正規表現を使用して オプションの入力検証を実行し、 を表示します
@validationMessage
。例 -
@validationRegex /^[a-zA-Z0-9_]+$/
レコメンデーション - で使用します
@validationMessage
。デフォルトでは、検証メッセージは空です。
@validationMessage string
使用状況を確認するには -
@validationRegex
またはその他のエラーが必要です。使用状況 -
@validation*
失敗時に検証メッセージを表示します。例 -
@validationMessage Must contain only upper and lowercase letters, numbers, and underscores
。レコメンデーション - で使用します
@validationMessage
。デフォルトでは、検証メッセージは空です。
@collapsed ブール値 (オプション)
必須 - 該当なし
使用状況 - サブオプションを折りたためるようにするブール値。折りたたまれた注釈がある場合、デフォルト値は true です。値を に設定すると、最初に開いている折りたたみ可能なセクション
@collapsed false
が作成されます。例 -
@collapsed true
@displayName string
必須 - 該当なし
使用状況 - オプションの表示名を変更します。表示名の camelCase 以外の形式を許可します。
例 -
@displayName Blueprint Name
@displayName string
必須 - 該当なし
使用状況 - オプションの表示名を変更します。表示名の camelCase
以外の形式を許可します。 例 -
@displayName Blueprint Name
@defaultEntropy number
必須 - オプションを文字列にする必要があります。
使用状況 - 指定された長さのランダム化された英数字の文字列を オプションに追加します。
例 -
@defaultEntropy 5
@placeholder 文字列 (オプション)
必須 - 該当なし
使用状況 - デフォルトのテキストフィールドプレースホルダーを変更します。
例 -
@placeholder type project name here
@textArea number (オプション)
必須 - 該当なし
使用状況 - 文字列入力をテキストエリアコンポーネントに変換して、テキストのより大きなセクションにします。数値を追加すると、行数が定義されます。デフォルトは 5 行です。
例 -
@textArea 10
@hidden ブール値 (オプション)
必須 - 該当なし
使用状況 - 検証チェックが失敗しない限り、ユーザーからファイルを非表示にします。デフォルト値は true です。
例 -
@hidden
@button ブール値 (オプション)
必須 - 該当なし
使用状況 - 注釈はブール型プロパティにある必要があります。選択時に true として合成するボタンを追加します。トグルではありません。
例 -
buttonExample: boolean;
/** * @button */ buttonExample: boolean;
@showName boolean (オプション)
必須 - 該当なし
使用状況 - アカウント接続タイプでのみ使用できます。非表示の名前の入力を表示します。デフォルトは
default_environment
です。例 -
@showName true
/** * @showName true */ accountConnection: AccountConnection<{ ... }>;
@showEnvironmentType boolean (オプション)
必須 - 該当なし
使用状況 - アカウント接続タイプでのみ使用できます。非表示の環境タイプのドロップダウンメニューを表示します。すべての接続のデフォルトは です
production
。オプションは非本番または本番 です。例 -
@showEnvironmentType true
/** * @showEnvironmentType true */ accountConnection: AccountConnection<{ ... }>;
@forceDefault boolean (オプション)
必須 - 該当なし
使用状況 - ユーザーによって以前に使用された値の代わりに、設計図作成者によって提供されたデフォルト値を使用します。
例 -
forceDeafultExample: any;
/** * @forceDefault */ forceDeafultExample: any;
@requires blueprintName
必須 -
Options
インターフェイスに注釈を付けます。使用状況 - 現在の設計図の要件として、プロジェクト
blueprintName
に指定された を追加するようユーザーに警告します。例 -
@requires '@amazon-codecatalyst/blueprints.blueprint-builder'
/* * @requires '@amazon-codecatalyst/blueprints.blueprint-builder' */ export interface Options extends ParentOptions { ...
@filter 正規表現
必須 -
Selector
またはMultiSelect
インターフェイスに注釈を付けます。使用状況 - ウィザードのドロップダウンを、指定された正規表現に一致するオプションにフィルタリングします。
例 -
@filter /blueprintPackageName/
/** * @filter /myPackageName/ */ blueprintInstantiation?: Selector<BlueprintInstantiation>; ...
サポートされている TypeScript タイプ
以下の TypeScript タイプは、フロントエンドウィザードOptions
のカスタムブループリントでサポートされています。
数
必須 - タイプ のオプション
number
。使用状況 - 数値入力フィールドを生成します。
例 -
age: number
{ age: number ... }
文字列
必須 - タイプ のオプション
string
。使用状況 - 文字列入力フィールドを生成します。
例 -
name: string
{ age: string ... }
文字列リスト
必須 - オプションを タイプの配列にする必要があります
string
。使用状況 - 文字列リスト入力を生成します。
例 -
isProduction: boolean
{ isProduction: boolean ... }
[Checkbox] (チェックボックス)
必須 - オプションを にする必要があります
boolean
。使用状況 - チェックボックスを生成します。
例 -
isProduction: boolean
{ isProduction: boolean ... }
ラジオ
必須 - オプションは 3 つ以下の文字列の結合になります。
使用状況 - 選択したラジオを生成します。
注記
4 つ以上の項目がある場合、このタイプはドロップダウンとしてレンダリングされます。
例 -
color: 'red' | 'blue' | 'green'
{ color: 'red' | 'blue' | 'green' ... }
ドロップダウン
必須 - オプションは 4 つ以上の文字列の結合です。
使用状況 - ドロップダウンを生成します。
例 -
runtimes: 'nodejs' | 'python' | 'java' | 'dotnetcore' | 'ruby'
{ runtimes: 'nodejs' | 'python' | 'java' | 'dotnetcore' | 'ruby' ... }
拡張可能なセクション
必須 - オブジェクトにオプション。
使用状況 - 拡張可能なセクションを生成します。オブジェクトのオプションは、ウィザードの拡張可能なセクション内にネストされます。
例 -
{ expandableSectionTitle: { nestedString: string; nestedNumber: number; } }
タプル
必須 - オプションをタイプ にする必要があります
Tuple
。使用状況 - キーと値の有料入力を生成します。
例 -
tuple: Tuple[string, string]>
{ tuple: Tuple[string, string]>; ... }
タプルリスト
必須 - オプションは タイプの配列です
Tuple
。使用状況 - タプルリスト入力を生成します。
例 -
tupleList: Tuple[string, string]>[]
{ tupleList: Tuple[string, string]>[]; ... }
Selector
必須 - オプションをタイプ にする必要があります
Selector
。使用状況 - プロジェクトに適用されるソースリポジトリまたはブループリントのドロップダウンを生成します。
例 -
sourceRepo: Selector<SourceRepository>
{ sourceRepo: Selector<SourceRepository>; sourceRepoOrAdd: Selector<SourceRepository | string>; blueprintInstantiation: Selector<BlueprintInstantiation>; ... }
複数選択
必須 - オプションをタイプ にする必要があります
Selector
。使用状況 - 複数選択入力を生成します。
例 -
multiselect: MultiSelect['A' | 'B' | 'C' | 'D' | 'E']>
{ multiselect: MultiSelect['A' | 'B' | 'C' | 'D' | 'E']>; ... }
合成中のユーザーへの通信
ブループリント作成者は、検証メッセージだけでなく、ユーザーと通信することもできます。例えば、スペースメンバーは、明確でない設計図を生成するオプションの組み合わせを表示する場合があります。カスタム設計図は、合成を呼び出すことでエラーメッセージをユーザーに伝える機能をサポートしています。ベースブループリントは、明確なエラーメッセージを期待するthrowSynthesisError(...)
関数を実装します。以下を使用してメッセージを呼び出すことができます。
//blueprint.ts this.throwSynthesisError({ name: BlueprintSynthesisErrorTypes.BlueprintSynthesisError, message: 'hello from the blueprint! This is a custom error communicated to the user.' })