@novasamatech/product-sdk 0.7.5-2 → 0.7.5-4
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.
- package/dist/papiProvider.js +12 -3
- package/package.json +2 -2
package/dist/papiProvider.js
CHANGED
|
@@ -153,10 +153,19 @@ __fallback, internal) {
|
|
|
153
153
|
const [withRuntime] = params;
|
|
154
154
|
const syntheticSubId = getNextSubId();
|
|
155
155
|
const subscription = hostApi.chainHeadFollowSubscribe(enumValue(version, { genesisHash, withRuntime }), payload => {
|
|
156
|
-
if (payload.tag
|
|
157
|
-
|
|
158
|
-
|
|
156
|
+
if (payload.tag !== version)
|
|
157
|
+
return;
|
|
158
|
+
const typed = payload.value;
|
|
159
|
+
// On Stop, release the host-api subscription BEFORE forwarding
|
|
160
|
+
// the event. The consumer's substrate-client refollows
|
|
161
|
+
// synchronously inside the event handler; transport.subscribe
|
|
162
|
+
// dedupes by (method, payload-hash), so unless this dead
|
|
163
|
+
// subscription is gone first, the refollow's subscribe shares
|
|
164
|
+
// it and never reaches the host — events stop flowing.
|
|
165
|
+
if (typed.tag === 'Stop' && activeFollows.delete(syntheticSubId)) {
|
|
166
|
+
subscription.unsubscribe();
|
|
159
167
|
}
|
|
168
|
+
sendFollowEvent(syntheticSubId, convertTypedEventToJsonRpc(typed));
|
|
160
169
|
});
|
|
161
170
|
activeFollows.set(syntheticSubId, { syntheticSubId, subscription, genesisHash });
|
|
162
171
|
sendJsonRpcResponse(id, syntheticSubId);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@novasamatech/product-sdk",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.7.5-
|
|
4
|
+
"version": "0.7.5-4",
|
|
5
5
|
"description": "Polkadot product SDK: integrate and run your product inside Polkadot browser.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"repository": {
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@polkadot/extension-inject": "^0.63.1",
|
|
29
29
|
"@polkadot-api/json-rpc-provider-proxy": "^0.4.0",
|
|
30
|
-
"@novasamatech/host-api": "0.7.5-
|
|
30
|
+
"@novasamatech/host-api": "0.7.5-4",
|
|
31
31
|
"polkadot-api": ">=2",
|
|
32
32
|
"neverthrow": "^8.2.0"
|
|
33
33
|
},
|