@genesislcap/foundation-fdc3 14.227.3 → 14.227.4-FUI-2256.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (26) hide show
  1. package/dist/dts/fdc3.d.ts.map +1 -1
  2. package/dist/dts/logger.d.ts +2 -0
  3. package/dist/dts/logger.d.ts.map +1 -0
  4. package/dist/dts/util/fdc3-context-listener.d.ts +42 -14
  5. package/dist/dts/util/fdc3-context-listener.d.ts.map +1 -1
  6. package/dist/dts/util/fdc3-system-channel-listener.d.ts +55 -17
  7. package/dist/dts/util/fdc3-system-channel-listener.d.ts.map +1 -1
  8. package/dist/esm/fdc3.js +3 -0
  9. package/dist/esm/logger.js +2 -0
  10. package/dist/esm/util/fdc3-context-listener.js +53 -14
  11. package/dist/esm/util/fdc3-system-channel-listener.js +65 -28
  12. package/dist/foundation-fdc3.api.json +302 -0
  13. package/dist/foundation-fdc3.d.ts +95 -31
  14. package/docs/api/foundation-fdc3.fdc3contextlistener.addchannellistener.md +15 -0
  15. package/docs/api/foundation-fdc3.fdc3contextlistener.channelname.md +22 -0
  16. package/docs/api/foundation-fdc3.fdc3contextlistener.md +53 -0
  17. package/docs/api/foundation-fdc3.fdc3systemchannellistener.addchannellistener.md +15 -0
  18. package/docs/api/foundation-fdc3.fdc3systemchannellistener.connectedcallback.md +15 -0
  19. package/docs/api/foundation-fdc3.fdc3systemchannellistener.contexttype.md +22 -0
  20. package/docs/api/foundation-fdc3.fdc3systemchannellistener.disconnectedcallback.md +15 -0
  21. package/docs/api/foundation-fdc3.fdc3systemchannellistener.handlecurrentcontext.md +22 -0
  22. package/docs/api/foundation-fdc3.fdc3systemchannellistener.md +55 -0
  23. package/docs/api/foundation-fdc3.md +2 -0
  24. package/docs/api-report.md +12 -25
  25. package/package.json +15 -14
  26. package/test/fdc3.mock.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"fdc3.d.ts","sourceRoot":"","sources":["../../src/fdc3.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fdc3.d.ts","sourceRoot":"","sources":["../../src/fdc3.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,aAAa,EACb,SAAS,EACT,OAAO,EACP,aAAa,EACb,OAAO,EACP,OAAO,EACP,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,QAAQ,EACR,cAAc,EACd,cAAc,EACf,MAAM,aAAa,CAAC;AAIrB,OAAO,EAAE,UAAU,EAAiB,MAAM,MAAM,CAAC;AAIjD,YAAY,EACV,aAAa,EACb,SAAS,EACT,OAAO,EACP,aAAa,EACb,OAAO,EACP,OAAO,EACP,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,QAAQ,EACR,cAAc,EACd,cAAc,GACf,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC;AAElC;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC;AAEhD;;;;GAIG;AACH,MAAM,WAAW,aAAc,SAAQ,SAAS;CAAG;AAEnD;;;;GAIG;AACH,MAAM,WAAW,WAAY,SAAQ,OAAO;CAAG;AAE/C;;;;GAIG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;CAAG;AAEjE;;;;GAIG;AACH,MAAM,WAAW,WAAY,SAAQ,OAAO;CAAG;AAE/C;;;GAGG;AACH,MAAM,WAAW,IAAI;IACnB;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;;OAGG;IACH,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;IAE3B;;;OAGG;IACH,aAAa,EAAE,MAAM,OAAO,CAAC;IAE7B;;;;OAIG;IACH,eAAe,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IAEzC;;;;OAIG;IACH,kBAAkB,CAAC,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE,kBAAkB,CAAC,GAAG,IAAI,CAAC;IAE1E;;;;;;OAMG;IACH,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAE/E;;;;;OAKG;IACH,oBAAoB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAErE;;;;;OAKG;IACH,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAE3E;;;;;;OAMG;IACH,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAEvF;;;;;OAKG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C;;;;;OAKG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAE5D;;;;;OAKG;IACH,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnF;;;;OAIG;IACH,yBAAyB,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtE;;;;OAIG;IACH,8BAA8B,CAC5B,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAEtC;;;;;SAKK;IACL,kBAAkB,CAChB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,CAAC,GAAG,KAAA,KAAK,IAAI,GACtB,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpB;;;;SAIK;IACL,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,KAAA,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtF;;SAEK;IACL,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtC;;;;;SAKK;IACL,2BAA2B,CACzB,OAAO,EAAE,OAAO,GAAG,WAAW,EAC9B,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,CAAC,WAAW,KAAA,KAAK,GAAG,GACrC,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB;AAED;;;GAGG;AACH,qBAAa,WAAY,YAAW,IAAI;IAE/B,OAAO,UAAS;IAEvB,OAAO,CAAC,SAAS,CAA6B;IAE9C,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAiC;IAE3D,OAAO,CAAC,gBAAgB,CAAgC;IAExD,OAAO,CAAC,eAAe,CAAwB;IAE/C,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,CAAwC;IAE5E,aAAa,QAAO,OAAO,CAAgB;;YAM7B,IAAI;IAoBX,kBAAkB,CAAC,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE,kBAAkB,CAAC,GAAG,IAAI;IAOzE,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAK9E,oBAAoB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAK9D,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAKhF,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAShF,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUnD,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKrD,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlF,yBAAyB,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOrE,8BAA8B,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,eAC1D,GAAG;IAOT,kBAAkB,CAC7B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,CAAC,GAAG,KAAA,KAAK,IAAI;IAOZ,wBAAwB,CACnC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,CAAC,GAAG,KAAA,KAAK,IAAI,GACtB,OAAO,CAAC,IAAI,CAAC;IAKH,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC,2BAA2B,CACtC,OAAO,EAAE,OAAO,GAAG,WAAW,EAC9B,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,CAAC,WAAW,KAAA,KAAK,GAAG,GACrC,OAAO,CAAC,IAAI,CAAC;IAOhB,OAAO,CAAC,yBAAyB;YAWnB,0BAA0B;YAa1B,2BAA2B;CAc1C;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI,4DAA4D,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const logger: import("@genesislcap/foundation-logger").Logger;
2
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,iDAAkC,CAAC"}
@@ -1,19 +1,47 @@
1
- import { Fdc3SystemChannelListener, SystemChannelListenerConfig } from './fdc3-system-channel-listener';
1
+ import { Fdc3SystemChannelListener } from './fdc3-system-channel-listener';
2
2
  /**
3
- * fdc3-context-listener listen channel config
4
- * @alpha
5
- * @param channelType - string for the context channel type
6
- * @param callback - async function that is called if a message with a matching context is emitted
7
- */
8
- export interface AppChannelListenerConfig extends SystemChannelListenerConfig {
9
- channelName: string;
10
- }
11
- /**
12
- * fdc3-context-listener listen to app channel context
13
- * @alpha
3
+ * fdc3-context-listener
4
+ * Util element to listen to the context on a fdc3 app channel
5
+ * @public
6
+ * @tagname fdc3-context-listener
7
+ * @example
8
+ * ```ts
9
+ * import { customElement, GenesisElement, html } from '@genesislcap/web-core';
10
+ * @customElement({
11
+ * name: 'example-component',
12
+ * template: html<ExampleComponent>`
13
+ * <fdc3-context-listener
14
+ * @channel-event="${(x, ctx) => x.handleChannelMessage(customEvent(ctx))}"
15
+ * context-type="fdc3.position"
16
+ * channel-name="my_custom_channel">
17
+ * </fdc3-context-listener>
18
+ * `,
19
+ * })
20
+ * class ExampleComponent extends GenesisElement {
21
+ * handleChannelMessage(e: CustomEvent) {
22
+ * const message = e.detail;
23
+ * if (message?.id?.ticker) {
24
+ * console.log(message.id.ticker);
25
+ * // ToDo: handle the message as you like
26
+ * }
27
+ * }
28
+ * }
29
+ * ```
30
+ * @param Context - the fdc3 context type
31
+ * @fires channel-event - Dispatched when an event matching the context is dispatched from the system channel
32
+ *
33
+ * @param Context - the fdc3 context type
34
+ * @fires current-context - The current context value of the channel, if present
14
35
  */
15
36
  export declare class Fdc3ContextListener extends Fdc3SystemChannelListener {
16
- config: AppChannelListenerConfig[];
17
- protected addChannelListeners(): void;
37
+ /**
38
+ * The name of the channel you want to listen to. Read more about fdc3 app channels at https://fdc3.finos.org/docs/api/spec#app-channels
39
+ * @example this will listen to the system channel for updates on the type `my_custom_channel` with context `fdc3.position`
40
+ * ```ts
41
+ * <fdc3-context-listener context-type="fdc3.position" channel-name="my_custom_channel"></fdc3-context-listener>
42
+ * ```
43
+ */
44
+ channelName: string;
45
+ protected addChannelListener(): Promise<void>;
18
46
  }
19
47
  //# sourceMappingURL=fdc3-context-listener.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fdc3-context-listener.d.ts","sourceRoot":"","sources":["../../../src/util/fdc3-context-listener.ts"],"names":[],"mappings":"AACA,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC5B,MAAM,gCAAgC,CAAC;AAExC;;;;;GAKG;AACH,MAAM,WAAW,wBAAyB,SAAQ,2BAA2B;IAC3E,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,qBAGa,mBAAoB,SAAQ,yBAAyB;IAChE,MAAM,EAAE,wBAAwB,EAAE,CAAM;IAExC,SAAS,CAAC,mBAAmB,IAAI,IAAI;CAStC"}
1
+ {"version":3,"file":"fdc3-context-listener.d.ts","sourceRoot":"","sources":["../../../src/util/fdc3-context-listener.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAGa,mBAAoB,SAAQ,yBAAyB;IAChE;;;;;;OAMG;IACkC,WAAW,EAAE,MAAM,CAAC;cAEzC,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;CAiBpD"}
@@ -1,15 +1,6 @@
1
1
  import { FoundationElement } from '@genesislcap/web-core';
2
- import { FDC3 } from '../fdc3';
3
- /**
4
- * System channel listener config. System channels are also known as color channels
5
- * @alpha
6
- * @param channelType - string for the context channel type
7
- * @param callback - function that is called if a message with a matching context is emitted
8
- */
9
- export interface SystemChannelListenerConfig {
10
- channelType: string;
11
- callback: (any: any) => void;
12
- }
2
+ import { Subscription } from 'rxjs';
3
+ import { FDC3, FDC3Channel } from '../fdc3';
13
4
  declare const Fdc3SystemChannelListener_base: (new (...args: any[]) => {
14
5
  "__#1@#_container": import("@genesislcap/foundation-utils").FoundationLayoutContainer | import("@genesislcap/foundation-utils").LayoutCacheContainer | import("@genesislcap/foundation-utils").DOMContainer;
15
6
  "__#1@#_latestTokenCode": string;
@@ -335,18 +326,65 @@ declare const Fdc3SystemChannelListener_base: (new (...args: any[]) => {
335
326
  blur(): void;
336
327
  focus(options?: FocusOptions): void;
337
328
  }) & typeof FoundationElement;
329
+ /**
330
+ * The Grid Pro element.
331
+ * @remarks Grid Pro is a Web Component wrapper around the AG Grid Community library.
332
+ * @public
333
+ * @tagname %%prefix%%-grid-pro
334
+ */
338
335
  /**
339
336
  * fdc3-system-channel-listener
340
337
  * Util element to listen to the context on a fdc3 system channel
341
- * @alpha
342
- */
338
+ * @public
339
+ * @tagname fdc3-system-channel-listener
340
+ * @example
341
+ * ```ts
342
+ * import { customElement, GenesisElement, html } from '@genesislcap/web-core';
343
+ * @customElement({
344
+ * name: 'example-component',
345
+ * template: html<ExampleComponent>`
346
+ * <fdc3-system-channel-listener
347
+ * @channel-event="${(x, ctx) => x.handleChannelMessage(customEvent(ctx))}"
348
+ * context-type="fdc3.position">
349
+ * </fdc3-system-channel-listener>
350
+ * `,
351
+ * })
352
+ * class ExampleComponent extends GenesisElement {
353
+ * handleChannelMessage(e: CustomEvent) {
354
+ * const message = e.detail;
355
+ * if (message?.id?.ticker) {
356
+ * console.log(message.id.ticker);
357
+ * // ToDo: handle the message as you like
358
+ * }
359
+ * }
360
+ * }
361
+ * ```
362
+ * @param Context - the fdc3 context type
363
+ * @fires channel-event - Dispatched when an event matching the context is dispatched from the system channel
364
+ *
365
+ * @param Context - the fdc3 context type
366
+ * @fires current-context - The current context value of the channel, if present
367
+ * */
343
368
  export declare class Fdc3SystemChannelListener extends Fdc3SystemChannelListener_base {
344
- config: SystemChannelListenerConfig[];
369
+ /**
370
+ * The context type on the channel you want to listen to. Read more about fdc3 context type at https://fdc3.finos.org/docs/context/ref/Context
371
+ * @example this will listen to the system channel for updates on the type `fdc3.position`
372
+ * ```ts
373
+ * <fdc3-system-channel-listener context-type="fdc3.position"></fdc3-system-channel-listener>
374
+ * ```
375
+ */
376
+ contextType: string;
377
+ /**
378
+ * @internal
379
+ */
380
+ protected channelSub: Subscription;
381
+ /**
382
+ * @internal
383
+ */
345
384
  fdc3: FDC3;
346
- deepClone(): Node;
347
385
  connectedCallback(): void;
348
- private channelSub;
349
- protected addChannelListeners(): void;
386
+ protected addChannelListener(): void;
387
+ protected handleCurrentContext(channel: FDC3Channel): void;
350
388
  disconnectedCallback(): void;
351
389
  }
352
390
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"fdc3-system-channel-listener.d.ts","sourceRoot":"","sources":["../../../src/util/fdc3-system-channel-listener.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,CAAC,GAAG,KAAA,KAAK,IAAI,CAAC;CACzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAED;;;;GAIG;AACH,qBAGa,yBAA0B,SAAQ,8BAAiC;IAC9E,MAAM,EAAE,2BAA2B,EAAE,CAAM;IAErC,IAAI,EAAE,IAAI,CAAC;IAER,SAAS,IAAI,IAAI;IAgB1B,iBAAiB;IAUjB,OAAO,CAAC,UAAU,CAAsB;IAExC,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAarC,oBAAoB;CAIrB"}
1
+ {"version":3,"file":"fdc3-system-channel-listener.d.ts","sourceRoot":"","sources":["../../../src/util/fdc3-system-channel-listener.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,iBAAiB,EAAQ,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAS,YAAY,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAG5C;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAgCK;AACL,qBAGa,yBAA0B,SAAQ,8BAAiC;IAC9E;;;;;;OAMG;IACkC,WAAW,EAAE,MAAM,CAAC;IAEzD;;OAEG;IACH,SAAS,CAAC,UAAU,eAAsB;IAE1C;;OAEG;IACG,IAAI,EAAE,IAAI,CAAC;IAEjB,iBAAiB;IAOjB,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAepC,SAAS,CAAC,oBAAoB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAQ1D,oBAAoB;CAIrB"}
package/dist/esm/fdc3.js CHANGED
@@ -28,6 +28,9 @@ export class DefaultFDC3 {
28
28
  logger.debug('fdc3 already connected');
29
29
  return;
30
30
  }
31
+ else {
32
+ logger.warn('fdc3 not connected');
33
+ }
31
34
  try {
32
35
  yield fdc3Ready();
33
36
  this.isReady = true;
@@ -0,0 +1,2 @@
1
+ import { createLogger } from '@genesislcap/foundation-logger';
2
+ export const logger = createLogger('foundation-fdc3');
@@ -1,23 +1,62 @@
1
- import { __decorate } from "tslib";
2
- import { customElement } from '@genesislcap/web-core';
3
- import { Fdc3SystemChannelListener, } from './fdc3-system-channel-listener';
1
+ import { __awaiter, __decorate } from "tslib";
2
+ import { attr, customElement } from '@genesislcap/web-core';
3
+ import { logger } from '../utils';
4
+ import { Fdc3SystemChannelListener } from './fdc3-system-channel-listener';
4
5
  /**
5
- * fdc3-context-listener listen to app channel context
6
- * @alpha
6
+ * fdc3-context-listener
7
+ * Util element to listen to the context on a fdc3 app channel
8
+ * @public
9
+ * @tagname fdc3-context-listener
10
+ * @example
11
+ * ```ts
12
+ * import { customElement, GenesisElement, html } from '@genesislcap/web-core';
13
+ * @customElement({
14
+ * name: 'example-component',
15
+ * template: html<ExampleComponent>`
16
+ * <fdc3-context-listener
17
+ * @channel-event="${(x, ctx) => x.handleChannelMessage(customEvent(ctx))}"
18
+ * context-type="fdc3.position"
19
+ * channel-name="my_custom_channel">
20
+ * </fdc3-context-listener>
21
+ * `,
22
+ * })
23
+ * class ExampleComponent extends GenesisElement {
24
+ * handleChannelMessage(e: CustomEvent) {
25
+ * const message = e.detail;
26
+ * if (message?.id?.ticker) {
27
+ * console.log(message.id.ticker);
28
+ * // ToDo: handle the message as you like
29
+ * }
30
+ * }
31
+ * }
32
+ * ```
33
+ * @param Context - the fdc3 context type
34
+ * @fires channel-event - Dispatched when an event matching the context is dispatched from the system channel
35
+ *
36
+ * @param Context - the fdc3 context type
37
+ * @fires current-context - The current context value of the channel, if present
7
38
  */
8
39
  let Fdc3ContextListener = class Fdc3ContextListener extends Fdc3SystemChannelListener {
9
- constructor() {
10
- super(...arguments);
11
- this.config = [];
12
- }
13
- addChannelListeners() {
14
- this.config.forEach((c) => this.fdc3.addChannelListener(c.channelName, c.channelType, (message) => {
15
- if (message.type === c.channelType) {
16
- c.callback(message);
40
+ addChannelListener() {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ if (!this.contextType) {
43
+ logger.warn('Fdc3SystemChannelListener: no context type provided');
44
+ }
45
+ else if (!this.channelName) {
46
+ logger.warn('Fdc3SystemChannelListener: no channel name provided');
47
+ }
48
+ else {
49
+ const channel = yield this.fdc3.addChannelListener(this.channelName, this.contextType, (context) => {
50
+ this.$emit('channel-event', context);
51
+ });
52
+ this.handleCurrentContext(channel);
17
53
  }
18
- }));
54
+ });
19
55
  }
20
56
  };
57
+ __decorate([
58
+ attr({ attribute: 'channel-name' })
59
+ ], Fdc3ContextListener.prototype, "channelName", void 0);
21
60
  Fdc3ContextListener = __decorate([
22
61
  customElement({
23
62
  name: 'fdc3-context-listener',
@@ -1,47 +1,81 @@
1
- import { __awaiter, __decorate } from "tslib";
1
+ import { __decorate } from "tslib";
2
2
  import { LifecycleMixin } from '@genesislcap/foundation-utils';
3
- import { customElement, FoundationElement } from '@genesislcap/web-core';
3
+ import { customElement, FoundationElement, attr } from '@genesislcap/web-core';
4
4
  import { first, Subscription } from 'rxjs';
5
5
  import { FDC3 } from '../fdc3';
6
+ import { logger } from '../utils';
7
+ /**
8
+ * The Grid Pro element.
9
+ * @remarks Grid Pro is a Web Component wrapper around the AG Grid Community library.
10
+ * @public
11
+ * @tagname %%prefix%%-grid-pro
12
+ */
6
13
  /**
7
14
  * fdc3-system-channel-listener
8
15
  * Util element to listen to the context on a fdc3 system channel
9
- * @alpha
10
- */
16
+ * @public
17
+ * @tagname fdc3-system-channel-listener
18
+ * @example
19
+ * ```ts
20
+ * import { customElement, GenesisElement, html } from '@genesislcap/web-core';
21
+ * @customElement({
22
+ * name: 'example-component',
23
+ * template: html<ExampleComponent>`
24
+ * <fdc3-system-channel-listener
25
+ * @channel-event="${(x, ctx) => x.handleChannelMessage(customEvent(ctx))}"
26
+ * context-type="fdc3.position">
27
+ * </fdc3-system-channel-listener>
28
+ * `,
29
+ * })
30
+ * class ExampleComponent extends GenesisElement {
31
+ * handleChannelMessage(e: CustomEvent) {
32
+ * const message = e.detail;
33
+ * if (message?.id?.ticker) {
34
+ * console.log(message.id.ticker);
35
+ * // ToDo: handle the message as you like
36
+ * }
37
+ * }
38
+ * }
39
+ * ```
40
+ * @param Context - the fdc3 context type
41
+ * @fires channel-event - Dispatched when an event matching the context is dispatched from the system channel
42
+ *
43
+ * @param Context - the fdc3 context type
44
+ * @fires current-context - The current context value of the channel, if present
45
+ * */
11
46
  let Fdc3SystemChannelListener = class Fdc3SystemChannelListener extends LifecycleMixin(FoundationElement) {
12
47
  constructor() {
13
48
  super(...arguments);
14
- this.config = [];
49
+ /**
50
+ * @internal
51
+ */
15
52
  this.channelSub = new Subscription();
16
53
  }
17
- deepClone() {
18
- const copy = super.deepClone();
19
- if (this.config) {
20
- copy.config = this.config.map((c) => {
21
- const copyConfig = Object.assign({}, c);
22
- if (c.callback) {
23
- copyConfig.callback = c.callback.bind(this);
24
- }
25
- return copyConfig;
26
- });
27
- }
28
- return copy;
29
- }
30
54
  connectedCallback() {
31
55
  super.connectedCallback();
32
56
  this.fdc3.isReady$.pipe(first()).subscribe(() => {
33
- if (this.config) {
34
- this.addChannelListeners();
35
- }
57
+ this.addChannelListener();
36
58
  });
37
59
  }
38
- addChannelListeners() {
39
- this.fdc3.isReady$.pipe(first()).subscribe(() => __awaiter(this, void 0, void 0, function* () {
40
- return this.config.forEach((c) => this.channelSub.add(this.fdc3.currentChannel$.subscribe((channel) => {
41
- this.fdc3.handleChannelCurrentContext(channel, c.channelType, c.callback);
42
- channel.addContextListener(c.channelType, c.callback);
43
- })));
44
- }));
60
+ addChannelListener() {
61
+ if (!this.contextType) {
62
+ logger.warn('Fdc3SystemChannelListener: no context type provided');
63
+ }
64
+ else {
65
+ this.channelSub.add(this.fdc3.currentChannel$.subscribe((channel) => {
66
+ channel.addContextListener(this.contextType, (context) => {
67
+ this.$emit('channel-event', context);
68
+ });
69
+ this.handleCurrentContext(channel);
70
+ }));
71
+ }
72
+ }
73
+ handleCurrentContext(channel) {
74
+ this.fdc3.handleChannelCurrentContext(channel, this.contextType, (context) => {
75
+ if (context) {
76
+ this.$emit('current-context', context);
77
+ }
78
+ });
45
79
  }
46
80
  disconnectedCallback() {
47
81
  var _a;
@@ -49,6 +83,9 @@ let Fdc3SystemChannelListener = class Fdc3SystemChannelListener extends Lifecycl
49
83
  super.disconnectedCallback();
50
84
  }
51
85
  };
86
+ __decorate([
87
+ attr({ attribute: 'context-type' })
88
+ ], Fdc3SystemChannelListener.prototype, "contextType", void 0);
52
89
  __decorate([
53
90
  FDC3
54
91
  ], Fdc3SystemChannelListener.prototype, "fdc3", void 0);
@@ -1414,6 +1414,104 @@
1414
1414
  "endIndex": 2
1415
1415
  }
1416
1416
  },
1417
+ {
1418
+ "kind": "Class",
1419
+ "canonicalReference": "@genesislcap/foundation-fdc3!Fdc3ContextListener:class",
1420
+ "docComment": "/**\n * fdc3-context-listener Util element to listen to the context on a fdc3 app channel\n *\n * @param Context - the fdc3 context type\n *\n * @param Context - the fdc3 context type\n *\n * @tagname\n *\n * fdc3-context-listener\n *\n * @example\n * ```ts\n * import { customElement, GenesisElement, html } from '@genesislcap/web-core';\n * @customElement({\n * name: 'example-component',\n * template: html<ExampleComponent>`\n * <fdc3-context-listener\n * @channel-event=\"${(x, ctx) => x.handleChannelMessage(customEvent(ctx))}\"\n * context-type=\"fdc3.position\"\n * channel-name=\"my_custom_channel\">\n * </fdc3-context-listener>\n * `,\n * })\n * class ExampleComponent extends GenesisElement {\n * handleChannelMessage(e: CustomEvent) {\n * const message = e.detail;\n * if (message?.id?.ticker) {\n * console.log(message.id.ticker);\n * // ToDo: handle the message as you like\n * }\n * }\n * }\n * ```\n *\n * @fires\n *\n * channel-event - Dispatched when an event matching the context is dispatched from the system channel\n *\n * @fires\n *\n * current-context - The current context value of the channel, if present\n *\n * @public\n */\n",
1421
+ "excerptTokens": [
1422
+ {
1423
+ "kind": "Content",
1424
+ "text": "export declare class Fdc3ContextListener extends "
1425
+ },
1426
+ {
1427
+ "kind": "Reference",
1428
+ "text": "Fdc3SystemChannelListener",
1429
+ "canonicalReference": "@genesislcap/foundation-fdc3!Fdc3SystemChannelListener:class"
1430
+ },
1431
+ {
1432
+ "kind": "Content",
1433
+ "text": " "
1434
+ }
1435
+ ],
1436
+ "fileUrlPath": "src/util/fdc3-context-listener.ts",
1437
+ "releaseTag": "Public",
1438
+ "isAbstract": false,
1439
+ "name": "Fdc3ContextListener",
1440
+ "preserveMemberOrder": false,
1441
+ "members": [
1442
+ {
1443
+ "kind": "Method",
1444
+ "canonicalReference": "@genesislcap/foundation-fdc3!Fdc3ContextListener#addChannelListener:member(1)",
1445
+ "docComment": "",
1446
+ "excerptTokens": [
1447
+ {
1448
+ "kind": "Content",
1449
+ "text": "protected addChannelListener(): "
1450
+ },
1451
+ {
1452
+ "kind": "Reference",
1453
+ "text": "Promise",
1454
+ "canonicalReference": "!Promise:interface"
1455
+ },
1456
+ {
1457
+ "kind": "Content",
1458
+ "text": "<void>"
1459
+ },
1460
+ {
1461
+ "kind": "Content",
1462
+ "text": ";"
1463
+ }
1464
+ ],
1465
+ "isStatic": false,
1466
+ "returnTypeTokenRange": {
1467
+ "startIndex": 1,
1468
+ "endIndex": 3
1469
+ },
1470
+ "releaseTag": "Public",
1471
+ "isProtected": true,
1472
+ "overloadIndex": 1,
1473
+ "parameters": [],
1474
+ "isOptional": false,
1475
+ "isAbstract": false,
1476
+ "name": "addChannelListener"
1477
+ },
1478
+ {
1479
+ "kind": "Property",
1480
+ "canonicalReference": "@genesislcap/foundation-fdc3!Fdc3ContextListener#channelName:member",
1481
+ "docComment": "/**\n * The name of the channel you want to listen to. Read more about fdc3 app channels at https://fdc3.finos.org/docs/api/spec#app-channels\n *\n * @example\n *\n * this will listen to the system channel for updates on the type `my_custom_channel` with context `fdc3.position`\n * ```ts\n * <fdc3-context-listener context-type=\"fdc3.position\" channel-name=\"my_custom_channel\"></fdc3-context-listener>\n * ```\n *\n */\n",
1482
+ "excerptTokens": [
1483
+ {
1484
+ "kind": "Content",
1485
+ "text": "channelName: "
1486
+ },
1487
+ {
1488
+ "kind": "Content",
1489
+ "text": "string"
1490
+ },
1491
+ {
1492
+ "kind": "Content",
1493
+ "text": ";"
1494
+ }
1495
+ ],
1496
+ "isReadonly": false,
1497
+ "isOptional": false,
1498
+ "releaseTag": "Public",
1499
+ "name": "channelName",
1500
+ "propertyTypeTokenRange": {
1501
+ "startIndex": 1,
1502
+ "endIndex": 2
1503
+ },
1504
+ "isStatic": false,
1505
+ "isProtected": false,
1506
+ "isAbstract": false
1507
+ }
1508
+ ],
1509
+ "extendsTokenRange": {
1510
+ "startIndex": 1,
1511
+ "endIndex": 2
1512
+ },
1513
+ "implementsTokenRanges": []
1514
+ },
1417
1515
  {
1418
1516
  "kind": "Interface",
1419
1517
  "canonicalReference": "@genesislcap/foundation-fdc3!FDC3IntentResolution:interface",
@@ -1472,6 +1570,210 @@
1472
1570
  "endIndex": 2
1473
1571
  }
1474
1572
  },
1573
+ {
1574
+ "kind": "Class",
1575
+ "canonicalReference": "@genesislcap/foundation-fdc3!Fdc3SystemChannelListener:class",
1576
+ "docComment": "/**\n * fdc3-system-channel-listener Util element to listen to the context on a fdc3 system channel\n *\n * @param Context - the fdc3 context type\n *\n * @param Context - the fdc3 context type\n *\n * @tagname\n *\n * fdc3-system-channel-listener\n *\n * @example\n * ```ts\n * import { customElement, GenesisElement, html } from '@genesislcap/web-core';\n * @customElement({\n * name: 'example-component',\n * template: html<ExampleComponent>`\n * <fdc3-system-channel-listener\n * @channel-event=\"${(x, ctx) => x.handleChannelMessage(customEvent(ctx))}\"\n * context-type=\"fdc3.position\">\n * </fdc3-system-channel-listener>\n * `,\n * })\n * class ExampleComponent extends GenesisElement {\n * handleChannelMessage(e: CustomEvent) {\n * const message = e.detail;\n * if (message?.id?.ticker) {\n * console.log(message.id.ticker);\n * // ToDo: handle the message as you like\n * }\n * }\n * }\n * ```\n *\n * @fires\n *\n * channel-event - Dispatched when an event matching the context is dispatched from the system channel\n *\n * @fires\n *\n * current-context - The current context value of the channel, if present\n *\n * @public\n */\n",
1577
+ "excerptTokens": [
1578
+ {
1579
+ "kind": "Content",
1580
+ "text": "export declare class Fdc3SystemChannelListener extends "
1581
+ },
1582
+ {
1583
+ "kind": "Reference",
1584
+ "text": "Fdc3SystemChannelListener_base",
1585
+ "canonicalReference": "@genesislcap/foundation-fdc3!~Fdc3SystemChannelListener_base"
1586
+ },
1587
+ {
1588
+ "kind": "Content",
1589
+ "text": " "
1590
+ }
1591
+ ],
1592
+ "fileUrlPath": "src/util/fdc3-system-channel-listener.ts",
1593
+ "releaseTag": "Public",
1594
+ "isAbstract": false,
1595
+ "name": "Fdc3SystemChannelListener",
1596
+ "preserveMemberOrder": false,
1597
+ "members": [
1598
+ {
1599
+ "kind": "Method",
1600
+ "canonicalReference": "@genesislcap/foundation-fdc3!Fdc3SystemChannelListener#addChannelListener:member(1)",
1601
+ "docComment": "",
1602
+ "excerptTokens": [
1603
+ {
1604
+ "kind": "Content",
1605
+ "text": "protected addChannelListener(): "
1606
+ },
1607
+ {
1608
+ "kind": "Content",
1609
+ "text": "void"
1610
+ },
1611
+ {
1612
+ "kind": "Content",
1613
+ "text": ";"
1614
+ }
1615
+ ],
1616
+ "isStatic": false,
1617
+ "returnTypeTokenRange": {
1618
+ "startIndex": 1,
1619
+ "endIndex": 2
1620
+ },
1621
+ "releaseTag": "Public",
1622
+ "isProtected": true,
1623
+ "overloadIndex": 1,
1624
+ "parameters": [],
1625
+ "isOptional": false,
1626
+ "isAbstract": false,
1627
+ "name": "addChannelListener"
1628
+ },
1629
+ {
1630
+ "kind": "Method",
1631
+ "canonicalReference": "@genesislcap/foundation-fdc3!Fdc3SystemChannelListener#connectedCallback:member(1)",
1632
+ "docComment": "",
1633
+ "excerptTokens": [
1634
+ {
1635
+ "kind": "Content",
1636
+ "text": "connectedCallback(): "
1637
+ },
1638
+ {
1639
+ "kind": "Content",
1640
+ "text": "void"
1641
+ },
1642
+ {
1643
+ "kind": "Content",
1644
+ "text": ";"
1645
+ }
1646
+ ],
1647
+ "isStatic": false,
1648
+ "returnTypeTokenRange": {
1649
+ "startIndex": 1,
1650
+ "endIndex": 2
1651
+ },
1652
+ "releaseTag": "Public",
1653
+ "isProtected": false,
1654
+ "overloadIndex": 1,
1655
+ "parameters": [],
1656
+ "isOptional": false,
1657
+ "isAbstract": false,
1658
+ "name": "connectedCallback"
1659
+ },
1660
+ {
1661
+ "kind": "Property",
1662
+ "canonicalReference": "@genesislcap/foundation-fdc3!Fdc3SystemChannelListener#contextType:member",
1663
+ "docComment": "/**\n * The context type on the channel you want to listen to. Read more about fdc3 context type at https://fdc3.finos.org/docs/context/ref/Context\n *\n * @example\n *\n * this will listen to the system channel for updates on the type `fdc3.position`\n * ```ts\n * <fdc3-system-channel-listener context-type=\"fdc3.position\"></fdc3-system-channel-listener>\n * ```\n *\n */\n",
1664
+ "excerptTokens": [
1665
+ {
1666
+ "kind": "Content",
1667
+ "text": "contextType: "
1668
+ },
1669
+ {
1670
+ "kind": "Content",
1671
+ "text": "string"
1672
+ },
1673
+ {
1674
+ "kind": "Content",
1675
+ "text": ";"
1676
+ }
1677
+ ],
1678
+ "isReadonly": false,
1679
+ "isOptional": false,
1680
+ "releaseTag": "Public",
1681
+ "name": "contextType",
1682
+ "propertyTypeTokenRange": {
1683
+ "startIndex": 1,
1684
+ "endIndex": 2
1685
+ },
1686
+ "isStatic": false,
1687
+ "isProtected": false,
1688
+ "isAbstract": false
1689
+ },
1690
+ {
1691
+ "kind": "Method",
1692
+ "canonicalReference": "@genesislcap/foundation-fdc3!Fdc3SystemChannelListener#disconnectedCallback:member(1)",
1693
+ "docComment": "",
1694
+ "excerptTokens": [
1695
+ {
1696
+ "kind": "Content",
1697
+ "text": "disconnectedCallback(): "
1698
+ },
1699
+ {
1700
+ "kind": "Content",
1701
+ "text": "void"
1702
+ },
1703
+ {
1704
+ "kind": "Content",
1705
+ "text": ";"
1706
+ }
1707
+ ],
1708
+ "isStatic": false,
1709
+ "returnTypeTokenRange": {
1710
+ "startIndex": 1,
1711
+ "endIndex": 2
1712
+ },
1713
+ "releaseTag": "Public",
1714
+ "isProtected": false,
1715
+ "overloadIndex": 1,
1716
+ "parameters": [],
1717
+ "isOptional": false,
1718
+ "isAbstract": false,
1719
+ "name": "disconnectedCallback"
1720
+ },
1721
+ {
1722
+ "kind": "Method",
1723
+ "canonicalReference": "@genesislcap/foundation-fdc3!Fdc3SystemChannelListener#handleCurrentContext:member(1)",
1724
+ "docComment": "",
1725
+ "excerptTokens": [
1726
+ {
1727
+ "kind": "Content",
1728
+ "text": "protected handleCurrentContext(channel: "
1729
+ },
1730
+ {
1731
+ "kind": "Reference",
1732
+ "text": "FDC3Channel",
1733
+ "canonicalReference": "@genesislcap/foundation-fdc3!FDC3Channel:interface"
1734
+ },
1735
+ {
1736
+ "kind": "Content",
1737
+ "text": "): "
1738
+ },
1739
+ {
1740
+ "kind": "Content",
1741
+ "text": "void"
1742
+ },
1743
+ {
1744
+ "kind": "Content",
1745
+ "text": ";"
1746
+ }
1747
+ ],
1748
+ "isStatic": false,
1749
+ "returnTypeTokenRange": {
1750
+ "startIndex": 3,
1751
+ "endIndex": 4
1752
+ },
1753
+ "releaseTag": "Public",
1754
+ "isProtected": true,
1755
+ "overloadIndex": 1,
1756
+ "parameters": [
1757
+ {
1758
+ "parameterName": "channel",
1759
+ "parameterTypeTokenRange": {
1760
+ "startIndex": 1,
1761
+ "endIndex": 2
1762
+ },
1763
+ "isOptional": false
1764
+ }
1765
+ ],
1766
+ "isOptional": false,
1767
+ "isAbstract": false,
1768
+ "name": "handleCurrentContext"
1769
+ }
1770
+ ],
1771
+ "extendsTokenRange": {
1772
+ "startIndex": 1,
1773
+ "endIndex": 2
1774
+ },
1775
+ "implementsTokenRanges": []
1776
+ },
1475
1777
  {
1476
1778
  "kind": "Variable",
1477
1779
  "canonicalReference": "@genesislcap/foundation-fdc3!interopFoundationNotificationListener:var",
@@ -23,18 +23,9 @@ import { Observable } from 'rxjs';
23
23
  import { OverrideFoundationElementDefinition } from '@microsoft/fast-foundation';
24
24
  import type { PrivateChannel } from '@finos/fdc3';
25
25
  import type { StandardIntent } from '@finos/fdc3';
26
+ import { Subscription } from 'rxjs';
26
27
  import { ViewTemplate } from '@microsoft/fast-element';
27
28
 
28
- /**
29
- * fdc3-context-listener listen channel config
30
- * @alpha
31
- * @param channelType - string for the context channel type
32
- * @param callback - async function that is called if a message with a matching context is emitted
33
- */
34
- export declare interface AppChannelListenerConfig extends SystemChannelListenerConfig {
35
- channelName: string;
36
- }
37
-
38
29
  export { AppIdentifier }
39
30
 
40
31
  export { AppIntent }
@@ -581,12 +572,49 @@ export declare interface FDC3Context extends Context {
581
572
  export declare type FDC3ContextHandler = ContextHandler;
582
573
 
583
574
  /**
584
- * fdc3-context-listener listen to app channel context
585
- * @alpha
575
+ * fdc3-context-listener
576
+ * Util element to listen to the context on a fdc3 app channel
577
+ * @public
578
+ * @tagname fdc3-context-listener
579
+ * @example
580
+ * ```ts
581
+ * import { customElement, GenesisElement, html } from '@genesislcap/web-core';
582
+ * @customElement({
583
+ * name: 'example-component',
584
+ * template: html<ExampleComponent>`
585
+ * <fdc3-context-listener
586
+ * @channel-event="${(x, ctx) => x.handleChannelMessage(customEvent(ctx))}"
587
+ * context-type="fdc3.position"
588
+ * channel-name="my_custom_channel">
589
+ * </fdc3-context-listener>
590
+ * `,
591
+ * })
592
+ * class ExampleComponent extends GenesisElement {
593
+ * handleChannelMessage(e: CustomEvent) {
594
+ * const message = e.detail;
595
+ * if (message?.id?.ticker) {
596
+ * console.log(message.id.ticker);
597
+ * // ToDo: handle the message as you like
598
+ * }
599
+ * }
600
+ * }
601
+ * ```
602
+ * @param Context - the fdc3 context type
603
+ * @fires channel-event - Dispatched when an event matching the context is dispatched from the system channel
604
+ *
605
+ * @param Context - the fdc3 context type
606
+ * @fires current-context - The current context value of the channel, if present
586
607
  */
587
608
  export declare class Fdc3ContextListener extends Fdc3SystemChannelListener {
588
- config: AppChannelListenerConfig[];
589
- protected addChannelListeners(): void;
609
+ /**
610
+ * The name of the channel you want to listen to. Read more about fdc3 app channels at https://fdc3.finos.org/docs/api/spec#app-channels
611
+ * @example this will listen to the system channel for updates on the type `my_custom_channel` with context `fdc3.position`
612
+ * ```ts
613
+ * <fdc3-context-listener context-type="fdc3.position" channel-name="my_custom_channel"></fdc3-context-listener>
614
+ * ```
615
+ */
616
+ channelName: string;
617
+ protected addChannelListener(): Promise<void>;
590
618
  }
591
619
 
592
620
  /**
@@ -1285,18 +1313,65 @@ declare const Fdc3RaiseIntent_base: (new (...args: any[]) => {
1285
1313
  focus(options?: FocusOptions): void;
1286
1314
  }) & typeof FoundationElement;
1287
1315
 
1316
+ /**
1317
+ * The Grid Pro element.
1318
+ * @remarks Grid Pro is a Web Component wrapper around the AG Grid Community library.
1319
+ * @public
1320
+ * @tagname %%prefix%%-grid-pro
1321
+ */
1288
1322
  /**
1289
1323
  * fdc3-system-channel-listener
1290
1324
  * Util element to listen to the context on a fdc3 system channel
1291
- * @alpha
1292
- */
1325
+ * @public
1326
+ * @tagname fdc3-system-channel-listener
1327
+ * @example
1328
+ * ```ts
1329
+ * import { customElement, GenesisElement, html } from '@genesislcap/web-core';
1330
+ * @customElement({
1331
+ * name: 'example-component',
1332
+ * template: html<ExampleComponent>`
1333
+ * <fdc3-system-channel-listener
1334
+ * @channel-event="${(x, ctx) => x.handleChannelMessage(customEvent(ctx))}"
1335
+ * context-type="fdc3.position">
1336
+ * </fdc3-system-channel-listener>
1337
+ * `,
1338
+ * })
1339
+ * class ExampleComponent extends GenesisElement {
1340
+ * handleChannelMessage(e: CustomEvent) {
1341
+ * const message = e.detail;
1342
+ * if (message?.id?.ticker) {
1343
+ * console.log(message.id.ticker);
1344
+ * // ToDo: handle the message as you like
1345
+ * }
1346
+ * }
1347
+ * }
1348
+ * ```
1349
+ * @param Context - the fdc3 context type
1350
+ * @fires channel-event - Dispatched when an event matching the context is dispatched from the system channel
1351
+ *
1352
+ * @param Context - the fdc3 context type
1353
+ * @fires current-context - The current context value of the channel, if present
1354
+ * */
1293
1355
  export declare class Fdc3SystemChannelListener extends Fdc3SystemChannelListener_base {
1294
- config: SystemChannelListenerConfig[];
1356
+ /**
1357
+ * The context type on the channel you want to listen to. Read more about fdc3 context type at https://fdc3.finos.org/docs/context/ref/Context
1358
+ * @example this will listen to the system channel for updates on the type `fdc3.position`
1359
+ * ```ts
1360
+ * <fdc3-system-channel-listener context-type="fdc3.position"></fdc3-system-channel-listener>
1361
+ * ```
1362
+ */
1363
+ contextType: string;
1364
+ /**
1365
+ * @internal
1366
+ */
1367
+ protected channelSub: Subscription;
1368
+ /**
1369
+ * @internal
1370
+ */
1295
1371
  fdc3: FDC3;
1296
- deepClone(): Node;
1297
1372
  connectedCallback(): void;
1298
- private channelSub;
1299
- protected addChannelListeners(): void;
1373
+ protected addChannelListener(): void;
1374
+ protected handleCurrentContext(channel: FDC3Channel): void;
1300
1375
  disconnectedCallback(): void;
1301
1376
  }
1302
1377
 
@@ -1681,15 +1756,4 @@ export { PrivateChannel }
1681
1756
 
1682
1757
  export { StandardIntent }
1683
1758
 
1684
- /**
1685
- * System channel listener config. System channels are also known as color channels
1686
- * @alpha
1687
- * @param channelType - string for the context channel type
1688
- * @param callback - function that is called if a message with a matching context is emitted
1689
- */
1690
- export declare interface SystemChannelListenerConfig {
1691
- channelType: string;
1692
- callback: (any: any) => void;
1693
- }
1694
-
1695
1759
  export { }
@@ -0,0 +1,15 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-fdc3](./foundation-fdc3.md) &gt; [Fdc3ContextListener](./foundation-fdc3.fdc3contextlistener.md) &gt; [addChannelListener](./foundation-fdc3.fdc3contextlistener.addchannellistener.md)
4
+
5
+ ## Fdc3ContextListener.addChannelListener() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ protected addChannelListener(): Promise<void>;
11
+ ```
12
+ **Returns:**
13
+
14
+ Promise&lt;void&gt;
15
+
@@ -0,0 +1,22 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-fdc3](./foundation-fdc3.md) &gt; [Fdc3ContextListener](./foundation-fdc3.fdc3contextlistener.md) &gt; [channelName](./foundation-fdc3.fdc3contextlistener.channelname.md)
4
+
5
+ ## Fdc3ContextListener.channelName property
6
+
7
+ The name of the channel you want to listen to. Read more about fdc3 app channels at https://fdc3.finos.org/docs/api/spec\#app-channels
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ channelName: string;
13
+ ```
14
+
15
+ ## Example
16
+
17
+ this will listen to the system channel for updates on the type `my_custom_channel` with context `fdc3.position`
18
+
19
+ ```ts
20
+ <fdc3-context-listener context-type="fdc3.position" channel-name="my_custom_channel"></fdc3-context-listener>
21
+ ```
22
+
@@ -0,0 +1,53 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-fdc3](./foundation-fdc3.md) &gt; [Fdc3ContextListener](./foundation-fdc3.fdc3contextlistener.md)
4
+
5
+ ## Fdc3ContextListener class
6
+
7
+ fdc3-context-listener Util element to listen to the context on a fdc3 app channel
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export declare class Fdc3ContextListener extends Fdc3SystemChannelListener
13
+ ```
14
+ **Extends:** [Fdc3SystemChannelListener](./foundation-fdc3.fdc3systemchannellistener.md)
15
+
16
+ ## Example
17
+
18
+
19
+ ```ts
20
+ import { customElement, GenesisElement, html } from '@genesislcap/web-core';
21
+ @customElement({
22
+ name: 'example-component',
23
+ template: html<ExampleComponent>`
24
+ <fdc3-context-listener
25
+ @channel-event="${(x, ctx) => x.handleChannelMessage(customEvent(ctx))}"
26
+ context-type="fdc3.position"
27
+ channel-name="my_custom_channel">
28
+ </fdc3-context-listener>
29
+ `,
30
+ })
31
+ class ExampleComponent extends GenesisElement {
32
+ handleChannelMessage(e: CustomEvent) {
33
+ const message = e.detail;
34
+ if (message?.id?.ticker) {
35
+ console.log(message.id.ticker);
36
+ // ToDo: handle the message as you like
37
+ }
38
+ }
39
+ }
40
+ ```
41
+
42
+ ## Properties
43
+
44
+ | Property | Modifiers | Type | Description |
45
+ | --- | --- | --- | --- |
46
+ | [channelName](./foundation-fdc3.fdc3contextlistener.channelname.md) | | string | The name of the channel you want to listen to. Read more about fdc3 app channels at https://fdc3.finos.org/docs/api/spec\#app-channels |
47
+
48
+ ## Methods
49
+
50
+ | Method | Modifiers | Description |
51
+ | --- | --- | --- |
52
+ | [addChannelListener()](./foundation-fdc3.fdc3contextlistener.addchannellistener.md) | <code>protected</code> | |
53
+
@@ -0,0 +1,15 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-fdc3](./foundation-fdc3.md) &gt; [Fdc3SystemChannelListener](./foundation-fdc3.fdc3systemchannellistener.md) &gt; [addChannelListener](./foundation-fdc3.fdc3systemchannellistener.addchannellistener.md)
4
+
5
+ ## Fdc3SystemChannelListener.addChannelListener() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ protected addChannelListener(): void;
11
+ ```
12
+ **Returns:**
13
+
14
+ void
15
+
@@ -0,0 +1,15 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-fdc3](./foundation-fdc3.md) &gt; [Fdc3SystemChannelListener](./foundation-fdc3.fdc3systemchannellistener.md) &gt; [connectedCallback](./foundation-fdc3.fdc3systemchannellistener.connectedcallback.md)
4
+
5
+ ## Fdc3SystemChannelListener.connectedCallback() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ connectedCallback(): void;
11
+ ```
12
+ **Returns:**
13
+
14
+ void
15
+
@@ -0,0 +1,22 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-fdc3](./foundation-fdc3.md) &gt; [Fdc3SystemChannelListener](./foundation-fdc3.fdc3systemchannellistener.md) &gt; [contextType](./foundation-fdc3.fdc3systemchannellistener.contexttype.md)
4
+
5
+ ## Fdc3SystemChannelListener.contextType property
6
+
7
+ The context type on the channel you want to listen to. Read more about fdc3 context type at https://fdc3.finos.org/docs/context/ref/Context
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ contextType: string;
13
+ ```
14
+
15
+ ## Example
16
+
17
+ this will listen to the system channel for updates on the type `fdc3.position`
18
+
19
+ ```ts
20
+ <fdc3-system-channel-listener context-type="fdc3.position"></fdc3-system-channel-listener>
21
+ ```
22
+
@@ -0,0 +1,15 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-fdc3](./foundation-fdc3.md) &gt; [Fdc3SystemChannelListener](./foundation-fdc3.fdc3systemchannellistener.md) &gt; [disconnectedCallback](./foundation-fdc3.fdc3systemchannellistener.disconnectedcallback.md)
4
+
5
+ ## Fdc3SystemChannelListener.disconnectedCallback() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ disconnectedCallback(): void;
11
+ ```
12
+ **Returns:**
13
+
14
+ void
15
+
@@ -0,0 +1,22 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-fdc3](./foundation-fdc3.md) &gt; [Fdc3SystemChannelListener](./foundation-fdc3.fdc3systemchannellistener.md) &gt; [handleCurrentContext](./foundation-fdc3.fdc3systemchannellistener.handlecurrentcontext.md)
4
+
5
+ ## Fdc3SystemChannelListener.handleCurrentContext() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ protected handleCurrentContext(channel: FDC3Channel): void;
11
+ ```
12
+
13
+ ## Parameters
14
+
15
+ | Parameter | Type | Description |
16
+ | --- | --- | --- |
17
+ | channel | [FDC3Channel](./foundation-fdc3.fdc3channel.md) | |
18
+
19
+ **Returns:**
20
+
21
+ void
22
+
@@ -0,0 +1,55 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-fdc3](./foundation-fdc3.md) &gt; [Fdc3SystemChannelListener](./foundation-fdc3.fdc3systemchannellistener.md)
4
+
5
+ ## Fdc3SystemChannelListener class
6
+
7
+ fdc3-system-channel-listener Util element to listen to the context on a fdc3 system channel
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export declare class Fdc3SystemChannelListener extends Fdc3SystemChannelListener_base
13
+ ```
14
+ **Extends:** Fdc3SystemChannelListener\_base
15
+
16
+ ## Example
17
+
18
+
19
+ ```ts
20
+ import { customElement, GenesisElement, html } from '@genesislcap/web-core';
21
+ @customElement({
22
+ name: 'example-component',
23
+ template: html<ExampleComponent>`
24
+ <fdc3-system-channel-listener
25
+ @channel-event="${(x, ctx) => x.handleChannelMessage(customEvent(ctx))}"
26
+ context-type="fdc3.position">
27
+ </fdc3-system-channel-listener>
28
+ `,
29
+ })
30
+ class ExampleComponent extends GenesisElement {
31
+ handleChannelMessage(e: CustomEvent) {
32
+ const message = e.detail;
33
+ if (message?.id?.ticker) {
34
+ console.log(message.id.ticker);
35
+ // ToDo: handle the message as you like
36
+ }
37
+ }
38
+ }
39
+ ```
40
+
41
+ ## Properties
42
+
43
+ | Property | Modifiers | Type | Description |
44
+ | --- | --- | --- | --- |
45
+ | [contextType](./foundation-fdc3.fdc3systemchannellistener.contexttype.md) | | string | The context type on the channel you want to listen to. Read more about fdc3 context type at https://fdc3.finos.org/docs/context/ref/Context |
46
+
47
+ ## Methods
48
+
49
+ | Method | Modifiers | Description |
50
+ | --- | --- | --- |
51
+ | [addChannelListener()](./foundation-fdc3.fdc3systemchannellistener.addchannellistener.md) | <code>protected</code> | |
52
+ | [connectedCallback()](./foundation-fdc3.fdc3systemchannellistener.connectedcallback.md) | | |
53
+ | [disconnectedCallback()](./foundation-fdc3.fdc3systemchannellistener.disconnectedcallback.md) | | |
54
+ | [handleCurrentContext(channel)](./foundation-fdc3.fdc3systemchannellistener.handlecurrentcontext.md) | <code>protected</code> | |
55
+
@@ -8,6 +8,8 @@
8
8
 
9
9
  | Class | Description |
10
10
  | --- | --- |
11
+ | [Fdc3ContextListener](./foundation-fdc3.fdc3contextlistener.md) | fdc3-context-listener Util element to listen to the context on a fdc3 app channel |
12
+ | [Fdc3SystemChannelListener](./foundation-fdc3.fdc3systemchannellistener.md) | fdc3-system-channel-listener Util element to listen to the context on a fdc3 system channel |
11
13
  | [InteropNotificationsListener](./foundation-fdc3.interopnotificationslistener.md) | |
12
14
 
13
15
  ## Interfaces
@@ -29,14 +29,9 @@ import { Observable } from 'rxjs';
29
29
  import { OverrideFoundationElementDefinition } from '@microsoft/fast-foundation';
30
30
  import type { PrivateChannel } from '@finos/fdc3';
31
31
  import type { StandardIntent } from '@finos/fdc3';
32
+ import { Subscription } from 'rxjs';
32
33
  import { ViewTemplate } from '@microsoft/fast-element';
33
34
 
34
- // @alpha
35
- export interface AppChannelListenerConfig extends SystemChannelListenerConfig {
36
- // (undocumented)
37
- channelName: string;
38
- }
39
-
40
35
  export { AppIdentifier }
41
36
 
42
37
  export { AppIntent }
@@ -157,12 +152,11 @@ export interface FDC3Context extends Context {
157
152
  // @public @deprecated (undocumented)
158
153
  export type FDC3ContextHandler = ContextHandler;
159
154
 
160
- // @alpha
155
+ // @public
161
156
  export class Fdc3ContextListener extends Fdc3SystemChannelListener {
162
157
  // (undocumented)
163
- protected addChannelListeners(): void;
164
- // (undocumented)
165
- config: AppChannelListenerConfig[];
158
+ protected addChannelListener(): Promise<void>;
159
+ channelName: string;
166
160
  }
167
161
 
168
162
  // Warning: (ae-forgotten-export) The symbol "Fdc3IntentListener_base" needs to be exported by the entry point index.d.ts
@@ -210,20 +204,21 @@ export class Fdc3RaiseIntent extends Fdc3RaiseIntent_base {
210
204
 
211
205
  // Warning: (ae-forgotten-export) The symbol "Fdc3SystemChannelListener_base" needs to be exported by the entry point index.d.ts
212
206
  //
213
- // @alpha
207
+ // @public
214
208
  export class Fdc3SystemChannelListener extends Fdc3SystemChannelListener_base {
215
209
  // (undocumented)
216
- protected addChannelListeners(): void;
217
- // (undocumented)
218
- config: SystemChannelListenerConfig[];
210
+ protected addChannelListener(): void;
211
+ // @internal (undocumented)
212
+ protected channelSub: Subscription;
219
213
  // (undocumented)
220
214
  connectedCallback(): void;
221
- // (undocumented)
222
- deepClone(): Node;
215
+ contextType: string;
223
216
  // (undocumented)
224
217
  disconnectedCallback(): void;
225
- // (undocumented)
218
+ // @internal (undocumented)
226
219
  fdc3: FDC3;
220
+ // (undocumented)
221
+ protected handleCurrentContext(channel: FDC3Channel): void;
227
222
  }
228
223
 
229
224
  // @alpha
@@ -268,14 +263,6 @@ export { PrivateChannel }
268
263
 
269
264
  export { StandardIntent }
270
265
 
271
- // @alpha
272
- export interface SystemChannelListenerConfig {
273
- // (undocumented)
274
- callback: (any: any) => void;
275
- // (undocumented)
276
- channelType: string;
277
- }
278
-
279
266
  // (No @packageDocumentation comment for this package)
280
267
 
281
268
  ```
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/foundation-fdc3",
3
3
  "description": "Genesis Foundation FDC3",
4
- "version": "14.227.3",
4
+ "version": "14.227.4-FUI-2256.2",
5
5
  "sideEffects": false,
6
6
  "license": "SEE LICENSE IN license.txt",
7
7
  "main": "dist/esm/index.js",
@@ -59,23 +59,24 @@
59
59
  }
60
60
  },
61
61
  "devDependencies": {
62
- "@genesislcap/foundation-testing": "14.227.3",
63
- "@genesislcap/genx": "14.227.3",
64
- "@genesislcap/rollup-builder": "14.227.3",
65
- "@genesislcap/ts-builder": "14.227.3",
66
- "@genesislcap/uvu-playwright-builder": "14.227.3",
67
- "@genesislcap/vite-builder": "14.227.3",
68
- "@genesislcap/webpack-builder": "14.227.3",
62
+ "@genesislcap/foundation-testing": "14.227.4-FUI-2256.2",
63
+ "@genesislcap/genx": "14.227.4-FUI-2256.2",
64
+ "@genesislcap/rollup-builder": "14.227.4-FUI-2256.2",
65
+ "@genesislcap/ts-builder": "14.227.4-FUI-2256.2",
66
+ "@genesislcap/uvu-playwright-builder": "14.227.4-FUI-2256.2",
67
+ "@genesislcap/vite-builder": "14.227.4-FUI-2256.2",
68
+ "@genesislcap/webpack-builder": "14.227.4-FUI-2256.2",
69
69
  "rimraf": "^5.0.0",
70
70
  "sinon": "^17.0.1"
71
71
  },
72
72
  "dependencies": {
73
73
  "@finos/fdc3": "2.1.1",
74
- "@genesislcap/foundation-logger": "14.227.3",
75
- "@genesislcap/foundation-notifications": "14.227.3",
76
- "@genesislcap/foundation-ui": "14.227.3",
77
- "@genesislcap/foundation-utils": "14.227.3",
78
- "@genesislcap/web-core": "14.227.3",
74
+ "@genesislcap/foundation-events": "14.227.4-FUI-2256.2",
75
+ "@genesislcap/foundation-logger": "14.227.4-FUI-2256.2",
76
+ "@genesislcap/foundation-notifications": "14.227.4-FUI-2256.2",
77
+ "@genesislcap/foundation-ui": "14.227.4-FUI-2256.2",
78
+ "@genesislcap/foundation-utils": "14.227.4-FUI-2256.2",
79
+ "@genesislcap/web-core": "14.227.4-FUI-2256.2",
79
80
  "@interopio/desktop": "^6.3.1",
80
81
  "@microsoft/fast-element": "1.14.0",
81
82
  "@microsoft/fast-foundation": "2.49.6",
@@ -90,5 +91,5 @@
90
91
  "publishConfig": {
91
92
  "access": "public"
92
93
  },
93
- "gitHead": "ec53c11dc44bf5b131ea255d03a5da599c806cd7"
94
+ "gitHead": "a1c0cc59a8cf53e44f131f9251be45c785771248"
94
95
  }
package/test/fdc3.mock.ts CHANGED
@@ -28,7 +28,7 @@ export const mockFdc3 = () => {
28
28
  };
29
29
 
30
30
  export const removeMockFdc3 = () => {
31
- if (!('fdc3' in window)) {
31
+ if ('fdc3' in window) {
32
32
  delete window['fdc3'];
33
33
  }
34
34
  };