occam-verify-cli 0.0.273 → 0.0.274

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.
Files changed (140) hide show
  1. package/.swcrc +5 -0
  2. package/bin/abbreviations.js +4 -2
  3. package/bin/context/{package → release}/fileSystem.js +38 -25
  4. package/bin/fileNames.js +7 -7
  5. package/bin/loadReleaseContexts.js +52 -0
  6. package/bin/main.js +8 -9
  7. package/bin/options.js +2 -2
  8. package/bin/utilities/fileSystem.js +13 -15
  9. package/lib/assertion.js +140 -0
  10. package/lib/axiom.js +90 -0
  11. package/lib/browser.js +27 -0
  12. package/lib/combinator.js +58 -0
  13. package/lib/conclusion.js +140 -0
  14. package/lib/constants.js +42 -0
  15. package/lib/constructor.js +76 -0
  16. package/lib/context/file.js +342 -0
  17. package/lib/context/metaproof.js +232 -0
  18. package/lib/context/proof.js +211 -0
  19. package/lib/context/release.js +303 -0
  20. package/lib/main.js +27 -0
  21. package/lib/metaAssertion.js +200 -0
  22. package/lib/metaSubstitution.js +123 -0
  23. package/lib/permutationsMatrix.js +466136 -0
  24. package/lib/premise.js +168 -0
  25. package/lib/rule.js +139 -0
  26. package/lib/ruleNames.js +46 -0
  27. package/lib/type.js +153 -0
  28. package/lib/utilities/array.js +99 -0
  29. package/lib/utilities/metastatement.js +45 -0
  30. package/lib/utilities/permutations.js +114 -0
  31. package/lib/utilities/query.js +81 -0
  32. package/lib/utilities/string.js +54 -0
  33. package/lib/variable.js +94 -0
  34. package/lib/verify/IndicativeConditional.js +29 -0
  35. package/lib/verify/assertion/type.js +52 -0
  36. package/lib/verify/axiom.js +52 -0
  37. package/lib/verify/conclusion.js +34 -0
  38. package/lib/verify/conditinalInference.js +30 -0
  39. package/lib/verify/declaration/combinator.js +24 -0
  40. package/lib/verify/declaration/constructor.js +24 -0
  41. package/lib/verify/declaration/topLevel.js +51 -0
  42. package/lib/verify/declaration/type.js +24 -0
  43. package/lib/verify/declaration/variable.js +24 -0
  44. package/lib/verify/equality.js +45 -0
  45. package/lib/verify/file.js +39 -0
  46. package/lib/verify/files.js +48 -0
  47. package/lib/verify/label.js +24 -0
  48. package/lib/verify/labels.js +27 -0
  49. package/lib/verify/metaDerivation.js +94 -0
  50. package/lib/verify/metaproof.js +81 -0
  51. package/lib/verify/metastatement/qualified.js +31 -0
  52. package/lib/verify/metastatement/unqualified.js +39 -0
  53. package/lib/verify/premiseOrPremises.js +39 -0
  54. package/lib/verify/release.js +61 -0
  55. package/lib/verify/rule.js +61 -0
  56. package/lib/verify/statement/qualified.js +24 -0
  57. package/lib/verify/statement/unqualified.js +32 -0
  58. package/lib/verify/statement.js +43 -0
  59. package/lib/verify/statementAsCombinator.js +102 -0
  60. package/lib/verify/supposition.js +29 -0
  61. package/lib/verify/term.js +121 -0
  62. package/lib/verify/termAsConstructor.js +126 -0
  63. package/lib/verify/termAsVariable.js +31 -0
  64. package/lib/verify/type.js +45 -0
  65. package/lib/verify/unconditionalInference.js +31 -0
  66. package/lib/verify/variable.js +48 -0
  67. package/package.json +21 -5
  68. package/{bin → src}/assertion.js +2 -4
  69. package/src/axiom.js +49 -0
  70. package/src/browser.js +4 -0
  71. package/{bin → src}/combinator.js +2 -4
  72. package/{bin → src}/conclusion.js +4 -6
  73. package/src/constants.js +9 -0
  74. package/{bin → src}/constructor.js +2 -4
  75. package/{bin → src}/context/file.js +34 -24
  76. package/{bin → src}/context/metaproof.js +13 -3
  77. package/{bin → src}/context/proof.js +13 -3
  78. package/src/context/release.js +219 -0
  79. package/src/main.js +4 -0
  80. package/{bin → src}/metaAssertion.js +4 -6
  81. package/{bin → src}/metaSubstitution.js +2 -4
  82. package/{bin → src}/permutationsMatrix.js +1 -1
  83. package/{bin → src}/premise.js +6 -8
  84. package/{bin → src}/rule.js +24 -15
  85. package/src/ruleNames.js +10 -0
  86. package/{bin → src}/type.js +1 -3
  87. package/{bin → src}/utilities/array.js +19 -24
  88. package/{bin → src}/utilities/metastatement.js +5 -10
  89. package/{bin → src}/utilities/permutations.js +4 -4
  90. package/{bin → src}/utilities/query.js +8 -18
  91. package/{bin → src}/utilities/string.js +4 -10
  92. package/{bin → src}/variable.js +1 -3
  93. package/src/verify/IndicativeConditional.js +20 -0
  94. package/{bin → src}/verify/assertion/type.js +8 -14
  95. package/src/verify/axiom.js +68 -0
  96. package/{bin → src}/verify/conclusion.js +4 -6
  97. package/src/verify/conditinalInference.js +25 -0
  98. package/{bin → src}/verify/declaration/combinator.js +3 -5
  99. package/{bin → src}/verify/declaration/constructor.js +3 -5
  100. package/{bin → src}/verify/declaration/topLevel.js +8 -10
  101. package/{bin → src}/verify/declaration/type.js +3 -5
  102. package/{bin → src}/verify/declaration/variable.js +3 -5
  103. package/{bin → src}/verify/equality.js +4 -6
  104. package/{bin → src}/verify/file.js +9 -15
  105. package/{bin → src}/verify/files.js +5 -7
  106. package/{bin → src}/verify/label.js +3 -9
  107. package/{bin → src}/verify/labels.js +2 -4
  108. package/{bin → src}/verify/metaDerivation.js +24 -18
  109. package/{bin → src}/verify/metaproof.js +6 -7
  110. package/{bin → src}/verify/metastatement/qualified.js +4 -10
  111. package/{bin → src}/verify/metastatement/unqualified.js +5 -11
  112. package/{bin → src}/verify/premiseOrPremises.js +9 -10
  113. package/src/verify/release.js +70 -0
  114. package/{bin → src}/verify/rule.js +13 -21
  115. package/{bin → src}/verify/statement/qualified.js +3 -5
  116. package/{bin → src}/verify/statement/unqualified.js +3 -5
  117. package/{bin → src}/verify/statement.js +7 -13
  118. package/{bin → src}/verify/statementAsCombinator.js +8 -14
  119. package/{bin → src}/verify/supposition.js +4 -6
  120. package/{bin → src}/verify/term.js +7 -13
  121. package/{bin → src}/verify/termAsConstructor.js +13 -19
  122. package/{bin → src}/verify/termAsVariable.js +3 -9
  123. package/{bin → src}/verify/type.js +7 -13
  124. package/{bin → src}/verify/unconditionalInference.js +4 -6
  125. package/{bin → src}/verify/variable.js +6 -12
  126. package/bin/axiom.js +0 -52
  127. package/bin/consequent.js +0 -19
  128. package/bin/constants.js +0 -19
  129. package/bin/context/package.js +0 -221
  130. package/bin/loadPackageContexts.js +0 -53
  131. package/bin/permutations.js +0 -3
  132. package/bin/ruleNames.js +0 -23
  133. package/bin/verify/axiom/IndicativeConditional.js +0 -54
  134. package/bin/verify/axiom/unqualifiedStatement.js +0 -40
  135. package/bin/verify/axiom.js +0 -37
  136. package/bin/verify/conditinalInference.js +0 -36
  137. package/bin/verify/consequent.js +0 -32
  138. package/bin/verify/metaSupposition.js +0 -24
  139. package/bin/verify/package.js +0 -81
  140. package/index.js +0 -9
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyMetaDerivation;
9
+ }
10
+ });
11
+ var _metaAssertion = /*#__PURE__*/ _interopRequireDefault(require("../metaAssertion"));
12
+ var _metaproof = /*#__PURE__*/ _interopRequireDefault(require("../context/metaproof"));
13
+ var _qualified = /*#__PURE__*/ _interopRequireDefault(require("../verify/metastatement/qualified"));
14
+ var _unqualified = /*#__PURE__*/ _interopRequireDefault(require("../verify/metastatement/unqualified"));
15
+ var _array = require("../utilities/array");
16
+ var _query = require("../utilities/query");
17
+ var _ruleNames = require("../ruleNames");
18
+ function _interopRequireDefault(obj) {
19
+ return obj && obj.__esModule ? obj : {
20
+ default: obj
21
+ };
22
+ }
23
+ var metaDerivationNodeQuery = (0, _query.nodeQuery)("/metaSubproof/metaDerivation!"), metaDerivationChildNodesQuery = (0, _query.nodesQuery)("/metaDerivation/*"), qualifiedMetastatementNodeQuery = (0, _query.nodeQuery)("/qualifiedMetastatement"), unqualifiedMetastatementNodeQuery = (0, _query.nodeQuery)("/unqualifiedMetastatement!"), qualifiedOrUnqualifiedMetastatementNodesQuery = (0, _query.nodesQuery)("/metaSubproof/qualifiedMetastatement|unqualifiedMetastatement");
24
+ function verifyMetaDerivation(metaDerivationNode, context) {
25
+ var derived = true;
26
+ context.setDerived(derived);
27
+ var metaDerivationChildNodes = metaDerivationChildNodesQuery(metaDerivationNode), metaDerivationChildNodesVerified = metaDerivationChildNodes.every(function(metaDerivationChildNode) {
28
+ var metaDerivationChildNodeVerified;
29
+ var ruleName = metaDerivationChildNode.getRuleName();
30
+ switch(ruleName){
31
+ case _ruleNames.META_SUBPROOF_RULE_NAME:
32
+ {
33
+ var metaSubproofNode = metaDerivationChildNode, metaSubproofVerified = verifyMetaSubproof(metaSubproofNode, context);
34
+ if (metaSubproofVerified) {
35
+ var metaAssertion = _metaAssertion.default.fromMetaSubproofNode(metaSubproofNode);
36
+ context.addMetaAssertion(metaAssertion);
37
+ metaDerivationChildNodeVerified = true;
38
+ }
39
+ break;
40
+ }
41
+ case _ruleNames.QUALIFIED_METASTATEMENT_RULE_NAME:
42
+ {
43
+ var qualifiedMetastatementNode = metaDerivationChildNode, qualifiedMetastatementVerified = (0, _qualified.default)(qualifiedMetastatementNode, context);
44
+ if (qualifiedMetastatementVerified) {
45
+ var metaAssertion1 = _metaAssertion.default.fromQualifiedMetastatementNode(qualifiedMetastatementNode);
46
+ context.addMetaAssertion(metaAssertion1);
47
+ metaDerivationChildNodeVerified = qualifiedMetastatementVerified; ///
48
+ }
49
+ break;
50
+ }
51
+ case _ruleNames.UNQUALIFIED_METASTATEMENT_RULE_NAME:
52
+ {
53
+ var unqualifiedMetastatementNode = metaDerivationChildNode, unqualifiedMetastatementVerified = (0, _unqualified.default)(unqualifiedMetastatementNode, context);
54
+ if (unqualifiedMetastatementVerified) {
55
+ var metaAssertion2 = _metaAssertion.default.fromUnqualifiedMetastatementNode(unqualifiedMetastatementNode);
56
+ context.addMetaAssertion(metaAssertion2);
57
+ metaDerivationChildNodeVerified = true;
58
+ }
59
+ break;
60
+ }
61
+ }
62
+ return metaDerivationChildNodeVerified;
63
+ }), metaDerivationVerified = metaDerivationChildNodesVerified; ///
64
+ return metaDerivationVerified;
65
+ }
66
+ function verifyMetaSubproof(metaSubproofNode, context) {
67
+ var metaSubproofVerified = false;
68
+ var metaproofContext = _metaproof.default.fromContext(context);
69
+ context = metaproofContext; ///
70
+ var qualifiedOrUnqualifiedMetastatementNodes = qualifiedOrUnqualifiedMetastatementNodesQuery(metaSubproofNode), firstQualifiedOrUnqualifiedMetastatementNode = (0, _array.first)(qualifiedOrUnqualifiedMetastatementNodes), unqualifiedMetastatementNode = firstQualifiedOrUnqualifiedMetastatementNode, unqualifiedMetastatementVerified = (0, _unqualified.default)(unqualifiedMetastatementNode, context);
71
+ if (unqualifiedMetastatementVerified) {
72
+ var metaAssertion = _metaAssertion.default.fromUnqualifiedMetastatementNode(unqualifiedMetastatementNode);
73
+ context.addMetaAssertion(metaAssertion);
74
+ var metaDerivationVerified = true;
75
+ var metaDerivationNode = metaDerivationNodeQuery(metaSubproofNode);
76
+ if (metaDerivationNode !== null) {
77
+ metaDerivationVerified = verifyMetaDerivation(metaDerivationNode, context);
78
+ }
79
+ if (metaDerivationVerified) {
80
+ var secondQualifiedOrUnqualifiedMetastatementNode = (0, _array.second)(qualifiedOrUnqualifiedMetastatementNodes), qualifiedOrUnqualifiedMetastatementNode = secondQualifiedOrUnqualifiedMetastatementNode, qualifiedMetastatementNode = qualifiedMetastatementNodeQuery(qualifiedOrUnqualifiedMetastatementNode), unqualifiedMetastatementNode1 = unqualifiedMetastatementNodeQuery(qualifiedOrUnqualifiedMetastatementNode);
81
+ if (qualifiedMetastatementNode !== null) {
82
+ var qualifiedMetastatementVerified = (0, _qualified.default)(qualifiedMetastatementNode, context);
83
+ metaSubproofVerified = qualifiedMetastatementVerified; ///
84
+ }
85
+ if (unqualifiedMetastatementNode1 !== null) {
86
+ var unqualifiedMetastatementVerified1 = (0, _unqualified.default)(unqualifiedMetastatementNode1, context);
87
+ metaSubproofVerified = unqualifiedMetastatementVerified1; ///
88
+ }
89
+ }
90
+ }
91
+ return metaSubproofVerified;
92
+ }
93
+
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YURlcml2YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBNZXRhQXNzZXJ0aW9uIGZyb20gXCIuLi9tZXRhQXNzZXJ0aW9uXCI7XG5pbXBvcnQgTWV0YXByb29mQ29udGV4dCBmcm9tIFwiLi4vY29udGV4dC9tZXRhcHJvb2ZcIjtcbmltcG9ydCB2ZXJpZnlRdWFsaWZpZWRNZXRhc3RhdGVtZW50IGZyb20gXCIuLi92ZXJpZnkvbWV0YXN0YXRlbWVudC9xdWFsaWZpZWRcIjtcbmltcG9ydCB2ZXJpZnlVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhc3RhdGVtZW50L3VucXVhbGlmaWVkXCI7XG5cbmltcG9ydCB7IGZpcnN0LCBzZWNvbmQgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBNRVRBX1NVQlBST09GX1JVTEVfTkFNRSwgUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FLCBVTlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi9ydWxlTmFtZXNcIjtcblxuY29uc3QgbWV0YURlcml2YXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YVN1YnByb29mL21ldGFEZXJpdmF0aW9uIVwiKSxcbiAgICAgIG1ldGFEZXJpdmF0aW9uQ2hpbGROb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9tZXRhRGVyaXZhdGlvbi8qXCIpLFxuICAgICAgcXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9xdWFsaWZpZWRNZXRhc3RhdGVtZW50XCIpLFxuICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3VucXVhbGlmaWVkTWV0YXN0YXRlbWVudCFcIiksXG4gICAgICBxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL21ldGFTdWJwcm9vZi9xdWFsaWZpZWRNZXRhc3RhdGVtZW50fHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFwiKVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlNZXRhRGVyaXZhdGlvbihtZXRhRGVyaXZhdGlvbk5vZGUsIGNvbnRleHQpIHtcbiAgY29uc3QgZGVyaXZlZCA9IHRydWU7XG5cbiAgY29udGV4dC5zZXREZXJpdmVkKGRlcml2ZWQpO1xuXG4gIGNvbnN0IG1ldGFEZXJpdmF0aW9uQ2hpbGROb2RlcyA9IG1ldGFEZXJpdmF0aW9uQ2hpbGROb2Rlc1F1ZXJ5KG1ldGFEZXJpdmF0aW9uTm9kZSksXG4gICAgICAgIG1ldGFEZXJpdmF0aW9uQ2hpbGROb2Rlc1ZlcmlmaWVkID0gbWV0YURlcml2YXRpb25DaGlsZE5vZGVzLmV2ZXJ5KChtZXRhRGVyaXZhdGlvbkNoaWxkTm9kZSkgPT4ge1xuICAgICAgICAgIGxldCBtZXRhRGVyaXZhdGlvbkNoaWxkTm9kZVZlcmlmaWVkO1xuXG4gICAgICAgICAgY29uc3QgcnVsZU5hbWUgPSBtZXRhRGVyaXZhdGlvbkNoaWxkTm9kZS5nZXRSdWxlTmFtZSgpO1xuXG4gICAgICAgICAgc3dpdGNoIChydWxlTmFtZSkge1xuICAgICAgICAgICAgY2FzZSBNRVRBX1NVQlBST09GX1JVTEVfTkFNRToge1xuICAgICAgICAgICAgICBjb25zdCBtZXRhU3VicHJvb2ZOb2RlID0gbWV0YURlcml2YXRpb25DaGlsZE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgICAgICAgbWV0YVN1YnByb29mVmVyaWZpZWQgPSB2ZXJpZnlNZXRhU3VicHJvb2YobWV0YVN1YnByb29mTm9kZSwgY29udGV4dCk7XG5cbiAgICAgICAgICAgICAgaWYgKG1ldGFTdWJwcm9vZlZlcmlmaWVkKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWV0YUFzc2VydGlvbiA9IE1ldGFBc3NlcnRpb24uZnJvbU1ldGFTdWJwcm9vZk5vZGUobWV0YVN1YnByb29mTm9kZSk7XG5cbiAgICAgICAgICAgICAgICBjb250ZXh0LmFkZE1ldGFBc3NlcnRpb24obWV0YUFzc2VydGlvbik7XG5cbiAgICAgICAgICAgICAgICBtZXRhRGVyaXZhdGlvbkNoaWxkTm9kZVZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjYXNlIFFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICAgICAgICBjb25zdCBxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFEZXJpdmF0aW9uQ2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICAgICAgICAgIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnQocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgICAgIGlmIChxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBtZXRhQXNzZXJ0aW9uID0gTWV0YUFzc2VydGlvbi5mcm9tUXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgICAgICAgICAgICAgY29udGV4dC5hZGRNZXRhQXNzZXJ0aW9uKG1ldGFBc3NlcnRpb24pO1xuXG4gICAgICAgICAgICAgICAgbWV0YURlcml2YXRpb25DaGlsZE5vZGVWZXJpZmllZCA9IHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZDsgLy8vXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY2FzZSBVTlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRToge1xuICAgICAgICAgICAgICBjb25zdCB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YURlcml2YXRpb25DaGlsZE5vZGUsICAvLy9cbiAgICAgICAgICAgICAgICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgY29udGV4dCk7XG5cbiAgICAgICAgICAgICAgaWYgKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWV0YUFzc2VydGlvbiA9IE1ldGFBc3NlcnRpb24uZnJvbVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgICAgICAgICAgICBjb250ZXh0LmFkZE1ldGFBc3NlcnRpb24obWV0YUFzc2VydGlvbik7XG5cbiAgICAgICAgICAgICAgICBtZXRhRGVyaXZhdGlvbkNoaWxkTm9kZVZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBtZXRhRGVyaXZhdGlvbkNoaWxkTm9kZVZlcmlmaWVkO1xuICAgICAgICB9KSxcbiAgICAgICAgbWV0YURlcml2YXRpb25WZXJpZmllZCA9IG1ldGFEZXJpdmF0aW9uQ2hpbGROb2Rlc1ZlcmlmaWVkOyAgLy8vXG5cbiAgcmV0dXJuIG1ldGFEZXJpdmF0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeU1ldGFTdWJwcm9vZihtZXRhU3VicHJvb2ZOb2RlLCBjb250ZXh0KSB7XG4gIGxldCBtZXRhU3VicHJvb2ZWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGFwcm9vZkNvbnRleHQgPSBNZXRhcHJvb2ZDb250ZXh0LmZyb21Db250ZXh0KGNvbnRleHQpO1xuXG4gIGNvbnRleHQgPSBtZXRhcHJvb2ZDb250ZXh0OyAvLy9cblxuICBjb25zdCBxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVzID0gcXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2Rlc1F1ZXJ5KG1ldGFTdWJwcm9vZk5vZGUpLFxuICAgICAgICBmaXJzdFF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSA9IGZpcnN0KHF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZXMpLFxuICAgICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlID0gZmlyc3RRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgY29udGV4dCk7XG5cbiAgaWYgKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgY29uc3QgbWV0YUFzc2VydGlvbiA9IE1ldGFBc3NlcnRpb24uZnJvbVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb250ZXh0LmFkZE1ldGFBc3NlcnRpb24obWV0YUFzc2VydGlvbik7XG5cbiAgICBsZXQgbWV0YURlcml2YXRpb25WZXJpZmllZCA9IHRydWU7XG5cbiAgICBjb25zdCBtZXRhRGVyaXZhdGlvbk5vZGUgPSBtZXRhRGVyaXZhdGlvbk5vZGVRdWVyeShtZXRhU3VicHJvb2ZOb2RlKTtcblxuICAgIGlmIChtZXRhRGVyaXZhdGlvbk5vZGUgIT09IG51bGwpIHtcbiAgICAgIG1ldGFEZXJpdmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlNZXRhRGVyaXZhdGlvbihtZXRhRGVyaXZhdGlvbk5vZGUsIGNvbnRleHQpO1xuICAgIH1cblxuICAgIGlmIChtZXRhRGVyaXZhdGlvblZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBzZWNvbmRRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSBzZWNvbmQocXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlcyksXG4gICAgICAgICAgICBxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSBzZWNvbmRRdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICAgIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlID0gcXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSA9IHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRPclVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgICBpZiAocXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudChxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgY29udGV4dCk7XG5cbiAgICAgICAgbWV0YVN1YnByb29mVmVyaWZpZWQgPSBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQ7ICAvLy9cbiAgICAgIH1cblxuICAgICAgaWYgKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgY29udGV4dCk7XG5cbiAgICAgICAgbWV0YVN1YnByb29mVmVyaWZpZWQgPSB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZDsgIC8vL1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtZXRhU3VicHJvb2ZWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlNZXRhRGVyaXZhdGlvbiIsIm1ldGFEZXJpdmF0aW9uTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YURlcml2YXRpb25DaGlsZE5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwicXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVRdWVyeSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVRdWVyeSIsInF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZXNRdWVyeSIsIm1ldGFEZXJpdmF0aW9uTm9kZSIsImNvbnRleHQiLCJkZXJpdmVkIiwic2V0RGVyaXZlZCIsIm1ldGFEZXJpdmF0aW9uQ2hpbGROb2RlcyIsIm1ldGFEZXJpdmF0aW9uQ2hpbGROb2Rlc1ZlcmlmaWVkIiwiZXZlcnkiLCJtZXRhRGVyaXZhdGlvbkNoaWxkTm9kZSIsIm1ldGFEZXJpdmF0aW9uQ2hpbGROb2RlVmVyaWZpZWQiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiTUVUQV9TVUJQUk9PRl9SVUxFX05BTUUiLCJtZXRhU3VicHJvb2ZOb2RlIiwibWV0YVN1YnByb29mVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhU3VicHJvb2YiLCJtZXRhQXNzZXJ0aW9uIiwiTWV0YUFzc2VydGlvbiIsImZyb21NZXRhU3VicHJvb2ZOb2RlIiwiYWRkTWV0YUFzc2VydGlvbiIsIlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsInF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIiwicXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudCIsImZyb21RdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsIlVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5VW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50IiwiZnJvbVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhRGVyaXZhdGlvblZlcmlmaWVkIiwibWV0YXByb29mQ29udGV4dCIsIk1ldGFwcm9vZkNvbnRleHQiLCJmcm9tQ29udGV4dCIsInF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZXMiLCJmaXJzdFF1YWxpZmllZE9yVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsImZpcnN0Iiwic2Vjb25kUXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIiwic2Vjb25kIiwicXVhbGlmaWVkT3JVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFpQkE7OztlQUF3QkE7OztrRUFmRTs4REFDRzs4REFDWTtnRUFDRTtxQkFFYjtxQkFDUTt5QkFDMEU7Ozs7OztBQUVoSCxJQUFNQywwQkFBMEJDLElBQUFBLGdCQUFTLEVBQUMsa0NBQ3BDQyxnQ0FBZ0NDLElBQUFBLGlCQUFVLEVBQUMsc0JBQzNDQyxrQ0FBa0NILElBQUFBLGdCQUFTLEVBQUMsNEJBQzVDSSxvQ0FBb0NKLElBQUFBLGdCQUFTLEVBQUMsK0JBQzlDSyxnREFBZ0RILElBQUFBLGlCQUFVLEVBQUM7QUFFbEQsU0FBU0oscUJBQXFCUSxrQkFBa0IsRUFBRUMsT0FBTyxFQUFFO0lBQ3hFLElBQU1DLFVBQVUsSUFBSTtJQUVwQkQsUUFBUUUsVUFBVSxDQUFDRDtJQUVuQixJQUFNRSwyQkFBMkJULDhCQUE4QksscUJBQ3pESyxtQ0FBbUNELHlCQUF5QkUsS0FBSyxDQUFDLFNBQUNDLHlCQUE0QjtRQUM3RixJQUFJQztRQUVKLElBQU1DLFdBQVdGLHdCQUF3QkcsV0FBVztRQUVwRCxPQUFRRDtZQUNOLEtBQUtFLGtDQUF1QjtnQkFBRTtvQkFDNUIsSUFBTUMsbUJBQW1CTCx5QkFDbkJNLHVCQUF1QkMsbUJBQW1CRixrQkFBa0JYO29CQUVsRSxJQUFJWSxzQkFBc0I7d0JBQ3hCLElBQU1FLGdCQUFnQkMsc0JBQWEsQ0FBQ0Msb0JBQW9CLENBQUNMO3dCQUV6RFgsUUFBUWlCLGdCQUFnQixDQUFDSDt3QkFFekJQLGtDQUFrQyxJQUFJO29CQUN4QyxDQUFDO29CQUVELEtBQU07Z0JBQ1I7WUFFQSxLQUFLVyw0Q0FBaUM7Z0JBQUU7b0JBQ3RDLElBQU1DLDZCQUE2QmIseUJBQzdCYyxpQ0FBaUNDLElBQUFBLGtCQUE0QixFQUFDRiw0QkFBNEJuQjtvQkFFaEcsSUFBSW9CLGdDQUFnQzt3QkFDbEMsSUFBTU4saUJBQWdCQyxzQkFBYSxDQUFDTyw4QkFBOEIsQ0FBQ0g7d0JBRW5FbkIsUUFBUWlCLGdCQUFnQixDQUFDSDt3QkFFekJQLGtDQUFrQ2EsZ0NBQWdDLEdBQUc7b0JBQ3ZFLENBQUM7b0JBRUQsS0FBTTtnQkFDUjtZQUVBLEtBQUtHLDhDQUFtQztnQkFBRTtvQkFDeEMsSUFBTUMsK0JBQStCbEIseUJBQy9CbUIsbUNBQW1DQyxJQUFBQSxvQkFBOEIsRUFBQ0YsOEJBQThCeEI7b0JBRXRHLElBQUl5QixrQ0FBa0M7d0JBQ3BDLElBQU1YLGlCQUFnQkMsc0JBQWEsQ0FBQ1ksZ0NBQWdDLENBQUNIO3dCQUVyRXhCLFFBQVFpQixnQkFBZ0IsQ0FBQ0g7d0JBRXpCUCxrQ0FBa0MsSUFBSTtvQkFDeEMsQ0FBQztvQkFFRCxLQUFNO2dCQUNSO1FBQ0Y7UUFFQSxPQUFPQTtJQUNULElBQ0FxQix5QkFBeUJ4QixrQ0FBbUMsR0FBRztJQUVyRSxPQUFPd0I7QUFDVDtBQUVBLFNBQVNmLG1CQUFtQkYsZ0JBQWdCLEVBQUVYLE9BQU8sRUFBRTtJQUNyRCxJQUFJWSx1QkFBdUIsS0FBSztJQUVoQyxJQUFNaUIsbUJBQW1CQyxrQkFBZ0IsQ0FBQ0MsV0FBVyxDQUFDL0I7SUFFdERBLFVBQVU2QixrQkFBa0IsR0FBRztJQUUvQixJQUFNRywyQ0FBMkNsQyw4Q0FBOENhLG1CQUN6RnNCLCtDQUErQ0MsSUFBQUEsWUFBSyxFQUFDRiwyQ0FDckRSLCtCQUErQlMsOENBQy9CUixtQ0FBbUNDLElBQUFBLG9CQUE4QixFQUFDRiw4QkFBOEJ4QjtJQUV0RyxJQUFJeUIsa0NBQWtDO1FBQ3BDLElBQU1YLGdCQUFnQkMsc0JBQWEsQ0FBQ1ksZ0NBQWdDLENBQUNIO1FBRXJFeEIsUUFBUWlCLGdCQUFnQixDQUFDSDtRQUV6QixJQUFJYyx5QkFBeUIsSUFBSTtRQUVqQyxJQUFNN0IscUJBQXFCUCx3QkFBd0JtQjtRQUVuRCxJQUFJWix1QkFBdUIsSUFBSSxFQUFFO1lBQy9CNkIseUJBQXlCckMscUJBQXFCUSxvQkFBb0JDO1FBQ3BFLENBQUM7UUFFRCxJQUFJNEIsd0JBQXdCO1lBQzFCLElBQU1PLGdEQUFnREMsSUFBQUEsYUFBTSxFQUFDSiwyQ0FDdkRLLDBDQUEwQ0YsK0NBQzFDaEIsNkJBQTZCdkIsZ0NBQWdDeUMsMENBQzdEYixnQ0FBK0IzQixrQ0FBa0N3QztZQUV2RSxJQUFJbEIsK0JBQStCLElBQUksRUFBRTtnQkFDdkMsSUFBTUMsaUNBQWlDQyxJQUFBQSxrQkFBNEIsRUFBQ0YsNEJBQTRCbkI7Z0JBRWhHWSx1QkFBdUJRLGdDQUFpQyxHQUFHO1lBQzdELENBQUM7WUFFRCxJQUFJSSxrQ0FBaUMsSUFBSSxFQUFFO2dCQUN6QyxJQUFNQyxvQ0FBbUNDLElBQUFBLG9CQUE4QixFQUFDRiwrQkFBOEJ4QjtnQkFFdEdZLHVCQUF1QmEsbUNBQW1DLEdBQUc7WUFDL0QsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBT2I7QUFDVCJ9
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyMetaproof;
9
+ }
10
+ });
11
+ var _metaDerivation = /*#__PURE__*/ _interopRequireDefault(require("../verify/metaDerivation"));
12
+ var _qualified = /*#__PURE__*/ _interopRequireDefault(require("../verify/metastatement/qualified"));
13
+ var _query = require("../utilities/query");
14
+ function _interopRequireDefault(obj) {
15
+ return obj && obj.__esModule ? obj : {
16
+ default: obj
17
+ };
18
+ }
19
+ var metaDerivationNodeQuery = (0, _query.nodeQuery)("/metaproof/metaDerivation!"), qualifiedStatementNodeQuery = (0, _query.nodeQuery)("/metaproof/qualifiedMetastatement!"), metaProofMetastatementNodeQuery = (0, _query.nodeQuery)("/metaproof/qualifiedMetastatement/metastatement!");
20
+ function verifyMetaproof(metaproofNode, conclusion, context) {
21
+ var metaproofVerified = false;
22
+ var metaDerivationNode = metaDerivationNodeQuery(metaproofNode);
23
+ var metaDerivationVerified = true;
24
+ if (metaDerivationNode !== null) {
25
+ metaDerivationVerified = (0, _metaDerivation.default)(metaDerivationNode, context);
26
+ }
27
+ if (metaDerivationVerified) {
28
+ var qualifiedMetastatementNode = qualifiedStatementNodeQuery(metaproofNode), qualifiedMetastatementVerified = (0, _qualified.default)(qualifiedMetastatementNode, context);
29
+ if (qualifiedMetastatementVerified) {
30
+ var metastatementNode = conclusion.getMetastatementNode(), metaProofMetastatementNode = metaProofMetastatementNodeQuery(metaproofNode), metaProofMetastatementNodeMatches = matchMetaProofMetastatementNode(metaProofMetastatementNode, metastatementNode);
31
+ metaproofVerified = metaProofMetastatementNodeMatches; ///
32
+ }
33
+ }
34
+ return metaproofVerified;
35
+ }
36
+ function matchMetaProofMetastatementNode(metaProofMetastatementNode, metastatementNode) {
37
+ var metaProofNonTerminalNode = metaProofMetastatementNode, nonTerminalNode = metastatementNode, metaProofNonTerminalNodeMatches = matchMetaProofNonTerminalNode(metaProofNonTerminalNode, nonTerminalNode), metaProofMetastatementNodeMatches = metaProofNonTerminalNodeMatches; ///
38
+ return metaProofMetastatementNodeMatches;
39
+ }
40
+ function matchMetaProofNode(metaProofNode, node) {
41
+ var metaProofNodeMatches = false;
42
+ var nodeTerminalNode = node.isTerminalNode(), ruleNodeTerminalNode = metaProofNode.isTerminalNode();
43
+ if (nodeTerminalNode === ruleNodeTerminalNode) {
44
+ if (nodeTerminalNode) {
45
+ var terminalNode = node, metaProofTerminalNode = metaProofNode, metaProofTerminalNodeMatches = matchMetaProofTerminalNode(metaProofTerminalNode, terminalNode);
46
+ metaProofNodeMatches = metaProofTerminalNodeMatches; ///
47
+ } else {
48
+ var nonTerminalNode = node, metaProofNonTerminalNode = metaProofNode, metaProofNonTerminalNodeMatches = matchMetaProofNonTerminalNode(metaProofNonTerminalNode, nonTerminalNode);
49
+ metaProofNodeMatches = metaProofNonTerminalNodeMatches; ///
50
+ }
51
+ }
52
+ return metaProofNodeMatches;
53
+ }
54
+ function matchMetaProofNodes(metaProofNodes, nodes) {
55
+ var metaProofNodesMatches = false;
56
+ var nodesLength = nodes.length, metaProofNodesLength = metaProofNodes.length;
57
+ if (nodesLength === metaProofNodesLength) {
58
+ metaProofNodesMatches = nodes.every(function(node, index) {
59
+ var metaProofNode = metaProofNodes[index], metaProofNodeMatches = matchMetaProofNode(metaProofNode, node);
60
+ if (metaProofNodeMatches) {
61
+ return true;
62
+ }
63
+ });
64
+ }
65
+ return metaProofNodesMatches;
66
+ }
67
+ function matchMetaProofTerminalNode(metaProofTerminalNode, terminalNode) {
68
+ var matches = metaProofTerminalNode.match(terminalNode), metaProofTerminalNodeMatches = matches; ///
69
+ return metaProofTerminalNodeMatches;
70
+ }
71
+ function matchMetaProofNonTerminalNode(metaProofNonTerminalNode, nonTerminalNode) {
72
+ var metaProofNonTerminalNodeMatches = false;
73
+ var ruleName = nonTerminalNode.getRuleName(), metaProofRuleName = metaProofNonTerminalNode.getRuleName(); ///
74
+ if (ruleName === metaProofRuleName) {
75
+ var childNodes = nonTerminalNode.getChildNodes(), metaProofChildNodes = metaProofNonTerminalNode.getChildNodes(), nodes = childNodes, metaProofNodes = metaProofChildNodes, metaProofNodesMatches = matchMetaProofNodes(metaProofNodes, nodes);
76
+ metaProofNonTerminalNodeMatches = metaProofNodesMatches; ///
77
+ }
78
+ return metaProofNonTerminalNodeMatches;
79
+ }
80
+
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5TWV0YURlcml2YXRpb24gZnJvbSBcIi4uL3ZlcmlmeS9tZXRhRGVyaXZhdGlvblwiO1xuaW1wb3J0IHZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnQgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhc3RhdGVtZW50L3F1YWxpZmllZFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IG1ldGFEZXJpdmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGFwcm9vZi9tZXRhRGVyaXZhdGlvbiFcIiksXG4gICAgICBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXByb29mL3F1YWxpZmllZE1ldGFzdGF0ZW1lbnQhXCIpLFxuICAgICAgbWV0YVByb29mTWV0YXN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhcHJvb2YvcXVhbGlmaWVkTWV0YXN0YXRlbWVudC9tZXRhc3RhdGVtZW50IVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5TWV0YXByb29mKG1ldGFwcm9vZk5vZGUsIGNvbmNsdXNpb24sIGNvbnRleHQpIHtcbiAgbGV0IG1ldGFwcm9vZlZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YURlcml2YXRpb25Ob2RlID0gbWV0YURlcml2YXRpb25Ob2RlUXVlcnkobWV0YXByb29mTm9kZSk7XG5cbiAgbGV0IG1ldGFEZXJpdmF0aW9uVmVyaWZpZWQgPSB0cnVlO1xuXG4gIGlmIChtZXRhRGVyaXZhdGlvbk5vZGUgIT09IG51bGwpIHtcbiAgICBtZXRhRGVyaXZhdGlvblZlcmlmaWVkID0gdmVyaWZ5TWV0YURlcml2YXRpb24obWV0YURlcml2YXRpb25Ob2RlLCBjb250ZXh0KTtcbiAgfVxuXG4gIGlmIChtZXRhRGVyaXZhdGlvblZlcmlmaWVkKSB7XG4gICAgY29uc3QgcXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkobWV0YXByb29mTm9kZSksXG4gICAgICAgICAgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudChxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgY29udGV4dCk7XG5cbiAgICBpZiAocXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IGNvbmNsdXNpb24uZ2V0TWV0YXN0YXRlbWVudE5vZGUoKSxcbiAgICAgICAgICAgIG1ldGFQcm9vZk1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YVByb29mTWV0YXN0YXRlbWVudE5vZGVRdWVyeShtZXRhcHJvb2ZOb2RlKSxcbiAgICAgICAgICAgIG1ldGFQcm9vZk1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IG1hdGNoTWV0YVByb29mTWV0YXN0YXRlbWVudE5vZGUobWV0YVByb29mTWV0YXN0YXRlbWVudE5vZGUsIG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgbWV0YXByb29mVmVyaWZpZWQgPSBtZXRhUHJvb2ZNZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXM7ICAvLy9cbiAgICB9XG4gIH1cblxuICByZXR1cm4gbWV0YXByb29mVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIG1hdGNoTWV0YVByb29mTWV0YXN0YXRlbWVudE5vZGUobWV0YVByb29mTWV0YXN0YXRlbWVudE5vZGUsIG1ldGFzdGF0ZW1lbnROb2RlKSB7XG4gIGNvbnN0IG1ldGFQcm9vZk5vblRlcm1pbmFsTm9kZSA9IG1ldGFQcm9vZk1ldGFzdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgIG5vblRlcm1pbmFsTm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgIG1ldGFQcm9vZk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaE1ldGFQcm9vZk5vblRlcm1pbmFsTm9kZShtZXRhUHJvb2ZOb25UZXJtaW5hbE5vZGUsIG5vblRlcm1pbmFsTm9kZSksXG4gICAgICAgIG1ldGFQcm9vZk1ldGFzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IG1ldGFQcm9vZk5vblRlcm1pbmFsTm9kZU1hdGNoZXM7ICAvLy9cblxuICByZXR1cm4gbWV0YVByb29mTWV0YXN0YXRlbWVudE5vZGVNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaE1ldGFQcm9vZk5vZGUobWV0YVByb29mTm9kZSwgbm9kZSkge1xuICBsZXQgbWV0YVByb29mTm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICBydWxlTm9kZVRlcm1pbmFsTm9kZSA9IG1ldGFQcm9vZk5vZGUuaXNUZXJtaW5hbE5vZGUoKTtcblxuICBpZiAobm9kZVRlcm1pbmFsTm9kZSA9PT0gcnVsZU5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICBpZiAobm9kZVRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3QgdGVybWluYWxOb2RlID0gbm9kZSwgIC8vL1xuICAgICAgICAgICAgbWV0YVByb29mVGVybWluYWxOb2RlID0gbWV0YVByb29mTm9kZSwgIC8vL1xuICAgICAgICAgICAgbWV0YVByb29mVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoTWV0YVByb29mVGVybWluYWxOb2RlKG1ldGFQcm9vZlRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlKTtcblxuICAgICAgbWV0YVByb29mTm9kZU1hdGNoZXMgPSBtZXRhUHJvb2ZUZXJtaW5hbE5vZGVNYXRjaGVzOyAgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vZGUsIC8vL1xuICAgICAgICAgICAgbWV0YVByb29mTm9uVGVybWluYWxOb2RlID0gbWV0YVByb29mTm9kZSwgIC8vL1xuICAgICAgICAgICAgbWV0YVByb29mTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoTWV0YVByb29mTm9uVGVybWluYWxOb2RlKG1ldGFQcm9vZk5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlKTtcblxuICAgICAgbWV0YVByb29mTm9kZU1hdGNoZXMgPSBtZXRhUHJvb2ZOb25UZXJtaW5hbE5vZGVNYXRjaGVzOyAvLy9cbiAgICB9XG4gIH1cblxuICByZXR1cm4gbWV0YVByb29mTm9kZU1hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoTWV0YVByb29mTm9kZXMobWV0YVByb29mTm9kZXMsIG5vZGVzKSB7XG4gIGxldCBtZXRhUHJvb2ZOb2Rlc01hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBub2Rlc0xlbmd0aCA9IG5vZGVzLmxlbmd0aCxcbiAgICAgICAgbWV0YVByb29mTm9kZXNMZW5ndGggPSBtZXRhUHJvb2ZOb2Rlcy5sZW5ndGg7XG5cbiAgaWYgKG5vZGVzTGVuZ3RoID09PSBtZXRhUHJvb2ZOb2Rlc0xlbmd0aCkge1xuICAgIG1ldGFQcm9vZk5vZGVzTWF0Y2hlcyA9IG5vZGVzLmV2ZXJ5KChub2RlLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgbWV0YVByb29mTm9kZSA9IG1ldGFQcm9vZk5vZGVzW2luZGV4XSxcbiAgICAgICAgICAgIG1ldGFQcm9vZk5vZGVNYXRjaGVzID0gbWF0Y2hNZXRhUHJvb2ZOb2RlKG1ldGFQcm9vZk5vZGUsIG5vZGUpO1xuXG4gICAgICBpZiAobWV0YVByb29mTm9kZU1hdGNoZXMpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBtZXRhUHJvb2ZOb2Rlc01hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoTWV0YVByb29mVGVybWluYWxOb2RlKG1ldGFQcm9vZlRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlKSB7XG4gIGNvbnN0IG1hdGNoZXMgPSBtZXRhUHJvb2ZUZXJtaW5hbE5vZGUubWF0Y2godGVybWluYWxOb2RlKSxcbiAgICAgICAgbWV0YVByb29mVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoZXM7ICAvLy9cblxuICByZXR1cm4gbWV0YVByb29mVGVybWluYWxOb2RlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hNZXRhUHJvb2ZOb25UZXJtaW5hbE5vZGUobWV0YVByb29mTm9uVGVybWluYWxOb2RlLCBub25UZXJtaW5hbE5vZGUpIHtcbiAgbGV0IG1ldGFQcm9vZk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpLFxuICAgICAgICBtZXRhUHJvb2ZSdWxlTmFtZSA9IG1ldGFQcm9vZk5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpOyAvLy9cblxuICBpZiAocnVsZU5hbWUgPT09IG1ldGFQcm9vZlJ1bGVOYW1lKSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgbWV0YVByb29mQ2hpbGROb2RlcyA9IG1ldGFQcm9vZk5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgbm9kZXMgPSBjaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICBtZXRhUHJvb2ZOb2RlcyA9IG1ldGFQcm9vZkNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgIG1ldGFQcm9vZk5vZGVzTWF0Y2hlcyA9IG1hdGNoTWV0YVByb29mTm9kZXMobWV0YVByb29mTm9kZXMsIG5vZGVzKTtcblxuICAgIG1ldGFQcm9vZk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtZXRhUHJvb2ZOb2Rlc01hdGNoZXM7IC8vL1xuICB9XG5cbiAgcmV0dXJuIG1ldGFQcm9vZk5vblRlcm1pbmFsTm9kZU1hdGNoZXM7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5TWV0YXByb29mIiwibWV0YURlcml2YXRpb25Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJxdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkiLCJtZXRhUHJvb2ZNZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5IiwibWV0YXByb29mTm9kZSIsImNvbmNsdXNpb24iLCJjb250ZXh0IiwibWV0YXByb29mVmVyaWZpZWQiLCJtZXRhRGVyaXZhdGlvbk5vZGUiLCJtZXRhRGVyaXZhdGlvblZlcmlmaWVkIiwidmVyaWZ5TWV0YURlcml2YXRpb24iLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsInF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsImdldE1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YVByb29mTWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhUHJvb2ZNZXRhc3RhdGVtZW50Tm9kZU1hdGNoZXMiLCJtYXRjaE1ldGFQcm9vZk1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YVByb29mTm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlIiwibWV0YVByb29mTm9uVGVybWluYWxOb2RlTWF0Y2hlcyIsIm1hdGNoTWV0YVByb29mTm9uVGVybWluYWxOb2RlIiwibWF0Y2hNZXRhUHJvb2ZOb2RlIiwibWV0YVByb29mTm9kZSIsIm5vZGUiLCJtZXRhUHJvb2ZOb2RlTWF0Y2hlcyIsIm5vZGVUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsInJ1bGVOb2RlVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwibWV0YVByb29mVGVybWluYWxOb2RlIiwibWV0YVByb29mVGVybWluYWxOb2RlTWF0Y2hlcyIsIm1hdGNoTWV0YVByb29mVGVybWluYWxOb2RlIiwibWF0Y2hNZXRhUHJvb2ZOb2RlcyIsIm1ldGFQcm9vZk5vZGVzIiwibm9kZXMiLCJtZXRhUHJvb2ZOb2Rlc01hdGNoZXMiLCJub2Rlc0xlbmd0aCIsImxlbmd0aCIsIm1ldGFQcm9vZk5vZGVzTGVuZ3RoIiwiZXZlcnkiLCJpbmRleCIsIm1hdGNoZXMiLCJtYXRjaCIsInJ1bGVOYW1lIiwiZ2V0UnVsZU5hbWUiLCJtZXRhUHJvb2ZSdWxlTmFtZSIsImNoaWxkTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwibWV0YVByb29mQ2hpbGROb2RlcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBV0E7OztlQUF3QkE7OzttRUFUUzs4REFDUTtxQkFFZjs7Ozs7O0FBRTFCLElBQU1DLDBCQUEwQkMsSUFBQUEsZ0JBQVMsRUFBQywrQkFDcENDLDhCQUE4QkQsSUFBQUEsZ0JBQVMsRUFBQyx1Q0FDeENFLGtDQUFrQ0YsSUFBQUEsZ0JBQVMsRUFBQztBQUVuQyxTQUFTRixnQkFBZ0JLLGFBQWEsRUFBRUMsVUFBVSxFQUFFQyxPQUFPLEVBQUU7SUFDMUUsSUFBSUMsb0JBQW9CLEtBQUs7SUFFN0IsSUFBTUMscUJBQXFCUix3QkFBd0JJO0lBRW5ELElBQUlLLHlCQUF5QixJQUFJO0lBRWpDLElBQUlELHVCQUF1QixJQUFJLEVBQUU7UUFDL0JDLHlCQUF5QkMsSUFBQUEsdUJBQW9CLEVBQUNGLG9CQUFvQkY7SUFDcEUsQ0FBQztJQUVELElBQUlHLHdCQUF3QjtRQUMxQixJQUFNRSw2QkFBNkJULDRCQUE0QkUsZ0JBQ3pEUSxpQ0FBaUNDLElBQUFBLGtCQUE0QixFQUFDRiw0QkFBNEJMO1FBRWhHLElBQUlNLGdDQUFnQztZQUNsQyxJQUFNRSxvQkFBb0JULFdBQVdVLG9CQUFvQixJQUNuREMsNkJBQTZCYixnQ0FBZ0NDLGdCQUM3RGEsb0NBQW9DQyxnQ0FBZ0NGLDRCQUE0QkY7WUFFdEdQLG9CQUFvQlUsbUNBQW9DLEdBQUc7UUFDN0QsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPVjtBQUNUO0FBRUEsU0FBU1csZ0NBQWdDRiwwQkFBMEIsRUFBRUYsaUJBQWlCLEVBQUU7SUFDdEYsSUFBTUssMkJBQTJCSCw0QkFDM0JJLGtCQUFrQk4sbUJBQ2xCTyxrQ0FBa0NDLDhCQUE4QkgsMEJBQTBCQyxrQkFDMUZILG9DQUFvQ0ksaUNBQWtDLEdBQUc7SUFFL0UsT0FBT0o7QUFDVDtBQUVBLFNBQVNNLG1CQUFtQkMsYUFBYSxFQUFFQyxJQUFJLEVBQUU7SUFDL0MsSUFBSUMsdUJBQXVCLEtBQUs7SUFFaEMsSUFBTUMsbUJBQW1CRixLQUFLRyxjQUFjLElBQ3RDQyx1QkFBdUJMLGNBQWNJLGNBQWM7SUFFekQsSUFBSUQscUJBQXFCRSxzQkFBc0I7UUFDN0MsSUFBSUYsa0JBQWtCO1lBQ3BCLElBQU1HLGVBQWVMLE1BQ2ZNLHdCQUF3QlAsZUFDeEJRLCtCQUErQkMsMkJBQTJCRix1QkFBdUJEO1lBRXZGSix1QkFBdUJNLDhCQUErQixHQUFHO1FBQzNELE9BQU87WUFDTCxJQUFNWixrQkFBa0JLLE1BQ2xCTiwyQkFBMkJLLGVBQzNCSCxrQ0FBa0NDLDhCQUE4QkgsMEJBQTBCQztZQUVoR00sdUJBQXVCTCxpQ0FBaUMsR0FBRztRQUM3RCxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU9LO0FBQ1Q7QUFFQSxTQUFTUSxvQkFBb0JDLGNBQWMsRUFBRUMsS0FBSyxFQUFFO0lBQ2xELElBQUlDLHdCQUF3QixLQUFLO0lBRWpDLElBQU1DLGNBQWNGLE1BQU1HLE1BQU0sRUFDMUJDLHVCQUF1QkwsZUFBZUksTUFBTTtJQUVsRCxJQUFJRCxnQkFBZ0JFLHNCQUFzQjtRQUN4Q0gsd0JBQXdCRCxNQUFNSyxLQUFLLENBQUMsU0FBQ2hCLE1BQU1pQixPQUFVO1lBQ25ELElBQU1sQixnQkFBZ0JXLGNBQWMsQ0FBQ08sTUFBTSxFQUNyQ2hCLHVCQUF1QkgsbUJBQW1CQyxlQUFlQztZQUUvRCxJQUFJQyxzQkFBc0I7Z0JBQ3hCLE9BQU8sSUFBSTtZQUNiLENBQUM7UUFDSDtJQUNGLENBQUM7SUFFRCxPQUFPVztBQUNUO0FBRUEsU0FBU0osMkJBQTJCRixxQkFBcUIsRUFBRUQsWUFBWSxFQUFFO0lBQ3ZFLElBQU1hLFVBQVVaLHNCQUFzQmEsS0FBSyxDQUFDZCxlQUN0Q0UsK0JBQStCVyxTQUFVLEdBQUc7SUFFbEQsT0FBT1g7QUFDVDtBQUVBLFNBQVNWLDhCQUE4Qkgsd0JBQXdCLEVBQUVDLGVBQWUsRUFBRTtJQUNoRixJQUFJQyxrQ0FBa0MsS0FBSztJQUUzQyxJQUFNd0IsV0FBV3pCLGdCQUFnQjBCLFdBQVcsSUFDdENDLG9CQUFvQjVCLHlCQUF5QjJCLFdBQVcsSUFBSSxHQUFHO0lBRXJFLElBQUlELGFBQWFFLG1CQUFtQjtRQUNsQyxJQUFNQyxhQUFhNUIsZ0JBQWdCNkIsYUFBYSxJQUMxQ0Msc0JBQXNCL0IseUJBQXlCOEIsYUFBYSxJQUM1RGIsUUFBUVksWUFDUmIsaUJBQWlCZSxxQkFDakJiLHdCQUF3Qkgsb0JBQW9CQyxnQkFBZ0JDO1FBRWxFZixrQ0FBa0NnQix1QkFBdUIsR0FBRztJQUM5RCxDQUFDO0lBRUQsT0FBT2hCO0FBQ1QifQ==
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyQualifiedMetastatement;
9
+ }
10
+ });
11
+ var _string = require("../../utilities/string");
12
+ var _query = require("../../utilities/query");
13
+ var referenceNodeQuery = (0, _query.nodeQuery)("/qualifiedMetastatement/qualification!/reference!"), metastatementNodeQuery = (0, _query.nodeQuery)("/qualifiedMetastatement/metastatement!");
14
+ function verifyQualifiedMetastatement(qualifiedMetastatementNode, context) {
15
+ var qualifiedMetastatementVerified = false;
16
+ var metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode);
17
+ if (metastatementNode !== null) {
18
+ var referenceNode = referenceNodeQuery(qualifiedMetastatementNode), referenceName = (0, _query.referenceNameFromReferenceNode)(referenceNode), rule = context.findRuleByReferenceName(referenceName);
19
+ if (rule !== null) {
20
+ var ruleMatchesMetastatement = rule.matchMetastatement(metastatementNode, context);
21
+ qualifiedMetastatementVerified = ruleMatchesMetastatement; ///
22
+ }
23
+ }
24
+ if (qualifiedMetastatementVerified) {
25
+ var metastatementString = (0, _string.nodeAsString)(metastatementNode);
26
+ context.debug("Verified the '".concat(metastatementString, "' qualified metastatement."));
27
+ }
28
+ return qualifiedMetastatementVerified;
29
+ }
30
+
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC9xdWFsaWZpZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IG5vZGVBc1N0cmluZyB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIHJlZmVyZW5jZU5hbWVGcm9tUmVmZXJlbmNlTm9kZSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgcmVmZXJlbmNlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3F1YWxpZmllZE1ldGFzdGF0ZW1lbnQvcXVhbGlmaWNhdGlvbiEvcmVmZXJlbmNlIVwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcXVhbGlmaWVkTWV0YXN0YXRlbWVudC9tZXRhc3RhdGVtZW50IVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudChxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgY29udGV4dCkge1xuICBsZXQgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5KHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICBpZiAobWV0YXN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCByZWZlcmVuY2VOb2RlID0gcmVmZXJlbmNlTm9kZVF1ZXJ5KHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICByZWZlcmVuY2VOYW1lID0gcmVmZXJlbmNlTmFtZUZyb21SZWZlcmVuY2VOb2RlKHJlZmVyZW5jZU5vZGUpLFxuICAgICAgICAgIHJ1bGUgPSBjb250ZXh0LmZpbmRSdWxlQnlSZWZlcmVuY2VOYW1lKHJlZmVyZW5jZU5hbWUpO1xuXG4gICAgaWYgKHJ1bGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHJ1bGVNYXRjaGVzTWV0YXN0YXRlbWVudCA9IHJ1bGUubWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlLCBjb250ZXh0KTtcblxuICAgICAgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gcnVsZU1hdGNoZXNNZXRhc3RhdGVtZW50OyAgLy8vXG4gICAgfVxuICB9XG5cbiAgaWYgKHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgVmVyaWZpZWQgdGhlICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBxdWFsaWZpZWQgbWV0YXN0YXRlbWVudC5gKTtcbiAgfVxuXG4gIHJldHVybiBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudCIsInJlZmVyZW5jZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsImNvbnRleHQiLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsInJlZmVyZW5jZU5vZGUiLCJyZWZlcmVuY2VOYW1lIiwicmVmZXJlbmNlTmFtZUZyb21SZWZlcmVuY2VOb2RlIiwicnVsZSIsImZpbmRSdWxlQnlSZWZlcmVuY2VOYW1lIiwicnVsZU1hdGNoZXNNZXRhc3RhdGVtZW50IiwibWF0Y2hNZXRhc3RhdGVtZW50IiwibWV0YXN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFRQTs7O2VBQXdCQTs7O3NCQU5LO3FCQUM2QjtBQUUxRCxJQUFNQyxxQkFBcUJDLElBQUFBLGdCQUFTLEVBQUMsc0RBQy9CQyx5QkFBeUJELElBQUFBLGdCQUFTLEVBQUM7QUFFMUIsU0FBU0YsNkJBQTZCSSwwQkFBMEIsRUFBRUMsT0FBTyxFQUFFO0lBQ3hGLElBQUlDLGlDQUFpQyxLQUFLO0lBRTFDLElBQU1DLG9CQUFvQkosdUJBQXVCQztJQUVqRCxJQUFJRyxzQkFBc0IsSUFBSSxFQUFFO1FBQzlCLElBQU1DLGdCQUFnQlAsbUJBQW1CRyw2QkFDbkNLLGdCQUFnQkMsSUFBQUEscUNBQThCLEVBQUNGLGdCQUMvQ0csT0FBT04sUUFBUU8sdUJBQXVCLENBQUNIO1FBRTdDLElBQUlFLFNBQVMsSUFBSSxFQUFFO1lBQ2pCLElBQU1FLDJCQUEyQkYsS0FBS0csa0JBQWtCLENBQUNQLG1CQUFtQkY7WUFFNUVDLGlDQUFpQ08sMEJBQTJCLEdBQUc7UUFDakUsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJUCxnQ0FBZ0M7UUFDbEMsSUFBTVMsc0JBQXNCQyxJQUFBQSxvQkFBWSxFQUFDVDtRQUV6Q0YsUUFBUVksS0FBSyxDQUFDLEFBQUMsaUJBQW9DLE9BQXBCRixxQkFBb0I7SUFDckQsQ0FBQztJQUVELE9BQU9UO0FBQ1QifQ==
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyUnqualifiedMetastatement;
9
+ }
10
+ });
11
+ var _metaAssertion = /*#__PURE__*/ _interopRequireDefault(require("../../metaAssertion"));
12
+ var _query = require("../../utilities/query");
13
+ var _string = require("../../utilities/string");
14
+ function _interopRequireDefault(obj) {
15
+ return obj && obj.__esModule ? obj : {
16
+ default: obj
17
+ };
18
+ }
19
+ var metastatementNodeQuery = (0, _query.nodeQuery)("/unqualifiedMetastatement/metastatement!");
20
+ function verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, context) {
21
+ var unqualifiedMetastatementVerified = false;
22
+ var metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode);
23
+ if (metastatementNode !== null) {
24
+ var derived = context.isDerived();
25
+ if (derived) {
26
+ var metaAssertion = _metaAssertion.default.fromMetastatementNode(metastatementNode), metaAssertionMatches = context.matchMetaAssertion(metaAssertion);
27
+ unqualifiedMetastatementVerified = metaAssertionMatches; ///
28
+ } else {
29
+ unqualifiedMetastatementVerified = true;
30
+ }
31
+ }
32
+ if (unqualifiedMetastatementVerified) {
33
+ var metastatementString = (0, _string.nodeAsString)(metastatementNode);
34
+ context.debug("Verified the '".concat(metastatementString, "' unqualified metastatement."));
35
+ }
36
+ return unqualifiedMetastatementVerified;
37
+ }
38
+
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC91bnF1YWxpZmllZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE1ldGFBc3NlcnRpb24gZnJvbSBcIi4uLy4uL21ldGFBc3NlcnRpb25cIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9zdHJpbmdcIjtcblxuY29uc3QgbWV0YXN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlLCBjb250ZXh0KSB7XG4gIGxldCB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICBpZiAobWV0YXN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBkZXJpdmVkID0gY29udGV4dC5pc0Rlcml2ZWQoKTtcblxuICAgIGlmIChkZXJpdmVkKSB7XG4gICAgICBjb25zdCBtZXRhQXNzZXJ0aW9uID0gTWV0YUFzc2VydGlvbi5mcm9tTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgICAgbWV0YUFzc2VydGlvbk1hdGNoZXMgPSBjb250ZXh0Lm1hdGNoTWV0YUFzc2VydGlvbihtZXRhQXNzZXJ0aW9uKTtcblxuICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBtZXRhQXNzZXJ0aW9uTWF0Y2hlczsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgaWYgKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyhtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGBWZXJpZmllZCB0aGUgJyR7bWV0YXN0YXRlbWVudFN0cmluZ30nIHVucXVhbGlmaWVkIG1ldGFzdGF0ZW1lbnQuYCk7XG4gIH1cblxuICByZXR1cm4gdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5VW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50IiwibWV0YXN0YXRlbWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJjb250ZXh0IiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsImRlcml2ZWQiLCJpc0Rlcml2ZWQiLCJtZXRhQXNzZXJ0aW9uIiwiTWV0YUFzc2VydGlvbiIsImZyb21NZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFBc3NlcnRpb25NYXRjaGVzIiwibWF0Y2hNZXRhQXNzZXJ0aW9uIiwibWV0YXN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQXdCQTs7O2tFQVBFO3FCQUVBO3NCQUNHOzs7Ozs7QUFFN0IsSUFBTUMseUJBQXlCQyxJQUFBQSxnQkFBUyxFQUFDO0FBRTFCLFNBQVNGLCtCQUErQkcsNEJBQTRCLEVBQUVDLE9BQU8sRUFBRTtJQUM1RixJQUFJQyxtQ0FBbUMsS0FBSztJQUU1QyxJQUFNQyxvQkFBb0JMLHVCQUF1QkU7SUFFakQsSUFBSUcsc0JBQXNCLElBQUksRUFBRTtRQUM5QixJQUFNQyxVQUFVSCxRQUFRSSxTQUFTO1FBRWpDLElBQUlELFNBQVM7WUFDWCxJQUFNRSxnQkFBZ0JDLHNCQUFhLENBQUNDLHFCQUFxQixDQUFDTCxvQkFDcERNLHVCQUF1QlIsUUFBUVMsa0JBQWtCLENBQUNKO1lBRXhESixtQ0FBbUNPLHNCQUF1QixHQUFHO1FBQy9ELE9BQU87WUFDTFAsbUNBQW1DLElBQUk7UUFDekMsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJQSxrQ0FBa0M7UUFDcEMsSUFBTVMsc0JBQXNCQyxJQUFBQSxvQkFBWSxFQUFDVDtRQUV6Q0YsUUFBUVksS0FBSyxDQUFDLEFBQUMsaUJBQW9DLE9BQXBCRixxQkFBb0I7SUFDckQsQ0FBQztJQUVELE9BQU9UO0FBQ1QifQ==
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyPremiseOrPremises;
9
+ }
10
+ });
11
+ var _premise = /*#__PURE__*/ _interopRequireDefault(require("../premise"));
12
+ var _metaAssertion = /*#__PURE__*/ _interopRequireDefault(require("../metaAssertion"));
13
+ var _unqualified = /*#__PURE__*/ _interopRequireDefault(require("../verify/metastatement/unqualified"));
14
+ var _query = require("../utilities/query");
15
+ function _interopRequireDefault(obj) {
16
+ return obj && obj.__esModule ? obj : {
17
+ default: obj
18
+ };
19
+ }
20
+ var metastatementNodeQuery = (0, _query.nodeQuery)("/unqualifiedMetastatement/metastatement"), unqualifiedMetastatementNodesQuery = (0, _query.nodesQuery)("/premise|premises/unqualifiedMetastatement");
21
+ function verifyPremiseOrPremises(premiseOrPremisesNode, premises, context) {
22
+ var unqualifiedMetastatementNodes = unqualifiedMetastatementNodesQuery(premiseOrPremisesNode), premiseOrPremisesVerified = unqualifiedMetastatementNodes.every(function(unqualifiedMetastatementNode) {
23
+ var unqualifiedMetastatementVerified = (0, _unqualified.default)(unqualifiedMetastatementNode, context);
24
+ if (unqualifiedMetastatementVerified) {
25
+ var metaAssertion = _metaAssertion.default.fromUnqualifiedMetastatementNode(unqualifiedMetastatementNode);
26
+ context.addMetaAssertion(metaAssertion);
27
+ return true;
28
+ }
29
+ });
30
+ if (premiseOrPremisesVerified) {
31
+ unqualifiedMetastatementNodes.forEach(function(unqualifiedMetastatementNode) {
32
+ var metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode), premise = _premise.default.fromMetastatementNode(metastatementNode);
33
+ premises.push(premise);
34
+ });
35
+ }
36
+ return premiseOrPremisesVerified;
37
+ }
38
+
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcHJlbWlzZU9yUHJlbWlzZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBQcmVtaXNlIGZyb20gXCIuLi9wcmVtaXNlXCI7XG5pbXBvcnQgTWV0YUFzc2VydGlvbiBmcm9tIFwiLi4vbWV0YUFzc2VydGlvblwiO1xuaW1wb3J0IHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L21ldGFzdGF0ZW1lbnQvdW5xdWFsaWZpZWRcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3VucXVhbGlmaWVkTWV0YXN0YXRlbWVudC9tZXRhc3RhdGVtZW50XCIpLFxuICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvcHJlbWlzZXxwcmVtaXNlcy91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVByZW1pc2VPclByZW1pc2VzKHByZW1pc2VPclByZW1pc2VzTm9kZSwgcHJlbWlzZXMsIGNvbnRleHQpIHtcbiAgY29uc3QgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZXMgPSB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2Rlc1F1ZXJ5KHByZW1pc2VPclByZW1pc2VzTm9kZSksXG4gICAgICAgIHByZW1pc2VPclByZW1pc2VzVmVyaWZpZWQgPSB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2Rlcy5ldmVyeSgodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5VW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50KHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgaWYgKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICAgICAgICBjb25zdCBtZXRhQXNzZXJ0aW9uID0gTWV0YUFzc2VydGlvbi5mcm9tVW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgICAgICAgY29udGV4dC5hZGRNZXRhQXNzZXJ0aW9uKG1ldGFBc3NlcnRpb24pO1xuXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gIGlmIChwcmVtaXNlT3JQcmVtaXNlc1ZlcmlmaWVkKSB7XG4gICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZXMuZm9yRWFjaCgodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSkgPT4ge1xuICAgICAgY29uc3QgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5KHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgICAgcHJlbWlzZSA9IFByZW1pc2UuZnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgcHJlbWlzZXMucHVzaChwcmVtaXNlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBwcmVtaXNlT3JQcmVtaXNlc1ZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVByZW1pc2VPclByZW1pc2VzIiwibWV0YXN0YXRlbWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwicHJlbWlzZU9yUHJlbWlzZXNOb2RlIiwicHJlbWlzZXMiLCJjb250ZXh0IiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZXMiLCJwcmVtaXNlT3JQcmVtaXNlc1ZlcmlmaWVkIiwiZXZlcnkiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJ2ZXJpZnlVbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQiLCJtZXRhQXNzZXJ0aW9uIiwiTWV0YUFzc2VydGlvbiIsImZyb21VbnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIiwiYWRkTWV0YUFzc2VydGlvbiIsImZvckVhY2giLCJtZXRhc3RhdGVtZW50Tm9kZSIsInByZW1pc2UiLCJQcmVtaXNlIiwiZnJvbU1ldGFzdGF0ZW1lbnROb2RlIiwicHVzaCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBV0E7OztlQUF3QkE7Ozs0REFUSjtrRUFDTTtnRUFDaUI7cUJBRUw7Ozs7OztBQUV0QyxJQUFNQyx5QkFBeUJDLElBQUFBLGdCQUFTLEVBQUMsNENBQ25DQyxxQ0FBcUNDLElBQUFBLGlCQUFVLEVBQUM7QUFFdkMsU0FBU0osd0JBQXdCSyxxQkFBcUIsRUFBRUMsUUFBUSxFQUFFQyxPQUFPLEVBQUU7SUFDeEYsSUFBTUMsZ0NBQWdDTCxtQ0FBbUNFLHdCQUNuRUksNEJBQTRCRCw4QkFBOEJFLEtBQUssQ0FBQyxTQUFDQyw4QkFBaUM7UUFDaEcsSUFBTUMsbUNBQW1DQyxJQUFBQSxvQkFBOEIsRUFBQ0YsOEJBQThCSjtRQUV0RyxJQUFJSyxrQ0FBa0M7WUFDcEMsSUFBTUUsZ0JBQWdCQyxzQkFBYSxDQUFDQyxnQ0FBZ0MsQ0FBQ0w7WUFFckVKLFFBQVFVLGdCQUFnQixDQUFDSDtZQUV6QixPQUFPLElBQUk7UUFDYixDQUFDO0lBQ0g7SUFFTixJQUFJTCwyQkFBMkI7UUFDN0JELDhCQUE4QlUsT0FBTyxDQUFDLFNBQUNQLDhCQUFpQztZQUN0RSxJQUFNUSxvQkFBb0JsQix1QkFBdUJVLCtCQUMzQ1MsVUFBVUMsZ0JBQU8sQ0FBQ0MscUJBQXFCLENBQUNIO1lBRTlDYixTQUFTaUIsSUFBSSxDQUFDSDtRQUNoQjtJQUNGLENBQUM7SUFFRCxPQUFPWDtBQUNUIn0=
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyRelease;
9
+ }
10
+ });
11
+ var _necessary = require("necessary");
12
+ var _files = /*#__PURE__*/ _interopRequireDefault(require("../verify/files"));
13
+ function _interopRequireDefault(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ var log = _necessary.loggingUtilities.log;
19
+ function verifyRelease(releaseName, releaseContextMap) {
20
+ var releaseContexts = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [];
21
+ var releaseContext = releaseContextMap[releaseName];
22
+ var releaseVerified = releaseContext.isReleaseVerified();
23
+ if (!releaseVerified) {
24
+ log.debug("Verifying the '".concat(releaseName, "' package..."));
25
+ var dependencyReleaseNames = releaseContext.getDependencyReleaseNames(), dependencyReleasesVVerified = dependencyReleaseNames.every(function(dependencyReleaseName) {
26
+ var _$releaseName = dependencyReleaseName, releaseVerified = verifyRelease(_$releaseName, releaseContextMap, releaseContexts);
27
+ if (releaseVerified) {
28
+ return true;
29
+ }
30
+ });
31
+ if (dependencyReleasesVVerified) {
32
+ var releaseNames = dependencyReleaseNames, releaseContexts1 = releaseNames.map(function(releaseName) {
33
+ var releaseContext = releaseContextMap[releaseName];
34
+ return releaseContext;
35
+ });
36
+ var dependencyReleaseContexts = retrieveDependencyReleaseContexts(dependencyReleaseNames, releaseContextMap);
37
+ releaseContext.initialise(releaseContexts1, dependencyReleaseContexts);
38
+ var filesVerified = (0, _files.default)(releaseContext);
39
+ releaseVerified = filesVerified; ///
40
+ if (releaseVerified) {
41
+ releaseContexts1.push(releaseContext);
42
+ log.info("Verified the '".concat(releaseName, "' release."));
43
+ }
44
+ }
45
+ }
46
+ return releaseVerified;
47
+ }
48
+ function retrieveDependencyReleaseContexts(dependencyReleaseNames, releaseContextMap) {
49
+ var dependencyReleaseContexts = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [];
50
+ dependencyReleaseNames.forEach(function(dependencyReleaseName) {
51
+ var dependencyReleaseContext = releaseContextMap[dependencyReleaseName], dependencyReleaseContextsIncludesDependencyReleaseContext = dependencyReleaseContexts.includes(dependencyReleaseContext);
52
+ if (!dependencyReleaseContextsIncludesDependencyReleaseContext) {
53
+ var releaseContext = dependencyReleaseContext, _$dependencyReleaseNames = releaseContext.getDependencyReleaseNames();
54
+ retrieveDependencyReleaseContexts(_$dependencyReleaseNames, releaseContextMap, dependencyReleaseContexts);
55
+ dependencyReleaseContexts.push(dependencyReleaseContext);
56
+ }
57
+ });
58
+ return dependencyReleaseContexts;
59
+ }
60
+
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcmVsZWFzZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgbG9nZ2luZ1V0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuaW1wb3J0IHZlcmlmeUZpbGVzIGZyb20gXCIuLi92ZXJpZnkvZmlsZXNcIjtcblxuY29uc3QgeyBsb2cgfSA9IGxvZ2dpbmdVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVJlbGVhc2UocmVsZWFzZU5hbWUsIHJlbGVhc2VDb250ZXh0TWFwLCByZWxlYXNlQ29udGV4dHMgPSBbXSkge1xuICBjb25zdCByZWxlYXNlQ29udGV4dCA9IHJlbGVhc2VDb250ZXh0TWFwW3JlbGVhc2VOYW1lXTtcblxuICBsZXQgcmVsZWFzZVZlcmlmaWVkID0gcmVsZWFzZUNvbnRleHQuaXNSZWxlYXNlVmVyaWZpZWQoKTtcblxuICBpZiAoIXJlbGVhc2VWZXJpZmllZCkge1xuICAgIGxvZy5kZWJ1ZyhgVmVyaWZ5aW5nIHRoZSAnJHtyZWxlYXNlTmFtZX0nIHBhY2thZ2UuLi5gKTtcblxuICAgIGNvbnN0IGRlcGVuZGVuY3lSZWxlYXNlTmFtZXMgPSByZWxlYXNlQ29udGV4dC5nZXREZXBlbmRlbmN5UmVsZWFzZU5hbWVzKCksXG4gICAgICAgICAgZGVwZW5kZW5jeVJlbGVhc2VzVlZlcmlmaWVkID0gZGVwZW5kZW5jeVJlbGVhc2VOYW1lcy5ldmVyeSgoZGVwZW5kZW5jeVJlbGVhc2VOYW1lKSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZWxlYXNlTmFtZSA9IGRlcGVuZGVuY3lSZWxlYXNlTmFtZSwgIC8vL1xuICAgICAgICAgICAgICAgICAgcmVsZWFzZVZlcmlmaWVkID0gdmVyaWZ5UmVsZWFzZShyZWxlYXNlTmFtZSwgcmVsZWFzZUNvbnRleHRNYXAsIHJlbGVhc2VDb250ZXh0cyk7XG5cbiAgICAgICAgICAgIGlmIChyZWxlYXNlVmVyaWZpZWQpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG5cbiAgICBpZiAoZGVwZW5kZW5jeVJlbGVhc2VzVlZlcmlmaWVkKSB7XG4gICAgICBjb25zdCByZWxlYXNlTmFtZXMgPSBkZXBlbmRlbmN5UmVsZWFzZU5hbWVzLCAgLy8vXG4gICAgICAgICAgICByZWxlYXNlQ29udGV4dHMgPSByZWxlYXNlTmFtZXMubWFwKChyZWxlYXNlTmFtZSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCByZWxlYXNlQ29udGV4dCA9IHJlbGVhc2VDb250ZXh0TWFwW3JlbGVhc2VOYW1lXTtcblxuICAgICAgICAgICAgICByZXR1cm4gcmVsZWFzZUNvbnRleHQ7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgY29uc3QgZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyA9IHJldHJpZXZlRGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyhkZXBlbmRlbmN5UmVsZWFzZU5hbWVzLCByZWxlYXNlQ29udGV4dE1hcCk7XG5cbiAgICAgIHJlbGVhc2VDb250ZXh0LmluaXRpYWxpc2UocmVsZWFzZUNvbnRleHRzLCBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKTtcblxuICAgICAgY29uc3QgZmlsZXNWZXJpZmllZCA9IHZlcmlmeUZpbGVzKHJlbGVhc2VDb250ZXh0KTtcblxuICAgICAgcmVsZWFzZVZlcmlmaWVkID0gZmlsZXNWZXJpZmllZDsgIC8vL1xuXG4gICAgICBpZiAocmVsZWFzZVZlcmlmaWVkKSB7XG4gICAgICAgIHJlbGVhc2VDb250ZXh0cy5wdXNoKHJlbGVhc2VDb250ZXh0KTtcblxuICAgICAgICBsb2cuaW5mbyhgVmVyaWZpZWQgdGhlICcke3JlbGVhc2VOYW1lfScgcmVsZWFzZS5gKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVsZWFzZVZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiByZXRyaWV2ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoZGVwZW5kZW5jeVJlbGVhc2VOYW1lcywgcmVsZWFzZUNvbnRleHRNYXAsIGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMgPSBbXSkge1xuICBkZXBlbmRlbmN5UmVsZWFzZU5hbWVzLmZvckVhY2goKGRlcGVuZGVuY3lSZWxlYXNlTmFtZSkgPT4ge1xuICAgIGNvbnN0IGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dCA9IHJlbGVhc2VDb250ZXh0TWFwW2RlcGVuZGVuY3lSZWxlYXNlTmFtZV0sXG4gICAgICAgICAgZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0c0luY2x1ZGVzRGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0ID0gZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cy5pbmNsdWRlcyhkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHQpO1xuXG4gICAgaWYgKCFkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzSW5jbHVkZXNEZXBlbmRlbmN5UmVsZWFzZUNvbnRleHQpIHtcbiAgICAgIGNvbnN0IHJlbGVhc2VDb250ZXh0ID0gZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0LCAgLy8vXG4gICAgICAgICAgICBkZXBlbmRlbmN5UmVsZWFzZU5hbWVzID0gcmVsZWFzZUNvbnRleHQuZ2V0RGVwZW5kZW5jeVJlbGVhc2VOYW1lcygpO1xuXG4gICAgICByZXRyaWV2ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoZGVwZW5kZW5jeVJlbGVhc2VOYW1lcywgcmVsZWFzZUNvbnRleHRNYXAsIGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMpO1xuXG4gICAgICBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzLnB1c2goZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0KTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVJlbGVhc2UiLCJsb2ciLCJsb2dnaW5nVXRpbGl0aWVzIiwicmVsZWFzZU5hbWUiLCJyZWxlYXNlQ29udGV4dE1hcCIsInJlbGVhc2VDb250ZXh0cyIsInJlbGVhc2VDb250ZXh0IiwicmVsZWFzZVZlcmlmaWVkIiwiaXNSZWxlYXNlVmVyaWZpZWQiLCJkZWJ1ZyIsImRlcGVuZGVuY3lSZWxlYXNlTmFtZXMiLCJnZXREZXBlbmRlbmN5UmVsZWFzZU5hbWVzIiwiZGVwZW5kZW5jeVJlbGVhc2VzVlZlcmlmaWVkIiwiZXZlcnkiLCJkZXBlbmRlbmN5UmVsZWFzZU5hbWUiLCJyZWxlYXNlTmFtZXMiLCJtYXAiLCJkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzIiwicmV0cmlldmVEZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzIiwiaW5pdGlhbGlzZSIsImZpbGVzVmVyaWZpZWQiLCJ2ZXJpZnlGaWxlcyIsInB1c2giLCJpbmZvIiwiZm9yRWFjaCIsImRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dCIsImRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHNJbmNsdWRlc0RlcGVuZGVuY3lSZWxlYXNlQ29udGV4dCIsImluY2x1ZGVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFRQTs7O2VBQXdCQTs7O3lCQU5TOzBEQUVUOzs7Ozs7QUFFeEIsSUFBTSxBQUFFQyxNQUFRQywyQkFBZ0IsQ0FBeEJEO0FBRU8sU0FBU0QsY0FBY0csV0FBVyxFQUFFQyxpQkFBaUIsRUFBd0I7UUFBdEJDLGtCQUFBQSxpRUFBa0IsRUFBRTtJQUN4RixJQUFNQyxpQkFBaUJGLGlCQUFpQixDQUFDRCxZQUFZO0lBRXJELElBQUlJLGtCQUFrQkQsZUFBZUUsaUJBQWlCO0lBRXRELElBQUksQ0FBQ0QsaUJBQWlCO1FBQ3BCTixJQUFJUSxLQUFLLENBQUMsQUFBQyxrQkFBNkIsT0FBWk4sYUFBWTtRQUV4QyxJQUFNTyx5QkFBeUJKLGVBQWVLLHlCQUF5QixJQUNqRUMsOEJBQThCRix1QkFBdUJHLEtBQUssQ0FBQyxTQUFDQyx1QkFBMEI7WUFDcEYsSUFBTVgsZ0JBQWNXLHVCQUNkUCxrQkFBa0JQLGNBQWNHLGVBQWFDLG1CQUFtQkM7WUFFdEUsSUFBSUUsaUJBQWlCO2dCQUNuQixPQUFPLElBQUk7WUFDYixDQUFDO1FBQ0g7UUFFTixJQUFJSyw2QkFBNkI7WUFDL0IsSUFBTUcsZUFBZUwsd0JBQ2ZMLG1CQUFrQlUsYUFBYUMsR0FBRyxDQUFDLFNBQUNiLGFBQWdCO2dCQUNsRCxJQUFNRyxpQkFBaUJGLGlCQUFpQixDQUFDRCxZQUFZO2dCQUVyRCxPQUFPRztZQUNUO1lBRU4sSUFBTVcsNEJBQTRCQyxrQ0FBa0NSLHdCQUF3Qk47WUFFNUZFLGVBQWVhLFVBQVUsQ0FBQ2Qsa0JBQWlCWTtZQUUzQyxJQUFNRyxnQkFBZ0JDLElBQUFBLGNBQVcsRUFBQ2Y7WUFFbENDLGtCQUFrQmEsZUFBZ0IsR0FBRztZQUVyQyxJQUFJYixpQkFBaUI7Z0JBQ25CRixpQkFBZ0JpQixJQUFJLENBQUNoQjtnQkFFckJMLElBQUlzQixJQUFJLENBQUMsQUFBQyxpQkFBNEIsT0FBWnBCLGFBQVk7WUFDeEMsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBT0k7QUFDVDtBQUVBLFNBQVNXLGtDQUFrQ1Isc0JBQXNCLEVBQUVOLGlCQUFpQixFQUFrQztRQUFoQ2EsNEJBQUFBLGlFQUE0QixFQUFFO0lBQ2xIUCx1QkFBdUJjLE9BQU8sQ0FBQyxTQUFDVix1QkFBMEI7UUFDeEQsSUFBTVcsMkJBQTJCckIsaUJBQWlCLENBQUNVLHNCQUFzQixFQUNuRVksNERBQTREVCwwQkFBMEJVLFFBQVEsQ0FBQ0Y7UUFFckcsSUFBSSxDQUFDQywyREFBMkQ7WUFDOUQsSUFBTXBCLGlCQUFpQm1CLDBCQUNqQmYsMkJBQXlCSixlQUFlSyx5QkFBeUI7WUFFdkVPLGtDQUFrQ1IsMEJBQXdCTixtQkFBbUJhO1lBRTdFQSwwQkFBMEJLLElBQUksQ0FBQ0c7UUFDakMsQ0FBQztJQUNIO0lBRUEsT0FBT1I7QUFDVCJ9
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyRule;
9
+ }
10
+ });
11
+ var _rule = /*#__PURE__*/ _interopRequireDefault(require("../rule"));
12
+ var _labels = /*#__PURE__*/ _interopRequireDefault(require("../verify/labels"));
13
+ var _metaproof = /*#__PURE__*/ _interopRequireDefault(require("../verify/metaproof"));
14
+ var _metaproof1 = /*#__PURE__*/ _interopRequireDefault(require("../context/metaproof"));
15
+ var _conditinalInference = /*#__PURE__*/ _interopRequireDefault(require("../verify/conditinalInference"));
16
+ var _unconditionalInference = /*#__PURE__*/ _interopRequireDefault(require("../verify/unconditionalInference"));
17
+ var _array = require("../utilities/array");
18
+ var _string = require("../utilities/string");
19
+ var _query = require("../utilities/query");
20
+ function _interopRequireDefault(obj) {
21
+ return obj && obj.__esModule ? obj : {
22
+ default: obj
23
+ };
24
+ }
25
+ var labelNodesQuery = (0, _query.nodesQuery)("/rule/label"), metaproofNodeQuery = (0, _query.nodeQuery)("/rule/metaproof!"), conditionalInferenceNodeQuery = (0, _query.nodeQuery)("/rule/conditionalInference!"), unconditionalInferenceNodeQuery = (0, _query.nodeQuery)("/rule/unconditionalInference!");
26
+ function verifyRule(ruleNode, context) {
27
+ var ruleVerified = false;
28
+ var labelNodes = labelNodesQuery(ruleNode), labelsString = (0, _string.nodesAsString)(labelNodes);
29
+ var metaproofContext = _metaproof1.default.fromContext(context);
30
+ context = metaproofContext; ///
31
+ context.debug("Verifying the '".concat(labelsString, "' rule..."));
32
+ var labels = [], labelsVerified = (0, _labels.default)(labelNodes, labels, context);
33
+ if (labelsVerified) {
34
+ var premises = [], conclusions = [], conditionalInferenceNode = conditionalInferenceNodeQuery(ruleNode), unconditionalInferenceNode = unconditionalInferenceNodeQuery(ruleNode);
35
+ var conditionalInferenceVerified = false, unconditionalInferenceVerified = false;
36
+ if (conditionalInferenceNode !== null) {
37
+ conditionalInferenceVerified = (0, _conditinalInference.default)(conditionalInferenceNode, premises, conclusions, context);
38
+ }
39
+ if (unconditionalInferenceNode !== null) {
40
+ unconditionalInferenceVerified = (0, _unconditionalInference.default)(unconditionalInferenceNode, premises, conclusions, context);
41
+ }
42
+ if (conditionalInferenceVerified || unconditionalInferenceVerified) {
43
+ var metaproofNode = metaproofNodeQuery(ruleNode), firstConclusion = (0, _array.first)(conclusions), conclusion = firstConclusion; ///
44
+ var metaproofVerified = true;
45
+ if (metaproofNode !== null) {
46
+ metaproofVerified = (0, _metaproof.default)(metaproofNode, conclusion, context);
47
+ }
48
+ if (metaproofVerified) {
49
+ var rule = _rule.default.fromPremisesConclusionAndLabels(premises, conclusion, labels);
50
+ context.addRule(rule);
51
+ ruleVerified = true;
52
+ }
53
+ }
54
+ if (ruleVerified) {
55
+ context.info("Verified the '".concat(labelsString, "' rule."));
56
+ }
57
+ }
58
+ return ruleVerified;
59
+ }
60
+
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcnVsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFJ1bGUgZnJvbSBcIi4uL3J1bGVcIjtcbmltcG9ydCB2ZXJpZnlMYWJlbHMgZnJvbSBcIi4uL3ZlcmlmeS9sYWJlbHNcIjtcbmltcG9ydCB2ZXJpZnlNZXRhcHJvb2YgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhcHJvb2ZcIjtcbmltcG9ydCBNZXRhcHJvb2ZDb250ZXh0IGZyb20gXCIuLi9jb250ZXh0L21ldGFwcm9vZlwiO1xuaW1wb3J0IHZlcmlmeUNvbmRpdGlvbmFsSW5mZXJlbmNlIGZyb20gXCIuLi92ZXJpZnkvY29uZGl0aW5hbEluZmVyZW5jZVwiO1xuaW1wb3J0IHZlcmlmeVVuY29uZGl0aW9uYWxJbmZlcmVuY2UgZnJvbSBcIi4uL3ZlcmlmeS91bmNvbmRpdGlvbmFsSW5mZXJlbmNlXCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZXNBc1N0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IGxhYmVsTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvcnVsZS9sYWJlbFwiKSxcbiAgICAgIG1ldGFwcm9vZk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9ydWxlL21ldGFwcm9vZiFcIiksXG4gICAgICBjb25kaXRpb25hbEluZmVyZW5jZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9ydWxlL2NvbmRpdGlvbmFsSW5mZXJlbmNlIVwiKSxcbiAgICAgIHVuY29uZGl0aW9uYWxJbmZlcmVuY2VOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcnVsZS91bmNvbmRpdGlvbmFsSW5mZXJlbmNlIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5UnVsZShydWxlTm9kZSwgY29udGV4dCkge1xuICBsZXQgcnVsZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgbGFiZWxOb2RlcyA9IGxhYmVsTm9kZXNRdWVyeShydWxlTm9kZSksXG4gICAgICAgIGxhYmVsc1N0cmluZyA9IG5vZGVzQXNTdHJpbmcobGFiZWxOb2Rlcyk7XG5cbiAgY29uc3QgbWV0YXByb29mQ29udGV4dCA9IE1ldGFwcm9vZkNvbnRleHQuZnJvbUNvbnRleHQoY29udGV4dCk7XG5cbiAgY29udGV4dCA9IG1ldGFwcm9vZkNvbnRleHQ7IC8vL1xuXG4gIGNvbnRleHQuZGVidWcoYFZlcmlmeWluZyB0aGUgJyR7bGFiZWxzU3RyaW5nfScgcnVsZS4uLmApO1xuXG4gIGNvbnN0IGxhYmVscyA9IFtdLFxuICAgICAgICBsYWJlbHNWZXJpZmllZCA9IHZlcmlmeUxhYmVscyhsYWJlbE5vZGVzLCBsYWJlbHMsIGNvbnRleHQpO1xuXG4gIGlmIChsYWJlbHNWZXJpZmllZCkge1xuICAgIGNvbnN0IHByZW1pc2VzID0gW10sXG4gICAgICAgICAgY29uY2x1c2lvbnMgPSBbXSxcbiAgICAgICAgICBjb25kaXRpb25hbEluZmVyZW5jZU5vZGUgPSBjb25kaXRpb25hbEluZmVyZW5jZU5vZGVRdWVyeShydWxlTm9kZSksXG4gICAgICAgICAgdW5jb25kaXRpb25hbEluZmVyZW5jZU5vZGUgPSB1bmNvbmRpdGlvbmFsSW5mZXJlbmNlTm9kZVF1ZXJ5KHJ1bGVOb2RlKTtcblxuICAgIGxldCBjb25kaXRpb25hbEluZmVyZW5jZVZlcmlmaWVkID0gZmFsc2UsXG4gICAgICAgIHVuY29uZGl0aW9uYWxJbmZlcmVuY2VWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgaWYgKGNvbmRpdGlvbmFsSW5mZXJlbmNlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uZGl0aW9uYWxJbmZlcmVuY2VWZXJpZmllZCA9IHZlcmlmeUNvbmRpdGlvbmFsSW5mZXJlbmNlKGNvbmRpdGlvbmFsSW5mZXJlbmNlTm9kZSwgcHJlbWlzZXMsIGNvbmNsdXNpb25zLCBjb250ZXh0KTtcbiAgICB9XG5cbiAgICBpZiAodW5jb25kaXRpb25hbEluZmVyZW5jZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIHVuY29uZGl0aW9uYWxJbmZlcmVuY2VWZXJpZmllZCA9IHZlcmlmeVVuY29uZGl0aW9uYWxJbmZlcmVuY2UodW5jb25kaXRpb25hbEluZmVyZW5jZU5vZGUsIHByZW1pc2VzLCBjb25jbHVzaW9ucywgY29udGV4dCk7XG4gICAgfVxuXG4gICAgaWYgKGNvbmRpdGlvbmFsSW5mZXJlbmNlVmVyaWZpZWQgfHwgdW5jb25kaXRpb25hbEluZmVyZW5jZVZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBtZXRhcHJvb2ZOb2RlID0gbWV0YXByb29mTm9kZVF1ZXJ5KHJ1bGVOb2RlKSxcbiAgICAgICAgICAgIGZpcnN0Q29uY2x1c2lvbiA9IGZpcnN0KGNvbmNsdXNpb25zKSxcbiAgICAgICAgICAgIGNvbmNsdXNpb24gPSBmaXJzdENvbmNsdXNpb247IC8vL1xuXG4gICAgICBsZXQgbWV0YXByb29mVmVyaWZpZWQgPSB0cnVlO1xuXG4gICAgICBpZiAobWV0YXByb29mTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBtZXRhcHJvb2ZWZXJpZmllZCA9IHZlcmlmeU1ldGFwcm9vZihtZXRhcHJvb2ZOb2RlLCBjb25jbHVzaW9uLCBjb250ZXh0KTtcbiAgICAgIH1cblxuICAgICAgaWYgKG1ldGFwcm9vZlZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IHJ1bGUgPSBSdWxlLmZyb21QcmVtaXNlc0NvbmNsdXNpb25BbmRMYWJlbHMocHJlbWlzZXMsIGNvbmNsdXNpb24sIGxhYmVscyk7XG5cbiAgICAgICAgY29udGV4dC5hZGRSdWxlKHJ1bGUpO1xuXG4gICAgICAgIHJ1bGVWZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHJ1bGVWZXJpZmllZCkge1xuICAgICAgY29udGV4dC5pbmZvKGBWZXJpZmllZCB0aGUgJyR7bGFiZWxzU3RyaW5nfScgcnVsZS5gKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcnVsZVZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVJ1bGUiLCJsYWJlbE5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwibWV0YXByb29mTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwiY29uZGl0aW9uYWxJbmZlcmVuY2VOb2RlUXVlcnkiLCJ1bmNvbmRpdGlvbmFsSW5mZXJlbmNlTm9kZVF1ZXJ5IiwicnVsZU5vZGUiLCJjb250ZXh0IiwicnVsZVZlcmlmaWVkIiwibGFiZWxOb2RlcyIsImxhYmVsc1N0cmluZyIsIm5vZGVzQXNTdHJpbmciLCJtZXRhcHJvb2ZDb250ZXh0IiwiTWV0YXByb29mQ29udGV4dCIsImZyb21Db250ZXh0IiwiZGVidWciLCJsYWJlbHMiLCJsYWJlbHNWZXJpZmllZCIsInZlcmlmeUxhYmVscyIsInByZW1pc2VzIiwiY29uY2x1c2lvbnMiLCJjb25kaXRpb25hbEluZmVyZW5jZU5vZGUiLCJ1bmNvbmRpdGlvbmFsSW5mZXJlbmNlTm9kZSIsImNvbmRpdGlvbmFsSW5mZXJlbmNlVmVyaWZpZWQiLCJ1bmNvbmRpdGlvbmFsSW5mZXJlbmNlVmVyaWZpZWQiLCJ2ZXJpZnlDb25kaXRpb25hbEluZmVyZW5jZSIsInZlcmlmeVVuY29uZGl0aW9uYWxJbmZlcmVuY2UiLCJtZXRhcHJvb2ZOb2RlIiwiZmlyc3RDb25jbHVzaW9uIiwiZmlyc3QiLCJjb25jbHVzaW9uIiwibWV0YXByb29mVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhcHJvb2YiLCJydWxlIiwiUnVsZSIsImZyb21QcmVtaXNlc0NvbmNsdXNpb25BbmRMYWJlbHMiLCJhZGRSdWxlIiwiaW5mbyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBa0JBOzs7ZUFBd0JBOzs7eURBaEJQOzJEQUNROzhEQUNHOytEQUNDO3dFQUNVOzJFQUNFO3FCQUVuQjtzQkFDUTtxQkFDUTs7Ozs7O0FBRXRDLElBQU1DLGtCQUFrQkMsSUFBQUEsaUJBQVUsRUFBQyxnQkFDN0JDLHFCQUFxQkMsSUFBQUEsZ0JBQVMsRUFBQyxxQkFDL0JDLGdDQUFnQ0QsSUFBQUEsZ0JBQVMsRUFBQyxnQ0FDMUNFLGtDQUFrQ0YsSUFBQUEsZ0JBQVMsRUFBQztBQUVuQyxTQUFTSixXQUFXTyxRQUFRLEVBQUVDLE9BQU8sRUFBRTtJQUNwRCxJQUFJQyxlQUFlLEtBQUs7SUFFeEIsSUFBTUMsYUFBYVQsZ0JBQWdCTSxXQUM3QkksZUFBZUMsSUFBQUEscUJBQWEsRUFBQ0Y7SUFFbkMsSUFBTUcsbUJBQW1CQyxtQkFBZ0IsQ0FBQ0MsV0FBVyxDQUFDUDtJQUV0REEsVUFBVUssa0JBQWtCLEdBQUc7SUFFL0JMLFFBQVFRLEtBQUssQ0FBQyxBQUFDLGtCQUE4QixPQUFiTCxjQUFhO0lBRTdDLElBQU1NLFNBQVMsRUFBRSxFQUNYQyxpQkFBaUJDLElBQUFBLGVBQVksRUFBQ1QsWUFBWU8sUUFBUVQ7SUFFeEQsSUFBSVUsZ0JBQWdCO1FBQ2xCLElBQU1FLFdBQVcsRUFBRSxFQUNiQyxjQUFjLEVBQUUsRUFDaEJDLDJCQUEyQmpCLDhCQUE4QkUsV0FDekRnQiw2QkFBNkJqQixnQ0FBZ0NDO1FBRW5FLElBQUlpQiwrQkFBK0IsS0FBSyxFQUNwQ0MsaUNBQWlDLEtBQUs7UUFFMUMsSUFBSUgsNkJBQTZCLElBQUksRUFBRTtZQUNyQ0UsK0JBQStCRSxJQUFBQSw0QkFBMEIsRUFBQ0osMEJBQTBCRixVQUFVQyxhQUFhYjtRQUM3RyxDQUFDO1FBRUQsSUFBSWUsK0JBQStCLElBQUksRUFBRTtZQUN2Q0UsaUNBQWlDRSxJQUFBQSwrQkFBNEIsRUFBQ0osNEJBQTRCSCxVQUFVQyxhQUFhYjtRQUNuSCxDQUFDO1FBRUQsSUFBSWdCLGdDQUFnQ0MsZ0NBQWdDO1lBQ2xFLElBQU1HLGdCQUFnQnpCLG1CQUFtQkksV0FDbkNzQixrQkFBa0JDLElBQUFBLFlBQUssRUFBQ1QsY0FDeEJVLGFBQWFGLGlCQUFpQixHQUFHO1lBRXZDLElBQUlHLG9CQUFvQixJQUFJO1lBRTVCLElBQUlKLGtCQUFrQixJQUFJLEVBQUU7Z0JBQzFCSSxvQkFBb0JDLElBQUFBLGtCQUFlLEVBQUNMLGVBQWVHLFlBQVl2QjtZQUNqRSxDQUFDO1lBRUQsSUFBSXdCLG1CQUFtQjtnQkFDckIsSUFBTUUsT0FBT0MsYUFBSSxDQUFDQywrQkFBK0IsQ0FBQ2hCLFVBQVVXLFlBQVlkO2dCQUV4RVQsUUFBUTZCLE9BQU8sQ0FBQ0g7Z0JBRWhCekIsZUFBZSxJQUFJO1lBQ3JCLENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSUEsY0FBYztZQUNoQkQsUUFBUThCLElBQUksQ0FBQyxBQUFDLGlCQUE2QixPQUFiM0IsY0FBYTtRQUM3QyxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU9GO0FBQ1QifQ==
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyQualifiedStatement;
9
+ }
10
+ });
11
+ var _statement = /*#__PURE__*/ _interopRequireDefault(require("../../verify/statement"));
12
+ var _query = require("../../utilities/query");
13
+ function _interopRequireDefault(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ var statementNodeQuery = (0, _query.nodeQuery)("/qualifiedStatement/statement!");
19
+ function verifyQualifiedStatement(qualifiedStatementNode, context) {
20
+ var statementNode = statementNodeQuery(qualifiedStatementNode), statementVerified = (0, _statement.default)(statementNode, context), qualifiedStatementVerified = statementVerified; ///
21
+ return qualifiedStatementVerified;
22
+ }
23
+
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50L3F1YWxpZmllZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeVN0YXRlbWVudCBmcm9tIFwiLi4vLi4vdmVyaWZ5L3N0YXRlbWVudFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5UXVhbGlmaWVkU3RhdGVtZW50KHF1YWxpZmllZFN0YXRlbWVudE5vZGUsIGNvbnRleHQpIHtcbiAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSwgY29udGV4dCksXG4gICAgICAgIHF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gc3RhdGVtZW50VmVyaWZpZWQ7IC8vL1xuXG4gIHJldHVybiBxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlRdWFsaWZpZWRTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJxdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwiY29udGV4dCIsInN0YXRlbWVudE5vZGUiLCJzdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeVN0YXRlbWVudCIsInF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFRQTs7O2VBQXdCQTs7OzhEQU5JO3FCQUVGOzs7Ozs7QUFFMUIsSUFBTUMscUJBQXFCQyxJQUFBQSxnQkFBUyxFQUFDO0FBRXRCLFNBQVNGLHlCQUF5Qkcsc0JBQXNCLEVBQUVDLE9BQU8sRUFBRTtJQUNoRixJQUFNQyxnQkFBZ0JKLG1CQUFtQkUseUJBQ25DRyxvQkFBb0JDLElBQUFBLGtCQUFlLEVBQUNGLGVBQWVELFVBQ25ESSw2QkFBNkJGLG1CQUFtQixHQUFHO0lBRXpELE9BQU9FO0FBQ1QifQ==
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyUnqualifiedStatement;
9
+ }
10
+ });
11
+ var _statement = /*#__PURE__*/ _interopRequireDefault(require("../../verify/statement"));
12
+ var _query = require("../../utilities/query");
13
+ function _interopRequireDefault(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ var statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement!");
19
+ function verifyUnqualifiedStatement(unqualifiedStatementNode, context) {
20
+ var unqualifiedStatementVerified = false;
21
+ var statementNode = statementNodeQuery(unqualifiedStatementNode);
22
+ if (statementNode !== null) {
23
+ var statementVerified = (0, _statement.default)(statementNode, context);
24
+ if (statementVerified) {
25
+ context.addStatementNode(statementNode);
26
+ unqualifiedStatementVerified = true;
27
+ }
28
+ }
29
+ return unqualifiedStatementVerified;
30
+ }
31
+
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50L3VucXVhbGlmaWVkLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5U3RhdGVtZW50IGZyb20gXCIuLi8uLi92ZXJpZnkvc3RhdGVtZW50XCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3Qgc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3VucXVhbGlmaWVkU3RhdGVtZW50L3N0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVVucXVhbGlmaWVkU3RhdGVtZW50KHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgY29udGV4dCkge1xuICBsZXQgdW5xdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICBpZiAoc3RhdGVtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5U3RhdGVtZW50KHN0YXRlbWVudE5vZGUsIGNvbnRleHQpO1xuXG4gICAgaWYgKHN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb250ZXh0LmFkZFN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVVucXVhbGlmaWVkU3RhdGVtZW50Iiwic3RhdGVtZW50Tm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwiY29udGV4dCIsInVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQiLCJzdGF0ZW1lbnROb2RlIiwic3RhdGVtZW50VmVyaWZpZWQiLCJ2ZXJpZnlTdGF0ZW1lbnQiLCJhZGRTdGF0ZW1lbnROb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFRQTs7O2VBQXdCQTs7OzhEQU5JO3FCQUVGOzs7Ozs7QUFFMUIsSUFBTUMscUJBQXFCQyxJQUFBQSxnQkFBUyxFQUFDO0FBRXRCLFNBQVNGLDJCQUEyQkcsd0JBQXdCLEVBQUVDLE9BQU8sRUFBRTtJQUNwRixJQUFJQywrQkFBK0IsS0FBSztJQUV4QyxJQUFNQyxnQkFBZ0JMLG1CQUFtQkU7SUFFekMsSUFBSUcsa0JBQWtCLElBQUksRUFBRTtRQUMxQixJQUFNQyxvQkFBb0JDLElBQUFBLGtCQUFlLEVBQUNGLGVBQWVGO1FBRXpELElBQUlHLG1CQUFtQjtZQUNyQkgsUUFBUUssZ0JBQWdCLENBQUNIO1lBRXpCRCwrQkFBK0IsSUFBSTtRQUNyQyxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU9BO0FBQ1QifQ==
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return verifyStatement;
9
+ }
10
+ });
11
+ var _equality = /*#__PURE__*/ _interopRequireDefault(require("../verify/equality"));
12
+ var _type = /*#__PURE__*/ _interopRequireDefault(require("../verify/assertion/type"));
13
+ var _query = require("../utilities/query");
14
+ var _string = require("../utilities/string");
15
+ function _interopRequireDefault(obj) {
16
+ return obj && obj.__esModule ? obj : {
17
+ default: obj
18
+ };
19
+ }
20
+ var equalityNodeQuery = (0, _query.nodeQuery)("/statement/equality!"), typeAssertionNodeQuery = (0, _query.nodeQuery)("/statement/typeAssertion!");
21
+ function verifyStatement(statementNode, context) {
22
+ var statementVerified = false;
23
+ var statementString = (0, _string.nodeAsString)(statementNode);
24
+ context.debug("Verifying the '".concat(statementString, "' statement..."));
25
+ var equalityNode = equalityNodeQuery(statementNode), typeAssertionNode = typeAssertionNodeQuery(statementNode);
26
+ if (false) {
27
+ ///
28
+ } else if (equalityNode !== null) {
29
+ var equalityVerified = (0, _equality.default)(equalityNode, context);
30
+ statementVerified = equalityVerified; ///
31
+ } else if (typeAssertionNode !== null) {
32
+ var typeAssertionVerified = (0, _type.default)(typeAssertionNode, context);
33
+ statementVerified = typeAssertionVerified; ///
34
+ } else {
35
+ debugger;
36
+ }
37
+ if (statementVerified) {
38
+ context.info("Verified the '".concat(statementString, "' statement."));
39
+ }
40
+ return statementVerified;
41
+ }
42
+
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5RXF1YWxpdHkgZnJvbSBcIi4uL3ZlcmlmeS9lcXVhbGl0eVwiO1xuaW1wb3J0IHZlcmlmeVR5cGVBc3NlcnRpb24gZnJvbSBcIi4uL3ZlcmlmeS9hc3NlcnRpb24vdHlwZVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBub2RlQXNTdHJpbmcgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5jb25zdCBlcXVhbGl0eU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQvZXF1YWxpdHkhXCIpLFxuICAgICAgdHlwZUFzc2VydGlvbk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQvdHlwZUFzc2VydGlvbiFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlLCBjb250ZXh0KSB7XG4gIGxldCBzdGF0ZW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IHN0YXRlbWVudFN0cmluZyA9IG5vZGVBc1N0cmluZyhzdGF0ZW1lbnROb2RlKTtcblxuICBjb250ZXh0LmRlYnVnKGBWZXJpZnlpbmcgdGhlICcke3N0YXRlbWVudFN0cmluZ30nIHN0YXRlbWVudC4uLmApO1xuXG4gIGNvbnN0IGVxdWFsaXR5Tm9kZSA9IGVxdWFsaXR5Tm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGUpLFxuICAgICAgICB0eXBlQXNzZXJ0aW9uTm9kZSA9IHR5cGVBc3NlcnRpb25Ob2RlUXVlcnkoc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKGZhbHNlKSB7XG4gICAgLy8vXG4gIH0gZWxzZSBpZiAoZXF1YWxpdHlOb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgZXF1YWxpdHlWZXJpZmllZCA9IHZlcmlmeUVxdWFsaXR5KGVxdWFsaXR5Tm9kZSwgY29udGV4dCk7XG5cbiAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IGVxdWFsaXR5VmVyaWZpZWQ7IC8vL1xuICB9IGVsc2UgaWYgKHR5cGVBc3NlcnRpb25Ob2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgdHlwZUFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5VHlwZUFzc2VydGlvbih0eXBlQXNzZXJ0aW9uTm9kZSwgY29udGV4dCk7XG5cbiAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IHR5cGVBc3NlcnRpb25WZXJpZmllZDsgLy8vXG4gIH0gZWxzZSB7XG4gICAgZGVidWdnZXJcbiAgfVxuXG4gIGlmIChzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgIGNvbnRleHQuaW5mbyhgVmVyaWZpZWQgdGhlICcke3N0YXRlbWVudFN0cmluZ30nIHN0YXRlbWVudC5gKTtcbiAgfVxuXG4gIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGF0ZW1lbnQiLCJlcXVhbGl0eU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInR5cGVBc3NlcnRpb25Ob2RlUXVlcnkiLCJzdGF0ZW1lbnROb2RlIiwiY29udGV4dCIsInN0YXRlbWVudFZlcmlmaWVkIiwic3RhdGVtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwiZGVidWciLCJlcXVhbGl0eU5vZGUiLCJ0eXBlQXNzZXJ0aW9uTm9kZSIsImVxdWFsaXR5VmVyaWZpZWQiLCJ2ZXJpZnlFcXVhbGl0eSIsInR5cGVBc3NlcnRpb25WZXJpZmllZCIsInZlcmlmeVR5cGVBc3NlcnRpb24iLCJpbmZvIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFXQTs7O2VBQXdCQTs7OzZEQVRHO3lEQUNLO3FCQUVOO3NCQUNHOzs7Ozs7QUFFN0IsSUFBTUMsb0JBQW9CQyxJQUFBQSxnQkFBUyxFQUFDLHlCQUM5QkMseUJBQXlCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRTFCLFNBQVNGLGdCQUFnQkksYUFBYSxFQUFFQyxPQUFPLEVBQUU7SUFDOUQsSUFBSUMsb0JBQW9CLEtBQUs7SUFFN0IsSUFBTUMsa0JBQWtCQyxJQUFBQSxvQkFBWSxFQUFDSjtJQUVyQ0MsUUFBUUksS0FBSyxDQUFDLEFBQUMsa0JBQWlDLE9BQWhCRixpQkFBZ0I7SUFFaEQsSUFBTUcsZUFBZVQsa0JBQWtCRyxnQkFDakNPLG9CQUFvQlIsdUJBQXVCQztJQUVqRCxJQUFJLEtBQUssRUFBRTtJQUNULEdBQUc7SUFDTCxPQUFPLElBQUlNLGlCQUFpQixJQUFJLEVBQUU7UUFDaEMsSUFBTUUsbUJBQW1CQyxJQUFBQSxpQkFBYyxFQUFDSCxjQUFjTDtRQUV0REMsb0JBQW9CTSxrQkFBa0IsR0FBRztJQUMzQyxPQUFPLElBQUlELHNCQUFzQixJQUFJLEVBQUU7UUFDckMsSUFBTUcsd0JBQXdCQyxJQUFBQSxhQUFtQixFQUFDSixtQkFBbUJOO1FBRXJFQyxvQkFBb0JRLHVCQUF1QixHQUFHO0lBQ2hELE9BQU87UUFDTCxRQUFRO0lBQ1YsQ0FBQztJQUVELElBQUlSLG1CQUFtQjtRQUNyQkQsUUFBUVcsSUFBSSxDQUFDLEFBQUMsaUJBQWdDLE9BQWhCVCxpQkFBZ0I7SUFDaEQsQ0FBQztJQUVELE9BQU9EO0FBQ1QifQ==