@magic-xpa/gui 4.1100.0-dev4110.25 → 4.1100.0-dev4110.252

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 (200) hide show
  1. package/{esm2020 → esm2022}/index.mjs +71 -71
  2. package/{esm2020 → esm2022}/magic-xpa-gui.mjs +1 -1
  3. package/esm2022/src/Commands.mjs +184 -0
  4. package/esm2022/src/Events.mjs +425 -0
  5. package/esm2022/src/EventsProcessor.mjs +67 -0
  6. package/esm2022/src/FocusManager.mjs +34 -0
  7. package/esm2022/src/GuiConstants.mjs +68 -0
  8. package/{esm2020 → esm2022}/src/GuiEnums.mjs +299 -299
  9. package/esm2022/src/GuiEnvironment.mjs +4 -0
  10. package/{esm2020 → esm2022}/src/IFlowMonitorQueue.mjs +1 -1
  11. package/{esm2020 → esm2022}/src/Manager.mjs +91 -91
  12. package/esm2022/src/UIBridge.mjs +33 -0
  13. package/{esm2020 → esm2022}/src/env/IEnvironment.mjs +1 -1
  14. package/{esm2020 → esm2022}/src/gui/ControlBase.mjs +2 -2
  15. package/esm2022/src/gui/GuiMgControl.mjs +123 -0
  16. package/{esm2020 → esm2022}/src/gui/GuiMgForm.mjs +3 -3
  17. package/esm2022/src/gui/KeyboardItem.mjs +135 -0
  18. package/esm2022/src/gui/LastFocusedVal.mjs +11 -0
  19. package/esm2022/src/gui/MgValue.mjs +16 -0
  20. package/{esm2020 → esm2022}/src/gui/PropParentInterface.mjs +1 -1
  21. package/{esm2020 → esm2022}/src/gui/low/DialogHandler.mjs +6 -6
  22. package/esm2022/src/gui/low/GuiCommand.mjs +68 -0
  23. package/esm2022/src/gui/low/GuiCommandQueue.mjs +35 -0
  24. package/esm2022/src/gui/low/GuiInteractive.mjs +177 -0
  25. package/esm2022/src/gui/low/Style.mjs +20 -0
  26. package/esm2022/src/management/RuntimeContextBase.mjs +42 -0
  27. package/esm2022/src/management/data/BlobType.mjs +281 -0
  28. package/{esm2020 → esm2022}/src/management/data/DcValues.mjs +214 -214
  29. package/esm2022/src/management/data/DcValuesBuilderBase.mjs +96 -0
  30. package/esm2022/src/management/data/FieldDef.mjs +331 -0
  31. package/esm2022/src/management/data/FieldsTable.mjs +54 -0
  32. package/esm2022/src/management/data/GuiDataViewBase.mjs +88 -0
  33. package/esm2022/src/management/data/GuiFieldBase.mjs +82 -0
  34. package/{esm2020 → esm2022}/src/management/data/IRecord.mjs +1 -1
  35. package/{esm2020 → esm2022}/src/management/data/IReferencedObject.mjs +1 -1
  36. package/esm2022/src/management/data/NUM_TYPE.mjs +1739 -0
  37. package/esm2022/src/management/data/ObjectReferenceBase.mjs +48 -0
  38. package/esm2022/src/management/data/ObjectReferencesCollection.mjs +27 -0
  39. package/esm2022/src/management/data/RecordUtils.mjs +361 -0
  40. package/esm2022/src/management/data/VectorType.mjs +612 -0
  41. package/esm2022/src/management/data/VectorTypeBase.mjs +88 -0
  42. package/{esm2020 → esm2022}/src/management/events/IActionManager.mjs +1 -1
  43. package/{esm2020 → esm2022}/src/management/events/IGuiEventsManager.mjs +1 -1
  44. package/esm2022/src/management/exp/ExpressionInterface.mjs +244 -0
  45. package/{esm2020 → esm2022}/src/management/exp/GuiExpressionEvaluator.mjs +305 -307
  46. package/esm2022/src/management/gui/ControlTable.mjs +118 -0
  47. package/esm2022/src/management/gui/DisplayConvertor.mjs +1649 -0
  48. package/esm2022/src/management/gui/FieldValidator.mjs +711 -0
  49. package/esm2022/src/management/gui/GuiControlPropertyAdapter.mjs +24 -0
  50. package/{esm2020 → esm2022}/src/management/gui/GuiFormPropertyAdapter.mjs +10 -10
  51. package/esm2022/src/management/gui/HebrewDate.mjs +278 -0
  52. package/esm2022/src/management/gui/Helps.mjs +237 -0
  53. package/esm2022/src/management/gui/MgControlBase.mjs +1859 -0
  54. package/esm2022/src/management/gui/MgFormBase.mjs +741 -0
  55. package/esm2022/src/management/gui/PIC.mjs +1185 -0
  56. package/esm2022/src/management/gui/PropDefaults.mjs +230 -0
  57. package/{esm2020 → esm2022}/src/management/gui/PropInterface.mjs +246 -245
  58. package/esm2022/src/management/gui/PropTable.mjs +221 -0
  59. package/esm2022/src/management/gui/Property.mjs +1362 -0
  60. package/esm2022/src/management/gui/ValidationDetails.mjs +248 -0
  61. package/esm2022/src/management/gui/ValidationDetailsBase.mjs +93 -0
  62. package/esm2022/src/management/gui/WrongFormatException.mjs +29 -0
  63. package/esm2022/src/management/tasks/GuiDataCollection.mjs +4 -0
  64. package/esm2022/src/management/tasks/GuiTaskBase.mjs +511 -0
  65. package/{esm2020 → esm2022}/src/management/tasks/IMGDataTable.mjs +1 -1
  66. package/{esm2020 → esm2022}/src/management/tasks/ITask.mjs +1 -1
  67. package/esm2022/src/management/tasks/MgTimer.mjs +21 -0
  68. package/esm2022/src/management/tasks/TaskDefinitionId.mjs +54 -0
  69. package/esm2022/src/management/tasks/TaskDefinitionIdTableSaxHandler.mjs +41 -0
  70. package/esm2022/src/util/MemoryUtil.mjs +35 -0
  71. package/{esm2020 → esm2022}/src/util/ObjectReference.mjs +36 -36
  72. package/esm2022/src/util/UsernamePasswordCredentials.mjs +52 -0
  73. package/{fesm2020 → fesm2022}/magic-xpa-gui.mjs +16074 -16074
  74. package/fesm2022/magic-xpa-gui.mjs.map +1 -0
  75. package/index.d.ts +70 -70
  76. package/package.json +6 -12
  77. package/src/Commands.d.ts +40 -39
  78. package/src/Events.d.ts +157 -155
  79. package/src/EventsProcessor.d.ts +13 -13
  80. package/src/FocusManager.d.ts +8 -8
  81. package/src/GuiConstants.d.ts +65 -65
  82. package/src/GuiEnums.d.ts +282 -282
  83. package/src/GuiEnvironment.d.ts +4 -4
  84. package/src/IFlowMonitorQueue.d.ts +3 -3
  85. package/src/Manager.d.ts +26 -26
  86. package/src/UIBridge.d.ts +16 -16
  87. package/src/env/IEnvironment.d.ts +31 -31
  88. package/src/gui/ControlBase.d.ts +4 -4
  89. package/src/gui/GuiMgControl.d.ts +38 -38
  90. package/src/gui/GuiMgForm.d.ts +3 -3
  91. package/src/gui/KeyboardItem.d.ts +18 -18
  92. package/src/gui/LastFocusedVal.d.ts +7 -7
  93. package/src/gui/MgValue.d.ts +15 -15
  94. package/src/gui/PropParentInterface.d.ts +13 -13
  95. package/src/gui/low/DialogHandler.d.ts +4 -4
  96. package/src/gui/low/GuiCommand.d.ts +37 -37
  97. package/src/gui/low/GuiCommandQueue.d.ts +13 -13
  98. package/src/gui/low/GuiInteractive.d.ts +55 -53
  99. package/src/gui/low/Style.d.ts +19 -19
  100. package/src/management/RuntimeContextBase.d.ts +23 -23
  101. package/src/management/data/BlobType.d.ts +29 -29
  102. package/src/management/data/DcValues.d.ts +33 -33
  103. package/src/management/data/DcValuesBuilderBase.d.ts +17 -17
  104. package/src/management/data/FieldDef.d.ts +53 -53
  105. package/src/management/data/FieldsTable.d.ts +16 -16
  106. package/src/management/data/GuiDataViewBase.d.ts +27 -27
  107. package/src/management/data/GuiFieldBase.d.ts +17 -17
  108. package/src/management/data/IRecord.d.ts +12 -12
  109. package/src/management/data/IReferencedObject.d.ts +5 -5
  110. package/src/management/data/NUM_TYPE.d.ts +103 -103
  111. package/src/management/data/ObjectReferenceBase.d.ts +16 -16
  112. package/src/management/data/ObjectReferencesCollection.d.ts +10 -10
  113. package/src/management/data/RecordUtils.d.ts +21 -21
  114. package/src/management/data/VectorType.d.ts +52 -52
  115. package/src/management/data/VectorTypeBase.d.ts +8 -8
  116. package/src/management/events/IActionManager.d.ts +7 -7
  117. package/src/management/events/IGuiEventsManager.d.ts +20 -20
  118. package/src/management/exp/ExpressionInterface.d.ts +242 -242
  119. package/src/management/exp/GuiExpressionEvaluator.d.ts +47 -47
  120. package/src/management/gui/ControlTable.d.ts +28 -28
  121. package/src/management/gui/DisplayConvertor.d.ts +103 -103
  122. package/src/management/gui/FieldValidator.d.ts +35 -35
  123. package/src/management/gui/GuiControlPropertyAdapter.d.ts +40 -40
  124. package/src/management/gui/GuiFormPropertyAdapter.d.ts +17 -17
  125. package/src/management/gui/HebrewDate.d.ts +46 -46
  126. package/src/management/gui/Helps.d.ts +51 -51
  127. package/src/management/gui/MgControlBase.d.ts +223 -223
  128. package/src/management/gui/MgFormBase.d.ts +160 -160
  129. package/src/management/gui/PIC.d.ts +108 -108
  130. package/src/management/gui/PropDefaults.d.ts +7 -7
  131. package/src/management/gui/PropInterface.d.ts +244 -243
  132. package/src/management/gui/PropTable.d.ts +33 -33
  133. package/src/management/gui/Property.d.ts +121 -121
  134. package/src/management/gui/ValidationDetails.d.ts +52 -52
  135. package/src/management/gui/ValidationDetailsBase.d.ts +14 -14
  136. package/src/management/gui/WrongFormatException.d.ts +9 -9
  137. package/src/management/tasks/GuiDataCollection.d.ts +4 -4
  138. package/src/management/tasks/GuiTaskBase.d.ts +150 -150
  139. package/src/management/tasks/IMGDataTable.d.ts +10 -10
  140. package/src/management/tasks/ITask.d.ts +6 -6
  141. package/src/management/tasks/MgTimer.d.ts +8 -8
  142. package/src/management/tasks/TaskDefinitionId.d.ts +16 -16
  143. package/src/management/tasks/TaskDefinitionIdTableSaxHandler.d.ts +7 -7
  144. package/src/util/MemoryUtil.d.ts +6 -6
  145. package/src/util/ObjectReference.d.ts +9 -9
  146. package/src/util/UsernamePasswordCredentials.d.ts +18 -18
  147. package/esm2020/src/Commands.mjs +0 -177
  148. package/esm2020/src/Events.mjs +0 -420
  149. package/esm2020/src/EventsProcessor.mjs +0 -67
  150. package/esm2020/src/FocusManager.mjs +0 -34
  151. package/esm2020/src/GuiConstants.mjs +0 -68
  152. package/esm2020/src/GuiEnvironment.mjs +0 -4
  153. package/esm2020/src/UIBridge.mjs +0 -32
  154. package/esm2020/src/gui/GuiMgControl.mjs +0 -125
  155. package/esm2020/src/gui/KeyboardItem.mjs +0 -135
  156. package/esm2020/src/gui/LastFocusedVal.mjs +0 -11
  157. package/esm2020/src/gui/MgValue.mjs +0 -16
  158. package/esm2020/src/gui/low/GuiCommand.mjs +0 -66
  159. package/esm2020/src/gui/low/GuiCommandQueue.mjs +0 -35
  160. package/esm2020/src/gui/low/GuiInteractive.mjs +0 -165
  161. package/esm2020/src/gui/low/Style.mjs +0 -20
  162. package/esm2020/src/management/RuntimeContextBase.mjs +0 -43
  163. package/esm2020/src/management/data/BlobType.mjs +0 -281
  164. package/esm2020/src/management/data/DcValuesBuilderBase.mjs +0 -96
  165. package/esm2020/src/management/data/FieldDef.mjs +0 -331
  166. package/esm2020/src/management/data/FieldsTable.mjs +0 -54
  167. package/esm2020/src/management/data/GuiDataViewBase.mjs +0 -90
  168. package/esm2020/src/management/data/GuiFieldBase.mjs +0 -82
  169. package/esm2020/src/management/data/NUM_TYPE.mjs +0 -1741
  170. package/esm2020/src/management/data/ObjectReferenceBase.mjs +0 -48
  171. package/esm2020/src/management/data/ObjectReferencesCollection.mjs +0 -29
  172. package/esm2020/src/management/data/RecordUtils.mjs +0 -361
  173. package/esm2020/src/management/data/VectorType.mjs +0 -612
  174. package/esm2020/src/management/data/VectorTypeBase.mjs +0 -88
  175. package/esm2020/src/management/exp/ExpressionInterface.mjs +0 -244
  176. package/esm2020/src/management/gui/ControlTable.mjs +0 -118
  177. package/esm2020/src/management/gui/DisplayConvertor.mjs +0 -1679
  178. package/esm2020/src/management/gui/FieldValidator.mjs +0 -711
  179. package/esm2020/src/management/gui/GuiControlPropertyAdapter.mjs +0 -22
  180. package/esm2020/src/management/gui/HebrewDate.mjs +0 -278
  181. package/esm2020/src/management/gui/Helps.mjs +0 -237
  182. package/esm2020/src/management/gui/MgControlBase.mjs +0 -1858
  183. package/esm2020/src/management/gui/MgFormBase.mjs +0 -738
  184. package/esm2020/src/management/gui/PIC.mjs +0 -1185
  185. package/esm2020/src/management/gui/PropDefaults.mjs +0 -230
  186. package/esm2020/src/management/gui/PropTable.mjs +0 -221
  187. package/esm2020/src/management/gui/Property.mjs +0 -1356
  188. package/esm2020/src/management/gui/ValidationDetails.mjs +0 -248
  189. package/esm2020/src/management/gui/ValidationDetailsBase.mjs +0 -93
  190. package/esm2020/src/management/gui/WrongFormatException.mjs +0 -29
  191. package/esm2020/src/management/tasks/GuiDataCollection.mjs +0 -4
  192. package/esm2020/src/management/tasks/GuiTaskBase.mjs +0 -510
  193. package/esm2020/src/management/tasks/MgTimer.mjs +0 -21
  194. package/esm2020/src/management/tasks/TaskDefinitionId.mjs +0 -54
  195. package/esm2020/src/management/tasks/TaskDefinitionIdTableSaxHandler.mjs +0 -41
  196. package/esm2020/src/util/MemoryUtil.mjs +0 -35
  197. package/esm2020/src/util/UsernamePasswordCredentials.mjs +0 -52
  198. package/fesm2015/magic-xpa-gui.mjs +0 -16364
  199. package/fesm2015/magic-xpa-gui.mjs.map +0 -1
  200. package/fesm2020/magic-xpa-gui.mjs.map +0 -1
@@ -0,0 +1,4 @@
1
+ export class GuiEnvironment {
2
+ static Environment = null;
3
+ }
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpRW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL0d1aUVudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxjQUFjO0lBRXpCLE1BQU0sQ0FBQyxXQUFXLEdBQWlCLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElFbnZpcm9ubWVudCB9IGZyb20gXCIuL2Vudi9JRW52aXJvbm1lbnRcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBHdWlFbnZpcm9ubWVudFxyXG57XHJcbiAgc3RhdGljIEVudmlyb25tZW50OiBJRW52aXJvbm1lbnQgPSBudWxsO1xyXG59XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUZsb3dNb25pdG9yUXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL0lGbG93TW9uaXRvclF1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHN1bW1hcnk+XHJcbi8vLyBmdW5jdGlvbmFsaXR5IHJlcXVpcmVkIGJ5IHRoZSBHVUkgbmFtZXNwYWNlIGZyb20gdGhlIEZsb3dNb25pdG9yUXVldWUgY2xhc3MuXHJcbi8vLyA8L3N1bW1hcnk+XHJcbmV4cG9ydCBpbnRlcmZhY2UgSUZsb3dNb25pdG9yUXVldWUge1xyXG4gIGFkZFRhc2tDbmdNb2RlKCBuZXdUYXNrTW9kZTogc3RyaW5nLCB0YXNrSW5mbzogc3RyaW5nKTogdm9pZDtcclxufVxyXG4iXX0=
@@ -1,91 +1,91 @@
1
- import { UtilImeJpn, UtilStrByteMode } from "@magic-xpa/utils";
2
- import { Commands } from "./Commands";
3
- import { CommandType, HtmlProperties } from "./GuiEnums";
4
- import { Events } from "./Events";
5
- import { PropInterface } from "./management/gui/PropInterface";
6
- import { GuiEnvironment } from "./GuiEnvironment";
7
- export class Manager {
8
- static SetCurrentContextID(contextID) {
9
- Manager._currentContextID = contextID;
10
- }
11
- static GetCurrentContextID() {
12
- return Manager._currentContextID;
13
- }
14
- static Init() {
15
- return;
16
- }
17
- static Abort(form) {
18
- if (form.getSubFormCtrl() === null && form.Opened) {
19
- if (form.isDialog()) {
20
- this.IsOverlayOpen = false;
21
- let topMostFrameForm = form.getTopMostFrameForm();
22
- if (topMostFrameForm !== null)
23
- topMostFrameForm.UpdateModalFormsCount(form, false);
24
- }
25
- Commands.addCloseForm(form, "0", form.getTask().getTaskTag());
26
- Commands.beginInvoke();
27
- }
28
- }
29
- static GetCtrlVal(ctrl) {
30
- return Commands.getValue(ctrl, ctrl.getDisplayLine(true));
31
- }
32
- static async SetReadOnlyControl(ctrl, isReadOnly) {
33
- if (ctrl.isTextControl() || ctrl.IsRepeatable || ctrl.isComboBox() || ctrl.isListBox() || ctrl.isCheckBox() || ctrl.isRadio()) {
34
- if (UtilStrByteMode.isLocaleDefLangDBCS()) {
35
- if (await ctrl.getForm().getTask().checkProp(PropInterface.PROP_TYPE_ALLOW_LOCATE_IN_QUERY, false))
36
- return;
37
- }
38
- Commands.addOperationWithLine(CommandType.SET_PROPERTY, ctrl, ctrl.getDisplayLine(false), HtmlProperties.ReadOnly, isReadOnly);
39
- Commands.beginInvoke();
40
- }
41
- }
42
- static OpenForm(mgForm) {
43
- if (!mgForm.Opened && (mgForm.getTask().IsInteractive || mgForm.getTask().isOpenWin())) {
44
- if (!mgForm.isSubForm()) {
45
- if (mgForm.isDialog()) {
46
- this.IsOverlayOpen = true;
47
- let topMostFrameForm = mgForm.getTopMostFrameForm();
48
- if (topMostFrameForm !== null)
49
- topMostFrameForm.UpdateModalFormsCount(mgForm, true);
50
- }
51
- }
52
- mgForm.Opened = true;
53
- Commands.beginInvoke();
54
- }
55
- }
56
- static async DoFirstRefreshTable(mgForm) {
57
- if (mgForm !== null && !mgForm.ignoreFirstRefreshTable) {
58
- mgForm.ignoreFirstRefreshTable = true;
59
- await mgForm.firstTableRefresh();
60
- }
61
- }
62
- static CleanMessagePane(task) {
63
- task.WriteToMessagePane(Manager.GetCurrentRuntimeContext().DefaultStatusMsg);
64
- }
65
- static GetMessage(msg) {
66
- if (msg === null)
67
- msg = "";
68
- else if (msg.length > 0) {
69
- let idxOfCarriage = msg.indexOf("\r");
70
- if (idxOfCarriage !== -1)
71
- msg = msg.substr(0, idxOfCarriage);
72
- let idxOfNewLine = msg.indexOf("\n");
73
- if (idxOfNewLine !== -1)
74
- msg = msg.substr(0, idxOfNewLine);
75
- }
76
- return msg;
77
- }
78
- static GetCurrentRuntimeContext() {
79
- return Events.GetRuntimeContext(Manager.GetCurrentContextID());
80
- }
81
- static GetSpecialValNewPolicy() {
82
- return GuiEnvironment.Environment.GetSpecialValNewPolicy();
83
- }
84
- }
85
- Manager.IsOverlayOpen = false;
86
- Manager._currentContextID = '\0';
87
- Manager.DefaultProtocol = null;
88
- Manager.DefaultServerName = null;
89
- Manager.UtilImeJpn = (UtilStrByteMode.isLocaleDefLangJPN() ? new UtilImeJpn() : null);
90
- Manager.EventsManager = null;
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUMsVUFBVSxFQUFFLGVBQWUsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBSTdELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFFcEMsT0FBTyxFQUFDLFdBQVcsRUFBRSxjQUFjLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDdkQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUVoQyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBR2hELE1BQU0sT0FBTyxPQUFPO0lBbUJsQixNQUFNLENBQUMsbUJBQW1CLENBQUMsU0FBaUI7UUFDMUMsT0FBTyxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztJQUN4QyxDQUFDO0lBTUQsTUFBTSxDQUFDLG1CQUFtQjtRQUN4QixPQUFPLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQztJQUNuQyxDQUFDO0lBSUQsTUFBTSxDQUFDLElBQUk7UUFDVCxPQUFPO0lBQ1QsQ0FBQztJQVFELE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBZ0I7UUFFM0IsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFFakQsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO2dCQUUzQixJQUFJLGdCQUFnQixHQUFlLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO2dCQUM5RCxJQUFJLGdCQUFnQixLQUFLLElBQUk7b0JBQzNCLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLElBQUksRUFB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QUFDO1lBQzlDLElBQUksYUFBYSxLQUFLLENBQUMsQ0FBQztnQkFDdEIsR0FBRyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBRXJDLElBQUksWUFBWSxHQUFXLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0MsSUFBSSxZQUFZLEtBQUssQ0FBQyxDQUFDO2dCQUNyQixHQUFHLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7U0FDckM7UUFFRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFPRCxNQUFNLENBQUMsd0JBQXdCO1FBQzdCLE9BQU8sTUFBTSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFDakUsQ0FBQztJQU1NLE1BQU0sQ0FBQyxzQkFBc0I7UUFDbEMsT0FBTyxjQUFjLENBQUMsV0FBVyxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDN0QsQ0FBQzs7QUFuTE0scUJBQWEsR0FBWSxLQUFLLENBQUM7QUFPdkIseUJBQWlCLEdBQVcsSUFBSSxDQUFDO0FBRXpDLHVCQUFlLEdBQVcsSUFBSSxDQUFDO0FBQy9CLHlCQUFpQixHQUFXLElBQUksQ0FBQztBQUNqQyxrQkFBVSxHQUFlLENBQUMsZUFBZSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzFGLHFCQUFhLEdBQXNCLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8c3VtbWFyeT5cclxuLy8vIE1nR3VpLmRsbCdzIG1hbmFnZXIgLSBhc3NlbWJseSBsZXZlbCBwcm9wZXJ0aWVzIGFuZCBtZXRob2RzLlxyXG4vLy8gPC9zdW1tYXJ5PlxyXG5pbXBvcnQge1V0aWxJbWVKcG4sIFV0aWxTdHJCeXRlTW9kZX0gZnJvbSBcIkBtYWdpYy14cGEvdXRpbHNcIjtcclxuaW1wb3J0IHtJR3VpRXZlbnRzTWFuYWdlcn0gZnJvbSBcIi4vbWFuYWdlbWVudC9ldmVudHMvSUd1aUV2ZW50c01hbmFnZXJcIjtcclxuaW1wb3J0IHtHdWlUYXNrQmFzZX0gZnJvbSBcIi4vbWFuYWdlbWVudC90YXNrcy9HdWlUYXNrQmFzZVwiO1xyXG5pbXBvcnQge01nQ29udHJvbEJhc2V9IGZyb20gXCIuL21hbmFnZW1lbnQvZ3VpL01nQ29udHJvbEJhc2VcIjtcclxuaW1wb3J0IHtDb21tYW5kc30gZnJvbSBcIi4vQ29tbWFuZHNcIjtcclxuaW1wb3J0IHtNZ0Zvcm1CYXNlfSBmcm9tIFwiLi9tYW5hZ2VtZW50L2d1aS9NZ0Zvcm1CYXNlXCI7XHJcbmltcG9ydCB7Q29tbWFuZFR5cGUsIEh0bWxQcm9wZXJ0aWVzfSBmcm9tIFwiLi9HdWlFbnVtc1wiO1xyXG5pbXBvcnQge0V2ZW50c30gZnJvbSBcIi4vRXZlbnRzXCI7XHJcbmltcG9ydCB7UnVudGltZUNvbnRleHRCYXNlfSBmcm9tIFwiLi9tYW5hZ2VtZW50L1J1bnRpbWVDb250ZXh0QmFzZVwiO1xyXG5pbXBvcnQge1Byb3BJbnRlcmZhY2V9IGZyb20gXCIuL21hbmFnZW1lbnQvZ3VpL1Byb3BJbnRlcmZhY2VcIjtcclxuaW1wb3J0IHtHdWlFbnZpcm9ubWVudH0gZnJvbSBcIi4vR3VpRW52aXJvbm1lbnRcIjtcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgTWFuYWdlciB7XHJcbiAgc3RhdGljIElzT3ZlcmxheU9wZW46IGJvb2xlYW4gPSBmYWxzZTtcclxuLy8gdGhpcyBvYmplY3QgaXMgdXNlZCBmb3IgZXhlY3V0aW9uIGFuZCBpbnRlcnJ1cHRpbmcgZGVsYXkgY29tbWFuZFxyXG4vLyBEYXRhIHRvIGJlIHdyaXR0ZW4gdG8gdGhlIGNsaXBib2FyZC5cclxuXHJcbiAgLy8gVGhpcyB3aWxsIGhvbGQgdGhlIGNvbnRleHRJRCBmb3IgYSBjdXJyZW50IHRocmVhZC5cclxuICAvLyBUaHJlYWQgc3RhdGljIGlzIGEgc2VwYXJhdGUgZm9yIGVhY2ggdGhyZWFkIChpLmUuOiB2YWx1ZSBvZiBhIHN0YXRpYyBmaWVsZCBpcyB1bmlxdWUgZm9yIGVhY2ggdGhyZWFkKS5cclxuICAvLyBodHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVzL2xpYnJhcnkvc3lzdGVtLnRocmVhZHN0YXRpY2F0dHJpYnV0ZS5hc3B4XHJcbiAgcHJpdmF0ZSBzdGF0aWMgX2N1cnJlbnRDb250ZXh0SUQ6IHN0cmluZyA9ICdcXDAnO1xyXG5cclxuICBzdGF0aWMgRGVmYXVsdFByb3RvY29sOiBzdHJpbmcgPSBudWxsOyAvLyBkZWZhdWx0IHByb3RvY29sIChodHRwL2h0dHBzKSBhbmQgc2VydmVyIG5hbWUgdG8gYmUgdXNlZCBmb3IgYW55IHJlbGF0aXZlIHVybFxyXG4gIHN0YXRpYyBEZWZhdWx0U2VydmVyTmFtZTogc3RyaW5nID0gbnVsbDtcclxuICBzdGF0aWMgVXRpbEltZUpwbjogVXRpbEltZUpwbiA9IChVdGlsU3RyQnl0ZU1vZGUuaXNMb2NhbGVEZWZMYW5nSlBOKCkgPyBuZXcgVXRpbEltZUpwbigpIDogbnVsbCk7IC8vIEpQTjogSU1FIHN1cHBvcnRcclxuICBzdGF0aWMgRXZlbnRzTWFuYWdlcjogSUd1aUV2ZW50c01hbmFnZXIgPSBudWxsO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+KHB1YmxpYylcclxuICAvLy8gU2V0IHRoZSBjb250ZXh0IElEIGZvciBhIGN1cnJlbnQgdGhyZWFkXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjb250ZXh0SURcIj48L3BhcmFtPlxyXG4gIHN0YXRpYyBTZXRDdXJyZW50Q29udGV4dElEKGNvbnRleHRJRDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBNYW5hZ2VyLl9jdXJyZW50Q29udGV4dElEID0gY29udGV4dElEO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBHZXQgdGhlIGNvbnRleHQgSUQgZm9yIGEgY3VycmVudCB0aHJlYWRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz5jdXJyZW50IHRocmVhZCdzIGNvbnRleHRJRDwvcmV0dXJucz5cclxuICBzdGF0aWMgR2V0Q3VycmVudENvbnRleHRJRCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIE1hbmFnZXIuX2N1cnJlbnRDb250ZXh0SUQ7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHN0YXRpYyBJbml0KCk6IHZvaWQge1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gIGNsb3NlIHRoZSB0YXNrXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImZvcm1cIj4gPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtYWluUHJnVGFza1wiPjwvcGFyYW0+XHJcbiAgc3RhdGljIEFib3J0KGZvcm06IE1nRm9ybUJhc2UpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAoZm9ybS5nZXRTdWJGb3JtQ3RybCgpID09PSBudWxsICYmIGZvcm0uT3BlbmVkKSB7XHJcbiAgICAgIC8vIGlmIHRoZSBjbG9zaW5nIGZvcm0gaXMgJ29wZW5lZCBhcyBhIG1vZGFsJyB0aGVuIGRlY3JlbWVudCB0aGUgbW9kYWwgY291bnQgb24gaXRzIGZyYW1lIHdpbmRvdy5cclxuICAgICAgaWYgKGZvcm0uaXNEaWFsb2coKSkge1xyXG4gICAgICAgIHRoaXMuSXNPdmVybGF5T3BlbiA9IGZhbHNlO1xyXG5cclxuICAgICAgICBsZXQgdG9wTW9zdEZyYW1lRm9ybTogTWdGb3JtQmFzZSA9IGZvcm0uZ2V0VG9wTW9zdEZyYW1lRm9ybSgpO1xyXG4gICAgICAgIGlmICh0b3BNb3N0RnJhbWVGb3JtICE9PSBudWxsKVxyXG4gICAgICAgICAgdG9wTW9zdEZyYW1lRm9ybS5VcGRhdGVNb2RhbEZvcm1zQ291bnQoZm9ybSwgZmFsc2UpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBDb21tYW5kcy5hZGRDbG9zZUZvcm0oZm9ybSwgXCIwXCIsIGZvcm0uZ2V0VGFzaygpLmdldFRhc2tUYWcoKSk7XHJcblxyXG4gICAgICBDb21tYW5kcy5iZWdpbkludm9rZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiY3RybFwiPmNvbnRyb2wgdG8gZ2V0IHZhbHVlIDwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPiB2YWx1ZSBvZiB0aGUgY29udHJvbCA8L3JldHVybnM+XHJcbiAgc3RhdGljIEdldEN0cmxWYWwoY3RybDogTWdDb250cm9sQmFzZSk6IHN0cmluZyB7XHJcbiAgICAvLyBRQ1IgIzc0NTExNzogTWFrZSBzdXJlIHRoYXQgaWYgdGhlIGNvbnRlbnRzIG9mIGEgY29udHJvbCB3ZXJlIGNoYW5nZWRcclxuICAgIC8vIHRoZW4gdGhlIGNoYW5nZXMgYXJlIGFwcGxpZWQgYmVmb3JlIGV4YW1pbmluZyBpdHMgdmFsdWUuXHJcbiAgICByZXR1cm4gQ29tbWFuZHMuZ2V0VmFsdWUoY3RybCwgY3RybC5nZXREaXNwbGF5TGluZSh0cnVlKSk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgU2V0IHJlYWQgb25seSBmb3IgY29udHJvbHNcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiY3RybFwiPnRoZSBjb250cm9sIHRvIGNoYW5nZSBpdHMgcHJvcGVydHkgPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImlzUmVhZE9ubHlcIj5ib29sZWFuIDwvcGFyYW0+XHJcbiAgc3RhdGljIGFzeW5jIFNldFJlYWRPbmx5Q29udHJvbChjdHJsOiBNZ0NvbnRyb2xCYXNlLCBpc1JlYWRPbmx5OiBib29sZWFuKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoY3RybC5pc1RleHRDb250cm9sKCkgfHwgY3RybC5Jc1JlcGVhdGFibGUgfHwgY3RybC5pc0NvbWJvQm94KCkgfHwgY3RybC5pc0xpc3RCb3goKSB8fCBjdHJsLmlzQ2hlY2tCb3goKSB8fCBjdHJsLmlzUmFkaW8oKSkgLy8gRGVmZWN0IDEzMTgwMjogU2V0IFJlYWRPbmx5IGZvciBSaWNoIFRleHQgY29udHJvbCBpbiBUYWJsZSBIZWFkZXIgYW5kIGRlZmVjdCAxMzE3MDQ6IGluIGdlbmVyYWwgZm9yIFJpY2ggVGV4dC5cclxuICAgIHtcclxuICAgICAgLy8gSlBOOiBJTUUgc3VwcG9ydCAoZW5hYmxlIElNRSBpbiBxdWVyeSBtb2RlKVxyXG4gICAgICBpZiAoVXRpbFN0ckJ5dGVNb2RlLmlzTG9jYWxlRGVmTGFuZ0RCQ1MoKSkge1xyXG4gICAgICAgIGlmIChhd2FpdCBjdHJsLmdldEZvcm0oKS5nZXRUYXNrKCkuY2hlY2tQcm9wKFByb3BJbnRlcmZhY2UuUFJPUF9UWVBFX0FMTE9XX0xPQ0FURV9JTl9RVUVSWSwgZmFsc2UpKVxyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIENvbW1hbmRzLmFkZE9wZXJhdGlvbldpdGhMaW5lKENvbW1hbmRUeXBlLlNFVF9QUk9QRVJUWSwgY3RybCwgY3RybC5nZXREaXNwbGF5TGluZShmYWxzZSksIEh0bWxQcm9wZXJ0aWVzLlJlYWRPbmx5LCBpc1JlYWRPbmx5KTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBPcGVuIHRoZSBmb3JtLiA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibWdGb3JtXCI+Zm9ybSB0byBiZSBvcGVuZWQuPC9wYXJhbT5cclxuICBzdGF0aWMgT3BlbkZvcm0obWdGb3JtOiBNZ0Zvcm1CYXNlKTogdm9pZCB7XHJcbiAgICAvLyBub24gaW50ZXJhY3RpdmUgY2FuIGNob29zZSBub3QgdG8gb3BlbiB0aGUgd2luZG93LlxyXG4gICAgaWYgKCFtZ0Zvcm0uT3BlbmVkICYmIChtZ0Zvcm0uZ2V0VGFzaygpLklzSW50ZXJhY3RpdmUgfHwgbWdGb3JtLmdldFRhc2soKS5pc09wZW5XaW4oKSkpIHtcclxuICAgICAgaWYgKCFtZ0Zvcm0uaXNTdWJGb3JtKCkpIHtcclxuICAgICAgICAvLyBpZiB0aGUgZm9ybSBpcyB0byBiZSBvcGVuZWQgYXMgYSBtb2RhbCwgdGhlbiBpbmNyZW1lbnQgdGhlIG1vZGFsIGNvdW50IG9uIGl0cyBmcmFtZSB3aW5kb3cuXHJcbiAgICAgICAgaWYgKG1nRm9ybS5pc0RpYWxvZygpKSB7XHJcbiAgICAgICAgICB0aGlzLklzT3ZlcmxheU9wZW4gPSB0cnVlO1xyXG5cclxuICAgICAgICAgIGxldCB0b3BNb3N0RnJhbWVGb3JtOiBNZ0Zvcm1CYXNlID0gbWdGb3JtLmdldFRvcE1vc3RGcmFtZUZvcm0oKTtcclxuICAgICAgICAgIGlmICh0b3BNb3N0RnJhbWVGb3JtICE9PSBudWxsKVxyXG4gICAgICAgICAgICB0b3BNb3N0RnJhbWVGb3JtLlVwZGF0ZU1vZGFsRm9ybXNDb3VudChtZ0Zvcm0sIHRydWUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgICAgLy8gaWYgKCFtZ0Zvcm0uaXNTdWJGb3JtKCkpIHtcclxuICAgICAgLy8gICBsZXQgZm9ybU5hbWU6IHN0cmluZyA9IG1nRm9ybS5VbmlxdWVOYW1lO1xyXG4gICAgICAvLyAgIFVJQnJpZGdlLmdldEluc3RhbmNlKCkuT3BlbkZvcm0oZm9ybU5hbWUpO1xyXG5cclxuICAgICAgLy8gfVxyXG4gICAgICAvLyBlbHNlIHtcclxuICAgICAgLy8gICBsZXQgaW5wdXRDb250cm9scyA9IG1nRm9ybS5HZXRMaXN0T2ZJbnB1dENvbnRyb2xzKCk7XHJcbiAgICAgIC8vIC8vXHJcbiAgICAgIC8vIC8vICAgSlNCcmlkZ2UuSW5zdGFuY2UuT3BlblN1YkZvcm0odGhpcy5nZXRTdWJGb3JtQ3RybCgpLmdldE5hbWUoKSwgUGFyZW50Rm9ybS5nZXRUYXNrKCkuZ2V0VGFza1RhZygpLCBnZXRQcm9wKFByb3BJbnRlcmZhY2UuUFJPUF9UWVBFX0ZPUk1fTkFNRSkuZ2V0VmFsdWUoKSwgX3Rhc2suZ2V0VGFza1RhZygpLCBpbnB1dENvbnRyb2xzKTtcclxuICAgICAgLy8gLy8gfVxyXG4gICAgICAvLyB9XHJcblxyXG4gICAgICBtZ0Zvcm0uT3BlbmVkID0gdHJ1ZTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IFBlcmZvcm1zIGZpcnN0IHJlZnJlc2ggZm9yIHRoZSB0YWJsZSBjb250cm9sIDwvc3VtbWFyeT5cclxuICBzdGF0aWMgYXN5bmMgRG9GaXJzdFJlZnJlc2hUYWJsZShtZ0Zvcm06IE1nRm9ybUJhc2UpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChtZ0Zvcm0gIT09IG51bGwgJiYgIW1nRm9ybS5pZ25vcmVGaXJzdFJlZnJlc2hUYWJsZSkge1xyXG4gICAgICBtZ0Zvcm0uaWdub3JlRmlyc3RSZWZyZXNoVGFibGUgPSB0cnVlO1xyXG4gICAgICBhd2FpdCBtZ0Zvcm0uZmlyc3RUYWJsZVJlZnJlc2goKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGNsZWFuIHRoZSBzdGF0dXMgYmFyXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcInRhc2tcIj48L3BhcmFtPlxyXG4gIHN0YXRpYyBDbGVhbk1lc3NhZ2VQYW5lKHRhc2s6IEd1aVRhc2tCYXNlKTogdm9pZCB7XHJcbiAgICB0YXNrLldyaXRlVG9NZXNzYWdlUGFuZShNYW5hZ2VyLkdldEN1cnJlbnRSdW50aW1lQ29udGV4dCgpLkRlZmF1bHRTdGF0dXNNc2cpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBNZXNzYWdlIHN0cmluZyB0byBiZSBkaXNwbGF5ZWQgb24gc3RhdHVzIGJhciBvciBpbiBNZXNzYWdlIGJveFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJtc2dcIj4gaW5wdXQgbWVzc2FnZSBzdHJpbmcgPC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+IG91dHB1dCBtZXNzYWdlIHN0cmluZyA8L3JldHVybnM+XHJcbiAgc3RhdGljIEdldE1lc3NhZ2UobXNnOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKG1zZyA9PT0gbnVsbClcclxuICAgICAgbXNnID0gXCJcIjtcclxuICAgIGVsc2UgaWYgKG1zZy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBpZHhPZkNhcnJpYWdlOiBudW1iZXIgPSBtc2cuaW5kZXhPZihcIlxcclwiKTtcclxuICAgICAgaWYgKGlkeE9mQ2FycmlhZ2UgIT09IC0xKVxyXG4gICAgICAgIG1zZyA9IG1zZy5zdWJzdHIoMCwgaWR4T2ZDYXJyaWFnZSk7XHJcblxyXG4gICAgICBsZXQgaWR4T2ZOZXdMaW5lOiBudW1iZXIgPSBtc2cuaW5kZXhPZihcIlxcblwiKTtcclxuICAgICAgaWYgKGlkeE9mTmV3TGluZSAhPT0gLTEpXHJcbiAgICAgICAgbXNnID0gbXNnLnN1YnN0cigwLCBpZHhPZk5ld0xpbmUpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBtc2c7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBHZXRzIHRoZSBydW50aW1lIGNvbnRleHQgYmVsb25ncyB0byB0aGUgY3VycmVudCB0aHJlYWQuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+UnVudGltZUNvbnRleHRCYXNlPC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBHZXRDdXJyZW50UnVudGltZUNvbnRleHQoKTogUnVudGltZUNvbnRleHRCYXNlIHtcclxuICAgIHJldHVybiBFdmVudHMuR2V0UnVudGltZUNvbnRleHQoTWFuYWdlci5HZXRDdXJyZW50Q29udGV4dElEKCkpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyByZXR1cm4gU3BlY2lhbFZhbE5ld1BvbGljeVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBwdWJsaWMgc3RhdGljIEdldFNwZWNpYWxWYWxOZXdQb2xpY3koKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gR3VpRW52aXJvbm1lbnQuRW52aXJvbm1lbnQuR2V0U3BlY2lhbFZhbE5ld1BvbGljeSgpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbiJdfQ==
1
+ import { UtilImeJpn, UtilStrByteMode } from "@magic-xpa/utils";
2
+ import { Commands } from "./Commands";
3
+ import { CommandType, HtmlProperties } from "./GuiEnums";
4
+ import { Events } from "./Events";
5
+ import { PropInterface } from "./management/gui/PropInterface";
6
+ import { GuiEnvironment } from "./GuiEnvironment";
7
+ export class Manager {
8
+ static IsOverlayOpen = false;
9
+ static _currentContextID = '\0';
10
+ static DefaultProtocol = null;
11
+ static DefaultServerName = null;
12
+ static UtilImeJpn = (UtilStrByteMode.isLocaleDefLangJPN() ? new UtilImeJpn() : null);
13
+ static EventsManager = null;
14
+ static SetCurrentContextID(contextID) {
15
+ Manager._currentContextID = contextID;
16
+ }
17
+ static GetCurrentContextID() {
18
+ return Manager._currentContextID;
19
+ }
20
+ static Init() {
21
+ return;
22
+ }
23
+ static Abort(form) {
24
+ if (form.getSubFormCtrl() === null && form.Opened) {
25
+ if (form.isDialog()) {
26
+ this.IsOverlayOpen = false;
27
+ let topMostFrameForm = form.getTopMostFrameForm();
28
+ if (topMostFrameForm !== null)
29
+ topMostFrameForm.UpdateModalFormsCount(form, false);
30
+ }
31
+ Commands.addCloseForm(form, "0", form.getTask().getTaskTag());
32
+ Commands.beginInvoke();
33
+ }
34
+ }
35
+ static GetCtrlVal(ctrl) {
36
+ return Commands.getValue(ctrl, ctrl.getDisplayLine(true));
37
+ }
38
+ static async SetReadOnlyControl(ctrl, isReadOnly) {
39
+ if (ctrl.isTextControl() || ctrl.IsRepeatable || ctrl.isComboBox() || ctrl.isListBox() || ctrl.isCheckBox() || ctrl.isRadio()) {
40
+ if (UtilStrByteMode.isLocaleDefLangDBCS()) {
41
+ if (await ctrl.getForm().getTask().checkProp(PropInterface.PROP_TYPE_ALLOW_LOCATE_IN_QUERY, false))
42
+ return;
43
+ }
44
+ Commands.addOperationWithLine(CommandType.SET_PROPERTY, ctrl, ctrl.getDisplayLine(false), HtmlProperties.ReadOnly, isReadOnly);
45
+ Commands.beginInvoke();
46
+ }
47
+ }
48
+ static OpenForm(mgForm) {
49
+ if (!mgForm.Opened && (mgForm.getTask().IsInteractive || mgForm.getTask().isOpenWin())) {
50
+ if (!mgForm.isSubForm()) {
51
+ if (mgForm.isDialog()) {
52
+ this.IsOverlayOpen = true;
53
+ let topMostFrameForm = mgForm.getTopMostFrameForm();
54
+ if (topMostFrameForm !== null)
55
+ topMostFrameForm.UpdateModalFormsCount(mgForm, true);
56
+ }
57
+ }
58
+ mgForm.Opened = true;
59
+ Commands.beginInvoke();
60
+ }
61
+ }
62
+ static async DoFirstRefreshTable(mgForm) {
63
+ if (mgForm !== null && !mgForm.ignoreFirstRefreshTable) {
64
+ mgForm.ignoreFirstRefreshTable = true;
65
+ await mgForm.firstTableRefresh();
66
+ }
67
+ }
68
+ static CleanMessagePane(task) {
69
+ task.WriteToMessagePane(Manager.GetCurrentRuntimeContext().DefaultStatusMsg);
70
+ }
71
+ static GetMessage(msg) {
72
+ if (msg === null)
73
+ msg = "";
74
+ else if (msg.length > 0) {
75
+ let idxOfCarriage = msg.indexOf("\r");
76
+ if (idxOfCarriage !== -1)
77
+ msg = msg.substr(0, idxOfCarriage);
78
+ let idxOfNewLine = msg.indexOf("\n");
79
+ if (idxOfNewLine !== -1)
80
+ msg = msg.substr(0, idxOfNewLine);
81
+ }
82
+ return msg;
83
+ }
84
+ static GetCurrentRuntimeContext() {
85
+ return Events.GetRuntimeContext(Manager.GetCurrentContextID());
86
+ }
87
+ static GetSpecialValNewPolicy() {
88
+ return GuiEnvironment.Environment.GetSpecialValNewPolicy();
89
+ }
90
+ }
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUMsVUFBVSxFQUFFLGVBQWUsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBSTdELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFFcEMsT0FBTyxFQUFDLFdBQVcsRUFBRSxjQUFjLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDdkQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUVoQyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBR2hELE1BQU0sT0FBTyxPQUFPO0lBQ2xCLE1BQU0sQ0FBQyxhQUFhLEdBQVksS0FBSyxDQUFDO0lBTzlCLE1BQU0sQ0FBQyxpQkFBaUIsR0FBVyxJQUFJLENBQUM7SUFFaEQsTUFBTSxDQUFDLGVBQWUsR0FBVyxJQUFJLENBQUM7SUFDdEMsTUFBTSxDQUFDLGlCQUFpQixHQUFXLElBQUksQ0FBQztJQUN4QyxNQUFNLENBQUMsVUFBVSxHQUFlLENBQUMsZUFBZSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pHLE1BQU0sQ0FBQyxhQUFhLEdBQXNCLElBQUksQ0FBQztJQU0vQyxNQUFNLENBQUMsbUJBQW1CLENBQUMsU0FBaUI7UUFDMUMsT0FBTyxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztJQUN4QyxDQUFDO0lBTUQsTUFBTSxDQUFDLG1CQUFtQjtRQUN4QixPQUFPLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQztJQUNuQyxDQUFDO0lBSUQsTUFBTSxDQUFDLElBQUk7UUFDVCxPQUFPO0lB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IG1hbmFnZXIgLSBhc3NlbWJseSBsZXZlbCBwcm9wZXJ0aWVzIGFuZCBtZXRob2RzLlxyXG4vLy8gPC9zdW1tYXJ5PlxyXG5pbXBvcnQge1V0aWxJbWVKcG4sIFV0aWxTdHJCeXRlTW9kZX0gZnJvbSBcIkBtYWdpYy14cGEvdXRpbHNcIjtcclxuaW1wb3J0IHtJR3VpRXZlbnRzTWFuYWdlcn0gZnJvbSBcIi4vbWFuYWdlbWVudC9ldmVudHMvSUd1aUV2ZW50c01hbmFnZXJcIjtcclxuaW1wb3J0IHtHdWlUYXNrQmFzZX0gZnJvbSBcIi4vbWFuYWdlbWVudC90YXNrcy9HdWlUYXNrQmFzZVwiO1xyXG5pbXBvcnQge01nQ29udHJvbEJhc2V9IGZyb20gXCIuL21hbmFnZW1lbnQvZ3VpL01nQ29udHJvbEJhc2VcIjtcclxuaW1wb3J0IHtDb21tYW5kc30gZnJvbSBcIi4vQ29tbWFuZHNcIjtcclxuaW1wb3J0IHtNZ0Zvcm1CYXNlfSBmcm9tIFwiLi9tYW5hZ2VtZW50L2d1aS9NZ0Zvcm1CYXNlXCI7XHJcbmltcG9ydCB7Q29tbWFuZFR5cGUsIEh0bWxQcm9wZXJ0aWVzfSBmcm9tIFwiLi9HdWlFbnVtc1wiO1xyXG5pbXBvcnQge0V2ZW50c30gZnJvbSBcIi4vRXZlbnRzXCI7XHJcbmltcG9ydCB7UnVudGltZUNvbnRleHRCYXNlfSBmcm9tIFwiLi9tYW5hZ2VtZW50L1J1bnRpbWVDb250ZXh0QmFzZVwiO1xyXG5pbXBvcnQge1Byb3BJbnRlcmZhY2V9IGZyb20gXCIuL21hbmFnZW1lbnQvZ3VpL1Byb3BJbnRlcmZhY2VcIjtcclxuaW1wb3J0IHtHdWlFbnZpcm9ubWVudH0gZnJvbSBcIi4vR3VpRW52aXJvbm1lbnRcIjtcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgTWFuYWdlciB7XHJcbiAgc3RhdGljIElzT3ZlcmxheU9wZW46IGJvb2xlYW4gPSBmYWxzZTtcclxuLy8gdGhpcyBvYmplY3QgaXMgdXNlZCBmb3IgZXhlY3V0aW9uIGFuZCBpbnRlcnJ1cHRpbmcgZGVsYXkgY29tbWFuZFxyXG4vLyBEYXRhIHRvIGJlIHdyaXR0ZW4gdG8gdGhlIGNsaXBib2FyZC5cclxuXHJcbiAgLy8gVGhpcyB3aWxsIGhvbGQgdGhlIGNvbnRleHRJRCBmb3IgYSBjdXJyZW50IHRocmVhZC5cclxuICAvLyBUaHJlYWQgc3RhdGljIGlzIGEgc2VwYXJhdGUgZm9yIGVhY2ggdGhyZWFkIChpLmUuOiB2YWx1ZSBvZiBhIHN0YXRpYyBmaWVsZCBpcyB1bmlxdWUgZm9yIGVhY2ggdGhyZWFkKS5cclxuICAvLyBodHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVzL2xpYnJhcnkvc3lzdGVtLnRocmVhZHN0YXRpY2F0dHJpYnV0ZS5hc3B4XHJcbiAgcHJpdmF0ZSBzdGF0aWMgX2N1cnJlbnRDb250ZXh0SUQ6IHN0cmluZyA9ICdcXDAnO1xyXG5cclxuICBzdGF0aWMgRGVmYXVsdFByb3RvY29sOiBzdHJpbmcgPSBudWxsOyAvLyBkZWZhdWx0IHByb3RvY29sIChodHRwL2h0dHBzKSBhbmQgc2VydmVyIG5hbWUgdG8gYmUgdXNlZCBmb3IgYW55IHJlbGF0aXZlIHVybFxyXG4gIHN0YXRpYyBEZWZhdWx0U2VydmVyTmFtZTogc3RyaW5nID0gbnVsbDtcclxuICBzdGF0aWMgVXRpbEltZUpwbjogVXRpbEltZUpwbiA9IChVdGlsU3RyQnl0ZU1vZGUuaXNMb2NhbGVEZWZMYW5nSlBOKCkgPyBuZXcgVXRpbEltZUpwbigpIDogbnVsbCk7IC8vIEpQTjogSU1FIHN1cHBvcnRcclxuICBzdGF0aWMgRXZlbnRzTWFuYWdlcjogSUd1aUV2ZW50c01hbmFnZXIgPSBudWxsO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+KHB1YmxpYylcclxuICAvLy8gU2V0IHRoZSBjb250ZXh0IElEIGZvciBhIGN1cnJlbnQgdGhyZWFkXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjb250ZXh0SURcIj48L3BhcmFtPlxyXG4gIHN0YXRpYyBTZXRDdXJyZW50Q29udGV4dElEKGNvbnRleHRJRDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBNYW5hZ2VyLl9jdXJyZW50Q29udGV4dElEID0gY29udGV4dElEO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBHZXQgdGhlIGNvbnRleHQgSUQgZm9yIGEgY3VycmVudCB0aHJlYWRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz5jdXJyZW50IHRocmVhZCdzIGNvbnRleHRJRDwvcmV0dXJucz5cclxuICBzdGF0aWMgR2V0Q3VycmVudENvbnRleHRJRCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIE1hbmFnZXIuX2N1cnJlbnRDb250ZXh0SUQ7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHN0YXRpYyBJbml0KCk6IHZvaWQge1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gIGNsb3NlIHRoZSB0YXNrXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImZvcm1cIj4gPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtYWluUHJnVGFza1wiPjwvcGFyYW0+XHJcbiAgc3RhdGljIEFib3J0KGZvcm06IE1nRm9ybUJhc2UpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAoZm9ybS5nZXRTdWJGb3JtQ3RybCgpID09PSBudWxsICYmIGZvcm0uT3BlbmVkKSB7XHJcbiAgICAgIC8vIGlmIHRoZSBjbG9zaW5nIGZvcm0gaXMgJ29wZW5lZCBhcyBhIG1vZGFsJyB0aGVuIGRlY3JlbWVudCB0aGUgbW9kYWwgY291bnQgb24gaXRzIGZyYW1lIHdpbmRvdy5cclxuICAgICAgaWYgKGZvcm0uaXNEaWFsb2coKSkge1xyXG4gICAgICAgIHRoaXMuSXNPdmVybGF5T3BlbiA9IGZhbHNlO1xyXG5cclxuICAgICAgICBsZXQgdG9wTW9zdEZyYW1lRm9ybTogTWdGb3JtQmFzZSA9IGZvcm0uZ2V0VG9wTW9zdEZyYW1lRm9ybSgpO1xyXG4gICAgICAgIGlmICh0b3BNb3N0RnJhbWVGb3JtICE9PSBudWxsKVxyXG4gICAgICAgICAgdG9wTW9zdEZyYW1lRm9ybS5VcGRhdGVNb2RhbEZvcm1zQ291bnQoZm9ybSwgZmFsc2UpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBDb21tYW5kcy5hZGRDbG9zZUZvcm0oZm9ybSwgXCIwXCIsIGZvcm0uZ2V0VGFzaygpLmdldFRhc2tUYWcoKSk7XHJcblxyXG4gICAgICBDb21tYW5kcy5iZWdpbkludm9rZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiY3RybFwiPmNvbnRyb2wgdG8gZ2V0IHZhbHVlIDwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPiB2YWx1ZSBvZiB0aGUgY29udHJvbCA8L3JldHVybnM+XHJcbiAgc3RhdGljIEdldEN0cmxWYWwoY3RybDogTWdDb250cm9sQmFzZSk6IHN0cmluZyB7XHJcbiAgICAvLyBRQ1IgIzc0NTExNzogTWFrZSBzdXJlIHRoYXQgaWYgdGhlIGNvbnRlbnRzIG9mIGEgY29udHJvbCB3ZXJlIGNoYW5nZWRcclxuICAgIC8vIHRoZW4gdGhlIGNoYW5nZXMgYXJlIGFwcGxpZWQgYmVmb3JlIGV4YW1pbmluZyBpdHMgdmFsdWUuXHJcbiAgICByZXR1cm4gQ29tbWFuZHMuZ2V0VmFsdWUoY3RybCwgY3RybC5nZXREaXNwbGF5TGluZSh0cnVlKSk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgU2V0IHJlYWQgb25seSBmb3IgY29udHJvbHNcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiY3RybFwiPnRoZSBjb250cm9sIHRvIGNoYW5nZSBpdHMgcHJvcGVydHkgPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImlzUmVhZE9ubHlcIj5ib29sZWFuIDwvcGFyYW0+XHJcbiAgc3RhdGljIGFzeW5jIFNldFJlYWRPbmx5Q29udHJvbChjdHJsOiBNZ0NvbnRyb2xCYXNlLCBpc1JlYWRPbmx5OiBib29sZWFuKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoY3RybC5pc1RleHRDb250cm9sKCkgfHwgY3RybC5Jc1JlcGVhdGFibGUgfHwgY3RybC5pc0NvbWJvQm94KCkgfHwgY3RybC5pc0xpc3RCb3goKSB8fCBjdHJsLmlzQ2hlY2tCb3goKSB8fCBjdHJsLmlzUmFkaW8oKSkgLy8gRGVmZWN0IDEzMTgwMjogU2V0IFJlYWRPbmx5IGZvciBSaWNoIFRleHQgY29udHJvbCBpbiBUYWJsZSBIZWFkZXIgYW5kIGRlZmVjdCAxMzE3MDQ6IGluIGdlbmVyYWwgZm9yIFJpY2ggVGV4dC5cclxuICAgIHtcclxuICAgICAgLy8gSlBOOiBJTUUgc3VwcG9ydCAoZW5hYmxlIElNRSBpbiBxdWVyeSBtb2RlKVxyXG4gICAgICBpZiAoVXRpbFN0ckJ5dGVNb2RlLmlzTG9jYWxlRGVmTGFuZ0RCQ1MoKSkge1xyXG4gICAgICAgIGlmIChhd2FpdCBjdHJsLmdldEZvcm0oKS5nZXRUYXNrKCkuY2hlY2tQcm9wKFByb3BJbnRlcmZhY2UuUFJPUF9UWVBFX0FMTE9XX0xPQ0FURV9JTl9RVUVSWSwgZmFsc2UpKVxyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIENvbW1hbmRzLmFkZE9wZXJhdGlvbldpdGhMaW5lKENvbW1hbmRUeXBlLlNFVF9QUk9QRVJUWSwgY3RybCwgY3RybC5nZXREaXNwbGF5TGluZShmYWxzZSksIEh0bWxQcm9wZXJ0aWVzLlJlYWRPbmx5LCBpc1JlYWRPbmx5KTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBPcGVuIHRoZSBmb3JtLiA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibWdGb3JtXCI+Zm9ybSB0byBiZSBvcGVuZWQuPC9wYXJhbT5cclxuICBzdGF0aWMgT3BlbkZvcm0obWdGb3JtOiBNZ0Zvcm1CYXNlKTogdm9pZCB7XHJcbiAgICAvLyBub24gaW50ZXJhY3RpdmUgY2FuIGNob29zZSBub3QgdG8gb3BlbiB0aGUgd2luZG93LlxyXG4gICAgaWYgKCFtZ0Zvcm0uT3BlbmVkICYmIChtZ0Zvcm0uZ2V0VGFzaygpLklzSW50ZXJhY3RpdmUgfHwgbWdGb3JtLmdldFRhc2soKS5pc09wZW5XaW4oKSkpIHtcclxuICAgICAgaWYgKCFtZ0Zvcm0uaXNTdWJGb3JtKCkpIHtcclxuICAgICAgICAvLyBpZiB0aGUgZm9ybSBpcyB0byBiZSBvcGVuZWQgYXMgYSBtb2RhbCwgdGhlbiBpbmNyZW1lbnQgdGhlIG1vZGFsIGNvdW50IG9uIGl0cyBmcmFtZSB3aW5kb3cuXHJcbiAgICAgICAgaWYgKG1nRm9ybS5pc0RpYWxvZygpKSB7XHJcbiAgICAgICAgICB0aGlzLklzT3ZlcmxheU9wZW4gPSB0cnVlO1xyXG5cclxuICAgICAgICAgIGxldCB0b3BNb3N0RnJhbWVGb3JtOiBNZ0Zvcm1CYXNlID0gbWdGb3JtLmdldFRvcE1vc3RGcmFtZUZvcm0oKTtcclxuICAgICAgICAgIGlmICh0b3BNb3N0RnJhbWVGb3JtICE9PSBudWxsKVxyXG4gICAgICAgICAgICB0b3BNb3N0RnJhbWVGb3JtLlVwZGF0ZU1vZGFsRm9ybXNDb3VudChtZ0Zvcm0sIHRydWUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgICAgLy8gaWYgKCFtZ0Zvcm0uaXNTdWJGb3JtKCkpIHtcclxuICAgICAgLy8gICBsZXQgZm9ybU5hbWU6IHN0cmluZyA9IG1nRm9ybS5VbmlxdWVOYW1lO1xyXG4gICAgICAvLyAgIFVJQnJpZGdlLmdldEluc3RhbmNlKCkuT3BlbkZvcm0oZm9ybU5hbWUpO1xyXG5cclxuICAgICAgLy8gfVxyXG4gICAgICAvLyBlbHNlIHtcclxuICAgICAgLy8gICBsZXQgaW5wdXRDb250cm9scyA9IG1nRm9ybS5HZXRMaXN0T2ZJbnB1dENvbnRyb2xzKCk7XHJcbiAgICAgIC8vIC8vXHJcbiAgICAgIC8vIC8vICAgSlNCcmlkZ2UuSW5zdGFuY2UuT3BlblN1YkZvcm0odGhpcy5nZXRTdWJGb3JtQ3RybCgpLmdldE5hbWUoKSwgUGFyZW50Rm9ybS5nZXRUYXNrKCkuZ2V0VGFza1RhZygpLCBnZXRQcm9wKFByb3BJbnRlcmZhY2UuUFJPUF9UWVBFX0ZPUk1fTkFNRSkuZ2V0VmFsdWUoKSwgX3Rhc2suZ2V0VGFza1RhZygpLCBpbnB1dENvbnRyb2xzKTtcclxuICAgICAgLy8gLy8gfVxyXG4gICAgICAvLyB9XHJcblxyXG4gICAgICBtZ0Zvcm0uT3BlbmVkID0gdHJ1ZTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IFBlcmZvcm1zIGZpcnN0IHJlZnJlc2ggZm9yIHRoZSB0YWJsZSBjb250cm9sIDwvc3VtbWFyeT5cclxuICBzdGF0aWMgYXN5bmMgRG9GaXJzdFJlZnJlc2hUYWJsZShtZ0Zvcm06IE1nRm9ybUJhc2UpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChtZ0Zvcm0gIT09IG51bGwgJiYgIW1nRm9ybS5pZ25vcmVGaXJzdFJlZnJlc2hUYWJsZSkge1xyXG4gICAgICBtZ0Zvcm0uaWdub3JlRmlyc3RSZWZyZXNoVGFibGUgPSB0cnVlO1xyXG4gICAgICBhd2FpdCBtZ0Zvcm0uZmlyc3RUYWJsZVJlZnJlc2goKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGNsZWFuIHRoZSBzdGF0dXMgYmFyXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcInRhc2tcIj48L3BhcmFtPlxyXG4gIHN0YXRpYyBDbGVhbk1lc3NhZ2VQYW5lKHRhc2s6IEd1aVRhc2tCYXNlKTogdm9pZCB7XHJcbiAgICB0YXNrLldyaXRlVG9NZXNzYWdlUGFuZShNYW5hZ2VyLkdldEN1cnJlbnRSdW50aW1lQ29udGV4dCgpLkRlZmF1bHRTdGF0dXNNc2cpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBNZXNzYWdlIHN0cmluZyB0byBiZSBkaXNwbGF5ZWQgb24gc3RhdHVzIGJhciBvciBpbiBNZXNzYWdlIGJveFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJtc2dcIj4gaW5wdXQgbWVzc2FnZSBzdHJpbmcgPC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+IG91dHB1dCBtZXNzYWdlIHN0cmluZyA8L3JldHVybnM+XHJcbiAgc3RhdGljIEdldE1lc3NhZ2UobXNnOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKG1zZyA9PT0gbnVsbClcclxuICAgICAgbXNnID0gXCJcIjtcclxuICAgIGVsc2UgaWYgKG1zZy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBpZHhPZkNhcnJpYWdlOiBudW1iZXIgPSBtc2cuaW5kZXhPZihcIlxcclwiKTtcclxuICAgICAgaWYgKGlkeE9mQ2FycmlhZ2UgIT09IC0xKVxyXG4gICAgICAgIG1zZyA9IG1zZy5zdWJzdHIoMCwgaWR4T2ZDYXJyaWFnZSk7XHJcblxyXG4gICAgICBsZXQgaWR4T2ZOZXdMaW5lOiBudW1iZXIgPSBtc2cuaW5kZXhPZihcIlxcblwiKTtcclxuICAgICAgaWYgKGlkeE9mTmV3TGluZSAhPT0gLTEpXHJcbiAgICAgICAgbXNnID0gbXNnLnN1YnN0cigwLCBpZHhPZk5ld0xpbmUpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBtc2c7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBHZXRzIHRoZSBydW50aW1lIGNvbnRleHQgYmVsb25ncyB0byB0aGUgY3VycmVudCB0aHJlYWQuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+UnVudGltZUNvbnRleHRCYXNlPC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBHZXRDdXJyZW50UnVudGltZUNvbnRleHQoKTogUnVudGltZUNvbnRleHRCYXNlIHtcclxuICAgIHJldHVybiBFdmVudHMuR2V0UnVudGltZUNvbnRleHQoTWFuYWdlci5HZXRDdXJyZW50Q29udGV4dElEKCkpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyByZXR1cm4gU3BlY2lhbFZhbE5ld1BvbGljeVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBwdWJsaWMgc3RhdGljIEdldFNwZWNpYWxWYWxOZXdQb2xpY3koKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gR3VpRW52aXJvbm1lbnQuRW52aXJvbm1lbnQuR2V0U3BlY2lhbFZhbE5ld1BvbGljeSgpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbiJdfQ==
@@ -0,0 +1,33 @@
1
+ export class UIBridge {
2
+ getInteractiveCallback = null;
3
+ executeCommandsCallback = null;
4
+ static instance;
5
+ constructor() {
6
+ }
7
+ static getInstance() {
8
+ if (!UIBridge.instance) {
9
+ UIBridge.instance = new UIBridge();
10
+ }
11
+ return UIBridge.instance;
12
+ }
13
+ ExecuteInteractiveCommand(command) {
14
+ if (this.getInteractiveCallback != null)
15
+ return this.getInteractiveCallback(command);
16
+ return "";
17
+ }
18
+ executeCommands(commands) {
19
+ if (this.executeCommandsCallback != null && commands != null) {
20
+ this.executeCommandsCallback(commands);
21
+ }
22
+ }
23
+ registerInteractiveCallback(getIntractiveCallback) {
24
+ this.getInteractiveCallback = getIntractiveCallback;
25
+ }
26
+ registerExecuteCommandsCallback(executeCommandsCallback) {
27
+ this.executeCommandsCallback = executeCommandsCallback;
28
+ }
29
+ saveData(data) {
30
+ console.log(data);
31
+ }
32
+ }
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVUlCcmlkZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL1VJQnJpZGdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFFLE1BQU0sT0FBTyxRQUFRO0lBR25CLHNCQUFzQixHQUEyQixJQUFJLENBQUM7SUFDdEQsdUJBQXVCLEdBQTRCLElBQUksQ0FBQztJQUVoRCxNQUFNLENBQUMsUUFBUSxDQUFXO0lBRWxDO0lBRUEsQ0FBQztJQUVELE1BQU0sQ0FBQyxXQUFXO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkIsUUFBUSxDQUFDLFFBQVEsR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBRXJDLENBQUM7UUFDRCxPQUFPLFFBQVEsQ0FBQyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQUdNLHlCQUF5QixDQUFDLE9BQXNCO1FBQ3JELElBQUksSUFBSSxDQUFDLHNCQUFzQixJQUFJLElBQUk7WUFDckMsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUUsT0FBTyxDQUFDLENBQUM7UUFDL0MsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRU0sZUFBZSxDQUFDLFFBQXNCO1FBQzNDLElBQUksSUFBSSxDQUFDLHVCQUF1QixJQUFJLElBQUksSUFBSSxRQUFRLElBQUksSUFBSSxFQUFFLENBQUM7WUFDN0QsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXpDLENBQUM7SUFDSCxDQUFDO0lBR00sMkJBQTJCLENBQUMscUJBQTRDO1FBQzdFLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxxQkFBcUIsQ0FBQztJQUN0RCxDQUFDO0lBRU0sK0JBQStCLENBQUMsdUJBQWdEO1FBQ3JGLElBQUksQ0FBQyx1QkFBdUIsR0FBRyx1QkFBdUIsQ0FBQztJQUN6RCxDQUFDO0lBR00sUUFBUSxDQUFDLElBQVk7UUFDMUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0d1aUNvbW1hbmR9IGZyb20gXCIuL2d1aS9sb3cvR3VpQ29tbWFuZFwiO1xyXG5pbXBvcnQge0d1aUludGVyYWN0aXZlfSBmcm9tIFwiLi9ndWkvbG93L0d1aUludGVyYWN0aXZlXCI7XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBFeGVjdXRlQ29tbWFuZHNDYWxsYmFjayA9IChjb21tYW5kczogR3VpQ29tbWFuZFtdKSA9PiB2b2lkO1xyXG5leHBvcnQgZGVjbGFyZSB0eXBlIEdldEludHJhY3RpdmVDYWxsYmFjayA9IChjb21tYW5kOiBHdWlJbnRlcmFjdGl2ZSkgPT4gc3RyaW5nO1xyXG5cclxuLy8gQGR5bmFtaWNcclxuICBleHBvcnQgY2xhc3MgVUlCcmlkZ2Uge1xyXG5cclxuICAgIC8vIGRlZmluZSBjYWxsYmFja3NcclxuICAgIGdldEludGVyYWN0aXZlQ2FsbGJhY2sgOiBHZXRJbnRyYWN0aXZlQ2FsbGJhY2sgPSBudWxsO1xyXG4gICAgZXhlY3V0ZUNvbW1hbmRzQ2FsbGJhY2s6IEV4ZWN1dGVDb21tYW5kc0NhbGxiYWNrID0gbnVsbDtcclxuXHJcbiAgICBwcml2YXRlIHN0YXRpYyBpbnN0YW5jZTogVUlCcmlkZ2U7XHJcblxyXG4gICAgcHJpdmF0ZSBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgLy8gZG8gc29tZXRoaW5nIGNvbnN0cnVjdC4uLlxyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBnZXRJbnN0YW5jZSgpIHtcclxuICAgICAgaWYgKCFVSUJyaWRnZS5pbnN0YW5jZSkge1xyXG4gICAgICAgIFVJQnJpZGdlLmluc3RhbmNlID0gbmV3IFVJQnJpZGdlKCk7XHJcbiAgICAgICAgLy8gLi4uIGFueSBvbmUgdGltZSBpbml0aWFsaXphdGlvbiBnb2VzIGhlcmUgLi4uXHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIFVJQnJpZGdlLmluc3RhbmNlO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBwdWJsaWMgRXhlY3V0ZUludGVyYWN0aXZlQ29tbWFuZChjb21tYW5kOkd1aUludGVyYWN0aXZlKTogc3RyaW5nIHtcclxuICAgICAgaWYgKHRoaXMuZ2V0SW50ZXJhY3RpdmVDYWxsYmFjayAhPSBudWxsKVxyXG4gICAgICAgIHJldHVybiB0aGlzLmdldEludGVyYWN0aXZlQ2FsbGJhY2soIGNvbW1hbmQpO1xyXG4gICAgICByZXR1cm4gXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZXhlY3V0ZUNvbW1hbmRzKGNvbW1hbmRzOiBHdWlDb21tYW5kW10pOiB2b2lkIHtcclxuICAgICAgaWYgKHRoaXMuZXhlY3V0ZUNvbW1hbmRzQ2FsbGJhY2sgIT0gbnVsbCAmJiBjb21tYW5kcyAhPSBudWxsKSB7XHJcbiAgICAgICAgdGhpcy5leGVjdXRlQ29tbWFuZHNDYWxsYmFjayhjb21tYW5kcyk7XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHB1YmxpYyByZWdpc3RlckludGVyYWN0aXZlQ2FsbGJhY2soZ2V0SW50cmFjdGl2ZUNhbGxiYWNrOiBHZXRJbnRyYWN0aXZlQ2FsbGJhY2spOiB2b2lkIHtcclxuICAgICAgdGhpcy5nZXRJbnRlcmFjdGl2ZUNhbGxiYWNrID0gZ2V0SW50cmFjdGl2ZUNhbGxiYWNrO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyByZWdpc3RlckV4ZWN1dGVDb21tYW5kc0NhbGxiYWNrKGV4ZWN1dGVDb21tYW5kc0NhbGxiYWNrOiBFeGVjdXRlQ29tbWFuZHNDYWxsYmFjayk6IHZvaWQge1xyXG4gICAgICB0aGlzLmV4ZWN1dGVDb21tYW5kc0NhbGxiYWNrID0gZXhlY3V0ZUNvbW1hbmRzQ2FsbGJhY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gdXNlZCB0byBzYXZlIHN0dWIgZGF0YVxyXG4gICAgcHVibGljIHNhdmVEYXRhKGRhdGE6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICBjb25zb2xlLmxvZyhkYXRhKTtcclxuICAgIH1cclxuICB9XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUVudmlyb25tZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9lbnYvSUVudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbmNvZGluZyB9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4vLy8gZnVuY3Rpb25hbGl0eSByZXF1aXJlZCBieSB0aGUgR1VJIG5hbWVzcGFjZSBmcm9tIHRoZSBFbnZpcm9ubWVudCBjbGFzcy5cclxuLy8vIDwvc3VtbWFyeT5cclxuZXhwb3J0IGludGVyZmFjZSBJRW52aXJvbm1lbnQge1xyXG5cclxuICBMYW5ndWFnZTogc3RyaW5nO1xyXG5cclxuXHJcbiAgSWdub3JlUmVwbGFjZURlY2ltYWxTZXBhcmF0b3I6IGJvb2xlYW47XHJcblxyXG4gIC8vIGluc3RydWN0IGhvdyB0byByZWZlciBhIGZvcndhcmQgc2xhc2ggLSBlaXRoZXIgYXMgYSByZWxhdGl2ZSB3ZWIgdXJsLCBvciBhcyBhIGZpbGUgaW4gdGhlIGZpbGUgc3lzdGVtLlxyXG4gIEZvcndhcmRTbGFzaFVzYWdlOiBzdHJpbmc7XHJcblxyXG4gIEdldERhdGVNb2RlKGNvbXBJZHg6IG51bWJlcik6IHN0cmluZztcclxuXHJcbiAgR2V0Q2VudHVyeShjb21wSWR4OiBudW1iZXIpOiBudW1iZXI7XHJcblxyXG4gIEdldERhdGUoKTogc3RyaW5nO1xyXG5cclxuICBHZXRUaW1lKCk6IHN0cmluZztcclxuXHJcbiAgR2V0RGVjaW1hbCgpOiBzdHJpbmc7XHJcblxyXG4gIENhblJlcGxhY2VEZWNpbWFsU2VwYXJhdG9yKCk6IGJvb2xlYW47XHJcblxyXG4gIEdldFRob3VzYW5kcygpOiBzdHJpbmc7XHJcblxyXG4gIEdldFRvb2x0aXBUaW1lb3V0KCk6IG51bWJlcjtcclxuXHJcblxyXG4gIEdldEdVSUQoKTogc3RyaW5nO1xyXG5cclxuXHJcbiAgR2V0SW1lQXV0b09mZigpOiBib29sZWFuO1xyXG5cclxuICBHZXRMb2NhbEFzNDAwU2V0KCk6IGJvb2xlYW47XHJcblxyXG4gIHNldERlY2ltYWxTZXBhcmF0b3IodmFsdWU6IHN0cmluZykgOiB2b2lkO1xyXG5cclxuICBzZXRUaG91c2FuZHNTZXBhcmF0b3IodmFsdWU6IHN0cmluZykgOiB2b2lkO1xyXG5cclxuICBHZXRMb2NhbEZsYWcoZjogc3RyaW5nKTogYm9vbGVhbjtcclxuXHJcbiAgR2V0U2lnbmlmaWNhbnROdW1TaXplKCk6IG51bWJlcjtcclxuXHJcbiAgR2V0RGVidWdMZXZlbCgpOiBudW1iZXI7XHJcblxyXG4gIEdldEVuY29kaW5nKCk6IEVuY29kaW5nO1xyXG5cclxuICBHZXREcm9wVXNlckZvcm1hdHMoKTogc3RyaW5nO1xyXG5cclxuXHJcbiAgR2V0U3BlY2lhbExvZ0ludGVybmFsRXhjZXB0aW9ucygpOiBib29sZWFuO1xyXG5cclxuXHJcbiAgZ2V0Q29udGV4dEluYWN0aXZpdHlUaW1lb3V0KCk6IG51bWJlcjtcclxuXHJcbiAgZ2V0Q2xpZW50Q29udGV4dEluYWN0aXZpdHlUaW1lb3V0KCk6IG51bWJlcjtcclxuXHJcbiAgZ2V0Q29udGV4dEluYWN0aXZpdHlXYXJuaW5nVGltZSgpOiBudW1iZXI7XHJcblxyXG4gIGdldElkbGVUaW1lKGNvbXBJZHg6IG51bWJlcik6IG51bWJlcjtcclxuXHJcbiAgR2V0U3BlY2lhbFZhbE5ld1BvbGljeSgpOiBib29sZWFuO1xyXG4gIEdldFNwZWNpYWxDYW5jZWxPbkNyZWF0ZSgpOiBib29sZWFuO1xyXG59XHJcbiJdfQ==
@@ -1,3 +1,3 @@
1
- export class ControlBase {
2
- }
1
+ export class ControlBase {
2
+ }
3
3
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udHJvbEJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL2d1aS9Db250cm9sQmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQWlCLFdBQVc7Q0FLakMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgYWJzdHJhY3QgY2xhc3MgIENvbnRyb2xCYXNlIHtcclxuXHJcbiAgYWJzdHJhY3QgZ2V0IFVuaXF1ZU5hbWUoKTogc3RyaW5nO1xyXG5cclxuICBhYnN0cmFjdCBnZXQgVGFza1RhZygpOiBzdHJpbmc7XHJcbn1cclxuIl19
@@ -0,0 +1,123 @@
1
+ import { CtrlButtonTypeGui, MgControlType } from "@magic-xpa/utils";
2
+ import { Debug, Int32 } from "@magic-xpa/mscorelib";
3
+ import { ControlBase } from "./ControlBase";
4
+ export class GuiMgControl extends ControlBase {
5
+ _type = MgControlType.CTRL_TYPE_NONE;
6
+ ConnectedControl;
7
+ set Type(value) {
8
+ if (this._type === MgControlType.CTRL_TYPE_NONE) {
9
+ this._type = value;
10
+ }
11
+ else {
12
+ Debug.Assert(false);
13
+ }
14
+ }
15
+ get Type() {
16
+ return this._type;
17
+ }
18
+ ButtonStyle = CtrlButtonTypeGui.None;
19
+ IsRepeatable = false;
20
+ get IsTableChild() {
21
+ let parent = ((this.getParent() instanceof GuiMgControl) ? this.getParent() : null);
22
+ let parentIsTable = parent !== null && parent.isTableControl();
23
+ return parentIsTable && !this.isColumnControl();
24
+ }
25
+ get IsTableHeaderChild() {
26
+ return !this.IsRepeatable && this.IsTableChild;
27
+ }
28
+ Layer = 0;
29
+ Name = null;
30
+ GuiMgForm = null;
31
+ getName(line) {
32
+ let result;
33
+ if (this.IsRepeatable) {
34
+ if (line > Int32.MinValue) {
35
+ result = this.Name + "_" + line;
36
+ }
37
+ else {
38
+ result = this.Name + "_0";
39
+ }
40
+ }
41
+ else {
42
+ result = this.Name;
43
+ }
44
+ return result;
45
+ }
46
+ get UniqueName() {
47
+ return this.Name;
48
+ }
49
+ isStatic() {
50
+ return this._type === MgControlType.CTRL_TYPE_LABEL || this._type === MgControlType.CTRL_TYPE_GROUP || this._type === MgControlType.CTRL_TYPE_TABLE ||
51
+ this._type === MgControlType.CTRL_TYPE_COLUMN || this._type === MgControlType.CTRL_TYPE_STATUS_BAR || this._type === MgControlType.CTRL_TYPE_SB_IMAGE ||
52
+ this._type === MgControlType.CTRL_TYPE_SB_LABEL || this._type === MgControlType.CTRL_TYPE_LINE;
53
+ }
54
+ isTableControl() {
55
+ return this._type === MgControlType.CTRL_TYPE_TABLE;
56
+ }
57
+ isTabControl() {
58
+ return this._type === MgControlType.CTRL_TYPE_TAB;
59
+ }
60
+ isTextControl() {
61
+ return this._type === MgControlType.CTRL_TYPE_TEXT;
62
+ }
63
+ isImageControl() {
64
+ return this._type === MgControlType.CTRL_TYPE_IMAGE;
65
+ }
66
+ isSubform() {
67
+ return this._type === MgControlType.CTRL_TYPE_SUBFORM;
68
+ }
69
+ isRadio() {
70
+ return this._type === MgControlType.CTRL_TYPE_RADIO;
71
+ }
72
+ isComboBox() {
73
+ return this._type === MgControlType.CTRL_TYPE_COMBO;
74
+ }
75
+ isListBox() {
76
+ return this._type === MgControlType.CTRL_TYPE_LIST;
77
+ }
78
+ isButton() {
79
+ return this._type === MgControlType.CTRL_TYPE_BUTTON;
80
+ }
81
+ isLabel() {
82
+ return this._type === MgControlType.CTRL_TYPE_LABEL;
83
+ }
84
+ isGroup() {
85
+ return this._type === MgControlType.CTRL_TYPE_GROUP;
86
+ }
87
+ isSelectionCtrl() {
88
+ return this._type === MgControlType.CTRL_TYPE_COMBO || this._type === MgControlType.CTRL_TYPE_LIST;
89
+ }
90
+ isCheckBox() {
91
+ return this._type === MgControlType.CTRL_TYPE_CHECKBOX;
92
+ }
93
+ isColumnControl() {
94
+ return this._type === MgControlType.CTRL_TYPE_COLUMN;
95
+ }
96
+ isChoiceControl() {
97
+ let val = false;
98
+ switch (this._type) {
99
+ case MgControlType.CTRL_TYPE_TAB:
100
+ case MgControlType.CTRL_TYPE_COMBO:
101
+ case MgControlType.CTRL_TYPE_LIST:
102
+ case MgControlType.CTRL_TYPE_RADIO:
103
+ val = true;
104
+ break;
105
+ }
106
+ return val;
107
+ }
108
+ IsImageButton() {
109
+ let result = false;
110
+ if (this.isButton()) {
111
+ result = (this.ButtonStyle === CtrlButtonTypeGui.Image);
112
+ }
113
+ return result;
114
+ }
115
+ IsHyperTextButton() {
116
+ let result = false;
117
+ if (this.isButton()) {
118
+ result = (this.ButtonStyle === CtrlButtonTypeGui.Hypertext);
119
+ }
120
+ return result;
121
+ }
122
+ }
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpTWdDb250cm9sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9ndWkvR3VpTWdDb250cm9sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRSxPQUFPLEVBQUMsS0FBSyxFQUFFLEtBQUssRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRWxELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHMUMsTUFBTSxPQUFnQixZQUFhLFNBQVEsV0FBVztJQUM1QyxLQUFLLEdBQWtCLGFBQWEsQ0FBQyxjQUFjLENBQUM7SUFHckQsZ0JBQWdCLENBQWU7SUFFdEMsSUFBSSxJQUFJLENBQUMsS0FBb0I7UUFDM0IsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLGFBQWEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNoRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNyQixDQUFDO2FBQ0ksQ0FBQztZQUNKLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEIsQ0FBQztJQUNILENBQUM7SUFHRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELFdBQVcsR0FBc0IsaUJBQWlCLENBQUMsSUFBSSxDQUFDO0lBQ3hELFlBQVksR0FBWSxLQUFLLENBQUM7SUFFOUIsSUFBSSxZQUFZO1FBQ2QsSUFBSSxNQUFNLEdBQWlCLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFlBQVksWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFlLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEgsSUFBSSxhQUFhLEdBQVksTUFBTSxLQUFLLElBQUksSUFBSSxNQUFNLENBQUMs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SUFDaEIsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCB7Q3RybEJ1dHRvblR5cGVHdWksIE1nQ29udHJvbFR5cGV9IGZyb20gXCJAbWFnaWMteHBhL3V0aWxzXCI7XHJcbmltcG9ydCB7RGVidWcsIEludDMyfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuaW1wb3J0IHtHdWlNZ0Zvcm19IGZyb20gXCIuL0d1aU1nRm9ybVwiO1xyXG5pbXBvcnQge0NvbnRyb2xCYXNlfSBmcm9tIFwiLi9Db250cm9sQmFzZVwiO1xyXG5cclxuXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBHdWlNZ0NvbnRyb2wgZXh0ZW5kcyBDb250cm9sQmFzZSB7XHJcbiAgcHJpdmF0ZSBfdHlwZTogTWdDb250cm9sVHlwZSA9IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX05PTkU7XHJcblxyXG5cclxuICBwdWJsaWMgQ29ubmVjdGVkQ29udHJvbDogR3VpTWdDb250cm9sO1xyXG5cclxuICBzZXQgVHlwZSh2YWx1ZTogTWdDb250cm9sVHlwZSkge1xyXG4gICAgaWYgKHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX05PTkUpIHtcclxuICAgICAgdGhpcy5fdHlwZSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIERlYnVnLkFzc2VydChmYWxzZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0IFR5cGUoKTogTWdDb250cm9sVHlwZSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZTtcclxuICB9XHJcblxyXG4gIEJ1dHRvblN0eWxlOiBDdHJsQnV0dG9uVHlwZUd1aSA9IEN0cmxCdXR0b25UeXBlR3VpLk5vbmU7XHJcbiAgSXNSZXBlYXRhYmxlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGdldCBJc1RhYmxlQ2hpbGQoKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgcGFyZW50OiBHdWlNZ0NvbnRyb2wgPSAoKHRoaXMuZ2V0UGFyZW50KCkgaW5zdGFuY2VvZiBHdWlNZ0NvbnRyb2wpID8gPEd1aU1nQ29udHJvbD50aGlzLmdldFBhcmVudCgpIDogbnVsbCk7XHJcbiAgICBsZXQgcGFyZW50SXNUYWJsZTogYm9vbGVhbiA9IHBhcmVudCAhPT0gbnVsbCAmJiBwYXJlbnQuaXNUYWJsZUNvbnRyb2woKTtcclxuICAgIHJldHVybiBwYXJlbnRJc1RhYmxlICYmICF0aGlzLmlzQ29sdW1uQ29udHJvbCgpO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldCBJc1RhYmxlSGVhZGVyQ2hpbGQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIXRoaXMuSXNSZXBlYXRhYmxlICYmIHRoaXMuSXNUYWJsZUNoaWxkO1xyXG4gIH1cclxuXHJcbiAgTGF5ZXI6IG51bWJlciA9IDA7XHJcblxyXG4gIE5hbWU6IHN0cmluZyA9IG51bGw7XHJcbiAgR3VpTWdGb3JtOiBHdWlNZ0Zvcm0gPSBudWxsO1xyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGdldCB0aGUgbmFtZSBvZiB0aGUgQ29udHJvbCB3aXRoIHRoZSBsaW5lIG51bWJlciBmb3IgcmVwZWF0YWJsZSBjb250cm9sc1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgZ2V0TmFtZShsaW5lOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgbGV0IHJlc3VsdDogc3RyaW5nO1xyXG4gICAgaWYgKHRoaXMuSXNSZXBlYXRhYmxlKSB7XHJcbiAgICAgIGlmIChsaW5lID4gSW50MzIuTWluVmFsdWUpIHtcclxuICAgICAgICByZXN1bHQgPSB0aGlzLk5hbWUgKyBcIl9cIiArIGxpbmU7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgLy8gZWxzZSB0aGVyZSBpcyBubyBjdXJyZW50IHJvdywgeWV0IChwYXJzaW5nIHRpbWUgZm9yIGV4YW1wbGUpLiBUcnkgZmlyc3Qgcm93LlxyXG4gICAgICAgIHJlc3VsdCA9IHRoaXMuTmFtZSArIFwiXzBcIjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHJlc3VsdCA9IHRoaXMuTmFtZTtcclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICBhYnN0cmFjdCBnZXRQYXJlbnQoKTogYW55O1xyXG5cclxuICBhYnN0cmFjdCBnZXQgVGFza1RhZygpOiBzdHJpbmc7XHJcblxyXG4gIGdldCBVbmlxdWVOYW1lKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5OYW1lO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm5zIHRydWUgaWYgdGhpcyBjb250cm9sIGlzIGEgc3RhdGljIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzU3RhdGljKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0xBQkVMIHx8IHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0dST1VQIHx8IHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1RBQkxFIHx8XHJcbiAgICAgIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0NPTFVNTiB8fCB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9TVEFUVVNfQkFSIHx8IHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1NCX0lNQUdFIHx8XHJcbiAgICAgIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1NCX0xBQkVMIHx8IHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0xJTkU7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybiB0cnVlIGZvciB0YWJsZSBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+XHJcbiAgLy8vIDwvcmV0dXJucz5cclxuICBpc1RhYmxlQ29udHJvbCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9UQUJMRTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm4gdHJ1ZSBmb3IgdGFiIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz5cclxuICAvLy8gPC9yZXR1cm5zPlxyXG4gIGlzVGFiQ29udHJvbCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9UQUI7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm4gdGV4dCBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+XHJcbiAgLy8vIDwvcmV0dXJucz5cclxuICBpc1RleHRDb250cm9sKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1RFWFQ7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJuIHRydWUgZm9yIGltYWdlIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgaXNJbWFnZUNvbnRyb2woKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfSU1BR0U7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoaXMgY29udHJvbCBpcyBhIHN1YiBmb3JtIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzU3ViZm9ybSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9TVUJGT1JNO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBzdWIgZm9ybSBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBpc1JhZGlvKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1JBRElPO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBDb21ib0JveCBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBpc0NvbWJvQm94KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0NPTUJPO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBMaXN0Qm94IGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzTGlzdEJveCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9MSVNUO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBpc0J1dHRvbiBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBpc0J1dHRvbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9CVVRUT047XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoaXMgY29udHJvbCBpcyBhIGxhYmVsIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzTGFiZWwoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfTEFCRUw7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoaXMgY29udHJvbCBpcyBhIEdyb3VwIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzR3JvdXAoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfR1JPVVA7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoZSBjb250cm9sIGlzIGVpdGhlciBjb21ibyBvciBsaXN0XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+XHJcbiAgLy8vIDwvcmV0dXJucz5cclxuICBpc1NlbGVjdGlvbkN0cmwoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfQ09NQk8gfHwgdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfTElTVDtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgaXNDaGVja0JveCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9DSEVDS0JPWDtcclxuICB9XHJcblxyXG4gIGlzQ29sdW1uQ29udHJvbCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9DT0xVTU47XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgUmV0dXJucyB0cnVlIGlmIHRoZSBjb250cm9sIGlzIGEgY2hvaWNlIGNvbnRyb2w6IENUUkxfVFlQRV9UQUIsIENUUkxfVFlQRV9DT01CTywgQ1RSTF9UWVBFX0xJU1QsXHJcbiAgLy8vICAgQ1RSTF9UWVBFX1JBRElPXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+PC9yZXR1cm5zPlxyXG4gIGlzQ2hvaWNlQ29udHJvbCgpOiBib29sZWFuIHtcclxuICAgIGxldCB2YWw6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHN3aXRjaCAodGhpcy5fdHlwZSkge1xyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1RBQjpcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9DT01CTzpcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9MSVNUOlxyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1JBRElPOlxyXG4gICAgICAgIHZhbCA9IHRydWU7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmFsO1xyXG4gIH1cclxuXHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJuIFRSVUUgaWYgdGhlIGNvbnRyb2wgaXMgYnV0dG9uIGFuZCBoaXMgc3R5bGUgaXMgdGV4dCBvbiBpbWFnZVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBJc0ltYWdlQnV0dG9uKCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IHJlc3VsdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgaWYgKHRoaXMuaXNCdXR0b24oKSkge1xyXG4gICAgICByZXN1bHQgPSAodGhpcy5CdXR0b25TdHlsZSA9PT0gQ3RybEJ1dHRvblR5cGVHdWkuSW1hZ2UpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybiBUUlVFIGlmIHRoZSBjb250cm9sIGlzIGJ1dHRvbiBhbmQgaGlzIHN0eWxlIGlzIEh5cGVyIFRleHRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgSXNIeXBlclRleHRCdXR0b24oKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgcmVzdWx0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBpZiAodGhpcy5pc0J1dHRvbigpKSB7XHJcbiAgICAgIHJlc3VsdCA9ICh0aGlzLkJ1dHRvblN0eWxlID09PSBDdHJsQnV0dG9uVHlwZUd1aS5IeXBlcnRleHQpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG59XHJcblxyXG4iXX0=
@@ -1,4 +1,4 @@
1
- import { ControlBase } from "./ControlBase";
2
- export class GuiMgForm extends ControlBase {
3
- }
1
+ import { ControlBase } from "./ControlBase";
2
+ export class GuiMgForm extends ControlBase {
3
+ }
4
4
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpTWdGb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9ndWkvR3VpTWdGb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFMUMsTUFBTSxPQUFnQixTQUFVLFNBQVEsV0FBVztDQUVsRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29udHJvbEJhc2V9IGZyb20gXCIuL0NvbnRyb2xCYXNlXCI7XHJcblxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgR3VpTWdGb3JtIGV4dGVuZHMgQ29udHJvbEJhc2Uge1xyXG5cclxufVxyXG4iXX0=