node-opcua-convert-nodeset-to-javascript 2.69.0 → 2.70.1

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.
@@ -17,7 +17,7 @@ const walk_through_1 = require("./walk_through");
17
17
  const convert_to_typescript_1 = require("./convert_to_typescript");
18
18
  const cache_1 = require("./private/cache");
19
19
  function getPackageInfo(dependency, options) {
20
- console.log("getPackageInfo", dependency);
20
+ //xx console.log("getPackageInfo", dependency);
21
21
  const l = [...(options.lookupFolders || [])];
22
22
  l.push(path.join(__dirname, "../../"));
23
23
  for (const folder of l) {
@@ -1 +1 @@
1
- {"version":3,"file":"convert_namespace_to_typescript.js","sourceRoot":"","sources":["../source/convert_namespace_to_typescript.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convert_namespace_to_typescript.js","sourceRoot":"","sources":["../source/convert_namespace_to_typescript.ts"],"names":[],"mappings":"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"}
@@ -67,7 +67,7 @@ interface ClassMember extends ClassMemberBasic {
67
67
  innerClass?: Import | null;
68
68
  childBase?: Import | null;
69
69
  }
70
- interface Classified {
70
+ interface ClassifiedReferenceDescriptions {
71
71
  Mandatory: ReferenceDescription[];
72
72
  Optional: ReferenceDescription[];
73
73
  MandatoryPlaceholder: ReferenceDescription[];
@@ -75,12 +75,13 @@ interface Classified {
75
75
  ExposesItsArray: ReferenceDescription[];
76
76
  }
77
77
  export declare function findClassMember(session: IBasicSession, browseName: QualifiedName, baseParentDef: ClassDefinition, cache: Cache): Promise<ClassMember | null>;
78
- export declare function checkIfShouldExposeInnerDefinition(main: Classified, instance: Classified): boolean;
78
+ export declare function checkIfShouldExposeInnerDefinition(main: ClassifiedReferenceDescriptions, instance: ClassifiedReferenceDescriptions): boolean;
79
79
  interface ClassDefinitionB {
80
80
  superType?: {
81
81
  nodeId: NodeId;
82
82
  };
83
83
  interfaceName: Import;
84
+ baseClassDef?: ClassDefinition | null;
84
85
  }
85
86
  export declare function extractClassMemberDef(session: IBasicSession, nodeId: NodeId, parentDef: ClassDefinitionB, cache: Cache): Promise<ClassMember>;
86
87
  export declare function findUsedImport(namespaceIndex: number, cache: Cache): string[];
@@ -236,7 +236,7 @@ function extractClassDefinition(session, nodeId, cache) {
236
236
  });
237
237
  }
238
238
  exports.extractClassDefinition = extractClassDefinition;
239
- function classify(session, refs) {
239
+ function classify(session, refs, classDef) {
240
240
  return __awaiter(this, void 0, void 0, function* () {
241
241
  const r = {
242
242
  Mandatory: [],
@@ -246,8 +246,20 @@ function classify(session, refs) {
246
246
  ExposesItsArray: []
247
247
  };
248
248
  for (const mm of refs) {
249
- const modellingRule = yield (0, utils_1.getModellingRule)(session, mm.nodeId);
249
+ let modellingRule = yield (0, utils_1.getModellingRule)(session, mm.nodeId);
250
250
  if (modellingRule) {
251
+ // if Optional, check that base class member is also Optional or force to Mandatory
252
+ if (modellingRule === "Optional" && classDef.baseClassDef) {
253
+ const sameMember = classDef.baseClassDef.members.find((m) => m.browseName.name === mm.browseName.name);
254
+ if (sameMember) {
255
+ if (!sameMember.isOptional) {
256
+ console.log(chalk.cyan("Warning: ") +
257
+ chalk.yellow(classDef.browseName.toString()) +
258
+ " ModellingRule is Optional but base class member is Mandatory");
259
+ modellingRule = "Mandatory";
260
+ }
261
+ }
262
+ }
251
263
  r[modellingRule] = r[modellingRule] || [];
252
264
  r[modellingRule].push(mm);
253
265
  }
@@ -271,14 +283,14 @@ function extractAllMembers(session, classDef, cache) {
271
283
  }
272
284
  }
273
285
  // now separate mandatory and optionals
274
- const members = yield classify(session, m);
286
+ const members = yield classify(session, m, classDef);
275
287
  return members;
276
288
  });
277
289
  }
278
290
  function findClassMember(session, browseName, baseParentDef, cache) {
279
291
  return __awaiter(this, void 0, void 0, function* () {
280
- const str = browseName.toString();
281
- const r = baseParentDef.children.find((a) => a.browseName.toString() === str);
292
+ const childBrowseName = browseName.toString();
293
+ const r = baseParentDef.children.find((a) => a.browseName.toString() === childBrowseName);
282
294
  if (r) {
283
295
  const d = yield extractClassMemberDef(session, r.nodeId, baseParentDef, cache);
284
296
  return d;
@@ -317,7 +329,19 @@ function dump1(a) {
317
329
  .sort()
318
330
  .join(" "));
319
331
  }
320
- function _extractLocalMembers(session, classMember, cache) {
332
+ function getSameInBaseClass(parent, browseName) {
333
+ if (!parent || !parent.baseClassDef)
334
+ return null;
335
+ const originalClassMember = parent.baseClassDef.members.find((m) => m.browseName.toString() === browseName.toString());
336
+ return originalClassMember || null;
337
+ }
338
+ function sameInBaseClassIsMandatory(parent, browseName) {
339
+ const originalClassMember = getSameInBaseClass(parent, browseName);
340
+ if (!originalClassMember)
341
+ return false;
342
+ return !originalClassMember.isOptional;
343
+ }
344
+ function _extractLocalMembers(session, parent, classMember, cache) {
321
345
  var _a;
322
346
  return __awaiter(this, void 0, void 0, function* () {
323
347
  const children2 = [];
@@ -327,7 +351,7 @@ function _extractLocalMembers(session, classMember, cache) {
327
351
  const name = toJavascritPropertyName(browseName.name, { ignoreConflictingName: true });
328
352
  const description = yield (0, utils_1.getDescription)(session, nodeId);
329
353
  const modellingRule = yield (0, utils_1.getModellingRule)(session, nodeId);
330
- const isOptional = modellingRule === "Optional";
354
+ const isOptional = sameInBaseClassIsMandatory(parent, browseName) ? false : modellingRule === "Optional";
331
355
  const typeDefinition = yield (0, utils_1.getTypeDefOrBaseType)(session, nodeId);
332
356
  const childInBase = (_a = classMember.classDef) === null || _a === void 0 ? void 0 : _a.members.find((a) => a.browseName.toString() === browseName.toString());
333
357
  let childType;
@@ -420,7 +444,7 @@ function extractClassMemberDef(session, nodeId, parentDef, cache) {
420
444
  const description = yield (0, utils_1.getDescription)(session, nodeId);
421
445
  const children = yield (0, utils_1.getChildrenOrFolderElements)(session, nodeId);
422
446
  const modellingRule = yield (0, utils_1.getModellingRule)(session, nodeId);
423
- const isOptional = modellingRule === "Optional";
447
+ const isOptional = sameInBaseClassIsMandatory(parentDef, browseName) ? false : modellingRule === "Optional";
424
448
  const typeDefinition = yield (0, utils_1.getTypeDefOrBaseType)(session, nodeId);
425
449
  if (nodeClass !== node_opcua_data_model_1.NodeClass.Method && (!typeDefinition.browseName || !typeDefinition.browseName.name)) {
426
450
  warningLog(typeDefinition.toString());
@@ -439,7 +463,7 @@ function extractClassMemberDef(session, nodeId, parentDef, cache) {
439
463
  // let's extract the member that are theorically defined in the member
440
464
  const membersReference = yield extractAllMembers(session, classDef, cache);
441
465
  // find member exposed by this member
442
- const membersInstance = yield classify(session, children);
466
+ const membersInstance = yield classify(session, children, classDef);
443
467
  // if (name==="powerup") {
444
468
  // dump1(membersReference);
445
469
  // dump1(membersInstance);
@@ -505,7 +529,7 @@ function extractClassMemberDef(session, nodeId, parentDef, cache) {
505
529
  childBase,
506
530
  chevrons: null
507
531
  };
508
- classMember.children2 = yield _extractLocalMembers(session, classMember, cache);
532
+ classMember.children2 = yield _extractLocalMembers(session, classDef, classMember, cache);
509
533
  if (nodeClass === node_opcua_data_model_1.NodeClass.Variable) {
510
534
  const extra = yield extractVariableExtra(session, nodeId, cache, classMember);
511
535
  classMember = Object.assign(Object.assign({}, classMember), extra);
@@ -1 +1 @@
1
- {"version":3,"file":"convert_to_typescript.js","sourceRoot":"","sources":["../source/convert_to_typescript.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convert_to_typescript.js","sourceRoot":"","sources":["../source/convert_to_typescript.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-opcua-convert-nodeset-to-javascript",
3
- "version": "2.69.0",
3
+ "version": "2.70.1",
4
4
  "description": "pure nodejs OPCUA SDK - module -convert-nodeset-to-javascript",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
@@ -14,29 +14,29 @@
14
14
  "dependencies": {
15
15
  "@types/wordwrap": "^1.0.1",
16
16
  "case-anything": "1.1.3",
17
- "node-opcua-address-space": "2.69.0",
18
- "node-opcua-address-space-base": "2.69.0",
17
+ "node-opcua-address-space": "2.70.1",
18
+ "node-opcua-address-space-base": "2.70.1",
19
19
  "node-opcua-assert": "2.66.0",
20
- "node-opcua-basic-types": "2.69.0",
21
- "node-opcua-constants": "2.67.0",
22
- "node-opcua-data-access": "2.69.0",
23
- "node-opcua-data-model": "2.69.0",
24
- "node-opcua-data-value": "2.69.0",
20
+ "node-opcua-basic-types": "2.70.0",
21
+ "node-opcua-constants": "2.70.0",
22
+ "node-opcua-data-access": "2.70.0",
23
+ "node-opcua-data-model": "2.70.0",
24
+ "node-opcua-data-value": "2.70.0",
25
25
  "node-opcua-debug": "2.69.0",
26
- "node-opcua-factory": "2.69.0",
27
- "node-opcua-nodeid": "2.69.0",
28
- "node-opcua-pseudo-session": "2.69.0",
29
- "node-opcua-service-translate-browse-path": "2.69.0",
30
- "node-opcua-status-code": "2.69.0",
31
- "node-opcua-types": "2.69.0",
26
+ "node-opcua-factory": "2.70.0",
27
+ "node-opcua-nodeid": "2.70.0",
28
+ "node-opcua-pseudo-session": "2.70.0",
29
+ "node-opcua-service-translate-browse-path": "2.70.0",
30
+ "node-opcua-status-code": "2.70.0",
31
+ "node-opcua-types": "2.70.0",
32
32
  "node-opcua-utils": "2.69.0",
33
33
  "wordwrap": "^1.0.0"
34
34
  },
35
35
  "devDependencies": {
36
36
  "node-opcua-leak-detector": "2.69.0",
37
- "node-opcua-nodesets": "2.66.0",
38
- "node-opcua-packet-analyzer": "2.69.0",
39
- "node-opcua-variant": "2.69.0",
37
+ "node-opcua-nodesets": "2.70.0",
38
+ "node-opcua-packet-analyzer": "2.70.0",
39
+ "node-opcua-variant": "2.70.0",
40
40
  "should": "^13.2.3"
41
41
  },
42
42
  "author": "Etienne Rossignon",
@@ -54,5 +54,5 @@
54
54
  "internet of things"
55
55
  ],
56
56
  "homepage": "http://node-opcua.github.io/",
57
- "gitHead": "6c88d05e8c82ce4bc9c8af9f0a8eb6136f31d2ce"
57
+ "gitHead": "5671bd283471b729838fb582bb2a705d5a4d528c"
58
58
  }
@@ -9,7 +9,7 @@ import { constructCache } from "./private/cache";
9
9
  import { Options } from "./options";
10
10
 
11
11
  function getPackageInfo(dependency: string, options: Options) {
12
- console.log("getPackageInfo", dependency);
12
+ //xx console.log("getPackageInfo", dependency);
13
13
 
14
14
  const l = [...(options.lookupFolders || [])];
15
15
  l.push(path.join(__dirname, "../../"));
@@ -352,15 +352,19 @@ interface ClassMember extends ClassMemberBasic {
352
352
  childBase?: Import | null;
353
353
  }
354
354
 
355
- interface Classified {
355
+ interface ClassifiedReferenceDescriptions {
356
356
  Mandatory: ReferenceDescription[];
357
357
  Optional: ReferenceDescription[];
358
358
  MandatoryPlaceholder: ReferenceDescription[];
359
359
  OptionalPlaceholder: ReferenceDescription[];
360
360
  ExposesItsArray: ReferenceDescription[];
361
361
  }
362
- async function classify(session: IBasicSession, refs: ReferenceDescription[]): Promise<Classified> {
363
- const r: Classified = {
362
+ async function classify(
363
+ session: IBasicSession,
364
+ refs: ReferenceDescription[],
365
+ classDef: ClassDefinition
366
+ ): Promise<ClassifiedReferenceDescriptions> {
367
+ const r: ClassifiedReferenceDescriptions = {
364
368
  Mandatory: [],
365
369
  Optional: [],
366
370
  MandatoryPlaceholder: [],
@@ -369,8 +373,24 @@ async function classify(session: IBasicSession, refs: ReferenceDescription[]): P
369
373
  };
370
374
 
371
375
  for (const mm of refs) {
372
- const modellingRule = await getModellingRule(session, mm.nodeId);
376
+ let modellingRule = await getModellingRule(session, mm.nodeId);
377
+
373
378
  if (modellingRule) {
379
+ // if Optional, check that base class member is also Optional or force to Mandatory
380
+ if (modellingRule === "Optional" && classDef.baseClassDef) {
381
+ const sameMember = classDef.baseClassDef.members.find((m) => m.browseName.name === mm.browseName.name);
382
+ if (sameMember) {
383
+ if (!sameMember.isOptional) {
384
+ console.log(
385
+ chalk.cyan("Warning: ") +
386
+ chalk.yellow(classDef.browseName.toString()) +
387
+ " ModellingRule is Optional but base class member is Mandatory"
388
+ );
389
+ modellingRule = "Mandatory";
390
+ }
391
+ }
392
+ }
393
+
374
394
  r[modellingRule] = r[modellingRule] || [];
375
395
  r[modellingRule].push(mm);
376
396
  }
@@ -378,7 +398,11 @@ async function classify(session: IBasicSession, refs: ReferenceDescription[]): P
378
398
  return r;
379
399
  }
380
400
 
381
- async function extractAllMembers(session: IBasicSession, classDef: ClassDefinition, cache: Cache) {
401
+ async function extractAllMembers(
402
+ session: IBasicSession,
403
+ classDef: ClassDefinition,
404
+ cache: Cache
405
+ ): Promise<ClassifiedReferenceDescriptions> {
382
406
  const m = [...classDef.children];
383
407
  let s = classDef;
384
408
  while (s.baseClassDef) {
@@ -393,7 +417,7 @@ async function extractAllMembers(session: IBasicSession, classDef: ClassDefiniti
393
417
  }
394
418
  }
395
419
  // now separate mandatory and optionals
396
- const members = await classify(session, m);
420
+ const members = await classify(session, m, classDef);
397
421
  return members;
398
422
  }
399
423
  export async function findClassMember(
@@ -402,8 +426,8 @@ export async function findClassMember(
402
426
  baseParentDef: ClassDefinition,
403
427
  cache: Cache
404
428
  ): Promise<ClassMember | null> {
405
- const str = browseName.toString();
406
- const r = baseParentDef.children.find((a) => a.browseName.toString() === str);
429
+ const childBrowseName = browseName.toString();
430
+ const r = baseParentDef.children.find((a) => a.browseName.toString() === childBrowseName);
407
431
  if (r) {
408
432
  const d = await extractClassMemberDef(session, r!.nodeId, baseParentDef, cache);
409
433
  return d;
@@ -415,7 +439,8 @@ export async function findClassMember(
415
439
  }
416
440
  return await findClassMember(session, browseName, baseBaseParentDef, cache);
417
441
  }
418
- function hasNewMaterial(referenceMembers: ReferenceDescription[], instanceMembers: ReferenceDescription[]) {
442
+
443
+ function hasNewMaterial(referenceMembers: ReferenceDescription[], instanceMembers: ReferenceDescription[]): boolean {
419
444
  const ref = referenceMembers.map((x) => x.browseName.toString()).sort();
420
445
  const instance = instanceMembers.map((x) => x.browseName.toString()).sort();
421
446
  for (const n of instance) {
@@ -429,12 +454,15 @@ function hasNewMaterial(referenceMembers: ReferenceDescription[], instanceMember
429
454
  // we should expose an inner definition if
430
455
  // - at least one mandatory in instnace doesn't exist in main.Mandatory
431
456
  // - at least one optional in instnace doesn't exist in main.Mandatory
432
- export function checkIfShouldExposeInnerDefinition(main: Classified, instance: Classified): boolean {
457
+ export function checkIfShouldExposeInnerDefinition(
458
+ main: ClassifiedReferenceDescriptions,
459
+ instance: ClassifiedReferenceDescriptions
460
+ ): boolean {
433
461
  const hasNewStuff = hasNewMaterial(main.Mandatory, instance.Mandatory) || hasNewMaterial(main.Optional, instance.Optional);
434
462
  return hasNewStuff;
435
463
  }
436
464
 
437
- function dump1(a: Classified) {
465
+ function dump1(a: ClassifiedReferenceDescriptions): void {
438
466
  console.log(
439
467
  "Mandatory = ",
440
468
  a.Mandatory.map((x) => x.browseName.toString())
@@ -449,7 +477,23 @@ function dump1(a: Classified) {
449
477
  );
450
478
  }
451
479
 
452
- async function _extractLocalMembers(session: IBasicSession, classMember: ClassMember, cache: Cache): Promise<ClassMemberBasic[]> {
480
+ function getSameInBaseClass(parent: ClassDefinitionB | null, browseName: QualifiedName): ClassMember | null {
481
+ if (!parent || !parent.baseClassDef) return null;
482
+ const originalClassMember = parent.baseClassDef.members.find((m) => m.browseName.toString() === browseName.toString());
483
+ return originalClassMember || null;
484
+ }
485
+ function sameInBaseClassIsMandatory(parent: ClassDefinitionB | null, browseName: QualifiedName): boolean {
486
+ const originalClassMember = getSameInBaseClass(parent, browseName);
487
+ if (!originalClassMember) return false;
488
+ return !originalClassMember.isOptional;
489
+ }
490
+
491
+ async function _extractLocalMembers(
492
+ session: IBasicSession,
493
+ parent: ClassDefinition | null,
494
+ classMember: ClassMember,
495
+ cache: Cache
496
+ ): Promise<ClassMemberBasic[]> {
453
497
  const children2: ClassMemberBasic[] = [];
454
498
  for (const child of classMember.children) {
455
499
  const nodeId = child.nodeId;
@@ -458,7 +502,8 @@ async function _extractLocalMembers(session: IBasicSession, classMember: ClassMe
458
502
 
459
503
  const description = await getDescription(session, nodeId);
460
504
  const modellingRule = await getModellingRule(session, nodeId);
461
- const isOptional = modellingRule === "Optional";
505
+
506
+ const isOptional = sameInBaseClassIsMandatory(parent, browseName) ? false : modellingRule === "Optional";
462
507
 
463
508
  const typeDefinition = await getTypeDefOrBaseType(session, nodeId);
464
509
 
@@ -557,6 +602,8 @@ interface ClassDefinitionB {
557
602
  nodeId: NodeId;
558
603
  };
559
604
  interfaceName: Import;
605
+ baseClassDef?: ClassDefinition | null;
606
+
560
607
  }
561
608
  // eslint-disable-next-line max-statements
562
609
  export async function extractClassMemberDef(
@@ -565,8 +612,10 @@ export async function extractClassMemberDef(
565
612
  parentDef: ClassDefinitionB,
566
613
  cache: Cache
567
614
  ): Promise<ClassMember> {
615
+
568
616
  const nodeClass = await getNodeClass(session, nodeId);
569
617
  const browseName = await getBrowseName(session, nodeId);
618
+
570
619
  const name = toJavascritPropertyName(browseName.name!, { ignoreConflictingName: true });
571
620
 
572
621
  if (nodeClass !== NodeClass.Method && nodeClass !== NodeClass.Object && nodeClass !== NodeClass.Variable) {
@@ -577,7 +626,8 @@ export async function extractClassMemberDef(
577
626
  const children = await getChildrenOrFolderElements(session, nodeId);
578
627
 
579
628
  const modellingRule = await getModellingRule(session, nodeId);
580
- const isOptional = modellingRule === "Optional";
629
+ const isOptional = sameInBaseClassIsMandatory(parentDef, browseName) ? false : modellingRule === "Optional";
630
+
581
631
 
582
632
  const typeDefinition = await getTypeDefOrBaseType(session, nodeId);
583
633
 
@@ -602,7 +652,7 @@ export async function extractClassMemberDef(
602
652
  // let's extract the member that are theorically defined in the member
603
653
  const membersReference = await extractAllMembers(session, classDef, cache);
604
654
  // find member exposed by this member
605
- const membersInstance: Classified = await classify(session, children);
655
+ const membersInstance: ClassifiedReferenceDescriptions = await classify(session, children, classDef);
606
656
 
607
657
  // if (name==="powerup") {
608
658
  // dump1(membersReference);
@@ -671,7 +721,9 @@ export async function extractClassMemberDef(
671
721
  childBase,
672
722
  chevrons: null
673
723
  };
674
- classMember.children2 = await _extractLocalMembers(session, classMember, cache);
724
+
725
+ classMember.children2 = await _extractLocalMembers(session, classDef, classMember, cache);
726
+
675
727
  if (nodeClass === NodeClass.Variable) {
676
728
  const extra = await extractVariableExtra(session, nodeId, cache, classMember);
677
729
  classMember = {