@magic-xpa/gui 4.800.0-dev480.13 → 4.800.0-dev480.130
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/bundles/magic-xpa-gui.umd.js +1057 -7516
- package/bundles/magic-xpa-gui.umd.js.map +1 -1
- package/bundles/magic-xpa-gui.umd.min.js +1 -1
- package/bundles/magic-xpa-gui.umd.min.js.map +1 -1
- package/esm2015/index.js +1 -1
- package/esm2015/magic-xpa-gui.js +1 -4
- package/esm2015/src/Commands.js +7 -114
- package/esm2015/src/Events.js +1 -517
- package/esm2015/src/EventsProcessor.js +1 -51
- package/esm2015/src/FocusManager.js +1 -13
- package/esm2015/src/GuiConstants.js +2 -11
- package/esm2015/src/GuiEnums.js +127 -130
- package/esm2015/src/GuiEnvironment.js +1 -1
- package/esm2015/src/IFlowMonitorQueue.js +1 -1
- package/esm2015/src/Manager.js +10 -148
- package/esm2015/src/UIBridge.js +1 -6
- package/esm2015/src/env/IEnvironment.js +1 -1
- package/esm2015/src/gui/ControlBase.js +1 -1
- package/esm2015/src/gui/GuiMgControl.js +1 -94
- package/esm2015/src/gui/GuiMgForm.js +1 -1
- package/esm2015/src/gui/KeyboardItem.js +5 -46
- package/esm2015/src/gui/LastFocusedVal.js +1 -5
- package/esm2015/src/gui/MgValue.js +1 -1
- package/esm2015/src/gui/PropParentInterface.js +1 -1
- package/esm2015/src/gui/low/DialogHandler.js +1 -10
- package/esm2015/src/gui/low/GuiCommand.js +1 -12
- package/esm2015/src/gui/low/GuiCommandQueue.js +1 -66
- package/esm2015/src/gui/low/GuiInteractive.js +2 -465
- package/esm2015/src/gui/low/Style.js +1 -9
- package/esm2015/src/management/RuntimeContextBase.js +9 -14
- package/esm2015/src/management/data/BlobType.js +0 -0
- package/esm2015/src/management/data/DcValues.js +8 -67
- package/esm2015/src/management/data/DcValuesBuilderBase.js +2 -37
- package/esm2015/src/management/data/FieldDef.js +1 -95
- package/esm2015/src/management/data/FieldsTable.js +2 -28
- package/esm2015/src/management/data/GuiDataViewBase.js +33 -72
- package/esm2015/src/management/data/GuiFieldBase.js +4 -39
- package/esm2015/src/management/data/IRecord.js +1 -1
- package/esm2015/src/management/data/IReferencedObject.js +1 -8
- package/esm2015/src/management/data/NUM_TYPE.js +14 -485
- package/esm2015/src/management/data/ObjectReferenceBase.js +1 -3
- package/esm2015/src/management/data/ObjectReferencesCollection.js +1 -2
- package/esm2015/src/management/data/RecordUtils.js +6 -112
- package/esm2015/src/management/data/VectorType.js +17 -252
- package/esm2015/src/management/data/VectorTypeBase.js +1 -35
- package/esm2015/src/management/events/IActionManager.js +1 -1
- package/esm2015/src/management/events/IGuiEventsManager.js +1 -1
- package/esm2015/src/management/exp/ExpressionInterface.js +4 -3
- package/esm2015/src/management/exp/GuiExpressionEvaluator.js +38 -155
- package/esm2015/src/management/gui/ControlTable.js +18 -72
- package/esm2015/src/management/gui/DisplayConvertor.js +43 -493
- package/esm2015/src/management/gui/FieldValidator.js +58 -339
- package/esm2015/src/management/gui/GuiControlPropertyAdapter.js +1 -1
- package/esm2015/src/management/gui/GuiFormPropertyAdapter.js +1 -8
- package/esm2015/src/management/gui/HebrewDate.js +3 -140
- package/esm2015/src/management/gui/Helps.js +2 -48
- package/esm2015/src/management/gui/MgControlBase.js +160 -874
- package/esm2015/src/management/gui/MgFormBase.js +68 -407
- package/esm2015/src/management/gui/PIC.js +56 -285
- package/esm2015/src/management/gui/PropDefaults.js +13 -48
- package/esm2015/src/management/gui/PropInterface.js +3 -4
- package/esm2015/src/management/gui/PropTable.js +72 -183
- package/esm2015/src/management/gui/Property.js +40 -373
- package/esm2015/src/management/gui/ValidationDetails.js +10 -52
- package/esm2015/src/management/gui/ValidationDetailsBase.js +12 -45
- package/esm2015/src/management/gui/WrongFormatException.js +1 -15
- package/esm2015/src/management/tasks/GuiDataCollection.js +1 -1
- package/esm2015/src/management/tasks/GuiTaskBase.js +38 -383
- package/esm2015/src/management/tasks/IMGDataTable.js +1 -1
- package/esm2015/src/management/tasks/ITask.js +1 -1
- package/esm2015/src/management/tasks/MgTimer.js +1 -16
- package/esm2015/src/management/tasks/TaskDefinitionId.js +1 -18
- package/esm2015/src/management/tasks/TaskDefinitionIdTableSaxHandler.js +1 -13
- package/esm2015/src/util/AuthenticationDialogHandler.js +1 -4
- package/esm2015/src/util/MemoryUtil.js +1 -41
- package/esm2015/src/util/ObjectReference.js +1 -8
- package/esm2015/src/util/ProcessLauncher.js +3 -21
- package/esm2015/src/util/UsernamePasswordCredentials.js +1 -9
- package/fesm2015/magic-xpa-gui.js +859 -7051
- package/fesm2015/magic-xpa-gui.js.map +1 -1
- package/magic-xpa-gui.d.ts +0 -3
- package/package.json +2 -2
- package/src/Commands.d.ts +1 -0
- package/src/Events.d.ts +0 -2
- package/src/GuiEnums.d.ts +127 -129
- package/src/env/IEnvironment.d.ts +3 -0
- package/src/gui/GuiMgControl.d.ts +1 -0
- package/src/gui/PropParentInterface.d.ts +1 -1
- package/src/gui/low/Style.d.ts +0 -3
- package/src/management/data/GuiDataViewBase.d.ts +4 -4
- package/src/management/data/IRecord.d.ts +1 -1
- package/src/management/exp/ExpressionInterface.d.ts +3 -0
- package/src/management/exp/GuiExpressionEvaluator.d.ts +4 -6
- package/src/management/gui/ControlTable.d.ts +1 -1
- package/src/management/gui/DisplayConvertor.d.ts +1 -1
- package/src/management/gui/GuiControlPropertyAdapter.d.ts +1 -1
- package/src/management/gui/MgControlBase.d.ts +8 -7
- package/src/management/gui/MgFormBase.d.ts +6 -6
- package/src/management/gui/PIC.d.ts +1 -0
- package/src/management/gui/PropInterface.d.ts +3 -4
- package/src/management/gui/PropTable.d.ts +4 -5
- package/src/management/gui/Property.d.ts +1 -1
- package/src/management/tasks/GuiTaskBase.d.ts +8 -14
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __awaiter } from "tslib";
|
|
2
1
|
import { Dictionary, List, RefParam } from "@magic-xpa/mscorelib";
|
|
3
2
|
import { DcValues, EMPTY_DCREF } from "./DcValues";
|
|
4
3
|
import { Events } from "../../Events";
|
|
@@ -7,60 +6,31 @@ import { PIC } from "../gui/PIC";
|
|
|
7
6
|
import { DisplayConvertor } from "../gui/DisplayConvertor";
|
|
8
7
|
import { Commands } from "../../Commands";
|
|
9
8
|
import { CommandType } from "../../GuiEnums";
|
|
10
|
-
/// <summary>
|
|
11
|
-
/// functionality required by the GUI namespace from the DataViewBase class.
|
|
12
|
-
/// </summary>
|
|
13
9
|
export class GuiDataViewBase {
|
|
14
10
|
constructor() {
|
|
15
11
|
this._dcValsCollection = new Dictionary();
|
|
16
|
-
this._emptyDataview = false;
|
|
17
|
-
this._fieldsTab = null;
|
|
18
|
-
this._task = null;
|
|
19
|
-
// dummy DcValues for use with non-DC choice controls
|
|
12
|
+
this._emptyDataview = false;
|
|
13
|
+
this._fieldsTab = null;
|
|
14
|
+
this._task = null;
|
|
20
15
|
this._emptyChoice = new DcValues(true, false);
|
|
21
16
|
this._emptyChoiceForVectors = new DcValues(true, true);
|
|
22
17
|
}
|
|
23
|
-
Init() {
|
|
24
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
/// <summary>
|
|
28
|
-
/// parse the DVHEADER tag
|
|
29
|
-
/// </summary>
|
|
30
|
-
fillHeaderData(parser) {
|
|
31
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
-
this._fieldsTab.fillData(parser, this);
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
/// <summary>
|
|
36
|
-
/// get a field by its id
|
|
37
|
-
/// </summary>
|
|
38
|
-
/// <param name = "id">field id </param>
|
|
39
18
|
getField(id) {
|
|
40
19
|
if (this._fieldsTab != null)
|
|
41
20
|
return this._fieldsTab.getField(id);
|
|
42
21
|
Events.WriteExceptionToLog("in DataView.getFieldDef(int): There is no fieldsTab object");
|
|
43
22
|
return null;
|
|
44
23
|
}
|
|
45
|
-
/// <returns> the emptyDataview</returns>
|
|
46
24
|
isEmptyDataview() {
|
|
47
25
|
return this._emptyDataview;
|
|
48
26
|
}
|
|
49
|
-
/// <param name = "emptyDataview">the emptyDataview to set</param>
|
|
50
27
|
setEmptyDataview(emptyDataview) {
|
|
51
28
|
this._emptyDataview = emptyDataview;
|
|
52
29
|
Commands.addBoolWithLine(CommandType.SET_EMPTY_DATAVIEW, this._task.getForm(), 0, emptyDataview);
|
|
53
30
|
}
|
|
54
|
-
/// <summary>
|
|
55
|
-
/// return a reference to the task of this dataview
|
|
56
|
-
/// </summary>
|
|
57
31
|
getTask() {
|
|
58
32
|
return this._task;
|
|
59
33
|
}
|
|
60
|
-
/// <summary>
|
|
61
|
-
/// get dcValues object by its id
|
|
62
|
-
/// </summary>
|
|
63
|
-
/// <param name = "dcId">id of a data control values </param>
|
|
64
34
|
getDcValues(dcId) {
|
|
65
35
|
if (dcId === EMPTY_DCREF)
|
|
66
36
|
return this.getEmptyChoice();
|
|
@@ -69,61 +39,52 @@ export class GuiDataViewBase {
|
|
|
69
39
|
this._dcValsCollection.TryGetValue(dcId.toString(), dcv);
|
|
70
40
|
return dcv.value;
|
|
71
41
|
}
|
|
72
|
-
/// <returns>dummy DcValues for use with non-DC choice controls</returns>
|
|
73
42
|
getEmptyChoice() {
|
|
74
43
|
return this._emptyChoice;
|
|
75
44
|
}
|
|
76
45
|
getEmptyChoiceForVectors() {
|
|
77
46
|
return this._emptyChoiceForVectors;
|
|
78
47
|
}
|
|
79
|
-
/// <summary>
|
|
80
|
-
/// get fields table (<dvheader>) of the ((DataView)dataView)
|
|
81
|
-
/// </summary>
|
|
82
48
|
GetFieldsTab() {
|
|
83
49
|
return this._fieldsTab;
|
|
84
50
|
}
|
|
85
|
-
/// <summary>
|
|
86
|
-
/// get route params
|
|
87
|
-
/// </summary>
|
|
88
51
|
GetRouteParams() {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
{
|
|
99
|
-
val = field.getDispValue();
|
|
100
|
-
if (field.isNull())
|
|
101
|
-
val = field.getNullDisplay();
|
|
102
|
-
params.push(val.trim());
|
|
103
|
-
}
|
|
104
|
-
break;
|
|
105
|
-
case StorageAttribute.BOOLEAN:
|
|
106
|
-
{
|
|
107
|
-
if (field.isNull())
|
|
108
|
-
params.push(false);
|
|
109
|
-
else
|
|
110
|
-
params.push(field.getDispValue().charAt(0) === '1' ? true : false);
|
|
111
|
-
}
|
|
112
|
-
break;
|
|
113
|
-
case StorageAttribute.NUMERIC: {
|
|
52
|
+
let params = new List();
|
|
53
|
+
for (let i = 0; i < this._fieldsTab.getSize(); i++) {
|
|
54
|
+
let field = this._fieldsTab.getField(i);
|
|
55
|
+
let val;
|
|
56
|
+
if (field.IsExposedRouteParam && !field.isNull()) {
|
|
57
|
+
switch (field.getType()) {
|
|
58
|
+
case StorageAttribute.ALPHA:
|
|
59
|
+
case StorageAttribute.UNICODE:
|
|
60
|
+
{
|
|
114
61
|
val = field.getDispValue();
|
|
115
62
|
if (field.isNull())
|
|
116
63
|
val = field.getNullDisplay();
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
64
|
+
params.push(val.trim());
|
|
65
|
+
}
|
|
66
|
+
break;
|
|
67
|
+
case StorageAttribute.BOOLEAN:
|
|
68
|
+
{
|
|
69
|
+
if (field.isNull())
|
|
70
|
+
params.push(false);
|
|
71
|
+
else
|
|
72
|
+
params.push(field.getDispValue().charAt(0) === '1' ? true : false);
|
|
121
73
|
}
|
|
74
|
+
break;
|
|
75
|
+
case StorageAttribute.NUMERIC: {
|
|
76
|
+
val = field.getDispValue();
|
|
77
|
+
if (field.isNull())
|
|
78
|
+
val = field.getNullDisplay();
|
|
79
|
+
let pic = new PIC(field.getPicture(), field.getType(), this.getTask().getCompIdx());
|
|
80
|
+
val = DisplayConvertor.Instance.mg2disp(val, "", pic, true, 0, false);
|
|
81
|
+
params.push(val);
|
|
82
|
+
break;
|
|
122
83
|
}
|
|
123
84
|
}
|
|
124
85
|
}
|
|
125
|
-
|
|
126
|
-
|
|
86
|
+
}
|
|
87
|
+
return (params.length > 0) ? params : null;
|
|
127
88
|
}
|
|
128
89
|
}
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpRGF0YVZpZXdCYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9tYW5hZ2VtZW50L2RhdGEvR3VpRGF0YVZpZXdCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRSxPQUFPLEVBQUMsUUFBUSxFQUFFLFdBQVcsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUtqRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBRXBDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBWSxNQUFNLGtCQUFrQixDQUFDO0FBQzdELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDL0IsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxhQUFhO0FBQ2IsNEVBQTRFO0FBQzVFLGNBQWM7QUFDZCxNQUFNLE9BQU8sZUFBZTtJQUE1QjtRQUVFLHNCQUFpQixHQUF5QixJQUFJLFVBQVUsRUFBWSxDQUFDO1FBQzdELG1CQUFjLEdBQVksS0FBSyxDQUFDLENBQUMsMENBQTBDO1FBQ25GLGVBQVUsR0FBZ0IsSUFBSSxDQUFDLENBQUMsZ0NBQWdDO1FBQ2hFLFVBQUssR0FBZ0IsSUFBSSxDQUFDLENBQUMsaUJBQWlCO1FBRTVDLHFEQUFxRDtRQUM3QyxpQkFBWSxHQUFhLElBQUksUUFBUSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNuRCwyQkFBc0IsR0FBYSxJQUFJLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUF1SHRFLENBQUM7SUFwSGMsSUFB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SSxDQUFDO1FBQzdDLENBQUM7S0FBQTtDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaWN0aW9uYXJ5LCBMaXN0LCBSZWZQYXJhbX0gZnJvbSBcIkBtYWdpYy14cGEvbXNjb3JlbGliXCI7XHJcbmltcG9ydCB7RGNWYWx1ZXMsIEVNUFRZX0RDUkVGfSBmcm9tIFwiLi9EY1ZhbHVlc1wiO1xyXG5pbXBvcnQge0ZpZWxkc1RhYmxlfSBmcm9tIFwiLi9GaWVsZHNUYWJsZVwiO1xyXG5pbXBvcnQge0d1aVRhc2tCYXNlfSBmcm9tIFwiLi4vdGFza3MvR3VpVGFza0Jhc2VcIjtcclxuaW1wb3J0IHtGaWVsZERlZn0gZnJvbSBcIi4vRmllbGREZWZcIjtcclxuaW1wb3J0IHtJVGFza30gZnJvbSBcIi4uL3Rhc2tzL0lUYXNrXCI7XHJcbmltcG9ydCB7RXZlbnRzfSBmcm9tIFwiLi4vLi4vRXZlbnRzXCI7XHJcblxyXG5pbXBvcnQge1N0b3JhZ2VBdHRyaWJ1dGUsIFhtbFBhcnNlcn0gZnJvbSBcIkBtYWdpYy14cGEvdXRpbHNcIjtcclxuaW1wb3J0IHtQSUN9IGZyb20gXCIuLi9ndWkvUElDXCI7XHJcbmltcG9ydCB7RGlzcGxheUNvbnZlcnRvcn0gZnJvbSBcIi4uL2d1aS9EaXNwbGF5Q29udmVydG9yXCI7XHJcbmltcG9ydCB7IENvbW1hbmRzIH0gZnJvbSBcIi4uLy4uL0NvbW1hbmRzXCI7XHJcbmltcG9ydCB7IENvbW1hbmRUeXBlIH0gZnJvbSBcIi4uLy4uL0d1aUVudW1zXCI7XHJcblxyXG4vLy8gPHN1bW1hcnk+XHJcbi8vLyBmdW5jdGlvbmFsaXR5IHJlcXVpcmVkIGJ5IHRoZSBHVUkgbmFtZXNwYWNlIGZyb20gdGhlIERhdGFWaWV3QmFzZSBjbGFzcy5cclxuLy8vIDwvc3VtbWFyeT5cclxuZXhwb3J0IGNsYXNzIEd1aURhdGFWaWV3QmFzZSB7XHJcblxyXG4gIF9kY1ZhbHNDb2xsZWN0aW9uOiBEaWN0aW9uYXJ5PERjVmFsdWVzPiA9IG5ldyBEaWN0aW9uYXJ5PERjVmFsdWVzPigpO1xyXG4gIHByaXZhdGUgX2VtcHR5RGF0YXZpZXc6IGJvb2xlYW4gPSBmYWxzZTsgLy8gSW5kaWNhdGVzIHRoZSB0YXNrIGlzIGluIEVtcHR5IERhdGF2aWV3XHJcbiAgX2ZpZWxkc1RhYjogRmllbGRzVGFibGUgPSBudWxsOyAvLyA8ZHZoZWFkZXI+IC4uLjwvZHZoZWFkZXI+IHRhZ1xyXG4gIF90YXNrOiBHdWlUYXNrQmFzZSA9IG51bGw7IC8vIGNvbnRhaW5lciB0YXNrXHJcblxyXG4gIC8vIGR1bW15IERjVmFsdWVzIGZvciB1c2Ugd2l0aCBub24tREMgY2hvaWNlIGNvbnRyb2xzXHJcbiAgcHJpdmF0ZSBfZW1wdHlDaG9pY2U6IERjVmFsdWVzID0gbmV3IERjVmFsdWVzKHRydWUsIGZhbHNlKTtcclxuICBwcml2YXRlIF9lbXB0eUNob2ljZUZvclZlY3RvcnM6IERjVmFsdWVzID0gbmV3IERjVmFsdWVzKHRydWUsIHRydWUpO1xyXG5cclxuXHJcbiAgcHVibGljIGFzeW5jIEluaXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcblxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHBhcnNlIHRoZSBEVkhFQURFUiB0YWdcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGFzeW5jIGZpbGxIZWFkZXJEYXRhKHBhcnNlcjogWG1sUGFyc2VyKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLl9maWVsZHNUYWIuZmlsbERhdGEocGFyc2VyLCB0aGlzKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBnZXQgYSBmaWVsZCBieSBpdHMgaWRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiaWRcIj5maWVsZCBpZCA8L3BhcmFtPlxyXG4gIGdldEZpZWxkKGlkOiBudW1iZXIpOiBGaWVsZERlZiB7XHJcbiAgICBpZiAodGhpcy5fZmllbGRzVGFiICE9IG51bGwpXHJcbiAgICAgIHJldHVybiB0aGlzLl9maWVsZHNUYWIuZ2V0RmllbGQoaWQpO1xyXG5cclxuICAgIEV2ZW50cy5Xcml0ZUV4Y2VwdGlvblRvTG9nKFwiaW4gRGF0YVZpZXcuZ2V0RmllbGREZWYoaW50KTogVGhlcmUgaXMgbm8gZmllbGRzVGFiIG9iamVjdFwiKTtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxyZXR1cm5zPiB0aGUgZW1wdHlEYXRhdmlldzwvcmV0dXJucz5cclxuICBpc0VtcHR5RGF0YXZpZXcoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZW1wdHlEYXRhdmlldztcclxuICB9XHJcblxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiZW1wdHlEYXRhdmlld1wiPnRoZSBlbXB0eURhdGF2aWV3IHRvIHNldDwvcGFyYW0+XHJcbiAgc2V0RW1wdHlEYXRhdmlldyhlbXB0eURhdGF2aWV3OiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLl9lbXB0eURhdGF2aWV3ID0gZW1wdHlEYXRhdmlldztcclxuICAgIENvbW1hbmRzLmFkZEJvb2xXaXRoTGluZShDb21tYW5kVHlwZS5TRVRfRU1QVFlfREFUQVZJRVcsIHRoaXMuX3Rhc2suZ2V0Rm9ybSgpLCAwLCBlbXB0eURhdGF2aWV3KTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm4gYSByZWZlcmVuY2UgdG8gdGhlIHRhc2sgb2YgdGhpcyBkYXRhdmlld1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgZ2V0VGFzaygpOiBJVGFzayB7XHJcbiAgICByZXR1cm4gdGhpcy5fdGFzaztcclxuICB9XHJcblxyXG4vLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgZ2V0IGRjVmFsdWVzIG9iamVjdCBieSBpdHMgaWRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiZGNJZFwiPmlkIG9mIGEgZGF0YSBjb250cm9sIHZhbHVlcyA8L3BhcmFtPlxyXG4gIGdldERjVmFsdWVzKGRjSWQ6IG51bWJlcik6IERjVmFsdWVzIHtcclxuICAgIGlmIChkY0lkID09PSBFTVBUWV9EQ1JFRilcclxuICAgICAgcmV0dXJuIHRoaXMuZ2V0RW1wdHlDaG9pY2UoKTtcclxuXHJcbiAgICBsZXQgZGNWYWx1ZXM6IERjVmFsdWVzO1xyXG4gICAgbGV0IGRjdjogUmVmUGFyYW08RGNWYWx1ZXM+ID0gbmV3IFJlZlBhcmFtPERjVmFsdWVzPihkY1ZhbHVlcyk7XHJcbiAgICB0aGlzLl9kY1ZhbHNDb2xsZWN0aW9uLlRyeUdldFZhbHVlKGRjSWQudG9TdHJpbmcoKSwgZGN2KTtcclxuICAgIHJldHVybiBkY3YudmFsdWU7XHJcbiAgfVxyXG5cclxuICAvLy8gPHJldHVybnM+ZHVtbXkgRGNWYWx1ZXMgZm9yIHVzZSB3aXRoIG5vbi1EQyBjaG9pY2UgY29udHJvbHM8L3JldHVybnM+XHJcbiAgZ2V0RW1wdHlDaG9pY2UoKTogRGNWYWx1ZXMge1xyXG4gICAgcmV0dXJuIHRoaXMuX2VtcHR5Q2hvaWNlO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldEVtcHR5Q2hvaWNlRm9yVmVjdG9ycygpOiBEY1ZhbHVlcyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZW1wdHlDaG9pY2VGb3JWZWN0b3JzO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGdldCBmaWVsZHMgdGFibGUgKDxkdmhlYWRlcj4pIG9mIHRoZSAoKERhdGFWaWV3KWRhdGFWaWV3KVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgR2V0RmllbGRzVGFiKCk6IEZpZWxkc1RhYmxlIHtcclxuICAgIHJldHVybiB0aGlzLl9maWVsZHNUYWI7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgZ2V0IHJvdXRlIHBhcmFtc1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgYXN5bmMgR2V0Um91dGVQYXJhbXMoKTogUHJvbWlzZTxMaXN0PGFueT4+IHtcclxuICAgIGxldCBwYXJhbXM6IExpc3QgPCBhbnkgPiA9IG5ldyBMaXN0KCk7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX2ZpZWxkc1RhYi5nZXRTaXplKCk7IGkrKykge1xyXG5cclxuICAgICAgbGV0IGZpZWxkOiBhbnkgPSB0aGlzLl9maWVsZHNUYWIuZ2V0RmllbGQoaSk7XHJcbiAgICAgIGxldCB2YWw6IGFueTtcclxuICAgICAgaWYgKGZpZWxkLklzRXhwb3NlZFJvdXRlUGFyYW0gJiYgIWZpZWxkLmlzTnVsbCgpKSB7XHJcbiAgICAgICAgc3dpdGNoIChmaWVsZC5nZXRUeXBlKCkpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgY2FzZSBTdG9yYWdlQXR0cmlidXRlLkFMUEhBOlxyXG4gICAgICAgICAgY2FzZSBTdG9yYWdlQXR0cmlidXRlLlVOSUNPREU6IHtcclxuICAgICAgICAgICAgdmFsID0gZmllbGQuZ2V0RGlzcFZhbHVlKCk7XHJcbiAgICAgICAgICAgIGlmIChmaWVsZC5pc051bGwoKSlcclxuICAgICAgICAgICAgICB2YWwgPSBmaWVsZC5nZXROdWxsRGlzcGxheSgpO1xyXG4gICAgICAgICAgICBwYXJhbXMucHVzaCg8c3RyaW5nPnZhbC50cmltKCkpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgICBjYXNlIFN0b3JhZ2VBdHRyaWJ1dGUuQk9PTEVBTjoge1xyXG4gICAgICAgICAgICBpZiAoZmllbGQuaXNOdWxsKCkpXHJcbiAgICAgICAgICAgICAgcGFyYW1zLnB1c2goZmFsc2UpO1xyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgcGFyYW1zLnB1c2goZmllbGQuZ2V0RGlzcFZhbHVlKCkuY2hhckF0KDApID09PSAnMScgPyB0cnVlIDogZmFsc2UpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgICBjYXNlIFN0b3JhZ2VBdHRyaWJ1dGUuTlVNRVJJQzoge1xyXG4gICAgICAgICAgICB2YWwgPSBmaWVsZC5nZXREaXNwVmFsdWUoKTtcclxuICAgICAgICAgICAgaWYgKGZpZWxkLmlzTnVsbCgpKVxyXG4gICAgICAgICAgICAgIHZhbCA9IGZpZWxkLmdldE51bGxEaXNwbGF5KCk7XHJcbiAgICAgICAgICAgIGxldCBwaWM6IFBJQyA9IG5ldyBQSUMoZmllbGQuZ2V0UGljdHVyZSgpLCBmaWVsZC5nZXRUeXBlKCksIHRoaXMuZ2V0VGFzaygpLmdldENvbXBJZHgoKSk7XHJcbiAgICAgICAgICAgIHZhbCA9IERpc3BsYXlDb252ZXJ0b3IuSW5zdGFuY2UubWcyZGlzcCh2YWwsIFwiXCIsIHBpYywgdHJ1ZSwgMCwgZmFsc2UpO1xyXG4gICAgICAgICAgICBwYXJhbXMucHVzaCh2YWwpO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiAocGFyYW1zLmxlbmd0aCA+IDApID8gcGFyYW1zIDogbnVsbDtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpRGF0YVZpZXdCYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9tYW5hZ2VtZW50L2RhdGEvR3VpRGF0YVZpZXdCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxRQUFRLEVBQUUsV0FBVyxFQUFDLE1BQU0sWUFBWSxDQUFDO0FBS2pELE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFFcEMsT0FBTyxFQUFDLGdCQUFnQixFQUFZLE1BQU0sa0JBQWtCLENBQUM7QUFDN0QsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUMvQixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSzdDLE1BQU0sT0FBZ0IsZUFBZTtJQUFyQztRQUVFLHNCQUFpQixHQUF5QixJQUFJLFVBQVUsRUFBWSxDQUFDO1FBQzdELG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBQ3hDLGVBQVUsR0FBZ0IsSUFBSSxDQUFDO1FBQy9CLFVBQUssR0FBZ0IsSUFBSSxDQUFDO1FBR2xCLGlCQUFZLEdBQWEsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ25ELDJCQUFzQixHQUFhLElBQUksUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQW1IdEUsQ0FBQztJQXJHQyxRQUFRLENBQUMsRUFBVTtRQUNqQixJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSTtZQUN6QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMs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LENBQUMsY0FBYyxFQUFFLENBQUM7d0JBQy9CLElBQUksR0FBRyxHQUFRLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsRUFBRSxLQUFLLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7d0JBQ3pGLEdBQUcsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7d0JBQ3RFLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQ2pCLE1BQU07cUJBQ1A7aUJBQ0Y7YUFDRjtTQUNGO1FBQ0QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzdDLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGljdGlvbmFyeSwgTGlzdCwgUmVmUGFyYW19IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5pbXBvcnQge0RjVmFsdWVzLCBFTVBUWV9EQ1JFRn0gZnJvbSBcIi4vRGNWYWx1ZXNcIjtcclxuaW1wb3J0IHtGaWVsZHNUYWJsZX0gZnJvbSBcIi4vRmllbGRzVGFibGVcIjtcclxuaW1wb3J0IHtHdWlUYXNrQmFzZX0gZnJvbSBcIi4uL3Rhc2tzL0d1aVRhc2tCYXNlXCI7XHJcbmltcG9ydCB7RmllbGREZWZ9IGZyb20gXCIuL0ZpZWxkRGVmXCI7XHJcbmltcG9ydCB7SVRhc2t9IGZyb20gXCIuLi90YXNrcy9JVGFza1wiO1xyXG5pbXBvcnQge0V2ZW50c30gZnJvbSBcIi4uLy4uL0V2ZW50c1wiO1xyXG5cclxuaW1wb3J0IHtTdG9yYWdlQXR0cmlidXRlLCBYbWxQYXJzZXJ9IGZyb20gXCJAbWFnaWMteHBhL3V0aWxzXCI7XHJcbmltcG9ydCB7UElDfSBmcm9tIFwiLi4vZ3VpL1BJQ1wiO1xyXG5pbXBvcnQge0Rpc3BsYXlDb252ZXJ0b3J9IGZyb20gXCIuLi9ndWkvRGlzcGxheUNvbnZlcnRvclwiO1xyXG5pbXBvcnQgeyBDb21tYW5kcyB9IGZyb20gXCIuLi8uLi9Db21tYW5kc1wiO1xyXG5pbXBvcnQgeyBDb21tYW5kVHlwZSB9IGZyb20gXCIuLi8uLi9HdWlFbnVtc1wiO1xyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4vLy8gZnVuY3Rpb25hbGl0eSByZXF1aXJlZCBieSB0aGUgR1VJIG5hbWVzcGFjZSBmcm9tIHRoZSBEYXRhVmlld0Jhc2UgY2xhc3MuXHJcbi8vLyA8L3N1bW1hcnk+XHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBHdWlEYXRhVmlld0Jhc2Uge1xyXG5cclxuICBfZGNWYWxzQ29sbGVjdGlvbjogRGljdGlvbmFyeTxEY1ZhbHVlcz4gPSBuZXcgRGljdGlvbmFyeTxEY1ZhbHVlcz4oKTtcclxuICBwcml2YXRlIF9lbXB0eURhdGF2aWV3OiBib29sZWFuID0gZmFsc2U7IC8vIEluZGljYXRlcyB0aGUgdGFzayBpcyBpbiBFbXB0eSBEYXRhdmlld1xyXG4gIF9maWVsZHNUYWI6IEZpZWxkc1RhYmxlID0gbnVsbDsgLy8gPGR2aGVhZGVyPiAuLi48L2R2aGVhZGVyPiB0YWdcclxuICBfdGFzazogR3VpVGFza0Jhc2UgPSBudWxsOyAvLyBjb250YWluZXIgdGFza1xyXG5cclxuICAvLyBkdW1teSBEY1ZhbHVlcyBmb3IgdXNlIHdpdGggbm9uLURDIGNob2ljZSBjb250cm9sc1xyXG4gIHByaXZhdGUgX2VtcHR5Q2hvaWNlOiBEY1ZhbHVlcyA9IG5ldyBEY1ZhbHVlcyh0cnVlLCBmYWxzZSk7XHJcbiAgcHJpdmF0ZSBfZW1wdHlDaG9pY2VGb3JWZWN0b3JzOiBEY1ZhbHVlcyA9IG5ldyBEY1ZhbHVlcyh0cnVlLCB0cnVlKTtcclxuXHJcblxyXG4gIGFic3RyYWN0IEluaXQoKTogdm9pZDtcclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHBhcnNlIHRoZSBEVkhFQURFUiB0YWdcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGFic3RyYWN0IGZpbGxIZWFkZXJEYXRhKHBhcnNlcjogWG1sUGFyc2VyKTogdm9pZDtcclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGdldCBhIGZpZWxkIGJ5IGl0cyBpZFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJpZFwiPmZpZWxkIGlkIDwvcGFyYW0+XHJcbiAgZ2V0RmllbGQoaWQ6IG51bWJlcik6IEZpZWxkRGVmIHtcclxuICAgIGlmICh0aGlzLl9maWVsZHNUYWIgIT0gbnVsbClcclxuICAgICAgcmV0dXJuIHRoaXMuX2ZpZWxkc1RhYi5nZXRGaWVsZChpZCk7XHJcblxyXG4gICAgRXZlbnRzLldyaXRlRXhjZXB0aW9uVG9Mb2coXCJpbiBEYXRhVmlldy5nZXRGaWVsZERlZihpbnQpOiBUaGVyZSBpcyBubyBmaWVsZHNUYWIgb2JqZWN0XCIpO1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvLy8gPHJldHVybnM+IHRoZSBlbXB0eURhdGF2aWV3PC9yZXR1cm5zPlxyXG4gIGlzRW1wdHlEYXRhdmlldygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9lbXB0eURhdGF2aWV3O1xyXG4gIH1cclxuXHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJlbXB0eURhdGF2aWV3XCI+dGhlIGVtcHR5RGF0YXZpZXcgdG8gc2V0PC9wYXJhbT5cclxuICBzZXRFbXB0eURhdGF2aWV3KGVtcHR5RGF0YXZpZXc6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuX2VtcHR5RGF0YXZpZXcgPSBlbXB0eURhdGF2aWV3O1xyXG4gICAgQ29tbWFuZHMuYWRkQm9vbFdpdGhMaW5lKENvbW1hbmRUeXBlLlNFVF9FTVBUWV9EQVRBVklFVywgdGhpcy5fdGFzay5nZXRGb3JtKCksIDAsIGVtcHR5RGF0YXZpZXcpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybiBhIHJlZmVyZW5jZSB0byB0aGUgdGFzayBvZiB0aGlzIGRhdGF2aWV3XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBnZXRUYXNrKCk6IElUYXNrIHtcclxuICAgIHJldHVybiB0aGlzLl90YXNrO1xyXG4gIH1cclxuXHJcbi8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBnZXQgZGNWYWx1ZXMgb2JqZWN0IGJ5IGl0cyBpZFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJkY0lkXCI+aWQgb2YgYSBkYXRhIGNvbnRyb2wgdmFsdWVzIDwvcGFyYW0+XHJcbiAgZ2V0RGNWYWx1ZXMoZGNJZDogbnVtYmVyKTogRGNWYWx1ZXMge1xyXG4gICAgaWYgKGRjSWQgPT09IEVNUFRZX0RDUkVGKVxyXG4gICAgICByZXR1cm4gdGhpcy5nZXRFbXB0eUNob2ljZSgpO1xyXG5cclxuICAgIGxldCBkY1ZhbHVlczogRGNWYWx1ZXM7XHJcbiAgICBsZXQgZGN2OiBSZWZQYXJhbTxEY1ZhbHVlcz4gPSBuZXcgUmVmUGFyYW08RGNWYWx1ZXM+KGRjVmFsdWVzKTtcclxuICAgIHRoaXMuX2RjVmFsc0NvbGxlY3Rpb24uVHJ5R2V0VmFsdWUoZGNJZC50b1N0cmluZygpLCBkY3YpO1xyXG4gICAgcmV0dXJuIGRjdi52YWx1ZTtcclxuICB9XHJcblxyXG4gIC8vLyA8cmV0dXJucz5kdW1teSBEY1ZhbHVlcyBmb3IgdXNlIHdpdGggbm9uLURDIGNob2ljZSBjb250cm9sczwvcmV0dXJucz5cclxuICBnZXRFbXB0eUNob2ljZSgpOiBEY1ZhbHVlcyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZW1wdHlDaG9pY2U7XHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0RW1wdHlDaG9pY2VGb3JWZWN0b3JzKCk6IERjVmFsdWVzIHtcclxuICAgIHJldHVybiB0aGlzLl9lbXB0eUNob2ljZUZvclZlY3RvcnM7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgZ2V0IGZpZWxkcyB0YWJsZSAoPGR2aGVhZGVyPikgb2YgdGhlICgoRGF0YVZpZXcpZGF0YVZpZXcpXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBHZXRGaWVsZHNUYWIoKTogRmllbGRzVGFibGUge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZpZWxkc1RhYjtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBnZXQgcm91dGUgcGFyYW1zXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBHZXRSb3V0ZVBhcmFtcygpOiBMaXN0PGFueT4ge1xyXG4gICAgbGV0IHBhcmFtczogTGlzdCA8IGFueSA+ID0gbmV3IExpc3QoKTtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fZmllbGRzVGFiLmdldFNpemUoKTsgaSsrKSB7XHJcblxyXG4gICAgICBsZXQgZmllbGQ6IGFueSA9IHRoaXMuX2ZpZWxkc1RhYi5nZXRGaWVsZChpKTtcclxuICAgICAgbGV0IHZhbDogYW55O1xyXG4gICAgICBpZiAoZmllbGQuSXNFeHBvc2VkUm91dGVQYXJhbSAmJiAhZmllbGQuaXNOdWxsKCkpIHtcclxuICAgICAgICBzd2l0Y2ggKGZpZWxkLmdldFR5cGUoKSlcclxuICAgICAgICB7XHJcbiAgICAgICAgICBjYXNlIFN0b3JhZ2VBdHRyaWJ1dGUuQUxQSEE6XHJcbiAgICAgICAgICBjYXNlIFN0b3JhZ2VBdHRyaWJ1dGUuVU5JQ09ERToge1xyXG4gICAgICAgICAgICB2YWwgPSBmaWVsZC5nZXREaXNwVmFsdWUoKTtcclxuICAgICAgICAgICAgaWYgKGZpZWxkLmlzTnVsbCgpKVxyXG4gICAgICAgICAgICAgIHZhbCA9IGZpZWxkLmdldE51bGxEaXNwbGF5KCk7XHJcbiAgICAgICAgICAgIHBhcmFtcy5wdXNoKDxzdHJpbmc+dmFsLnRyaW0oKSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICAgIGNhc2UgU3RvcmFnZUF0dHJpYnV0ZS5CT09MRUFOOiB7XHJcbiAgICAgICAgICAgIGlmIChmaWVsZC5pc051bGwoKSlcclxuICAgICAgICAgICAgICBwYXJhbXMucHVzaChmYWxzZSk7XHJcbiAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICBwYXJhbXMucHVzaChmaWVsZC5nZXREaXNwVmFsdWUoKS5jaGFyQXQoMCkgPT09ICcxJyA/IHRydWUgOiBmYWxzZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICAgIGNhc2UgU3RvcmFnZUF0dHJpYnV0ZS5OVU1FUklDOiB7XHJcbiAgICAgICAgICAgIHZhbCA9IGZpZWxkLmdldERpc3BWYWx1ZSgpO1xyXG4gICAgICAgICAgICBpZiAoZmllbGQuaXNOdWxsKCkpXHJcbiAgICAgICAgICAgICAgdmFsID0gZmllbGQuZ2V0TnVsbERpc3BsYXkoKTtcclxuICAgICAgICAgICAgbGV0IHBpYzogUElDID0gbmV3IFBJQyhmaWVsZC5nZXRQaWN0dXJlKCksIGZpZWxkLmdldFR5cGUoKSwgdGhpcy5nZXRUYXNrKCkuZ2V0Q29tcElkeCgpKTtcclxuICAgICAgICAgICAgdmFsID0gRGlzcGxheUNvbnZlcnRvci5JbnN0YW5jZS5tZzJkaXNwKHZhbCwgXCJcIiwgcGljLCB0cnVlLCAwLCBmYWxzZSk7XHJcbiAgICAgICAgICAgIHBhcmFtcy5wdXNoKHZhbCk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIChwYXJhbXMubGVuZ3RoID4gMCkgPyBwYXJhbXMgOiBudWxsO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -3,25 +3,15 @@ import { FieldDef } from "./FieldDef";
|
|
|
3
3
|
import { List, NString } from "@magic-xpa/mscorelib";
|
|
4
4
|
import { GuiConstants } from "../../GuiConstants";
|
|
5
5
|
export class GuiFieldBase extends FieldDef {
|
|
6
|
-
/// <summary>
|
|
7
|
-
/// CTOR
|
|
8
|
-
/// </summary>
|
|
9
|
-
/// <param name="id"> idx in FieldsTable </param>
|
|
10
6
|
constructor(id) {
|
|
11
7
|
super(id);
|
|
12
8
|
this.ControlToFocus = null;
|
|
13
9
|
this._controls = null;
|
|
14
|
-
this._dataview = null;
|
|
10
|
+
this._dataview = null;
|
|
15
11
|
}
|
|
16
|
-
/// <summary>
|
|
17
|
-
/// get the task which the field belongs to
|
|
18
|
-
/// </summary>
|
|
19
12
|
getTask() {
|
|
20
13
|
return this._dataview.getTask();
|
|
21
14
|
}
|
|
22
|
-
/// <summary>
|
|
23
|
-
/// update the display
|
|
24
|
-
/// </summary>
|
|
25
15
|
updateDisplayWithValue(displayValue, isNull) {
|
|
26
16
|
return __awaiter(this, void 0, void 0, function* () {
|
|
27
17
|
let ctrl = null;
|
|
@@ -34,28 +24,19 @@ export class GuiFieldBase extends FieldDef {
|
|
|
34
24
|
for (let i = 0; i < this._controls.length; i = i + 1) {
|
|
35
25
|
ctrl = this._controls.get_Item(i);
|
|
36
26
|
if (!ctrl.getForm().inRefreshDisplay()) {
|
|
37
|
-
ctrl.resetPrevVal();
|
|
27
|
+
ctrl.resetPrevVal();
|
|
38
28
|
yield ctrl.SetAndRefreshDisplayValue(displayValue, isNull);
|
|
39
|
-
// Even if the control that contains the correct value is found we don't break the loop because:
|
|
40
|
-
// (1) we need to refresh all the controls
|
|
41
|
-
// (2) the last control that was focus with the correct value is the one that should be checked
|
|
42
29
|
if (!ctrl.isRadio())
|
|
43
30
|
if (ctrlValue === null || ctrl.Value !== null && !(ctrl.Value === defaultValue) && ctrl === savedControlToFocus)
|
|
44
31
|
ctrlValue = ctrl;
|
|
45
32
|
else {
|
|
46
|
-
// Fixed bug#:780359, for radio control select the correct control
|
|
47
|
-
// if not found any ctrlvalue(the control that was in focuse)
|
|
48
|
-
// select the first control with the correct value if not exist select the first control.
|
|
49
|
-
// a. save the first control (with or without the correct value)
|
|
50
33
|
if (firstControlValue === null)
|
|
51
34
|
firstControlValue = ctrl;
|
|
52
35
|
if (ctrl.Value !== null && !(ctrl.Value === defaultValue)) {
|
|
53
|
-
// b. save the first control with the correct value
|
|
54
36
|
if (!foundControlValue) {
|
|
55
37
|
firstControlValue = ctrl;
|
|
56
38
|
foundControlValue = true;
|
|
57
39
|
}
|
|
58
|
-
// c.save the control that belong to the focus control
|
|
59
40
|
if (ctrl === savedControlToFocus)
|
|
60
41
|
ctrlValue = ctrl;
|
|
61
42
|
else if (ctrlValue === null)
|
|
@@ -64,44 +45,28 @@ export class GuiFieldBase extends FieldDef {
|
|
|
64
45
|
}
|
|
65
46
|
}
|
|
66
47
|
}
|
|
67
|
-
// if there was a control that had the correct value and this field is linked to more than one
|
|
68
|
-
// control then it means that the control that contained the correct value might have been reset by
|
|
69
|
-
// one of its siblings so there is a need to refresh its value again.
|
|
70
48
|
if (ctrlValue !== null) {
|
|
71
|
-
// save the control that belong to the value on the field.
|
|
72
49
|
this.ControlToFocus = ctrlValue;
|
|
73
50
|
if (this._controls.length > 1) {
|
|
74
|
-
ctrlValue.resetPrevVal();
|
|
51
|
+
ctrlValue.resetPrevVal();
|
|
75
52
|
yield ctrlValue.SetAndRefreshDisplayValue(displayValue, isNull);
|
|
76
53
|
}
|
|
77
54
|
}
|
|
78
55
|
}
|
|
79
56
|
});
|
|
80
57
|
}
|
|
81
|
-
/// <summary>
|
|
82
|
-
/// set a reference to a control attached to this field
|
|
83
|
-
/// </summary>
|
|
84
|
-
/// <param name = "ctrl">the control which is attached to this field</param>
|
|
85
58
|
SetControl(ctrl) {
|
|
86
59
|
if (this._controls === null)
|
|
87
60
|
this._controls = new List();
|
|
88
61
|
if (!this._controls.Contains(ctrl)) {
|
|
89
62
|
this._controls.push(ctrl);
|
|
90
|
-
// save the first ctrl
|
|
91
63
|
if (this._controls.length === 1)
|
|
92
64
|
this.ControlToFocus = ctrl;
|
|
93
65
|
}
|
|
94
66
|
}
|
|
95
|
-
/// <summary>
|
|
96
|
-
/// removes a reference to a control attached to this field
|
|
97
|
-
/// </summary>
|
|
98
|
-
/// <param name = "ctrl">the control which is attached to this field</param>
|
|
99
67
|
RemoveControl(ctrl) {
|
|
100
68
|
this._controls.Remove(ctrl);
|
|
101
69
|
}
|
|
102
|
-
/// <summary>
|
|
103
|
-
/// Returns the list of radio controls which are attached to the same field and resides on the same task.
|
|
104
|
-
/// </summary>
|
|
105
70
|
GetRadioCtrls() {
|
|
106
71
|
let list = new List();
|
|
107
72
|
if (this._controls !== null) {
|
|
@@ -117,4 +82,4 @@ export class GuiFieldBase extends FieldDef {
|
|
|
117
82
|
return NString.Format("(Field {0}-{1}) in task {2}", this._id, this._varName, this.getTask());
|
|
118
83
|
}
|
|
119
84
|
}
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpRmllbGRCYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9tYW5hZ2VtZW50L2RhdGEvR3VpRmllbGRCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sWUFBWSxDQUFDO0FBSXBDLE9BQU8sRUFBQyxJQUFJLEVBQUUsT0FBTyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBRWhELE1BQU0sT0FBZ0IsWUFBYSxTQUFRLFFBQVE7SUFLakQsYUFBYTtJQUNiLFFBQVE7SUFDUixjQUFjO0lBQ2QsaURBQWlEO0lBQ2pELFlBQVksRUFBVTtRQUNwQixLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFUWixtQkFBYyxHQUFrQixJQUFJLENBQUM7UUFDM0IsY0FBUyxHQUF3QixJQUFJLENBQUM7UUFDdEMsY0FBUyxHQUFvQixJQUFJLENBQUMsQ0FBQyw4RUFBOEU7SUFRM0gsQ0FBQztJQUVELGFBQWE7SUFDYiwyQ0FBMkM7SUFDM0MsY0FBYztJQUNkLE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELGFBQWE7SUFDYix3QkFBd0I7SUFDeEIsY0FBYztJQUNSLHNCQUFzQixDQUFDLFlBQW9CLEVBQUUsTUFBZTs7WUFDaEUsSUFBSSxJQUFJLEdBQWtCLElBQUksQ0FBQztZQUMvQixJQUFJLFNBQVMsR0FBa0IsSUFBSSxDQUFDO1lBQ3BDLElBQUksWUFBWSxHQUFXLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUVyRSxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssSUFBSSxFQUFFO2dCQUMzQixJQUFJLGlCQUFpQixHQUFrQixJQUFJLENBQUM7Z0JBQzVDLElBQUksaUJB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M0QsY0FBYztJQUNkLDRFQUE0RTtJQUM1RSxhQUFhLENBQUMsSUFBbUI7UUFDL0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGFBQWE7SUFDYix5R0FBeUc7SUFDekcsY0FBYztJQUNkLGFBQWE7UUFDWCxJQUFJLElBQUksR0FBd0IsSUFBSSxJQUFJLEVBQWlCLENBQUM7UUFFMUQsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLElBQUksRUFBRTtZQUMzQixLQUFLLElBQUksQ0FBQyxHQUFXLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQzVELElBQUksSUFBSSxHQUFrQixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUU1QyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7b0JBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDbkI7U0FDRjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RmllbGREZWZ9IGZyb20gXCIuL0ZpZWxkRGVmXCI7XHJcbmltcG9ydCB7R3VpRGF0YVZpZXdCYXNlfSBmcm9tIFwiLi9HdWlEYXRhVmlld0Jhc2VcIjtcclxuaW1wb3J0IHtNZ0NvbnRyb2xCYXNlfSBmcm9tIFwiLi4vZ3VpL01nQ29udHJvbEJhc2VcIjtcclxuaW1wb3J0IHtJVGFza30gZnJvbSBcIi4uL3Rhc2tzL0lUYXNrXCI7XHJcbmltcG9ydCB7TGlzdCwgTlN0cmluZ30gZnJvbSBcIkBtYWdpYy14cGEvbXNjb3JlbGliXCI7XHJcbmltcG9ydCB7R3VpQ29uc3RhbnRzfSBmcm9tIFwiLi4vLi4vR3VpQ29uc3RhbnRzXCI7XHJcblxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgR3VpRmllbGRCYXNlIGV4dGVuZHMgRmllbGREZWYge1xyXG4gIENvbnRyb2xUb0ZvY3VzOiBNZ0NvbnRyb2xCYXNlID0gbnVsbDtcclxuICBwcm90ZWN0ZWQgX2NvbnRyb2xzOiBMaXN0PE1nQ29udHJvbEJhc2U+ID0gbnVsbDtcclxuICBwcm90ZWN0ZWQgX2RhdGF2aWV3OiBHdWlEYXRhVmlld0Jhc2UgPSBudWxsOyAvLyByZWZlcmVuY2UgdG8gdGhlIGRhdGF2aWV3IGluIG9yZGVyIHRvIGFjY2VzcyByZWNvcmQgZGF0YSAodXBkYXRpbmcsIGV0Yy4uLilcclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBDVE9SXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJpZFwiPiBpZHggaW4gRmllbGRzVGFibGUgPC9wYXJhbT5cclxuICBjb25zdHJ1Y3RvcihpZDogbnVtYmVyKSB7XHJcbiAgICBzdXBlcihpZCk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIGdldCB0aGUgdGFzayB3aGljaCB0aGUgZmllbGQgYmVsb25ncyB0b1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgZ2V0VGFzaygpOiBJVGFzayB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGF0YXZpZXcuZ2V0VGFzaygpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHVwZGF0ZSB0aGUgZGlzcGxheVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgYXN5bmMgdXBkYXRlRGlzcGxheVdpdGhWYWx1ZShkaXNwbGF5VmFsdWU6IHN0cmluZywgaXNOdWxsOiBib29sZWFuKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBsZXQgY3RybDogTWdDb250cm9sQmFzZSA9IG51bGw7XHJcbiAgICBsZXQgY3RybFZhbHVlOiBNZ0NvbnRyb2xCYXNlID0gbnVsbDtcclxuICAgIGxldCBkZWZhdWx0VmFsdWU6IHN0cmluZyA9IEd1aUNvbnN0YW50cy5ERUZBVUxUX1ZBTFVFX0lOVC50b1N0cmluZygpO1xyXG5cclxuICAgIGlmICh0aGlzLl9jb250cm9scyAhPT0gbnVsbCkge1xyXG4gICAgICBsZXQgZmlyc3RDb250cm9sVmFsdWU6IE1nQ29udHJvbEJhc2UgPSBudWxsO1xyXG4gICAgICBsZXQgZm91bmRDb250cm9sVmFsdWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgICAgbGV0IHNhdmVkQ29udHJvbFRvRm9jdXM6IE1nQ29udHJvbEJhc2UgPSB0aGlzLkNvbnRyb2xUb0ZvY3VzO1xyXG4gICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgdGhpcy5fY29udHJvbHMubGVuZ3RoOyBpID0gaSArIDEpIHtcclxuICAgICAgICBjdHJsID0gdGhpcy5fY29udHJvbHMuZ2V0X0l0ZW0oaSk7XHJcblxyXG4gICAgICAgIGlmICghY3RybC5nZXRGb3JtKCkuaW5SZWZyZXNoRGlzcGxheSgpKSB7XHJcbiAgICAgICAgICBjdHJsLnJlc2V0UHJldlZhbCgpOyAvLyBmb3JjZSB1cGRhdGUgb2YgdGhlIGRpc3BsYXlcclxuICAgICAgICAgIGF3YWl0IGN0cmwuU2V0QW5kUmVmcmVzaERpc3BsYXlWYWx1ZShkaXNwbGF5VmFsdWUsIGlzTnVsbCk7XHJcblxyXG4gICAgICAgICAgLy8gRXZlbiBpZiB0aGUgY29udHJvbCB0aGF0IGNvbnRhaW5zIHRoZSBjb3JyZWN0IHZhbHVlIGlzIGZvdW5kIHdlIGRvbid0IGJyZWFrIHRoZSBsb29wIGJlY2F1c2U6XHJcbiAgICAgICAgICAvLyAoMSkgd2UgbmVlZCB0byByZWZyZXNoIGFsbCB0aGUgY29udHJvbHNcclxuICAgICAgICAgIC8vICgyKSB0aGUgbGFzdCBjb250cm9sIHRoYXQgd2FzIGZvY3VzIHdpdGggdGhlIGNvcnJlY3QgdmFsdWUgaXMgdGhlIG9uZSB0aGF0IHNob3VsZCBiZSBjaGVja2VkXHJcbiAgICAgICAgICBpZiAoIWN0cmwuaXNSYWRpbygpKVxyXG4gICAgICAgICAgICBpZiAoY3RybFZhbHVlID09PSBudWxsIHx8IGN0cmwuVmFsdWUgIT09IG51bGwgJiYgIShjdHJsLlZhbHVlID09PSBkZWZhdWx0VmFsdWUpICYmIGN0cmwgPT09IHNhdmVkQ29udHJvbFRvRm9jdXMpXHJcbiAgICAgICAgICAgICAgY3RybFZhbHVlID0gY3RybDtcclxuICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAvLyBGaXhlZCBidWcjOjc4MDM1OSwgZm9yIHJhZGlvIGNvbnRyb2wgc2VsZWN0IHRoZSBjb3JyZWN0IGNvbnRyb2xcclxuICAgICAgICAgICAgLy8gaWYgbm90IGZvdW5kIGFueSBjdHJsdmFsdWUodGhlIGNvbnRyb2wgdGhhdCB3YXMgaW4gZm9jdXNlKVxyXG4gICAgICAgICAgICAvLyBzZWxlY3QgdGhlIGZpcnN0IGNvbnRyb2wgd2l0aCB0aGUgY29ycmVjdCB2YWx1ZSBpZiBub3QgZXhpc3Qgc2VsZWN0IHRoZSBmaXJzdCBjb250cm9sLlxyXG5cclxuICAgICAgICAgICAgLy8gYS4gc2F2ZSB0aGUgZmlyc3QgY29udHJvbCAod2l0aCBvciB3aXRob3V0IHRoZSBjb3JyZWN0IHZhbHVlKVxyXG4gICAgICAgICAgICBpZiAoZmlyc3RDb250cm9sVmFsdWUgPT09IG51bGwpXHJcbiAgICAgICAgICAgICAgZmlyc3RDb250cm9sVmFsdWUgPSBjdHJsO1xyXG4gICAgICAgICAgICBpZiAoY3RybC5WYWx1ZSAhPT0gbnVsbCAmJiAhKGN0cmwuVmFsdWUgPT09IGRlZmF1bHRWYWx1ZSkpIHtcclxuICAgICAgICAgICAgICAvLyBiLiBzYXZlIHRoZSBmaXJzdCBjb250cm9sIHdpdGggdGhlIGNvcnJlY3QgdmFsdWVcclxuICAgICAgICAgICAgICBpZiAoIWZvdW5kQ29udHJvbFZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICBmaXJzdENvbnRyb2xWYWx1ZSA9IGN0cmw7XHJcbiAgICAgICAgICAgICAgICBmb3VuZENvbnRyb2xWYWx1ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIC8vIGMuc2F2ZSB0aGUgY29udHJvbCB0aGF0IGJlbG9uZyB0byB0aGUgZm9jdXMgY29udHJvbFxyXG4gICAgICAgICAgICAgIGlmIChjdHJsID09PSBzYXZlZENvbnRyb2xUb0ZvY3VzKVxyXG4gICAgICAgICAgICAgICAgY3RybFZhbHVlID0gY3RybDtcclxuICAgICAgICAgICAgICBlbHNlIGlmIChjdHJsVmFsdWUgPT09IG51bGwpXHJcbiAgICAgICAgICAgICAgICBjdHJsVmFsdWUgPSBmaXJzdENvbnRyb2xWYWx1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gaWYgdGhlcmUgd2FzIGEgY29udHJvbCB0aGF0IGhhZCB0aGUgY29ycmVjdCB2YWx1ZSBhbmQgdGhpcyBmaWVsZCBpcyBsaW5rZWQgdG8gbW9yZSB0aGFuIG9uZVxyXG4gICAgICAvLyBjb250cm9sIHRoZW4gaXQgbWVhbnMgdGhhdCB0aGUgY29udHJvbCB0aGF0IGNvbnRhaW5lZCB0aGUgY29ycmVjdCB2YWx1ZSBtaWdodCBoYXZlIGJlZW4gcmVzZXQgYnlcclxuICAgICAgLy8gb25lIG9mIGl0cyBzaWJsaW5ncyBzbyB0aGVyZSBpcyBhIG5lZWQgdG8gcmVmcmVzaCBpdHMgdmFsdWUgYWdhaW4uXHJcbiAgICAgIGlmIChjdHJsVmFsdWUgIT09IG51bGwpIHtcclxuICAgICAgICAvLyBzYXZlIHRoZSBjb250cm9sIHRoYXQgYmVsb25nIHRvIHRoZSB2YWx1ZSBvbiB0aGUgZmllbGQuXHJcbiAgICAgICAgdGhpcy5Db250cm9sVG9Gb2N1cyA9IGN0cmxWYWx1ZTtcclxuICAgICAgICBpZiAodGhpcy5fY29udHJvbHMubGVuZ3RoID4gMSkge1xyXG4gICAgICAgICAgY3RybFZhbHVlLnJlc2V0UHJldlZhbCgpOyAvLyBmb3JjZSB1cGRhdGUgb2YgdGhlIGRpc3BsYXlcclxuICAgICAgICAgIGF3YWl0IGN0cmxWYWx1ZS5TZXRBbmRSZWZyZXNoRGlzcGxheVZhbHVlKGRpc3BsYXlWYWx1ZSwgaXNOdWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gc2V0IGEgcmVmZXJlbmNlIHRvIGEgY29udHJvbCBhdHRhY2hlZCB0byB0aGlzIGZpZWxkXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImN0cmxcIj50aGUgY29udHJvbCB3aGljaCBpcyBhdHRhY2hlZCB0byB0aGlzIGZpZWxkPC9wYXJhbT5cclxuICBTZXRDb250cm9sKGN0cmw6IE1nQ29udHJvbEJhc2UpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9jb250cm9scyA9PT0gbnVsbClcclxuICAgICAgdGhpcy5fY29udHJvbHMgPSBuZXcgTGlzdDxNZ0NvbnRyb2xCYXNlPigpO1xyXG4gICAgaWYgKCF0aGlzLl9jb250cm9scy5Db250YWlucyhjdHJsKSkge1xyXG4gICAgICB0aGlzLl9jb250cm9scy5wdXNoKGN0cmwpO1xyXG5cclxuICAgICAgLy8gc2F2ZSB0aGUgZmlyc3QgY3RybFxyXG4gICAgICBpZiAodGhpcy5fY29udHJvbHMubGVuZ3RoID09PSAxKVxyXG4gICAgICAgIHRoaXMuQ29udHJvbFRvRm9jdXMgPSBjdHJsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyByZW1vdmVzIGEgcmVmZXJlbmNlIHRvIGEgY29udHJvbCBhdHRhY2hlZCB0byB0aGlzIGZpZWxkXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImN0cmxcIj50aGUgY29udHJvbCB3aGljaCBpcyBhdHRhY2hlZCB0byB0aGlzIGZpZWxkPC9wYXJhbT5cclxuICBSZW1vdmVDb250cm9sKGN0cmw6IE1nQ29udHJvbEJhc2UpOiB2b2lkIHtcclxuICAgIHRoaXMuX2NvbnRyb2xzLlJlbW92ZShjdHJsKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gUmV0dXJucyB0aGUgbGlzdCBvZiByYWRpbyBjb250cm9scyB3aGljaCBhcmUgYXR0YWNoZWQgdG8gdGhlIHNhbWUgZmllbGQgYW5kIHJlc2lkZXMgb24gdGhlIHNhbWUgdGFzay5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIEdldFJhZGlvQ3RybHMoKTogTGlzdDxNZ0NvbnRyb2xCYXNlPiB7XHJcbiAgICBsZXQgbGlzdDogTGlzdDxNZ0NvbnRyb2xCYXNlPiA9IG5ldyBMaXN0PE1nQ29udHJvbEJhc2U+KCk7XHJcblxyXG4gICAgaWYgKHRoaXMuX2NvbnRyb2xzICE9PSBudWxsKSB7XHJcbiAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCB0aGlzLl9jb250cm9scy5sZW5ndGg7IGkgPSBpICsgMSkge1xyXG4gICAgICAgIGxldCBjdHJsOiBNZ0NvbnRyb2xCYXNlID0gdGhpcy5fY29udHJvbHNbaV07XHJcblxyXG4gICAgICAgIGlmIChjdHJsLmlzUmFkaW8oKSlcclxuICAgICAgICAgIGxpc3QucHVzaChjdHJsKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGxpc3Q7XHJcbiAgfVxyXG5cclxuICB0b1N0cmluZygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIE5TdHJpbmcuRm9ybWF0KFwiKEZpZWxkIHswfS17MX0pIGluIHRhc2sgezJ9XCIsIHRoaXMuX2lkLCB0aGlzLl92YXJOYW1lLCB0aGlzLmdldFRhc2soKSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpRmllbGRCYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9tYW5hZ2VtZW50L2RhdGEvR3VpRmllbGRCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sWUFBWSxDQUFDO0FBSXBDLE9BQU8sRUFBQyxJQUFJLEVBQUUsT0FBTyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBRWhELE1BQU0sT0FBZ0IsWUFBYSxTQUFRLFFBQVE7SUFTakQsWUFBWSxFQUFVO1FBQ3BCLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQVRaLG1CQUFjLEdBQWtCLElBQUksQ0FBQztRQUMzQixjQUFTLEdBQXdCLElBQUksQ0FBQztRQUN0QyxjQUFTLEdBQW9CLElBQUksQ0FBQztJQVE1QyxDQUFDO0lBS0QsT0FBTztRQUNMLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBS0ssc0JBQXNCLENBQUMsWUFBb0IsRUFBRSxNQUFlOztZQUNoRSxJQUFJLElBQUksR0FBa0IsSUFBSSxDQUFDO1lBQy9CLElBQUksU0FBUyxHQUFrQixJQUFJLENBQUM7WUFDcEMsSUFBSSxZQUFZLEdBQVcsWUFBWSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDO1lBRXJFLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLEVBQUU7Z0JBQzNCLElBQUksaUJBQWlCLEdBQWtCLElBQUksQ0FBQztnQkFDNUMsSUFBSSxpQkFBaUIsR0FBWSxLQUFLLENBQUM7Z0JBQ3ZDLElBQUksbUJBQW1CLEdBQWtCLElBQUksQ0FBQyxjQUFjLENBQUM7Z0JBQzdELEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENB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LENBQUM7YUFDbkI7U0FDRjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RmllbGREZWZ9IGZyb20gXCIuL0ZpZWxkRGVmXCI7XHJcbmltcG9ydCB7R3VpRGF0YVZpZXdCYXNlfSBmcm9tIFwiLi9HdWlEYXRhVmlld0Jhc2VcIjtcclxuaW1wb3J0IHtNZ0NvbnRyb2xCYXNlfSBmcm9tIFwiLi4vZ3VpL01nQ29udHJvbEJhc2VcIjtcclxuaW1wb3J0IHtJVGFza30gZnJvbSBcIi4uL3Rhc2tzL0lUYXNrXCI7XHJcbmltcG9ydCB7TGlzdCwgTlN0cmluZ30gZnJvbSBcIkBtYWdpYy14cGEvbXNjb3JlbGliXCI7XHJcbmltcG9ydCB7R3VpQ29uc3RhbnRzfSBmcm9tIFwiLi4vLi4vR3VpQ29uc3RhbnRzXCI7XHJcblxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgR3VpRmllbGRCYXNlIGV4dGVuZHMgRmllbGREZWYge1xyXG4gIENvbnRyb2xUb0ZvY3VzOiBNZ0NvbnRyb2xCYXNlID0gbnVsbDtcclxuICBwcm90ZWN0ZWQgX2NvbnRyb2xzOiBMaXN0PE1nQ29udHJvbEJhc2U+ID0gbnVsbDtcclxuICBwcm90ZWN0ZWQgX2RhdGF2aWV3OiBHdWlEYXRhVmlld0Jhc2UgPSBudWxsOyAvLyByZWZlcmVuY2UgdG8gdGhlIGRhdGF2aWV3IGluIG9yZGVyIHRvIGFjY2VzcyByZWNvcmQgZGF0YSAodXBkYXRpbmcsIGV0Yy4uLilcclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBDVE9SXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJpZFwiPiBpZHggaW4gRmllbGRzVGFibGUgPC9wYXJhbT5cclxuICBjb25zdHJ1Y3RvcihpZDogbnVtYmVyKSB7XHJcbiAgICBzdXBlcihpZCk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIGdldCB0aGUgdGFzayB3aGljaCB0aGUgZmllbGQgYmVsb25ncyB0b1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgZ2V0VGFzaygpOiBJVGFzayB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGF0YXZpZXcuZ2V0VGFzaygpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHVwZGF0ZSB0aGUgZGlzcGxheVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgYXN5bmMgdXBkYXRlRGlzcGxheVdpdGhWYWx1ZShkaXNwbGF5VmFsdWU6IHN0cmluZywgaXNOdWxsOiBib29sZWFuKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBsZXQgY3RybDogTWdDb250cm9sQmFzZSA9IG51bGw7XHJcbiAgICBsZXQgY3RybFZhbHVlOiBNZ0NvbnRyb2xCYXNlID0gbnVsbDtcclxuICAgIGxldCBkZWZhdWx0VmFsdWU6IHN0cmluZyA9IEd1aUNvbnN0YW50cy5ERUZBVUxUX1ZBTFVFX0lOVC50b1N0cmluZygpO1xyXG5cclxuICAgIGlmICh0aGlzLl9jb250cm9scyAhPT0gbnVsbCkge1xyXG4gICAgICBsZXQgZmlyc3RDb250cm9sVmFsdWU6IE1nQ29udHJvbEJhc2UgPSBudWxsO1xyXG4gICAgICBsZXQgZm91bmRDb250cm9sVmFsdWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgICAgbGV0IHNhdmVkQ29udHJvbFRvRm9jdXM6IE1nQ29udHJvbEJhc2UgPSB0aGlzLkNvbnRyb2xUb0ZvY3VzO1xyXG4gICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgdGhpcy5fY29udHJvbHMubGVuZ3RoOyBpID0gaSArIDEpIHtcclxuICAgICAgICBjdHJsID0gdGhpcy5fY29udHJvbHMuZ2V0X0l0ZW0oaSk7XHJcblxyXG4gICAgICAgIGlmICghY3RybC5nZXRGb3JtKCkuaW5SZWZyZXNoRGlzcGxheSgpKSB7XHJcbiAgICAgICAgICBjdHJsLnJlc2V0UHJldlZhbCgpOyAvLyBmb3JjZSB1cGRhdGUgb2YgdGhlIGRpc3BsYXlcclxuICAgICAgICAgIGF3YWl0IGN0cmwuU2V0QW5kUmVmcmVzaERpc3BsYXlWYWx1ZShkaXNwbGF5VmFsdWUsIGlzTnVsbCk7XHJcblxyXG4gICAgICAgICAgLy8gRXZlbiBpZiB0aGUgY29udHJvbCB0aGF0IGNvbnRhaW5zIHRoZSBjb3JyZWN0IHZhbHVlIGlzIGZvdW5kIHdlIGRvbid0IGJyZWFrIHRoZSBsb29wIGJlY2F1c2U6XHJcbiAgICAgICAgICAvLyAoMSkgd2UgbmVlZCB0byByZWZyZXNoIGFsbCB0aGUgY29udHJvbHNcclxuICAgICAgICAgIC8vICgyKSB0aGUgbGFzdCBjb250cm9sIHRoYXQgd2FzIGZvY3VzIHdpdGggdGhlIGNvcnJlY3QgdmFsdWUgaXMgdGhlIG9uZSB0aGF0IHNob3VsZCBiZSBjaGVja2VkXHJcbiAgICAgICAgICBpZiAoIWN0cmwuaXNSYWRpbygpKVxyXG4gICAgICAgICAgICBpZiAoY3RybFZhbHVlID09PSBudWxsIHx8IGN0cmwuVmFsdWUgIT09IG51bGwgJiYgIShjdHJsLlZhbHVlID09PSBkZWZhdWx0VmFsdWUpICYmIGN0cmwgPT09IHNhdmVkQ29udHJvbFRvRm9jdXMpXHJcbiAgICAgICAgICAgICAgY3RybFZhbHVlID0gY3RybDtcclxuICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAvLyBGaXhlZCBidWcjOjc4MDM1OSwgZm9yIHJhZGlvIGNvbnRyb2wgc2VsZWN0IHRoZSBjb3JyZWN0IGNvbnRyb2xcclxuICAgICAgICAgICAgLy8gaWYgbm90IGZvdW5kIGFueSBjdHJsdmFsdWUodGhlIGNvbnRyb2wgdGhhdCB3YXMgaW4gZm9jdXNlKVxyXG4gICAgICAgICAgICAvLyBzZWxlY3QgdGhlIGZpcnN0IGNvbnRyb2wgd2l0aCB0aGUgY29ycmVjdCB2YWx1ZSBpZiBub3QgZXhpc3Qgc2VsZWN0IHRoZSBmaXJzdCBjb250cm9sLlxyXG5cclxuICAgICAgICAgICAgLy8gYS4gc2F2ZSB0aGUgZmlyc3QgY29udHJvbCAod2l0aCBvciB3aXRob3V0IHRoZSBjb3JyZWN0IHZhbHVlKVxyXG4gICAgICAgICAgICBpZiAoZmlyc3RDb250cm9sVmFsdWUgPT09IG51bGwpXHJcbiAgICAgICAgICAgICAgZmlyc3RDb250cm9sVmFsdWUgPSBjdHJsO1xyXG4gICAgICAgICAgICBpZiAoY3RybC5WYWx1ZSAhPT0gbnVsbCAmJiAhKGN0cmwuVmFsdWUgPT09IGRlZmF1bHRWYWx1ZSkpIHtcclxuICAgICAgICAgICAgICAvLyBiLiBzYXZlIHRoZSBmaXJzdCBjb250cm9sIHdpdGggdGhlIGNvcnJlY3QgdmFsdWVcclxuICAgICAgICAgICAgICBpZiAoIWZvdW5kQ29udHJvbFZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICBmaXJzdENvbnRyb2xWYWx1ZSA9IGN0cmw7XHJcbiAgICAgICAgICAgICAgICBmb3VuZENvbnRyb2xWYWx1ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIC8vIGMuc2F2ZSB0aGUgY29udHJvbCB0aGF0IGJlbG9uZyB0byB0aGUgZm9jdXMgY29udHJvbFxyXG4gICAgICAgICAgICAgIGlmIChjdHJsID09PSBzYXZlZENvbnRyb2xUb0ZvY3VzKVxyXG4gICAgICAgICAgICAgICAgY3RybFZhbHVlID0gY3RybDtcclxuICAgICAgICAgICAgICBlbHNlIGlmIChjdHJsVmFsdWUgPT09IG51bGwpXHJcbiAgICAgICAgICAgICAgICBjdHJsVmFsdWUgPSBmaXJzdENvbnRyb2xWYWx1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gaWYgdGhlcmUgd2FzIGEgY29udHJvbCB0aGF0IGhhZCB0aGUgY29ycmVjdCB2YWx1ZSBhbmQgdGhpcyBmaWVsZCBpcyBsaW5rZWQgdG8gbW9yZSB0aGFuIG9uZVxyXG4gICAgICAvLyBjb250cm9sIHRoZW4gaXQgbWVhbnMgdGhhdCB0aGUgY29udHJvbCB0aGF0IGNvbnRhaW5lZCB0aGUgY29ycmVjdCB2YWx1ZSBtaWdodCBoYXZlIGJlZW4gcmVzZXQgYnlcclxuICAgICAgLy8gb25lIG9mIGl0cyBzaWJsaW5ncyBzbyB0aGVyZSBpcyBhIG5lZWQgdG8gcmVmcmVzaCBpdHMgdmFsdWUgYWdhaW4uXHJcbiAgICAgIGlmIChjdHJsVmFsdWUgIT09IG51bGwpIHtcclxuICAgICAgICAvLyBzYXZlIHRoZSBjb250cm9sIHRoYXQgYmVsb25nIHRvIHRoZSB2YWx1ZSBvbiB0aGUgZmllbGQuXHJcbiAgICAgICAgdGhpcy5Db250cm9sVG9Gb2N1cyA9IGN0cmxWYWx1ZTtcclxuICAgICAgICBpZiAodGhpcy5fY29udHJvbHMubGVuZ3RoID4gMSkge1xyXG4gICAgICAgICAgY3RybFZhbHVlLnJlc2V0UHJldlZhbCgpOyAvLyBmb3JjZSB1cGRhdGUgb2YgdGhlIGRpc3BsYXlcclxuICAgICAgICAgIGF3YWl0IGN0cmxWYWx1ZS5TZXRBbmRSZWZyZXNoRGlzcGxheVZhbHVlKGRpc3BsYXlWYWx1ZSwgaXNOdWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gc2V0IGEgcmVmZXJlbmNlIHRvIGEgY29udHJvbCBhdHRhY2hlZCB0byB0aGlzIGZpZWxkXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImN0cmxcIj50aGUgY29udHJvbCB3aGljaCBpcyBhdHRhY2hlZCB0byB0aGlzIGZpZWxkPC9wYXJhbT5cclxuICBTZXRDb250cm9sKGN0cmw6IE1nQ29udHJvbEJhc2UpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9jb250cm9scyA9PT0gbnVsbClcclxuICAgICAgdGhpcy5fY29udHJvbHMgPSBuZXcgTGlzdDxNZ0NvbnRyb2xCYXNlPigpO1xyXG4gICAgaWYgKCF0aGlzLl9jb250cm9scy5Db250YWlucyhjdHJsKSkge1xyXG4gICAgICB0aGlzLl9jb250cm9scy5wdXNoKGN0cmwpO1xyXG5cclxuICAgICAgLy8gc2F2ZSB0aGUgZmlyc3QgY3RybFxyXG4gICAgICBpZiAodGhpcy5fY29udHJvbHMubGVuZ3RoID09PSAxKVxyXG4gICAgICAgIHRoaXMuQ29udHJvbFRvRm9jdXMgPSBjdHJsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyByZW1vdmVzIGEgcmVmZXJlbmNlIHRvIGEgY29udHJvbCBhdHRhY2hlZCB0byB0aGlzIGZpZWxkXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImN0cmxcIj50aGUgY29udHJvbCB3aGljaCBpcyBhdHRhY2hlZCB0byB0aGlzIGZpZWxkPC9wYXJhbT5cclxuICBSZW1vdmVDb250cm9sKGN0cmw6IE1nQ29udHJvbEJhc2UpOiB2b2lkIHtcclxuICAgIHRoaXMuX2NvbnRyb2xzLlJlbW92ZShjdHJsKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gUmV0dXJucyB0aGUgbGlzdCBvZiByYWRpbyBjb250cm9scyB3aGljaCBhcmUgYXR0YWNoZWQgdG8gdGhlIHNhbWUgZmllbGQgYW5kIHJlc2lkZXMgb24gdGhlIHNhbWUgdGFzay5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIEdldFJhZGlvQ3RybHMoKTogTGlzdDxNZ0NvbnRyb2xCYXNlPiB7XHJcbiAgICBsZXQgbGlzdDogTGlzdDxNZ0NvbnRyb2xCYXNlPiA9IG5ldyBMaXN0PE1nQ29udHJvbEJhc2U+KCk7XHJcblxyXG4gICAgaWYgKHRoaXMuX2NvbnRyb2xzICE9PSBudWxsKSB7XHJcbiAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCB0aGlzLl9jb250cm9scy5sZW5ndGg7IGkgPSBpICsgMSkge1xyXG4gICAgICAgIGxldCBjdHJsOiBNZ0NvbnRyb2xCYXNlID0gdGhpcy5fY29udHJvbHNbaV07XHJcblxyXG4gICAgICAgIGlmIChjdHJsLmlzUmFkaW8oKSlcclxuICAgICAgICAgIGxpc3QucHVzaChjdHJsKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGxpc3Q7XHJcbiAgfVxyXG5cclxuICB0b1N0cmluZygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIE5TdHJpbmcuRm9ybWF0KFwiKEZpZWxkIHswfS17MX0pIGluIHRhc2sgezJ9XCIsIHRoaXMuX2lkLCB0aGlzLl92YXJOYW1lLCB0aGlzLmdldFRhc2soKSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVJlY29yZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvbWFuYWdlbWVudC9kYXRhL0lSZWNvcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGF0YU1vZGlmaWNhdGlvblR5cGVzfSBmcm9tIFwiLi4vLi4vR3VpRW51bXNcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVJlY29yZCB7XHJcbiAgZ2V0SWQoKTogbnVtYmVyO1xyXG4gIHNldE9sZFJlYygpOiB2b2lkO1xyXG4gIFNldEZpZWxkVmFsdWUoaWR4OiBudW1iZXIsIGlzTnVsbDogYm9vbGVhbiwgdmFsdWU6IHN0cmluZyk6IHZvaWQ7XHJcbiAgR2V0RmllbGRWYWx1ZShpZHg6IG51bWJlcik6IHN0cmluZztcclxuICBJc051bGwoaWR4OiBudW1iZXIpOiBib29sZWFuO1xyXG4gIGlzRmxkTW9kaWZpZWQoZmxkSWR4OiBudW1iZXIpOiBib29sZWFuO1xyXG4gIElzRmxkTW9kaWZpZWRBdExlYXN0T25jZShmbGRJZHg6IG51bWJlcik6IGJvb2xlYW47XHJcbiAgZ2V0TW9kZSgpOiBEYXRhTW9kaWZpY2F0aW9uVHlwZXM7XHJcbiAgQWRkRGNWYWx1ZXNSZWZlcmVuY2UoY29udHJvbElkOiBudW1iZXIsIGRjVmFsdWVzSWQ6IG51bWJlcik6IHZvaWQ7XHJcbn1cclxuIl19
|
|
@@ -1,8 +1 @@
|
|
|
1
|
-
|
|
2
|
-
/// Interface that should be implemented by objects which
|
|
3
|
-
/// will be referenced by <see cref="ObjectReference"/> objects.
|
|
4
|
-
/// The implementing class will be notified of having a new reference or
|
|
5
|
-
/// when a referenced is no longer referencing it with the 'AddReference' and
|
|
6
|
-
/// 'RemoveReference', respectively.
|
|
7
|
-
/// </summary>
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVJlZmVyZW5jZWRPYmplY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL21hbmFnZW1lbnQvZGF0YS9JUmVmZXJlbmNlZE9iamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxhQUFhO0FBQ2IseURBQXlEO0FBQ3pELGdFQUFnRTtBQUNoRSx3RUFBd0U7QUFDeEUsNkVBQTZFO0FBQzdFLG9DQUFvQztBQUNwQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxzdW1tYXJ5PlxyXG4vLy8gSW50ZXJmYWNlIHRoYXQgc2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IG9iamVjdHMgd2hpY2hcclxuLy8vIHdpbGwgYmUgcmVmZXJlbmNlZCBieSA8c2VlIGNyZWY9XCJPYmplY3RSZWZlcmVuY2VcIi8+IG9iamVjdHMuXHJcbi8vLyBUaGUgaW1wbGVtZW50aW5nIGNsYXNzIHdpbGwgYmUgbm90aWZpZWQgb2YgaGF2aW5nIGEgbmV3IHJlZmVyZW5jZSBvclxyXG4vLy8gd2hlbiBhIHJlZmVyZW5jZWQgaXMgbm8gbG9uZ2VyIHJlZmVyZW5jaW5nIGl0IHdpdGggdGhlICdBZGRSZWZlcmVuY2UnIGFuZFxyXG4vLy8gJ1JlbW92ZVJlZmVyZW5jZScsIHJlc3BlY3RpdmVseS5cclxuLy8vIDwvc3VtbWFyeT5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVJlZmVyZW5jZWRPYmplY3Qge1xyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gR2V0cyB3aGV0aGVyIHRoZSBvYmplY3QgaGFzIG9iamVjdCBzdGlsbCByZWZlcmVuY2luZyBpdCBvciBub3QuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBIYXNSZWZlcmVuY2VzOiBib29sZWFuO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIFRoaXMgbWV0aG9kIHdpbGwgYmUgaW52b2tlZCB3aGVuIGEgbmV3IHJlZmVyZW5jZSB0byB0aGUgb2JqZWN0XHJcbiAgLy8vIGlzIGNyZWF0ZWQgKHNlZSBPYmplY3RSZWZlcmVuY2UpLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgQWRkUmVmZXJlbmNlKCk6IHZvaWQ7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gVGhpcyBtZXRob2Qgd2lsbCBiZSBpbnZva2VkIHdoZW4gYW4gZXhpc3RpbmcgcmVmZXJlbmNlIHRvIHRoZVxyXG4gIC8vLyBvYmplY3QgaXMgbm8gbG9uZ2VyIHJlZmVyZW5jaW5nIGl0LlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgUmVtb3ZlUmVmZXJlbmNlKCk6IHZvaWQ7XHJcbn1cclxuIl19
|
|
1
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVJlZmVyZW5jZWRPYmplY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL21hbmFnZW1lbnQvZGF0YS9JUmVmZXJlbmNlZE9iamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxzdW1tYXJ5PlxyXG4vLy8gSW50ZXJmYWNlIHRoYXQgc2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IG9iamVjdHMgd2hpY2hcclxuLy8vIHdpbGwgYmUgcmVmZXJlbmNlZCBieSA8c2VlIGNyZWY9XCJPYmplY3RSZWZlcmVuY2VcIi8+IG9iamVjdHMuXHJcbi8vLyBUaGUgaW1wbGVtZW50aW5nIGNsYXNzIHdpbGwgYmUgbm90aWZpZWQgb2YgaGF2aW5nIGEgbmV3IHJlZmVyZW5jZSBvclxyXG4vLy8gd2hlbiBhIHJlZmVyZW5jZWQgaXMgbm8gbG9uZ2VyIHJlZmVyZW5jaW5nIGl0IHdpdGggdGhlICdBZGRSZWZlcmVuY2UnIGFuZFxyXG4vLy8gJ1JlbW92ZVJlZmVyZW5jZScsIHJlc3BlY3RpdmVseS5cclxuLy8vIDwvc3VtbWFyeT5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVJlZmVyZW5jZWRPYmplY3Qge1xyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gR2V0cyB3aGV0aGVyIHRoZSBvYmplY3QgaGFzIG9iamVjdCBzdGlsbCByZWZlcmVuY2luZyBpdCBvciBub3QuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBIYXNSZWZlcmVuY2VzOiBib29sZWFuO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIFRoaXMgbWV0aG9kIHdpbGwgYmUgaW52b2tlZCB3aGVuIGEgbmV3IHJlZmVyZW5jZSB0byB0aGUgb2JqZWN0XHJcbiAgLy8vIGlzIGNyZWF0ZWQgKHNlZSBPYmplY3RSZWZlcmVuY2UpLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgQWRkUmVmZXJlbmNlKCk6IHZvaWQ7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gVGhpcyBtZXRob2Qgd2lsbCBiZSBpbnZva2VkIHdoZW4gYW4gZXhpc3RpbmcgcmVmZXJlbmNlIHRvIHRoZVxyXG4gIC8vLyBvYmplY3QgaXMgbm8gbG9uZ2VyIHJlZmVyZW5jaW5nIGl0LlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgUmVtb3ZlUmVmZXJlbmNlKCk6IHZvaWQ7XHJcbn1cclxuIl19
|