VS Code Extension: Order of extension's settings/configurations? - settings

this question is related to development of a VSCode Extension. My extension has configuration keys / settings that will be exposed to the user. The user will be able to set these configuration options as User Settings or as Workspace Settings.
Since VSCode 1.66 there is a new property "order" for Extensions with many configuration keys / settings. This property "order" allows to sort these configuration keys / settings. I have installed VSCode 1.75.1 but the order of the configuration keys / settings is still in alphabetical order
This is an extract of the package.json file. Each configuration key / setting has a "order" property.
{
"title": "Linebreaks SELECT",
"type": "object",
"properties": {
"sqlinform.ID148LinebreakAfterSelect": {
"order": 10,
"type": "boolean",
"default": true,
"description": "Linebreak After SELECT"
},
"sqlinform.ID185LinebreakBeforeInto": {
"order": 11,
"type": "boolean",
"default": true,
"description": "Linebreak Before INTO"
},
"sqlinform.ID159LinebreakAfterInto": {
"order": 12,
"type": "boolean",
"default": true,
"description": "Linebreak After INTO"
},
"sqlinform.ID182LinebreakBeforeFrom": {
"order": 13,
"type": "boolean",
"default": true,
"description": "Linebreak Before FROM"
},
"sqlinform.ID143LinebreakAfterFrom": {
"order": 14,
"type": "boolean",
"default": true,
"description": "Linebreak After FROM"
}
}
}
and this is the screenshot of the Setting Panel. The properties are still alphabetically ordered and the "order" property was no taken into consideration. For example, ID143LinebreakAfterFrom should be shown as last setting but it is shown on top of the list.
Any idea of what is going wrong here?
Looking to the general overview of the settings, they are shown in the correct sequence, i.e. in the sequence of the "order" property

Related

Power Automate Delivers Corrupted Files/PDFs - but Sharepoint files work fine

I have created a series of Power Automate Flows that connect with Microsoft Forms; many of them have multiple attachment requirements. When the form is submitted, the files are successfully parsed into the correct folders in the form's Sharepoint directory/directories, and the files work properly there. On the Power Automate side, however, only the first attachment goes through successfully; the others throw error messages like this:
Adobe Acrobat Failure alert: Acrobat could not open file because it is either not a supported file type or because the file has been damaged
As the form is organizational, I'm grabbing the user profile to populate some of the areas.
The schema for the JSON parse is:
{
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"link": {
"type": "string"
},
"id": {
"type": "string"
},
"type": {},
"size": {
"type": "integer"
},
"referenceId": {
"type": "string"
},
"driveId": {
"type": "string"
},
"status": {
"type": "integer"
},
"uploadSessionUrl": {}
},
"required": []
}
}
Here's the full automation with sensitive information redacted:
Power Automate Flow 1
Power Automate Flow 2
It would be much appreciated if someone could clarify why this is happening and how to correct it. We have people who work with the emails to process the paperwork and do/should not have access to Sharepoint, so other staff are supply the files by downloading them from their site.

Merge profile based on 2 property in Apache-Unomi

I am trying to build an customize logic in action for profile merging, can anybody suggest me how to create a rule where I can merge profile based on email and phone-number, as of now I am able to do with only one property value email. you can find the sample rule below in code :
"metadata": {
"id": "exampleLogin",
"name": "Example Login",
"description": "Copy event properties to profile properties on login"
},
"condition": {
"parameterValues": {
"subConditions": [
{
"type": "eventTypeCondition",
"parameterValues": {
"eventTypeId": "click"
}
}
],
"operator": "and"
},
"type": "booleanCondition"
},
"actions": [
{
"parameterValues": {
"mergeProfilePropertyValue": "eventProperty::target.properties(email)",
"mergeProfilePropertyName": "mergeIdentifier"
},
"type": "mergeProfilesOnPropertyAction"
},
{
"parameterValues": {
},
"type": "allEventToProfilePropertiesAction"
}
]
}
In order to be able to merge based on multiple identifiers you would have to extend the default built-in action to support that.
This can be done by creating a module but it will require some Java knowledge since this is how Unomi is implemented.
The code for the default merge action is available here:
https://github.com/apache/unomi/blob/master/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/actions/MergeProfilesOnPropertyAction.java

Microsoft Bot Framework not showing attaching file icons and its just showing the name?

I am developing BOT where I am sending some files to bot which seems working but the icon that is appearing in the chat window during send is just the file name rather then icon/logo of respective file extension.
So this is how its looking currently.
I want it to look like a rectangle kind of shape with respective icon effect like how any other char platform works.
This is not something that is native to the bot framework, mainly because all the channels handle it differently. For example, uploading a document on Teams shows the icon you're looking:
but webchat does not:
If you want the icon like the one that appears in Teams to appear in webchat, you're going to have to do it manually. The easiest way to do this is to have a check in your code for a successful upload, and then create a card with the icon, the file name, and an 'upload successful!' message.
Here's a rough idea:
{
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"version": "1.0",
"type": "AdaptiveCard",
"speak": "<s>Your flight is confirmed for you and 3 other passengers from San Francisco to Amsterdam on Friday, October 10 8:30 AM</s>",
"body": [
{
"type": "TextBlock",
"text": "Upload Successful!",
"weight": "Bolder"
},
{
"type": "ColumnSet",
"separator": true,
"columns": [
{
"type": "Column",
"width": "auto",
"items": [
{
"type": "TextBlock",
"text": " "
},
{
"type": "Image",
"url": "https://lh3.googleusercontent.com/proxy/gg1rCqkRVyyJ_wt67HExRIjYf4NvaRYVUXpg3crwUK7joCyVSeYmEJ3EgnLI3QbtX-1ulZYPF_6THsjituT2OG2z",
"size": "Small",
"spacing": "None"
}
]
},
{
"type": "Column",
"width": 1,
"items": [
{
"type": "TextBlock",
"horizontalAlignment": "Right",
"size": "ExtraLarge",
"color": "Accent",
"text": "cat-2.5.gcode",
"spacing": "None"
}
]
}
]
}
]
}

Bot Framework V3, How to get Adjacent Submit Action buttons in an adaptive card with c#

I am trying to get adjacent submit actionsDesired submit action,rather than the default action buttons(one below the other) that we get in an adaptive carddefault submit action buttons. Please refer the images attached.
It would be helpful if you can let me know how can we achieve this using C#. Thanks for the help in advance.
Unfortunately, the button orientation in the Botframework is channel specific. The only channels where it is possible to align buttons on the same line is WebChat and DirectLine, but the process to change the button alignment in those two channels is quite complicated.
A simple way to solve your issue would be to create two columns and add a selectAction attribute to each column. That way when the user clicks on the column it will invoke the corresponding action. This approach works with the OpenUrl and Submit actions but doesn't work with the ShowCard action. The only other downside to this approach is that each column will not be formatted the same as the other buttons (there's no way to put an outline around each column), but you can add an image to each column to get the desired UI.
Hope this helps.
{
"type": "ColumnSet",
"spacing": "Medium",
"columns": [
{
"type": "Column",
"selectAction": {
"type": "Action.OpenUrl",
"url": "https://www.microsoft.com/"
},
"items": [
{
"type": "TextBlock",
"horizontalAlignment": "Center",
"size": "Large",
"weight": "Bolder",
"color": "Accent",
"text": "Set due date"
}
],
"width": 1
},
{
"type": "Column",
"selectAction": {
"type": "Action.OpenUrl",
"url": "https://www.microsoft.com/"
},
"items": [
{
"type": "TextBlock",
"horizontalAlignment": "Center",
"size": "Large",
"weight": "Bolder",
"color": "Accent",
"text": "Comment"
}
],
"width": 1
}

Alexa Skill: Interaction model is not being updated during test

I am developing a Alexa Skill and I have an Intent named NewAppointmentIntent which originally had 7 slots.
I have added a new Slot yesterday named Doctor and successfully built the Skill.
When I invoke that intent, it still have 7 Slots and not 8. The Doctor Slot does not appears in the request and responses outputs.
The Intent in images:
The output when invocing the Intent, where slot Doctor expected in slots attribute:
"request": {
"type": "IntentRequest",
"requestId": "amzn1.echo-api.request.9529849e-190d-4278-95a8-3702b3ee4d1c",
"timestamp": "2018-12-12T10:05:14Z",
"locale": "en-US",
"intent": {
"name": "NewAppointmentIntent",
"confirmationStatus": "NONE",
"slots": {
"Status": {
"name": "Status",
"confirmationStatus": "NONE"
},
"Comment": {
"name": "Comment",
"confirmationStatus": "NONE"
},
"ReasonForVisit": {
"name": "ReasonForVisit",
"confirmationStatus": "NONE"
},
"Time": {
"name": "Time",
"confirmationStatus": "NONE"
},
"EmergencyType": {
"name": "EmergencyType",
"confirmationStatus": "NONE"
},
"PatientNumber": {
"name": "PatientNumber",
"confirmationStatus": "NONE"
},
"Day": {
"name": "Day",
"confirmationStatus": "NONE"
}
}
},
"dialogState": "STARTED"
}
So I wish to know how to refresh the Skill?
Close the window, re-open and in your console -> Save the model -> Build the model. Then test again.
If still doesn't show, click on the JSON Editor(this will be the last option in the list of your Interaction model), then in your NewAppointmentIntent can you see the Docter slot in the slots array?
If not, then maybe something was broken when you created the slot. So delete the Docter slot and re-add it. Then again verify it in JSON editor and this should solve the problem.

Resources