Граф коммитов

893 Коммитов

Автор SHA1 Сообщение Дата
Or Shemesh b92cba3f32
Merge pull request #390 from microsoft/readme_update_support
Update README.md with support section
2024-10-14 11:03:50 +03:00
Or Shemesh d9aededd47
Update README.md with support section 2024-10-14 08:19:38 +03:00
may-hartov 10d3360357
Merge pull request #388 from microsoft/release_2.23.1
Release 2.23.1
2024-04-16 15:23:18 +03:00
May Hartov 6b29334fa2 Merge remote-tracking branch 'powerbi/master' into release_2.23.1 2024-04-16 10:04:18 +03:00
May Hartov 8110830366 Merged PR 540280: version bump 2.23.1
version bump 2.23.1, minor bug fix of embed url validation
2024-04-01 08:26:09 +00:00
May Hartov 04a3285cd2 Merged PR 539275: removed global flag from valid embed hosts validation
removed global flag from valid embed hosts validation to resolve bug introduced with 2.23.0 release:

Issue reported [here](https://community.fabric.microsoft.com/t5/Developer/bd-p/Developer) and by @<Sergey Pustynsky> from datahub (attaching Sergey's description):

We started to get
"Invalid embed URL detected. Either URL hostname or protocol are invalid. Please use Power BI REST APIs to get the valid URL";
in Datahub embed scenario. We have 2 tabs, each one renders iframe with different configs. Once it rendered OK, 2nd time fails on error.

It caused by this code, which looks valid

The result of this check is inconsistent (once returns true, once false) over the same data. It's possibly related to RegEx statefullness.
Do we really need this global flag in RegEx definition?

Symptoms:

`When a RegExp object is created with the global (g) or sticky (y) flag, it maintains an internal lastIndex property. This property is used to determine where to start the next match attempt during subsequent calls to .test() or .exec() methods. After each match attempt, lastIndex is updated. This means if a match is found, the next call to .test() will start searching from the position after the last match, which can lead to the following outcomes:
If the next call does not find a match (because it starts searching from a non-zero lastIndex), .test() will return false.
If you call .test() again after it returns false, lastIndex is reset to 0, and the regex is evaluated from the beginning of the string, potentially returning true again if a match is found from the start.`

Related work items: #1362247
2024-03-31 11:04:43 +00:00
Ali Abu Foul 85fe0314aa Merged PR 521465: Block refresh API for paginated reports
Client-side APIs are not supported for rdl reports.

Ideally, we should refactor our code to have one validation for all APIs. This requires major changes in the SDK code. So, I added this missing validation per request from customer especially that this API name is not clear that it is Power BI report specifc and might be misleading for customers.

[Incident 474677846 : [PowerBI] CSS - Embedded (User Owns Data/Apps Owns Data): <Programmatic refresh of paginated report in embedded doesn't work>](https://portal.microsofticm.com/imp/v3/incidents/incident/474677846/summary)
2024-02-20 10:36:07 +00:00
May Hartov e9423b8de3 Merged PR 517660: version bump 2.23.0
version bump 2.3.0
2024-02-12 05:31:39 +00:00
May Hartov d0af4f368d Merged PR 483438: JS SDK - embed URL validation
Following MSRC case as malicious site can be injected as the embed iframe src, added embed URL validation to ensure the host is an allowed PBI src.

A valid embed url protocol is "https:"

The valid hosts names are ([retrieved from EV2-deployment repository - all of ida_PowerBIFeUrl key values](https://dev.azure.com/powerbi/PowerBIClients/_search?action=contents&text=ida_PowerBIFeUrl path%3A*envParams*&type=code&lp=code-Project&filters=ProjectFilters{PowerBIClients}RepositoryFilters{PowerBIClients-EV2-Deployment}&pageSize=25&result=DefaultCollection/PowerBIClients/PowerBIClients-EV2-Deployment/GBmaster//WFE/AppService/ADM/Public/INT/envParams.txt)):

-  app.powerbi.com,
-  app.powerbi.cn,
-   app.powerbigov.us,
-  app.mil.powerbigov.us,
-  app.high.powerbigov.us,
-  app.powerbi.eaglex.ic.gov,
-  app.powerbi.microsoft.scloud,
-   powerbi-df.analysis-df.windows.net,
-   CST WFE URLs: 'https://{cst-name}.analysis.windows-int.net'
-   daily.powerbi.com
-   dxt.powerbi.com
-   msit.powerbi.com

Embed URL validation should include fabric embed URL.

All of the above should be covered by the following regex expressions:

.+\.powerbi.com$
-   daily.powerbi.com
-   dxt.powerbi.com
-   msit.powerbi.com
-  app.powerbi.com

FF:  ^app(.mil.|.high.|.)powerbigov.us$
-   app.powerbigov.us,
-  app.mil.powerbigov.us,
-  app.high.powerbigov.us

Edog: .+\.analysis-df.windows.net$

Onebox and CSTs: .+\.analysis.windows-int.net$

Fabric URLs: .+\.fabric.microsoft.com$

**Please look into the test cases in utils.spec.ts to see the valid and invalid embe urls**

Related work items: #1245653
2024-02-11 08:37:22 +00:00
Yoav Damri 61e39a9f75 Merged PR 305013: Add smart narrative API to report
#839888 add getSmartNarrativeInsights to report

Related work items: #839888
2023-12-04 18:18:26 +00:00
Andres De La Pena Santana b4d5922fb9 Merged PR 446928: Updating models version to 1.13.0
Updating models version to 1.13.0
2023-09-14 05:41:48 +00:00
MerlinBot d564c806ef This uses [Azure DevOps scheduled triggers](https://learn.microsoft.com/en-us/azure/devops/pipelines/process/scheduled-triggers?view=azure-devops&tabs=yaml) to run a weekly build on Saturday at midnight. See [cron syntax](https://learn.microsoft.com/en-us/azure/devops/pipelines/process/scheduled-triggers?view=azure-devops&tabs=yaml#cron-syntax) to adjust the schedule as needed.
This change ensures that this repo meets static analysis requirements as per the [Mandatory SDL Requirement](https://liquid.microsoft.com/Web/Object/Read/ms.security/Requirements/Microsoft.Security.SystemsADM.10201).
[FAQs] (https://strikecommunity.azurewebsites.net/articles/9931/continuous-sdl-faq-codeql.html), which requires a fresh codeql build every 30 days.

To check whether your repository has been onboarded visit the [Lookup Service] (https://semmleportal.azurewebsites.net/lookup) and enter your repository URL - you should see the main branch of your repo in the list.
contact chanelyoung@microsoft.com for further help & details

---

For feedback or questions about this PR, please find the contact information in the above description. If none exists, please contact the [Gardener team](mailto:gardener@microsoft.com) to help route.

---

This change was automatically generated by [1ES Gardener](https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/gardener/1es-gardener) (a [MerlinBot](https://aka.ms/MerlinBot) extension) which is an initiative by the 1ES team to help repos stay up-to-date with latest tools, features, and best practices.
2023-08-31 10:15:31 +00:00
VishnuPriya 3e157556dd Merged PR 409839: Enabling SDL for powerbi-javascript repo
Enabled CodeQL and SDL:
Buddy test run:
https://dev.azure.com/powerbi/Embedded/_build?definitionId=8484&_a=summary
2023-06-21 09:20:53 +00:00
May Hartov 0e09337d5a Merged PR 399733: [Version bump] 2.22.4 version bump
2.22.4 version bump
This version bump includes the upgrade of WPMP from ^2 to ^2.7
2023-05-24 03:27:22 +00:00
Or Shemesh 2782914b27 Merged PR 399642: Upgrade wpmp version
Upgrade wpmp version
2023-05-23 16:33:38 +00:00
May Hartov beb9496fb4 Merged PR 395869: Minor version bump 2.22.3
Minor version bump 2.22.3
This release will contain 1 change:
Pull Request 383914: [JavaScript SDK]: Add Create export in the JavaScript SDK

We need to release the export of create interface so we can consume it in SDK wrppers
2023-05-14 10:33:37 +00:00
Kotana Sai 7a11e9649d Merged PR 383914: [JavaScript SDK]: Add Create export in the JavaScript SDK
**Issue:**
`powerbi-client` library has no exported member `Create`

![image.png](https://dev.azure.com/powerbi/4c7b5adb-c2d0-4f18-b23c-edc4ac30f4e1/_apis/git/repositories/1dd63332-e003-46a3-ac6f-70213a1bcc2e/pullRequests/383914/attachments/image.png)

**Changes in this PR:**
1.  Added `Create` export from `create.ts` module in `powerbi-client.ts` file.

![image (2).png](https://dev.azure.com/powerbi/4c7b5adb-c2d0-4f18-b23c-edc4ac30f4e1/_apis/git/repositories/1dd63332-e003-46a3-ac6f-70213a1bcc2e/pullRequests/383914/attachments/image%20%282%29.png)

Related work items: #1076058
2023-04-24 11:28:22 +00:00
Or Shemesh c4578b614e
Merge pull request #384 from microsoft/release-2.22.2
Release 2.22.2
2023-01-31 13:22:45 +02:00
Or Shemesh addc9bc2a7
Update .gitignore 2023-01-31 13:08:10 +02:00
Or Shemesh 301d0fc09a Merge remote-tracking branch 'powerbi/master' into release-2.22.2 2023-01-30 14:24:19 +02:00
Or Shemesh 456463b094 Merged PR 345077: Version bump 2.22.2
Version bump 2.22.2
2023-01-22 11:57:29 +00:00
Andriy Malish 588e53e0fc Merged PR 280202: [Storytelling] - Add report on blur event - lose focus
Add report on blur event - lose focus

Two new methods added:

- clearVisualsSelection() -- Clears selected not popped out visuals, if flag is passed, all visuals selections will be cleared.
- closeAllOverlays() -- Closes all open PBI overlays (context menus, tooltips...)
2023-01-22 10:00:02 +00:00
Atharva Bapat e7638e941d Merged PR 342570: [PBI JS]: Fix npm vulnerabilities
1. Updated vulnerable packages

2. Update webpack config devtool value to false which is equivalent to none of the lower versions

Related work items: #978292, #982650, #986527, #988932
2023-01-19 05:45:48 +00:00
Or Shemesh 3153b72fcc Merged PR 320270: Add support of registering external components to SDK
Add support of registering external components to SDK

How does it work?
1. User creates a new embed component extending `Embed` in his project
2. User implements the necessary code in FE to support hosting of the new component and handling events
3. Needed code to embed the new component:
`powerbi.register(componentType, embedComponentFactory, routerEventUrls);`
`powerbi.embed(embedContainer, config);`

powerbi.register:
- `componentType`: string representing the component type in embed configuration interface
- `embedComponentFactory`: function that returns a new instance of the embed component.
- `routerEventUrls`: list of urls to register, must use uniqueId and eventName as keys. something like that: `/componentName/:uniqueId/events/:eventName`

Example of calling powerbi.register for metric-picker  component:

```
    this.register(
      'metric_picker',
      (service, element, config, phasedRender, isBootstrap) => new MetricPicker(service, element, config, phasedRender, isBootstrap),
      ['/metricPicker/:uniqueId/events/:eventName']
    );
```
2023-01-02 11:39:28 +00:00
PIE Easy Start 9e65b27942 Merged PR 309729: Adding OneBranch pipeline YAML config file for powerbi-javascript-Official
Generate OneBranch Pipeline YAML config files. This pull request is initially auto-generated by Easy Start, for more details, please visit our [wiki](https://aka.ms/easystart).

**Result of OneBranch Official Pipeline**
https://dev.azure.com/powerbi/Embedded/_build/results?buildId=6042686&view=results

Related work items: #972391
2022-12-26 07:19:54 +00:00
PIE Easy Start 878612ff70 Merged PR 309731: Adding OneBranch pipeline YAML config file for powerbi-javascript-Buddy
Generate OneBranch Pipeline YAML config files. This pull request is initially auto-generated by Easy Start, for more details, please visit our [wiki](https://aka.ms/easystart).

**Difference Compared to powerbi-models repo PR:**

1. In the PR of powerbi-models, we ran power script files in CmdLine@2 using onebranch_run_ps.cmd file. But after May comment, in all the following PR we are using PowerShell@2 task to run our power script files and deleted onebranch_run_ps.cmd file.
2. In powerbi-javascript we also have a task to copy source artifacts to Output folder. Took a reference of this task from CDPx pipelines
3. We also have nuget_pack, so Added nugetInstaller task and to run nuget_pack.ps file and copy nugetpack to output folder

**Result of OneBranch Buddy Pipeline**
https://dev.azure.com/powerbi/Embedded/_build/results?buildId=5886126&view=results

**Drop Folder from OneBranch**
![image (3).png](https://dev.azure.com/powerbi/4c7b5adb-c2d0-4f18-b23c-edc4ac30f4e1/_apis/git/repositories/1dd63332-e003-46a3-ac6f-70213a1bcc2e/pullRequests/309731/attachments/image%20%283%29.png)

**Drop Folder from CDPx**
![image (2).png](https://dev.azure.com/powerbi/4c7b5adb-c2d0-4f18-b23c-edc4ac30f4e1/_apis/git/repositories/1dd63332-e003-46a3-ac6f-70213a1bcc2e/pullRequests/309731/attachments/image%20%282%29.png)
2022-12-21 03:33:24 +00:00
Sheng Liu 402c513159 Merged PR 331401: bump version to 2.22.1
bump version to 2.22.1
Includes minor bug fix and model version update

Related work items: #930573
2022-12-07 07:06:45 +00:00
Sheng Liu 24dcb44669 Merged PR 327554: Export IQuickCreateConfiguration and model version upgrade
Export IQuickCreateConfiguration
Upgrade model version to 1.12.3

Related work items: #930573
2022-12-06 19:48:36 +00:00
Shahak Yosef b409a2311c Merged PR 328662: Remove myself from merlin
Remove myself from merlin
2022-11-29 09:06:00 +00:00
Kotana Sai 24b4027807 Merged PR 321068: Upgrade karma test to use Chrome instead of PhantomJs for powerbi-javascript 2022-11-08 07:26:31 +00:00
Ali Abu Foul 8260d9c990 Merged PR 312372: Inject credentials into .npmrc using YML package_sources config instead of npm authenticate task
Previously I added npm authenticate task to the pipeline to inject credentials to the .npmrc.
This task is not compliant to CDPX. I'm switching to YAML instead as mentioned in this [doc](https://onebranch.visualstudio.com/OneBranch/_wiki/wikis/OneBranch.wiki/4787/Consuming-Packages-in-a-CDPx-Pipeline?anchor=npm)
2022-10-12 14:28:36 +00:00
Sheng Liu 2c561d84c8 Merged PR 300806: bump version to 2.22.0, swith to use model version 1.12.1
bump version to 2.22.0, swith to use model version 1.12.1

Related work items: #776456
2022-09-12 17:16:12 +00:00
Sheng Liu 34687bb875 Merged PR 289796: Add QuickCreate SDK
Add QuickCreate.ts to handle quickcreate validations
Add quickCreate in service to handle new quickCreate path
Refactored embed and move create() into each component
2022-08-31 20:58:15 +00:00
MerlinBot 9a3b77833e Merged PR 282084: Remediating Azure Artifacts Configuration Issues in your Repository
As a repository owner, you must take action to protect Microsoft against potential Software Supply Chain attacks. This starts with ensuring your repository has a valid Azure Artifacts usage so you can take advantage of [Central Feed Services](https://aka.ms/cfs). We are opening this PR with a fix on known issue(s) which we have detected in your repository. Please review and approve this PR at your earliest convenience.

**This may impact the ability for pipelines and developers to install packages and build projects.**

## Address **breaking changes** before you merge:
* Confirm the suggested Feed is configured per your organization's guidelines. If changes are necessary, work with your Project Administrators to set it up correctly.  [Learn more...](https://docs.microsoft.com/en-us/azure/devops/artifacts/feeds/feed-permissions?view=azure-devops)
* Add authentication to any failing pipeline definitions. [nuget](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops), [npm](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/npm-authenticate?view=azure-devops).
* Reach out to developers who may need to authenticate to the feed using the [embedded_PublicPackages's Connect to feed](https://dev.azure.com/powerbi/embedded/_artifacts/feed/embedded_PublicPackages/connect) instructions in Azure Artifacts.

## This PR can make changes to .npmrc, nuget.config, and other configuration files. Please view the complete change breakdown in the PR changed files.

---

For feedback or questions about this PR, please contact [Artifact Protection Services](mailto:feedprotection@microsoft.com).

---

This change was automatically generated by [1ES Gardener](https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/gardener/1es-gardener) (a [MerlinBot](https://aka.ms/MerlinBot) extension) which is an initiative by the 1ES team to help repos stay up-to-date with latest tools, features, and best practices.
2022-08-31 14:31:00 +00:00
Or Shemesh e3e3282627
Merge pull request #383 from microsoft/release-2.21.1
Release 2.21.1
2022-07-17 15:39:51 +03:00
Or Shemesh e9ceeddd20 Merge remote-tracking branch 'powerbi/master' into release-2.21.1 2022-07-17 12:41:47 +03:00
Or Shemesh 8c2d12d0eb Merged PR 275402: New API setSdkInfo in service + version bump 2.21.1
sdkType tells us which SDK wrapper performs the actions, e.g: powerbi-client-react, powerbi-client-angular...

To update it we should pass the type in the header 'x-sdk-type` which is populated in the service constructor. Therefore, each wrapper needs to pass the correct sdkType when initiating the service (see example: [Pull Request 274150](https://dev.azure.com/powerbi/Embedded/_git/powerbi-client-react/pullrequest/274150)).

**What is the problem?** if user injects a new powerbi service to the wrapper and doesn't use the default service, the sdkType won't be populated.
As a result, I created new API in the service, so we could update in each wrapper the sdk type after the service is created.

In addition, create new header `x-sdk-wrapper-version`.
2022-06-28 09:03:15 +00:00
Ohad Edry c1188f085b Merged PR 274188: release version 2.21.0, updating models version
release version 2.21.0, updating models version
2022-06-15 13:45:44 +00:00
Ali Abu Foul e81f5fe7d3 Merged PR 273794: Release version 2.20.1
For an unknown reason, 2.20.0 was released 2 weeks ago to internal feed although it was not triggered.
This causes the internal feed phase to fail as package already existed.
2022-06-14 13:42:02 +00:00
Ali Abu Foul a354588bdd Merged PR 245022: eventHooks Improvements - Release version 2.20.0
hosting apps (like TypeScript) that creates a double instance of `service` will cause double registration for eventHooks listener which leads to miss the callback from the iframe.

moving `router.post` from `service` constructor to `report` constructor resolves the issue.
2022-06-14 10:39:21 +00:00
Or Shemesh fcbc582c3d
Merge pull request #382 from microsoft/dev/orshemes/update_gitignore
Update .gitignore
2022-04-06 10:50:46 +03:00
Or Shemesh b0648b96a4
Update .gitignore 2022-04-05 11:44:58 +03:00
Or Shemesh 220c8264b4 Merged PR 252540: Remove comments in OE: powerbi-javascript
Remove comments in OE: powerbi-javascript
2022-04-05 08:38:17 +00:00
Or Shemesh c7f3cd1532 Merged PR 243777: Added owners.txt to powerbi-javascript
Added owners.txt
2022-03-06 07:44:07 +00:00
Shahak Yosef f8baed639a Merged PR 240302: Add getSDKVersion method
Add `powerbi.getSDKVersion` method

In ISV scenario it is hard to find the SDK version in the dev tools so I am adding a method to return it.
2022-02-22 07:26:28 +00:00
submarine-launched a05fa2e898
Merge pull request #381 from microsoft/release-2.19.1
Release 2.19.1
2022-02-21 15:18:48 +02:00
shyosef 8b1fe7ca1c Merge remote-tracking branch 'powerbi/master' into release-2.19.1 2022-02-21 15:02:14 +02:00
Shahak Yosef 238c629331 Merged PR 231943: Build with latest Windows version and VS 2019
Build with latest Windows version and VS 2019
https://github.com/actions/virtual-environments/issues/4312

Same changes as !231657
2022-01-23 12:41:13 +00:00
Shahak Yosef b7a2faca26 Merged PR 229864: Release version 2.19.1 - Scrub config
Remove `accessToken` from the config when throwing an exception.

### Notes for reviewers
- Spread operator seems to be [well supported](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_syntax), doesn't work in IE however it was transplied to `__assign` in JS Code
- I can't put it in `utils.ts` because that would create a circular dependency (with `embed.ts` due to type imports).
2022-01-13 11:20:27 +00:00
Ali Abu Foul 9f9e39ed0a Merged PR 209427: Support accessTokenProvider hook - Release version 2.19.0 2022-01-13 10:34:02 +00:00