@magic-xpa/gui 4.800.0-dev480.94 → 4.801.0-dev000.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/{esm2015/index.js → esm2020/index.mjs} +0 -0
  2. package/{esm2015/magic-xpa-gui.js → esm2020/magic-xpa-gui.mjs} +0 -0
  3. package/esm2020/src/Commands.mjs +186 -0
  4. package/esm2020/src/Events.mjs +420 -0
  5. package/esm2020/src/EventsProcessor.mjs +67 -0
  6. package/esm2020/src/FocusManager.mjs +34 -0
  7. package/{esm2015/src/GuiConstants.js → esm2020/src/GuiConstants.mjs} +0 -0
  8. package/{esm2015/src/GuiEnums.js → esm2020/src/GuiEnums.mjs} +126 -127
  9. package/{esm2015/src/GuiEnvironment.js → esm2020/src/GuiEnvironment.mjs} +0 -0
  10. package/{esm2015/src/IFlowMonitorQueue.js → esm2020/src/IFlowMonitorQueue.mjs} +2 -1
  11. package/esm2020/src/Manager.mjs +192 -0
  12. package/{esm2015/src/UIBridge.js → esm2020/src/UIBridge.mjs} +0 -0
  13. package/{esm2015/src/env/IEnvironment.js → esm2020/src/env/IEnvironment.mjs} +2 -1
  14. package/{esm2015/src/gui/ControlBase.js → esm2020/src/gui/ControlBase.mjs} +0 -0
  15. package/{esm2015/src/gui/GuiMgControl.js → esm2020/src/gui/GuiMgControl.mjs} +0 -0
  16. package/{esm2015/src/gui/GuiMgForm.js → esm2020/src/gui/GuiMgForm.mjs} +0 -0
  17. package/{esm2015/src/gui/KeyboardItem.js → esm2020/src/gui/KeyboardItem.mjs} +0 -0
  18. package/{esm2015/src/gui/LastFocusedVal.js → esm2020/src/gui/LastFocusedVal.mjs} +0 -0
  19. package/{esm2015/src/gui/MgValue.js → esm2020/src/gui/MgValue.mjs} +0 -0
  20. package/{esm2015/src/gui/PropParentInterface.js → esm2020/src/gui/PropParentInterface.mjs} +1 -0
  21. package/{esm2015/src/gui/low/DialogHandler.js → esm2020/src/gui/low/DialogHandler.mjs} +0 -0
  22. package/{esm2015/src/gui/low/GuiCommand.js → esm2020/src/gui/low/GuiCommand.mjs} +0 -0
  23. package/{esm2015/src/gui/low/GuiCommandQueue.js → esm2020/src/gui/low/GuiCommandQueue.mjs} +0 -0
  24. package/esm2020/src/gui/low/GuiInteractive.mjs +545 -0
  25. package/esm2020/src/gui/low/Style.mjs +47 -0
  26. package/esm2020/src/management/RuntimeContextBase.mjs +52 -0
  27. package/{esm2015/src/management/data/BlobType.js → esm2020/src/management/data/BlobType.mjs} +0 -0
  28. package/esm2020/src/management/data/DcValues.mjs +214 -0
  29. package/esm2020/src/management/data/DcValuesBuilderBase.mjs +97 -0
  30. package/{esm2015/src/management/data/FieldDef.js → esm2020/src/management/data/FieldDef.mjs} +0 -0
  31. package/{esm2015/src/management/data/FieldsTable.js → esm2020/src/management/data/FieldsTable.mjs} +0 -0
  32. package/esm2020/src/management/data/GuiDataViewBase.mjs +90 -0
  33. package/esm2020/src/management/data/GuiFieldBase.mjs +82 -0
  34. package/{esm2015/src/management/data/IRecord.js → esm2020/src/management/data/IRecord.mjs} +1 -0
  35. package/{esm2015/src/management/data/IReferencedObject.js → esm2020/src/management/data/IReferencedObject.mjs} +1 -0
  36. package/{esm2015/src/management/data/NUM_TYPE.js → esm2020/src/management/data/NUM_TYPE.mjs} +0 -0
  37. package/esm2020/src/management/data/ObjectReferenceBase.mjs +48 -0
  38. package/{esm2015/src/management/data/ObjectReferencesCollection.js → esm2020/src/management/data/ObjectReferencesCollection.mjs} +0 -0
  39. package/esm2020/src/management/data/RecordUtils.mjs +361 -0
  40. package/{esm2015/src/management/data/VectorType.js → esm2020/src/management/data/VectorType.mjs} +0 -0
  41. package/{esm2015/src/management/data/VectorTypeBase.js → esm2020/src/management/data/VectorTypeBase.mjs} +0 -0
  42. package/{esm2015/src/management/events/IActionManager.js → esm2020/src/management/events/IActionManager.mjs} +1 -0
  43. package/esm2020/src/management/events/IGuiEventsManager.mjs +2 -0
  44. package/{esm2015/src/management/exp/ExpressionInterface.js → esm2020/src/management/exp/ExpressionInterface.mjs} +2 -1
  45. package/esm2020/src/management/exp/GuiExpressionEvaluator.mjs +333 -0
  46. package/{esm2015/src/management/gui/ControlTable.js → esm2020/src/management/gui/ControlTable.mjs} +0 -0
  47. package/esm2020/src/management/gui/DisplayConvertor.mjs +1706 -0
  48. package/esm2020/src/management/gui/FieldValidator.mjs +1507 -0
  49. package/esm2020/src/management/gui/GuiControlPropertyAdapter.mjs +22 -0
  50. package/{esm2015/src/management/gui/GuiFormPropertyAdapter.js → esm2020/src/management/gui/GuiFormPropertyAdapter.mjs} +0 -0
  51. package/{esm2015/src/management/gui/HebrewDate.js → esm2020/src/management/gui/HebrewDate.mjs} +0 -0
  52. package/{esm2015/src/management/gui/Helps.js → esm2020/src/management/gui/Helps.mjs} +0 -0
  53. package/esm2020/src/management/gui/MgControlBase.mjs +1873 -0
  54. package/esm2020/src/management/gui/MgFormBase.mjs +748 -0
  55. package/esm2020/src/management/gui/PIC.mjs +1178 -0
  56. package/esm2020/src/management/gui/PropDefaults.mjs +230 -0
  57. package/{esm2015/src/management/gui/PropInterface.js → esm2020/src/management/gui/PropInterface.mjs} +2 -4
  58. package/esm2020/src/management/gui/PropTable.mjs +221 -0
  59. package/esm2020/src/management/gui/Property.mjs +1382 -0
  60. package/{esm2015/src/management/gui/ValidationDetails.js → esm2020/src/management/gui/ValidationDetails.mjs} +0 -0
  61. package/{esm2015/src/management/gui/ValidationDetailsBase.js → esm2020/src/management/gui/ValidationDetailsBase.mjs} +0 -0
  62. package/{esm2015/src/management/gui/WrongFormatException.js → esm2020/src/management/gui/WrongFormatException.mjs} +0 -0
  63. package/{esm2015/src/management/tasks/GuiDataCollection.js → esm2020/src/management/tasks/GuiDataCollection.mjs} +0 -0
  64. package/esm2020/src/management/tasks/GuiTaskBase.mjs +502 -0
  65. package/{esm2015/src/management/tasks/IMGDataTable.js → esm2020/src/management/tasks/IMGDataTable.mjs} +1 -0
  66. package/{esm2015/src/management/tasks/ITask.js → esm2020/src/management/tasks/ITask.mjs} +1 -0
  67. package/esm2020/src/management/tasks/MgTimer.mjs +21 -0
  68. package/esm2020/src/management/tasks/TaskDefinitionId.mjs +54 -0
  69. package/esm2020/src/management/tasks/TaskDefinitionIdTableSaxHandler.mjs +41 -0
  70. package/{esm2015/src/util/AuthenticationDialogHandler.js → esm2020/src/util/AuthenticationDialogHandler.mjs} +0 -0
  71. package/{esm2015/src/util/MemoryUtil.js → esm2020/src/util/MemoryUtil.mjs} +0 -0
  72. package/{esm2015/src/util/ObjectReference.js → esm2020/src/util/ObjectReference.mjs} +0 -0
  73. package/esm2020/src/util/ProcessLauncher.mjs +32 -0
  74. package/esm2020/src/util/UsernamePasswordCredentials.mjs +52 -0
  75. package/fesm2015/{magic-xpa-gui.js → magic-xpa-gui.mjs} +305 -365
  76. package/fesm2015/magic-xpa-gui.mjs.map +1 -0
  77. package/fesm2020/magic-xpa-gui.mjs +17805 -0
  78. package/fesm2020/magic-xpa-gui.mjs.map +1 -0
  79. package/package.json +27 -14
  80. package/src/Commands.d.ts +1 -0
  81. package/src/Events.d.ts +2 -2
  82. package/src/EventsProcessor.d.ts +1 -1
  83. package/src/GuiEnums.d.ts +125 -126
  84. package/src/IFlowMonitorQueue.d.ts +1 -1
  85. package/src/Manager.d.ts +2 -3
  86. package/src/env/IEnvironment.d.ts +1 -0
  87. package/src/gui/low/GuiInteractive.d.ts +3 -1
  88. package/src/gui/low/Style.d.ts +0 -3
  89. package/src/management/RuntimeContextBase.d.ts +2 -0
  90. package/src/management/data/DcValues.d.ts +1 -1
  91. package/src/management/data/DcValuesBuilderBase.d.ts +1 -1
  92. package/src/management/data/RecordUtils.d.ts +0 -3
  93. package/src/management/events/IGuiEventsManager.d.ts +5 -5
  94. package/src/management/exp/ExpressionInterface.d.ts +1 -0
  95. package/src/management/exp/GuiExpressionEvaluator.d.ts +2 -2
  96. package/src/management/gui/DisplayConvertor.d.ts +6 -6
  97. package/src/management/gui/GuiControlPropertyAdapter.d.ts +6 -6
  98. package/src/management/gui/MgControlBase.d.ts +4 -5
  99. package/src/management/gui/MgFormBase.d.ts +1 -1
  100. package/src/management/gui/PropInterface.d.ts +2 -4
  101. package/src/management/gui/PropTable.d.ts +1 -1
  102. package/src/management/gui/Property.d.ts +3 -3
  103. package/src/management/tasks/GuiTaskBase.d.ts +3 -8
  104. package/src/management/tasks/TaskDefinitionId.d.ts +1 -0
  105. package/src/util/ProcessLauncher.d.ts +1 -3
  106. package/bundles/magic-xpa-gui.umd.js +0 -19459
  107. package/bundles/magic-xpa-gui.umd.js.map +0 -1
  108. package/bundles/magic-xpa-gui.umd.min.js +0 -16
  109. package/bundles/magic-xpa-gui.umd.min.js.map +0 -1
  110. package/esm2015/src/Commands.js +0 -185
  111. package/esm2015/src/Events.js +0 -420
  112. package/esm2015/src/EventsProcessor.js +0 -68
  113. package/esm2015/src/FocusManager.js +0 -41
  114. package/esm2015/src/Manager.js +0 -197
  115. package/esm2015/src/gui/low/GuiInteractive.js +0 -539
  116. package/esm2015/src/gui/low/Style.js +0 -50
  117. package/esm2015/src/management/RuntimeContextBase.js +0 -50
  118. package/esm2015/src/management/data/DcValues.js +0 -214
  119. package/esm2015/src/management/data/DcValuesBuilderBase.js +0 -97
  120. package/esm2015/src/management/data/GuiDataViewBase.js +0 -90
  121. package/esm2015/src/management/data/GuiFieldBase.js +0 -85
  122. package/esm2015/src/management/data/ObjectReferenceBase.js +0 -48
  123. package/esm2015/src/management/data/RecordUtils.js +0 -447
  124. package/esm2015/src/management/events/IGuiEventsManager.js +0 -1
  125. package/esm2015/src/management/exp/GuiExpressionEvaluator.js +0 -333
  126. package/esm2015/src/management/gui/DisplayConvertor.js +0 -1706
  127. package/esm2015/src/management/gui/FieldValidator.js +0 -1507
  128. package/esm2015/src/management/gui/GuiControlPropertyAdapter.js +0 -4
  129. package/esm2015/src/management/gui/MgControlBase.js +0 -1979
  130. package/esm2015/src/management/gui/MgFormBase.js +0 -763
  131. package/esm2015/src/management/gui/PIC.js +0 -1176
  132. package/esm2015/src/management/gui/PropDefaults.js +0 -232
  133. package/esm2015/src/management/gui/PropTable.js +0 -224
  134. package/esm2015/src/management/gui/Property.js +0 -1409
  135. package/esm2015/src/management/tasks/GuiTaskBase.js +0 -533
  136. package/esm2015/src/management/tasks/MgTimer.js +0 -21
  137. package/esm2015/src/management/tasks/TaskDefinitionId.js +0 -47
  138. package/esm2015/src/management/tasks/TaskDefinitionIdTableSaxHandler.js +0 -41
  139. package/esm2015/src/util/ProcessLauncher.js +0 -32
  140. package/esm2015/src/util/UsernamePasswordCredentials.js +0 -52
  141. package/fesm2015/magic-xpa-gui.js.map +0 -1
@@ -0,0 +1,21 @@
1
+ import { timer } from "rxjs";
2
+ import { Events } from "../../Events";
3
+ export class MgTimer {
4
+ constructor(timerIntervalMilliSeconds) {
5
+ this._timerIntervalMilliSeconds = 0;
6
+ this._threadTimer = null;
7
+ this._timerIntervalMilliSeconds = timerIntervalMilliSeconds;
8
+ }
9
+ static Run(state) {
10
+ Events.OnTimer(state);
11
+ }
12
+ Start() {
13
+ var timer1 = timer(this._timerIntervalMilliSeconds, this._timerIntervalMilliSeconds);
14
+ this._threadTimer = timer1.subscribe(() => MgTimer.Run(this));
15
+ }
16
+ Stop() {
17
+ this._threadTimer.unsubscribe();
18
+ this._threadTimer = null;
19
+ }
20
+ }
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWdUaW1lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvbWFuYWdlbWVudC90YXNrcy9NZ1RpbWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBZSxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUdwQyxNQUFNLE9BQWdCLE9BQU87SUFRM0IsWUFBWSx5QkFBaUM7UUFObkMsK0JBQTBCLEdBQVcsQ0FBQyxDQUFDO1FBQ3pDLGlCQUFZLEdBQWlCLElBQUksQ0FBQztRQU14QyxJQUFJLENBQUMsMEJBQTBCLEdBQUcseUJBQXlCLENBQUM7SUFDOUQsQ0FBQztJQUtELE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBVTtRQUNuQixNQUFNLENBQUMsT0FBTyxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFLRCxLQUFLO1FBQ0YsSUFBSSxNQUFNLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQywwQkFBMEIsRUFBRSxJQUFJLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUNyRixJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFJRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztJQUMzQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHN1bW1hcnk+XHJcbi8vLyBUaGlzIGNsYXNzIGFjdHMgYXMgYmFzZSBjbGFzcyBmb3IgdGhlIHRpbWVycyBpbXBsZW1lbnRlZCBpbiBSQyBhbmQgTWVybGluLlxyXG4vLy8gPC9zdW1tYXJ5PlxyXG5pbXBvcnQge1N1YnNjcmlwdGlvbiwgdGltZXJ9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7RXZlbnRzfSBmcm9tIFwiLi4vLi4vRXZlbnRzXCI7XHJcblxyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1nVGltZXIge1xyXG4gIC8vIG1lbWJlciB2YXJpYWJsZXMuXHJcbiAgcHJvdGVjdGVkIF90aW1lckludGVydmFsTWlsbGlTZWNvbmRzOiBudW1iZXIgPSAwO1xyXG4gIHByaXZhdGUgX3RocmVhZFRpbWVyOiBTdWJzY3JpcHRpb24gPSBudWxsO1xyXG5cclxuICAvLy88c3VtbWFyeT5Db25zdHJ1Y3Rvcjwvc3VtbWFyeT5cclxuICAvLy88cGFyYW0gbmFtZT1cInRpbWVySW50ZXJ2YWxNaWxsaVNlY29uZHNcIj5UaW1lciBJbnRlcnZhbCBpbiBtaWxsaXNlY29uZHNcclxuICAvLy88L3BhcmFtPlxyXG4gIGNvbnN0cnVjdG9yKHRpbWVySW50ZXJ2YWxNaWxsaVNlY29uZHM6IG51bWJlcikge1xyXG4gICAgdGhpcy5fdGltZXJJbnRlcnZhbE1pbGxpU2Vjb25kcyA9IHRpbWVySW50ZXJ2YWxNaWxsaVNlY29uZHM7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+Q2FsbCBiYWNrIG1ldGhvZCBvZiB0aHJlYWRpbmcgdGltZXIuXHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwic3RhdGVcIj48L3BhcmFtPlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgc3RhdGljIFJ1bihzdGF0ZTogYW55KTogdm9pZCB7XHJcbiAgICBFdmVudHMuT25UaW1lcig8TWdUaW1lcj5zdGF0ZSk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIFN0YXJ0cyB0aGUgdGltZXIgdGhyZWFkIHdpdGggdGhlIGludGVydmFsIHBhc3NlZCBpbiBtaWxsaXNlY29uZHMuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBTdGFydCgpOiB2b2lkIHtcclxuICAgICB2YXIgdGltZXIxID0gdGltZXIodGhpcy5fdGltZXJJbnRlcnZhbE1pbGxpU2Vjb25kcywgdGhpcy5fdGltZXJJbnRlcnZhbE1pbGxpU2Vjb25kcyk7XHJcbiAgICAgdGhpcy5fdGhyZWFkVGltZXIgPSB0aW1lcjEuc3Vic2NyaWJlKCgpID0+IE1nVGltZXIuUnVuKHRoaXMpKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5TdG9wcyB0aGUgdGhyZWFkLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgU3RvcCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3RocmVhZFRpbWVyLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLl90aHJlYWRUaW1lciA9IG51bGw7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,54 @@
1
+ import { NString } from "@magic-xpa/mscorelib";
2
+ export class TaskDefinitionId {
3
+ constructor(ctlIndex, programIsn, taskIsn, isProgram) {
4
+ this.CtlIndex = 0;
5
+ this.ProgramIsn = 0;
6
+ this.TaskIsn = 0;
7
+ this.IsProgram = false;
8
+ if (arguments.length === 4)
9
+ this.constructor_0(ctlIndex, programIsn, taskIsn, isProgram);
10
+ else
11
+ this.constructor_1();
12
+ }
13
+ constructor_0(ctlIndex, programIsn, taskIsn, isProgram) {
14
+ this.CtlIndex = ctlIndex;
15
+ this.ProgramIsn = programIsn;
16
+ this.IsProgram = isProgram;
17
+ this.TaskIsn = (isProgram ? 0 : taskIsn);
18
+ }
19
+ constructor_1() {
20
+ }
21
+ IsMainProgram() {
22
+ return this.IsProgram && this.ProgramIsn === 1;
23
+ }
24
+ Equals(obj) {
25
+ if (obj === null || !(obj instanceof TaskDefinitionId))
26
+ return false;
27
+ return this.GetHashCode() === obj.GetHashCode();
28
+ }
29
+ GetHashCode() {
30
+ let strHashCode = this.HashCodeString();
31
+ return NString.GetHashCode(strHashCode);
32
+ }
33
+ HashCodeString() {
34
+ let strHashCode = this.CtlIndex + "." + this.IsProgram + "." + this.ProgramIsn + "." + this.TaskIsn;
35
+ return strHashCode;
36
+ }
37
+ toString() {
38
+ return NString.Format("{{Task ID: {0} ctl {1}/prg {2}{3} (hash: {4})}}", [
39
+ this.IsProgram ? "Program" : "Task",
40
+ this.CtlIndex,
41
+ this.ProgramIsn,
42
+ this.IsProgram ? "" : NString.Format(" Task {0}", this.TaskIsn),
43
+ this.HashCodeString()
44
+ ]);
45
+ }
46
+ fromJSON(jsonStr) {
47
+ let obj = JSON.parse(jsonStr);
48
+ this.CtlIndex = obj.CtlIndex;
49
+ this.ProgramIsn = obj.ProgramIsn;
50
+ this.TaskIsn = obj.TaskIsn;
51
+ this.IsProgram = obj.IsProgram;
52
+ }
53
+ }
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza0RlZmluaXRpb25JZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvbWFuYWdlbWVudC90YXNrcy9UYXNrRGVmaW5pdGlvbklkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUU3QyxNQUFNLE9BQU8sZ0JBQWdCO0lBZ0IzQixZQUFZLFFBQWlCLEVBQUUsVUFBbUIsRUFBRSxPQUFnQixFQUFFLFNBQW1CO1FBZHpGLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFDckIsZUFBVSxHQUFXLENBQUMsQ0FBQztRQUN2QixZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFZekIsSUFBSSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUM7WUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQzs7WUFFN0QsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxhQUFhLENBQUMsUUFBZ0IsRUFBRSxVQUFrQixFQUFFLE9BQWUsRUFBRSxTQUFrQjtRQUM3RixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRzNDLENBQUM7SUFFTyxhQUFhO0lBQ3JCLENBQUM7SUFNRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFPRCxNQUFNLENBQUMsR0FBUTtRQUNiLElBQUksR0FBRyxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsR0FBRyxZQUFZLGdCQUFnQixDQUFDO1lBQ3BELE9BQU8sS0FBSyxDQUFDO1FBQ2YsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFNRCxXQUFXO1FBQ1QsSUFBSSxXQUFXLEdBQVcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ2hELE9BQU8sT0FBTyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBTU8sY0FBYztRQUNwQixJQUFJLFdBQVcsR0FBVyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQzVHLE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLGlEQUFpRCxFQUFFO1lBQ3ZFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTTtZQUNuQyxJQUFJLENBQUMsUUFBUTtZQUNiLElBQUksQ0FBQyxVQUFVO1lBQ2YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQy9ELElBQUksQ0FBQyxjQUFjLEVBQUU7U0FDdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdELFFBQVEsQ0FBQyxPQUFjO1FBQ3JCLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBc0IsR0FBSSxDQUFDLFFBQVEsQ0FBQztRQUNqRCxJQUFJLENBQUMsVUFBVSxHQUF1QixHQUFJLENBQUMsVUFBVSxDQUFDO1FBQ3RELElBQUksQ0FBQyxPQUFPLEdBQXVCLEdBQUksQ0FBQyxPQUFPLENBQUM7UUFDaEQsSUFBSSxDQUFDLFNBQVMsR0FBdUIsR0FBSSxDQUFDLFNBQVMsQ0FBQztJQUV0RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05TdHJpbmd9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFRhc2tEZWZpbml0aW9uSWQge1xyXG5cclxuICBDdGxJbmRleDogbnVtYmVyID0gMDtcclxuICBQcm9ncmFtSXNuOiBudW1iZXIgPSAwO1xyXG4gIFRhc2tJc246IG51bWJlciA9IDA7XHJcbiAgSXNQcm9ncmFtOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gQ1RPUlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiY3RsSW5kZXhcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInByb2dyYW1Jc25cIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInRhc2tJc25cIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImlzUHJvZ3JhbVwiPjwvcGFyYVxyXG4gIGNvbnN0cnVjdG9yKGN0bEluZGV4OiBudW1iZXIsIHByb2dyYW1Jc246IG51bWJlciwgdGFza0lzbjogbnVtYmVyLCBpc1Byb2dyYW06IGJvb2xlYW4pO1xyXG4gIGNvbnN0cnVjdG9yKCk7XHJcbiAgY29uc3RydWN0b3IoY3RsSW5kZXg/OiBudW1iZXIsIHByb2dyYW1Jc24/OiBudW1iZXIsIHRhc2tJc24/OiBudW1iZXIsIGlzUHJvZ3JhbT86IGJvb2xlYW4pIHtcclxuICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSA0KVxyXG4gICAgICB0aGlzLmNvbnN0cnVjdG9yXzAoY3RsSW5kZXgsIHByb2dyYW1Jc24sIHRhc2tJc24sIGlzUHJvZ3JhbSk7XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMuY29uc3RydWN0b3JfMSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb25zdHJ1Y3Rvcl8wKGN0bEluZGV4OiBudW1iZXIsIHByb2dyYW1Jc246IG51bWJlciwgdGFza0lzbjogbnVtYmVyLCBpc1Byb2dyYW06IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuQ3RsSW5kZXggPSBjdGxJbmRleDtcclxuICAgIHRoaXMuUHJvZ3JhbUlzbiA9IHByb2dyYW1Jc247XHJcbiAgICB0aGlzLklzUHJvZ3JhbSA9IGlzUHJvZ3JhbTtcclxuICAgIHRoaXMuVGFza0lzbiA9IChpc1Byb2dyYW0gPyAwIDogdGFza0lzbik7XHJcblxyXG5cclxuICB9XHJcblxyXG4gIHByaXZhdGUgY29uc3RydWN0b3JfMSgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gcmV0dXJuIHRydWUgaWYgdGhpcyB0YXNrIGRlZmluaXRpb24gaWQgZGVmaW5lIG1haW4gcHJvZ3JhbVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBJc01haW5Qcm9ncmFtKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuSXNQcm9ncmFtICYmIHRoaXMuUHJvZ3JhbUlzbiA9PT0gMTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm9ialwiPjwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBFcXVhbHMob2JqOiBhbnkpOiBib29sZWFuIHtcclxuICAgIGlmIChvYmogPT09IG51bGwgfHwgIShvYmogaW5zdGFuY2VvZiBUYXNrRGVmaW5pdGlvbklkKSlcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgcmV0dXJuIHRoaXMuR2V0SGFzaENvZGUoKSA9PT0gb2JqLkdldEhhc2hDb2RlKCk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+PC9yZXR1cm5zPlxyXG4gIEdldEhhc2hDb2RlKCk6IG51bWJlciB7XHJcbiAgICBsZXQgc3RySGFzaENvZGU6IHN0cmluZyA9IHRoaXMuSGFzaENvZGVTdHJpbmcoKTtcclxuICAgIHJldHVybiBOU3RyaW5nLkdldEhhc2hDb2RlKHN0ckhhc2hDb2RlKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgcHJpdmF0ZSBIYXNoQ29kZVN0cmluZygpOiBzdHJpbmcge1xyXG4gICAgbGV0IHN0ckhhc2hDb2RlOiBzdHJpbmcgPSB0aGlzLkN0bEluZGV4ICsgXCIuXCIgKyB0aGlzLklzUHJvZ3JhbSArIFwiLlwiICsgdGhpcy5Qcm9ncmFtSXNuICsgXCIuXCIgKyB0aGlzLlRhc2tJc247XHJcbiAgICByZXR1cm4gc3RySGFzaENvZGU7XHJcbiAgfVxyXG5cclxuICB0b1N0cmluZygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIE5TdHJpbmcuRm9ybWF0KFwie3tUYXNrIElEOiB7MH0gY3RsIHsxfS9wcmcgezJ9ezN9IChoYXNoOiB7NH0pfX1cIiwgW1xyXG4gICAgICB0aGlzLklzUHJvZ3JhbSA/IFwiUHJvZ3JhbVwiIDogXCJUYXNrXCIsXHJcbiAgICAgIHRoaXMuQ3RsSW5kZXgsXHJcbiAgICAgIHRoaXMuUHJvZ3JhbUlzbixcclxuICAgICAgdGhpcy5Jc1Byb2dyYW0gPyBcIlwiIDogTlN0cmluZy5Gb3JtYXQoXCIgVGFzayB7MH1cIiwgdGhpcy5UYXNrSXNuKSxcclxuICAgICAgdGhpcy5IYXNoQ29kZVN0cmluZygpXHJcbiAgICBdKTtcclxuICB9XHJcblxyXG5cclxuICBmcm9tSlNPTihqc29uU3RyOnN0cmluZyk6IHZvaWQge1xyXG4gICAgbGV0IG9iaiA9IEpTT04ucGFyc2UoanNvblN0cik7XHJcbiAgICB0aGlzLkN0bEluZGV4ID0gKDxUYXNrRGVmaW5pdGlvbklkPm9iaikuQ3RsSW5kZXg7XHJcbiAgICB0aGlzLlByb2dyYW1Jc24gPSAgKDxUYXNrRGVmaW5pdGlvbklkPm9iaikuUHJvZ3JhbUlzbjtcclxuICAgIHRoaXMuVGFza0lzbiA9ICAoPFRhc2tEZWZpbml0aW9uSWQ+b2JqKS5UYXNrSXNuO1xyXG4gICAgdGhpcy5Jc1Byb2dyYW0gPSAgKDxUYXNrRGVmaW5pdGlvbklkPm9iaikuSXNQcm9ncmFtO1xyXG5cclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,41 @@
1
+ import { JSON_Utils, XMLConstants } from "@magic-xpa/utils";
2
+ import { TaskDefinitionId } from "./TaskDefinitionId";
3
+ import { Events } from "../../Events";
4
+ import { isNullOrUndefined } from "@magic-xpa/mscorelib";
5
+ export class TaskDefinitionIdTableSaxHandler {
6
+ constructor(newTaskDefintionIdHandler) {
7
+ this._newTaskDefinitionIdHandler = null;
8
+ this._newTaskDefinitionIdHandler = newTaskDefintionIdHandler;
9
+ }
10
+ parse(xmlSerializedTaskDefinitionsTable) {
11
+ try {
12
+ if (xmlSerializedTaskDefinitionsTable !== null) {
13
+ JSON_Utils.JSONFromXML(xmlSerializedTaskDefinitionsTable, this.ParseJSON.bind(this));
14
+ }
15
+ }
16
+ catch (ex) {
17
+ Events.WriteExceptionToLog(ex);
18
+ }
19
+ }
20
+ ParseJSON(error, result) {
21
+ if (error != null) {
22
+ throw error;
23
+ }
24
+ let ctlIndex = 0;
25
+ let isPrg = false;
26
+ let prgIsn = 0;
27
+ let taskIsn = 0;
28
+ let taskDefId = result['taskDefinitionId']['$'];
29
+ if (!isNullOrUndefined(taskDefId[XMLConstants.MG_ATTR_CTL_IDX]))
30
+ ctlIndex = +taskDefId[XMLConstants.MG_ATTR_CTL_IDX];
31
+ if (!isNullOrUndefined(taskDefId[XMLConstants.MG_ATTR_PROGRAM_ISN]))
32
+ prgIsn = +taskDefId[XMLConstants.MG_ATTR_PROGRAM_ISN];
33
+ if (!isNullOrUndefined(taskDefId[XMLConstants.MG_ATTR_TASK_ISN]))
34
+ taskIsn = +taskDefId[XMLConstants.MG_ATTR_TASK_ISN];
35
+ if (!isNullOrUndefined(taskDefId[XMLConstants.MG_ATTR_ISPRG]))
36
+ isPrg = taskDefId[XMLConstants.MG_ATTR_ISPRG] === '1';
37
+ let taskDefinitionId = new TaskDefinitionId(ctlIndex, prgIsn, taskIsn, isPrg);
38
+ this._newTaskDefinitionIdHandler(taskDefinitionId);
39
+ }
40
+ }
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza0RlZmluaXRpb25JZFRhYmxlU2F4SGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvbWFuYWdlbWVudC90YXNrcy9UYXNrRGVmaW5pdGlvbklkVGFibGVTYXhIYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN0QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQU16RCxNQUFNLE9BQU8sK0JBQStCO0lBTTFDLFlBQVkseUJBQXVFO1FBRmxFLGdDQUEyQixHQUFpRCxJQUFJLENBQUM7UUFHaEcsSUFBSSxDQUFDLDJCQUEyQixHQUFHLHlCQUF5QixDQUFDO0lBQy9ELENBQUM7SUFNRCxLQUFLLENBQUUsaUNBQXlDO1FBQzlDLElBQUk7WUFDRixJQUFJLGlDQUFpQyxLQUFLLElBQUksRUFBRTtnQkFDOUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxpQ0FBaUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2FBQ3RGO1NBQ0Y7UUFDRCxPQUFPLEVBQUUsRUFBRTtZQUNULE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNoQztJQUNILENBQUM7SUFFTyxTQUFTLENBQUUsS0FBSyxFQUFFLE1BQU07UUFHOUIsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFO1lBQ2pCLE1BQU0sS0FBSyxDQUFDO1NBQ2I7UUFFRCxJQUFJLFFBQVEsR0FBVyxDQUFDLENBQUM7UUFDekIsSUFBSSxLQUFLLEdBQVksS0FBSyxDQUFDO1FBQzNCLElBQUksTUFBTSxHQUFXLENBQUMsQ0FBQztRQUN2QixJQUFJLE9BQU8sR0FBVyxDQUFDLENBQUM7UUFFeEIsSUFBSSxTQUFTLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFaEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDN0QsUUFBUSxHQUFHLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUV0RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQ2pFLE1BQU0sR0FBRyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUV4RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQzlELE9BQU8sR0FBRyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUV0RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUMzRCxLQUFLLEdBQUcsU0FBUyxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLENBQUM7UUFFeEQsSUFBSSxnQkFBZ0IsR0FBcUIsSUFBSSxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNoRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNyRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBKU09OX1V0aWxzLCBYTUxDb25zdGFudHMgfSBmcm9tIFwiQG1hZ2ljLXhwYS91dGlsc1wiO1xyXG5pbXBvcnQgeyBUYXNrRGVmaW5pdGlvbklkIH0gZnJvbSBcIi4vVGFza0RlZmluaXRpb25JZFwiO1xyXG5pbXBvcnQgeyBFdmVudHMgfSBmcm9tIFwiLi4vLi4vRXZlbnRzXCI7XHJcbmltcG9ydCB7IGlzTnVsbE9yVW5kZWZpbmVkIH0gZnJvbSBcIkBtYWdpYy14cGEvbXNjb3JlbGliXCI7XHJcblxyXG4vLy8gPHN1bW1hcnk+XHJcbi8vLyBIYW5kbGVyIGZvciBwYXJzaW5nIFhNTCBzZXJpYWxpemVkIFRhc2tEZWZpbml0aW9uSWQgKFRESUQpIHRhYmxlLiBUaGUgcGFyc2VyIHdpbGwgcGFyc2UgYWxsXHJcbi8vLyBURElEIGVudHJpZXMsIGludm9raW5nIGFuIGFzc2lnbmVkIGRlbGVnYXRlIGZvciBlYWNoIG9uZSBpdCBwYXJzZXMuXHJcbi8vLyA8L3N1bW1hcnk+XHJcbmV4cG9ydCBjbGFzcyBUYXNrRGVmaW5pdGlvbklkVGFibGVTYXhIYW5kbGVyIHtcclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIEhhbmRsZXIgdG8gYmUgaW52b2tlZCBhZnRlciBwYXJzaW5nIGVhY2ggVERJRCBlbnRyeS5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX25ld1Rhc2tEZWZpbml0aW9uSWRIYW5kbGVyOiAodGFza0RlZmluaXRpb25JZDogVGFza0RlZmluaXRpb25JZCkgPT4gdm9pZCA9IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKG5ld1Rhc2tEZWZpbnRpb25JZEhhbmRsZXI6ICh0YXNrRGVmaW5pdGlvbklkOiBUYXNrRGVmaW5pdGlvbklkKSA9PiB2b2lkKSB7XHJcbiAgICB0aGlzLl9uZXdUYXNrRGVmaW5pdGlvbklkSGFuZGxlciA9IG5ld1Rhc2tEZWZpbnRpb25JZEhhbmRsZXI7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIHBhcnNlIHRoZSBzdXBwbGllZCBidWZmZXIgdXNpbmcgdGhlIHByZXZpb3VzbHkgc3VwcGxpZWQgaGFuZGxlclxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwieG1sU2VyaWFsaXplZFRhc2tEZWZpbml0aW9uc1RhYmxlXCI+PC9wYXJhbT5cclxuICBwYXJzZSAoeG1sU2VyaWFsaXplZFRhc2tEZWZpbml0aW9uc1RhYmxlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGlmICh4bWxTZXJpYWxpemVkVGFza0RlZmluaXRpb25zVGFibGUgIT09IG51bGwpIHtcclxuICAgICAgICBKU09OX1V0aWxzLkpTT05Gcm9tWE1MKHhtbFNlcmlhbGl6ZWRUYXNrRGVmaW5pdGlvbnNUYWJsZSwgdGhpcy5QYXJzZUpTT04uYmluZCh0aGlzKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGNhdGNoIChleCkge1xyXG4gICAgICBFdmVudHMuV3JpdGVFeGNlcHRpb25Ub0xvZyhleCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIFBhcnNlSlNPTiAoZXJyb3IsIHJlc3VsdCk6IHZvaWQge1xyXG5cclxuICAgIC8vIElmIHRoZXJlIHdhcyBhbiBlcnJvciBpbiBwYXJzaW5nIHRoZSBYTUwsXHJcbiAgICBpZiAoZXJyb3IgIT0gbnVsbCkge1xyXG4gICAgICB0aHJvdyBlcnJvcjtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgY3RsSW5kZXg6IG51bWJlciA9IDA7XHJcbiAgICBsZXQgaXNQcmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGxldCBwcmdJc246IG51bWJlciA9IDA7XHJcbiAgICBsZXQgdGFza0lzbjogbnVtYmVyID0gMDtcclxuXHJcbiAgICBsZXQgdGFza0RlZklkID0gcmVzdWx0Wyd0YXNrRGVmaW5pdGlvbklkJ11bJyQnXTtcclxuXHJcbiAgICBpZiAoIWlzTnVsbE9yVW5kZWZpbmVkKHRhc2tEZWZJZFtYTUxDb25zdGFudHMuTUdfQVRUUl9DVExfSURYXSkpXHJcbiAgICAgIGN0bEluZGV4ID0gK3Rhc2tEZWZJZFtYTUxDb25zdGFudHMuTUdfQVRUUl9DVExfSURYXTtcclxuXHJcbiAgICBpZiAoIWlzTnVsbE9yVW5kZWZpbmVkKHRhc2tEZWZJZFtYTUxDb25zdGFudHMuTUdfQVRUUl9QUk9HUkFNX0lTTl0pKVxyXG4gICAgICBwcmdJc24gPSArdGFza0RlZklkW1hNTENvbnN0YW50cy5NR19BVFRSX1BST0dSQU1fSVNOXTtcclxuXHJcbiAgICBpZiAoIWlzTnVsbE9yVW5kZWZpbmVkKHRhc2tEZWZJZFtYTUxDb25zdGFudHMuTUdfQVRUUl9UQVNLX0lTTl0pKVxyXG4gICAgICB0YXNrSXNuID0gK3Rhc2tEZWZJZFtYTUxDb25zdGFudHMuTUdfQVRUUl9UQVNLX0lTTl07XHJcblxyXG4gICAgaWYgKCFpc051bGxPclVuZGVmaW5lZCh0YXNrRGVmSWRbWE1MQ29uc3RhbnRzLk1HX0FUVFJfSVNQUkddKSlcclxuICAgICAgaXNQcmcgPSB0YXNrRGVmSWRbWE1MQ29uc3RhbnRzLk1HX0FUVFJfSVNQUkddID09PSAnMSc7XHJcblxyXG4gICAgbGV0IHRhc2tEZWZpbml0aW9uSWQ6IFRhc2tEZWZpbml0aW9uSWQgPSBuZXcgVGFza0RlZmluaXRpb25JZChjdGxJbmRleCwgcHJnSXNuLCB0YXNrSXNuLCBpc1ByZyk7XHJcbiAgICB0aGlzLl9uZXdUYXNrRGVmaW5pdGlvbklkSGFuZGxlcih0YXNrRGVmaW5pdGlvbklkKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,32 @@
1
+ export class ProcessLauncher {
2
+ static InvokeOS() {
3
+ return -1;
4
+ }
5
+ static SeparateParams(cmd) {
6
+ const DOUBLE_QUOTE = '"';
7
+ const SPACE_CHAR = ' ';
8
+ let parameters = new Array(2);
9
+ let appName = null;
10
+ let param = null;
11
+ let startIdx = 0;
12
+ let endIdx = -1;
13
+ cmd = cmd.trim();
14
+ if (cmd[startIdx] === DOUBLE_QUOTE) {
15
+ endIdx = cmd.indexOf(DOUBLE_QUOTE, startIdx + 1);
16
+ }
17
+ if (endIdx === -1) {
18
+ endIdx = cmd.indexOf(SPACE_CHAR, startIdx);
19
+ }
20
+ if (endIdx === -1) {
21
+ endIdx = cmd.length - 1;
22
+ }
23
+ appName = cmd.substr(startIdx, endIdx + 1 - startIdx);
24
+ parameters[0] = appName.trim();
25
+ param = cmd.substr(endIdx + 1, cmd.length - (endIdx + 1));
26
+ parameters[1] = param.trim();
27
+ return parameters;
28
+ }
29
+ constructor() {
30
+ }
31
+ }
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvY2Vzc0xhdW5jaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy91dGlsL1Byb2Nlc3NMYXVuY2hlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sZUFBZTtJQVUxQixNQUFNLENBQUMsUUFBUTtRQUNiLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDWixDQUFDO0lBT0QsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFXO1FBRS9CLE1BQU0sWUFBWSxHQUFXLEdBQUcsQ0FBQztRQUNqQyxNQUFNLFVBQVUsR0FBVyxHQUFHLENBQUM7UUFDL0IsSUFBSSxVQUFVLEdBQUcsSUFBSSxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDdEMsSUFBSSxPQUFPLEdBQVcsSUFBSSxDQUFDO1FBQzNCLElBQUksS0FBSyxHQUFXLElBQUksQ0FBQztRQUN6QixJQUFJLFFBQVEsR0FBVyxDQUFDLENBQUM7UUFDekIsSUFBSSxNQUFNLEdBQVcsQ0FBQyxDQUFDLENBQUM7UUFFeEIsR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUdqQixJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxZQUFZLEVBQUU7WUFDbEMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFXLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUMzRDtRQUVELElBQUksTUFBTSxLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQ2pCLE1BQU0sR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBVSxRQUFRLENBQUMsQ0FBQztTQUNwRDtRQUdELElBQUksTUFBTSxLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQ2pCLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztTQUN6QjtRQUdELE9BQU8sR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxNQUFNLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO1FBQ3RELFVBQVUsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7UUFHL0IsS0FBSyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUQsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM3QixPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQ7SUFFQSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgUHJvY2Vzc0xhdW5jaGVyIHtcclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJjb21tYW5kXCI+T3NDb21tYW5kIHRvIGJlIGV4ZWN1dGVkPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcIndhaXRcIj53YWl0IHByb3BlcnR5PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcInNob3dcIj5zaG93IHByb3BlcnR5PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImVyck1zZ1wiPmhvbGQgZXJyb3IgbWVzc2FnZSBzdHJpbmcsIGlmIGNvbW1hbmQgZXhlY3V0aW9uIGZhaWxzLjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJleGl0Q29kZVwiPmV4aXQgY29kZSByZXR1cm5lZCBieSBwcm9jZXNzPC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+dGhpcyByZXR1cm5zIGVycmNvZGUsIGlmIGNvbW1hbmQgZmFpbHMgdG8gZXhlY3V0ZS4gPC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBJbnZva2VPUygpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIC0xO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIFNlcGFyYXRlcyB0aGUgZXhlY3V0YWJsZSBmaWxlIGFuZCBhcmd1bWVudHMgZnJvbSBhIGNvbW1hbmQgc3RyaW5nXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImNtZFwiPnRoZSBjb21tYW5kPC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+cmV0dXJucyBhcmd1bWVudCBsaXN0IHNwZWNpZmllZCBpbiBjb21tYW5kPC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBTZXBhcmF0ZVBhcmFtcyhjbWQ6IHN0cmluZyk6IHN0cmluZ1tdIHtcclxuXHJcbiAgICBjb25zdCBET1VCTEVfUVVPVEU6IHN0cmluZyA9ICdcIic7XHJcbiAgICBjb25zdCBTUEFDRV9DSEFSOiBzdHJpbmcgPSAnICc7XHJcbiAgICBsZXQgcGFyYW1ldGVycyA9IG5ldyBBcnJheTxzdHJpbmc+KDIpO1xyXG4gICAgbGV0IGFwcE5hbWU6IHN0cmluZyA9IG51bGw7XHJcbiAgICBsZXQgcGFyYW06IHN0cmluZyA9IG51bGw7XHJcbiAgICBsZXQgc3RhcnRJZHg6IG51bWJlciA9IDA7XHJcbiAgICBsZXQgZW5kSWR4OiBudW1iZXIgPSAtMTtcclxuXHJcbiAgICBjbWQgPSBjbWQudHJpbSgpO1xyXG5cclxuICAgIC8qIGlmIHRoZSBmaXJzdCBjaGFyIGlzIGRvdWJsZSBxdW90ZSwgbG9vayBmb3IgdGhlIG1hdGNoaW5nIGRvdWJsZSBxdW90ZS4gKi9cclxuICAgIGlmIChjbWRbc3RhcnRJZHhdID09PSBET1VCTEVfUVVPVEUpIHtcclxuICAgICAgZW5kSWR4ID0gY21kLmluZGV4T2YoRE9VQkxFX1FVT1RFICAvKidcIicqLywgc3RhcnRJZHggKyAxKTtcclxuICAgIH1cclxuICAgIC8qIGlmIHRoZXJlIGlzIG5vIGRvdWJsZSBxb3V0ZSwgc2VhcmNoIGZvciB0aGUgZmlyc3Qgc3BhY2UgY2hhcmFjdGVyLiAqL1xyXG4gICAgaWYgKGVuZElkeCA9PT0gLTEpIHtcclxuICAgICAgZW5kSWR4ID0gY21kLmluZGV4T2YoU1BBQ0VfQ0hBUiAvKicgJyovLCBzdGFydElkeCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyogaWYgdGhlcmUgaXMgbm8gc3BhY2UgY2hhciBhcyB3ZWxsLCB0aGlzIG1lYW5zIHRoYXQgd2UgaGF2ZSBvbmx5IG9uZSBwYXJhbS4gKi9cclxuICAgIGlmIChlbmRJZHggPT09IC0xKSB7XHJcbiAgICAgIGVuZElkeCA9IGNtZC5sZW5ndGggLSAxO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJlYWQgdGhlIGFwcGxpY2F0aW9uIG5hbWVcclxuICAgIGFwcE5hbWUgPSBjbWQuc3Vic3RyKHN0YXJ0SWR4LCBlbmRJZHggKyAxIC0gc3RhcnRJZHgpO1xyXG4gICAgcGFyYW1ldGVyc1swXSA9IGFwcE5hbWUudHJpbSgpO1xyXG5cclxuICAgIC8vIFJlYWQgdGhlIGFyZ3VtZW50c1xyXG4gICAgcGFyYW0gPSBjbWQuc3Vic3RyKGVuZElkeCArIDEsIGNtZC5sZW5ndGggLSAoZW5kSWR4ICsgMSkpO1xyXG4gICAgcGFyYW1ldGVyc1sxXSA9IHBhcmFtLnRyaW0oKTtcclxuICAgIHJldHVybiBwYXJhbWV0ZXJzO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcblxyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,52 @@
1
+ import { StringBuilder } from "@magic-xpa/mscorelib";
2
+ export class UsernamePasswordCredentials {
3
+ constructor(userName, password) {
4
+ this.Username = null;
5
+ this.Password = null;
6
+ if (arguments.length === 0) {
7
+ this.constructor_0();
8
+ return;
9
+ }
10
+ this.constructor_1(userName, password);
11
+ }
12
+ constructor_0() {
13
+ }
14
+ constructor_1(userName, password) {
15
+ this.Username = userName;
16
+ this.Password = password;
17
+ }
18
+ toString() {
19
+ let result = new StringBuilder();
20
+ result.Append(this.Username);
21
+ result.Append(":");
22
+ result.Append(this.Password || "null");
23
+ return result.ToString();
24
+ }
25
+ }
26
+ export class ChangePasswordCredentials extends UsernamePasswordCredentials {
27
+ constructor(oldUserName, newUserName, password) {
28
+ super(oldUserName, password);
29
+ this.NewUserName = null;
30
+ this.NewPassword = null;
31
+ if (arguments.length === 0) {
32
+ this.constructor_2();
33
+ return;
34
+ }
35
+ this.constructor_3(newUserName);
36
+ }
37
+ constructor_2() {
38
+ }
39
+ constructor_3(newUserName) {
40
+ this.NewUserName = newUserName;
41
+ }
42
+ ToString() {
43
+ let result = new StringBuilder();
44
+ result.Append(this.Username);
45
+ result.Append(":");
46
+ result.Append(this.NewUserName);
47
+ result.Append(":");
48
+ result.Append(this.Password || "null");
49
+ return result.ToString();
50
+ }
51
+ }
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXNlcm5hbWVQYXNzd29yZENyZWRlbnRpYWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy91dGlsL1VzZXJuYW1lUGFzc3dvcmRDcmVkZW50aWFscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFNbkQsTUFBTSxPQUFPLDJCQUEyQjtJQU10QyxZQUFZLFFBQWlCLEVBQUUsUUFBaUI7UUFMaEQsYUFBUSxHQUFXLElBQUksQ0FBQztRQUN4QixhQUFRLEdBQVcsSUFBSSxDQUFDO1FBS3RCLElBQUksU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDMUIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3JCLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTyxhQUFhO0lBQ3JCLENBQUM7SUFFTyxhQUFhLENBQUMsUUFBZ0IsRUFBRSxRQUFnQjtRQUN0RCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBT0QsUUFBUTtRQUNOLElBQUksTUFBTSxHQUFrQixJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2hELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLE9BQU8sTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyx5QkFBMEIsU0FBUSwyQkFBMkI7SUFNeEUsWUFBWSxXQUFvQixFQUFFLFdBQW9CLEVBQUUsUUFBaUI7UUFDdkUsS0FBSyxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQztRQU4vQixnQkFBVyxHQUFXLElBQUksQ0FBQztRQUMzQixnQkFBVyxHQUFXLElBQUksQ0FBQztRQU16QixJQUFJLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzFCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFTyxhQUFhO0lBRXJCLENBQUM7SUFHTyxhQUFhLENBQUMsV0FBbUI7UUFDdkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLE1BQU0sR0FBa0IsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUNoRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM3QixNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2hDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLE1BQU0sQ0FBQyxDQUFDO1FBRXZDLE9BQU8sTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7U3RyaW5nQnVpbGRlcn0gZnJvbSBcIkBtYWdpYy14cGEvbXNjb3JlbGliXCI7XHJcblxyXG4vLy8gPHN1bW1hcnk+XHJcbi8vL1xyXG4vLy8gPC9zdW1tYXJ5PlxyXG5cclxuZXhwb3J0IGNsYXNzIFVzZXJuYW1lUGFzc3dvcmRDcmVkZW50aWFscyAge1xyXG4gIFVzZXJuYW1lOiBzdHJpbmcgPSBudWxsO1xyXG4gIFBhc3N3b3JkOiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpO1xyXG4gIGNvbnN0cnVjdG9yKHVzZXJOYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpO1xyXG4gIGNvbnN0cnVjdG9yKHVzZXJOYW1lPzogc3RyaW5nLCBwYXNzd29yZD86IHN0cmluZykge1xyXG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDApIHtcclxuICAgICAgdGhpcy5jb25zdHJ1Y3Rvcl8wKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuY29uc3RydWN0b3JfMSh1c2VyTmFtZSwgcGFzc3dvcmQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb25zdHJ1Y3Rvcl8wKCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb25zdHJ1Y3Rvcl8xKHVzZXJOYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuVXNlcm5hbWUgPSB1c2VyTmFtZTtcclxuICAgIHRoaXMuUGFzc3dvcmQgPSBwYXNzd29yZDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gR2V0IHRoaXMgb2JqZWN0IHN0cmluZy5cclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz4gdGhlIHVzZXJuYW1lOnBhc3N3b3JkIGZvcm1lZCBzdHJpbmdcclxuICAvLy8gPC9yZXR1cm5zPlxyXG4gIHRvU3RyaW5nKCk6IHN0cmluZyB7XHJcbiAgICBsZXQgcmVzdWx0OiBTdHJpbmdCdWlsZGVyID0gbmV3IFN0cmluZ0J1aWxkZXIoKTtcclxuICAgIHJlc3VsdC5BcHBlbmQodGhpcy5Vc2VybmFtZSk7XHJcbiAgICByZXN1bHQuQXBwZW5kKFwiOlwiKTtcclxuICAgIHJlc3VsdC5BcHBlbmQodGhpcy5QYXNzd29yZCB8fCBcIm51bGxcIik7XHJcbiAgICByZXR1cm4gcmVzdWx0LlRvU3RyaW5nKCk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQ2hhbmdlUGFzc3dvcmRDcmVkZW50aWFscyBleHRlbmRzIFVzZXJuYW1lUGFzc3dvcmRDcmVkZW50aWFscyB7XHJcbiAgTmV3VXNlck5hbWU6IHN0cmluZyA9IG51bGw7XHJcbiAgTmV3UGFzc3dvcmQ6IHN0cmluZyA9IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCk7XHJcbiAgY29uc3RydWN0b3Iob2xkVXNlck5hbWU6IHN0cmluZywgbmV3VXNlck5hbWU6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZyk7XHJcbiAgY29uc3RydWN0b3Iob2xkVXNlck5hbWU/OiBzdHJpbmcsIG5ld1VzZXJOYW1lPzogc3RyaW5nLCBwYXNzd29yZD86IHN0cmluZykge1xyXG4gICAgc3VwZXIob2xkVXNlck5hbWUsIHBhc3N3b3JkKTtcclxuICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHRoaXMuY29uc3RydWN0b3JfMigpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmNvbnN0cnVjdG9yXzMoIG5ld1VzZXJOYW1lKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY29uc3RydWN0b3JfMigpIHtcclxuXHJcbiAgfVxyXG5cclxuXHJcbiAgcHJpdmF0ZSBjb25zdHJ1Y3Rvcl8zKG5ld1VzZXJOYW1lOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuTmV3VXNlck5hbWUgPSBuZXdVc2VyTmFtZTtcclxuICB9XHJcblxyXG4gIFRvU3RyaW5nKCk6IHN0cmluZyB7XHJcbiAgICBsZXQgcmVzdWx0OiBTdHJpbmdCdWlsZGVyID0gbmV3IFN0cmluZ0J1aWxkZXIoKTtcclxuICAgIHJlc3VsdC5BcHBlbmQodGhpcy5Vc2VybmFtZSk7XHJcbiAgICByZXN1bHQuQXBwZW5kKFwiOlwiKTtcclxuICAgIHJlc3VsdC5BcHBlbmQodGhpcy5OZXdVc2VyTmFtZSk7XHJcbiAgICByZXN1bHQuQXBwZW5kKFwiOlwiKTtcclxuICAgIHJlc3VsdC5BcHBlbmQodGhpcy5QYXNzd29yZCB8fCBcIm51bGxcIik7XHJcblxyXG4gICAgcmV0dXJuIHJlc3VsdC5Ub1N0cmluZygpO1xyXG4gIH1cclxufVxyXG4iXX0=