diff --git a/source/nodejs/adaptivecards-designer/src/card-designer.ts b/source/nodejs/adaptivecards-designer/src/card-designer.ts index fe08201c4d..865fe308ca 100644 --- a/source/nodejs/adaptivecards-designer/src/card-designer.ts +++ b/source/nodejs/adaptivecards-designer/src/card-designer.ts @@ -855,7 +855,7 @@ export class CardDesigner extends Designer.DesignContext { } this._hostContainerChoicePicker.onChanged = (sender) => { - this.hostContainer = this._hostContainers[parseInt(this._hostContainerChoicePicker.value)]; + this.setHostContainerByIndex(parseInt(this._hostContainerChoicePicker.value)); }; this.toolbar.addElement(this._hostContainerChoicePicker); @@ -1713,6 +1713,14 @@ export class CardDesigner extends Designer.DesignContext { this.setCardPayload(card, true); } + setHostContainerByIndex(hostContainerIndex: number){ + if (hostContainerIndex < 0 || this._hostContainers.length < hostContainerIndex) { + return; + } + + this.hostContainer = this._hostContainers[hostContainerIndex]; + } + onCardPayloadChanged: (designer: CardDesigner) => void; onCardValidated: (designer: CardDesigner, validationLogEntries: Adaptive.IValidationEvent[]) => void; onActiveHostContainerChanged: (designer: CardDesigner) => void; diff --git a/source/nodejs/adaptivecards-site/themes/adaptivecards/layout/designer.ejs b/source/nodejs/adaptivecards-site/themes/adaptivecards/layout/designer.ejs index be99a26bf4..85d5cf7f7d 100644 --- a/source/nodejs/adaptivecards-site/themes/adaptivecards/layout/designer.ejs +++ b/source/nodejs/adaptivecards-site/themes/adaptivecards/layout/designer.ejs @@ -144,9 +144,14 @@ designer.attachTo(document.getElementById("designerRootHost")); designer.monacoModuleLoaded(); + var hostContainerIndexParam = getParameterByName("hostContainerIndex", null); var cardUrl = getParameterByName("card", null); var dataUrl = getParameterByName("data", null); + if (hostContainerIndexParam) { + designer.setHostContainerByIndex(parseInt(hostContainerIndexParam)) + } + if (dataUrl) { var dataXhttp = new XMLHttpRequest(); dataXhttp.onload = function () {