@corto-ai/integrations-messenger 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/README-internal.md +151 -0
  2. package/README.md +46 -0
  3. package/package.json +11 -0
  4. package/src/index.d.ts +48 -0
  5. package/src/index.js +5 -0
  6. package/src/index.js.map +1 -0
  7. package/src/lib/actions/auth/exchange-token.d.ts +16 -0
  8. package/src/lib/actions/auth/exchange-token.js +6 -0
  9. package/src/lib/actions/auth/exchange-token.js.map +1 -0
  10. package/src/lib/actions/auth/index.d.ts +5 -0
  11. package/src/lib/actions/auth/index.js +5 -0
  12. package/src/lib/actions/auth/index.js.map +1 -0
  13. package/src/lib/actions/base.d.ts +52 -0
  14. package/src/lib/actions/base.js +24 -0
  15. package/src/lib/actions/base.js.map +1 -0
  16. package/src/lib/actions/contact/base.d.ts +4 -0
  17. package/src/lib/actions/contact/base.js +1 -0
  18. package/src/lib/actions/contact/base.js.map +1 -0
  19. package/src/lib/actions/contact/index.d.ts +7 -0
  20. package/src/lib/actions/contact/index.js +7 -0
  21. package/src/lib/actions/contact/index.js.map +1 -0
  22. package/src/lib/actions/contact/open-edit.d.ts +12 -0
  23. package/src/lib/actions/contact/open-edit.js +6 -0
  24. package/src/lib/actions/contact/open-edit.js.map +1 -0
  25. package/src/lib/actions/contact/open.d.ts +12 -0
  26. package/src/lib/actions/contact/open.js +6 -0
  27. package/src/lib/actions/contact/open.js.map +1 -0
  28. package/src/lib/actions/index.d.ts +39 -0
  29. package/src/lib/actions/index.js +13 -0
  30. package/src/lib/actions/index.js.map +1 -0
  31. package/src/lib/actions/internal/handshake.d.ts +2 -0
  32. package/src/lib/actions/internal/handshake.js +1 -0
  33. package/src/lib/actions/internal/handshake.js.map +1 -0
  34. package/src/lib/actions/matter/base.d.ts +4 -0
  35. package/src/lib/actions/matter/base.js +1 -0
  36. package/src/lib/actions/matter/base.js.map +1 -0
  37. package/src/lib/actions/matter/index.d.ts +19 -0
  38. package/src/lib/actions/matter/index.js +19 -0
  39. package/src/lib/actions/matter/index.js.map +1 -0
  40. package/src/lib/actions/matter/open-agent-session.d.ts +14 -0
  41. package/src/lib/actions/matter/open-agent-session.js +6 -0
  42. package/src/lib/actions/matter/open-agent-session.js.map +1 -0
  43. package/src/lib/actions/matter/open-chat-session.d.ts +14 -0
  44. package/src/lib/actions/matter/open-chat-session.js +6 -0
  45. package/src/lib/actions/matter/open-chat-session.js.map +1 -0
  46. package/src/lib/actions/matter/open-details.d.ts +12 -0
  47. package/src/lib/actions/matter/open-details.js +6 -0
  48. package/src/lib/actions/matter/open-details.js.map +1 -0
  49. package/src/lib/actions/matter/open-document-status.d.ts +12 -0
  50. package/src/lib/actions/matter/open-document-status.js +6 -0
  51. package/src/lib/actions/matter/open-document-status.js.map +1 -0
  52. package/src/lib/actions/matter/open-edit.d.ts +12 -0
  53. package/src/lib/actions/matter/open-edit.js +6 -0
  54. package/src/lib/actions/matter/open-edit.js.map +1 -0
  55. package/src/lib/actions/matter/open-prompt-library.d.ts +12 -0
  56. package/src/lib/actions/matter/open-prompt-library.js +6 -0
  57. package/src/lib/actions/matter/open-prompt-library.js.map +1 -0
  58. package/src/lib/actions/matter/open-prompt.d.ts +14 -0
  59. package/src/lib/actions/matter/open-prompt.js +6 -0
  60. package/src/lib/actions/matter/open-prompt.js.map +1 -0
  61. package/src/lib/actions/matter/open.d.ts +14 -0
  62. package/src/lib/actions/matter/open.js +6 -0
  63. package/src/lib/actions/matter/open.js.map +1 -0
  64. package/src/lib/actions/pubsub/index.d.ts +5 -0
  65. package/src/lib/actions/pubsub/index.js +5 -0
  66. package/src/lib/actions/pubsub/index.js.map +1 -0
  67. package/src/lib/actions/pubsub/notification.d.ts +15 -0
  68. package/src/lib/actions/pubsub/notification.js +11 -0
  69. package/src/lib/actions/pubsub/notification.js.map +1 -0
  70. package/src/lib/actions/settings/index.d.ts +5 -0
  71. package/src/lib/actions/settings/index.js +5 -0
  72. package/src/lib/actions/settings/index.js.map +1 -0
  73. package/src/lib/actions/settings/open.d.ts +13 -0
  74. package/src/lib/actions/settings/open.js +6 -0
  75. package/src/lib/actions/settings/open.js.map +1 -0
  76. package/src/lib/actions/utils.d.ts +11 -0
  77. package/src/lib/actions/utils.js +68 -0
  78. package/src/lib/actions/utils.js.map +1 -0
  79. package/src/lib/core/emitter.d.ts +10 -0
  80. package/src/lib/core/emitter.js +79 -0
  81. package/src/lib/core/emitter.js.map +1 -0
  82. package/src/lib/core/index.d.ts +9 -0
  83. package/src/lib/core/index.js +15 -0
  84. package/src/lib/core/index.js.map +1 -0
  85. package/src/lib/core/listener.d.ts +7 -0
  86. package/src/lib/core/listener.js +86 -0
  87. package/src/lib/core/listener.js.map +1 -0
  88. package/src/lib/core/logger.d.ts +7 -0
  89. package/src/lib/core/logger.js +32 -0
  90. package/src/lib/core/logger.js.map +1 -0
  91. package/src/lib/core/target.d.ts +13 -0
  92. package/src/lib/core/target.js +39 -0
  93. package/src/lib/core/target.js.map +1 -0
  94. package/src/lib/models/configs.d.ts +9 -0
  95. package/src/lib/models/configs.js +1 -0
  96. package/src/lib/models/configs.js.map +1 -0
  97. package/src/lib/models/handlers.d.ts +21 -0
  98. package/src/lib/models/handlers.js +1 -0
  99. package/src/lib/models/handlers.js.map +1 -0
  100. package/src/lib/models/index.d.ts +4 -0
  101. package/src/lib/models/index.js +5 -0
  102. package/src/lib/models/index.js.map +1 -0
  103. package/src/lib/models/messages.d.ts +22 -0
  104. package/src/lib/models/messages.js +7 -0
  105. package/src/lib/models/messages.js.map +1 -0
  106. package/src/lib/models/target.d.ts +7 -0
  107. package/src/lib/models/target.js +2 -0
  108. package/src/lib/models/target.js.map +1 -0
@@ -0,0 +1,86 @@
1
+ import emitter from './emitter';
2
+ import logger from './logger';
3
+ import target from './target';
4
+ import { ActionTypeEnum, AdditionalMessageConfig, InternalActionTypeEnum } from '../actions/base';
5
+ import { isInternalActionType } from '../actions/utils';
6
+ import { ALL_MESSAGE_TYPES } from '../models';
7
+ const eventTarget = new EventTarget();
8
+ const eventIsPlatformMessage = (
9
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
+ event) => !!event.data && typeof event.data === 'object' && 'type' in event.data && ALL_MESSAGE_TYPES.includes(event.data.type);
11
+ const eventIsCustomPlatformMessage = (event, type) => {
12
+ if (!(event instanceof CustomEvent))
13
+ return false;
14
+ const detail = event.detail;
15
+ return !!detail?.data && detail.data.type === type;
16
+ };
17
+ const setupDefaultListeners = () => {
18
+ // For every action type, set up the listener to forward it and the response
19
+ Object.values(ActionTypeEnum).forEach((type) => {
20
+ addMessageHandler(type, (event) => {
21
+ emitter.forward(event.data);
22
+ }, { silent: true });
23
+ addMessageHandler(`${type}Response`, (event) => {
24
+ emitter.forward(event.data, { keepAlive: !!AdditionalMessageConfig[type]?.keepAlive });
25
+ }, { silent: true });
26
+ });
27
+ };
28
+ const registerChild = (child, id) => new Promise((resolve) => {
29
+ logger.info('wait for handshake from', id);
30
+ addMessageHandler(InternalActionTypeEnum.Handshake, (event) => {
31
+ if (event.source !== child || event.data.src !== id) {
32
+ logger.error('Received handshake from unexpected source');
33
+ return;
34
+ }
35
+ const data = event.data;
36
+ logger.info('init handshake received', data, child);
37
+ const targetRef = target.addTarget(data.src, { window: child, origin: event.origin });
38
+ emitter.sendDataInternal({
39
+ id: data.id,
40
+ type: `${InternalActionTypeEnum.Handshake}Response`,
41
+ target: id,
42
+ src: target.getSourceId(),
43
+ data: void 0
44
+ }, targetRef);
45
+ resolve();
46
+ });
47
+ });
48
+ const addMessageHandler = (type, callback, config = {}) => {
49
+ if (!config.silent) {
50
+ logger.info('Adding event listener for type', type);
51
+ }
52
+ const eventHandler = (event) => {
53
+ if (!eventIsCustomPlatformMessage(event, type))
54
+ return;
55
+ callback(event.detail);
56
+ };
57
+ eventTarget.addEventListener(type, eventHandler);
58
+ return {
59
+ remove: () => {
60
+ eventTarget.removeEventListener(type, eventHandler);
61
+ }
62
+ };
63
+ };
64
+ const init = () => {
65
+ setupDefaultListeners();
66
+ window.addEventListener('message', (event) => {
67
+ if (!eventIsPlatformMessage(event)) {
68
+ return;
69
+ }
70
+ const data = event.data;
71
+ const t = target.getTarget(data.src);
72
+ console.error({ event });
73
+ // the message is from someone who's origin isn't known to us and it isn't a handshake, so ignore it
74
+ if (t?.origin !== event.origin && !isInternalActionType(data.type)) {
75
+ logger.info('Received message from the wrong origin, ignoring', { expected: t?.origin, received: event.origin });
76
+ return;
77
+ }
78
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
79
+ const customEvent = new CustomEvent(data.type, {
80
+ detail: event
81
+ });
82
+ eventTarget.dispatchEvent(customEvent);
83
+ });
84
+ };
85
+ export default { addMessageHandler, init, registerChild };
86
+ //# sourceMappingURL=listener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listener.js","sourceRoot":"","sources":["../../../../../../libs/integrations-messenger/src/lib/core/listener.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ declare const _default: {
2
+ init: (enabled?: boolean) => void;
3
+ info: (...data: any[]) => void;
4
+ warn: (...data: any[]) => void;
5
+ error: (...data: any[]) => void;
6
+ };
7
+ export default _default;
@@ -0,0 +1,32 @@
1
+ import target from './target';
2
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3
+ const noop = (..._) => { };
4
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
5
+ let info = (...data) => console.log('[@corto-ai/integrations-messenger:info]', {
6
+ src: target.getSourceId(),
7
+ msg: data
8
+ });
9
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
+ let warn = (...data) => console.warn('[@corto-ai/integrations-messenger:warn]', {
11
+ src: target.getSourceId(),
12
+ msg: data
13
+ });
14
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
15
+ let error = (...data) => console.error('[@corto-ai/integrations-messenger:error]', {
16
+ src: target.getSourceId(),
17
+ msg: data
18
+ });
19
+ const init = (enabled = false) => {
20
+ if (enabled)
21
+ return;
22
+ info = noop;
23
+ warn = noop;
24
+ error = noop;
25
+ };
26
+ export default {
27
+ init,
28
+ info,
29
+ warn,
30
+ error
31
+ };
32
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../../../../libs/integrations-messenger/src/lib/core/logger.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,8DAA8D;AAC9D,MAAM,IAAI,GAAG,CAAC,GAAG,CAAQ,EAAQ,EAAE,GAAE,CAAC,CAAC;AAEvC,8DAA8D;AAC9D,IAAI,IAAI,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE,CAC5B,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE;IACrD,GAAG,EAAE,MAAM,CAAC,WAAW,EAAE;IACzB,GAAG,EAAE,IAAI;CACV,CAAC,CAAC;AAEL,8DAA8D;AAC9D,IAAI,IAAI,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE,CAC5B,OAAO,CAAC,IAAI,CAAC,yCAAyC,EAAE;IACtD,GAAG,EAAE,MAAM,CAAC,WAAW,EAAE;IACzB,GAAG,EAAE,IAAI;CACV,CAAC,CAAC;AAEL,8DAA8D;AAC9D,IAAI,KAAK,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE,CAC7B,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE;IACxD,GAAG,EAAE,MAAM,CAAC,WAAW,EAAE;IACzB,GAAG,EAAE,IAAI;CACV,CAAC,CAAC;AAEL,MAAM,IAAI,GAAG,CAAC,OAAO,GAAG,KAAK,EAAQ,EAAE;IACrC,IAAI,OAAO;QAAE,OAAO;IAEpB,IAAI,GAAG,IAAI,CAAC;IACZ,IAAI,GAAG,IAAI,CAAC;IACZ,KAAK,GAAG,IAAI,CAAC;AACf,CAAC,CAAC;AAEF,eAAe;IACb,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,KAAK;CACN,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { type AddTargetParamsDTO, type TargetDTO } from '../models';
2
+ declare const _default: {
3
+ addTarget: (id: string, target: AddTargetParamsDTO) => TargetDTO;
4
+ removeTarget: (id: string) => boolean;
5
+ getTarget: (id: string) => TargetDTO | undefined;
6
+ getAllTargetIds: () => string[];
7
+ setParentId: (id: string) => void;
8
+ getParent: () => TargetDTO | undefined;
9
+ getParentId: () => string | undefined;
10
+ setSourceId: (id: string) => void;
11
+ getSourceId: () => string;
12
+ };
13
+ export default _default;
@@ -0,0 +1,39 @@
1
+ const targetMap = {};
2
+ const addTarget = (id, target) => {
3
+ if (id === parentId && targetMap[parentId]) {
4
+ throw new Error('Unable to update target parent');
5
+ }
6
+ targetMap[id] = { ...target, id };
7
+ return targetMap[id];
8
+ };
9
+ const removeTarget = (id) => {
10
+ if (!targetMap[id])
11
+ return false;
12
+ delete targetMap[id];
13
+ return true;
14
+ };
15
+ const getTarget = (id) => targetMap[id];
16
+ const getAllTargetIds = () => Object.keys(targetMap);
17
+ let parentId;
18
+ const setParentId = (id) => {
19
+ parentId = id;
20
+ };
21
+ const getParentId = () => parentId;
22
+ const getParent = () => (parentId ? getTarget(parentId) : undefined);
23
+ let srcId = '';
24
+ const setSourceId = (id) => {
25
+ srcId = id;
26
+ };
27
+ const getSourceId = () => srcId;
28
+ export default {
29
+ addTarget,
30
+ removeTarget,
31
+ getTarget,
32
+ getAllTargetIds,
33
+ setParentId,
34
+ getParent,
35
+ getParentId,
36
+ setSourceId,
37
+ getSourceId
38
+ };
39
+ //# sourceMappingURL=target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target.js","sourceRoot":"","sources":["../../../../../../libs/integrations-messenger/src/lib/core/target.ts"],"names":[],"mappings":"AAEA,MAAM,SAAS,GAA8B,EAAE,CAAC;AAEhD,MAAM,SAAS,GAAG,CAAC,EAAU,EAAE,MAA0B,EAAa,EAAE;IACtE,IAAI,EAAE,KAAK,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,CAAC;IAClC,OAAO,SAAS,CAAC,EAAE,CAAC,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,EAAU,EAAW,EAAE;IAC3C,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAAE,OAAO,KAAK,CAAC;IACjC,OAAO,SAAS,CAAC,EAAE,CAAC,CAAC;IACrB,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,EAAU,EAAyB,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;AAEvE,MAAM,eAAe,GAAG,GAAa,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAE/D,IAAI,QAA4B,CAAC;AAEjC,MAAM,WAAW,GAAG,CAAC,EAAU,EAAQ,EAAE;IACvC,QAAQ,GAAG,EAAE,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,GAAuB,EAAE,CAAC,QAAQ,CAAC;AAEvD,MAAM,SAAS,GAAG,GAA0B,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAE5F,IAAI,KAAK,GAAG,EAAE,CAAC;AAEf,MAAM,WAAW,GAAG,CAAC,EAAU,EAAQ,EAAE;IACvC,KAAK,GAAG,EAAE,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,GAAW,EAAE,CAAC,KAAK,CAAC;AAExC,eAAe;IACb,SAAS;IACT,YAAY;IACZ,SAAS;IACT,eAAe;IACf,WAAW;IACX,SAAS;IACT,WAAW;IACX,WAAW;IACX,WAAW;CACZ,CAAC"}
@@ -0,0 +1,9 @@
1
+ export type MessageHandlerConfigDTO = {
2
+ silent?: boolean;
3
+ };
4
+ export type MessageForwardingConfigDTO = {
5
+ keepAlive?: boolean;
6
+ };
7
+ export type AdditionalMessageConfigDTO = {
8
+ keepAlive?: boolean;
9
+ };
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=configs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configs.js","sourceRoot":"","sources":["../../../../../../libs/integrations-messenger/src/lib/models/configs.ts"],"names":[],"mappings":""}
@@ -0,0 +1,21 @@
1
+ import { type MessageHandlerConfigDTO } from './configs';
2
+ import { type PlatformMessageBaseDTO } from './messages';
3
+ import { type ActionTypeEnum, type DataTypeMapDTO } from '../actions/base';
4
+ export type MessageHandlerResponseDTO = {
5
+ remove: () => void;
6
+ };
7
+ export type PlatformCustomEventDetailDTO<T> = MessageEvent<PlatformMessageBaseDTO<T>>;
8
+ export type MessageHandlerFn<T> = (event: PlatformCustomEventDetailDTO<T>) => void | Promise<void>;
9
+ export type MessageHandlerDTO<T = unknown> = {
10
+ callback: MessageHandlerFn<T>;
11
+ config: MessageHandlerConfigDTO;
12
+ };
13
+ export type ActionRequestDTO<T extends ActionTypeEnum> = DataTypeMapDTO[T]['request'];
14
+ export type ActionResponseDTO<T extends ActionTypeEnum> = DataTypeMapDTO[T]['response'];
15
+ export type ActionCreatorConfigDTO<T extends ActionTypeEnum> = {
16
+ skipWhen?: (request: ActionRequestDTO<T>, response: ActionResponseDTO<T>) => boolean;
17
+ };
18
+ export type ActionCreatorFn<T extends ActionTypeEnum> = (request: ActionRequestDTO<T>) => Promise<ActionResponseDTO<T>>;
19
+ export type ActionHandlerFn<T extends ActionTypeEnum> = (handler: (request: ActionRequestDTO<T>) => ActionResponseDTO<T> | Promise<ActionResponseDTO<T>>) => MessageHandlerResponseDTO;
20
+ export type StreamActionCreatorFn<T extends ActionTypeEnum> = (request: ActionRequestDTO<T>, handler: (response: ActionResponseDTO<T>) => void) => MessageHandlerResponseDTO;
21
+ export type StreamActionHandlerFn<T extends ActionTypeEnum> = (handler: (request: ActionRequestDTO<T>, resolve: (response: ActionResponseDTO<T>) => void) => void) => MessageHandlerResponseDTO;
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=handlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../../../../libs/integrations-messenger/src/lib/models/handlers.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export * from './configs';
2
+ export * from './handlers';
3
+ export * from './messages';
4
+ export * from './target';
@@ -0,0 +1,5 @@
1
+ export * from './configs';
2
+ export * from './handlers';
3
+ export * from './messages';
4
+ export * from './target';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/integrations-messenger/src/lib/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { ActionTypeEnum, type DataTypeMapDTO, InternalActionTypeEnum } from '../actions/base';
2
+ export { ActionTypeEnum, DataTypeMapDTO };
3
+ export declare const ALL_MESSAGE_TYPES: string[];
4
+ export type PublicActionTypeDTO = `${ActionTypeEnum}`;
5
+ export type PublicResponseTypeDTO = `${PublicActionTypeDTO}Response`;
6
+ export type InternalActionTypeDTO = `${InternalActionTypeEnum}`;
7
+ export type InternalResponseTypeDTO = `${InternalActionTypeDTO}Response`;
8
+ export type AllMessageTypeDTO = PublicActionTypeDTO | PublicResponseTypeDTO | InternalActionTypeDTO | InternalResponseTypeDTO;
9
+ export type CompleteDataTypeDTO<T> = T extends ActionTypeEnum | InternalActionTypeEnum ? DataTypeMapDTO[T]['request'] : T extends `${infer U}Response` ? DataTypeMapDTO[Extract<ActionTypeEnum | InternalActionTypeEnum, U>]['response'] : unknown;
10
+ export type PlatformMessageBaseDTO<T> = {
11
+ id: string;
12
+ type: AllMessageTypeDTO;
13
+ target: string;
14
+ src: string;
15
+ data: CompleteDataTypeDTO<T>;
16
+ };
17
+ export type ActionResponseBaseDTO = {
18
+ success: true;
19
+ } | {
20
+ success: false;
21
+ error: string;
22
+ };
@@ -0,0 +1,7 @@
1
+ import { ActionTypeEnum, InternalActionTypeEnum } from '../actions/base';
2
+ export { ActionTypeEnum };
3
+ export const ALL_MESSAGE_TYPES = [
4
+ ...Object.values(ActionTypeEnum).map((v) => [v, `${v}Response`]),
5
+ ...Object.values(InternalActionTypeEnum).map((v) => [v, `${v}Response`])
6
+ ].flat();
7
+ //# sourceMappingURL=messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../../../libs/integrations-messenger/src/lib/models/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAuB,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAE9F,OAAO,EAAE,cAAc,EAAkB,CAAC;AAE1C,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAChE,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;CACzE,CAAC,IAAI,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare const TARGET_WILDCARD = "*";
2
+ export type TargetDTO = {
3
+ window: Window;
4
+ origin: string;
5
+ id: string;
6
+ };
7
+ export type AddTargetParamsDTO = Omit<TargetDTO, 'id'>;
@@ -0,0 +1,2 @@
1
+ export const TARGET_WILDCARD = '*';
2
+ //# sourceMappingURL=target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target.js","sourceRoot":"","sources":["../../../../../../libs/integrations-messenger/src/lib/models/target.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC"}