a682b31662 | ||
---|---|---|
.vscode | ||
addon | ||
app | ||
blueprints | ||
config | ||
tests | ||
vendor | ||
.bowerrc | ||
.editorconfig | ||
.ember-cli | ||
.gitignore | ||
.jshintrc | ||
.npmignore | ||
.travis.yml | ||
.watchmanconfig | ||
LICENSE.md | ||
README.md | ||
bower.json | ||
ember-cli-build.js | ||
index.js | ||
package.json | ||
testem.js |
README.md
ember-powerbi
A set of EmberJS components to seemlessly embed Power BI components into web based applications.
Contents
This addon provides components such as {{powerbi-report}}
and {{powerbi-component}}
as well as a service powerbi
which wraps the core powerbi service from the powerbi-client package.
Getting started
-
Run
ember install ember-powerbi
from ember application directory. -
Fetch data to embed a visual from the server (embedUrl and accessToken) and make it available on controller scope.
This would usually involve setting up Ember-Data with custom serializers and adapters or manually making requests using ajax through ember-network etc.
See the dummy application for more information.
If you need a sample server to test reports from your own Power BI workspace you can use the following:
-
C# Sample Server: https://github.com/Azure-Samples/powerbi-dotnet-server-aspnet-web-api
-
Nodejs Sample Server: https://github.com/Azure-Samples/powerbi-node-server-express
- Insert the component in your template where you want to embed the visual:
{{powerbi-report embedUrl=embedConfiguration.embedUrl accessToken=embedConfiguration.accessToken reportId=embedConfiguration.id onEmbedded=(action 'onEmbedded') }}
Other Notes
Use the generic component to pass all properties as a single object. This may be useful when the type of the embeded component changes dynamically:
{{powerbi-component embedConfiguration onEmbedded=(action 'onEmbedded') class="powerbi-container"}}
Note that because this is generic you must have a type
property on the object to indicate what you're embedding.
See the demo application for detailed usage which shows integration with controllers and how to setup the onEmbedded action. The embed action is necessary in order to get access to the embed instance within the parent controller which enables sending commands or registering event handlers.
Running the dummy app:
Installation
git clone
this repositorynpm install
bower install
Running
ember server
- Visit your app at http://localhost:4200.
Running Tests
npm test
(Runsember try:testall
to test your addon against multiple Ember versions)ember test
ember test --server
For more information on using ember-cli, visit http://ember-cli.com/.