pnp / sp-dev-fx-aces

Repository for the Microsoft Viva Connections Adaptive Card sample solutions from Microsoft and community.
https://aka.ms/viva/connections/extensibility
MIT License
110 stars 92 forks source link

Added PrimaryTextCard-RecentFiles #66

Closed GuidoZam closed 2 years ago

GuidoZam commented 2 years ago

By submitting this pull request, you agree to the contribution guidelines

If you aren't familiar with how to contribute to open-source repositories using GitHub, or if you find the instructions on this page confusing, sign up for one of our Sharing is Caring events. It's completely free, and we'll guide you through the process.

Q A
Bug fix? no
New feature? no
New sample? yes
Related issues? no

What's in this Pull Request?

Added PrimaryText-RecentFiles, it shows a counter of the recent files from Microsoft Graph to the card view and enables the user to navigate through the files and open the selected file in the quick view.

dcashpeterson commented 2 years ago

@GuidoZam Thanks for the sample. I am reviewing this and ran into an issue. The ACE works fine but the open button is not working properly and there are errors in the console. Can you please take a look? I followed the instructions in the README to install so if there is something else that needs to be done we should fix the issue and update README.

content:1 GET https://mytenant.sharepoint.com/_api/v2.1/shares/u!aHR0cHM6Ly9kZXJla2NwLnNoYXJlcG9pbnQuY29tL2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBZ0NBWUFBQUJ6ZW5yMEFBQUFBWE5TUjBJQXJzNGM2UUFBQWVCSlJFRlVXRWZGbDcrclFXRVl4NzlIU1pKRktWWUx1d3p5QjBoWjJQeVlaRkpLb2d5U1JDay9Vc3JFeHFSWUxQNEFHV1Juc1Jyb0xESlluTnY3MUxIYzdya3V4MzNlNmUwczM4OTUzKy8zZVo1WFVoUkZBZU9TWkZsV3B0TXBFb2tFTEJiTHgxRW1rd21TeVNTQ3dTREVYanFmejRvUU54cU5hTFZhOEhnOEg0WDRFV0M1WE1KbXM2SGRiaU1lajhOa01uMEVSQk5BVlV5bFVtZzBHbkE0SExwRGFBSTRuVTRjajBjU2RidmQ2SFE2Q0lWQ01CZ011b0ZvQW94R0kwaVNoRUtoQUZtV1liVmFrYzFtVVNxVmFLL0gwZ1FZajhlVWh0MXVoMkt4aU1WaVFacUJRQUM5WGc5ZXI1Y0EzMWxQQVFpQjYvV0ticmRMeWJoY0xtVFFXcTJHZERyOWxrR2ZCaEFRb2thdDEydmtjamxzTmh2NjhVZ2tRa2x4dVZ3dkhjU2ZBRlNGMCttRWFyV0t3V0R3TUdpOVhrYzBHdjJ6UVY4Q0VLcjMreDJ6MlF6bGNobjcvWjVBTXBrTWdkbnQ5cWRQNDJVQVZlRndPRkJLNXZNNWZmTDVmR1JRdjkvL2xFSGZCaENpdDlzTncrRVFsVXJsRVZlUm1udysvMnMvMFFWQU5laDJ1eVdEcmxZck9vMXdPUHhyUDlFTlFMMFNFZEZtczRsK3YvK0lxMVkvK1JjQVVUdGlzUmpNWnZNM2Mrb0dJR29FMnhXd21wQXRocXlGaUswVXN6WWoxbmJNTnBDd2oyVHNReW43V003Nk1HRjdtckUvVHJtZjUxOUFwNjBSZVROUWJ3QUFBQUJKUlU1RXJrSmdnZz09/driveItem/thumbnails/0/c400x99999/content?preferNoRedirect=true&prefer=extendCacheMaxAge&clientType=modernWebPart 400 Image (async) he @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.overrideInternalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.overrideInternalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.overrideInternalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.overrideInternalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 D @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.getAdaptiveCardHtmlNode @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 Bo @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 No @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 ys @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 pc @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 uc @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 ac @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 (anonymous) @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 t.unstable_runWithPriority @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 Gi @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 Qi @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 qi @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 Zs @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 Bc @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 Wc @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 t.render @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 (anonymous) @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 setTimeout (async) t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t._onUpdateCallback @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 e.update @ sp-adaptive-card-extension-base_en-us_5a298b1510f52332ffcb.js:1 t.setState @ sp-adaptive-card-extension-base_en-us_5a298b1510f52332ffcb.js:1 e.setState @ sp-adaptive-card-extension-base_en-us_5a298b1510f52332ffcb.js:1 t.onAction @ recent-files-adaptive-card-extension_3a6c444137ed1a2c12e3.js:1 t._internalOnAction @ sp-adaptive-card-extension-base_en-us_5a298b1510f52332ffcb.js:1 (anonymous) @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 (anonymous) @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 Promise.then (async) t._handleAction @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t._onExecuteAction @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 e.onExecuteAction @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.raiseExecuteActionEvent @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.execute @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 n.onclick @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 Show 11 more frames content:1 GET https://mytenant.sharepoint.com/_api/v2.1/shares/u!aHR0cHM6Ly9kZXJla2NwLnNoYXJlcG9pbnQuY29tL2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBZ0NBWUFBQUJ6ZW5yMEFBQUFBWE5TUjBJQXJzNGM2UUFBQWVkSlJFRlVXRWZGbDcvTFFWRVl4NyszTEpKRkdhd1dkaG5rRDdCWURDWTJpMHp5YTduQ3FFaEttV1R5WTJOUjhnZklJRHVMbFNLTEpDbjM3VHgxYitlOTc1dTNGL2VlTTkzdCtkem5mSjd2T1VkU0ZFV0J3Q1VkajBjbEZvdGhOcHVoMSt1QmZSdTlMcGNMK3YwK290RW9UQWRZcjlmSTUvTzQzKzhFWVJyQTdYYkRZREJBTHBmRDZYUkNLQlF5RDJDLzMwT1daWFM3WFcxM1RRRjRQQjZZVHFmSVpyUFliRFpVM09WeVliZmJHZCtCOC9tTWFyV0tWcXNGOXUxd09GQ3YxOEdHTHBGSUdBZkFDcXhXSzZUVGFjem5jL3JyY0RpTVdxMEdyOWRMK3g2UHg0MEJZS0oxT2gyVVNpVVN6VzYzay9HWlRBWTJtNDFnREFQWWJyZGsrSGc4cGtKK3Z4L05aaE9CUUFDU0pHbnlmUnlBaVRZYWpWQXNGalhSVXFrVUtwVUtuRTduajB6N0tNRGhjS0JDN1hhYkNuazhIcFRMWlVvNGk4WHlhNkIrQklDSnRsZ3NTTFRsY2ttRklwRUlXZTUydTU4bStkc0FMTWNialFaWnJZNFhhMzh5bVlUVmF2M3pHSGtMUU0zeHlXUkNoWUxCSUlubTgvbStpZmFNNGlVQWZZNno4V0tpRlFvRkNwai9ySmNBcnRjcmhzTWh6YlE2MzZZQ3FIOG9iQXY0Rmd1VlVBVVJPb1o4TjRRRkVROGhOSXA1RUdHSEVROGg5RGptQlJWMkllRzdJZXhLcGhkVTJLV1VCeEYyTGRjTEt1eGh3b01JZTVycHp4UHRjU3I2ZWY0RkpURHBIU0lEc3o4QUFBQUFTVVZPUks1Q1lJST0/driveItem/thumbnails/0/c400x99999/content?preferNoRedirect=true&prefer=extendCacheMaxAge&clientType=modernWebPart 400 Image (async) he @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.overrideInternalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.overrideInternalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.overrideInternalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.internalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.overrideInternalRender @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 D @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.getAdaptiveCardHtmlNode @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 Bo @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 No @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 ys @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 pc @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 uc @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 ac @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 (anonymous) @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 t.unstable_runWithPriority @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 Gi @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 Qi @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 qi @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 Zs @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 Bc @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 Wc @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 t.render @ sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:69 (anonymous) @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 setTimeout (async) t.render @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t._onUpdateCallback @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 e.update @ sp-adaptive-card-extension-base_en-us_5a298b1510f52332ffcb.js:1 t.setState @ sp-adaptive-card-extension-base_en-us_5a298b1510f52332ffcb.js:1 e.setState @ sp-adaptive-card-extension-base_en-us_5a298b1510f52332ffcb.js:1 t.onAction @ recent-files-adaptive-card-extension_3a6c444137ed1a2c12e3.js:1 t._internalOnAction @ sp-adaptive-card-extension-base_en-us_5a298b1510f52332ffcb.js:1 (anonymous) @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 (anonymous) @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 Promise.then (async) t._handleAction @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t._onExecuteAction @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 e.onExecuteAction @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.raiseExecuteActionEvent @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 t.execute @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 n.onclick @ sp-adaptive-card-extension-web-part_en-us_e7cdf3599d8889e2dab8.js:2 Show 11 more frames sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:71 Uncaught (in promise) Error: No callbackHandler found. at e.sendMessage (sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:71:1040042) at sp-pages-assembly_en-us_4c01afd378054993e15cb0ace815637e.js:71:1156729

GuidoZam commented 2 years ago

Hi @dcashpeterson and thanks for the feedback, I'll take a look as soon as I can and let you know.

GuidoZam commented 2 years ago

Hi @dcashpeterson, I committed a fix for the console errors, it seems that the base64 images in the quick view card template generated those errors. I tried to verify the open button issue but I cannot reproduce the problem, can you please explain better what's the issue?