@node-i3x/opcua-connector 0.1.0 → 0.2.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/README.md +9 -3
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +33 -18
- package/dist/dist-JRNQJWOC.js +0 -2
- package/dist/dist-JRNQJWOC.js.map +0 -1
package/README.md
CHANGED
|
@@ -17,9 +17,6 @@ This package is the **outbound adapter** in the [hexagonal architecture](https:/
|
|
|
17
17
|
npm install @node-i3x/opcua-connector
|
|
18
18
|
```
|
|
19
19
|
|
|
20
|
-
> [!NOTE]
|
|
21
|
-
> This package is published on the private **@sterfive** npm registry at `npm-registry.sterfive.fr`.
|
|
22
|
-
|
|
23
20
|
## Usage
|
|
24
21
|
|
|
25
22
|
```typescript
|
|
@@ -65,6 +62,13 @@ await dataSource.connect();
|
|
|
65
62
|
|
|
66
63
|
## Architecture
|
|
67
64
|
|
|
65
|
+
<!-- mermaid-img -->
|
|
66
|
+
<p align="center">
|
|
67
|
+
<img src="https://mermaid.ink/svg/Z3JhcGggTFIKICAgIHN1YmdyYXBoICJAbm9kZS1pM3gvY29yZSIKICAgICAgICBQT1JUWyJJRGF0YVNvdXJjZVBvcnQiXQogICAgZW5kCiAgICBzdWJncmFwaCAiQG5vZGUtaTN4L29wY3VhLWNvbm5lY3RvciIKICAgICAgICBBREFQVEVSWyJPcGNVYURhdGFTb3VyY2VBZGFwdGVyIl0KICAgICAgICBDTElFTlRbIk9wY1VhQ2xpZW50Il0KICAgICAgICBNQVBQRVJbIm9wY3VhLW1hcHBlciJdCiAgICAgICAgT1BUWyJ3cmFwU2Vzc2lvbklmT3B0aW1pemVkIl0KICAgIGVuZAogICAgc3ViZ3JhcGggIm5vZGUtb3BjdWEiCiAgICAgICAgT1BDVUFbIk9QQ1VBQ2xpZW50IC8gQ2xpZW50U2Vzc2lvbiJdCiAgICBlbmQKICAgIHN1YmdyYXBoICJPUEMgVUEgU2VydmVyIgogICAgICAgIFNFUlZFUlsib3BjLnRjcDovL+KApiJdCiAgICBlbmQKCiAgICBQT1JUIC0uIGltcGxlbWVudHMgLi0+IEFEQVBURVIKICAgIEFEQVBURVIgLS0+IENMSUVOVAogICAgQ0xJRU5UIC0tPiBNQVBQRVIKICAgIENMSUVOVCAtLT4gT1BUCiAgICBDTElFTlQgLS0+IE9QQ1VBCiAgICBPUENVQSAtLSBUQ1AvYmluYXJ5IC0tPiBTRVJWRVI=" alt="diagram" />
|
|
68
|
+
</p>
|
|
69
|
+
|
|
70
|
+
<details><summary>Diagram source (mermaid)</summary>
|
|
71
|
+
|
|
68
72
|
```mermaid
|
|
69
73
|
graph LR
|
|
70
74
|
subgraph "@node-i3x/core"
|
|
@@ -91,6 +95,8 @@ graph LR
|
|
|
91
95
|
OPCUA -- TCP/binary --> SERVER
|
|
92
96
|
```
|
|
93
97
|
|
|
98
|
+
</details>
|
|
99
|
+
|
|
94
100
|
## Optional: Optimized Client
|
|
95
101
|
|
|
96
102
|
For large address spaces or high-throughput scenarios, install the optional [`@sterfive/opcua-optimized-client`](https://support.sterfive.com) package:
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var C=class{constructor(e,t){this.client=e;this._logger=t}client;_logger;async connect(){await this.client.connect()}async disconnect(){await this.client.disconnect()}isConnected(){return this.client.isConnected()}async browseTree(){return this.client.browseTree()}async getNamespaces(){return this.client.getNamespaces()}async getObjectTypes(){return this.client.getObjectTypes()}async readValue(e){return this.client.readValue(e)}async readValues(e){return this.client.readValues(e)}async writeValue(e,t){return this.client.writeValue(e,t)}async readHistory(e,t,n){return this.client.readHistory(e,t,n)}async createMonitoredSubscription(e){return this.client.createMonitoredSubscription(e)}};import{AttributeIds as b,BrowseDirection as k,browseAll as $,coerceNodeId as y,DataType as M,MessageSecurityMode as S,NodeClass as A,OPCUAClient as q,resolveNodeId as V,StatusCodes as H,TimestampsToReturn as z,Variant as R}from"node-opcua";import{NodeClass as p,StatusCodes as P}from"node-opcua";var j={[p.Object]:"Object",[p.Variable]:"Variable",[p.Method]:"Method",[p.ObjectType]:"ObjectType",[p.VariableType]:"VariableType",[p.ReferenceType]:"ReferenceType",[p.DataType]:"DataType",[p.View]:"View"};function _(o,e){if(!o?.name)return"";let t=o.namespaceIndex??0;return`nsu=${e[t]??`ns=${t}`}:${o.name}`}function x(o,e,t){let n=o.nodeClass??p.Unspecified,i=_(o.browseName,t),s="",r=i.match(/^nsu=(.+):([^:]+)$/);if(r)s=r[1];else{let l=o.browseName?.namespaceIndex??0;s=t[l]??""}return{sourceNodeId:o.nodeId.toString(),parentSourceNodeId:e,browseName:o.browseName?.toString()??"",nsuQualifiedName:i,displayName:o.displayName?.text??o.browseName?.toString()??"",nodeClass:j[n]??"Unknown",typeDefinition:o.typeDefinition?o.typeDefinition.toString():null,namespaceUri:s,eventNotifier:o.nodeClass===p.Object?(o.eventNotifier??0)!==0:!1}}function w(o){let e=o.statusCode?.equals(P.Good)??!1;return{value:o.value?.value??null,quality:e?"Good":"Bad",timestamp:o.sourceTimestamp?.toISOString()??o.serverTimestamp?.toISOString()??new Date().toISOString(),statusCode:o.statusCode?.value}}function T(o){return{value:o.value?.value??null,quality:o.statusCode?.equals(P.Good)?"Good":"Bad",timestamp:o.sourceTimestamp?.toISOString()??o.serverTimestamp?.toISOString()??new Date().toISOString()}}async function N(o,e){try{let{ClientSessionOptimized:t}=await import("
|
|
1
|
+
var C=class{constructor(e,t){this.client=e;this._logger=t}client;_logger;async connect(){await this.client.connect()}async disconnect(){await this.client.disconnect()}isConnected(){return this.client.isConnected()}async browseTree(){return this.client.browseTree()}async getNamespaces(){return this.client.getNamespaces()}async getObjectTypes(){return this.client.getObjectTypes()}async readValue(e){return this.client.readValue(e)}async readValues(e){return this.client.readValues(e)}async writeValue(e,t){return this.client.writeValue(e,t)}async readHistory(e,t,n){return this.client.readHistory(e,t,n)}async createMonitoredSubscription(e){return this.client.createMonitoredSubscription(e)}};import{AttributeIds as b,BrowseDirection as k,browseAll as $,coerceNodeId as y,DataType as M,MessageSecurityMode as S,NodeClass as A,OPCUAClient as q,resolveNodeId as V,StatusCodes as H,TimestampsToReturn as z,Variant as R}from"node-opcua";import{NodeClass as p,StatusCodes as P}from"node-opcua";var j={[p.Object]:"Object",[p.Variable]:"Variable",[p.Method]:"Method",[p.ObjectType]:"ObjectType",[p.VariableType]:"VariableType",[p.ReferenceType]:"ReferenceType",[p.DataType]:"DataType",[p.View]:"View"};function _(o,e){if(!o?.name)return"";let t=o.namespaceIndex??0;return`nsu=${e[t]??`ns=${t}`}:${o.name}`}function x(o,e,t){let n=o.nodeClass??p.Unspecified,i=_(o.browseName,t),s="",r=i.match(/^nsu=(.+):([^:]+)$/);if(r)s=r[1];else{let l=o.browseName?.namespaceIndex??0;s=t[l]??""}return{sourceNodeId:o.nodeId.toString(),parentSourceNodeId:e,browseName:o.browseName?.toString()??"",nsuQualifiedName:i,displayName:o.displayName?.text??o.browseName?.toString()??"",nodeClass:j[n]??"Unknown",typeDefinition:o.typeDefinition?o.typeDefinition.toString():null,namespaceUri:s,eventNotifier:o.nodeClass===p.Object?(o.eventNotifier??0)!==0:!1}}function w(o){let e=o.statusCode?.equals(P.Good)??!1;return{value:o.value?.value??null,quality:e?"Good":"Bad",timestamp:o.sourceTimestamp?.toISOString()??o.serverTimestamp?.toISOString()??new Date().toISOString(),statusCode:o.statusCode?.value}}function T(o){return{value:o.value?.value??null,quality:o.statusCode?.equals(P.Good)?"Good":"Bad",timestamp:o.sourceTimestamp?.toISOString()??o.serverTimestamp?.toISOString()??new Date().toISOString()}}async function N(o,e){try{let{ClientSessionOptimized:t}=await import("@sterfive/opcua-optimized-client"),n=new t(o);return e.info("\u2713 @sterfive/opcua-optimized-client activated \u2014 auto-batching, limit-splitting, and coalescing enabled"),n}catch{return e.info("Standard node-opcua client mode. Install @sterfive/opcua-optimized-client for automatic batching and enhanced performance."),o}}var B={None:S.None,Sign:S.Sign,SignAndEncrypt:S.SignAndEncrypt},D=class{constructor(e,t){this.logger=t;this._opts={endpointUrl:e.endpointUrl,securityMode:e.securityMode??"None",applicationName:e.applicationName??"i3x2ua-node",optimizedClient:e.optimizedClient??"auto",browseStrategy:e.browseStrategy??"parallel"}}logger;_client=null;_session=null;_namespaceArray=[];_opts;async connect(){let e=B[this._opts.securityMode]??S.None;this._client=q.create({applicationName:this._opts.applicationName,securityMode:e,connectionStrategy:{initialDelay:1e3,maxDelay:3e4,maxRetry:1/0},keepSessionAlive:!0,endpointMustExist:!1}),this._client.on("backoff",(i,s)=>{this.logger.warn(`Connection backoff #${i}, retrying in ${s}ms`)}),this._client.on("connection_reestablished",()=>{this.logger.info("OPC UA connection re-established")}),this.logger.info(`Connecting to ${this._opts.endpointUrl}...`),await this._client.connect(this._opts.endpointUrl);let t=await this._client.createSession();this._opts.optimizedClient!=="disabled"&&(t=await N(t,this.logger)),this._session=t;let n=await t.read({nodeId:y("i=2255"),attributeId:b.Value});this._namespaceArray=n.value?.value??[],this.logger.info("OPC UA session created")}async disconnect(){if(this._session){try{await this._session.close()}catch{}this._session=null}if(this._client){try{await this._client.disconnect()}catch{}this._client=null}this.logger.info("OPC UA disconnected")}isConnected(){return this._session!==null&&!this._session.isReconnecting}get session(){if(!this._session)throw new Error("OPC UA session not connected");return this._session}_makeBrowseDescriptions(e){return e.map(t=>({nodeId:y(t),browseDirection:k.Forward,includeSubtypes:!0,referenceTypeId:V("HierarchicalReferences"),resultMask:63,requestedMaxReferencesPerNode:0}))}async _browseSingleNode(e){let t=this._makeBrowseDescriptions([e])[0],n=await this.session.browse(t),i=[...n.references??[]],s=1,r=n.continuationPoint;for(;r;){let l=await this.session.browseNext(r,!1);s++,i.push(...l.references??[]),r=l.continuationPoint}return{refs:i,txCount:s}}async _bfsBrowse(e,t,n){let i=performance.now(),s=[],r=new Set,l=0,d=[{nodeId:e,parentId:null}],m=this._opts.browseStrategy!=="browseAll";for(;d.length>0;){let a=d.filter(c=>!r.has(c.nodeId));for(let c of a)r.add(c.nodeId);if(a.length===0)break;let u;if(m)u=await Promise.all(a.map(c=>this._browseSingleNode(c.nodeId)));else{let c=this._makeBrowseDescriptions(a.map(g=>g.nodeId)),f=await $(this.session,c);l+=1,u=f.map(g=>({refs:g.references??[],txCount:0}))}let h=[];for(let c=0;c<a.length;c++){let f=a[c],{refs:g,txCount:U}=u[c];l+=U;for(let I of g){let O=I.nodeId.toString();if(r.has(O))continue;let v=t(I,f.nodeId);v!==null&&s.push(v),(!n||n(I))&&h.push({nodeId:O,parentId:f.nodeId})}}d=h}return{items:s,txCount:l,ms:performance.now()-i}}async browseTree(){let e=V("ObjectsFolder").toString(),{items:t,txCount:n,ms:i}=await this._bfsBrowse(e,(r,l)=>x(r,l===e?null:l,this._namespaceArray),r=>r.nodeClass===A.Object||r.nodeClass===A.Variable),s=this._opts.browseStrategy!=="browseAll"?"parallel":"browseAll";return this.logger.info(`Browse tree: ${t.length} nodes in ${i.toFixed(0)}ms (strategy=${s}, transactions=${n})`),t}async getObjectTypes(){let{items:e,txCount:t,ms:n}=await this._bfsBrowse(V("ObjectTypesFolder").toString(),(s,r)=>{let l=s.browseName?.namespaceIndex??0,d=this._namespaceArray[l]??"";return{sourceNodeId:s.nodeId.toString(),parentSourceNodeId:r,browseName:s.browseName?.toString()??"",displayName:s.displayName?.text??"",namespaceUri:d}},()=>!0),i=this._opts.browseStrategy!=="browseAll"?"parallel":"browseAll";return this.logger.info(`Browse object types: ${e.length} types in ${n.toFixed(0)}ms (strategy=${i}, transactions=${t})`),e}async getNamespaces(){return this._namespaceArray.map((e,t)=>({uri:e,displayName:e.split("/").pop()??`ns${t}`}))}async readValue(e){let t=await this.session.read({nodeId:y(e),attributeId:b.Value});return w(t)}async readValues(e){if(e.length===0)return[];let t=e.map(s=>({nodeId:y(s),attributeId:b.Value})),n=await this.session.read(t);return(Array.isArray(n)?n:[n]).map(w)}async writeValue(e,t){let n={nodeId:y(e),attributeId:b.Value,value:{value:new R({dataType:M.Null,value:t})}},i=await this.session.write(n),s=Array.isArray(i)?i[0]:i;if(s&&!s.equals(H.Good))throw new Error(`Write failed: ${s.toString()}`)}async readHistory(e,t,n){let s=await this.session.readHistoryValue(y(e),t,n);return(s.historyData?s.historyData?.dataValues??[]:[]).map(T)}async callMethod(e,t,n){let i={objectId:y(e),methodId:y(t),inputArguments:n.map(r=>new R({dataType:M.Null,value:r}))};return(await this.session.call(i)).outputArguments??null}async createMonitoredSubscription(e){let t=await this.session.createSubscription2({requestedPublishingInterval:e.publishingIntervalMs,requestedLifetimeCount:100,requestedMaxKeepAliveCount:10,maxNotificationsPerPublish:0,publishingEnabled:!0,priority:10}),n=null,i=new Map,s=`opcua-sub-${Date.now()}`,r=this.logger;return r.info(`OPC UA CreateSubscription id=${s} publishingInterval=${e.publishingIntervalMs}ms`),{id:s,async addItems(d){let m=d.filter(u=>!i.has(u));if(m.length===0)return;let a=await Promise.all(m.map(u=>t.monitor({nodeId:y(u),attributeId:b.Value},{samplingInterval:e.publishingIntervalMs,discardOldest:!0,queueSize:10},z.Both)));for(let u=0;u<m.length;u++){let h=m[u],c=a[u];c.on("changed",f=>{if(n){let g=w(f);n(h,g.value,g.quality,g.timestamp)}}),i.set(h,c)}r.info(`OPC UA CreateMonitoredItems: ${m.length} items added (total=${i.size})`)},async removeItems(d){let m=d.map(a=>({id:a,item:i.get(a)})).filter(a=>a.item!=null);await Promise.all(m.map(({id:a,item:u})=>(i.delete(a),u.terminate().catch(()=>{}))))},onDataChange(d){n=d},async close(){try{await t.terminate()}catch{}i.clear()}}}};export{D as OpcUaClient,C as OpcUaDataSourceAdapter,_ as qualifiedNameToNsu,N as wrapSessionIfOptimized};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/opcua-adapter.ts","../src/opcua-client.ts","../src/opcua-mapper.ts","../src/optimized.ts"],"mappings":"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","names":["OpcUaDataSourceAdapter","client","_logger","sourceNodeId","sourceNodeIds","value","startTime","endTime","options","AttributeIds","BrowseDirection","browseAll","coerceNodeId","DataType","MessageSecurityMode","NodeClass","OPCUAClient","resolveNodeId","StatusCodes","TimestampsToReturn","Variant","NodeClass","StatusCodes","NODE_CLASS_NAMES","qualifiedNameToNsu","browseName","namespaceArray","nsIdx","refToSourceNode","ref","parentSourceNodeId","nodeClass","nsuQName","namespaceUri","nsuMatch","dataValueToSource","dv","isGood","dataValueToHistorical","wrapSessionIfOptimized","session","logger","ClientSessionOptimized","optimized","SECURITY_MODES","MessageSecurityMode","OpcUaClient","opts","logger","securityMode","OPCUAClient","count","delay","session","wrapSessionIfOptimized","nsArrayDv","coerceNodeId","AttributeIds","nodeIds","nodeId","BrowseDirection","resolveNodeId","desc","result","refs","txCount","cp","next","seedNodeId","onRef","shouldRecurse","started","output","visited","totalTx","frontier","useParallel","wave","f","item","waveResults","w","descriptions","browseResults","browseAll","r","nextFrontier","i","ref","childId","mapped","objectsFolderId","items","ms","parentNodeId","refToSourceNode","NodeClass","strategy","nsIdx","nsUri","uri","idx","dv","dataValueToSource","id","dvs","value","writeValue","Variant","DataType","code","StatusCodes","startTime","endTime","resultAny","dataValueToHistorical","objectNodeId","methodNodeId","args","request","a","options","sub","dataChangeCb","monitored","subId","sourceNodeIds","newIds","TimestampsToReturn","toRemove","e","cb"]}
|
|
1
|
+
{"version":3,"sources":["../src/opcua-adapter.ts","../src/opcua-client.ts","../src/opcua-mapper.ts","../src/optimized.ts"],"mappings":"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","names":["OpcUaDataSourceAdapter","client","_logger","sourceNodeId","sourceNodeIds","value","startTime","endTime","options","AttributeIds","BrowseDirection","browseAll","coerceNodeId","DataType","MessageSecurityMode","NodeClass","OPCUAClient","resolveNodeId","StatusCodes","TimestampsToReturn","Variant","NodeClass","StatusCodes","NODE_CLASS_NAMES","qualifiedNameToNsu","browseName","namespaceArray","nsIdx","refToSourceNode","ref","parentSourceNodeId","nodeClass","nsuQName","namespaceUri","nsuMatch","dataValueToSource","dv","isGood","dataValueToHistorical","wrapSessionIfOptimized","session","logger","ClientSessionOptimized","optimized","SECURITY_MODES","MessageSecurityMode","OpcUaClient","opts","logger","securityMode","OPCUAClient","count","delay","session","wrapSessionIfOptimized","nsArrayDv","coerceNodeId","AttributeIds","nodeIds","nodeId","BrowseDirection","resolveNodeId","desc","result","refs","txCount","cp","next","seedNodeId","onRef","shouldRecurse","started","output","visited","totalTx","frontier","useParallel","wave","f","item","waveResults","w","descriptions","browseResults","browseAll","r","nextFrontier","i","ref","childId","mapped","objectsFolderId","items","ms","parentNodeId","refToSourceNode","NodeClass","strategy","nsIdx","nsUri","uri","idx","dv","dataValueToSource","id","dvs","value","writeValue","Variant","DataType","code","StatusCodes","startTime","endTime","resultAny","dataValueToHistorical","objectNodeId","methodNodeId","args","request","a","options","sub","dataChangeCb","monitored","subId","sourceNodeIds","newIds","TimestampsToReturn","toRemove","e","cb"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@node-i3x/opcua-connector",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.4",
|
|
4
4
|
"description": "i3X OPC UA adapter — implements IDataSourcePort using node-opcua",
|
|
5
5
|
"license": "AGPL-3.0-or-later OR LicenseRef-Sterfive-Commercial",
|
|
6
6
|
"author": "Sterfive SAS <contact@sterfive.com> (https://sterfive.com)",
|
|
@@ -18,33 +18,48 @@
|
|
|
18
18
|
"type": "commercial",
|
|
19
19
|
"url": "https://sterfive.com"
|
|
20
20
|
},
|
|
21
|
-
"keywords": [
|
|
21
|
+
"keywords": [
|
|
22
|
+
"opcua",
|
|
23
|
+
"opc-ua",
|
|
24
|
+
"opc ua",
|
|
25
|
+
"i3x",
|
|
26
|
+
"industrial",
|
|
27
|
+
"iiot",
|
|
28
|
+
"iot",
|
|
29
|
+
"scada",
|
|
30
|
+
"plc",
|
|
31
|
+
"node-opcua",
|
|
32
|
+
"client",
|
|
33
|
+
"automation",
|
|
34
|
+
"sterfive"
|
|
35
|
+
],
|
|
22
36
|
"type": "module",
|
|
23
|
-
"main": "./
|
|
24
|
-
"types": "./
|
|
37
|
+
"main": "./dist/index.js",
|
|
38
|
+
"types": "./dist/index.d.ts",
|
|
25
39
|
"exports": {
|
|
26
|
-
".":
|
|
40
|
+
".": {
|
|
41
|
+
"types": "./dist/index.d.ts",
|
|
42
|
+
"import": "./dist/index.js"
|
|
43
|
+
}
|
|
27
44
|
},
|
|
28
45
|
"publishConfig": {
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"types": "./dist/index.d.ts",
|
|
32
|
-
"exports": {
|
|
33
|
-
".": {
|
|
34
|
-
"types": "./dist/index.d.ts",
|
|
35
|
-
"import": "./dist/index.js"
|
|
36
|
-
}
|
|
37
|
-
}
|
|
46
|
+
"access": "public",
|
|
47
|
+
"provenance": true
|
|
38
48
|
},
|
|
39
|
-
"files": [
|
|
49
|
+
"files": [
|
|
50
|
+
"dist",
|
|
51
|
+
"LICENSE",
|
|
52
|
+
"LICENSE-AGPL-3.0",
|
|
53
|
+
"LICENSING.md"
|
|
54
|
+
],
|
|
40
55
|
"scripts": {
|
|
41
56
|
"build": "tsup",
|
|
42
57
|
"typecheck": "tsc --noEmit"
|
|
43
58
|
},
|
|
44
59
|
"dependencies": {
|
|
45
|
-
"@node-i3x/core": "
|
|
46
|
-
"node-opcua": "^2.
|
|
47
|
-
"node-opcua-client": "^2.
|
|
60
|
+
"@node-i3x/core": "0.2.4",
|
|
61
|
+
"node-opcua": "^2.173.1",
|
|
62
|
+
"node-opcua-client": "^2.173.1"
|
|
48
63
|
},
|
|
49
64
|
"optionalDependencies": {
|
|
50
65
|
"@sterfive/opcua-optimized-client": "*"
|
package/dist/dist-JRNQJWOC.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{EventEmitter as ee}from"events";import{assert as b}from"node-opcua-assert";import"node-opcua-data-value";import{createMonitoredItemsLimit as te}from"node-opcua-pseudo-session";import{checkDebugFlag as ie,make_debugLog as ae,make_errorLog as se,make_warningLog as re}from"node-opcua-debug";import{CallMethodResult as ne,CreateMonitoredItemsRequest as R,CreateMonitoredItemsResponse as oe,MonitoringMode as le,ServerState as ue}from"node-opcua-types";import"node-opcua-variant";import{StatusCodes as C}from"node-opcua-status-code";import{VariableIds as p}from"node-opcua-constants";import"node-opcua-data-value";import{makeNodeId as de,resolveNodeId as me}from"node-opcua-nodeid";import{AttributeIds as pe}from"node-opcua-basic-types";import{make_debugLog as he}from"node-opcua-debug";import{StatusCodes as E}from"node-opcua-status-code";import{DataValue as O}from"node-opcua-data-value";import{StatusCodes as $}from"node-opcua-status-code";import{StatusCodes as I}from"node-opcua-basic-types";import"node-opcua-pseudo-session";import{BrowseResult as T}from"node-opcua-types";import{BrowsePathResult as A}from"node-opcua-types";import{StatusCodes as k}from"node-opcua-status-code";import"node-opcua-data-value";import"node-opcua-status-code";import"node-opcua-types";import{ServerState as y}from"node-opcua-types";import{make_warningLog as we}from"node-opcua-debug";import"node-opcua-data-model";import"node-opcua-client";import{EventEmitter as xe}from"events";import{DataValue as Ne,TimestampsToReturn as Re}from"node-opcua-data-value";import{NodeId as Ie}from"node-opcua-nodeid";import"node-opcua-pseudo-session";import{StatusCodes as Te}from"node-opcua-status-code";import{makeBrowsePath as _e}from"node-opcua-service-translate-browse-path";import{AttributeIds as Me}from"node-opcua-basic-types";import"node-opcua-types";import{make_debugLog as De}from"node-opcua-debug";import{DataType as v}from"node-opcua-basic-types";import"node-opcua-data-value";import"node-opcua-data-model";import{AttributeIds as Ee}from"node-opcua-basic-types";import{StatusCodes as Y}from"node-opcua-status-code";import"node-opcua-types";import{checkDebugFlag as Oe,make_debugLog as $e}from"node-opcua-debug";import{getExtraDataTypeManager as He}from"node-opcua-client";import{StatusCodes as ze}from"node-opcua-basic-types";import{make_debugLog as Ge}from"node-opcua-debug";import{HistoryReadRequest as L,HistoryReadValueId as Ue}from"node-opcua-types";var ce=he("opcua-optimized-client");async function fe(i,e,t){t=t||{maxBrowseContinuationPoints:0,maxHistoryContinuationPoints:0};let r=[p.Server_ServerCapabilities_OperationLimits_MaxNodesPerRead,p.Server_ServerCapabilities_OperationLimits_MaxNodesPerBrowse,p.Server_ServerCapabilities_OperationLimits_MaxNodesPerWrite,p.Server_ServerCapabilities_OperationLimits_MaxNodesPerMethodCall,p.Server_ServerCapabilities_OperationLimits_MaxNodesPerRegisterNodes,p.Server_ServerCapabilities_OperationLimits_MaxNodesPerNodeManagement,p.Server_ServerCapabilities_OperationLimits_MaxMonitoredItemsPerCall,p.Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryReadData,p.Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryReadEvents,p.Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryUpdateData,p.Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryUpdateEvents,p.Server_ServerCapabilities_OperationLimits_MaxNodesPerTranslateBrowsePathsToNodeIds,p.Server_ServerCapabilities_MaxBrowseContinuationPoints,p.Server_ServerCapabilities_MaxHistoryContinuationPoints],a=r.map(o=>({nodeId:de(o),attributeId:pe.Value})),s=[];try{s=await i.read(a)}catch(o){if(o.message.match(/BadTooManyOperations/))for(let l=0;l<a.length;l++){let u=await i.read(a[l]);s.push(u)}else throw o}function n(o,l){let u=s[o],m=r[o],d=me(m);if(u.statusCode.value===0)return l?Math.min(l,u.value.value||l):u.value.value||100;{let h=Object.entries(p).find(([c,x])=>x===m)[0];return ce("warning: ",h,"statusCode = ",u.statusCode.toString()),l||0}return 0}return{maxNodesPerRead:n(0,e.maxNodesPerRead),maxNodesPerBrowse:n(1,e.maxNodesPerBrowse),maxNodesPerWrite:n(2,e.maxNodesPerWrite),maxNodesPerMethodCall:n(3,e.maxNodesPerMethodCall),maxNodesPerRegisterNodes:n(4,e.maxNodesPerRegisterNodes),maxNodesPerNodeManagement:n(5,e.maxNodesPerNodeManagement),maxMonitoredItemsPerCall:n(6,e.maxMonitoredItemsPerCall),maxNodesPerHistoryReadData:n(7,e.maxNodesPerHistoryReadData),maxNodesPerHistoryReadEvents:n(8,e.maxNodesPerHistoryReadEvents),maxNodesPerHistoryUpdateData:n(9,e.maxNodesPerHistoryUpdateData),maxNodesPerHistoryUpdateEvents:n(10,e.maxNodesPerHistoryUpdateEvents),maxNodesPerTranslateBrowsePathsToNodeIds:n(11,e.maxNodesPerTranslateBrowsePathsToNodeIds),maxBrowseContinuationPoints:n(12,t.maxBrowseContinuationPoints),maxHistoryContinuationPoints:n(13,t.maxHistoryContinuationPoints)}}async function w(i,e=1e4){let t=i;if(!t.isReconnecting)return!0;let r=Date.now();for(;t.isReconnecting;)if(await new Promise(a=>setTimeout(a,100)),Date.now()-r>e)return console.error(`Timeout reached while waiting for reconnection ${e} ms`),!1;return!0}async function G(i,e,t){if(!(t instanceof Array))return(await G(i,e,[t]))[0];if(!await w(e))return t.map(s=>E.BadServerNotConnected);if(i<=0||t.length<=i)return await e.write(t);let r=[...t],a=[];do{let s=r.splice(0,i);if(await w(e)){let n=await e.write(s);a.push.apply(a,n)}else{let n=s.map(o=>E.BadServerNotConnected);a.push.apply(a,n)}}while(r.length);return a}async function U(i,e,t){if(!(t instanceof Array))return(await U(i,e,[t]))[0];if(!await w(e))return t.map(s=>new O({statusCode:$.BadServerNotConnected}));if(i<=0||t.length<=i)return await e.read(t);let r=[...t],a=[];do{let s=r.splice(0,i);if(await w(e)){let n=await e.read(s);a.push.apply(a,n)}else{let n=s.map(o=>new O({statusCode:$.BadServerNotConnected}));a.push.apply(a,n)}}while(r.length);return a}async function j(i,e,t){if(!(t instanceof Array))return(await j(i,e,[t]))[0];if(i<=0||t.length<=i)return await w(e)?e.browse(t):t.map(r=>new T({statusCode:I.BadServerNotConnected}));throw new Error("Internal Error ! : browseLimit cannot be used to browse more than maxNodePerBrowse elements")}async function F(i,e,t){if(!(t instanceof Array))return(await F(i,e,[t]))[0];if(i<=0||t.length<=i)return await w(e)?e.browseNext(t,!1):t.map(s=>new T({statusCode:I.BadServerNotConnected}));let r=[...t],a=[];do{let s=r.splice(0,i);if(await w(e)){let n=await e.browseNext(s,!1);a.push.apply(a,n)}else{let n=s.map(o=>new T({statusCode:I.BadServerNotConnected}));a.push.apply(a,n)}}while(r.length);return a}async function W(i,e,t){if(!(t instanceof Array))return(await W(i,e,[t]))[0];if(!await w(e))return t.map(s=>new A({statusCode:k.BadServerNotConnected}));if(i<=0||t.length<=i)return await e.translateBrowsePath(t);let r=[...t],a=[];do{let s=r.splice(0,i);if(await w(e)){let n=await e.translateBrowsePath(s);a.push.apply(a,n)}else{let n=s.map(o=>new A({statusCode:k.BadServerNotConnected}));a.push.apply(a,n)}}while(r.length);return a}var q=we("opcua-optimized-client");async function ge(i,e=1e3*60*3){return await ye(i,y.Running,e)}async function ye(i,e,t=1e3*60*3){let r=await i.read({nodeId:"Server_ServerStatus_State",attributeId:13});if(r.statusCode.isNotGood())return{success:!1,currentState:y.Unknown};let a=r.value.value;if(a===e)return{success:!0,currentState:a};q("waitUntilServerState ",a,y[a]," expected:",e,y[e]);let s=Date.now()+t;for(;;){let n=await i.read({nodeId:"Server_ServerStatus_State",attributeId:13}),o=n.value.value;if(o!==a&&q("waitUntilServerState ",o,y[o]," expected:",e,y[e]),a=n.value.value,a===e)return{success:!0,currentState:a};if(a===y.Shutdown)return{success:e===y.Shutdown,currentState:a};if(Date.now()>s)return{success:!1,currentState:a,timeout:!0};await new Promise(l=>setTimeout(l,1e3))}}var H=ie("opcua-optimized-client"),S=ae("opcua-optimized-client"),g=re("opcua-optimized-client"),Pe=se("opcua-optimized-client");function Ce(i){function e(r){let a=r;return a.timestampsToReturn+a.subscriptionId*10}let t={};for(let r of i){let a=e(r.item);t[a]||(t[a]=[]),t[a].push(r)}return Object.values(t)}var be=class extends ee{monitoredItems=[];async terminate(){await Promise.all(this.monitoredItems.map(i=>i.terminate())),this.monitoredItems=[],this.emit("terminated")}async modify(i,e){let t=this.monitoredItems.map(r=>r.modify(i));return(await Promise.all(t))[0]}async setMonitoringMode(i){let e=this.monitoredItems.map(t=>t.setMonitoringMode(i));return(await Promise.all(e))[0]}},Se=class{constructor(i,e){this.subscription=i,this.parent=e}get publishingInterval(){return this.subscription.publishingInterval}get lifetimeCount(){return this.subscription.lifetimeCount}get maxKeepAliveCount(){return this.subscription.maxKeepAliveCount}get maxNotificationsPerPublish(){return this.subscription.maxNotificationsPerPublish}get priority(){return this.subscription.priority}get subscriptionId(){return this.subscription.subscriptionId}once(i,e){return this.subscription.once(i,e),this}on(i,e){return this.subscription.on(i,e),this}removeListener(i,e){return this.subscription.removeListener(i,e),this}async monitor(i,e,t,r){let[a,s]=this.#t(i,e,t,r),n=this.subscription,o=new R({itemsToCreate:[s],subscriptionId:n.subscriptionId,timestampsToReturn:t}),l=await this.parent.createMonitoredItem(o);return l?a._after_create(l):S("monitoredItemCreateResult is null"),a}#t(i,e,t,r){let a=this.subscription._createMonitoredItem(i,e,t);r=r===void 0?le.Reporting:r;let s=a._prepare_for_monitoring();if(typeof s.error=="string")throw new Error(s.error);return a._before_create(),b(typeof s.error!="string"),[a,s]}async monitorItems(i,e,t){let r=this.subscription,a=i.map((u,m)=>this.#t(u,e,t)),s=a.map(([u,m])=>u),n=new be;n.monitoredItems=s,s.forEach((u,m)=>{u.on("changed",d=>{n.emit("changed",u,d,m)})});let o=a.map(([u,m])=>m).map(u=>new R({itemsToCreate:[u],subscriptionId:r.subscriptionId,timestampsToReturn:t})),l=await this.parent.createMonitoredItem(o);for(let u=0;u<s.length;u++){let m=s[u],d=l[u];d&&m._after_create(d)}return n}get monitoredItems(){return this.subscription.monitoredItems}};async function P(i,e){if(i instanceof Array){let t=[];for(let r of i)t.push(e(r));return Promise.all(t)}else return e(i)}function ve(i){let e=i._client;e&&(e.beforeSubscriptionRecreate=async t=>{let{success:r,currentState:a}=await ge(t);if(!r)return new Error("Server cannot be Running : is "+ue[a])})}var _=class V{constructor(e,t={}){this.session=e,this.defaultOperationLimits=t,ve(e);let r=e;r.$$getSessionForDataTypeExtraction=()=>new V(e,t)}#t=[];#n=[];#a=[];#s=[];#i=[];#o=[];#m=0;#c=0;#r=!1;#e;get requestedMaxReferencesPerNode(){return this.session.requestedMaxReferencesPerNode}set requestedMaxReferencesPerNode(e){this.session.requestedMaxReferencesPerNode=e}get operationInProgressCount(){return this.#m+this.#u}get isReconnecting(){return this.session.isReconnecting}#f=!1;#w=[];#g=[];async readOperationalLimits(){if(!this.#e)if(this.#f)await new Promise(e=>this.#w.push(e));else{this.#f=!0,await new Promise(t=>setTimeout(t,10)),this.#e=await fe(this.session,this.defaultOperationLimits);let e=[...this.#w];for(let t of e)t();this.#f=!1}return b(this.#e),this.#e}async#l(e,t){return this.#u++,this.#e||await this.readOperationalLimits(),new Promise((r,a)=>{e.push({item:t,resolve:this.#C.bind(this,r),reject:this.#C.bind(this,a)});let s=e.length;s>0&&s%5e4===0&&g("WARNING: processing transactions is dangerously slow !!!!",s),this.#T()})}async translateBrowsePath(e){return P(e,t=>this.#b(t))}async#b(e){return this.#l(this.#o,e)}async read(e){return P(e,t=>this.#S(t))}async#S(e){return this.#l(this.#n,e)}async browse(e){return P(e,t=>this.#y(t))}async#v(e){this.#m++,e.statusCode!==C.Good&&g("iterateWhileContinuationPoint: browseResult.statusCode.isGood() = "+e.statusCode.toString());let t=e.references||[],r=e.continuationPoint;for(;r;){let a=await this.#P(r);e.statusCode!==C.Good&&g("iterateWhileContinuationPoint: browseResult.statusCode.isGood() = "+e.statusCode.toString()),t.push.apply(t,a.references||[]),r=a.continuationPoint}return e.references=t,e.continuationPoint=null,this.#m--,e}async#x(e){return this.#l(this.#a,e)}async browseNext(e,t){return P(e,r=>this.#P(r))}async#y(e){this.#m++;let t;try{return t=await this.#x(e),t.statusCode.equals(C.BadNoContinuationPoints)?await this.#y(e):t.statusCode!==C.Good?(g("browseSingle: browseResult.isBad() = "+t.statusCode.toString()),t):(this.#c++,t=await this.#v(t),this.#c--,t)}catch(r){throw Pe("browseSingle: err = "+r.message),r}finally{this.#m--}}async#P(e){return this.#l(this.#s,e)}async write(e){return P(e,t=>this.#N(t))}async#N(e){return this.#l(this.#t,e)}async call(e){return P(e,t=>this.#R(t))}async#R(e){this.#u++,this.#e||await this.readOperationalLimits();try{return await this.session.call(e)}catch{return new ne({statusCode:C.BadCommunicationError,inputArgumentResults:null,inputArgumentDiagnosticInfos:null,outputArguments:null})}}async createMonitoredItem(e){return await P(e,t=>this.#I(t))}async#I(e){return b(e.itemsToCreate?.length==1),await this.#l(this.#i,e)}async flush(){async function e(){new Promise(r=>setTimeout(r,100))}for(;this.#p;)this.#d(),await e();let t=this.session;for(t.pendingTransactionsCount=t.pendingTransactionsCount||0;t.pendingTransactionsCount>1;)g(" pending transaction = ",t.pendingTransactionsCount),await e();this.#u&&await new Promise(r=>this.#g.push(r)),this.operationInProgressCount>0&&(await e(),await this.flush())}getSubscription(e){return new Se(e,this)}async createSubscription2(e){let t=await this.session.createSubscription2(e);return this.getSubscription(t)}async cancel(){if(this.#o.length){let e=this.#o;this.#o=[]}if(this.#t.length){let e=this.#t;this.#t=[]}if(this.#n.length){let e=this.#n;this.#n=[]}if(this.#a.length){let e=this.#a;this.#a=[]}if(this.#s.length){let e=this.#s;this.#s=[]}if(this.#i.length){let e=this.#i;this.#i=[]}}get#p(){return this.#o.length+this.#i.length+this.#t.length+this.#n.length+this.#a.length+this.#s.length}#T(){this.#r||setImmediate(()=>this.#d())}#u=0;#C=function(e,t){if(this.#u--,e(t),this.#u===0){let r=[...this.#g];for(let a of r)a()}};async#h(e,t,r){if(e.length){let a=e.splice(0),s=a.map(n=>n.item);try{let n=await t(r,this.session,s);for(let o=0;o<a.length;o++)a[o].resolve(n[o])}catch(n){return S(n.message),this.#r=!1,this.#p&&setImmediate(()=>this.#d()),!0}}return!1}async#d(){if(!this.#r&&(this.#r=!0,!await this.#h(this.#o,W,this.#e?.maxNodesPerTranslateBrowsePathsToNodeIds||0)&&!await this.#h(this.#t,G,this.#e?.maxNodesPerWrite||0)&&!await this.#h(this.#n,U,this.#e?.maxNodesPerRead||0)&&!await this.#h(this.#s,F,this.#e?.maxNodesPerBrowse||0))){if(this.#a.length)if(b(this.#s.length===0),this.#c)H&&g("skipping browse operation because browse operation is in progress");else{let e=this.#e?.maxNodesPerBrowse||1,t=this.#a.splice(0,e),r=t.map(a=>a.item);try{let a=await j(this.#e?.maxNodesPerBrowse||0,this.session,r);for(let s=0;s<t.length;s++)t[s].resolve(a[s])}catch(a){S(" nodesToBrowse => ",r.length),S(" maxNodesPerBrowse => ",this.#e?.maxNodesPerBrowse||0),g(" browseLimit has failed !!!!",a.message),this.#r=!1,this.#p&&setImmediate(()=>this.#d());return}}if(this.#i.length){let e=this.#i;this.#i=[];let t=Ce(e);for(let r of t){let a=new R({itemsToCreate:[],subscriptionId:r[0].item.subscriptionId,timestampsToReturn:r[0].item.timestampsToReturn});for(let s of r)for(let n of s.item.itemsToCreate||[])a.itemsToCreate.push(n);try{let s=await te(this.#e?.maxMonitoredItemsPerCall||0,this.session,a),n=0;for(let o of r){let l=[],u=new oe({results:l});for(let m of o.item.itemsToCreate||[]){let d=s.results[n++];l.push(d)}b(l.length==1,"internal error: expecting a single results per created monitored item"),o.resolve(l[0])}}catch(s){H&&S(s),g("createMonitoredItemsLimit has failed !!!!",s.message);for(let n=0;n<e.length;n++)e[n].reject(new Error("internal error"));this.#r=!1,this.#p&&setImmediate(()=>this.#d());return}}}this.#r=!1,this.#p&&setImmediate(()=>this.#d())}}},xt=class extends _{};function M(i){let e=i.value;return e&&e.value!==null?e.dataType===v.LocalizedText?e.value.text||"":e.dataType===v.DateTime?new Date(e.value):typeof e.value=="number"||typeof e.value=="boolean"?e.value:e.value.toString():e.dataType===v.Null?null:i.statusCode.toString()+" - "+v[e.dataType]}var D=De("opcua-optimized-client");function Be(i){return i?Object.entries(i).map(([e,t])=>({name:e,browsePath:t})):[]}async function Le(i,e){let t=e.map(a=>a.browsePath),r=await i.translateBrowsePath(t);return e.map((a,s)=>{let n=r[s],{statusCode:o}=n,l=n.targets&&n.targets.length&&n.targets[0].targetId||Ie.nullNodeId;return o!==Te.Good&&D("Warning ",e[s].name,e[s].browsePath.toString(),o.toString()),{name:a.name,browsePath:a.browsePath,statusCode:o,nodeId:l}})}var z=class extends xe{fullData={};simplified={};partialFullData={};partialSimplified={};lastChanged=new Date;$changePending=!1},At=class{constructor(i,e){this.session=i,this.subscription=e,this.requestedParameters={discardOldest:!0,queueSize:10,samplingInterval:100}}requestedParameters;async monitor(i){function e(o){return o.map(({nodeId:l})=>({nodeId:l,attributeId:Me.Value}))}let t=await Le(this.session,Be(i)),r=e(t),a=Object.keys(i),s=new z,n=()=>{s.lastChanged=new Date(Date.now()),s.$changePending||(s.$changePending=!0,setImmediate(()=>{s.$changePending=!1,s.emit("changed",s.simplified,s.fullData),s.emit("partialChanged",s.partialSimplified,s.partialSimplified),s.partialSimplified={},s.partialFullData={}}))};return(async()=>{let o=await this.subscription.monitorItems(r,this.requestedParameters,Re.Both);o.monitoredItems.forEach((l,u)=>s.fullData[a[u]]=new Ne({statusCode:l.statusCode})),s.emit("changed",s.simplified,s.fullData),o.on("initialized",()=>{D("group initialized")}),o.on("changed",(l,u,m)=>{s.fullData[a[m]]=u,s.simplified[a[m]]=M(u),s.partialFullData[a[m]]=u,s.partialSimplified[a[m]]=M(u),n()})})(),s}async monitorNested(i){let e=new z,t=()=>{e.$changePending||(e.$changePending=!0,setImmediate(()=>{e.$changePending=!1,e.emit("changed",e.simplified,e.fullData),e.emit("partialChanged",e.partialSimplified,e.partialSimplified),e.partialSimplified={},e.partialFullData={}}))},r=async(o,l,u,m)=>{if(m){let d={};Object.entries(m).map(([h,c])=>{let x=a(u,c);d[h]=_e(l,x)}),(await this.monitor(d)).on("partialChanged",(h,c)=>{D("partial change ",h,c),c&&Object.assign(o.fullData,c),h&&Object.assign(o.simplified,h),t()})}},a=(o,l)=>l?l[0]==="."?o+l.substring(1):l:o||"",s=async(o,l,u,m)=>{if(m)for(let d of m){o.fullData[d.name]={},o.simplified[d.name]={};let h={fullData:o.fullData[d.name],simplified:o.simplified[d.name]};l=d.rootNode||l;let c=a(u,d.browsePath);await r(h,l,c,d.properties),await s(h,l,c,d.nested)}},n=i.rootNode;return await r(e,n,i.browsePath||"",i.properties),await s(e,n,i.browsePath||"",i.nested),e}},Ae=Oe("opcua-optimized-client"),ke=$e("opcua-optimized-client");function qe(i){return i.reduce((e,t)=>e+(t.statusCode.equals(Y.Good)?0:1),0)}async function Gt(i,e){let t={},r=[],a=0;for(let[m,d]of Object.entries(e))r.push(d),t[m]=a++;let s=await i.translateBrowsePath(r);if(qe(s)!==0){for(let m=0;m<s.length;m++){let d=s[m];d.statusCode.equals(Y.Good)||Ae&&ke(r[m].toString(),d.toString())}throw new Error("browsePath has failed !")}let n=s.map(m=>({nodeId:m.targets[0].targetId,attributeId:Ee.Value})),o=await i.read(n);function l(m){let d=t[m];return d===void 0?"$$ERROR=>Unknown property "+m:M(o[d])}let u={};for(let m of Object.keys(e)){let d=m.split("$");d.length===1?u[m]=l(m):d.length===2?(u[d[0]]=u[d[0]]||{},u[d[0]][d[1]]=l(m)):d.length===3&&(u[d[0]]=u[d[0]]||{},u[d[0]][d[1]]=u[d[0]][d[1]]||{},u[d[0]][d[1]][d[2]]=l(m))}return u}async function jt(i,e){let t=i instanceof _?i:new _(i),r=t.session;e=e??r?.client?.dataTypeExtractStrategy;let a=r;if(a.$$extraDataTypeManager){let n=t;return n.$$extraDataTypeManager||(n.$$extraDataTypeManager=a.$$extraDataTypeManager),a.$$extraDataTypeManager}let s=await He(t,e);return a.$$extraDataTypeManager||(a.$$extraDataTypeManager=s),s}var f=!1,B=Ge("opcua-optmized-client"),N={MAX_RETRY_ATTEMPTS:10,RETRY_DELAY_MS:100};function X(i){return!!(i&&i.responseHeader?.serviceResult.isGood()&&i.results&&i.results.length>0)}function K(i){return i.statusCode.isGood()&&!!i.continuationPoint&&i.continuationPoint.length>0}function je(i,e,t){i[t]&&e[t]?i[t]=i[t].concat(e[t]):e[t]&&(i[t]=e[t])}function Fe(i,e){["dataValues","events","modificationInfos"].forEach(t=>{je(i,e,t)})}function We(i,e,t,r){return i.map((a,s)=>t(a)?r(a,s,e[s]):null).filter(a=>a!==null)}function Q(i,e){return We(i,e,K,(t,r,a)=>({index:a,continuationPoint:t.continuationPoint}))}function Ve(i,e,t){let r=[];for(let a=0;a<e.results.length;a++){let s=e.results[a],n=t[a].index;if(K(s)&&r.push({index:n,continuationPoint:s.continuationPoint}),s.historyData&&i.response.results[n].historyData)try{let o=i.response.results[n].historyData,l=s.historyData;Fe(o,l)}catch(o){f&&console.warn(`Failed to merge history data for index ${n}:`,o)}}return r}async function J(i,e){let t=[...e];for(;t.length>0;){let r=t.map(s=>new Ue({...i.originalRequest.nodesToRead[s.index],continuationPoint:s.continuationPoint})),a=new L({...i.originalRequest,nodesToRead:r});try{let s=await i.session.historyRead(a);if(!X(s)){f&&console.warn("Continuation point request failed, stopping continuation processing");break}t=Ve(i,s,t)}catch(s){f&&console.warn("Failed to process continuation points:",s);break}}}function Ye(i){return i.response.results.map((e,t)=>e.statusCode===ze.BadNoContinuationPoints?{index:t,nodeToRead:i.originalRequest.nodesToRead[t]}:null).filter(e=>e!==null)}async function Xe(i){i>0&&await new Promise(e=>setTimeout(e,i))}async function Z(i){if(i.retryCount=i.retryCount||0,i.retryCount>=N.MAX_RETRY_ATTEMPTS){f&&console.warn(`Maximum retry attempts (${N.MAX_RETRY_ATTEMPTS}) reached, stopping retries.`);return}let e=Ye(i);if(e.length!==0){f&&B(`Retry attempt ${i.retryCount+1}: Retrying ${e.length} nodes with BadNoContinuationPoints status.`),i.retryCount>0&&await Xe(N.RETRY_DELAY_MS);try{let t=e.map(n=>n.nodeToRead),r=new L({...i.originalRequest,nodesToRead:t}),a=await i.session.historyRead(r);if(!X(a)){f&&console.warn("Retry request failed, keeping original BadNoContinuationPoints results");return}for(let n=0;n<a.results.length;n++){let o=a.results[n],l=e[n].index;i.response.results[l]=o}let s=Q(a.results,e.map(n=>n.index));s.length>0&&await J(i,s),i.retryCount++,await Z(i)}catch(t){f&&console.warn(`Failed to retry nodes with BadNoContinuationPoints (attempt ${i.retryCount+1}):`,t)}}}async function Yt(i,e){let t=await i.historyRead(new L(e));if(!t||!t.results||t.results.length===0)return t;f&&B("Initial history read response:",t.toString());let r=e.nodesToRead?.map((n,o)=>o)||[],a={session:i,originalRequest:e,response:t,originalIndices:r},s=Q(t.results,r);return s.length>0&&await J(a,s),await Z(a),f&&B("History read completed successfully"),a.response}export{be as ClientMonitoredItemGroup2,_ as ClientSessionOptimized,xt as ClientSessionWithWriteOptimized,Se as ClientSubscription2,At as OpcuaClusterMonitoring,qe as _countBad,j as browseLimit,F as browseNextLimit,jt as getExtraDataTypeManager2,Yt as historyReadFull,ve as installImproveReconnection,U as readLimit,fe as readOperationLimits,Gt as readVariableCluster,ge as waitUntilServerRunning,ye as waitUntilServerState,G as writeLimit};
|
|
2
|
-
//# sourceMappingURL=dist-JRNQJWOC.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../node_modules/@sterfive/opcua-optimized-client/dist/index.mjs"],"mappings":"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","names":["he","S","fe","ye","we","ge","Pe","Ie","H","be","Ce","Re","R","ae","ue","le","me","z","F","j","_","D","U","Q","g","de","Me","xe","Te","Ne","_e","De","Oe","Ae","M","Ve","ee","Le","ke","Ge","Fe","W","je","G","o","a","n","c","d","s","u","l","f","y","I","h","T","N","O","A","m","E","Y","K","pe","X","B","P","Se","Be","V","e","t","r","L","b","C","i","#r","#o","#a","#c","#h","#n","#l","#y","#w","#u","#I","#x","#C","#g","#R","#S","#B","#v","#M","#d","#m","#p","J","v","k","Ee","He","x","Z","re","qe","$e","We","Wi","Qi","w","$","q","te","ie","Ue","Qe","Ye","oe","Ke","se","Xe","Je","ne","to"]}
|