@magic-xpa/gui 4.1200.0-dev4120.21 → 4.1200.0-dev4120.212
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.
- package/fesm2022/magic-xpa-gui.mjs +5724 -249
- package/fesm2022/magic-xpa-gui.mjs.map +1 -1
- package/index.d.ts +3 -0
- package/package.json +2 -4
- package/src/GuiEnums.d.ts +3 -0
- package/src/gui/GuiMgControl.d.ts +1 -0
- package/src/management/exp/ExpressionInterface.d.ts +1 -0
- package/src/management/gui/MgControlBase.d.ts +1 -1
- package/src/management/gui/PropInterface.d.ts +2 -1
- package/esm2022/index.mjs +0 -71
- package/esm2022/magic-xpa-gui.mjs +0 -2
- package/esm2022/src/Commands.mjs +0 -184
- package/esm2022/src/Events.mjs +0 -425
- package/esm2022/src/EventsProcessor.mjs +0 -67
- package/esm2022/src/FocusManager.mjs +0 -34
- package/esm2022/src/GuiConstants.mjs +0 -68
- package/esm2022/src/GuiEnums.mjs +0 -301
- package/esm2022/src/GuiEnvironment.mjs +0 -4
- package/esm2022/src/IFlowMonitorQueue.mjs +0 -2
- package/esm2022/src/Manager.mjs +0 -91
- package/esm2022/src/UIBridge.mjs +0 -33
- package/esm2022/src/env/IEnvironment.mjs +0 -2
- package/esm2022/src/gui/ControlBase.mjs +0 -3
- package/esm2022/src/gui/GuiMgControl.mjs +0 -123
- package/esm2022/src/gui/GuiMgForm.mjs +0 -4
- package/esm2022/src/gui/KeyboardItem.mjs +0 -135
- package/esm2022/src/gui/LastFocusedVal.mjs +0 -11
- package/esm2022/src/gui/MgValue.mjs +0 -16
- package/esm2022/src/gui/PropParentInterface.mjs +0 -2
- package/esm2022/src/gui/low/DialogHandler.mjs +0 -7
- package/esm2022/src/gui/low/GuiCommand.mjs +0 -68
- package/esm2022/src/gui/low/GuiCommandQueue.mjs +0 -35
- package/esm2022/src/gui/low/GuiInteractive.mjs +0 -178
- package/esm2022/src/gui/low/Style.mjs +0 -20
- package/esm2022/src/management/RuntimeContextBase.mjs +0 -42
- package/esm2022/src/management/data/BlobType.mjs +0 -281
- package/esm2022/src/management/data/DcValues.mjs +0 -214
- package/esm2022/src/management/data/DcValuesBuilderBase.mjs +0 -96
- package/esm2022/src/management/data/FieldDef.mjs +0 -331
- package/esm2022/src/management/data/FieldsTable.mjs +0 -54
- package/esm2022/src/management/data/GuiDataViewBase.mjs +0 -88
- package/esm2022/src/management/data/GuiFieldBase.mjs +0 -82
- package/esm2022/src/management/data/IRecord.mjs +0 -2
- package/esm2022/src/management/data/IReferencedObject.mjs +0 -2
- package/esm2022/src/management/data/NUM_TYPE.mjs +0 -1739
- package/esm2022/src/management/data/ObjectReferenceBase.mjs +0 -48
- package/esm2022/src/management/data/ObjectReferencesCollection.mjs +0 -27
- package/esm2022/src/management/data/RecordUtils.mjs +0 -361
- package/esm2022/src/management/data/VectorType.mjs +0 -612
- package/esm2022/src/management/data/VectorTypeBase.mjs +0 -88
- package/esm2022/src/management/events/IActionManager.mjs +0 -2
- package/esm2022/src/management/events/IGuiEventsManager.mjs +0 -2
- package/esm2022/src/management/exp/ExpressionInterface.mjs +0 -244
- package/esm2022/src/management/exp/GuiExpressionEvaluator.mjs +0 -305
- package/esm2022/src/management/gui/ControlTable.mjs +0 -118
- package/esm2022/src/management/gui/DisplayConvertor.mjs +0 -1649
- package/esm2022/src/management/gui/FieldValidator.mjs +0 -711
- package/esm2022/src/management/gui/GuiControlPropertyAdapter.mjs +0 -24
- package/esm2022/src/management/gui/GuiFormPropertyAdapter.mjs +0 -11
- package/esm2022/src/management/gui/HebrewDate.mjs +0 -278
- package/esm2022/src/management/gui/Helps.mjs +0 -237
- package/esm2022/src/management/gui/MgControlBase.mjs +0 -1869
- package/esm2022/src/management/gui/MgFormBase.mjs +0 -741
- package/esm2022/src/management/gui/PIC.mjs +0 -1185
- package/esm2022/src/management/gui/PropDefaults.mjs +0 -230
- package/esm2022/src/management/gui/PropInterface.mjs +0 -246
- package/esm2022/src/management/gui/PropTable.mjs +0 -221
- package/esm2022/src/management/gui/Property.mjs +0 -1362
- package/esm2022/src/management/gui/ValidationDetails.mjs +0 -248
- package/esm2022/src/management/gui/ValidationDetailsBase.mjs +0 -93
- package/esm2022/src/management/gui/WrongFormatException.mjs +0 -29
- package/esm2022/src/management/tasks/GuiDataCollection.mjs +0 -4
- package/esm2022/src/management/tasks/GuiTaskBase.mjs +0 -511
- package/esm2022/src/management/tasks/IMGDataTable.mjs +0 -2
- package/esm2022/src/management/tasks/ITask.mjs +0 -2
- package/esm2022/src/management/tasks/MgTimer.mjs +0 -21
- package/esm2022/src/management/tasks/TaskDefinitionId.mjs +0 -54
- package/esm2022/src/management/tasks/TaskDefinitionIdTableSaxHandler.mjs +0 -41
- package/esm2022/src/util/MemoryUtil.mjs +0 -35
- package/esm2022/src/util/ObjectReference.mjs +0 -36
- package/esm2022/src/util/UsernamePasswordCredentials.mjs +0 -52
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { UIBridge } from "../../UIBridge";
|
|
2
|
-
export class GuiCommandQueue {
|
|
3
|
-
static _instance = null;
|
|
4
|
-
_commandsQueue = null;
|
|
5
|
-
_executingGuiCommands = false;
|
|
6
|
-
constructor() {
|
|
7
|
-
this.init();
|
|
8
|
-
}
|
|
9
|
-
static getInstance() {
|
|
10
|
-
if (GuiCommandQueue._instance === null)
|
|
11
|
-
GuiCommandQueue._instance = new GuiCommandQueue();
|
|
12
|
-
return GuiCommandQueue._instance;
|
|
13
|
-
}
|
|
14
|
-
init() {
|
|
15
|
-
this._commandsQueue = new Array();
|
|
16
|
-
}
|
|
17
|
-
addCommand(guiCommand) {
|
|
18
|
-
this.put(guiCommand);
|
|
19
|
-
}
|
|
20
|
-
put(guiCommand) {
|
|
21
|
-
this._commandsQueue.push(guiCommand);
|
|
22
|
-
}
|
|
23
|
-
beginInvoke() {
|
|
24
|
-
this.invoke();
|
|
25
|
-
}
|
|
26
|
-
invoke() {
|
|
27
|
-
if (!this._executingGuiCommands) {
|
|
28
|
-
this._executingGuiCommands = true;
|
|
29
|
-
UIBridge.getInstance().executeCommands(this._commandsQueue);
|
|
30
|
-
this._commandsQueue.length = 0;
|
|
31
|
-
this._executingGuiCommands = false;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpQ29tbWFuZFF1ZXVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9ndWkvbG93L0d1aUNvbW1hbmRRdWV1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEMsTUFBTSxPQUFPLGVBQWU7SUFDbEIsTUFBTSxDQUFDLFNBQVMsR0FBb0IsSUFBSSxDQUFDO0lBRXpDLGNBQWMsR0FBc0IsSUFBSSxDQUFDO0lBQ3pDLHFCQUFxQixHQUFZLEtBQUssQ0FBQztJQUsvQztRQUNFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFPRCxNQUFNLENBQUMsV0FBVztRQUNoQixJQUFJLGVBQWUsQ0FBQyxTQUFTLEtBQUssSUFBSTtZQUNwQyxlQUFlLENBQUMsU0FBUyxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFDcEQsT0FBTyxlQUFlLENBQUMsU0FBUyxDQUFDO0lBQ25DLENBQUM7SUFHRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLEtBQUssRUFBYyxDQUFDO0lBQ2hELENBQUM7SUFHRCxVQUFVLENBQUMsVUFBc0I7UUFDL0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBT08sR0FBRyxDQUFDLFVBQXNCO1FBb0NoQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQVF2QyxDQUFDO0lBS0QsV0FBVztRQUNULElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUVoQixDQUFDO0lBS0QsTUFBTTtRQUNKLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDL0IsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztZQUNsQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUM1RCxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDL0IsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FBQztTQUNwQztJQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHN1bW1hcnk+XHJcbi8vLyA8c3VtbWFyeT5cclxuLy8vICAgR3VpIGNvbW1hbmQgcXVldWVcclxuLy8vIDwvc3VtbWFyeT5cclxuaW1wb3J0IHtVSUJyaWRnZX0gZnJvbSBcIi4uLy4uL1VJQnJpZGdlXCI7XHJcbmltcG9ydCB7R3VpQ29tbWFuZH0gZnJvbSBcIi4vR3VpQ29tbWFuZFwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIEd1aUNvbW1hbmRRdWV1ZSB7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgX2luc3RhbmNlOiBHdWlDb21tYW5kUXVldWUgPSBudWxsO1xyXG5cclxuICBwcml2YXRlIF9jb21tYW5kc1F1ZXVlOiBBcnJheTxHdWlDb21tYW5kPiA9IG51bGw7XHJcbiAgcHJpdmF0ZSBfZXhlY3V0aW5nR3VpQ29tbWFuZHM6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGJhc2lzIENvbnN0cnVjdG9yXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuaW5pdCgpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGVuZCBpbm5lciBjbGFzcyBHdWlDb21tYW5kXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHN1bW1hcnk+c2luZ2xldG9uPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz4gcmVmZXJlbmNlIHRvIEd1aUNvbW1hbmRRdWV1ZSBvYmplY3Q8L3JldHVybnM+XHJcbiAgc3RhdGljIGdldEluc3RhbmNlKCk6IEd1aUNvbW1hbmRRdWV1ZSB7XHJcbiAgICBpZiAoR3VpQ29tbWFuZFF1ZXVlLl9pbnN0YW5jZSA9PT0gbnVsbClcclxuICAgICAgR3VpQ29tbWFuZFF1ZXVlLl9pbnN0YW5jZSA9IG5ldyBHdWlDb21tYW5kUXVldWUoKTtcclxuICAgIHJldHVybiBHdWlDb21tYW5kUXVldWUuX2luc3RhbmNlO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PkNvbnN0cnVjdG9yPC9zdW1tYXJ5PlxyXG4gIGluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9jb21tYW5kc1F1ZXVlID0gbmV3IEFycmF5PEd1aUNvbW1hbmQ+KCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgYWRkQ29tbWFuZChndWlDb21tYW5kOiBHdWlDb21tYW5kKTogdm9pZCB7XHJcbiAgICB0aGlzLnB1dChndWlDb21tYW5kKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gQWRkcyBhIGNvbW1hbmQgdG8gdGhlIHF1ZXVlLiBJZiB0aGVyZSBhcmUgYWxyZWFkeSBlbm91Z2ggY29tbWFuZHMgaW4gdGhlIHF1ZXVlIHRoZW5cclxuICAvLy8gaXQgd2lsbCB3YWl0IHRpbGwgdGhlIHF1ZXVlIGlzIGVtcHRpZWQgYnUgR3VpIHRocmVhZC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImd1aUNvbW1hbmRcIj48L3BhcmFtPlxyXG4gIHByaXZhdGUgcHV0KGd1aUNvbW1hbmQ6IEd1aUNvbW1hbmQpOiB2b2lkIHtcclxuICAgIC8vIGNvbnN0IFFVRVVFX1NJWkVfVEhSRVNIT0xEOiBudW1iZXIgPSAxMjAwOyAvLyBhIHRocmVzaG9sZCBhYm92ZSB3aGljaCBjb21tYW5kcyB3aWxsIG5vdCBiZSBpbnNlcnRlZCB0byB0aGUgcXVldWUgdW50aWwgdGhlIHF1ZXVlIHdpbGwgYmUgZW1wdHkuXHJcbiAgICAvLyBjb25zdCBNQVhfU0xFRVBfRFVSQVRJT046IG51bWJlciA9IDQ7Ly8gZHVyYXRpb24sIGluIG1zLCBiZXR3ZWVuIGNoZWNraW5nIHRoYXQgdGhlIHF1ZXVlIGlzIGVtcHR5LlxyXG4gICAgLy9cclxuICAgIC8vIC8vIElmIHdvcmtlciB0aHJlYWQgd2FudHMgdG8gYWRkIGEgY29tbWFuZCBhbmQgdGhlcmUgYXJlIHRvbyBtYW55IGNvbW1hbmRzIGluIHRoZSBxdWV1ZSBwZW5kaW5nXHJcbiAgICAvLyAvLyB0byBiZSBwcm9jZXNzZWQgYnkgR3VpIHRocmVhZCB0aGVuIHN1c3BlbmQgY3VycmVudCB0aHJlYWQgdGlsbCB0aGUgY29tbWFuZHMgYXJlIG92ZXIuIElmIHdlIGtlZXBcclxuICAgIC8vIC8vIG9uIGFkZGluZyBjb21tYW5kcyB0byB0aGUgcXVldWUgYW5kIEd1aSB0aHJlYWQgZW50ZXJzIFJ1bigpLCB0aGVuIHNvbWV0aW1lcyAoc3BlY2lhbGx5IGluIGNhc2VzIG9mXHJcbiAgICAvLyAvLyBiYXRjaCB0YXNrcykgR3VpIHRocmVhZCByZW1haW5zIGluIFJ1bigpIGZvciBhIGxvbmcgdGltZSBhbmQgaGVuY2UgaXQgaXMgdW5hYmxlIHRvIHByb2Nlc3MgdXNlclxyXG4gICAgLy8gLy8gaW50ZXJhY3Rpb25zIChhcyBkZXNjcmliZWQgaW4gUUNSIzcyMjE0NSlcclxuICAgIC8vIC8vIEJlZm9yZSBlbnRlcmluZyB0aGUgbG9vcCBjb25maXJtIHRoYXQgdGhlIGNvbW1hbmQgaXMgTk9UIGJlaW5nIGFkZGVkIGJ5IEd1aSB0aHJlYWQgaXRzZWxmIGFuZCBHdWlcclxuICAgIC8vIC8vIHRocmVhZCBpcyBhbHJlYWR5IHByb2Nlc3NpbmcgdGhlIGNvbW1hbmRzLiBUaGlzIGlzIHRvIGVuc3VyZSB0aGF0IHRoZSBjb21tYW5kcyB3aWxsIGJlIHByb2Nlc3NlZCBieVxyXG4gICAgLy8gLy8gR3VpIHRocmVhZC4gSWYgR3VpIHRocmVhZCBpcyBub3QgcHJvY2Vzc2luZyBjb21tYW5kcywgdGhlbiBpdCB3aWxsIG5ldmVyIHByb2Nlc3MgaXQgYWdhaW4gYXMgaXQgaXNcclxuICAgIC8vIC8vIHRoZSB3b3JrZXIgdGhyZWFkIHRoYXQgaW52b2tlcyBHdWkgdGhyZWFkIGZvciBwcm9jZXNzaW5nIGNvbW1hbmRzXHJcbiAgICAvLyAvLyBBbHNvLCBzdXNwZW5kIHdvcmtlciB0aHJlYWQgZnJvbSBhZGRpbmcgbmV3IGNvbW1hbmRzIHRvIHRoZSBxdWV1ZSB0aWxsIFNIT1dfRk9STSBmb3IgbW9kYWwgd2luZG93XHJcbiAgICAvLyAvLyBpcyBwcm9jZXNzZWQuIFByb2JsZW0gb2NjdXJzIGlmIFNIT1dfRk9STSBpcyBmb2xsb3dlZCBieSBmZXcgbW9yZSBjb21tYW5kcyBhbmQgdGhlbiBhIGNhbGwgdG9cclxuICAgIC8vIC8vIEd1aUludGVyYWN0aXZlICB0aGF0IGRlcGVuZHMgb24gdGhlIGVhcmxpZXIgY29tbWFuZHMuIEluIHN1Y2ggY2FzZXMsIEd1aUludGVyYWN0aXZlIHdpbGwgbm90IHByb2Nlc3NcclxuICAgIC8vIC8vIGNvbW1hbmRzIGJldHdlZW4gU0hPV19GT1JNIGFuZCBpbnRlcmFjdGl2ZSBjb21tYW5kIGJlY2F1c2UgR3VpVGhyZWFkSXNBdmFpbGFibGVUb1Byb2Nlc3NDb21tYW5kc1xyXG4gICAgLy8gLy8gd2FzIHNldCB0byBmYWxzZSBiZWZvcmUgb3BlbmluZyB0aGUgZGlhbG9nLlxyXG4gICAgLy8gaWYgKCgodGhpcy5fY29tbWFuZHNRdWV1ZS5TaXplKCkgPiBRVUVVRV9TSVpFX1RIUkVTSE9MRCApIHx8IHRoaXMuX21vZGFsU2hvd0Zvcm1Db21tYW5kUHJlc2VudEluUXVldWUpKSB7XHJcbiAgICAvLyAgIGxldCBzbGVlcER1cmF0aW9uOiBudW1iZXIgPSBNQVhfU0xFRVBfRFVSQVRJT047XHJcbiAgICAvLyAgIGRvIHtcclxuICAgIC8vICAgICAvLyBnZXQgY3VycmVudCBzaXplIG9mIHRoZSBxdWV1ZSBhbmQgd2FpdCBmb3Igc29tZSB0aW1lXHJcbiAgICAvLyAgICAgY29uc3Qgc2l6ZTogbnVtYmVyID0gdGhpcy5fY29tbWFuZHNRdWV1ZS5TaXplKCk7XHJcbiAgICAvLyAgICAgLy9TeXN0ZW0uVGhyZWFkaW5nLlRocmVhZC5TbGVlcChzbGVlcER1cmF0aW9uKTtcclxuICAgIC8vICAgICBjb25zdCBuZXdTaXplOiBudW1iZXIgPSB0aGlzLl9jb21tYW5kc1F1ZXVlLlNpemUoKTtcclxuICAgIC8vXHJcbiAgICAvLyAgICAgLy8gd2hpbGUgY3VycmVudCB0aHJlYWQgd2FzIHNsZWVwaW5nLCBndWkgdGhyZWFkIHNob3VsZCBoYXZlIHByb2Nlc3NlZCBzb21lIGNvbW1hbmRzLlxyXG4gICAgLy8gICAgIC8vIGdldCBhdmVyYWdlIGR1cmF0aW9uIHJlcXVpcmVkIGJ5IGd1aSB0aHJlYWQgZm9yIHByb2Nlc3NpbmcgYSBjb21tYW5kIGFuZCBlc3RpbWF0ZSBuZXcgZHVyYXRpb24gZm9yIHJlbWFpbmluZyBjb21tYW5kcy5cclxuICAgIC8vICAgICBpZiAoc2l6ZSA+IG5ld1NpemUpIHtcclxuICAgIC8vICAgICAgIGxldCBhdmVyYWdlRHVyYXRpb25QZXJDb21tYW5kOiBudW1iZXIgPSBzbGVlcER1cmF0aW9uIC8gKHNpemUgLSBuZXdTaXplKTtcclxuICAgIC8vICAgICAgIGxldCBuZXdTbGVlcER1cmF0aW9uOiBudW1iZXIgPSA8bnVtYmVyPihuZXdTaXplICogYXZlcmFnZUR1cmF0aW9uUGVyQ29tbWFuZCk7XHJcbiAgICAvLyAgICAgICBpZiAobmV3U2xlZXBEdXJhdGlvbiA+IDApXHJcbiAgICAvLyAgICAgICAgIHNsZWVwRHVyYXRpb24gPSBNYXRoLm1pbihNQVhfU0xFRVBfRFVSQVRJT04sIG5ld1NsZWVwRHVyYXRpb24pO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgfVxyXG4gICAgLy8gICB3aGlsZSAodGhpcy5fY29tbWFuZHNRdWV1ZS5TaXplKCkgPiAwKTtcclxuICAgIHRoaXMuX2NvbW1hbmRzUXVldWUucHVzaChndWlDb21tYW5kKTtcclxuXHJcbiAgICAvLyBpZiAoZ3VpQ29tbWFuZC5Db21tYW5kVHlwZSA9PT0gQ29tbWFuZFR5cGUuUkVGUkVTSF9UQUJMRSAmJiBndWlDb21tYW5kLkJvb2wzKSB7XHJcbiAgICAvLyAgIGxldCBtZ0NvbnRyb2w6IE1nQ29udHJvbEJhc2UgPSA8TWdDb250cm9sQmFzZT4oZ3VpQ29tbWFuZC5vYmopO1xyXG4gICAgLy8gICBtZ0NvbnRyb2wucmVmcmVzaFRhYmxlQ29tbWFuZENvdW50Kys7XHJcbiAgICAvLyB9XHJcbiAgICAvLyBlbHNlIGlmIChndWlDb21tYW5kLklzTW9kYWxTaG93Rm9ybUNvbW1hbmQoKSlcclxuICAgIC8vICAgdGhpcy5fbW9kYWxTaG93Rm9ybUNvbW1hbmRQcmVzZW50SW5RdWV1ZSA9IHRydWU7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgZXhlY3V0ZSBhbGwgcGVuZGluZyBjb21tYW5kcywgYXN5bmNocm9ub3VzbHlcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGJlZ2luSW52b2tlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbnZva2UoKTtcclxuXHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgZXhlY3V0ZSBhbGwgcGVuZGluZyBjb21tYW5kcywgc3luY2hyb25vdXNseVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgaW52b2tlKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLl9leGVjdXRpbmdHdWlDb21tYW5kcykge1xyXG4gICAgICB0aGlzLl9leGVjdXRpbmdHdWlDb21tYW5kcyA9IHRydWU7XHJcbiAgICAgIFVJQnJpZGdlLmdldEluc3RhbmNlKCkuZXhlY3V0ZUNvbW1hbmRzKHRoaXMuX2NvbW1hbmRzUXVldWUpO1xyXG4gICAgICB0aGlzLl9jb21tYW5kc1F1ZXVlLmxlbmd0aCA9IDA7XHJcbiAgICAgIHRoaXMuX2V4ZWN1dGluZ0d1aUNvbW1hbmRzID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbiJdfQ==
|
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
import { MgValue } from '../MgValue';
|
|
2
|
-
import { GuiMgForm } from '../GuiMgForm';
|
|
3
|
-
import { Events } from '../../Events';
|
|
4
|
-
import { UIBridge } from '../../UIBridge';
|
|
5
|
-
import { ControlBase } from '../ControlBase';
|
|
6
|
-
import { GuiCommandQueue } from './GuiCommandQueue';
|
|
7
|
-
export var InteractiveCommandType;
|
|
8
|
-
(function (InteractiveCommandType) {
|
|
9
|
-
InteractiveCommandType[InteractiveCommandType["GET_VALUE"] = 0] = "GET_VALUE";
|
|
10
|
-
InteractiveCommandType[InteractiveCommandType["GET_TOP_INDEX"] = 1] = "GET_TOP_INDEX";
|
|
11
|
-
InteractiveCommandType[InteractiveCommandType["MESSAGE_BOX"] = 2] = "MESSAGE_BOX";
|
|
12
|
-
InteractiveCommandType[InteractiveCommandType["SET_TITLE"] = 3] = "SET_TITLE";
|
|
13
|
-
InteractiveCommandType[InteractiveCommandType["SET_EDIT_TEXT"] = 4] = "SET_EDIT_TEXT";
|
|
14
|
-
InteractiveCommandType[InteractiveCommandType["INSERT_EDIT_TEXT"] = 5] = "INSERT_EDIT_TEXT";
|
|
15
|
-
InteractiveCommandType[InteractiveCommandType["GET_CARET_POS"] = 6] = "GET_CARET_POS";
|
|
16
|
-
InteractiveCommandType[InteractiveCommandType["REFRESH_PAGE"] = 7] = "REFRESH_PAGE";
|
|
17
|
-
InteractiveCommandType[InteractiveCommandType["GET_ROWS_IN_PAGE"] = 8] = "GET_ROWS_IN_PAGE";
|
|
18
|
-
InteractiveCommandType[InteractiveCommandType["SET_GET_SUGGESTED_VALUE_FOR_CHOICE_CONTROL_ON_TAGDATA"] = 9] = "SET_GET_SUGGESTED_VALUE_FOR_CHOICE_CONTROL_ON_TAGDATA";
|
|
19
|
-
InteractiveCommandType[InteractiveCommandType["GET_IS_ROW_EDITING"] = 10] = "GET_IS_ROW_EDITING";
|
|
20
|
-
InteractiveCommandType[InteractiveCommandType["GET_MAX_ROWS_IN_PAGINATED_TABLE"] = 11] = "GET_MAX_ROWS_IN_PAGINATED_TABLE";
|
|
21
|
-
InteractiveCommandType[InteractiveCommandType["CALL_JS"] = 12] = "CALL_JS";
|
|
22
|
-
InteractiveCommandType[InteractiveCommandType["GET_LAST_ROUTE"] = 13] = "GET_LAST_ROUTE";
|
|
23
|
-
InteractiveCommandType[InteractiveCommandType["OPEN_FORM"] = 14] = "OPEN_FORM";
|
|
24
|
-
})(InteractiveCommandType || (InteractiveCommandType = {}));
|
|
25
|
-
export class GuiInteractiveBase {
|
|
26
|
-
_commandType = 0;
|
|
27
|
-
TaskTag = null;
|
|
28
|
-
controlName = null;
|
|
29
|
-
_str = String.fromCharCode(0);
|
|
30
|
-
_intVal1 = 0;
|
|
31
|
-
_line = 0;
|
|
32
|
-
_obj1 = null;
|
|
33
|
-
_parameters = null;
|
|
34
|
-
_boolVal = false;
|
|
35
|
-
_obj2 = null;
|
|
36
|
-
_mgValue = null;
|
|
37
|
-
arguments;
|
|
38
|
-
resultString = String.fromCharCode(0);
|
|
39
|
-
constructor() {
|
|
40
|
-
}
|
|
41
|
-
setGetSuggestedValueOfChoiceControlOnTagData(ctrl, line, retSuggestedValue) {
|
|
42
|
-
this._commandType = InteractiveCommandType.SET_GET_SUGGESTED_VALUE_FOR_CHOICE_CONTROL_ON_TAGDATA;
|
|
43
|
-
this._obj2 = ctrl;
|
|
44
|
-
this._line = line;
|
|
45
|
-
this._boolVal = retSuggestedValue;
|
|
46
|
-
this.Invoke();
|
|
47
|
-
}
|
|
48
|
-
getValue(obj, line, isThreeStateCheckBox) {
|
|
49
|
-
this._commandType = InteractiveCommandType.GET_VALUE;
|
|
50
|
-
this._obj2 = obj;
|
|
51
|
-
this._boolVal = isThreeStateCheckBox;
|
|
52
|
-
this._line = line;
|
|
53
|
-
this._mgValue = new MgValue();
|
|
54
|
-
this.Invoke();
|
|
55
|
-
return this._mgValue.obj;
|
|
56
|
-
}
|
|
57
|
-
getTopIndex(tablecontrol) {
|
|
58
|
-
this._commandType = InteractiveCommandType.GET_TOP_INDEX;
|
|
59
|
-
this._obj2 = tablecontrol;
|
|
60
|
-
this.Invoke();
|
|
61
|
-
return this._intVal1;
|
|
62
|
-
}
|
|
63
|
-
getIsRowEditing(tablecontrol, line, isLineMode) {
|
|
64
|
-
this._commandType = InteractiveCommandType.GET_IS_ROW_EDITING;
|
|
65
|
-
this._obj2 = tablecontrol;
|
|
66
|
-
this._intVal1 = line;
|
|
67
|
-
this._boolVal = isLineMode;
|
|
68
|
-
this.Invoke();
|
|
69
|
-
return this._boolVal;
|
|
70
|
-
}
|
|
71
|
-
messageBox(title, msg, style) {
|
|
72
|
-
this._commandType = InteractiveCommandType.MESSAGE_BOX;
|
|
73
|
-
this._mgValue = new MgValue();
|
|
74
|
-
this._mgValue.title = title;
|
|
75
|
-
this._mgValue.str = ((msg === null) ? '' : msg);
|
|
76
|
-
this._mgValue.style = style;
|
|
77
|
-
Events.RefreshTables();
|
|
78
|
-
this.Invoke();
|
|
79
|
-
return this._mgValue.number;
|
|
80
|
-
}
|
|
81
|
-
setTitle(topMostForm, title) {
|
|
82
|
-
this._commandType = InteractiveCommandType.SET_TITLE;
|
|
83
|
-
this._mgValue = new MgValue();
|
|
84
|
-
this._obj2 = topMostForm;
|
|
85
|
-
this._mgValue.title = ((title === null) ? '' : title);
|
|
86
|
-
this.Invoke();
|
|
87
|
-
}
|
|
88
|
-
setEditText(control, line, text) {
|
|
89
|
-
this._commandType = InteractiveCommandType.SET_EDIT_TEXT;
|
|
90
|
-
this._obj2 = control;
|
|
91
|
-
this._line = line;
|
|
92
|
-
this._mgValue = new MgValue();
|
|
93
|
-
this._mgValue.str = text;
|
|
94
|
-
this.Invoke();
|
|
95
|
-
return this._mgValue.boolVal;
|
|
96
|
-
}
|
|
97
|
-
insertEditText(control, line, startPosition, textToInsert) {
|
|
98
|
-
this._commandType = InteractiveCommandType.INSERT_EDIT_TEXT;
|
|
99
|
-
this._obj2 = control;
|
|
100
|
-
this._line = line;
|
|
101
|
-
this._mgValue = new MgValue();
|
|
102
|
-
this._mgValue.str = textToInsert;
|
|
103
|
-
this._intVal1 = startPosition;
|
|
104
|
-
this.Invoke();
|
|
105
|
-
return this._mgValue.boolVal;
|
|
106
|
-
}
|
|
107
|
-
caretPosGet(control, line) {
|
|
108
|
-
this._commandType = InteractiveCommandType.GET_CARET_POS;
|
|
109
|
-
this._obj2 = control;
|
|
110
|
-
this._line = line;
|
|
111
|
-
this._mgValue = new MgValue();
|
|
112
|
-
this.Invoke();
|
|
113
|
-
return this._mgValue.number;
|
|
114
|
-
}
|
|
115
|
-
RefreshPage(navigateToRootRoute, initialUrl) {
|
|
116
|
-
this._commandType = InteractiveCommandType.REFRESH_PAGE;
|
|
117
|
-
this._boolVal = navigateToRootRoute;
|
|
118
|
-
this._obj1 = initialUrl;
|
|
119
|
-
this.Invoke();
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
getRowsInPage(control) {
|
|
123
|
-
this._commandType = InteractiveCommandType.GET_ROWS_IN_PAGE;
|
|
124
|
-
this._obj2 = control;
|
|
125
|
-
this.Invoke();
|
|
126
|
-
return this._intVal1;
|
|
127
|
-
}
|
|
128
|
-
getMaxRowsInPaginatedTable(control) {
|
|
129
|
-
this._commandType = InteractiveCommandType.GET_MAX_ROWS_IN_PAGINATED_TABLE;
|
|
130
|
-
this._obj2 = control;
|
|
131
|
-
this.Invoke();
|
|
132
|
-
return this._intVal1;
|
|
133
|
-
}
|
|
134
|
-
getLastRoute() {
|
|
135
|
-
this._commandType = InteractiveCommandType.GET_LAST_ROUTE;
|
|
136
|
-
this.Invoke();
|
|
137
|
-
return this.resultString;
|
|
138
|
-
}
|
|
139
|
-
ExecuteCallJS(form, formName, functionName, args) {
|
|
140
|
-
this._commandType = InteractiveCommandType.CALL_JS;
|
|
141
|
-
this._obj2 = form;
|
|
142
|
-
this.controlName = formName;
|
|
143
|
-
this._str = functionName;
|
|
144
|
-
this.arguments = args;
|
|
145
|
-
this.Invoke();
|
|
146
|
-
return this.resultString;
|
|
147
|
-
}
|
|
148
|
-
ExecuteOpenOverlayForm(obj, formName, handlerTaskTag, calledTaskTag, inputControls, isDialog) {
|
|
149
|
-
this._commandType = InteractiveCommandType.OPEN_FORM;
|
|
150
|
-
this.controlName = formName;
|
|
151
|
-
this._str = handlerTaskTag;
|
|
152
|
-
this._mgValue = new MgValue();
|
|
153
|
-
this._mgValue.str = calledTaskTag;
|
|
154
|
-
this._mgValue.path = inputControls;
|
|
155
|
-
this._boolVal = isDialog;
|
|
156
|
-
this.Invoke();
|
|
157
|
-
}
|
|
158
|
-
Invoke() {
|
|
159
|
-
GuiCommandQueue.getInstance().invoke();
|
|
160
|
-
if (this._obj2 instanceof ControlBase) {
|
|
161
|
-
let controlBase = this._obj2;
|
|
162
|
-
this.TaskTag = controlBase.TaskTag;
|
|
163
|
-
this.controlName = controlBase.UniqueName;
|
|
164
|
-
}
|
|
165
|
-
else if (this._obj2 instanceof GuiMgForm) {
|
|
166
|
-
let guiMgForm = this._obj2;
|
|
167
|
-
this.TaskTag = guiMgForm.TaskTag;
|
|
168
|
-
}
|
|
169
|
-
else
|
|
170
|
-
this.TaskTag = '0';
|
|
171
|
-
UIBridge.getInstance().ExecuteInteractiveCommand(this);
|
|
172
|
-
}
|
|
173
|
-
onGetRowsInPage() {
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
export class GuiInteractive extends GuiInteractiveBase {
|
|
177
|
-
}
|
|
178
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpSW50ZXJhY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL2d1aS9sb3cvR3VpSW50ZXJhY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxDQUFOLElBQVksc0JBZ0JYO0FBaEJELFdBQVksc0JBQXNCO0lBQ2hDLDZFQUFTLENBQUE7SUFDVCxxRkFBYSxDQUFBO0lBQ2IsaUZBQVcsQ0FBQTtJQUNYLDZFQUFTLENBQUE7SUFDVCxxRkFBYSxDQUFBO0lBQ2IsMkZBQWdCLENBQUE7SUFDaEIscUZBQWEsQ0FBQTtJQUNiLG1GQUFZLENBQUE7SUFDWiwyRkFBZ0IsQ0FBQTtJQUNoQixxS0FBcUQsQ0FBQTtJQUNyRCxnR0FBa0IsQ0FBQTtJQUNsQiwwSEFBK0IsQ0FBQTtJQUMvQiwwRUFBTyxDQUFBO0lBQ1Asd0ZBQWMsQ0FBQTtJQUNkLDhFQUFTLENBQUE7QUFDWCxDQUFDLEVBaEJXLHNCQUFzQixLQUF0QixzQkFBc0IsUUFnQmpDO0FBR0QsTUFBTSxPQUFnQixrQkFBa0I7SUFDdEMsWUFBWSxHQUEyQixDQUFDLENBQUM7SUFDekMsT0FBTyxHQUFXLElBQUksQ0FBQztJQUN2QixXQUFXLEdBQVcsSUFBSSxDQUFDO0lBRTNCLElBQUksR0FBVyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFD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QUNaLGVBQWUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN2QyxJQUFJLElBQUksQ0FBQyxLQUFLLFlBQVksV0FBVyxFQUFFO1lBQ3JDLElBQUksV0FBVyxHQUE2QixJQUFJLENBQUMsS0FBSyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxPQUFPLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQztZQUNuQyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxVQUFVLENBQUM7U0FDM0M7YUFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLFlBQVksU0FBUyxFQUFFO1lBQzFDLElBQUksU0FBUyxHQUF5QixJQUFJLENBQUMsS0FBSyxDQUFDO1lBQ2pELElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQztTQUNsQzs7WUFDQyxJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztRQUVyQixRQUFRLENBQUMsV0FBVyxFQUFFLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQXFORCxlQUFlO0lBQ2YsQ0FBQztDQUVGO0FBRUQsTUFBTSxPQUFPLGNBQWUsU0FBUSxrQkFBa0I7Q0FFckQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0d1aU1nQ29udHJvbH0gZnJvbSAnLi4vR3VpTWdDb250cm9sJztcclxuaW1wb3J0IHtNZ1ZhbHVlfSBmcm9tICcuLi9NZ1ZhbHVlJztcclxuaW1wb3J0IHtHdWlNZ0Zvcm19IGZyb20gJy4uL0d1aU1nRm9ybSc7XHJcbmltcG9ydCB7RXZlbnRzfSBmcm9tICcuLi8uLi9FdmVudHMnO1xyXG5pbXBvcnQge1VJQnJpZGdlfSBmcm9tICcuLi8uLi9VSUJyaWRnZSc7XHJcbmltcG9ydCB7Q29udHJvbEJhc2V9IGZyb20gJy4uL0NvbnRyb2xCYXNlJztcclxuaW1wb3J0IHtHdWlDb21tYW5kUXVldWV9IGZyb20gJy4vR3VpQ29tbWFuZFF1ZXVlJztcclxuXHJcbmV4cG9ydCBlbnVtIEludGVyYWN0aXZlQ29tbWFuZFR5cGUge1xyXG4gIEdFVF9WQUxVRSxcclxuICBHRVRfVE9QX0lOREVYLFxyXG4gIE1FU1NBR0VfQk9YLFxyXG4gIFNFVF9USVRMRSxcclxuICBTRVRfRURJVF9URVhULFxyXG4gIElOU0VSVF9FRElUX1RFWFQsXHJcbiAgR0VUX0NBUkVUX1BPUyxcclxuICBSRUZSRVNIX1BBR0UsXHJcbiAgR0VUX1JPV1NfSU5fUEFHRSxcclxuICBTRVRfR0VUX1NVR0dFU1RFRF9WQUxVRV9GT1JfQ0hPSUNFX0NPTlRST0xfT05fVEFHREFUQSxcclxuICBHRVRfSVNfUk9XX0VESVRJTkcsXHJcbiAgR0VUX01BWF9ST1dTX0lOX1BBR0lOQVRFRF9UQUJMRSxcclxuICBDQUxMX0pTLFxyXG4gIEdFVF9MQVNUX1JPVVRFLFxyXG4gIE9QRU5fRk9STVxyXG59XHJcblxyXG4vLy8gPHN1bW1hcnk+IEd1aVV0aWxzIGNsYXNzIHByb3ZpZGVzIG1ldGhvZHMgZm9yIHJldHJpZXZpbmcgaW5mb3JtYXRpb24gZnJvbSB0aGUgR1VJIGxheWVyPC9zdW1tYXJ5PlxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgR3VpSW50ZXJhY3RpdmVCYXNlIHtcclxuICBfY29tbWFuZFR5cGU6IEludGVyYWN0aXZlQ29tbWFuZFR5cGUgPSAwO1xyXG4gIFRhc2tUYWc6IHN0cmluZyA9IG51bGw7XHJcbiAgY29udHJvbE5hbWU6IHN0cmluZyA9IG51bGw7XHJcblxyXG4gIF9zdHI6IHN0cmluZyA9IFN0cmluZy5mcm9tQ2hhckNvZGUoMCk7XHJcbiAgX2ludFZhbDE6IG51bWJlciA9IDA7XHJcbiAgX2xpbmU6IG51bWJlciA9IDA7XHJcbiAgX29iajE6IGFueSA9IG51bGw7XHJcbiAgX3BhcmFtZXRlcnM6IGFueVtdID0gbnVsbDtcclxuICBfYm9vbFZhbDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIF9vYmoyOiBhbnkgPSBudWxsO1xyXG4gIF9tZ1ZhbHVlOiBNZ1ZhbHVlID0gbnVsbDtcclxuICBhcmd1bWVudHMgOiBBcnJheTxhbnk+IDtcclxuICByZXN1bHRTdHJpbmcgOiBzdHJpbmcgPSBTdHJpbmcuZnJvbUNoYXJDb2RlKDApO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIENvbnN0cnVjdG9yIDogc2V0cyB0aGUgY29udGV4dElEIGZvciB0aGUgY3VycmVudCBjb21tYW5kLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIFRoaXMgbWV0aG9kZSBpcyBzZXQgVFJVRVxcRkFMU0UgdGhhdCBHdWlVdGlsZXNcXEdldFZhbHVlKCkgbWV0aG9kIHdpbGwgYmUgdXNlXHJcbiAgLy8vIHRoaXMgZmFsZyBzYXkgaWYgdG8gcmV0dXJuIHRoZSA6ICh0cnVlKSBzdWdnZXN0ZWQgdmFsdWUgb3IgKGZhbHNlKXRoZSByZWFsIHZhbHVlXHJcbiAgLy8vIHRoaXMgbWV0aG9kIGlzIHVzZSBmb3IgTUdfQUNUX0NUUkxfTU9ESUZZXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjdHJsXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJyZXRTdWdnZXN0ZWRWYWx1ZVwiPjwvcGFyYW0+XHJcbiAgc2V0R2V0U3VnZ2VzdGVkVmFsdWVPZkNob2ljZUNvbnRyb2xPblRhZ0RhdGEoY3RybDogR3VpTWdDb250cm9sLCBsaW5lOiBudW1iZXIsIHJldFN1Z2dlc3RlZFZhbHVlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0VUX0dFVF9TVUdHRVNURURfVkFMVUVfRk9SX0NIT0lDRV9DT05UUk9MX09OX1RBR0RBVEE7XHJcbiAgICB0aGlzLl9vYmoyID0gY3RybDtcclxuICAgIHRoaXMuX2xpbmUgPSBsaW5lO1xyXG4gICAgdGhpcy5fYm9vbFZhbCA9IHJldFN1Z2dlc3RlZFZhbHVlO1xyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuICB9XHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+IEdldCB2YWx1ZSBvZiB0aGUgY29udHJvbDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJvYmplY3RcIj5hIHJlZmVyZW5jZSB0byB0aGUgcmVsZXZhbnQgb2JqZWN0PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJyZWN0XCI+YSByZWZlcmVuY2UgdG8gdGhlIG9iamVjdCB0aGF0IG9uIHJldHVybiB3aWxsIGNvbnRhaW4gdGhlIHJlcXVlc3RlZCB2YWx1ZXMgb24gc3RyaW5nPC9wYXJhbT5cclxuICBnZXRWYWx1ZShvYmo6IGFueSwgbGluZTogbnVtYmVyLCBpc1RocmVlU3RhdGVDaGVja0JveDogYm9vbGVhbik6IHN0cmluZyB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX1ZBTFVFO1xyXG4gICAgdGhpcy5fb2JqMiA9IG9iajtcclxuICAgIHRoaXMuX2Jvb2xWYWwgPSBpc1RocmVlU3RhdGVDaGVja0JveDtcclxuICAgIHRoaXMuX2xpbmUgPSBsaW5lO1xyXG4gICAgdGhpcy5fbWdWYWx1ZSA9IG5ldyBNZ1ZhbHVlKCk7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuX21nVmFsdWUub2JqO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldFRvcEluZGV4KHRhYmxlY29udHJvbDogR3VpTWdDb250cm9sKTogbnVtYmVyIHtcclxuICAgIHRoaXMuX2NvbW1hbmRUeXBlID0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfVE9QX0lOREVYO1xyXG4gICAgdGhpcy5fb2JqMiA9IHRhYmxlY29udHJvbDtcclxuICAgIHRoaXMuSW52b2tlKCk7XHJcbiAgICByZXR1cm4gdGhpcy5faW50VmFsMTtcclxuICB9XHJcblxyXG4gIGdldElzUm93RWRpdGluZyh0YWJsZWNvbnRyb2w6IEd1aU1nQ29udHJvbCwgbGluZTogbnVtYmVyLCBpc0xpbmVNb2RlOiBib29sZWFuKTogYm9vbGVhbiB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0lTX1JPV19FRElUSU5HO1xyXG4gICAgdGhpcy5fb2JqMiA9IHRhYmxlY29udHJvbDtcclxuICAgIHRoaXMuX2ludFZhbDEgPSBsaW5lO1xyXG4gICAgdGhpcy5fYm9vbFZhbCA9IGlzTGluZU1vZGU7XHJcblxyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuICAgIHJldHVybiB0aGlzLl9ib29sVmFsO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5Pk9wZW4gbWVzc2FnZSBib3ggd2l0aCBwYXJlbnQgZm9ybTwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJ0aXRsZVwiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibXNnXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJzdHlsZVwiPnRoZSBzdHlsZSBvZiB0aGUgbWVzc2FnZSBib3ggY2FuIGJlIGZsYWdzIG9mIFN0eWxlcy5NU0dCT1hfeHh4IDwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPiBtZXNzYWdlIGJveCBzdHlsZSBmcm9tIFN0eWxlcy5NU0dCT1hfWFhYPC9yZXR1cm5zPlxyXG4gIG1lc3NhZ2VCb3godGl0bGU6IHN0cmluZywgbXNnOiBzdHJpbmcsIHN0eWxlOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLk1FU1NBR0VfQk9YO1xyXG4gICAgdGhpcy5fbWdWYWx1ZSA9IG5ldyBNZ1ZhbHVlKCk7XHJcbiAgICB0aGlzLl9tZ1ZhbHVlLnRpdGxlID0gdGl0bGU7XHJcbiAgICB0aGlzLl9tZ1ZhbHVlLnN0ciA9ICgobXNnID09PSBudWxsKSA/ICcnIDogbXNnKTtcclxuICAgIHRoaXMuX21nVmFsdWUuc3R5bGUgPSBzdHlsZTtcclxuICAgIEV2ZW50cy5SZWZyZXNoVGFibGVzKCk7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuX21nVmFsdWUubnVtYmVyO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PnNldCB0aXRsZSB0byBicm93c2VyPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInRvcE1vc3RGb3JtXCI+dGhlIHBhcmVudCBmb3JtIG9mIHRoZSBtZXNzYWdlIGJveDwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwidGl0bGVcIj48L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz4gbWVzc2FnZSBib3ggc3R5bGUgZnJvbSBTdHlsZXMuTVNHQk9YX1hYWDwvcmV0dXJucz5cclxuICBzZXRUaXRsZSh0b3BNb3N0Rm9ybTogR3VpTWdGb3JtLCB0aXRsZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0VUX1RJVExFO1xyXG4gICAgdGhpcy5fbWdWYWx1ZSA9IG5ldyBNZ1ZhbHVlKCk7XHJcbiAgICB0aGlzLl9vYmoyID0gdG9wTW9zdEZvcm07XHJcbiAgICB0aGlzLl9tZ1ZhbHVlLnRpdGxlID0gKCh0aXRsZSA9PT0gbnVsbCkgPyAnJyA6IHRpdGxlKTtcclxuICAgIHRoaXMuSW52b2tlKCk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IHNldCB0aGUgdGV4dCB0byB0aGUgdGhlIGNvbnRyb2xcclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRyb2xcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImxpbmVcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInRleHRcIj48L3BhcmFtPlxyXG4gIHNldEVkaXRUZXh0KGNvbnRyb2w6IEd1aU1nQ29udHJvbCwgbGluZTogbnVtYmVyLCB0ZXh0OiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIHRoaXMuX2NvbW1hbmRUeXBlID0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRVRfRURJVF9URVhUO1xyXG4gICAgdGhpcy5fb2JqMiA9IGNvbnRyb2w7XHJcbiAgICB0aGlzLl9saW5lID0gbGluZTtcclxuICAgIHRoaXMuX21nVmFsdWUgPSBuZXcgTWdWYWx1ZSgpO1xyXG4gICAgdGhpcy5fbWdWYWx1ZS5zdHIgPSB0ZXh0O1xyXG5cclxuICAgIHRoaXMuSW52b2tlKCk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX21nVmFsdWUuYm9vbFZhbDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gaW5zZXJ0IHRoZSB0ZXh0IHRvIHRoZSB0aGUgY29udHJvbCBhdCB0aGUgZ2l2ZW4gcG9zaXRpb25cclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRyb2xcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImxpbmVcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInRleHRcIj48L3BhcmFtPlxyXG4gIGluc2VydEVkaXRUZXh0KGNvbnRyb2w6IEd1aU1nQ29udHJvbCwgbGluZTogbnVtYmVyLCBzdGFydFBvc2l0aW9uOiBudW1iZXIsIHRleHRUb0luc2VydDogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuSU5TRVJUX0VESVRfVEVYVDtcclxuICAgIHRoaXMuX29iajIgPSBjb250cm9sO1xyXG4gICAgdGhpcy5fbGluZSA9IGxpbmU7XHJcbiAgICB0aGlzLl9tZ1ZhbHVlID0gbmV3IE1nVmFsdWUoKTtcclxuICAgIHRoaXMuX21nVmFsdWUuc3RyID0gdGV4dFRvSW5zZXJ0O1xyXG4gICAgdGhpcy5faW50VmFsMSA9IHN0YXJ0UG9zaXRpb247XHJcblxyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5fbWdWYWx1ZS5ib29sVmFsO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gZ2V0IHRoZSBwb3NpdGlvbiBvZiB0aGUgY2FyZXQgb24gdGhlIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRyb2xcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImxpbmVcIj48L3BhcmFtPlxyXG4gIGNhcmV0UG9zR2V0KGNvbnRyb2w6IEd1aU1nQ29udHJvbCwgbGluZTogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIHRoaXMuX2NvbW1hbmRUeXBlID0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfQ0FSRVRfUE9TO1xyXG4gICAgdGhpcy5fb2JqMiA9IGNvbnRyb2w7XHJcbiAgICB0aGlzLl9saW5lID0gbGluZTtcclxuXHJcbiAgICB0aGlzLl9tZ1ZhbHVlID0gbmV3IE1nVmFsdWUoKTtcclxuICAgIHRoaXMuSW52b2tlKCk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX21nVmFsdWUubnVtYmVyO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyByZWZyZXNoIHBhZ2VcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIFJlZnJlc2hQYWdlKG5hdmlnYXRlVG9Sb290Um91dGU6IGJvb2xlYW4sIGluaXRpYWxVcmw6IHN0cmluZykge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlJFRlJFU0hfUEFHRTtcclxuICAgIHRoaXMuX2Jvb2xWYWwgPSBuYXZpZ2F0ZVRvUm9vdFJvdXRlO1xyXG4gICAgdGhpcy5fb2JqMSA9IGluaXRpYWxVcmw7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+IHJldHVybiBudW1iZXIgb2Ygcm93cyBpbiB0aGUgdGFibGU8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiY29udHJvbFwiPjwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBnZXRSb3dzSW5QYWdlKGNvbnRyb2w6IEd1aU1nQ29udHJvbCk6IG51bWJlciB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX1JPV1NfSU5fUEFHRTtcclxuICAgIHRoaXMuX29iajIgPSBjb250cm9sO1xyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuICAgIHJldHVybiB0aGlzLl9pbnRWYWwxO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiByZXR1cm4gbnVtYmVyIG9mIHJvd3MgaW4gdGhlIHRhYmxlPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRyb2xcIj48L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgZ2V0TWF4Um93c0luUGFnaW5hdGVkVGFibGUoY29udHJvbDogR3VpTWdDb250cm9sKTogbnVtYmVyIHtcclxuICAgIHRoaXMuX2NvbW1hbmRUeXBlID0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfTUFYX1JPV1NfSU5fUEFHSU5BVEVEX1RBQkxFO1xyXG4gICAgdGhpcy5fb2JqMiA9IGNvbnRyb2w7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuX2ludFZhbDE7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIEdldCB0aGUgbGFzdCByb3V0ZVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgZ2V0TGFzdFJvdXRlKCk6IHN0cmluZyB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0xBU1RfUk9VVEU7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuIHRoaXMucmVzdWx0U3RyaW5nO1xyXG4gIH1cclxuXHJcblxyXG5cclxuICBFeGVjdXRlQ2FsbEpTKGZvcm0gLCBmb3JtTmFtZTogc3RyaW5nLCAgZnVuY3Rpb25OYW1lOiBzdHJpbmcsIGFyZ3M6IEFycmF5PGFueT4pOiBzdHJpbmcge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkNBTExfSlM7XHJcbiAgICB0aGlzLl9vYmoyID0gZm9ybTtcclxuICAgIHRoaXMuY29udHJvbE5hbWUgPSBmb3JtTmFtZTtcclxuICAgIHRoaXMuX3N0ciA9IGZ1bmN0aW9uTmFtZTtcclxuICAgIHRoaXMuYXJndW1lbnRzID0gYXJncztcclxuICAgIHRoaXMuSW52b2tlKCk7XHJcbiAgICByZXR1cm4gdGhpcy5yZXN1bHRTdHJpbmc7XHJcbiAgfVxyXG5cclxuICBFeGVjdXRlT3Blbk92ZXJsYXlGb3JtKG9iajogT2JqZWN0LCBmb3JtTmFtZTogc3RyaW5nLCBoYW5kbGVyVGFza1RhZzogc3RyaW5nLCBjYWxsZWRUYXNrVGFnOiBzdHJpbmcsXHJcbiAgICAgIGlucHV0Q29udHJvbHM6IHN0cmluZywgaXNEaWFsb2c6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIC8vdGFza1RhZyBzaG91bGQgYmUgMCBhcyBpdHMgaG9zdGVkIGJ5IHJvb3QtY29tcG9uZW50XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuT1BFTl9GT1JNO1xyXG4gICAgdGhpcy5jb250cm9sTmFtZSA9IGZvcm1OYW1lO1xyXG4gICAgdGhpcy5fc3RyID0gaGFuZGxlclRhc2tUYWc7XHJcbiAgICB0aGlzLl9tZ1ZhbHVlID0gbmV3IE1nVmFsdWUoKTtcclxuICAgIHRoaXMuX21nVmFsdWUuc3RyID0gY2FsbGVkVGFza1RhZztcclxuICAgIHRoaXMuX21nVmFsdWUucGF0aCA9IGlucHV0Q29udHJvbHM7XHJcbiAgICB0aGlzLl9ib29sVmFsID0gaXNEaWFsb2c7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBDYWxscyBSdW4oKSBzeW5jaHJvbm91c2x5IHRvIGV4ZWN1dGUgdGhlIGNvbW1hbmQuXHJcbiAgLy8vIEJ1dCBiZWZvcmUgdGhhdCwgaXQgZXhlY3V0ZXMgdGhlIEd1aUNvbW1hbmRRdWV1ZS5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIHByaXZhdGUgSW52b2tlKCk6IHZvaWQge1xyXG4gICAgR3VpQ29tbWFuZFF1ZXVlLmdldEluc3RhbmNlKCkuaW52b2tlKCk7XHJcbiAgICBpZiAodGhpcy5fb2JqMiBpbnN0YW5jZW9mIENvbnRyb2xCYXNlKSB7XHJcbiAgICAgIGxldCBjb250cm9sQmFzZTogQ29udHJvbEJhc2UgPSA8Q29udHJvbEJhc2U+dGhpcy5fb2JqMjtcclxuICAgICAgdGhpcy5UYXNrVGFnID0gY29udHJvbEJhc2UuVGFza1RhZztcclxuICAgICAgdGhpcy5jb250cm9sTmFtZSA9IGNvbnRyb2xCYXNlLlVuaXF1ZU5hbWU7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuX29iajIgaW5zdGFuY2VvZiBHdWlNZ0Zvcm0pIHtcclxuICAgICAgbGV0IGd1aU1nRm9ybTogR3VpTWdGb3JtID0gPEd1aU1nRm9ybT50aGlzLl9vYmoyO1xyXG4gICAgICB0aGlzLlRhc2tUYWcgPSBndWlNZ0Zvcm0uVGFza1RhZztcclxuICAgIH0gZWxzZVxyXG4gICAgICB0aGlzLlRhc2tUYWcgPSAnMCc7IC8vIGdlbmVyYWwgY29tbWFuZFxyXG5cclxuICAgIFVJQnJpZGdlLmdldEluc3RhbmNlKCkuRXhlY3V0ZUludGVyYWN0aXZlQ29tbWFuZCh0aGlzKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gaW1wbGVtZW50cyB0aGUgUnVubmFibGUgcnVuIG1ldGhvZCBmb3IgY2FsbGluZyBEaXNwbGF5LnN5bmNFeGVjKCk8L3N1bW1hcnk+XHJcbiAgLy8gUnVuKCk6IHZvaWQge1xyXG4gIC8vICAgLy8gU2V0cyB0aGUgY3VycmVudENvbnRleHRJRFxyXG4gIC8vICAgbGV0IGNvbnRleHRJREd1YXJkID0gbmV3IENvbnRleHRJREd1YXJkKHRoaXMuX2NvbnRleHRJRCk7XHJcbiAgLy8gICB0cnkge1xyXG4gIC8vICAgICBzd2l0Y2ggKHRoaXMuX2NvbW1hbmRUeXBlKSB7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9GT05UX01FVFJJQ1M6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0Rm9udE1ldHJpY3MoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfUkVTT0xVVElPTjpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRSZXNvbHV0aW9uKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0JPVU5EUzpcclxuICAvLyAgICAgICAgIHRoaXMub25Cb3VuZHMoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfVkFMVUU6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uVmFsdWUoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRVRfQlJPV1NFUl9URVhUOlxyXG4gIC8vICAgICAgICAgdGhpcy5vblNldEJyb3dzZXJUZXh0KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0JST1dTRVJfVEVYVDpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRCcm93c2VyVGV4dCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkJST1dTRVJfRVhFQ1VURTpcclxuICAvLyAgICAgICAgIHRoaXMub25Ccm93c2VyRXhlY3V0ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9UT1BfSU5ERVg6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0VG9wSW5kZXgoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5NRVNTQUdFX0JPWDpcclxuICAvLyAgICAgICAgIHRoaXMub25NZXNzYWdlQm94KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuRElSRUNUT1JZX0RJQUxPR19CT1g6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uRGlyZWN0b3J5RGlhbG9nQm94KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0NMSUVOVF9CT1VORFM6XHJcbiAgLy8gICAgICAgICB0aGlzLmdldENsaWVudEJvdW5kcygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlNFVF9FRElUX1RFWFQ6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uU2V0RWRpdFRleHQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5JTlNFUlRfRURJVF9URVhUOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkluc2VydEVkaXRUZXh0KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0VUX1NFTEVDVElPTjpcclxuICAvLyAgICAgICAgIHRoaXMub25TZXRTZWxlY3Rpb24oKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfU0VMRUNUSU9OOlxyXG4gIC8vICAgICAgICAgdGhpcy5vblNlbGVjdGlvbkdldCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9DQVJFVF9QT1M6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uQ2FyZXRQb3NHZXQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfSVNfVE9QX09GX1RFWFRCT1g6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0SXNUb3BPZlRleHRCb3goKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfSVNfRU5EX09GX1RFWFRCT1g6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0SXNFbmRPZlRleHRCb3goKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5DTElQQk9BUkRfR0VUX0NPTlRFTlQ6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uQ2xpcGJvYXJkUmVhZCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkNMSVBCT0FSRF9TRVRfQ09OVEVOVDpcclxuICAvLyAgICAgICAgIHRoaXMub25DbGlwYm9hcmRXcml0ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkNMSVBCT0FSRF9QQVNURTpcclxuICAvLyAgICAgICAgIHRoaXMub25DbGlwYm9hcmRQYXN0ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlBPU1RfS0VZX0VWRU5UOlxyXG4gIC8vICAgICAgICAgdGhpcy5vblBvc3RLZXlFdmVudCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlBPU1RfQ0hBUl9FVkVOVDpcclxuICAvLyAgICAgICAgIHRoaXMub25Qb3N0Q2hhckV2ZW50KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0VUX0NVUlNPUjpcclxuICAvLyAgICAgICAgIHRoaXMub25TZXRDdXJzb3IoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5ESVNQT1NFX0FMTF9GT1JNUzpcclxuICAvLyAgICAgICAgIHRoaXMub25EaXNwb3NlQWxsRm9ybXMoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfUk9XU19JTl9QQUdFOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkdldFJvd3NJblBhZ2UoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfSElEREVOX1JPV1NfQ09VTlRfSU5fVEFCTEU6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0SGlkZGVuUm93c0NvdW50SW5UYWJsZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkZJTEVfT1BFTl9ESUFMT0dfQk9YOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkZpbGVPcGVuRGlhbG9nQm94KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuRklMRV9TQVZFX0RJQUxPR19CT1g6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uRmlsZVNhdmVEaWFsb2dCb3goKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5DUkVBVEVfRElBTE9HOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkNyZWF0ZURpYWxvZygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLk9QRU5fRElBTE9HOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbk9wZW5EaWFsb2coKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5DTE9TRV9ESUFMT0c6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uQ2xvc2VEaWFsb2coKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRVRfR0VUX1NVR0dFU1RFRF9WQUxVRV9GT1JfQ0hPSUNFX0NPTlRST0xfT05fVEFHREFUQTpcclxuICAvLyAgICAgICAgIHRoaXMuT25TZXRHZXRTdWdnZXN0ZWRWYWx1ZU9mQ2hvaWNlQ29udHJvbE9uVGFnRGF0YSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9MQVNUX1dJTkRPV19TVEFURTpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRMYXN0V2luZG93U3RhdGUoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfRlJBTUVTX0JPVU5EUzpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRGcmFtZXNCb3VuZHMoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfTElOS0VEX1BBUkVOVF9JRFg6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0TGlua2VkUGFyZW50SWR4KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0ZPUk1fQk9VTkRTOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkdldEZvcm1Cb3VuZHMoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfQ09MVU1OU19TVEFURTpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRDb2x1bW5zU3RhdGUoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfRk9STV9IQU5ETEU6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0Rm9ybUhhbmRsZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9DVFJMX0hBTkRMRTpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRDdHJsSGFuZGxlKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuSVNfRk9STV9BQ1RJVkU6XHJcbiAgLy8gICAgICAgICB0aGlzLmlzRm9ybUFjdGl2ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9EUk9QUEVEX0RBVEE6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0RHJvcHBlZERhdGEoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfRFJPUFBFRF9QT0lOVDpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXREcm9wcGVkUG9pbnQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfRFJPUFBFRF9TRUxFQ1RJT046XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0RHJvcHBlZFNlbGVjdGlvbigpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkRST1BfRk9STUFUX1NVUFBPUlRFRDpcclxuICAvLyAgICAgICAgIHRoaXMub25DaGVja0Ryb3BGb3JtYXRQcmVzZW50KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0lTX0JFR0lOX0RSQUc6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0SXNCZWdpbkRyYWcoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5BQ1RJVkFURV9ORVhUX09SX1BSRVZJT1VTX01ESV9DSElMRDpcclxuICAvLyAgICAgICAgIHRoaXMuT25BY3RpdmF0ZU5leHRPclByZXZpb3VzTURJQ2hpbGQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRU5EX0lNRV9NU0c6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uU2VuZEltZU1zZygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkNBTl9GT0NVUzpcclxuICAvLyAgICAgICAgIHRoaXMub25DYW5Gb2N1cygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9TRUxFQ1RFRF9JTkRJQ0U6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uR2V0U2VsZWN0ZWRJbmRpY2UoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRVRfU1VHR0VTVEVEX1ZBTFVFOlxyXG4gIC8vICAgICAgICAgdGhpcy5vblNldFN1Z2dlc3RlZFZhbHVlKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuTUFQX1dJREdFVF9UT19HVUlfT0JKRUNUOlxyXG4gIC8vICAgICAgICAgdGhpcy5NYXBXaWRnZXQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5SRU1PVkVfRE5fQ09OVFJPTF9WQUxVRV9DSEFOR0VEX0hBTkRMRVI6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uUmVtb3ZlRE5Db250cm9sVmFsdWVDaGFuZ2VkSGFuZGxlcigpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkFERF9ETl9DT05UUk9MX1ZBTFVFX0NIQU5HRURfSEFORExFUjpcclxuICAvLyAgICAgICAgIHRoaXMuT25BZGRETkNvbnRyb2xWYWx1ZUNoYW5nZWRIYW5kbGVyKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX1JURl9WQUxVRV9CRUZPUkVfRU5URVJJTkdfQ09OVFJPTDpcclxuICAvLyAgICAgICAgIHRoaXMuT25HZXRSdGZWYWx1ZUJlZm9yZUVudGVyaW5nQ29udHJvbCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9NRElfQ0hJTERfQ09VTlQ6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uR2V0TURJQ2hpbGRDb3VudCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkFDVElWQVRFX0ZPUk06XHJcbiAgLy8gICAgICAgICB0aGlzLk9uQWN0aXZhdGVGb3JtKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuRU5BQkxFX01FTlVfRU5UUlk6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uRW5hYmxlTWVudUVudHJ5KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0hPV19DT05URVhUX01FTlU6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uU2hvd0NvbnRleHRNZW51KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuSVNfQ09NQk9fRFJPUFBFRF9ET1dOOlxyXG4gIC8vICAgICAgICAgdGhpcy5PbklzQ29tYm9Ecm9wcGVkRG93bmRTdGF0ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLklOVk9LRV9VRFBDT01NQU5EOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkludm9rZVVEUCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9IQVNJTkRFTlQ6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uR2V0SGFzSW5kZW50KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgfVxyXG4gIC8vICAgfVxyXG4gIC8vICAgY2F0Y2ggKGV4KSB7XHJcbiAgLy8gICAgIGlmIChleCBpbnN0YW5jZW9mIEV4Y2VwdGlvbikge1xyXG4gIC8vICAgICAgIEV2ZW50cy5Xcml0ZUV4Y2VwdGlvblRvTG9nKGV4KTtcclxuICAvLyAgICAgICB0aHJvdyBleDtcclxuICAvLyAgICAgfVxyXG4gIC8vICAgICBlbHNlXHJcbiAgLy8gICAgICAgdGhyb3cgZXg7IC8vIFJlc2V0IHRoZSBjdXJyZW50IGNvbnRleHRJRC5cclxuICAvLyAgIH1cclxuICAvLyAgIGZpbmFsbHkge1xyXG4gIC8vICAgICBjb250ZXh0SURHdWFyZC5EaXNwb3NlKCk7XHJcbiAgLy8gICB9XHJcbiAgLy8gfVxyXG5cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gZ2V0IG51bWJlciBvZiByb3dzIGluIHRoZSB0YWJsZVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgb25HZXRSb3dzSW5QYWdlKCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBHdWlJbnRlcmFjdGl2ZSBleHRlbmRzIEd1aUludGVyYWN0aXZlQmFzZSB7XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
export class Styles {
|
|
2
|
-
static MSGBOX_BUTTON_OK = 0x00000000;
|
|
3
|
-
static MSGBOX_BUTTON_OK_CANCEL = 0x00000001;
|
|
4
|
-
static MSGBOX_BUTTON_ABORT_RETRY_IGNORE = 0x00000002;
|
|
5
|
-
static MSGBOX_BUTTON_YES_NO_CANCEL = 0x00000003;
|
|
6
|
-
static MSGBOX_BUTTON_YES_NO = 0x00000004;
|
|
7
|
-
static MSGBOX_BUTTON_RETRY_CANCEL = 0x00000005;
|
|
8
|
-
static MSGBOX_ICON_ERROR = 0x00000010;
|
|
9
|
-
static MSGBOX_ICON_QUESTION = 0x00000020;
|
|
10
|
-
static MSGBOX_ICON_EXCLAMATION = 0x00000030;
|
|
11
|
-
static MSGBOX_ICON_INFORMATION = 0x00000040;
|
|
12
|
-
static MSGBOX_ICON_WARNING = Styles.MSGBOX_ICON_EXCLAMATION;
|
|
13
|
-
static MSGBOX_RESULT_OK = 1;
|
|
14
|
-
static MSGBOX_RESULT_CANCEL = 2;
|
|
15
|
-
static MSGBOX_RESULT_ABORT = 3;
|
|
16
|
-
static MSGBOX_RESULT_RETRY = 4;
|
|
17
|
-
static MSGBOX_RESULT_YES = 6;
|
|
18
|
-
static MSGBOX_RESULT_NO = 7;
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3R5bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL2d1aS9sb3cvU3R5bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFRLE1BQU07SUFNbEIsTUFBTSxDQUFFLGdCQUFnQixHQUFXLFVBQVUsQ0FBQztJQUM5QyxNQUFNLENBQUUsdUJBQXVCLEdBQVcsVUFBVSxDQUFDO0lBQ3JELE1BQU0sQ0FBRSxnQ0FBZ0MsR0FBVyxVQUFVLENBQUM7SUFDOUQsTUFBTSxDQUFFLDJCQUEyQixHQUFXLFVBQVUsQ0FBQztJQUN6RCxNQUFNLENBQUUsb0JBQW9CLEdBQVcsVUFBVSxDQUFDO0lBQ2xELE1BQU0sQ0FBRSwwQkFBMEIsR0FBVyxVQUFVLENBQUM7SUFFeEQsTUFBTSxDQUFFLGlCQUFpQixHQUFXLFVBQVUsQ0FBQztJQUMvQyxNQUFNLENBQUUsb0JBQW9CLEdBQVcsVUFBVSxDQUFDO0lBQ2xELE1BQU0sQ0FBRSx1QkFBdUIsR0FBVyxVQUFVLENBQUM7SUFDckQsTUFBTSxDQUFFLHVCQUF1QixHQUFXLFVBQVUsQ0FBQztJQUNyRCxNQUFNLENBQUMsbUJBQW1CLEdBQVcsTUFBTSxDQUFDLHVCQUF1QixDQUFDO0lBSXBFLE1BQU0sQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7SUFDNUIsTUFBTSxDQUFDLG9CQUFvQixHQUFHLENBQUMsQ0FBQztJQUNoQyxNQUFNLENBQUMsbUJBQW1CLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLE1BQU0sQ0FBQyxtQkFBbUIsR0FBRyxDQUFDLENBQUM7SUFFL0IsTUFBTSxDQUFDLGlCQUFpQixHQUFHLENBQUMsQ0FBQztJQUM3QixNQUFNLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzICBTdHlsZXNcclxue1xyXG5cclxuXHJcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gIC8vIGNvbmZpcm1hdGlvbiBib3hcclxuICBzdGF0aWMgIE1TR0JPWF9CVVRUT05fT0s6IG51bWJlciA9IDB4MDAwMDAwMDA7XHJcbiAgc3RhdGljICBNU0dCT1hfQlVUVE9OX09LX0NBTkNFTDogbnVtYmVyID0gMHgwMDAwMDAwMTtcclxuICBzdGF0aWMgIE1TR0JPWF9CVVRUT05fQUJPUlRfUkVUUllfSUdOT1JFOiBudW1iZXIgPSAweDAwMDAwMDAyO1xyXG4gIHN0YXRpYyAgTVNHQk9YX0JVVFRPTl9ZRVNfTk9fQ0FOQ0VMOiBudW1iZXIgPSAweDAwMDAwMDAzO1xyXG4gIHN0YXRpYyAgTVNHQk9YX0JVVFRPTl9ZRVNfTk86IG51bWJlciA9IDB4MDAwMDAwMDQ7XHJcbiAgc3RhdGljICBNU0dCT1hfQlVUVE9OX1JFVFJZX0NBTkNFTDogbnVtYmVyID0gMHgwMDAwMDAwNTtcclxuXHJcbiAgc3RhdGljICBNU0dCT1hfSUNPTl9FUlJPUjogbnVtYmVyID0gMHgwMDAwMDAxMDtcclxuICBzdGF0aWMgIE1TR0JPWF9JQ09OX1FVRVNUSU9OOiBudW1iZXIgPSAweDAwMDAwMDIwO1xyXG4gIHN0YXRpYyAgTVNHQk9YX0lDT05fRVhDTEFNQVRJT046IG51bWJlciA9IDB4MDAwMDAwMzA7XHJcbiAgc3RhdGljICBNU0dCT1hfSUNPTl9JTkZPUk1BVElPTjogbnVtYmVyID0gMHgwMDAwMDA0MDtcclxuICBzdGF0aWMgTVNHQk9YX0lDT05fV0FSTklORzogbnVtYmVyID0gU3R5bGVzLk1TR0JPWF9JQ09OX0VYQ0xBTUFUSU9OO1xyXG5cclxuXHJcbiAgLy8gbWVzc2FnZSBib3ggcmVzdWx0XHJcbiAgc3RhdGljIE1TR0JPWF9SRVNVTFRfT0sgPSAxO1xyXG4gIHN0YXRpYyBNU0dCT1hfUkVTVUxUX0NBTkNFTCA9IDI7XHJcbiAgc3RhdGljIE1TR0JPWF9SRVNVTFRfQUJPUlQgPSAzO1xyXG4gIHN0YXRpYyBNU0dCT1hfUkVTVUxUX1JFVFJZID0gNDtcclxuXHJcbiAgc3RhdGljIE1TR0JPWF9SRVNVTFRfWUVTID0gNjtcclxuICBzdGF0aWMgTVNHQk9YX1JFU1VMVF9OTyA9IDc7XHJcblxyXG5cclxufVxyXG4iXX0=
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { XmlParser } from "@magic-xpa/utils";
|
|
2
|
-
import { Manager } from "../Manager";
|
|
3
|
-
import { NString } from "@magic-xpa/mscorelib";
|
|
4
|
-
export class RuntimeContextBase {
|
|
5
|
-
_insertMode = false;
|
|
6
|
-
_lastCoordinates = new Array(4);
|
|
7
|
-
ContextID = '\0';
|
|
8
|
-
Parser = null;
|
|
9
|
-
FrameForm = null;
|
|
10
|
-
LastClickedCtrlName = null;
|
|
11
|
-
static noContextId = null;
|
|
12
|
-
RemovedContextFromServer = false;
|
|
13
|
-
RemovingContextFromServer = false;
|
|
14
|
-
CurrentClickedCtrl = null;
|
|
15
|
-
CurrentClickedRadio = null;
|
|
16
|
-
DefaultStatusMsg = null;
|
|
17
|
-
LastClickCoordinatesAreInPixels = false;
|
|
18
|
-
static Instance = new RuntimeContextBase();
|
|
19
|
-
constructor() { }
|
|
20
|
-
Init(contextID) {
|
|
21
|
-
this.ContextID = contextID;
|
|
22
|
-
this.LastClickedCtrlName = "";
|
|
23
|
-
this._insertMode = true;
|
|
24
|
-
Manager.SetCurrentContextID(contextID);
|
|
25
|
-
this.Parser = new XmlParser();
|
|
26
|
-
}
|
|
27
|
-
SaveLastClickInfo(controlName, clientX, clientY, offsetX, offsetY, isInPixels) {
|
|
28
|
-
this._lastCoordinates[0] = offsetX;
|
|
29
|
-
this._lastCoordinates[1] = offsetY;
|
|
30
|
-
this._lastCoordinates[2] = clientX;
|
|
31
|
-
this._lastCoordinates[3] = clientY;
|
|
32
|
-
this.LastClickCoordinatesAreInPixels = isInPixels;
|
|
33
|
-
this.LastClickedCtrlName = "";
|
|
34
|
-
if (!NString.IsNullOrEmpty(controlName)) {
|
|
35
|
-
this.LastClickedCtrlName = controlName;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
ToggleInsertMode() {
|
|
39
|
-
this._insertMode = !this._insertMode;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUnVudGltZUNvbnRleHRCYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9tYW5hZ2VtZW50L1J1bnRpbWVDb250ZXh0QmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFHM0MsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFN0MsTUFBTSxPQUFPLGtCQUFrQjtJQUNyQixXQUFXLEdBQVksS0FBSyxDQUFDO0lBQzdCLGdCQUFnQixHQUFhLElBQUksS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFDO0lBQzFELFNBQVMsR0FBVyxJQUFJLENBQUM7SUFDekIsTUFBTSxHQUFjLElBQUksQ0FBQztJQUN6QixTQUFTLEdBQWUsSUFBSSxDQUFDO0lBQzdCLG1CQUFtQixHQUFXLElBQUksQ0FBQztJQUVuQyxNQUFNLENBQUMsV0FBVyxHQUFXLElBQUksQ0FBQztJQUNsQyx3QkFBd0IsR0FBWSxLQUFLLENBQUM7SUFDMUMseUJBQXlCLEdBQVksS0FBSyxDQUFDO0lBSTNDLGtCQUFrQixHQUFrQixJQUFJLENBQUM7SUFFekMsbUJBQW1CLEdBQWtCLElBQUksQ0FBQztJQUMxQyxnQkFBZ0IsR0FBVyxJQUFJLENBQUM7SUFDaEMsK0JBQStCLEdBQVksS0FBSyxDQUFDO0lBRWpELE1BQU0sQ0FBQyxRQUFRLEdBQXVCLElBQUksa0JBQWtCLEVBQUUsQ0FBQztJQUUvRCxnQkFBd0IsQ0FBQztJQUN6QixJQUFJLENBQUMsU0FBaUI7UUFDcEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUN4QixPQUFPLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLFNBQVMsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxXQUFtQixFQUFFLE9BQWUsRUFBRSxPQUFlLEVBQUUsT0FBZSxFQUFFLE9BQWUsRUFBRSxVQUFtQjtRQUM1SCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDO1FBQ25DLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUM7UUFDbkMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQztRQUNuQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDO1FBRW5DLElBQUksQ0FBQywrQkFBK0IsR0FBRyxVQUFVLENBQUM7UUFFbEQsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUN2QyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsV0FBVyxDQUFDO1NBQ3hDO0lBQ0gsQ0FBQztJQUdELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3ZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1htbFBhcnNlcn0gZnJvbSBcIkBtYWdpYy14cGEvdXRpbHNcIjtcclxuaW1wb3J0IHtNZ0Zvcm1CYXNlfSBmcm9tIFwiLi9ndWkvTWdGb3JtQmFzZVwiO1xyXG5pbXBvcnQge01nQ29udHJvbEJhc2V9IGZyb20gXCIuL2d1aS9NZ0NvbnRyb2xCYXNlXCI7XHJcbmltcG9ydCB7TWFuYWdlcn0gZnJvbSBcIi4uL01hbmFnZXJcIjtcclxuaW1wb3J0IHtOU3RyaW5nfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBSdW50aW1lQ29udGV4dEJhc2Uge1xyXG4gIHByaXZhdGUgX2luc2VydE1vZGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwcml2YXRlIF9sYXN0Q29vcmRpbmF0ZXM6IG51bWJlcltdID0gbmV3IEFycmF5PG51bWJlcj4oNCk7XHJcbiAgQ29udGV4dElEOiBzdHJpbmcgPSAnXFwwJztcclxuICBQYXJzZXI6IFhtbFBhcnNlciA9IG51bGw7IC8vIHhtbCBwYXJzZXJcclxuICBGcmFtZUZvcm06IE1nRm9ybUJhc2UgPSBudWxsOyAvLyBmb3JtIG9mIHRoZSBNREkvU0RJIGZyYW1lXHJcbiAgTGFzdENsaWNrZWRDdHJsTmFtZTogc3RyaW5nID0gbnVsbDtcclxuXHJcbiAgc3RhdGljIG5vQ29udGV4dElkOiBzdHJpbmcgPSBudWxsO1xyXG4gIFJlbW92ZWRDb250ZXh0RnJvbVNlcnZlcjogYm9vbGVhbiA9IGZhbHNlOyAvL3NldCB3aGVuIHJlcS4gJ0NvbnRleHQgUmVtb3ZlJyBzZW50IHRvIHNlcnZlci5cclxuICBSZW1vdmluZ0NvbnRleHRGcm9tU2VydmVyOiBib29sZWFuID0gZmFsc2U7IC8vc2V0IHdoZW4gZXZlbnQgJ0NvbnRleHQgUmVtb3ZlJ3JhaXNlZFxyXG4gIC8vIEN1cnJlbnRDbGlja2VkQ3RybCAtIGFsd2F5cyBwb2ludHMgdG8gdGhlIGN1cnJlbnQgY2xpY2tlZEN0cmwuIEluaXRpYWxseSBudWxsLCBidXQgb25jZSBjbGlja2VkIG9uIGFueVxyXG4gIC8vIGNvbnRyb2wsIGl0IGFsd2F5cyBwb2ludHMgdG8gdGhpcyBjbGlja2VkIGN0cmwuIEFuZCwgaXMgcmVzZXQgYmFjayB0byBudWxsIG9uY2Ugd2UgaGF2ZSBzdWNjZXNzZnVsbHlcclxuICAvLyBwYXJrZWQgb24gdGhlIHBhcmthYmxlIGNvbnRyb2wuXHJcbiAgQ3VycmVudENsaWNrZWRDdHJsOiBNZ0NvbnRyb2xCYXNlID0gbnVsbDtcclxuXHJcbiAgQ3VycmVudENsaWNrZWRSYWRpbzogTWdDb250cm9sQmFzZSA9IG51bGw7XHJcbiAgRGVmYXVsdFN0YXR1c01zZzogc3RyaW5nID0gbnVsbDtcclxuICBMYXN0Q2xpY2tDb29yZGluYXRlc0FyZUluUGl4ZWxzOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHN0YXRpYyBJbnN0YW5jZTogUnVudGltZUNvbnRleHRCYXNlID0gbmV3IFJ1bnRpbWVDb250ZXh0QmFzZSgpO1xyXG5cclxuICBwcml2YXRlIGNvbnN0cnVjdG9yKCkgeyB9XHJcbiAgSW5pdChjb250ZXh0SUQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5Db250ZXh0SUQgPSBjb250ZXh0SUQ7XHJcbiAgICB0aGlzLkxhc3RDbGlja2VkQ3RybE5hbWUgPSBcIlwiO1xyXG4gICAgdGhpcy5faW5zZXJ0TW9kZSA9IHRydWU7XHJcbiAgICBNYW5hZ2VyLlNldEN1cnJlbnRDb250ZXh0SUQoY29udGV4dElEKTtcclxuICAgIHRoaXMuUGFyc2VyID0gbmV3IFhtbFBhcnNlcigpO1xyXG4gIH1cclxuXHJcbiAgU2F2ZUxhc3RDbGlja0luZm8oY29udHJvbE5hbWU6IHN0cmluZywgY2xpZW50WDogbnVtYmVyLCBjbGllbnRZOiBudW1iZXIsIG9mZnNldFg6IG51bWJlciwgb2Zmc2V0WTogbnVtYmVyLCBpc0luUGl4ZWxzOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLl9sYXN0Q29vcmRpbmF0ZXNbMF0gPSBvZmZzZXRYOyAvLyBHaXZlcyB0aGUgWCBsb2NhdGlvbiBvZiB0aGUgbGFzdCBjbGljaywgcmVsYXRpdmUgdG8gdGhlIHdpbmRvd1xyXG4gICAgdGhpcy5fbGFzdENvb3JkaW5hdGVzWzFdID0gb2Zmc2V0WTsgLy8gR2l2ZXMgdGhlIFkgbG9jYXRpb24gb2YgdGhlIGxhc3QgY2xpY2ssIHJlbGF0aXZlIHRvIHRoZSB3aW5kb3dcclxuICAgIHRoaXMuX2xhc3RDb29yZGluYXRlc1syXSA9IGNsaWVudFg7IC8vIEdpdmVzIHRoZSBYIGxvY2F0aW9uIG9mIHRoZSBsYXN0IGNsaWNrLCByZWxhdGl2ZSB0byB0aGUgY29udHJvbCB3aXRoaW4gd2hpY2ggdGhlIGNsaWNrIG9jY3VycmVkXHJcbiAgICB0aGlzLl9sYXN0Q29vcmRpbmF0ZXNbM10gPSBjbGllbnRZOyAvLyBHaXZlcyB0aGUgWSBsb2NhdGlvbiBvZiB0aGUgbGFzdCBjbGljaywgcmVsYXRpdmUgdG8gdGhlIGNvbnRyb2wgd2l0aGluIHdoaWNoIHRoZSBjbGljayBvY2N1cnJlZFxyXG5cclxuICAgIHRoaXMuTGFzdENsaWNrQ29vcmRpbmF0ZXNBcmVJblBpeGVscyA9IGlzSW5QaXhlbHM7XHJcblxyXG4gICAgdGhpcy5MYXN0Q2xpY2tlZEN0cmxOYW1lID0gXCJcIjsgLy8gaXMgZW1wdHkgc3RyaW5nXHJcbiAgICBpZiAoIU5TdHJpbmcuSXNOdWxsT3JFbXB0eShjb250cm9sTmFtZSkpIHtcclxuICAgICAgdGhpcy5MYXN0Q2xpY2tlZEN0cmxOYW1lID0gY29udHJvbE5hbWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IHRvZ2dsZSB0aGUgX2luc2VydE1vZGUgKGJldHdlZW4gaW5zZXJ0IGFuZCBvdmVyd3JpdGUpLiA8L3N1bW1hcnk+XHJcbiAgVG9nZ2xlSW5zZXJ0TW9kZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2luc2VydE1vZGUgPSAhdGhpcy5faW5zZXJ0TW9kZTtcclxuICB9XHJcbn1cclxuIl19
|