Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 6 additions & 7 deletions ui/admin/app/components/form/host-set/index.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,9 @@
SPDX-License-Identifier: BUSL-1.1
}}

{{component
(concat 'form/host-set/' @model.compositeType)
model=@model
edit=@edit
submit=@submit
cancel=@cancel
}}
<this.hostSetForm
@model={{@model}}
@edit={{@edit}}
@submit={{@submit}}
@cancel={{@cancel}}
/>
33 changes: 33 additions & 0 deletions ui/admin/app/components/form/host-set/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: BUSL-1.1
*/

import Component from '@glimmer/component';
import { assert } from '@ember/debug';
import awsFormComponent from './aws';
import azureFormComponent from './azure';
import gcpFormComponent from './gcp';
import staticFormComponent from './static';

const modelCompositeTypeToComponent = {
aws: awsFormComponent,
azure: azureFormComponent,
gcp: gcpFormComponent,
static: staticFormComponent,
};

export default class FormHostSetIndex extends Component {
/**
* returns the associated host set form component for the model's composite type
*/
get hostSetForm() {
const component =
modelCompositeTypeToComponent[this.args.model.compositeType];
assert(
`Mapped component must exist for host set composite type: ${this.args.model.compositeType}`,
component,
);
return component;
}
}
Loading