@event-chat/rpc 0.1.10 → 0.1.11

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.
@@ -1 +1 @@
1
- {"version":3,"file":"RPCAction.d.ts","sourceRoot":"","sources":["../../src/core/RPCAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAI7D,QAAA,MAAM,WAAW,oBAAoB,CAAA;AAarC,cAAM,SAAS;IAWX,OAAO,CAAC,OAAO;IAVjB,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,eAAe,CAA8B;IACrD,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,QAAQ,CAAiC;IACjD,OAAO,CAAC,oBAAoB,CAAkC;gBAGpD,OAAO,EAAE,SAAS,EAC1B,OAAO,CAAC,EAAE,cAAc;IAc1B,OAAO;IAUP,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;IASvD,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,cAAc,CAAC;IAIlE,EAAE,CAAC,CAAC,SAAS,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;IAIzD,UAAU,CAAC,QAAQ,EAAE,YAAY;IAIjC,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;IA6CnE,OAAO,CAAC,MAAM;IAWd,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,eAAe;IA0EvB,OAAO,CAAC,eAAe;CAsBxB;AAED,OAAO,EAAE,WAAW,EAAE,CAAA;AAEtB,eAAe,SAAS,CAAA;AAExB,MAAM,MAAM,cAAc,GAAG;IAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B,CAAA;AAID,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,GAAG,CAAA;AAElD,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;AAEpE,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,OAAO,IAAI,sBAAsB,GAAG;IACjE,OAAO,CAAC,EAAE,CAAC,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA"}
1
+ {"version":3,"file":"RPCAction.d.ts","sourceRoot":"","sources":["../../src/core/RPCAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAI7D,QAAA,MAAM,WAAW,oBAAoB,CAAA;AAarC,cAAM,SAAS;IAWX,OAAO,CAAC,OAAO;IAVjB,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,eAAe,CAA8B;IACrD,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,QAAQ,CAAiC;IACjD,OAAO,CAAC,oBAAoB,CAAkC;gBAGpD,OAAO,EAAE,SAAS,EAC1B,OAAO,CAAC,EAAE,cAAc;IAc1B,OAAO;IAUP,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;IASvD,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,cAAc,CAAC;IAIlE,EAAE,CAAC,CAAC,SAAS,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;IAIzD,UAAU,CAAC,QAAQ,EAAE,YAAY;IAIjC,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;IA6CnE,OAAO,CAAC,MAAM;IAWd,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,eAAe;IA8EvB,OAAO,CAAC,eAAe;CAsBxB;AAED,OAAO,EAAE,WAAW,EAAE,CAAA;AAEtB,eAAe,SAAS,CAAA;AAExB,MAAM,MAAM,cAAc,GAAG;IAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B,CAAA;AAID,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,GAAG,CAAA;AAElD,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;AAEpE,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,OAAO,IAAI,sBAAsB,GAAG;IACjE,OAAO,CAAC,EAAE,CAAC,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA"}
@@ -119,7 +119,7 @@ class RPCAction {
119
119
  return this._options?.allowedOrigins?.some((item)=>'*' === item || getOrigin(item) === getOrigin(origin)) ?? false;
120
120
  }
121
121
  _messageHandler(event) {
122
- const { data, origin, source } = event;
122
+ const { data, origin, source, wait } = event;
123
123
  const { __RPC__, broadcast, channel, error, heartbeat, kind, payload, requestId, type } = data ?? {};
124
124
  if (__RPC__ !== RPC_SIGN) return;
125
125
  if (this._options?.channel !== channel) return;
@@ -155,6 +155,7 @@ class RPCAction {
155
155
  }, {
156
156
  targetOrigin: origin
157
157
  });
158
+ return result;
158
159
  }).catch((err)=>{
159
160
  const message = err instanceof Error ? err.message : '[RPC] 处理消息时发生错误';
160
161
  this._target.postMessage({
@@ -167,7 +168,7 @@ class RPCAction {
167
168
  }, {
168
169
  targetOrigin: origin
169
170
  });
170
- });
171
+ }).finally(()=>wait?.());
171
172
  }
172
173
  _startHeartbeat() {
173
174
  const { channel, heartbeatInterval = defaultOptions.heartbeatInterval, heartbeatTimeout = defaultOptions.heartbeatTimeout } = this._options;
package/dist/fields.d.ts CHANGED
@@ -33,7 +33,9 @@ export type IframeSerializeOptions = StructuredSerializeOptions & {
33
33
  targetOrigin?: string;
34
34
  transmit?: Promise<readonly WindowClient[]>;
35
35
  };
36
- export type ListenerType = (ev: Pick<MessageEvent, 'data' | 'origin' | 'source'>) => void;
36
+ export type ListenerType = (ev: Pick<MessageEvent, 'data' | 'origin' | 'source'> & {
37
+ wait?: () => void;
38
+ }) => void;
37
39
  export type RPCItem = Pick<RPCAction, 'broadcast'> & Pick<RPCFactory, 'getType'>;
38
40
  export type ScopeProps = {
39
41
  exclude?: Array<ValueOf<typeof TARGET_TYPE_STRINGS>>;
@@ -1 +1 @@
1
- {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../src/fields.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,EAAE,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,UAAU,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEjC,eAAO,MAAM,kBAAkB,gDAA2C,CAAA;AAC1E,eAAO,MAAM,mBAAmB;;;;;;;;;;EAU9B,CAAA;AAEF,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAA;CAC5C;AAED,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,UAAU,KAAK,IAAI,CAAA;IAC1E,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CAC/C;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,OAAO,EAAE,MAAM,MAAM,CAAA;IACrB,EAAE,EAAE,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,KAAK,OAAO,CAAA;IAClD,SAAS,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAA;IAC3C,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAA;IAC1C,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,sBAAsB,KAAK,IAAI,CAAA;IACzE,KAAK,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAA;CACzC;AAED,MAAM,MAAM,sBAAsB,GAAG,0BAA0B,GAAG;IAChE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;CAC5C,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC,KAAK,IAAI,CAAA;AAEzF,MAAM,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;AAEhF,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAA;IACpD,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAA;IACpD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB,CAAA"}
1
+ {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../src/fields.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,EAAE,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,UAAU,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEjC,eAAO,MAAM,kBAAkB,gDAA2C,CAAA;AAC1E,eAAO,MAAM,mBAAmB;;;;;;;;;;EAU9B,CAAA;AAEF,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAA;CAC5C;AAED,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,UAAU,KAAK,IAAI,CAAA;IAC1E,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CAC/C;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,OAAO,EAAE,MAAM,MAAM,CAAA;IACrB,EAAE,EAAE,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,KAAK,OAAO,CAAA;IAClD,SAAS,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAA;IAC3C,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAA;IAC1C,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,sBAAsB,KAAK,IAAI,CAAA;IACzE,KAAK,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAA;CACzC;AAED,MAAM,MAAM,sBAAsB,GAAG,0BAA0B,GAAG;IAChE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;CAC5C,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,CACzB,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,IAAI,CAAA;CAAE,KACzE,IAAI,CAAA;AAET,MAAM,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;AAEhF,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAA;IACpD,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAA;IACpD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceWorkerGlobalScopeTransport.d.ts","sourceRoot":"","sources":["../../src/transports/ServiceWorkerGlobalScopeTransport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAChE,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAG3C,cAAM,iCAAkC,SAAQ,aAAa,CAAC,wBAAwB,CAAC;IACrF,OAAO,CAAC,UAAU,CAAuD;IACzE,OAAO,CAAC,OAAO,CAA8C;IAI7D,OAAO;IAMP,SAAS,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAmBvC,QAAQ,IAAI,IAAI;IAMhB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,IAAI;CAYtE;AAED,eAAe,iCAAiC,CAAA"}
1
+ {"version":3,"file":"ServiceWorkerGlobalScopeTransport.d.ts","sourceRoot":"","sources":["../../src/transports/ServiceWorkerGlobalScopeTransport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAChE,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAG3C,cAAM,iCAAkC,SAAQ,aAAa,CAAC,wBAAwB,CAAC;IACrF,OAAO,CAAC,UAAU,CAAuD;IACzE,OAAO,CAAC,OAAO,CAA8C;IAI7D,OAAO;IAMP,SAAS,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAuBvC,QAAQ,IAAI,IAAI;IAMhB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,IAAI;CAYtE;AAED,eAAe,iCAAiC,CAAA"}
@@ -8,10 +8,13 @@ class ServiceWorkerGlobalScopeTransport extends BaseTransport {
8
8
  onmessage(listener) {
9
9
  this._onconnect = (event)=>{
10
10
  this._source = event.source;
11
- listener({
12
- ...event,
13
- source: null
14
- });
11
+ event.waitUntil(new Promise((resove)=>{
12
+ listener({
13
+ ...event,
14
+ source: null,
15
+ wait: resove
16
+ });
17
+ }));
15
18
  };
16
19
  this._target.addEventListener('message', this._onconnect, this._options.message);
17
20
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@event-chat/rpc",
3
- "version": "0.1.10",
3
+ "version": "0.1.11",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "exports": {