Conversation
FDC3 API Metadata (attempt 2)
❌ Deploy Preview for fdc3 failed. Why did it fail? →
|
|
I see this issue: |
| @@ -0,0 +1,7 @@ | |||
| # What you need to update if you want to do _ | |||
There was a problem hiding this comment.
Lets remove this as superseded by content in the wiki
|
|
||
| /** A cryptographic signature that can be used to verify the authenticity and integrity | ||
| * of the context or intent message. This is useful for security-sensitive applications. */ | ||
| signature?: string; |
There was a problem hiding this comment.
Its not what's intended no, but they do pass it through.
Your question has me wondering if we we should change this so you have two separate types for App-provided fields and and DA-provided fields that have no overlapping types, then a union that combines the two as the full set of metadata fields. That would be a lot easier to comprehend!
WDYT @julianna-ciq ?
| raiseIntent( | ||
| intent: Intent, | ||
| context: Context, | ||
| app?: AppIdentifier, |
There was a problem hiding this comment.
what if you want to raise an intent with metadata, but not appId? Do you put null for the app?
There was a problem hiding this comment.
As its optional, you can pass undefined. I believe this was @Roaders suggestion.
I more used to passing null (so make it required but union with null), but I'm not actually sure if that still a well thought of pattern... null has a meaning for us elsewhere (such as listen to all types) - is it more consistent for us to stick to a familiar pattern or is it better semantics to use undefined (as we are not providing that argument) 🤷♂️
Describe your change
Add support for sending metadata to FDC3 API calls
Related Issue
resolves #1290
ToDo List to complete PR
Follow up work post acceptance of PR
Contributor License Agreement
Review Checklist
DesktopAgent,Channel,PrivateChannel,Listener,Bridging)?JSDoc comments on interfaces and types should be matched to the main documentation in /docs
Conformance test definitions should cover all required aspects of an FDC3 Desktop Agent implementation, which are usually marked with a MUST keyword, and optional features (SHOULD or MAY) where the format of those features is defined
The Web Connection protocol and Desktop Agent Communication Protocol schemas must be able to support all necessary aspects of the Desktop Agent API, while Bridging must support those aspects necessary for Desktop Agents to communicate with each other
npm run build) run and the results checked in?Generated code will be found at
/src/api/BrowserTypes.tsand/or/src/bridging/BridgingTypes.tsBaseContextschema applied viaallOf(as it is in existing types)?titleanddescriptionprovided for all properties defined in the schema?npm run build) run and the results checked in?Generated code will be found at
/src/context/ContextTypes.ts