Loading...

What is powerapps-modals?

What is powerapps-modals?

Overview

powerapps-modals gives you the tool to build attractive modals in Model-driven apps fast & easy. You just need to configure the modal configuration and start calling it from your client code.

Why?

189830933-f09313aa-1229-4d18-84bf-acfe3cb8f8b4.png

Roadmap

Click here to see the roadmap of powerapps-modals

Installation

Go to this link and download the latest release managed zip file, and then install it in your environment

How to use?

  1. Install the zip files in your environment
  2. Prepare your Json
  {
    "icon": "success",//warning //error
    "labels": [
      { "text": "Activation Succeeded", "type": "h1" },
      {
        "text": "Enter customer name and email to submit the request to the next stage",
        "type": "h2",
      },
    ],
    "inputs": [
      {
        "id": "customername", //used to get the value when the modal object is returned
        "label": "Customer Name",
      },
      {
        "id": "customeremail",
        "label": "Customer Email",
      },
    ],
    "buttons": [
      {
        "id": "button-cancel", //used to know what button was clicked, retunred with modal return object
        "label": "Cancel",
        "type": "white", //blue //red
      },
      {
        "id": "button-submit",
        "label": "Submit",
        "type": "blue",
      },
    ],
  }
  1. Call it from your script
  let pageInput: Xrm.Navigation.PageInputHtmlWebResource = {
    pageType: "webresource",
    webresourceName: "vite_/viteapps/pages/modals.html",
    data: JSON.stringify(modalJsonObject), //modalJsonObject, pass your json object here
  };
  let navigationOptions: Xrm.Navigation.NavigationOptions = {
    target: 2, // 2 is for opening the page as a dialog.
    width: 400, // default is px. can be specified in % as well.
    height: 500, // default is px. can be specified in % as well.
    position: 1, // Specify 1 to open the dialog in center; 2 to open the dialog on the side. Default is 1 (center).
    title: "Record activation modal", //recommended to enter title here
  };
  Xrm.Navigation.navigateTo(pageInput, navigationOptions).then(
    function success(returnedValues) {
      console.log(returnedValues);
      /*
        Return values object comes in the below format
        {
          inputs:object //holds the inputs and what the user filled them in with, you can get them by using the input id as the identifier
          clickedButton:string // the id of the button the user clicked
        }

        for the above example you can get your inputs like the below
      */
      let clickedButton = returnedValues.clickedButton; //if the user clicked on submit button it will return "button-submit"
      let customerName = returnedValues.inputs["customername"]; //returns what user filled in the customer name input
      let customerEmail = returnedValues.inputs["customeremail"]; //returns what user filled in the customer email input
    },
    function error(e) {
      // Handle errors
    }
  );

That's it :)

Published on:

Learn more
Vite apps
Vite apps

Vite apps

Share post:

Related posts

Video: Transform Copilot With Custom UI Widgets Built In Power Apps

What you’re looking at here in Copilot is an interactive widget that I built with ... The post Video: Transform Copilot With Custom UI Widgets...

34 minutes ago

How to Automate Project Assignment in Dynamics 365 Using Power Automate and Power Apps Code Apps

This blog demonstrates how to automate project assignments in Microsoft Dynamics 365 using Microsoft Power Automate and Power Apps Code Apps, ...

2 days ago

Microsoft Power Automate – Build better forms with integrated Power Apps

We are announcing the ability to build better forms with integrated Power Apps in Power Automate. This feature will reach public preview on Ma...

9 days ago

Power Apps MCP server introduces closed-loop learning for enterprise agents

Building agents is fast. Teaching them how your organization works has been the hard part. Introducing closed-loop learning on the Power Apps ...

12 days ago

Microsoft Power Apps: A Complete Guide (2026)

In this era of constant change and digitization, it is a genius idea to use the PowerApps development platform to create applications for mobi...

12 days ago

Power Apps Vibe Coded Experience [Preview]

Here's how you can now create a Canvas App using a Vibe coded experience. This is Node based and the type is Code. Let's see how we can get to...

17 days ago

Power Apps Code Apps – Trigger a Power Automate Flow

In this article, I walk you through how to add and trigger a Power Automate cloud flow from a Power Apps code app. What type of flows can be a...

18 days ago
Stay up to date with latest Microsoft Dynamics 365 and Power Platform news!
* Yes, I agree to the privacy policy