Skip to content

Commit

Permalink
Adding missing id/name fields to context schema docs and fixing rende…
Browse files Browse the repository at this point in the history
…ring of internal references
  • Loading branch information
kriswest committed Sep 19, 2024
1 parent 6018f81 commit 93cf6fd
Show file tree
Hide file tree
Showing 53 changed files with 732 additions and 231 deletions.
2 changes: 1 addition & 1 deletion docs/api/ref/DesktopAgent.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ An FDC3 Desktop Agent is a desktop component (or aggregate of components) that s

A Desktop Agent can be connected to one or more App Directories and will use directories for application identity and discovery. Typically, a Desktop Agent will contain the proprietary logic of a given platform, handling functionality like explicit application interop workflows where security, consistency, and implementation requirements are proprietary.

For details of how implementations of the `DesktopAgent` are made available to applications please see [Supported Platforms](supported-platforms).
For details of how implementations of the `DesktopAgent` are made available to applications please see [Supported Platforms](../supported-platforms).

<Tabs groupId="lang">
<TabItem value="ts" label="TypeScript/JavaScript">
Expand Down
6 changes: 3 additions & 3 deletions docs/api/spec.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ FDC3 and the Desktop Agent API it defines are intended to be independent of part

Specifically, the use of ['unions'](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types) of primitive values in API type and metadata objects, or function parameters SHOULD be avoided as they often cannot be replicated in other languages. Unions of more complex types (such as specific [Context](../context/spec#the-context-interface) Types) may be used where a suitable interface is available or can be created to allow the required polymorphism in languages other than TypeScript.

For implementation details relating to particular languages, and how to access the API in those languages, please see [Supported Platforms](supported-platforms).
For implementation details relating to particular languages, and how to access the API in those languages, please see [Supported Platforms](./supported-platforms).

### Standards vs. Implementation

Expand Down Expand Up @@ -90,8 +90,8 @@ There is currently no method of discovering all the apps supported by a Desktop

An FDC3 Standard compliant Desktop Agent implementation **MUST**:

- Provide the FDC3 API to web applications via a global accessible as [`window.fdc3`](support-platforms#web).
- Provide a global [`fdc3Ready`](support-platforms#web) event to web applications that is fired when the API is ready for use.
- Provide the FDC3 API to web applications via a global accessible as [`window.fdc3`](./supported-platforms#web).
- Provide a global [`fdc3Ready`](./supported-platforms#web) event to web applications that is fired when the API is ready for use.
- Provide a method of resolving ambiguous intents (i.e. those that might be resolved by multiple applications) or unspecified intents (calls to `raiseIntentForContext` that return multiple options), such as a resolver UI.
- Intent resolution MUST take into account any specified input or return context types
- Requests for resolution to apps returning a channel MUST include any apps that are registered as returning a channel with a specific type.
Expand Down
6 changes: 3 additions & 3 deletions docs/api/supported-platforms.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ if (window.fdc3) {
}
```

Since FDC3 is typically available to the whole web application, Desktop Agents are expected to make the [`DesktopAgent`](DesktopAgent) interface available at a global level.
Since FDC3 is typically available to the whole web application, Desktop Agents are expected to make the [`DesktopAgent`](ref/DesktopAgent) interface available at a global level.

The global `window.fdc3` should only be available after the API is ready to use. To prevent the API from being used before it is ready, implementors should provide an `fdc3Ready` event.

Expand Down Expand Up @@ -58,7 +58,7 @@ if (window.fdc3) {

#### 2. NPM Wrapper

FDC3 offers the [`@finos/fdc3` npm package](https://www.npmjs.com/package/@finos/fdc3) that can be used by web applications to target operations from the [API Specification](api/spec) in a consistent way. Each FDC3-compliant desktop agent that the application runs in, can then provide an implementation of the FDC3 API operations.
FDC3 offers the [`@finos/fdc3` npm package](https://www.npmjs.com/package/@finos/fdc3) that can be used by web applications to target operations from the [API Specification](./spec) in a consistent way. Each FDC3-compliant desktop agent that the application runs in, can then provide an implementation of the FDC3 API operations.

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
Expand Down Expand Up @@ -118,7 +118,7 @@ For a .NET application to be FDC3-enabled, it needs to run in the context of a p

#### Usage

FDC3 offers the [`Finos.Fdc3` NuGet package](https://www.nuget.org/packages/Finos.Fdc3) that can be used by .NET applications to target operations from the [API Specification](api/spec) in a consistent way. Each FDC3-compliant desktop agent that the application runs in, can then provide an implementation of the FDC3 API operations.
FDC3 offers the [`Finos.Fdc3` NuGet package](https://www.nuget.org/packages/Finos.Fdc3) that can be used by .NET applications to target operations from the [API Specification](./spec) in a consistent way. Each FDC3-compliant desktop agent that the application runs in, can then provide an implementation of the FDC3 API operations.


## Hybrid
Expand Down
1 change: 1 addition & 0 deletions docs/context/ref/Action.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ Optional Intent to raise to perform the actions. Should reference an intent type

**type**: [Context](/docs/next/context/spec#the-context-interface)


A context object with which the action will be performed

</details>
Expand Down
1 change: 1 addition & 0 deletions docs/context/ref/Chart.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ The type of chart that should be plotted

**type**: [Context](/docs/next/context/spec#the-context-interface)


</details>

It is common for charts to support other configuration, such as indicators, annotations etc., which do not have standardized formats, but may be included in the `otherConfig` array as context objects.
Expand Down
8 changes: 2 additions & 6 deletions docs/context/ref/ChatInitSettings.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,8 @@ Contacts to add to the chat

**One of:**

**type**: `string`


**type**: [Message](Message)


- **type**: `string`
- **type**: [Message](Message)

An initial message to post in the chat when created.

Expand Down
7 changes: 7 additions & 0 deletions docs/context/ref/ChatRoom.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,13 @@ The name of the service that hosts the chat

**type**: `object`

<details>
<summary><code>Additional Properties</code></summary>

**type**: `string`

</details>

Identifier(s) for the chat - currently unstandardized

</details>
Expand Down
15 changes: 7 additions & 8 deletions docs/context/ref/ChatSearchCriteria.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,19 +26,18 @@ A context type that represents a simple search criterion, based on a list of oth
<details>
<summary><code>Items</code></summary>

**Any of:**
<summary><code>Search Criteria</code></summary>

**type**: [Instrument](Instrument)
**One of:**

- **type**: [Instrument](Instrument)
- **type**: [Organization](Organization)
- **type**: [Contact](Contact)
- **type**: `string`

**type**: [Organization](Organization)
An individual criteria against which to match chat messages, based on an FDC3 context or free-text string.


**type**: [Contact](Contact)


**type**: `string`



</details>
Expand Down
9 changes: 9 additions & 0 deletions docs/context/ref/Contact.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,15 @@ Identifiers that relate to the Contact represented by this context

</details>

<details>
<summary><code>name</code></summary>

**type**: `string`

An optional human-readable name for the contact

</details>

## Example

```json
Expand Down
25 changes: 25 additions & 0 deletions docs/context/ref/ContactList.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,31 @@ The contact list schema does not explicitly include identifiers in the `id` sect

## Properties

<details>
<summary><code>id</code></summary>

**type**: `object`

<details>
<summary><code>Additional Properties</code></summary>

**type**: `string`

</details>

One or more identifiers that refer to the contact list in an OMS, EMS or related system. Specific key names for systems are expected to be standardized in future.

</details>

<details>
<summary><code>name</code></summary>

**type**: `string`

An optional human-readable summary of the contact list

</details>

<details>
<summary><code>contacts</code> <strong>(required)</strong></summary>

Expand Down
9 changes: 9 additions & 0 deletions docs/context/ref/Country.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,15 @@ Three-letter ISO country code. Deprecated in FDC3 2.0 in favour of the version p

</details>

<details>
<summary><code>name</code></summary>

**type**: `string`

An optional human-readable name for the country

</details>

## Example

```json
Expand Down
8 changes: 2 additions & 6 deletions docs/context/ref/Email.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,8 @@ A collection of information to be used to initiate an email with a Contact or Co

**One of:**

**type**: [Contact](Contact)


**type**: [ContactList](ContactList)


- **type**: [Contact](Contact)
- **type**: [ContactList](ContactList)

One or more recipients for the email.

Expand Down
9 changes: 9 additions & 0 deletions docs/context/ref/Instrument.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,15 @@ If the identifier you want to share is not a ticker or one of the other standard

</details>

<details>
<summary><code>name</code></summary>

**type**: `string`

An optional human-readable name for the instrument

</details>

<details>
<summary><code>market</code></summary>

Expand Down
25 changes: 25 additions & 0 deletions docs/context/ref/InstrumentList.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,31 @@ The instrument list schema does not explicitly include identifiers in the `id` s

## Properties

<details>
<summary><code>id</code></summary>

**type**: `object`

<details>
<summary><code>Additional Properties</code></summary>

**type**: `string`

</details>

One or more identifiers that refer to the instrument list in an OMS, EMS or related system. Specific key names for systems are expected to be standardized in future.

</details>

<details>
<summary><code>name</code></summary>

**type**: `string`

An optional human-readable summary of the instrument list

</details>

<details>
<summary><code>instruments</code> <strong>(required)</strong></summary>

Expand Down
8 changes: 2 additions & 6 deletions docs/context/ref/Interaction.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,16 +79,12 @@ The time range over which the interaction occurred

**One of:**

**type**: `string` with values:
- **type**: `string` with values:
- `Instant Message`,
- `Email`,
- `Call`,
- `Meeting`


**type**: `string`


- **type**: `string`

`interactionType` SHOULD be one of `'Instant Message'`, `'Email'`, `'Call'`, or `'Meeting'` although other string values are permitted.

Expand Down
8 changes: 2 additions & 6 deletions docs/context/ref/Message.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,12 +57,8 @@ A map of string mime-type to string content

**Any of:**

**type**: [Action](Action)


**type**: `object`


- **type**: [Action](Action)
- **type**: `object`

</details>

Expand Down
25 changes: 25 additions & 0 deletions docs/context/ref/OrderList.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,31 @@ The OrderList schema does not explicitly include identifiers in the id section,

## Properties

<details>
<summary><code>id</code></summary>

**type**: `object`

<details>
<summary><code>Additional Properties</code></summary>

**type**: `string`

</details>

One or more identifiers that refer to the order list in an OMS, EMS or related system. Specific key names for systems are expected to be standardized in future.

</details>

<details>
<summary><code>name</code></summary>

**type**: `string`

An optional human-readable summary of the order list

</details>

<details>
<summary><code>orders</code> <strong>(required)</strong></summary>

Expand Down
9 changes: 9 additions & 0 deletions docs/context/ref/Organization.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,15 @@ Identifiers for the organization, at least one must be provided.

</details>

<details>
<summary><code>name</code></summary>

**type**: `string`

An optional human-readable name of the organization

</details>

## Example

```json
Expand Down
25 changes: 25 additions & 0 deletions docs/context/ref/Portfolio.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,31 @@ The List of Positions which make up the Portfolio

</details>

<details>
<summary><code>id</code></summary>

**type**: `object`

<details>
<summary><code>Additional Properties</code></summary>

**type**: `string`

</details>

One or more identifiers that refer to the portfolio in an OMS, EMS or related system. Specific key names for systems are expected to be standardized in future.

</details>

<details>
<summary><code>name</code></summary>

**type**: `string`

An optional human-readable name for the portfolio

</details>

## Example

```json
Expand Down
Loading

0 comments on commit 93cf6fd

Please sign in to comment.