node-opcua-file-transfer 2.113.0 → 2.115.0

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,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.ClientFile = exports.OpenFileMode = void 0;
13
4
  /**
@@ -36,241 +27,221 @@ class ClientFile {
36
27
  this.session = session;
37
28
  this.fileNodeId = nodeId;
38
29
  }
39
- open(mode) {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- if (mode === null || mode === undefined) {
42
- throw new Error("expecting a validMode " + open_mode_1.OpenFileMode[mode]);
43
- }
44
- if (this.fileHandle) {
45
- throw new Error("File has already be opened");
46
- }
47
- yield this.ensureInitialized();
48
- const result = yield this.session.call({
49
- inputArguments: [{ dataType: node_opcua_variant_1.DataType.Byte, value: mode }],
50
- methodId: this.openMethodNodeId,
51
- objectId: this.fileNodeId
52
- });
53
- if (result.statusCode.isNotGood()) {
54
- debugLog("Cannot open file : ");
55
- throw new Error("cannot open file statusCode = " + result.statusCode.toString() + " mode = " + open_mode_1.OpenFileMode[mode]);
56
- }
57
- this.fileHandle = result.outputArguments[0].value;
58
- return this.fileHandle;
30
+ async open(mode) {
31
+ if (mode === null || mode === undefined) {
32
+ throw new Error("expecting a validMode " + open_mode_1.OpenFileMode[mode]);
33
+ }
34
+ if (this.fileHandle) {
35
+ throw new Error("File has already be opened");
36
+ }
37
+ await this.ensureInitialized();
38
+ const result = await this.session.call({
39
+ inputArguments: [{ dataType: node_opcua_variant_1.DataType.Byte, value: mode }],
40
+ methodId: this.openMethodNodeId,
41
+ objectId: this.fileNodeId
59
42
  });
43
+ if (result.statusCode.isNotGood()) {
44
+ debugLog("Cannot open file : ");
45
+ throw new Error("cannot open file statusCode = " + result.statusCode.toString() + " mode = " + open_mode_1.OpenFileMode[mode]);
46
+ }
47
+ this.fileHandle = result.outputArguments[0].value;
48
+ return this.fileHandle;
60
49
  }
61
- close() {
62
- return __awaiter(this, void 0, void 0, function* () {
63
- if (!this.fileHandle) {
64
- throw new Error("File has not been opened yet");
65
- }
66
- yield this.ensureInitialized();
67
- const result = yield this.session.call({
68
- inputArguments: [{ dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle }],
69
- methodId: this.closeMethodNodeId,
70
- objectId: this.fileNodeId
71
- });
72
- if (result.statusCode.isNotGood()) {
73
- debugLog("Cannot close file : ");
74
- throw new Error("cannot close file statusCode = " + result.statusCode.toString());
75
- }
76
- this.fileHandle = 0;
50
+ async close() {
51
+ if (!this.fileHandle) {
52
+ throw new Error("File has not been opened yet");
53
+ }
54
+ await this.ensureInitialized();
55
+ const result = await this.session.call({
56
+ inputArguments: [{ dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle }],
57
+ methodId: this.closeMethodNodeId,
58
+ objectId: this.fileNodeId
77
59
  });
60
+ if (result.statusCode.isNotGood()) {
61
+ debugLog("Cannot close file : ");
62
+ throw new Error("cannot close file statusCode = " + result.statusCode.toString());
63
+ }
64
+ this.fileHandle = 0;
78
65
  }
79
- getPosition() {
80
- return __awaiter(this, void 0, void 0, function* () {
81
- yield this.ensureInitialized();
82
- if (!this.fileHandle) {
83
- throw new Error("File has not been opened yet");
84
- }
85
- const result = yield this.session.call({
86
- inputArguments: [{ dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle }],
87
- methodId: this.getPositionNodeId,
88
- objectId: this.fileNodeId
89
- });
90
- if (result.statusCode.isNotGood()) {
91
- throw new Error("Error " + result.statusCode.toString());
92
- }
93
- return result.outputArguments[0].value;
66
+ async getPosition() {
67
+ await this.ensureInitialized();
68
+ if (!this.fileHandle) {
69
+ throw new Error("File has not been opened yet");
70
+ }
71
+ const result = await this.session.call({
72
+ inputArguments: [{ dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle }],
73
+ methodId: this.getPositionNodeId,
74
+ objectId: this.fileNodeId
94
75
  });
76
+ if (result.statusCode.isNotGood()) {
77
+ throw new Error("Error " + result.statusCode.toString());
78
+ }
79
+ return result.outputArguments[0].value;
95
80
  }
96
- setPosition(position) {
97
- return __awaiter(this, void 0, void 0, function* () {
98
- yield this.ensureInitialized();
99
- if (!this.fileHandle) {
100
- throw new Error("File has not been opened yet");
101
- }
102
- if (typeof position === "number") {
103
- position = [0, position];
104
- }
105
- const result = yield this.session.call({
106
- inputArguments: [
107
- { dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle },
108
- {
109
- arrayType: node_opcua_variant_1.VariantArrayType.Scalar,
110
- dataType: node_opcua_variant_1.DataType.UInt64,
111
- value: position
112
- }
113
- ],
114
- methodId: this.setPositionNodeId,
115
- objectId: this.fileNodeId
116
- });
117
- if (result.statusCode.isNotGood()) {
118
- throw new Error("Error " + result.statusCode.toString());
119
- }
120
- return;
81
+ async setPosition(position) {
82
+ await this.ensureInitialized();
83
+ if (!this.fileHandle) {
84
+ throw new Error("File has not been opened yet");
85
+ }
86
+ if (typeof position === "number") {
87
+ position = [0, position];
88
+ }
89
+ const result = await this.session.call({
90
+ inputArguments: [
91
+ { dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle },
92
+ {
93
+ arrayType: node_opcua_variant_1.VariantArrayType.Scalar,
94
+ dataType: node_opcua_variant_1.DataType.UInt64,
95
+ value: position
96
+ }
97
+ ],
98
+ methodId: this.setPositionNodeId,
99
+ objectId: this.fileNodeId
121
100
  });
101
+ if (result.statusCode.isNotGood()) {
102
+ throw new Error("Error " + result.statusCode.toString());
103
+ }
104
+ return;
122
105
  }
123
- read(bytesToRead) {
124
- return __awaiter(this, void 0, void 0, function* () {
125
- yield this.ensureInitialized();
126
- if (!this.fileHandle) {
127
- throw new Error("File has not been opened yet");
128
- }
129
- const result = yield this.session.call({
130
- inputArguments: [
131
- { dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle },
132
- {
133
- arrayType: node_opcua_variant_1.VariantArrayType.Scalar,
134
- dataType: node_opcua_variant_1.DataType.Int32,
135
- value: (0, node_opcua_basic_types_1.coerceInt32)(bytesToRead)
136
- }
137
- ],
138
- methodId: this.readNodeId,
139
- objectId: this.fileNodeId
140
- });
141
- if (result.statusCode.isNotGood()) {
142
- throw new Error("Error " + result.statusCode.toString());
143
- }
144
- if (!result.outputArguments || result.outputArguments[0].dataType !== node_opcua_variant_1.DataType.ByteString) {
145
- throw new Error("Error invalid output");
146
- }
147
- return result.outputArguments[0].value;
106
+ async read(bytesToRead) {
107
+ await this.ensureInitialized();
108
+ if (!this.fileHandle) {
109
+ throw new Error("File has not been opened yet");
110
+ }
111
+ const result = await this.session.call({
112
+ inputArguments: [
113
+ { dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle },
114
+ {
115
+ arrayType: node_opcua_variant_1.VariantArrayType.Scalar,
116
+ dataType: node_opcua_variant_1.DataType.Int32,
117
+ value: (0, node_opcua_basic_types_1.coerceInt32)(bytesToRead)
118
+ }
119
+ ],
120
+ methodId: this.readNodeId,
121
+ objectId: this.fileNodeId
148
122
  });
123
+ if (result.statusCode.isNotGood()) {
124
+ throw new Error("Error " + result.statusCode.toString());
125
+ }
126
+ if (!result.outputArguments || result.outputArguments[0].dataType !== node_opcua_variant_1.DataType.ByteString) {
127
+ throw new Error("Error invalid output");
128
+ }
129
+ return result.outputArguments[0].value;
149
130
  }
150
- write(data) {
151
- return __awaiter(this, void 0, void 0, function* () {
152
- yield this.ensureInitialized();
153
- if (!this.fileHandle) {
154
- throw new Error("File has not been opened yet");
155
- }
156
- const result = yield this.session.call({
157
- inputArguments: [
158
- { dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle },
159
- {
160
- arrayType: node_opcua_variant_1.VariantArrayType.Scalar,
161
- dataType: node_opcua_variant_1.DataType.ByteString,
162
- value: data
163
- }
164
- ],
165
- methodId: this.writeNodeId,
166
- objectId: this.fileNodeId
167
- });
168
- if (result.statusCode.isNotGood()) {
169
- throw new Error("Error " + result.statusCode.toString());
170
- }
171
- return;
131
+ async write(data) {
132
+ await this.ensureInitialized();
133
+ if (!this.fileHandle) {
134
+ throw new Error("File has not been opened yet");
135
+ }
136
+ const result = await this.session.call({
137
+ inputArguments: [
138
+ { dataType: node_opcua_variant_1.DataType.UInt32, value: this.fileHandle },
139
+ {
140
+ arrayType: node_opcua_variant_1.VariantArrayType.Scalar,
141
+ dataType: node_opcua_variant_1.DataType.ByteString,
142
+ value: data
143
+ }
144
+ ],
145
+ methodId: this.writeNodeId,
146
+ objectId: this.fileNodeId
172
147
  });
148
+ if (result.statusCode.isNotGood()) {
149
+ throw new Error("Error " + result.statusCode.toString());
150
+ }
151
+ return;
173
152
  }
174
- openCount() {
175
- return __awaiter(this, void 0, void 0, function* () {
176
- yield this.ensureInitialized();
177
- const nodeToRead = { nodeId: this.openCountNodeId, attributeId: node_opcua_data_model_1.AttributeIds.Value };
178
- const dataValue = yield this.session.read(nodeToRead);
179
- // istanbul ignore next
180
- if (doDebug) {
181
- debugLog(" OpenCount ", nodeToRead.nodeId.toString(), dataValue.toString());
182
- }
183
- return dataValue.value.value;
184
- });
153
+ async openCount() {
154
+ await this.ensureInitialized();
155
+ const nodeToRead = { nodeId: this.openCountNodeId, attributeId: node_opcua_data_model_1.AttributeIds.Value };
156
+ const dataValue = await this.session.read(nodeToRead);
157
+ // istanbul ignore next
158
+ if (doDebug) {
159
+ debugLog(" OpenCount ", nodeToRead.nodeId.toString(), dataValue.toString());
160
+ }
161
+ return dataValue.value.value;
185
162
  }
186
- size() {
187
- return __awaiter(this, void 0, void 0, function* () {
188
- yield this.ensureInitialized();
189
- const nodeToRead = { nodeId: this.sizeNodeId, attributeId: node_opcua_data_model_1.AttributeIds.Value };
190
- const dataValue = yield this.session.read(nodeToRead);
191
- return dataValue.value.value;
192
- });
163
+ async size() {
164
+ await this.ensureInitialized();
165
+ const nodeToRead = { nodeId: this.sizeNodeId, attributeId: node_opcua_data_model_1.AttributeIds.Value };
166
+ const dataValue = await this.session.read(nodeToRead);
167
+ return dataValue.value.value;
193
168
  }
194
169
  // eslint-disable-next-line max-statements
195
- extractMethodsIds() {
196
- return __awaiter(this, void 0, void 0, function* () {
197
- if (ClientFile.useGlobalMethod) {
198
- debugLog("Using GlobalMethodId");
199
- this.openMethodNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_Open);
200
- this.closeMethodNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_Close);
201
- this.setPositionNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_SetPosition);
202
- this.getPositionNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_GetPosition);
203
- this.writeNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_Write);
204
- this.readNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_Read);
205
- const browsePaths = [
206
- (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/OpenCount"),
207
- (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/Size")
208
- ];
209
- const results = yield this.session.translateBrowsePath(browsePaths);
210
- if (results[0].statusCode.isNotGood()) {
211
- throw new Error("fileType object does not expose mandatory OpenCount Property");
212
- }
213
- if (results[1].statusCode.isNotGood()) {
214
- throw new Error("fileType object does not expose mandatory Size Property");
215
- }
216
- this.openCountNodeId = results[0].targets[0].targetId;
217
- this.sizeNodeId = results[1].targets[0].targetId;
218
- return;
219
- }
170
+ async extractMethodsIds() {
171
+ if (ClientFile.useGlobalMethod) {
172
+ debugLog("Using GlobalMethodId");
173
+ this.openMethodNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_Open);
174
+ this.closeMethodNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_Close);
175
+ this.setPositionNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_SetPosition);
176
+ this.getPositionNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_GetPosition);
177
+ this.writeNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_Write);
178
+ this.readNodeId = (0, node_opcua_nodeid_1.resolveNodeId)(node_opcua_constants_1.MethodIds.FileType_Read);
220
179
  const browsePaths = [
221
- (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/Open"),
222
- (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/Close"),
223
- (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/SetPosition"),
224
- (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/GetPosition"),
225
- (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/Write"),
226
- (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/Read"),
227
180
  (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/OpenCount"),
228
181
  (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/Size")
229
182
  ];
230
- const results = yield this.session.translateBrowsePath(browsePaths);
183
+ const results = await this.session.translateBrowsePath(browsePaths);
231
184
  if (results[0].statusCode.isNotGood()) {
232
- throw new Error("fileType object does not expose mandatory Open Method");
185
+ throw new Error("fileType object does not expose mandatory OpenCount Property");
233
186
  }
234
187
  if (results[1].statusCode.isNotGood()) {
235
- throw new Error("fileType object does not expose mandatory Close Method");
236
- }
237
- if (results[2].statusCode.isNotGood()) {
238
- throw new Error("fileType object does not expose mandatory SetPosition Method");
239
- }
240
- if (results[3].statusCode.isNotGood()) {
241
- throw new Error("fileType object does not expose mandatory GetPosition Method");
188
+ throw new Error("fileType object does not expose mandatory Size Property");
242
189
  }
243
- if (results[4].statusCode.isNotGood()) {
244
- throw new Error("fileType object does not expose mandatory Write Method");
245
- }
246
- if (results[5].statusCode.isNotGood()) {
247
- throw new Error("fileType object does not expose mandatory Read Method");
248
- }
249
- if (results[6].statusCode.isNotGood()) {
250
- throw new Error("fileType object does not expose mandatory OpenCount Variable");
251
- }
252
- if (results[7].statusCode.isNotGood()) {
253
- throw new Error("fileType object does not expose mandatory Size Variable");
254
- }
255
- if (false && doDebug) {
256
- results.map((x) => debugLog(x.toString()));
257
- }
258
- this.openMethodNodeId = results[0].targets[0].targetId;
259
- this.closeMethodNodeId = results[1].targets[0].targetId;
260
- this.setPositionNodeId = results[2].targets[0].targetId;
261
- this.getPositionNodeId = results[3].targets[0].targetId;
262
- this.writeNodeId = results[4].targets[0].targetId;
263
- this.readNodeId = results[5].targets[0].targetId;
264
- this.openCountNodeId = results[6].targets[0].targetId;
265
- this.sizeNodeId = results[7].targets[0].targetId;
266
- });
190
+ this.openCountNodeId = results[0].targets[0].targetId;
191
+ this.sizeNodeId = results[1].targets[0].targetId;
192
+ return;
193
+ }
194
+ const browsePaths = [
195
+ (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/Open"),
196
+ (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/Close"),
197
+ (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/SetPosition"),
198
+ (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/GetPosition"),
199
+ (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/Write"),
200
+ (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/Read"),
201
+ (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/OpenCount"),
202
+ (0, node_opcua_service_translate_browse_path_1.makeBrowsePath)(this.fileNodeId, "/Size")
203
+ ];
204
+ const results = await this.session.translateBrowsePath(browsePaths);
205
+ if (results[0].statusCode.isNotGood()) {
206
+ throw new Error("fileType object does not expose mandatory Open Method");
207
+ }
208
+ if (results[1].statusCode.isNotGood()) {
209
+ throw new Error("fileType object does not expose mandatory Close Method");
210
+ }
211
+ if (results[2].statusCode.isNotGood()) {
212
+ throw new Error("fileType object does not expose mandatory SetPosition Method");
213
+ }
214
+ if (results[3].statusCode.isNotGood()) {
215
+ throw new Error("fileType object does not expose mandatory GetPosition Method");
216
+ }
217
+ if (results[4].statusCode.isNotGood()) {
218
+ throw new Error("fileType object does not expose mandatory Write Method");
219
+ }
220
+ if (results[5].statusCode.isNotGood()) {
221
+ throw new Error("fileType object does not expose mandatory Read Method");
222
+ }
223
+ if (results[6].statusCode.isNotGood()) {
224
+ throw new Error("fileType object does not expose mandatory OpenCount Variable");
225
+ }
226
+ if (results[7].statusCode.isNotGood()) {
227
+ throw new Error("fileType object does not expose mandatory Size Variable");
228
+ }
229
+ if (false && doDebug) {
230
+ results.map((x) => debugLog(x.toString()));
231
+ }
232
+ this.openMethodNodeId = results[0].targets[0].targetId;
233
+ this.closeMethodNodeId = results[1].targets[0].targetId;
234
+ this.setPositionNodeId = results[2].targets[0].targetId;
235
+ this.getPositionNodeId = results[3].targets[0].targetId;
236
+ this.writeNodeId = results[4].targets[0].targetId;
237
+ this.readNodeId = results[5].targets[0].targetId;
238
+ this.openCountNodeId = results[6].targets[0].targetId;
239
+ this.sizeNodeId = results[7].targets[0].targetId;
267
240
  }
268
- ensureInitialized() {
269
- return __awaiter(this, void 0, void 0, function* () {
270
- if (!this.openMethodNodeId) {
271
- yield this.extractMethodsIds();
272
- }
273
- });
241
+ async ensureInitialized() {
242
+ if (!this.openMethodNodeId) {
243
+ await this.extractMethodsIds();
244
+ }
274
245
  }
275
246
  }
276
247
  exports.ClientFile = ClientFile;
@@ -1 +1 @@
1
- {"version":3,"file":"client_file.js","sourceRoot":"","sources":["../../source/client/client_file.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;GAEG;AACH,mEAAiG;AACjG,iEAAqD;AACrD,yDAA0D;AAG1D,uGAAsF;AACtF,2DAAgE;AAChE,+DAAiD;AAEjD,uDAAgF;AAEhF,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,OAAO,GAAG,IAAA,iCAAc,EAAC,UAAU,CAAC,CAAC;AAE3C,4CAA4C;AAC5C,0CAA4C;AAAnC,yGAAA,YAAY,OAAA;AA4BrB;;;GAGG;AACH,MAAa,UAAU;IAgBnB,YAAY,OAAsB,EAAE,MAAc;QAb3C,eAAU,GAAG,CAAC,CAAC;QAclB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;IAC7B,CAAC;IAEY,IAAI,CAAC,IAAkB;;YAChC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;gBACrC,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,wBAAY,CAAC,IAAI,CAAC,CAAC,CAAC;aAClE;YACD,IAAI,IAAI,CAAC,UAAU,EAAE;gBACjB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;aACjD;YACD,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAE/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBACnC,cAAc,EAAE,CAAC,EAAE,QAAQ,EAAE,6BAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,IAAY,EAAE,CAAC;gBAClE,QAAQ,EAAE,IAAI,CAAC,gBAAgB;gBAC/B,QAAQ,EAAE,IAAI,CAAC,UAAU;aAC5B,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBAC/B,QAAQ,CAAC,qBAAqB,CAAC,CAAC;gBAChC,MAAM,IAAI,KAAK,CAAC,gCAAgC,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,UAAU,GAAG,wBAAY,CAAC,IAAI,CAAC,CAAC,CAAC;aACtH;YAED,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,eAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAEnD,OAAO,IAAI,CAAC,UAAU,CAAC;QAC3B,CAAC;KAAA;IAEY,KAAK;;YACd,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;aACnD;YACD,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAE/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBACnC,cAAc,EAAE,CAAC,EAAE,QAAQ,EAAE,6BAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;gBACvE,QAAQ,EAAE,IAAI,CAAC,iBAAiB;gBAChC,QAAQ,EAAE,IAAI,CAAC,UAAU;aAC5B,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBAC/B,QAAQ,CAAC,sBAAsB,CAAC,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,iCAAiC,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;aACrF;YAED,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACxB,CAAC;KAAA;IAEY,WAAW;;YACpB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;aACnD;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBACnC,cAAc,EAAE,CAAC,EAAE,QAAQ,EAAE,6BAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;gBACvE,QAAQ,EAAE,IAAI,CAAC,iBAAiB;gBAChC,QAAQ,EAAE,IAAI,CAAC,UAAU;aAC5B,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBAC/B,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;aAC5D;YACD,OAAO,MAAM,CAAC,eAAgB,CAAC,CAAC,CAAC,CAAC,KAAe,CAAC;QACtD,CAAC;KAAA;IAEY,WAAW,CAAC,QAAyB;;YAC9C,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;aACnD;YACD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;gBAC9B,QAAQ,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;aAC5B;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBACnC,cAAc,EAAE;oBACZ,EAAE,QAAQ,EAAE,6BAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE;oBACrD;wBACI,SAAS,EAAE,qCAAgB,CAAC,MAAM;wBAClC,QAAQ,EAAE,6BAAQ,CAAC,MAAM;wBACzB,KAAK,EAAE,QAAQ;qBAClB;iBACJ;gBACD,QAAQ,EAAE,IAAI,CAAC,iBAAiB;gBAChC,QAAQ,EAAE,IAAI,CAAC,UAAU;aAC5B,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBAC/B,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;aAC5D;YACD,OAAO;QACX,CAAC;KAAA;IAEY,IAAI,CAAC,WAA4C;;YAC1D,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;aACnD;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBACnC,cAAc,EAAE;oBACZ,EAAE,QAAQ,EAAE,6BAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE;oBACrD;wBACI,SAAS,EAAE,qCAAgB,CAAC,MAAM;wBAClC,QAAQ,EAAE,6BAAQ,CAAC,KAAK;wBACxB,KAAK,EAAE,IAAA,oCAAW,EAAC,WAAW,CAAC;qBAClC;iBACJ;gBACD,QAAQ,EAAE,IAAI,CAAC,UAAU;gBACzB,QAAQ,EAAE,IAAI,CAAC,UAAU;aAC5B,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBAC/B,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;aAC5D;YACD,IAAI,CAAC,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,6BAAQ,CAAC,UAAU,EAAE;gBACvF,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;aAC3C;YACD,OAAO,MAAM,CAAC,eAAgB,CAAC,CAAC,CAAC,CAAC,KAAe,CAAC;QACtD,CAAC;KAAA;IAEY,KAAK,CAAC,IAAY;;YAC3B,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;aACnD;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBACnC,cAAc,EAAE;oBACZ,EAAE,QAAQ,EAAE,6BAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE;oBACrD;wBACI,SAAS,EAAE,qCAAgB,CAAC,MAAM;wBAClC,QAAQ,EAAE,6BAAQ,CAAC,UAAU;wBAC7B,KAAK,EAAE,IAAI;qBACd;iBACJ;gBACD,QAAQ,EAAE,IAAI,CAAC,WAAW;gBAC1B,QAAQ,EAAE,IAAI,CAAC,UAAU;aAC5B,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBAC/B,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;aAC5D;YACD,OAAO;QACX,CAAC;KAAA;IAEY,SAAS;;YAClB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAuB,EAAE,MAAM,EAAE,IAAI,CAAC,eAAgB,EAAE,WAAW,EAAE,oCAAY,CAAC,KAAK,EAAE,CAAC;YAC1G,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAEtD,uBAAuB;YACvB,IAAI,OAAO,EAAE;gBACT,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC,MAAO,CAAC,QAAQ,EAAE,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;aAChF;YACD,OAAO,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;QACjC,CAAC;KAAA;IAEY,IAAI;;YACb,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,oCAAY,CAAC,KAAK,EAAE,CAAC;YAChF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACtD,OAAO,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;QACjC,CAAC;KAAA;IAED,0CAA0C;IAC1B,iBAAiB;;YAC7B,IAAI,UAAU,CAAC,eAAe,EAAE;gBAC5B,QAAQ,CAAC,sBAAsB,CAAC,CAAC;gBACjC,IAAI,CAAC,gBAAgB,GAAG,IAAA,iCAAa,EAAC,gCAAS,CAAC,aAAa,CAAC,CAAC;gBAC/D,IAAI,CAAC,iBAAiB,GAAG,IAAA,iCAAa,EAAC,gCAAS,CAAC,cAAc,CAAC,CAAC;gBACjE,IAAI,CAAC,iBAAiB,GAAG,IAAA,iCAAa,EAAC,gCAAS,CAAC,oBAAoB,CAAC,CAAC;gBACvE,IAAI,CAAC,iBAAiB,GAAG,IAAA,iCAAa,EAAC,gCAAS,CAAC,oBAAoB,CAAC,CAAC;gBACvE,IAAI,CAAC,WAAW,GAAG,IAAA,iCAAa,EAAC,gCAAS,CAAC,cAAc,CAAC,CAAC;gBAC3D,IAAI,CAAC,UAAU,GAAG,IAAA,iCAAa,EAAC,gCAAS,CAAC,aAAa,CAAC,CAAC;gBACzD,MAAM,WAAW,GAAiB;oBAC9B,IAAA,yDAAc,EAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC;oBAC7C,IAAA,yDAAc,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;iBAC3C,CAAC;gBACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;gBACpE,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;oBACnC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;iBACnF;gBACD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;oBACnC,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;iBAC9E;gBACD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACvD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAClD,OAAO;aACV;YACD,MAAM,WAAW,GAAiB;gBAC9B,IAAA,yDAAc,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;gBACxC,IAAA,yDAAc,EAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC;gBACzC,IAAA,yDAAc,EAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC;gBAC/C,IAAA,yDAAc,EAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC;gBAC/C,IAAA,yDAAc,EAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC;gBACzC,IAAA,yDAAc,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;gBACxC,IAAA,yDAAc,EAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC;gBAC7C,IAAA,yDAAc,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;aAC3C,CAAC;YAEF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAEpE,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;aAC5E;YACD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;aAC7E;YACD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;aACnF;YACD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;aACnF;YACD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;aAC7E;YACD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;aAC5E;YACD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;aACnF;YACD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE;gBACnC,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;aAC9E;YAED,IAAI,KAAK,IAAI,OAAO,EAAE;gBAClB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;aACnD;YACD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACxD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACzD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACzD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACzD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACnD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAClD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACvD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACtD,CAAC;KAAA;IAEe,iBAAiB;;YAC7B,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;gBACxB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;aAClC;QACL,CAAC;KAAA;;AA/PL,gCAgQC;AA/PiB,0BAAe,GAAG,KAAK,AAAR,CAAS;AAoQ1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG"}
1
+ {"version":3,"file":"client_file.js","sourceRoot":"","sources":["../../source/client/client_file.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.readOPCUAFile = exports.readFile = void 0;
13
4
  const node_opcua_basic_types_1 = require("node-opcua-basic-types");
@@ -16,45 +7,41 @@ const read_max_byte_string_length_1 = require("./read_max_byte_string_length");
16
7
  function getTransportMaxMessageSize(session) {
17
8
  return session.getTransportSettings ? session.getTransportSettings().maxMessageSize : 0;
18
9
  }
19
- function readFile(clientFile, options) {
20
- return __awaiter(this, void 0, void 0, function* () {
21
- options = options || { chunkSize: yield (0, read_max_byte_string_length_1.readMaxByteStringLength)(clientFile.session) };
22
- let maxBlockSize = options.chunkSize || 1024;
23
- const transportMaxSize = getTransportMaxMessageSize(clientFile.session);
24
- maxBlockSize = transportMaxSize > 0 ? Math.min(maxBlockSize, transportMaxSize) : maxBlockSize;
25
- yield clientFile.open(client_file_1.OpenFileMode.Read);
26
- try {
27
- const fileSize = (0, node_opcua_basic_types_1.coerceInt32)(yield clientFile.size());
28
- /**
29
- * Read file
30
- */
31
- const data = yield clientFile.read(Math.min(fileSize, maxBlockSize));
32
- if (data.length >= fileSize) {
33
- // everything has been read
34
- return data;
35
- }
36
- // wee need to loop to complete the read
37
- const chunks = [data];
38
- let remaining = fileSize - data.length;
39
- while (remaining > 0) {
40
- const buf = yield clientFile.read(Math.min(remaining, maxBlockSize));
41
- if (buf.length === 0)
42
- break;
43
- chunks.push(buf);
44
- remaining -= buf.length;
45
- }
46
- return Buffer.concat(chunks);
10
+ async function readFile(clientFile, options) {
11
+ options = options || { chunkSize: await (0, read_max_byte_string_length_1.readMaxByteStringLength)(clientFile.session) };
12
+ let maxBlockSize = options.chunkSize || 1024;
13
+ const transportMaxSize = getTransportMaxMessageSize(clientFile.session);
14
+ maxBlockSize = transportMaxSize > 0 ? Math.min(maxBlockSize, transportMaxSize) : maxBlockSize;
15
+ await clientFile.open(client_file_1.OpenFileMode.Read);
16
+ try {
17
+ const fileSize = (0, node_opcua_basic_types_1.coerceInt32)(await clientFile.size());
18
+ /**
19
+ * Read file
20
+ */
21
+ const data = await clientFile.read(Math.min(fileSize, maxBlockSize));
22
+ if (data.length >= fileSize) {
23
+ // everything has been read
24
+ return data;
47
25
  }
48
- finally {
49
- yield clientFile.close();
26
+ // wee need to loop to complete the read
27
+ const chunks = [data];
28
+ let remaining = fileSize - data.length;
29
+ while (remaining > 0) {
30
+ const buf = await clientFile.read(Math.min(remaining, maxBlockSize));
31
+ if (buf.length === 0)
32
+ break;
33
+ chunks.push(buf);
34
+ remaining -= buf.length;
50
35
  }
51
- });
36
+ return Buffer.concat(chunks);
37
+ }
38
+ finally {
39
+ await clientFile.close();
40
+ }
52
41
  }
53
42
  exports.readFile = readFile;
54
- function readOPCUAFile(clientFile) {
55
- return __awaiter(this, void 0, void 0, function* () {
56
- return yield readFile(clientFile);
57
- });
43
+ async function readOPCUAFile(clientFile) {
44
+ return await readFile(clientFile);
58
45
  }
59
46
  exports.readOPCUAFile = readOPCUAFile;
60
47
  //# sourceMappingURL=read_file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"read_file.js","sourceRoot":"","sources":["../../source/client/read_file.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mEAAqD;AAErD,+CAA0D;AAC1D,+EAAwE;AAExE,SAAS,0BAA0B,CAAC,OAAsB;IACtD,OAAO,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED,SAAsB,QAAQ,CAAC,UAAuB,EAAE,OAAgC;;QACpF,OAAO,GAAG,OAAO,IAAI,EAAE,SAAS,EAAE,MAAM,IAAA,qDAAuB,EAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACtF,IAAI,YAAY,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;QAC7C,MAAM,gBAAgB,GAAG,0BAA0B,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxE,YAAY,GAAG,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAE9F,MAAM,UAAU,CAAC,IAAI,CAAC,0BAAY,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI;YACA,MAAM,QAAQ,GAAG,IAAA,oCAAW,EAAC,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;YACtD;;eAEG;YACH,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;YACrE,IAAI,IAAI,CAAC,MAAM,IAAI,QAAQ,EAAE;gBACzB,2BAA2B;gBAC3B,OAAO,IAAI,CAAC;aACf;YAED,wCAAwC;YACxC,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;YACtB,IAAI,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;YACvC,OAAO,SAAS,GAAG,CAAC,EAAE;gBAClB,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;gBACrE,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;oBAAE,MAAM;gBAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjB,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC;aAC3B;YACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAChC;gBAAS;YACN,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;SAC5B;IACL,CAAC;CAAA;AA/BD,4BA+BC;AAED,SAAsB,aAAa,CAAC,UAAuB;;QACvD,OAAO,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;CAAA;AAFD,sCAEC"}
1
+ {"version":3,"file":"read_file.js","sourceRoot":"","sources":["../../source/client/read_file.ts"],"names":[],"mappings":";;;AAAA,mEAAqD;AAErD,+CAA0D;AAC1D,+EAAwE;AAExE,SAAS,0BAA0B,CAAC,OAAsB;IACtD,OAAO,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5F,CAAC;AAEM,KAAK,UAAU,QAAQ,CAAC,UAAuB,EAAE,OAAgC;IACpF,OAAO,GAAG,OAAO,IAAI,EAAE,SAAS,EAAE,MAAM,IAAA,qDAAuB,EAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;IACtF,IAAI,YAAY,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;IAC7C,MAAM,gBAAgB,GAAG,0BAA0B,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACxE,YAAY,GAAG,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;IAE9F,MAAM,UAAU,CAAC,IAAI,CAAC,0BAAY,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI;QACA,MAAM,QAAQ,GAAG,IAAA,oCAAW,EAAC,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QACtD;;WAEG;QACH,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;QACrE,IAAI,IAAI,CAAC,MAAM,IAAI,QAAQ,EAAE;YACzB,2BAA2B;YAC3B,OAAO,IAAI,CAAC;SACf;QAED,wCAAwC;QACxC,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;QACvC,OAAO,SAAS,GAAG,CAAC,EAAE;YAClB,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;YACrE,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM;YAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjB,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC;SAC3B;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;KAChC;YAAS;QACN,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;KAC5B;AACL,CAAC;AA/BD,4BA+BC;AAEM,KAAK,UAAU,aAAa,CAAC,UAAuB;IACvD,OAAO,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;AACtC,CAAC;AAFD,sCAEC"}