@magic-xpa/gui 4.801.0-dev481.310 → 4.801.0-dev481.313

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/esm2020/index.mjs +1 -3
  2. package/esm2020/src/Manager.mjs +2 -103
  3. package/esm2020/src/env/IEnvironment.mjs +1 -1
  4. package/esm2020/src/gui/GuiMgControl.mjs +2 -116
  5. package/esm2020/src/gui/low/DialogHandler.mjs +1 -6
  6. package/esm2020/src/gui/low/GuiInteractive.mjs +15 -148
  7. package/esm2020/src/gui/low/Style.mjs +1 -28
  8. package/esm2020/src/management/RuntimeContextBase.mjs +2 -11
  9. package/esm2020/src/management/data/DcValuesBuilderBase.mjs +1 -2
  10. package/esm2020/src/management/data/NUM_TYPE.mjs +1 -18
  11. package/esm2020/src/management/data/RecordUtils.mjs +1 -1
  12. package/esm2020/src/management/data/VectorTypeBase.mjs +1 -2
  13. package/esm2020/src/management/exp/GuiExpressionEvaluator.mjs +1 -1
  14. package/esm2020/src/management/gui/ControlTable.mjs +1 -4
  15. package/esm2020/src/management/gui/DisplayConvertor.mjs +1 -4
  16. package/esm2020/src/management/gui/FieldValidator.mjs +1 -5
  17. package/esm2020/src/management/gui/GuiControlPropertyAdapter.mjs +1 -1
  18. package/esm2020/src/management/gui/MgControlBase.mjs +2 -7
  19. package/esm2020/src/management/gui/Property.mjs +2 -28
  20. package/esm2020/src/management/tasks/GuiTaskBase.mjs +1 -5
  21. package/fesm2015/magic-xpa-gui.mjs +22 -535
  22. package/fesm2015/magic-xpa-gui.mjs.map +1 -1
  23. package/fesm2020/magic-xpa-gui.mjs +21 -533
  24. package/fesm2020/magic-xpa-gui.mjs.map +1 -1
  25. package/index.d.ts +0 -2
  26. package/package.json +2 -2
  27. package/src/Manager.d.ts +2 -27
  28. package/src/env/IEnvironment.d.ts +0 -14
  29. package/src/gui/GuiMgControl.d.ts +1 -13
  30. package/src/gui/low/DialogHandler.d.ts +0 -1
  31. package/src/gui/low/GuiInteractive.d.ts +14 -86
  32. package/src/gui/low/Style.d.ts +0 -27
  33. package/src/management/RuntimeContextBase.d.ts +0 -3
  34. package/src/management/data/NUM_TYPE.d.ts +0 -2
  35. package/src/management/gui/ControlTable.d.ts +0 -1
  36. package/src/management/gui/FieldValidator.d.ts +0 -2
  37. package/src/management/gui/GuiControlPropertyAdapter.d.ts +0 -1
  38. package/src/management/gui/MgControlBase.d.ts +0 -3
  39. package/src/management/gui/Property.d.ts +0 -5
  40. package/esm2020/src/util/AuthenticationDialogHandler.mjs +0 -34
  41. package/esm2020/src/util/ProcessLauncher.mjs +0 -32
  42. package/src/util/AuthenticationDialogHandler.d.ts +0 -14
  43. package/src/util/ProcessLauncher.d.ts +0 -5
package/esm2020/index.mjs CHANGED
@@ -65,9 +65,7 @@ export * from "./src/management/tasks/ITask";
65
65
  export * from "./src/management/tasks/MgTimer";
66
66
  export * from "./src/management/tasks/TaskDefinitionId";
67
67
  export * from "./src/management/tasks/TaskDefinitionIdTableSaxHandler";
68
- export * from "./src/util/AuthenticationDialogHandler";
69
68
  export * from "./src/util/MemoryUtil";
70
69
  export * from "./src/util/ObjectReference";
71
- export * from "./src/util/ProcessLauncher";
72
70
  export * from "./src/util/UsernamePasswordCredentials";
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL3NyYy9Db21tYW5kc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL0V2ZW50c1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL0V2ZW50c1Byb2Nlc3NvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL0ZvY3VzTWFuYWdlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL0d1aUNvbnN0YW50c1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL0d1aUVudW1zXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvR3VpRW52aXJvbm1lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9JRmxvd01vbml0b3JRdWV1ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL01hbmFnZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9VSUJyaWRnZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL2Vudi9JRW52aXJvbm1lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9ndWkvQ29udHJvbEJhc2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9ndWkvR3VpTWdDb250cm9sXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvZ3VpL0d1aU1nRm9ybVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL2d1aS9LZXlib2FyZEl0ZW1cIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9ndWkvTGFzdEZvY3VzZWRWYWxcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9ndWkvTWdWYWx1ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL2d1aS9Qcm9wUGFyZW50SW50ZXJmYWNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvZ3VpL2xvdy9EaWFsb2dIYW5kbGVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvZ3VpL2xvdy9HdWlDb21tYW5kXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvZ3VpL2xvdy9HdWlDb21tYW5kUXVldWVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9ndWkvbG93L0d1aUludGVyYWN0aXZlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvZ3VpL2xvdy9TdHlsZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvUnVudGltZUNvbnRleHRCYXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9kYXRhL0Jsb2JUeXBlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9kYXRhL0RjVmFsdWVzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9kYXRhL0RjVmFsdWVzQnVpbGRlckJhc2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvRmllbGREZWZcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvRmllbGRzVGFibGVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvR3VpRGF0YVZpZXdCYXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9kYXRhL0d1aUZpZWxkQmFzZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZGF0YS9JUmVjb3JkXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9kYXRhL0lSZWZlcmVuY2VkT2JqZWN0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9kYXRhL05VTV9UWVBFXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9kYXRhL09iamVjdFJlZmVyZW5jZUJhc2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvT2JqZWN0UmVmZXJlbmNlc0NvbGxlY3Rpb25cIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvUmVjb3JkVXRpbHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvVmVjdG9yVHlwZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZGF0YS9WZWN0b3JUeXBlQmFzZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZXZlbnRzL0lBY3Rpb25NYW5hZ2VyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ldmVudHMvSUd1aUV2ZW50c01hbmFnZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2V4cC9FeHByZXNzaW9uSW50ZXJmYWNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9leHAvR3VpRXhwcmVzc2lvbkV2YWx1YXRvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL0NvbnRyb2xUYWJsZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL0Rpc3BsYXlDb252ZXJ0b3JcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2d1aS9GaWVsZFZhbGlkYXRvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL0d1aUNvbnRyb2xQcm9wZXJ0eUFkYXB0ZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2d1aS9HdWlGb3JtUHJvcGVydHlBZGFwdGVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ndWkvSGVicmV3RGF0ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL0hlbHBzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ndWkvTWdDb250cm9sQmFzZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL01nRm9ybUJhc2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2d1aS9QSUNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2d1aS9Qcm9wRGVmYXVsdHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2d1aS9Qcm9wZXJ0eVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL1Byb3BJbnRlcmZhY2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2d1aS9Qcm9wVGFibGVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2d1aS9WYWxpZGF0aW9uRGV0YWlsc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL1ZhbGlkYXRpb25EZXRhaWxzQmFzZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL1dyb25nRm9ybWF0RXhjZXB0aW9uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC90YXNrcy9HdWlEYXRhQ29sbGVjdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvdGFza3MvR3VpVGFza0Jhc2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L3Rhc2tzL0lNR0RhdGFUYWJsZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvdGFza3MvSVRhc2tcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L3Rhc2tzL01nVGltZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L3Rhc2tzL1Rhc2tEZWZpbml0aW9uSWRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L3Rhc2tzL1Rhc2tEZWZpbml0aW9uSWRUYWJsZVNheEhhbmRsZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy91dGlsL0F1dGhlbnRpY2F0aW9uRGlhbG9nSGFuZGxlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL3V0aWwvTWVtb3J5VXRpbFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL3V0aWwvT2JqZWN0UmVmZXJlbmNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvdXRpbC9Qcm9jZXNzTGF1bmNoZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy91dGlsL1VzZXJuYW1lUGFzc3dvcmRDcmVkZW50aWFsc1wiO1xuIl19
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLHdDQUF3QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vc3JjL0NvbW1hbmRzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvRXZlbnRzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvRXZlbnRzUHJvY2Vzc29yXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvRm9jdXNNYW5hZ2VyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvR3VpQ29uc3RhbnRzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvR3VpRW51bXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9HdWlFbnZpcm9ubWVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL0lGbG93TW9uaXRvclF1ZXVlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvTWFuYWdlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL1VJQnJpZGdlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvZW52L0lFbnZpcm9ubWVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL2d1aS9Db250cm9sQmFzZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL2d1aS9HdWlNZ0NvbnRyb2xcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9ndWkvR3VpTWdGb3JtXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvZ3VpL0tleWJvYXJkSXRlbVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL2d1aS9MYXN0Rm9jdXNlZFZhbFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL2d1aS9NZ1ZhbHVlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvZ3VpL1Byb3BQYXJlbnRJbnRlcmZhY2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9ndWkvbG93L0RpYWxvZ0hhbmRsZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9ndWkvbG93L0d1aUNvbW1hbmRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9ndWkvbG93L0d1aUNvbW1hbmRRdWV1ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL2d1aS9sb3cvR3VpSW50ZXJhY3RpdmVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9ndWkvbG93L1N0eWxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9SdW50aW1lQ29udGV4dEJhc2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvQmxvYlR5cGVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvRGNWYWx1ZXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvRGNWYWx1ZXNCdWlsZGVyQmFzZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZGF0YS9GaWVsZERlZlwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZGF0YS9GaWVsZHNUYWJsZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZGF0YS9HdWlEYXRhVmlld0Jhc2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvR3VpRmllbGRCYXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9kYXRhL0lSZWNvcmRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvSVJlZmVyZW5jZWRPYmplY3RcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvTlVNX1RZUEVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2RhdGEvT2JqZWN0UmVmZXJlbmNlQmFzZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZGF0YS9PYmplY3RSZWZlcmVuY2VzQ29sbGVjdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZGF0YS9SZWNvcmRVdGlsc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZGF0YS9WZWN0b3JUeXBlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9kYXRhL1ZlY3RvclR5cGVCYXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ldmVudHMvSUFjdGlvbk1hbmFnZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2V2ZW50cy9JR3VpRXZlbnRzTWFuYWdlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZXhwL0V4cHJlc3Npb25JbnRlcmZhY2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2V4cC9HdWlFeHByZXNzaW9uRXZhbHVhdG9yXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ndWkvQ29udHJvbFRhYmxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ndWkvRGlzcGxheUNvbnZlcnRvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL0ZpZWxkVmFsaWRhdG9yXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ndWkvR3VpQ29udHJvbFByb3BlcnR5QWRhcHRlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL0d1aUZvcm1Qcm9wZXJ0eUFkYXB0ZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2d1aS9IZWJyZXdEYXRlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ndWkvSGVscHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L2d1aS9NZ0NvbnRyb2xCYXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ndWkvTWdGb3JtQmFzZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL1BJQ1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL1Byb3BEZWZhdWx0c1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL1Byb3BlcnR5XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ndWkvUHJvcEludGVyZmFjZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL1Byb3BUYWJsZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvZ3VpL1ZhbGlkYXRpb25EZXRhaWxzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ndWkvVmFsaWRhdGlvbkRldGFpbHNCYXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC9ndWkvV3JvbmdGb3JtYXRFeGNlcHRpb25cIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyYy9tYW5hZ2VtZW50L3Rhc2tzL0d1aURhdGFDb2xsZWN0aW9uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC90YXNrcy9HdWlUYXNrQmFzZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvdGFza3MvSU1HRGF0YVRhYmxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvbWFuYWdlbWVudC90YXNrcy9JVGFza1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvdGFza3MvTWdUaW1lclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvdGFza3MvVGFza0RlZmluaXRpb25JZFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL21hbmFnZW1lbnQvdGFza3MvVGFza0RlZmluaXRpb25JZFRhYmxlU2F4SGFuZGxlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL3V0aWwvTWVtb3J5VXRpbFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL3V0aWwvT2JqZWN0UmVmZXJlbmNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvdXRpbC9Vc2VybmFtZVBhc3N3b3JkQ3JlZGVudGlhbHNcIjtcbiJdfQ==
@@ -1,10 +1,7 @@
1
- import { NString, StackFrame } from "@magic-xpa/mscorelib";
2
1
  import { UtilImeJpn, UtilStrByteMode } from "@magic-xpa/utils";
3
- import { GuiMgControl } from "./gui/GuiMgControl";
4
2
  import { Commands } from "./Commands";
5
3
  import { CommandType, HtmlProperties } from "./GuiEnums";
6
4
  import { Events } from "./Events";
7
- import { GuiMgForm } from "./gui/GuiMgForm";
8
5
  import { PropInterface } from "./management/gui/PropInterface";
9
6
  import { GuiEnvironment } from "./GuiEnvironment";
10
7
  export class Manager {
@@ -14,13 +11,7 @@ export class Manager {
14
11
  static GetCurrentContextID() {
15
12
  return Manager._currentContextID;
16
13
  }
17
- static GetDelayWait() {
18
- return Manager._delayWait;
19
- }
20
- static CanFocus() {
21
- return false;
22
- }
23
- static Init(startupImageFileName) {
14
+ static Init() {
24
15
  return;
25
16
  }
26
17
  static Abort(form) {
@@ -68,19 +59,6 @@ export class Manager {
68
59
  await mgForm.firstTableRefresh();
69
60
  }
70
61
  }
71
- static CaretPosGet(ctrl) {
72
- let caretPos = 0;
73
- if (ctrl.isTextControl())
74
- caretPos = Commands.caretPosGet(ctrl, ctrl.getDisplayLine(true));
75
- return caretPos;
76
- }
77
- static ClearStatusBar(task) {
78
- let currentParkedControl = task.getLastParkedCtrl();
79
- if (currentParkedControl !== null && !NString.IsNullOrEmpty(currentParkedControl.PromptHelp))
80
- task.WriteToMessagePane(currentParkedControl.PromptHelp);
81
- else
82
- Manager.CleanMessagePane(task);
83
- }
84
62
  static CleanMessagePane(task) {
85
63
  task.WriteToMessagePane(Manager.GetCurrentRuntimeContext().DefaultStatusMsg);
86
64
  }
@@ -97,96 +75,17 @@ export class Manager {
97
75
  }
98
76
  return msg;
99
77
  }
100
- static SetEditText(ctrl, text) {
101
- Commands.setEditText(ctrl, ctrl.getDisplayLine(true), text);
102
- }
103
- static InsertEditText(ctrl, startPosition, textToInsert) {
104
- Commands.insertEditText(ctrl, ctrl.getDisplayLine(true), startPosition, textToInsert);
105
- }
106
- static GetTooltipTimeout() {
107
- return GuiEnvironment.Environment.GetTooltipTimeout();
108
- }
109
- static GetSpecialEditLeftAlign() {
110
- return GuiEnvironment.Environment.GetSpecialEditLeftAlign();
111
- }
112
- static GetDefaultDateFormat() {
113
- let dateFormat = "";
114
- let dateSeperator = GuiEnvironment.Environment.GetDate();
115
- switch (GuiEnvironment.Environment.GetDateMode(0)) {
116
- case 'S':
117
- dateFormat = "YYYY" + dateSeperator + "MM" + dateSeperator + "DD";
118
- break;
119
- case 'B':
120
- case 'E':
121
- dateFormat = "DD" + dateSeperator + "MM" + dateSeperator + "YYYY";
122
- break;
123
- case 'A':
124
- dateFormat = "MM" + dateSeperator + "DD" + dateSeperator + "YYYY";
125
- break;
126
- }
127
- return dateFormat;
128
- }
129
- static GetDefaultTimeFormat() {
130
- let timeSeperator = GuiEnvironment.Environment.GetTime();
131
- let timeFormat = "HH" + timeSeperator + "MM" + timeSeperator + "SS";
132
- return timeFormat;
133
- }
134
78
  static GetCurrentRuntimeContext() {
135
79
  return Events.GetRuntimeContext(Manager.GetCurrentContextID());
136
80
  }
137
- static GetContextID(mgObject) {
138
- let guiMgForm = null;
139
- if (mgObject instanceof GuiMgControl)
140
- guiMgForm = mgObject.GuiMgForm;
141
- else if (mgObject instanceof GuiMgForm)
142
- guiMgForm = mgObject;
143
- return Events.GetContextID(guiMgForm);
144
- }
145
- static ShowWindowHelp(filePath, helpCmd, helpKey) {
146
- }
147
81
  static GetSpecialValNewPolicy() {
148
82
  return GuiEnvironment.Environment.GetSpecialValNewPolicy();
149
83
  }
150
84
  }
151
85
  Manager.IsOverlayOpen = false;
152
- Manager._delayWait = new Object();
153
- Manager._clipboardData = "";
154
86
  Manager._currentContextID = '\0';
155
87
  Manager.DefaultProtocol = null;
156
88
  Manager.DefaultServerName = null;
157
89
  Manager.UtilImeJpn = (UtilStrByteMode.isLocaleDefLangJPN() ? new UtilImeJpn() : null);
158
90
  Manager.EventsManager = null;
159
- export class ContextIDGuard {
160
- constructor(contextID) {
161
- this._prevContextID = '\0';
162
- this._fileName = null;
163
- if (arguments.length === 0) {
164
- this.constructor_0();
165
- return;
166
- }
167
- this.constructor_1(contextID);
168
- }
169
- constructor_0() {
170
- this._prevContextID = Manager.GetCurrentContextID();
171
- this.SaveFilename();
172
- }
173
- constructor_1(contextID) {
174
- this.SetCurrent(contextID);
175
- this.SaveFilename();
176
- }
177
- SetCurrent(contextID) {
178
- if (contextID !== this._prevContextID) {
179
- this._prevContextID = contextID;
180
- Manager.SetCurrentContextID(contextID);
181
- }
182
- }
183
- SaveFilename() {
184
- let stackFrame = new StackFrame(1);
185
- this._fileName = stackFrame.GetFileName();
186
- }
187
- Dispose() {
188
- if (this._prevContextID !== Manager.GetCurrentContextID())
189
- Manager.SetCurrentContextID(this._prevContextID);
190
- }
191
- }
192
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUMsT0FBTyxFQUFFLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBYyxVQUFVLEVBQUUsZUFBZSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFMUUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBR2hELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFFcEMsT0FBTyxFQUFDLFdBQVcsRUFBRSxjQUFjLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDdkQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUVoQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQzdELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUdoRCxNQUFNLE9BQU8sT0FBTztJQW1CbEIsTUFBTSxDQUFDLG1CQUFtQixDQUFDLFNBQWlCO1FBQzFDLE9BQU8sQ0FBQyxpQkFBaUIsR0FBRyxTQUFTLENBQUM7SUFDeEMsQ0FBQztJQU1ELE1BQU0sQ0FBQyxtQkFBbUI7UUFDeEIsT0FBTyxPQUFPLENBQUMsaUJBQWlCLENBQUM7SUFDbkMsQ0FBQztJQU1ELE1BQU0sQ0FBQyxZQUFZO1FBQ2pCLE9BQU8sT0FBTyxDQUFDLFVBQVUsQ0FBQztJQUM1QixDQUFDO0lBT0QsTUFBTSxDQUFDLFFBQVE7UUFDYixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFHRCxNQUFNLENBQUMsSUFBSSxDQUFDLG9CQUE0QjtRQUN0QyxPQUFPO0lBQ1QsQ0FBQztJQVFELE1BQU0sQ0FBQyxLQUFLLENBQUMs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QUMsY0FBYyxLQUFLLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRTtZQUN2RCxPQUFPLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8c3VtbWFyeT5cclxuLy8vIE1nR3VpLmRsbCdzIG1hbmFnZXIgLSBhc3NlbWJseSBsZXZlbCBwcm9wZXJ0aWVzIGFuZCBtZXRob2RzLlxyXG4vLy8gPC9zdW1tYXJ5PlxyXG5pbXBvcnQge05TdHJpbmcsIFN0YWNrRnJhbWV9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5pbXBvcnQge0hlbHBDb21tYW5kLCBVdGlsSW1lSnBuLCBVdGlsU3RyQnl0ZU1vZGV9IGZyb20gXCJAbWFnaWMteHBhL3V0aWxzXCI7XHJcbmltcG9ydCB7SUd1aUV2ZW50c01hbmFnZXJ9IGZyb20gXCIuL21hbmFnZW1lbnQvZXZlbnRzL0lHdWlFdmVudHNNYW5hZ2VyXCI7XHJcbmltcG9ydCB7R3VpTWdDb250cm9sfSBmcm9tIFwiLi9ndWkvR3VpTWdDb250cm9sXCI7XHJcbmltcG9ydCB7R3VpVGFza0Jhc2V9IGZyb20gXCIuL21hbmFnZW1lbnQvdGFza3MvR3VpVGFza0Jhc2VcIjtcclxuaW1wb3J0IHtNZ0NvbnRyb2xCYXNlfSBmcm9tIFwiLi9tYW5hZ2VtZW50L2d1aS9NZ0NvbnRyb2xCYXNlXCI7XHJcbmltcG9ydCB7Q29tbWFuZHN9IGZyb20gXCIuL0NvbW1hbmRzXCI7XHJcbmltcG9ydCB7TWdGb3JtQmFzZX0gZnJvbSBcIi4vbWFuYWdlbWVudC9ndWkvTWdGb3JtQmFzZVwiO1xyXG5pbXBvcnQge0NvbW1hbmRUeXBlLCBIdG1sUHJvcGVydGllc30gZnJvbSBcIi4vR3VpRW51bXNcIjtcclxuaW1wb3J0IHtFdmVudHN9IGZyb20gXCIuL0V2ZW50c1wiO1xyXG5pbXBvcnQge1J1bnRpbWVDb250ZXh0QmFzZX0gZnJvbSBcIi4vbWFuYWdlbWVudC9SdW50aW1lQ29udGV4dEJhc2VcIjtcclxuaW1wb3J0IHtHdWlNZ0Zvcm19IGZyb20gXCIuL2d1aS9HdWlNZ0Zvcm1cIjtcclxuaW1wb3J0IHtQcm9wSW50ZXJmYWNlfSBmcm9tIFwiLi9tYW5hZ2VtZW50L2d1aS9Qcm9wSW50ZXJmYWNlXCI7XHJcbmltcG9ydCB7R3VpRW52aXJvbm1lbnR9IGZyb20gXCIuL0d1aUVudmlyb25tZW50XCI7XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIE1hbmFnZXIge1xyXG4gIHN0YXRpYyBJc092ZXJsYXlPcGVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgX2RlbGF5V2FpdDogT2JqZWN0ID0gbmV3IE9iamVjdCgpOyAvLyB0aGlzIG9iamVjdCBpcyB1c2VkIGZvciBleGVjdXRpb24gYW5kIGludGVycnVwdGluZyBkZWxheSBjb21tYW5kXHJcbiAgcHJpdmF0ZSBzdGF0aWMgX2NsaXBib2FyZERhdGE6IHN0cmluZyA9IFwiXCI7IC8vIERhdGEgdG8gYmUgd3JpdHRlbiB0byB0aGUgY2xpcGJvYXJkLlxyXG5cclxuICAvLyBUaGlzIHdpbGwgaG9sZCB0aGUgY29udGV4dElEIGZvciBhIGN1cnJlbnQgdGhyZWFkLlxyXG4gIC8vIFRocmVhZCBzdGF0aWMgaXMgYSBzZXBhcmF0ZSBmb3IgZWFjaCB0aHJlYWQgKGkuZS46IHZhbHVlIG9mIGEgc3RhdGljIGZpZWxkIGlzIHVuaXF1ZSBmb3IgZWFjaCB0aHJlYWQpLlxyXG4gIC8vIGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS9zeXN0ZW0udGhyZWFkc3RhdGljYXR0cmlidXRlLmFzcHhcclxuICBwcml2YXRlIHN0YXRpYyBfY3VycmVudENvbnRleHRJRDogc3RyaW5nID0gJ1xcMCc7XHJcblxyXG4gIHN0YXRpYyBEZWZhdWx0UHJvdG9jb2w6IHN0cmluZyA9IG51bGw7IC8vIGRlZmF1bHQgcHJvdG9jb2wgKGh0dHAvaHR0cHMpIGFuZCBzZXJ2ZXIgbmFtZSB0byBiZSB1c2VkIGZvciBhbnkgcmVsYXRpdmUgdXJsXHJcbiAgc3RhdGljIERlZmF1bHRTZXJ2ZXJOYW1lOiBzdHJpbmcgPSBudWxsO1xyXG4gIHN0YXRpYyBVdGlsSW1lSnBuOiBVdGlsSW1lSnBuID0gKFV0aWxTdHJCeXRlTW9kZS5pc0xvY2FsZURlZkxhbmdKUE4oKSA/IG5ldyBVdGlsSW1lSnBuKCkgOiBudWxsKTsgLy8gSlBOOiBJTUUgc3VwcG9ydFxyXG4gIHN0YXRpYyBFdmVudHNNYW5hZ2VyOiBJR3VpRXZlbnRzTWFuYWdlciA9IG51bGw7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4ocHVibGljKVxyXG4gIC8vLyBTZXQgdGhlIGNvbnRleHQgSUQgZm9yIGEgY3VycmVudCB0aHJlYWRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRleHRJRFwiPjwvcGFyYW0+XHJcbiAgc3RhdGljIFNldEN1cnJlbnRDb250ZXh0SUQoY29udGV4dElEOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIE1hbmFnZXIuX2N1cnJlbnRDb250ZXh0SUQgPSBjb250ZXh0SUQ7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIEdldCB0aGUgY29udGV4dCBJRCBmb3IgYSBjdXJyZW50IHRocmVhZFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPmN1cnJlbnQgdGhyZWFkJ3MgY29udGV4dElEPC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBHZXRDdXJyZW50Q29udGV4dElEKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gTWFuYWdlci5fY3VycmVudENvbnRleHRJRDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBnZXQgb2JqZWN0IHRoYXQgaXMgdXNlZCBmb3IgZXhlY3V0aW9uIGFuZCBpbnRlcnJ1cHRpbmcgZGVsYXkgY29tbWFuZC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgc3RhdGljIEdldERlbGF5V2FpdCgpOiBhbnkge1xyXG4gICAgcmV0dXJuIE1hbmFnZXIuX2RlbGF5V2FpdDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBjaGVjayBpZiBkb3QgbmV0IGNvbnRyb2wgY2FuIGJlIGZvY3VzZWRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiZ3VpTWdDb250cm9sXCI+PC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+PC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBDYW5Gb2N1cygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG5cclxuICBzdGF0aWMgSW5pdChzdGFydHVwSW1hZ2VGaWxlTmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgY2xvc2UgdGhlIHRhc2tcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiZm9ybVwiPiA8L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm1haW5QcmdUYXNrXCI+PC9wYXJhbT5cclxuICBzdGF0aWMgQWJvcnQoZm9ybTogTWdGb3JtQmFzZSk6IHZvaWQge1xyXG5cclxuICAgIGlmIChmb3JtLmdldFN1YkZvcm1DdHJsKCkgPT09IG51bGwgJiYgZm9ybS5PcGVuZWQpIHtcclxuICAgICAgLy8gaWYgdGhlIGNsb3NpbmcgZm9ybSBpcyAnb3BlbmVkIGFzIGEgbW9kYWwnIHRoZW4gZGVjcmVtZW50IHRoZSBtb2RhbCBjb3VudCBvbiBpdHMgZnJhbWUgd2luZG93LlxyXG4gICAgICBpZiAoZm9ybS5pc0RpYWxvZygpKSB7XHJcbiAgICAgICAgdGhpcy5Jc092ZXJsYXlPcGVuID0gZmFsc2U7XHJcblxyXG4gICAgICAgIGxldCB0b3BNb3N0RnJhbWVGb3JtOiBNZ0Zvcm1CYXNlID0gZm9ybS5nZXRUb3BNb3N0RnJhbWVGb3JtKCk7XHJcbiAgICAgICAgaWYgKHRvcE1vc3RGcmFtZUZvcm0gIT09IG51bGwpXHJcbiAgICAgICAgICB0b3BNb3N0RnJhbWVGb3JtLlVwZGF0ZU1vZGFsRm9ybXNDb3VudChmb3JtLCBmYWxzZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIENvbW1hbmRzLmFkZENsb3NlRm9ybShmb3JtLCBcIjBcIiwgZm9ybS5nZXRUYXNrKCkuZ2V0VGFza1RhZygpKTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0aGUgY3VycmVudCB2YWx1ZSBvZiB0aGUgY29udHJvbFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJjdHJsXCI+Y29udHJvbCB0byBnZXQgdmFsdWUgPC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+IHZhbHVlIG9mIHRoZSBjb250cm9sIDwvcmV0dXJucz5cclxuICBzdGF0aWMgR2V0Q3RybFZhbChjdHJsOiBNZ0NvbnRyb2xCYXNlKTogc3RyaW5nIHtcclxuICAgIC8vIFFDUiAjNzQ1MTE3OiBNYWtlIHN1cmUgdGhhdCBpZiB0aGUgY29udGVudHMgb2YgYSBjb250cm9sIHdlcmUgY2hhbmdlZFxyXG4gICAgLy8gdGhlbiB0aGUgY2hhbmdlcyBhcmUgYXBwbGllZCBiZWZvcmUgZXhhbWluaW5nIGl0cyB2YWx1ZS5cclxuICAgIHJldHVybiBDb21tYW5kcy5nZXRWYWx1ZShjdHJsLCBjdHJsLmdldERpc3BsYXlMaW5lKHRydWUpKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBTZXQgcmVhZCBvbmx5IGZvciBjb250cm9sc1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJjdHJsXCI+dGhlIGNvbnRyb2wgdG8gY2hhbmdlIGl0cyBwcm9wZXJ0eSA8L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiaXNSZWFkT25seVwiPmJvb2xlYW4gPC9wYXJhbT5cclxuICBzdGF0aWMgYXN5bmMgU2V0UmVhZE9ubHlDb250cm9sKGN0cmw6IE1nQ29udHJvbEJhc2UsIGlzUmVhZE9ubHk6IGJvb2xlYW4pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChjdHJsLmlzVGV4dENvbnRyb2woKSB8fCBjdHJsLklzUmVwZWF0YWJsZSkgLy8gRGVmZWN0IDEzMTgwMjogU2V0IFJlYWRPbmx5IGZvciBSaWNoIFRleHQgY29udHJvbCBpbiBUYWJsZSBIZWFkZXIgYW5kIGRlZmVjdCAxMzE3MDQ6IGluIGdlbmVyYWwgZm9yIFJpY2ggVGV4dC5cclxuICAgIHtcclxuICAgICAgLy8gSlBOOiBJTUUgc3VwcG9ydCAoZW5hYmxlIElNRSBpbiBxdWVyeSBtb2RlKVxyXG4gICAgICBpZiAoVXRpbFN0ckJ5dGVNb2RlLmlzTG9jYWxlRGVmTGFuZ0RCQ1MoKSkge1xyXG4gICAgICAgIGlmIChhd2FpdCBjdHJsLmdldEZvcm0oKS5nZXRUYXNrKCkuY2hlY2tQcm9wKFByb3BJbnRlcmZhY2UuUFJPUF9UWVBFX0FMTE9XX0xPQ0FURV9JTl9RVUVSWSwgZmFsc2UpKVxyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIENvbW1hbmRzLmFkZE9wZXJhdGlvbldpdGhMaW5lKENvbW1hbmRUeXBlLlNFVF9QUk9QRVJUWSwgY3RybCwgY3RybC5nZXREaXNwbGF5TGluZShmYWxzZSksIEh0bWxQcm9wZXJ0aWVzLlJlYWRPbmx5LCBpc1JlYWRPbmx5KTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBPcGVuIHRoZSBmb3JtLiA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibWdGb3JtXCI+Zm9ybSB0byBiZSBvcGVuZWQuPC9wYXJhbT5cclxuICBzdGF0aWMgT3BlbkZvcm0obWdGb3JtOiBNZ0Zvcm1CYXNlKTogdm9pZCB7XHJcbiAgICAvLyBub24gaW50ZXJhY3RpdmUgY2FuIGNob29zZSBub3QgdG8gb3BlbiB0aGUgd2luZG93LlxyXG4gICAgaWYgKCFtZ0Zvcm0uT3BlbmVkICYmIChtZ0Zvcm0uZ2V0VGFzaygpLklzSW50ZXJhY3RpdmUgfHwgbWdGb3JtLmdldFRhc2soKS5pc09wZW5XaW4oKSkpIHtcclxuICAgICAgaWYgKCFtZ0Zvcm0uaXNTdWJGb3JtKCkpIHtcclxuICAgICAgICAvLyBpZiB0aGUgZm9ybSBpcyB0byBiZSBvcGVuZWQgYXMgYSBtb2RhbCwgdGhlbiBpbmNyZW1lbnQgdGhlIG1vZGFsIGNvdW50IG9uIGl0cyBmcmFtZSB3aW5kb3cuXHJcbiAgICAgICAgaWYgKG1nRm9ybS5pc0RpYWxvZygpKSB7XHJcbiAgICAgICAgICB0aGlzLklzT3ZlcmxheU9wZW4gPSB0cnVlO1xyXG5cclxuICAgICAgICAgIGxldCB0b3BNb3N0RnJhbWVGb3JtOiBNZ0Zvcm1CYXNlID0gbWdGb3JtLmdldFRvcE1vc3RGcmFtZUZvcm0oKTtcclxuICAgICAgICAgIGlmICh0b3BNb3N0RnJhbWVGb3JtICE9PSBudWxsKVxyXG4gICAgICAgICAgICB0b3BNb3N0RnJhbWVGb3JtLlVwZGF0ZU1vZGFsRm9ybXNDb3VudChtZ0Zvcm0sIHRydWUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgICAgLy8gaWYgKCFtZ0Zvcm0uaXNTdWJGb3JtKCkpIHtcclxuICAgICAgLy8gICBsZXQgZm9ybU5hbWU6IHN0cmluZyA9IG1nRm9ybS5VbmlxdWVOYW1lO1xyXG4gICAgICAvLyAgIFVJQnJpZGdlLmdldEluc3RhbmNlKCkuT3BlbkZvcm0oZm9ybU5hbWUpO1xyXG5cclxuICAgICAgLy8gfVxyXG4gICAgICAvLyBlbHNlIHtcclxuICAgICAgLy8gICBsZXQgaW5wdXRDb250cm9scyA9IG1nRm9ybS5HZXRMaXN0T2ZJbnB1dENvbnRyb2xzKCk7XHJcbiAgICAgIC8vIC8vXHJcbiAgICAgIC8vIC8vICAgSlNCcmlkZ2UuSW5zdGFuY2UuT3BlblN1YkZvcm0odGhpcy5nZXRTdWJGb3JtQ3RybCgpLmdldE5hbWUoKSwgUGFyZW50Rm9ybS5nZXRUYXNrKCkuZ2V0VGFza1RhZygpLCBnZXRQcm9wKFByb3BJbnRlcmZhY2UuUFJPUF9UWVBFX0ZPUk1fTkFNRSkuZ2V0VmFsdWUoKSwgX3Rhc2suZ2V0VGFza1RhZygpLCBpbnB1dENvbnRyb2xzKTtcclxuICAgICAgLy8gLy8gfVxyXG4gICAgICAvLyB9XHJcblxyXG4gICAgICBtZ0Zvcm0uT3BlbmVkID0gdHJ1ZTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IFBlcmZvcm1zIGZpcnN0IHJlZnJlc2ggZm9yIHRoZSB0YWJsZSBjb250cm9sIDwvc3VtbWFyeT5cclxuICBzdGF0aWMgYXN5bmMgRG9GaXJzdFJlZnJlc2hUYWJsZShtZ0Zvcm06IE1nRm9ybUJhc2UpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChtZ0Zvcm0gIT09IG51bGwgJiYgIW1nRm9ybS5pZ25vcmVGaXJzdFJlZnJlc2hUYWJsZSkge1xyXG4gICAgICBtZ0Zvcm0uaWdub3JlRmlyc3RSZWZyZXNoVGFibGUgPSB0cnVlO1xyXG4gICAgICBhd2FpdCBtZ0Zvcm0uZmlyc3RUYWJsZVJlZnJlc2goKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXRyaWV2ZSB0aGUgbG9jYXRpb24gb2YgdGhlIGNhcmV0LCB3aXRoaW4gdGhlIGN1cnJlbnRseSBzZWxlY3RlZCB0ZXh0XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImN0cmxcIj50aGUgY29udHJvbCB3aGljaCBpcyBhc3N1bWVkIHRvIGNvbnRhaW4gdGhlIHNlbGVjdGVkIHRleHQgPC9wYXJhbT5cclxuICBzdGF0aWMgQ2FyZXRQb3NHZXQoY3RybDogTWdDb250cm9sQmFzZSk6IG51bWJlciB7XHJcbiAgICBsZXQgY2FyZXRQb3M6IG51bWJlciA9IDA7XHJcblxyXG4gICAgaWYgKGN0cmwuaXNUZXh0Q29udHJvbCgpKVxyXG4gICAgICBjYXJldFBvcyA9IENvbW1hbmRzLmNhcmV0UG9zR2V0KGN0cmwsIGN0cmwuZ2V0RGlzcGxheUxpbmUodHJ1ZSkpO1xyXG5cclxuICAgIHJldHVybiBjYXJldFBvcztcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gQ2xlYXIgdGhlIHN0YXR1cyBiYXIgZGVwZW5kaW5nIG9uIHRoZSBjb250cm9sIHNwZWNpZmljIHN0YXR1cyBtZXNzYWdlIG9yIGZvcm0gc3BlY2lmaWMgc3RhdHVzIG1lc3NhZ2VcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInRhc2tcIj50YXNrPC9wYXJhbT5cclxuICBzdGF0aWMgQ2xlYXJTdGF0dXNCYXIodGFzazogR3VpVGFza0Jhc2UpOiB2b2lkIHtcclxuICAgIGxldCBjdXJyZW50UGFya2VkQ29udHJvbDogTWdDb250cm9sQmFzZSA9IHRhc2suZ2V0TGFzdFBhcmtlZEN0cmwoKTtcclxuXHJcbiAgICBpZiAoY3VycmVudFBhcmtlZENvbnRyb2wgIT09IG51bGwgJiYgIU5TdHJpbmcuSXNOdWxsT3JFbXB0eShjdXJyZW50UGFya2VkQ29udHJvbC5Qcm9tcHRIZWxwKSlcclxuICAgICAgdGFzay5Xcml0ZVRvTWVzc2FnZVBhbmUoY3VycmVudFBhcmtlZENvbnRyb2wuUHJvbXB0SGVscCk7XHJcbiAgICBlbHNlXHJcbiAgICAgIE1hbmFnZXIuQ2xlYW5NZXNzYWdlUGFuZSh0YXNrKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBjbGVhbiB0aGUgc3RhdHVzIGJhclxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJ0YXNrXCI+PC9wYXJhbT5cclxuICBzdGF0aWMgQ2xlYW5NZXNzYWdlUGFuZSh0YXNrOiBHdWlUYXNrQmFzZSk6IHZvaWQge1xyXG4gICAgdGFzay5Xcml0ZVRvTWVzc2FnZVBhbmUoTWFuYWdlci5HZXRDdXJyZW50UnVudGltZUNvbnRleHQoKS5EZWZhdWx0U3RhdHVzTXNnKTtcclxuICB9XHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgTWVzc2FnZSBzdHJpbmcgdG8gYmUgZGlzcGxheWVkIG9uIHN0YXR1cyBiYXIgb3IgaW4gTWVzc2FnZSBib3hcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwibXNnXCI+IGlucHV0IG1lc3NhZ2Ugc3RyaW5nIDwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPiBvdXRwdXQgbWVzc2FnZSBzdHJpbmcgPC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBHZXRNZXNzYWdlKG1zZzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmIChtc2cgPT09IG51bGwpXHJcbiAgICAgIG1zZyA9IFwiXCI7XHJcbiAgICBlbHNlIGlmIChtc2cubGVuZ3RoID4gMCkge1xyXG4gICAgICBsZXQgaWR4T2ZDYXJyaWFnZTogbnVtYmVyID0gbXNnLmluZGV4T2YoXCJcXHJcIik7XHJcbiAgICAgIGlmIChpZHhPZkNhcnJpYWdlICE9PSAtMSlcclxuICAgICAgICBtc2cgPSBtc2cuc3Vic3RyKDAsIGlkeE9mQ2FycmlhZ2UpO1xyXG5cclxuICAgICAgbGV0IGlkeE9mTmV3TGluZTogbnVtYmVyID0gbXNnLmluZGV4T2YoXCJcXG5cIik7XHJcbiAgICAgIGlmIChpZHhPZk5ld0xpbmUgIT09IC0xKVxyXG4gICAgICAgIG1zZyA9IG1zZy5zdWJzdHIoMCwgaWR4T2ZOZXdMaW5lKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbXNnO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIFVzZWQgdG8gcHV0IHRoZSB0ZXh0IG9uIGEgdGV4dCBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImN0cmxcIj4gPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcInRleHRcIj4gPC9wYXJhbT5cclxuICBzdGF0aWMgU2V0RWRpdFRleHQoY3RybDogTWdDb250cm9sQmFzZSwgdGV4dDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBDb21tYW5kcy5zZXRFZGl0VGV4dChjdHJsLCBjdHJsLmdldERpc3BsYXlMaW5lKHRydWUpLCB0ZXh0KTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gSW5zZXJ0IHRleHQgdG8gYSB0ZXh0IGNvbnRyb2wgYXQgYSBnaXZlbiBwb3NpdGlvblxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiY3RybFwiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwic3RhcnRQb3NpdGlvblwiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwidGV4dFRvSW5zZXJ0XCI+PC9wYXJhbT5cclxuICBzdGF0aWMgSW5zZXJ0RWRpdFRleHQoY3RybDogTWdDb250cm9sQmFzZSwgc3RhcnRQb3NpdGlvbjogbnVtYmVyLCB0ZXh0VG9JbnNlcnQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgQ29tbWFuZHMuaW5zZXJ0RWRpdFRleHQoY3RybCwgY3RybC5nZXREaXNwbGF5TGluZSh0cnVlKSwgc3RhcnRQb3NpdGlvbiwgdGV4dFRvSW5zZXJ0KTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm4gVG9vbHRpcFRpbWVvdXRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz4gcmV0dXJucyBUb29sdGlwVGltZW91dDwvcmV0dXJucz5cclxuICBzdGF0aWMgR2V0VG9vbHRpcFRpbWVvdXQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiBHdWlFbnZpcm9ubWVudC5FbnZpcm9ubWVudC5HZXRUb29sdGlwVGltZW91dCgpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyByZXR1cm4gU3BlY2lhbEVkaXRMZWZ0QWxpZ25cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgc3RhdGljIEdldFNwZWNpYWxFZGl0TGVmdEFsaWduKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIEd1aUVudmlyb25tZW50LkVudmlyb25tZW50LkdldFNwZWNpYWxFZGl0TGVmdEFsaWduKCk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgUmV0dXJucyBkZWZhdWx0IGRhdGUgZm9ybWF0IGRlcGVuZGluZyBvbiBkYXRlIG1vZGUgYW5kIGRhdGUgc2VwYXJhdG9yLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPiBTdHJpbmcgZGVmYXVsdCBkYXRlIGZvcm1hdDwvcmV0dXJucz5cclxuICBzdGF0aWMgR2V0RGVmYXVsdERhdGVGb3JtYXQoKTogc3RyaW5nIHtcclxuICAgIGxldCBkYXRlRm9ybWF0OiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgbGV0IGRhdGVTZXBlcmF0b3I6IHN0cmluZyA9IEd1aUVudmlyb25tZW50LkVudmlyb25tZW50LkdldERhdGUoKTtcclxuXHJcbiAgICAvLyBBcnJhbmdlIGRhdGUgZm9ybWF0IGFjY29yZGluZyB0byB0aGUgZGF0ZSBtb2RlLlxyXG4gICAgc3dpdGNoIChHdWlFbnZpcm9ubWVudC5FbnZpcm9ubWVudC5HZXREYXRlTW9kZSgwKSkge1xyXG4gICAgICBjYXNlICdTJzogLy8gU2NhbmRpbmF2aWFuXHJcbiAgICAgICAgZGF0ZUZvcm1hdCA9IFwiWVlZWVwiICsgZGF0ZVNlcGVyYXRvciArIFwiTU1cIiArIGRhdGVTZXBlcmF0b3IgKyBcIkREXCI7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlICdCJzogLy8gQnVkZGhpc3RcclxuXHJcbiAgICAgIGNhc2UgJ0UnOiAvLyBFdXJvcGVhblxyXG4gICAgICAgIGRhdGVGb3JtYXQgPSBcIkREXCIgKyBkYXRlU2VwZXJhdG9yICsgXCJNTVwiICsgZGF0ZVNlcGVyYXRvciArIFwiWVlZWVwiO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSAnQSc6IC8vIEFtZXJpY2FuXHJcbiAgICAgICAgZGF0ZUZvcm1hdCA9IFwiTU1cIiArIGRhdGVTZXBlcmF0b3IgKyBcIkREXCIgKyBkYXRlU2VwZXJhdG9yICsgXCJZWVlZXCI7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZGF0ZUZvcm1hdDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBSZXR1cm4gZGVmYXVsdCB0aW1lIGZvcm1hdCB1c2luZyB0aW1lIHNlcGFyYXRvci5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgc3RhdGljIEdldERlZmF1bHRUaW1lRm9ybWF0KCk6IHN0cmluZyB7XHJcbiAgICBsZXQgdGltZVNlcGVyYXRvcjogc3RyaW5nID0gR3VpRW52aXJvbm1lbnQuRW52aXJvbm1lbnQuR2V0VGltZSgpO1xyXG4gICAgbGV0IHRpbWVGb3JtYXQ6IHN0cmluZyA9IFwiSEhcIiArIHRpbWVTZXBlcmF0b3IgKyBcIk1NXCIgKyB0aW1lU2VwZXJhdG9yICsgXCJTU1wiO1xyXG4gICAgcmV0dXJuIHRpbWVGb3JtYXQ7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIEdldHMgdGhlIHJ1bnRpbWUgY29udGV4dCBiZWxvbmdzIHRvIHRoZSBjdXJyZW50IHRocmVhZC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz5SdW50aW1lQ29udGV4dEJhc2U8L3JldHVybnM+XHJcbiAgc3RhdGljIEdldEN1cnJlbnRSdW50aW1lQ29udGV4dCgpOiBSdW50aW1lQ29udGV4dEJhc2Uge1xyXG4gICAgcmV0dXJuIEV2ZW50cy5HZXRSdW50aW1lQ29udGV4dChNYW5hZ2VyLkdldEN1cnJlbnRDb250ZXh0SUQoKSk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIEdldHMgdGhlIGNvbnRleHRJRCB1c2luZyB0aGUgR3VpTWdGb3JtLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibWdPYmplY3RcIj5NYWdpYyBPYmplY3QgLSBHdWlNZ0Zvcm0vR3VpTWdDb250cm9sL0xvZ2ljYWwgY29udHJvbDwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPmNvbnRleHRJRDwvcmV0dXJucz5cclxuICBzdGF0aWMgR2V0Q29udGV4dElEKG1nT2JqZWN0OiBhbnkpOiBudW1iZXIge1xyXG4gICAgbGV0IGd1aU1nRm9ybTogR3VpTWdGb3JtID0gbnVsbDtcclxuXHJcbiAgICBpZiAobWdPYmplY3QgaW5zdGFuY2VvZiBHdWlNZ0NvbnRyb2wpXHJcbiAgICAgIGd1aU1nRm9ybSA9ICg8R3VpTWdDb250cm9sPm1nT2JqZWN0KS5HdWlNZ0Zvcm07XHJcbiAgICBlbHNlIGlmIChtZ09iamVjdCBpbnN0YW5jZW9mIEd1aU1nRm9ybSlcclxuICAgICAgZ3VpTWdGb3JtID0gPEd1aU1nRm9ybT5tZ09iamVjdDtcclxuXHJcbiAgICByZXR1cm4gRXZlbnRzLkdldENvbnRleHRJRChndWlNZ0Zvcm0pO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBTaG93cyB3aW5kb3dzIGhlbHAuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJmaWxlUGF0aFwiPnBhdGggb2YgdGhlIGhlbHAgZmlsZS48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImhlbHBDbWRcIj5oZWxwIGNvbW1hbmQuPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJoZWxwS2V5XCI+c2VhcmNoIGtleSB3b3JkLjwvcGFyYW0+XHJcbiAgc3RhdGljIFNob3dXaW5kb3dIZWxwKGZpbGVQYXRoOiBzdHJpbmcsIGhlbHBDbWQ6IEhlbHBDb21tYW5kLCBoZWxwS2V5OiBzdHJpbmcpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gcmV0dXJuIFNwZWNpYWxWYWxOZXdQb2xpY3lcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgcHVibGljIHN0YXRpYyBHZXRTcGVjaWFsVmFsTmV3UG9saWN5KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIEd1aUVudmlyb25tZW50LkVudmlyb25tZW50LkdldFNwZWNpYWxWYWxOZXdQb2xpY3koKTtcclxuICB9XHJcbn1cclxuXHJcbi8vLyA8c3VtbWFyeT5cclxuLy8vIGhlbHBlciBjbGFzcyBmb3Igc2V0dGluZy9yZXNldHRpbmcgdGhlIGN1cnJlbnQgY29udGV4dCBJRC5cclxuLy8vIFdlIHJlcXVpcmUgdGhpcyBjbGFzcyBzcGVjaWZpY2FsbHkgZm9yIE1vZGFsIHdpbmRvd3MuIFdoZW4gd2Ugb3BlbiBhIG1vZGFsIHdpbmRvdyB0aGVuXHJcbi8vLyBpdCB3YWl0cyBpbiBHdWlUaHJlYWQuIE1lYW4gd2hpbGUgR3VpVGhyZWFkIGNhbiByZWNlaXZlIHRoZSBldmVudHMgb2Ygb3RoZXIgY29udGV4dCBhbmRcclxuLy8vIGFmdGVyIHByb2Nlc3NpbmcgdGhlc2UgZXZlbnRzLCB3ZSBzaG91bGQgcmVzZXQgdGhlIGNvbnRleHRJRCBvZiB0aGUgTW9kYWwgd2luZG93cyBiZWNhdXNlXHJcbi8vLyBpdCB3aWxsIGJlIHVzZWQgZm9yIGxvZ2dpbmcgdGhlIGV2ZW50cyB3aGVuIHdlIGNsb3NlIHRoZSBtb2RhbCB3aW5kb3cuXHJcbi8vLyA8L3N1bW1hcnk+XHJcbmV4cG9ydCBjbGFzcyBDb250ZXh0SURHdWFyZCB7XHJcbiAgcHJpdmF0ZSBfcHJldkNvbnRleHRJRDogc3RyaW5nID0gJ1xcMCc7XHJcblxyXG4gIC8vIEZvciBkZWJ1Z2dpbmcgcHVycG9zZSBvbmx5LlxyXG4gIC8vIEl0IHdpbGwgaG9sZCB0aGUgZmlsZSBuYW1lIGZyb20gd2hpY2ggdGhlIG9iamVjdCBvZiBDb250ZXh0SURHdWFyZCBpcyBjcmVhdGVkLlxyXG4gIHByaXZhdGUgX2ZpbGVOYW1lOiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpO1xyXG4gIGNvbnN0cnVjdG9yKGNvbnRleHRJRDogc3RyaW5nKTtcclxuICBjb25zdHJ1Y3Rvcihjb250ZXh0SUQ/OiBzdHJpbmcpIHtcclxuICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHRoaXMuY29uc3RydWN0b3JfMCgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmNvbnN0cnVjdG9yXzEoY29udGV4dElEKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY29uc3RydWN0b3JfMCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3ByZXZDb250ZXh0SUQgPSBNYW5hZ2VyLkdldEN1cnJlbnRDb250ZXh0SUQoKTtcclxuICAgIHRoaXMuU2F2ZUZpbGVuYW1lKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNvbnN0cnVjdG9yXzEoY29udGV4dElEOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuU2V0Q3VycmVudChjb250ZXh0SUQpO1xyXG4gICAgdGhpcy5TYXZlRmlsZW5hbWUoKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gc2V0cyB0aGUgY29udGV4dCBJRCB0byAnZ3VhcmQnLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiY29udGV4dElEXCI+bmV3IGNvbnRleHQgSUQgdG8gJ2d1YXJkJy48L3BhcmFtPlxyXG4gIFNldEN1cnJlbnQoY29udGV4dElEOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmIChjb250ZXh0SUQgIT09IHRoaXMuX3ByZXZDb250ZXh0SUQpIHtcclxuICAgICAgdGhpcy5fcHJldkNvbnRleHRJRCA9IGNvbnRleHRJRDtcclxuICAgICAgTWFuYWdlci5TZXRDdXJyZW50Q29udGV4dElEKGNvbnRleHRJRCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIEdldCB0aGUgZmlsZSBuYW1lIGZyb20gd2hpY2ggdGhlIENvbnRleHRJREd1YXJkIGlzIGJlaW5nIGNyZWF0ZWQuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBwcml2YXRlIFNhdmVGaWxlbmFtZSgpOiB2b2lkIHtcclxuICAgIGxldCBzdGFja0ZyYW1lOiBTdGFja0ZyYW1lID0gbmV3IFN0YWNrRnJhbWUoMSk7XHJcbiAgICB0aGlzLl9maWxlTmFtZSA9IHN0YWNrRnJhbWUuR2V0RmlsZU5hbWUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBEaXNwb3NlKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX3ByZXZDb250ZXh0SUQgIT09IE1hbmFnZXIuR2V0Q3VycmVudENvbnRleHRJRCgpKVxyXG4gICAgICBNYW5hZ2VyLlNldEN1cnJlbnRDb250ZXh0SUQodGhpcy5fcHJldkNvbnRleHRJRCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUMsVUFBVSxFQUFFLGVBQWUsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBSTdELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFFcEMsT0FBTyxFQUFDLFdBQVcsRUFBRSxjQUFjLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDdkQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUVoQyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBR2hELE1BQU0sT0FBTyxPQUFPO0lBbUJsQixNQUFNLENBQUMsbUJBQW1CLENBQUMsU0FBaUI7UUFDMUMsT0FBTyxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztJQUN4QyxDQUFDO0lBTUQsTUFBTSxDQUFDLG1CQUFtQjtRQUN4QixPQUFPLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQztJQUNuQyxDQUFDO0lBSUQsTUFBTSxDQUFDLElBQUk7UUFDVCxPQUFPO0lBQ1QsQ0FBQztJQVFELE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBZ0I7UUFFM0IsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFFakQsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO2dCQUUzQixJQUFJLGdCQUFnQixHQUFlLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO2dCQUM5RCxJQUFJLGdCQUFnQixLQUFLLElBQUk7b0JBQzNCLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLElBQUksRUFB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ckMsSUFBSSxZQUFZLEdBQVcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3QyxJQUFJLFlBQVksS0FBSyxDQUFDLENBQUM7Z0JBQ3JCLEdBQUcsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztTQUNyQztRQUVELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQU9ELE1BQU0sQ0FBQyx3QkFBd0I7UUFDN0IsT0FBTyxNQUFNLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBTU0sTUFBTSxDQUFDLHNCQUFzQjtRQUNsQyxPQUFPLGNBQWMsQ0FBQyxXQUFXLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUM3RCxDQUFDOztBQW5MTSxxQkFBYSxHQUFZLEtBQUssQ0FBQztBQU92Qix5QkFBaUIsR0FBVyxJQUFJLENBQUM7QUFFekMsdUJBQWUsR0FBVyxJQUFJLENBQUM7QUFDL0IseUJBQWlCLEdBQVcsSUFBSSxDQUFDO0FBQ2pDLGtCQUFVLEdBQWUsQ0FBQyxlQUFlLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDMUYscUJBQWEsR0FBc0IsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxzdW1tYXJ5PlxyXG4vLy8gTWdHdWkuZGxsJ3MgbWFuYWdlciAtIGFzc2VtYmx5IGxldmVsIHByb3BlcnRpZXMgYW5kIG1ldGhvZHMuXHJcbi8vLyA8L3N1bW1hcnk+XHJcbmltcG9ydCB7VXRpbEltZUpwbiwgVXRpbFN0ckJ5dGVNb2RlfSBmcm9tIFwiQG1hZ2ljLXhwYS91dGlsc1wiO1xyXG5pbXBvcnQge0lHdWlFdmVudHNNYW5hZ2VyfSBmcm9tIFwiLi9tYW5hZ2VtZW50L2V2ZW50cy9JR3VpRXZlbnRzTWFuYWdlclwiO1xyXG5pbXBvcnQge0d1aVRhc2tCYXNlfSBmcm9tIFwiLi9tYW5hZ2VtZW50L3Rhc2tzL0d1aVRhc2tCYXNlXCI7XHJcbmltcG9ydCB7TWdDb250cm9sQmFzZX0gZnJvbSBcIi4vbWFuYWdlbWVudC9ndWkvTWdDb250cm9sQmFzZVwiO1xyXG5pbXBvcnQge0NvbW1hbmRzfSBmcm9tIFwiLi9Db21tYW5kc1wiO1xyXG5pbXBvcnQge01nRm9ybUJhc2V9IGZyb20gXCIuL21hbmFnZW1lbnQvZ3VpL01nRm9ybUJhc2VcIjtcclxuaW1wb3J0IHtDb21tYW5kVHlwZSwgSHRtbFByb3BlcnRpZXN9IGZyb20gXCIuL0d1aUVudW1zXCI7XHJcbmltcG9ydCB7RXZlbnRzfSBmcm9tIFwiLi9FdmVudHNcIjtcclxuaW1wb3J0IHtSdW50aW1lQ29udGV4dEJhc2V9IGZyb20gXCIuL21hbmFnZW1lbnQvUnVudGltZUNvbnRleHRCYXNlXCI7XHJcbmltcG9ydCB7UHJvcEludGVyZmFjZX0gZnJvbSBcIi4vbWFuYWdlbWVudC9ndWkvUHJvcEludGVyZmFjZVwiO1xyXG5pbXBvcnQge0d1aUVudmlyb25tZW50fSBmcm9tIFwiLi9HdWlFbnZpcm9ubWVudFwiO1xyXG5cclxuXHJcbmV4cG9ydCBjbGFzcyBNYW5hZ2VyIHtcclxuICBzdGF0aWMgSXNPdmVybGF5T3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4vLyB0aGlzIG9iamVjdCBpcyB1c2VkIGZvciBleGVjdXRpb24gYW5kIGludGVycnVwdGluZyBkZWxheSBjb21tYW5kXHJcbi8vIERhdGEgdG8gYmUgd3JpdHRlbiB0byB0aGUgY2xpcGJvYXJkLlxyXG5cclxuICAvLyBUaGlzIHdpbGwgaG9sZCB0aGUgY29udGV4dElEIGZvciBhIGN1cnJlbnQgdGhyZWFkLlxyXG4gIC8vIFRocmVhZCBzdGF0aWMgaXMgYSBzZXBhcmF0ZSBmb3IgZWFjaCB0aHJlYWQgKGkuZS46IHZhbHVlIG9mIGEgc3RhdGljIGZpZWxkIGlzIHVuaXF1ZSBmb3IgZWFjaCB0aHJlYWQpLlxyXG4gIC8vIGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS9zeXN0ZW0udGhyZWFkc3RhdGljYXR0cmlidXRlLmFzcHhcclxuICBwcml2YXRlIHN0YXRpYyBfY3VycmVudENvbnRleHRJRDogc3RyaW5nID0gJ1xcMCc7XHJcblxyXG4gIHN0YXRpYyBEZWZhdWx0UHJvdG9jb2w6IHN0cmluZyA9IG51bGw7IC8vIGRlZmF1bHQgcHJvdG9jb2wgKGh0dHAvaHR0cHMpIGFuZCBzZXJ2ZXIgbmFtZSB0byBiZSB1c2VkIGZvciBhbnkgcmVsYXRpdmUgdXJsXHJcbiAgc3RhdGljIERlZmF1bHRTZXJ2ZXJOYW1lOiBzdHJpbmcgPSBudWxsO1xyXG4gIHN0YXRpYyBVdGlsSW1lSnBuOiBVdGlsSW1lSnBuID0gKFV0aWxTdHJCeXRlTW9kZS5pc0xvY2FsZURlZkxhbmdKUE4oKSA/IG5ldyBVdGlsSW1lSnBuKCkgOiBudWxsKTsgLy8gSlBOOiBJTUUgc3VwcG9ydFxyXG4gIHN0YXRpYyBFdmVudHNNYW5hZ2VyOiBJR3VpRXZlbnRzTWFuYWdlciA9IG51bGw7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4ocHVibGljKVxyXG4gIC8vLyBTZXQgdGhlIGNvbnRleHQgSUQgZm9yIGEgY3VycmVudCB0aHJlYWRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRleHRJRFwiPjwvcGFyYW0+XHJcbiAgc3RhdGljIFNldEN1cnJlbnRDb250ZXh0SUQoY29udGV4dElEOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIE1hbmFnZXIuX2N1cnJlbnRDb250ZXh0SUQgPSBjb250ZXh0SUQ7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIEdldCB0aGUgY29udGV4dCBJRCBmb3IgYSBjdXJyZW50IHRocmVhZFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPmN1cnJlbnQgdGhyZWFkJ3MgY29udGV4dElEPC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBHZXRDdXJyZW50Q29udGV4dElEKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gTWFuYWdlci5fY3VycmVudENvbnRleHRJRDtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgc3RhdGljIEluaXQoKTogdm9pZCB7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgY2xvc2UgdGhlIHRhc2tcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiZm9ybVwiPiA8L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm1haW5QcmdUYXNrXCI+PC9wYXJhbT5cclxuICBzdGF0aWMgQWJvcnQoZm9ybTogTWdGb3JtQmFzZSk6IHZvaWQge1xyXG5cclxuICAgIGlmIChmb3JtLmdldFN1YkZvcm1DdHJsKCkgPT09IG51bGwgJiYgZm9ybS5PcGVuZWQpIHtcclxuICAgICAgLy8gaWYgdGhlIGNsb3NpbmcgZm9ybSBpcyAnb3BlbmVkIGFzIGEgbW9kYWwnIHRoZW4gZGVjcmVtZW50IHRoZSBtb2RhbCBjb3VudCBvbiBpdHMgZnJhbWUgd2luZG93LlxyXG4gICAgICBpZiAoZm9ybS5pc0RpYWxvZygpKSB7XHJcbiAgICAgICAgdGhpcy5Jc092ZXJsYXlPcGVuID0gZmFsc2U7XHJcblxyXG4gICAgICAgIGxldCB0b3BNb3N0RnJhbWVGb3JtOiBNZ0Zvcm1CYXNlID0gZm9ybS5nZXRUb3BNb3N0RnJhbWVGb3JtKCk7XHJcbiAgICAgICAgaWYgKHRvcE1vc3RGcmFtZUZvcm0gIT09IG51bGwpXHJcbiAgICAgICAgICB0b3BNb3N0RnJhbWVGb3JtLlVwZGF0ZU1vZGFsRm9ybXNDb3VudChmb3JtLCBmYWxzZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIENvbW1hbmRzLmFkZENsb3NlRm9ybShmb3JtLCBcIjBcIiwgZm9ybS5nZXRUYXNrKCkuZ2V0VGFza1RhZygpKTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0aGUgY3VycmVudCB2YWx1ZSBvZiB0aGUgY29udHJvbFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJjdHJsXCI+Y29udHJvbCB0byBnZXQgdmFsdWUgPC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+IHZhbHVlIG9mIHRoZSBjb250cm9sIDwvcmV0dXJucz5cclxuICBzdGF0aWMgR2V0Q3RybFZhbChjdHJsOiBNZ0NvbnRyb2xCYXNlKTogc3RyaW5nIHtcclxuICAgIC8vIFFDUiAjNzQ1MTE3OiBNYWtlIHN1cmUgdGhhdCBpZiB0aGUgY29udGVudHMgb2YgYSBjb250cm9sIHdlcmUgY2hhbmdlZFxyXG4gICAgLy8gdGhlbiB0aGUgY2hhbmdlcyBhcmUgYXBwbGllZCBiZWZvcmUgZXhhbWluaW5nIGl0cyB2YWx1ZS5cclxuICAgIHJldHVybiBDb21tYW5kcy5nZXRWYWx1ZShjdHJsLCBjdHJsLmdldERpc3BsYXlMaW5lKHRydWUpKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBTZXQgcmVhZCBvbmx5IGZvciBjb250cm9sc1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJjdHJsXCI+dGhlIGNvbnRyb2wgdG8gY2hhbmdlIGl0cyBwcm9wZXJ0eSA8L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiaXNSZWFkT25seVwiPmJvb2xlYW4gPC9wYXJhbT5cclxuICBzdGF0aWMgYXN5bmMgU2V0UmVhZE9ubHlDb250cm9sKGN0cmw6IE1nQ29udHJvbEJhc2UsIGlzUmVhZE9ubHk6IGJvb2xlYW4pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChjdHJsLmlzVGV4dENvbnRyb2woKSB8fCBjdHJsLklzUmVwZWF0YWJsZSkgLy8gRGVmZWN0IDEzMTgwMjogU2V0IFJlYWRPbmx5IGZvciBSaWNoIFRleHQgY29udHJvbCBpbiBUYWJsZSBIZWFkZXIgYW5kIGRlZmVjdCAxMzE3MDQ6IGluIGdlbmVyYWwgZm9yIFJpY2ggVGV4dC5cclxuICAgIHtcclxuICAgICAgLy8gSlBOOiBJTUUgc3VwcG9ydCAoZW5hYmxlIElNRSBpbiBxdWVyeSBtb2RlKVxyXG4gICAgICBpZiAoVXRpbFN0ckJ5dGVNb2RlLmlzTG9jYWxlRGVmTGFuZ0RCQ1MoKSkge1xyXG4gICAgICAgIGlmIChhd2FpdCBjdHJsLmdldEZvcm0oKS5nZXRUYXNrKCkuY2hlY2tQcm9wKFByb3BJbnRlcmZhY2UuUFJPUF9UWVBFX0FMTE9XX0xPQ0FURV9JTl9RVUVSWSwgZmFsc2UpKVxyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIENvbW1hbmRzLmFkZE9wZXJhdGlvbldpdGhMaW5lKENvbW1hbmRUeXBlLlNFVF9QUk9QRVJUWSwgY3RybCwgY3RybC5nZXREaXNwbGF5TGluZShmYWxzZSksIEh0bWxQcm9wZXJ0aWVzLlJlYWRPbmx5LCBpc1JlYWRPbmx5KTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBPcGVuIHRoZSBmb3JtLiA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibWdGb3JtXCI+Zm9ybSB0byBiZSBvcGVuZWQuPC9wYXJhbT5cclxuICBzdGF0aWMgT3BlbkZvcm0obWdGb3JtOiBNZ0Zvcm1CYXNlKTogdm9pZCB7XHJcbiAgICAvLyBub24gaW50ZXJhY3RpdmUgY2FuIGNob29zZSBub3QgdG8gb3BlbiB0aGUgd2luZG93LlxyXG4gICAgaWYgKCFtZ0Zvcm0uT3BlbmVkICYmIChtZ0Zvcm0uZ2V0VGFzaygpLklzSW50ZXJhY3RpdmUgfHwgbWdGb3JtLmdldFRhc2soKS5pc09wZW5XaW4oKSkpIHtcclxuICAgICAgaWYgKCFtZ0Zvcm0uaXNTdWJGb3JtKCkpIHtcclxuICAgICAgICAvLyBpZiB0aGUgZm9ybSBpcyB0byBiZSBvcGVuZWQgYXMgYSBtb2RhbCwgdGhlbiBpbmNyZW1lbnQgdGhlIG1vZGFsIGNvdW50IG9uIGl0cyBmcmFtZSB3aW5kb3cuXHJcbiAgICAgICAgaWYgKG1nRm9ybS5pc0RpYWxvZygpKSB7XHJcbiAgICAgICAgICB0aGlzLklzT3ZlcmxheU9wZW4gPSB0cnVlO1xyXG5cclxuICAgICAgICAgIGxldCB0b3BNb3N0RnJhbWVGb3JtOiBNZ0Zvcm1CYXNlID0gbWdGb3JtLmdldFRvcE1vc3RGcmFtZUZvcm0oKTtcclxuICAgICAgICAgIGlmICh0b3BNb3N0RnJhbWVGb3JtICE9PSBudWxsKVxyXG4gICAgICAgICAgICB0b3BNb3N0RnJhbWVGb3JtLlVwZGF0ZU1vZGFsRm9ybXNDb3VudChtZ0Zvcm0sIHRydWUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgICAgLy8gaWYgKCFtZ0Zvcm0uaXNTdWJGb3JtKCkpIHtcclxuICAgICAgLy8gICBsZXQgZm9ybU5hbWU6IHN0cmluZyA9IG1nRm9ybS5VbmlxdWVOYW1lO1xyXG4gICAgICAvLyAgIFVJQnJpZGdlLmdldEluc3RhbmNlKCkuT3BlbkZvcm0oZm9ybU5hbWUpO1xyXG5cclxuICAgICAgLy8gfVxyXG4gICAgICAvLyBlbHNlIHtcclxuICAgICAgLy8gICBsZXQgaW5wdXRDb250cm9scyA9IG1nRm9ybS5HZXRMaXN0T2ZJbnB1dENvbnRyb2xzKCk7XHJcbiAgICAgIC8vIC8vXHJcbiAgICAgIC8vIC8vICAgSlNCcmlkZ2UuSW5zdGFuY2UuT3BlblN1YkZvcm0odGhpcy5nZXRTdWJGb3JtQ3RybCgpLmdldE5hbWUoKSwgUGFyZW50Rm9ybS5nZXRUYXNrKCkuZ2V0VGFza1RhZygpLCBnZXRQcm9wKFByb3BJbnRlcmZhY2UuUFJPUF9UWVBFX0ZPUk1fTkFNRSkuZ2V0VmFsdWUoKSwgX3Rhc2suZ2V0VGFza1RhZygpLCBpbnB1dENvbnRyb2xzKTtcclxuICAgICAgLy8gLy8gfVxyXG4gICAgICAvLyB9XHJcblxyXG4gICAgICBtZ0Zvcm0uT3BlbmVkID0gdHJ1ZTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IFBlcmZvcm1zIGZpcnN0IHJlZnJlc2ggZm9yIHRoZSB0YWJsZSBjb250cm9sIDwvc3VtbWFyeT5cclxuICBzdGF0aWMgYXN5bmMgRG9GaXJzdFJlZnJlc2hUYWJsZShtZ0Zvcm06IE1nRm9ybUJhc2UpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChtZ0Zvcm0gIT09IG51bGwgJiYgIW1nRm9ybS5pZ25vcmVGaXJzdFJlZnJlc2hUYWJsZSkge1xyXG4gICAgICBtZ0Zvcm0uaWdub3JlRmlyc3RSZWZyZXNoVGFibGUgPSB0cnVlO1xyXG4gICAgICBhd2FpdCBtZ0Zvcm0uZmlyc3RUYWJsZVJlZnJlc2goKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGNsZWFuIHRoZSBzdGF0dXMgYmFyXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcInRhc2tcIj48L3BhcmFtPlxyXG4gIHN0YXRpYyBDbGVhbk1lc3NhZ2VQYW5lKHRhc2s6IEd1aVRhc2tCYXNlKTogdm9pZCB7XHJcbiAgICB0YXNrLldyaXRlVG9NZXNzYWdlUGFuZShNYW5hZ2VyLkdldEN1cnJlbnRSdW50aW1lQ29udGV4dCgpLkRlZmF1bHRTdGF0dXNNc2cpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBNZXNzYWdlIHN0cmluZyB0byBiZSBkaXNwbGF5ZWQgb24gc3RhdHVzIGJhciBvciBpbiBNZXNzYWdlIGJveFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJtc2dcIj4gaW5wdXQgbWVzc2FnZSBzdHJpbmcgPC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+IG91dHB1dCBtZXNzYWdlIHN0cmluZyA8L3JldHVybnM+XHJcbiAgc3RhdGljIEdldE1lc3NhZ2UobXNnOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKG1zZyA9PT0gbnVsbClcclxuICAgICAgbXNnID0gXCJcIjtcclxuICAgIGVsc2UgaWYgKG1zZy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBpZHhPZkNhcnJpYWdlOiBudW1iZXIgPSBtc2cuaW5kZXhPZihcIlxcclwiKTtcclxuICAgICAgaWYgKGlkeE9mQ2FycmlhZ2UgIT09IC0xKVxyXG4gICAgICAgIG1zZyA9IG1zZy5zdWJzdHIoMCwgaWR4T2ZDYXJyaWFnZSk7XHJcblxyXG4gICAgICBsZXQgaWR4T2ZOZXdMaW5lOiBudW1iZXIgPSBtc2cuaW5kZXhPZihcIlxcblwiKTtcclxuICAgICAgaWYgKGlkeE9mTmV3TGluZSAhPT0gLTEpXHJcbiAgICAgICAgbXNnID0gbXNnLnN1YnN0cigwLCBpZHhPZk5ld0xpbmUpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBtc2c7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBHZXRzIHRoZSBydW50aW1lIGNvbnRleHQgYmVsb25ncyB0byB0aGUgY3VycmVudCB0aHJlYWQuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+UnVudGltZUNvbnRleHRCYXNlPC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBHZXRDdXJyZW50UnVudGltZUNvbnRleHQoKTogUnVudGltZUNvbnRleHRCYXNlIHtcclxuICAgIHJldHVybiBFdmVudHMuR2V0UnVudGltZUNvbnRleHQoTWFuYWdlci5HZXRDdXJyZW50Q29udGV4dElEKCkpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyByZXR1cm4gU3BlY2lhbFZhbE5ld1BvbGljeVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBwdWJsaWMgc3RhdGljIEdldFNwZWNpYWxWYWxOZXdQb2xpY3koKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gR3VpRW52aXJvbm1lbnQuRW52aXJvbm1lbnQuR2V0U3BlY2lhbFZhbE5ld1BvbGljeSgpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUVudmlyb25tZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9lbnYvSUVudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbmNvZGluZyB9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4vLy8gZnVuY3Rpb25hbGl0eSByZXF1aXJlZCBieSB0aGUgR1VJIG5hbWVzcGFjZSBmcm9tIHRoZSBFbnZpcm9ubWVudCBjbGFzcy5cclxuLy8vIDwvc3VtbWFyeT5cclxuZXhwb3J0IGludGVyZmFjZSBJRW52aXJvbm1lbnQge1xyXG5cclxuICBMYW5ndWFnZTogc3RyaW5nO1xyXG5cclxuICBTcGVjaWFsTnVtcGFkUGx1c0NoYXI6IGJvb2xlYW47XHJcblxyXG4gIFNwZWNpYWxPbGRab3JkZXI6IGJvb2xlYW47XHJcblxyXG4gIFNwZWNpYWxSZXN0b3JlTWF4aW1pemVkRm9ybTogYm9vbGVhbjtcclxuXHJcbiAgU3BlY2lhbElnbm9yZUJHaW5Nb2RpZnk6IGJvb2xlYW47XHJcblxyXG4gIElnbm9yZVJlcGxhY2VEZWNpbWFsU2VwYXJhdG9yOiBib29sZWFuO1xyXG5cclxuICAvLyBpbnN0cnVjdCBob3cgdG8gcmVmZXIgYSBmb3J3YXJkIHNsYXNoIC0gZWl0aGVyIGFzIGEgcmVsYXRpdmUgd2ViIHVybCwgb3IgYXMgYSBmaWxlIGluIHRoZSBmaWxlIHN5c3RlbS5cclxuICBGb3J3YXJkU2xhc2hVc2FnZTogc3RyaW5nO1xyXG5cclxuICBHZXREYXRlTW9kZShjb21wSWR4OiBudW1iZXIpOiBzdHJpbmc7XHJcblxyXG4gIEdldENlbnR1cnkoY29tcElkeDogbnVtYmVyKTogbnVtYmVyO1xyXG5cclxuICBHZXREYXRlKCk6IHN0cmluZztcclxuXHJcbiAgR2V0VGltZSgpOiBzdHJpbmc7XHJcblxyXG4gIEdldERlY2ltYWwoKTogc3RyaW5nO1xyXG5cclxuICBDYW5SZXBsYWNlRGVjaW1hbFNlcGFyYXRvcigpOiBib29sZWFuO1xyXG5cclxuICBHZXRUaG91c2FuZHMoKTogc3RyaW5nO1xyXG5cclxuICBHZXREZWZhdWx0Q29sb3IoKTogbnVtYmVyO1xyXG5cclxuICBHZXREZWZhdWx0Rm9jdXNDb2xvcigpOiBudW1iZXI7XHJcblxyXG4gIEdldFRvb2x0aXBUaW1lb3V0KCk6IG51bWJlcjtcclxuXHJcbiAgR2V0U3BlY2lhbEVkaXRMZWZ0QWxpZ24oKTogYm9vbGVhbjtcclxuXHJcbiAgR2V0R1VJRCgpOiBzdHJpbmc7XHJcblxyXG4gIEdldENvbnRyb2xzUGVyc2lzdGVuY3lQYXRoKCk6IHN0cmluZztcclxuXHJcbiAgR2V0SW1lQXV0b09mZigpOiBib29sZWFuO1xyXG5cclxuICBHZXRMb2NhbEFzNDAwU2V0KCk6IGJvb2xlYW47XHJcblxyXG4gIHNldERlY2ltYWxTZXBhcmF0b3IodmFsdWU6IHN0cmluZykgOiB2b2lkO1xyXG5cclxuICBzZXRUaG91c2FuZHNTZXBhcmF0b3IodmFsdWU6IHN0cmluZykgOiB2b2lkO1xyXG5cclxuICBHZXRMb2NhbEZsYWcoZjogc3RyaW5nKTogYm9vbGVhbjtcclxuXHJcbiAgR2V0U2lnbmlmaWNhbnROdW1TaXplKCk6IG51bWJlcjtcclxuXHJcbiAgR2V0RGVidWdMZXZlbCgpOiBudW1iZXI7XHJcblxyXG4gIEdldEVuY29kaW5nKCk6IEVuY29kaW5nO1xyXG5cclxuICBHZXREcm9wVXNlckZvcm1hdHMoKTogc3RyaW5nO1xyXG5cclxuICBHZXRTcGVjaWFsRW5nTG9nb24oKTogYm9vbGVhbjtcclxuXHJcbiAgR2V0U3BlY2lhbElnbm9yZUJ1dHRvbkZvcm1hdCgpOiBib29sZWFuO1xyXG5cclxuICBHZXRTcGVjaWFsU3dmQ29udHJvbE5hbWVQcm9wZXJ0eSgpOiBib29sZWFuO1xyXG5cclxuICBHZXRTcGVjaWFsTG9nSW50ZXJuYWxFeGNlcHRpb25zKCk6IGJvb2xlYW47XHJcblxyXG4gIEdldFNwZWNpYWxUZXh0U2l6ZUZhY3RvcmluZygpOiBib29sZWFuO1xyXG5cclxuICBHZXRTcGVjaWFsRmxhdEVkaXRPbkNsYXNzaWNUaGVtZSgpOiBib29sZWFuO1xyXG5cclxuICBHZXRTcGVjaWFsRGlzYWJsZU1vdXNlV2hlZWwoKTogYm9vbGVhbjtcclxuXHJcbiAgZ2V0Q29udGV4dEluYWN0aXZpdHlUaW1lb3V0KCk6IG51bWJlcjtcclxuXHJcbiAgZ2V0Q2xpZW50Q29udGV4dEluYWN0aXZpdHlUaW1lb3V0KCk6IG51bWJlcjtcclxuXHJcbiAgZ2V0Q29udGV4dEluYWN0aXZpdHlXYXJuaW5nVGltZSgpOiBudW1iZXI7XHJcblxyXG4gIGdldElkbGVUaW1lKGNvbXBJZHg6IG51bWJlcik6IG51bWJlcjtcclxuXHJcbiAgR2V0U3BlY2lhbFZhbE5ld1BvbGljeSgpOiBib29sZWFuO1xyXG4gIEdldFNwZWNpYWxDYW5jZWxPbkNyZWF0ZSgpOiBib29sZWFuO1xyXG59XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUVudmlyb25tZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9lbnYvSUVudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbmNvZGluZyB9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4vLy8gZnVuY3Rpb25hbGl0eSByZXF1aXJlZCBieSB0aGUgR1VJIG5hbWVzcGFjZSBmcm9tIHRoZSBFbnZpcm9ubWVudCBjbGFzcy5cclxuLy8vIDwvc3VtbWFyeT5cclxuZXhwb3J0IGludGVyZmFjZSBJRW52aXJvbm1lbnQge1xyXG5cclxuICBMYW5ndWFnZTogc3RyaW5nO1xyXG5cclxuXHJcbiAgSWdub3JlUmVwbGFjZURlY2ltYWxTZXBhcmF0b3I6IGJvb2xlYW47XHJcblxyXG4gIC8vIGluc3RydWN0IGhvdyB0byByZWZlciBhIGZvcndhcmQgc2xhc2ggLSBlaXRoZXIgYXMgYSByZWxhdGl2ZSB3ZWIgdXJsLCBvciBhcyBhIGZpbGUgaW4gdGhlIGZpbGUgc3lzdGVtLlxyXG4gIEZvcndhcmRTbGFzaFVzYWdlOiBzdHJpbmc7XHJcblxyXG4gIEdldERhdGVNb2RlKGNvbXBJZHg6IG51bWJlcik6IHN0cmluZztcclxuXHJcbiAgR2V0Q2VudHVyeShjb21wSWR4OiBudW1iZXIpOiBudW1iZXI7XHJcblxyXG4gIEdldERhdGUoKTogc3RyaW5nO1xyXG5cclxuICBHZXRUaW1lKCk6IHN0cmluZztcclxuXHJcbiAgR2V0RGVjaW1hbCgpOiBzdHJpbmc7XHJcblxyXG4gIENhblJlcGxhY2VEZWNpbWFsU2VwYXJhdG9yKCk6IGJvb2xlYW47XHJcblxyXG4gIEdldFRob3VzYW5kcygpOiBzdHJpbmc7XHJcblxyXG4gIEdldFRvb2x0aXBUaW1lb3V0KCk6IG51bWJlcjtcclxuXHJcblxyXG4gIEdldEdVSUQoKTogc3RyaW5nO1xyXG5cclxuXHJcbiAgR2V0SW1lQXV0b09mZigpOiBib29sZWFuO1xyXG5cclxuICBHZXRMb2NhbEFzNDAwU2V0KCk6IGJvb2xlYW47XHJcblxyXG4gIHNldERlY2ltYWxTZXBhcmF0b3IodmFsdWU6IHN0cmluZykgOiB2b2lkO1xyXG5cclxuICBzZXRUaG91c2FuZHNTZXBhcmF0b3IodmFsdWU6IHN0cmluZykgOiB2b2lkO1xyXG5cclxuICBHZXRMb2NhbEZsYWcoZjogc3RyaW5nKTogYm9vbGVhbjtcclxuXHJcbiAgR2V0U2lnbmlmaWNhbnROdW1TaXplKCk6IG51bWJlcjtcclxuXHJcbiAgR2V0RGVidWdMZXZlbCgpOiBudW1iZXI7XHJcblxyXG4gIEdldEVuY29kaW5nKCk6IEVuY29kaW5nO1xyXG5cclxuICBHZXREcm9wVXNlckZvcm1hdHMoKTogc3RyaW5nO1xyXG5cclxuXHJcbiAgR2V0U3BlY2lhbExvZ0ludGVybmFsRXhjZXB0aW9ucygpOiBib29sZWFuO1xyXG5cclxuXHJcbiAgZ2V0Q29udGV4dEluYWN0aXZpdHlUaW1lb3V0KCk6IG51bWJlcjtcclxuXHJcbiAgZ2V0Q2xpZW50Q29udGV4dEluYWN0aXZpdHlUaW1lb3V0KCk6IG51bWJlcjtcclxuXHJcbiAgZ2V0Q29udGV4dEluYWN0aXZpdHlXYXJuaW5nVGltZSgpOiBudW1iZXI7XHJcblxyXG4gIGdldElkbGVUaW1lKGNvbXBJZHg6IG51bWJlcik6IG51bWJlcjtcclxuXHJcbiAgR2V0U3BlY2lhbFZhbE5ld1BvbGljeSgpOiBib29sZWFuO1xyXG4gIEdldFNwZWNpYWxDYW5jZWxPbkNyZWF0ZSgpOiBib29sZWFuO1xyXG59XHJcbiJdfQ==
@@ -1,17 +1,13 @@
1
- import { CheckboxMainStyle, CtrlButtonTypeGui, MgControlType, RbAppearance } from "@magic-xpa/utils";
1
+ import { CtrlButtonTypeGui, MgControlType } from "@magic-xpa/utils";
2
2
  import { Debug, Int32 } from "@magic-xpa/mscorelib";
3
3
  import { ControlBase } from "./ControlBase";
4
4
  export class GuiMgControl extends ControlBase {
5
5
  constructor() {
6
6
  super(...arguments);
7
7
  this._type = MgControlType.CTRL_TYPE_NONE;
8
- this.ForceRefreshPropertyWidth = false;
9
- this.ForceRefreshPropertyHight = false;
10
8
  this.ButtonStyle = CtrlButtonTypeGui.None;
11
9
  this.IsRepeatable = false;
12
10
  this.Layer = 0;
13
- this.CheckBoxMainStyle = CheckboxMainStyle.None;
14
- this.RadioButtonAppearance = RbAppearance.None;
15
11
  this.Name = null;
16
12
  this.GuiMgForm = null;
17
13
  }
@@ -63,9 +59,6 @@ export class GuiMgControl extends ControlBase {
63
59
  isTabControl() {
64
60
  return this._type === MgControlType.CTRL_TYPE_TAB;
65
61
  }
66
- isLineControl() {
67
- return this._type === MgControlType.CTRL_TYPE_LINE;
68
- }
69
62
  isTextControl() {
70
63
  return this._type === MgControlType.CTRL_TYPE_TEXT;
71
64
  }
@@ -96,9 +89,6 @@ export class GuiMgControl extends ControlBase {
96
89
  isSelectionCtrl() {
97
90
  return this._type === MgControlType.CTRL_TYPE_COMBO || this._type === MgControlType.CTRL_TYPE_LIST;
98
91
  }
99
- isBrowserControl() {
100
- return this._type === MgControlType.CTRL_TYPE_BROWSER;
101
- }
102
92
  isCheckBox() {
103
93
  return this._type === MgControlType.CTRL_TYPE_CHECKBOX;
104
94
  }
@@ -117,20 +107,6 @@ export class GuiMgControl extends ControlBase {
117
107
  }
118
108
  return val;
119
109
  }
120
- isContainer() {
121
- switch (this._type) {
122
- case MgControlType.CTRL_TYPE_TAB:
123
- case MgControlType.CTRL_TYPE_TABLE:
124
- case MgControlType.CTRL_TYPE_GROUP:
125
- case MgControlType.CTRL_TYPE_CONTAINER:
126
- return true;
127
- default:
128
- return false;
129
- }
130
- }
131
- SupportGradient() {
132
- return this.isButton() || this.isLabel() || this.isTabControl() || this.isGroup() || this.IsCheckBoxMainStyleButton() || this.IsRadioAppearanceButton();
133
- }
134
110
  IsImageButton() {
135
111
  let result = false;
136
112
  if (this.isButton()) {
@@ -138,13 +114,6 @@ export class GuiMgControl extends ControlBase {
138
114
  }
139
115
  return result;
140
116
  }
141
- IsButtonPushButton() {
142
- let result = false;
143
- if (this.isButton()) {
144
- result = (this.ButtonStyle === CtrlButtonTypeGui.Push);
145
- }
146
- return result;
147
- }
148
117
  IsHyperTextButton() {
149
118
  let result = false;
150
119
  if (this.isButton()) {
@@ -152,88 +121,5 @@ export class GuiMgControl extends ControlBase {
152
121
  }
153
122
  return result;
154
123
  }
155
- IsCheckBoxMainStyleButton() {
156
- let result = false;
157
- if (this.isCheckBox()) {
158
- result = (this.CheckBoxMainStyle === CheckboxMainStyle.Button);
159
- }
160
- return result;
161
- }
162
- IsRadioAppearanceButton() {
163
- let result = false;
164
- if (this.isRadio()) {
165
- result = (this.RadioButtonAppearance === RbAppearance.Button);
166
- }
167
- return result;
168
- }
169
- getControlTypeName() {
170
- let result = null;
171
- switch (this._type) {
172
- case MgControlType.CTRL_TYPE_STATUS_BAR:
173
- result = "Status bar";
174
- break;
175
- case MgControlType.CTRL_TYPE_SB_LABEL:
176
- result = "Status bar label";
177
- break;
178
- case MgControlType.CTRL_TYPE_SB_IMAGE:
179
- result = "Status bar image";
180
- break;
181
- case MgControlType.CTRL_TYPE_TABLE:
182
- result = "Table";
183
- break;
184
- case MgControlType.CTRL_TYPE_BUTTON:
185
- result = "Button";
186
- break;
187
- case MgControlType.CTRL_TYPE_CHECKBOX:
188
- result = "Checkbox";
189
- break;
190
- case MgControlType.CTRL_TYPE_COMBO:
191
- result = "Combo";
192
- break;
193
- case MgControlType.CTRL_TYPE_LIST:
194
- result = "List";
195
- break;
196
- case MgControlType.CTRL_TYPE_SUBFORM:
197
- result = "Subform";
198
- break;
199
- case MgControlType.CTRL_TYPE_GROUP:
200
- result = "Groupbox";
201
- break;
202
- case MgControlType.CTRL_TYPE_IMAGE:
203
- result = "Image";
204
- break;
205
- case MgControlType.CTRL_TYPE_TAB:
206
- result = "Tab";
207
- break;
208
- case MgControlType.CTRL_TYPE_COLUMN:
209
- result = "Column";
210
- break;
211
- case MgControlType.CTRL_TYPE_LABEL:
212
- result = "Label";
213
- break;
214
- case MgControlType.CTRL_TYPE_FRAME_SET:
215
- result = "Frame set";
216
- break;
217
- case MgControlType.CTRL_TYPE_CONTAINER:
218
- result = "Container";
219
- break;
220
- case MgControlType.CTRL_TYPE_RADIO:
221
- result = "Radio";
222
- break;
223
- case MgControlType.CTRL_TYPE_TEXT:
224
- result = "Text";
225
- break;
226
- case MgControlType.CTRL_TYPE_FRAME_FORM:
227
- result = "Frame form";
228
- break;
229
- case MgControlType.CTRL_TYPE_BROWSER:
230
- result = "Browser";
231
- break;
232
- case MgControlType.CTRL_TYPE_LINE:
233
- result = "Line";
234
- break;
235
- }
236
- return result;
237
- }
238
124
  }
239
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpTWdDb250cm9sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9ndWkvR3VpTWdDb250cm9sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDbkcsT0FBTyxFQUFDLEtBQUssRUFBRSxLQUFLLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVsRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRzFDLE1BQU0sT0FBZ0IsWUFBYSxTQUFRLFdBQVc7SUFBdEQ7O1FBQ1UsVUFBSyxHQUFrQixhQUFhLENBQUMsY0FBYyxDQUFDO1FBQzVELDhCQUF5QixHQUFZLEtBQUssQ0FBQztRQUMzQyw4QkFBeUIsR0FBWSxLQUFLLENBQUM7UUFrQjNDLGdCQUFXLEdBQXNCLGlCQUFpQixDQUFDLElBQUksQ0FBQztRQUN4RCxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQWE5QixVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLHNCQUFpQixHQUFzQixpQkFBaUIsQ0FBQyxJQUFJLENBQUM7UUFDOUQsMEJBQXFCLEdBQWlCLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDeEQsU0FBSSxHQUFXLElBQUksQ0FBQztRQUNwQixjQUFTLEdBQWMsSUFBSSxDQUFDO0lBMFU5QixDQUFDO0lBMVdDLElBQUksSUFBSSxDQUFDLEtBQW9CO1FBQzNCLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxhQUFhLENBQUMsY0FBYyxFQUFFO1lBQy9DLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1NBQ3BCO2FBQ0k7WUFDSCxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3JCO0lBQ0gsQ0FBQztJQUdELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFD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bmltcG9ydCB7Q2hlY2tib3hNYWluU3R5bGUsIEN0cmxCdXR0b25UeXBlR3VpLCBNZ0NvbnRyb2xUeXBlLCBSYkFwcGVhcmFuY2V9IGZyb20gXCJAbWFnaWMteHBhL3V0aWxzXCI7XHJcbmltcG9ydCB7RGVidWcsIEludDMyfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuaW1wb3J0IHtHdWlNZ0Zvcm19IGZyb20gXCIuL0d1aU1nRm9ybVwiO1xyXG5pbXBvcnQge0NvbnRyb2xCYXNlfSBmcm9tIFwiLi9Db250cm9sQmFzZVwiO1xyXG5cclxuXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBHdWlNZ0NvbnRyb2wgZXh0ZW5kcyBDb250cm9sQmFzZSB7XHJcbiAgcHJpdmF0ZSBfdHlwZTogTWdDb250cm9sVHlwZSA9IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX05PTkU7XHJcbiAgRm9yY2VSZWZyZXNoUHJvcGVydHlXaWR0aDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEZvcmNlUmVmcmVzaFByb3BlcnR5SGlnaHQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHVibGljIENvbm5lY3RlZENvbnRyb2w6IEd1aU1nQ29udHJvbDtcclxuXHJcbiAgc2V0IFR5cGUodmFsdWU6IE1nQ29udHJvbFR5cGUpIHtcclxuICAgIGlmICh0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9OT05FKSB7XHJcbiAgICAgIHRoaXMuX3R5cGUgPSB2YWx1ZTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBEZWJ1Zy5Bc3NlcnQoZmFsc2UpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIGdldCBUeXBlKCk6IE1nQ29udHJvbFR5cGUge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGU7XHJcbiAgfVxyXG5cclxuICBCdXR0b25TdHlsZTogQ3RybEJ1dHRvblR5cGVHdWkgPSBDdHJsQnV0dG9uVHlwZUd1aS5Ob25lO1xyXG4gIElzUmVwZWF0YWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBnZXQgSXNUYWJsZUNoaWxkKCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IHBhcmVudDogR3VpTWdDb250cm9sID0gKCh0aGlzLmdldFBhcmVudCgpIGluc3RhbmNlb2YgR3VpTWdDb250cm9sKSA/IDxHdWlNZ0NvbnRyb2w+dGhpcy5nZXRQYXJlbnQoKSA6IG51bGwpO1xyXG4gICAgbGV0IHBhcmVudElzVGFibGU6IGJvb2xlYW4gPSBwYXJlbnQgIT09IG51bGwgJiYgcGFyZW50LmlzVGFibGVDb250cm9sKCk7XHJcbiAgICByZXR1cm4gcGFyZW50SXNUYWJsZSAmJiAhdGhpcy5pc0NvbHVtbkNvbnRyb2woKTtcclxuICB9XHJcblxyXG5cclxuICBnZXQgSXNUYWJsZUhlYWRlckNoaWxkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICF0aGlzLklzUmVwZWF0YWJsZSAmJiB0aGlzLklzVGFibGVDaGlsZDtcclxuICB9XHJcblxyXG4gIExheWVyOiBudW1iZXIgPSAwO1xyXG4gIENoZWNrQm94TWFpblN0eWxlOiBDaGVja2JveE1haW5TdHlsZSA9IENoZWNrYm94TWFpblN0eWxlLk5vbmU7XHJcbiAgUmFkaW9CdXR0b25BcHBlYXJhbmNlOiBSYkFwcGVhcmFuY2UgPSBSYkFwcGVhcmFuY2UuTm9uZTtcclxuICBOYW1lOiBzdHJpbmcgPSBudWxsO1xyXG4gIEd1aU1nRm9ybTogR3VpTWdGb3JtID0gbnVsbDtcclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBnZXQgdGhlIG5hbWUgb2YgdGhlIENvbnRyb2wgd2l0aCB0aGUgbGluZSBudW1iZXIgZm9yIHJlcGVhdGFibGUgY29udHJvbHNcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGdldE5hbWUobGluZTogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGxldCByZXN1bHQ6IHN0cmluZztcclxuICAgIGlmICh0aGlzLklzUmVwZWF0YWJsZSkge1xyXG4gICAgICBpZiAobGluZSA+IEludDMyLk1pblZhbHVlKSB7XHJcbiAgICAgICAgcmVzdWx0ID0gdGhpcy5OYW1lICsgXCJfXCIgKyBsaW5lO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIC8vIGVsc2UgdGhlcmUgaXMgbm8gY3VycmVudCByb3csIHlldCAocGFyc2luZyB0aW1lIGZvciBleGFtcGxlKS4gVHJ5IGZpcnN0IHJvdy5cclxuICAgICAgICByZXN1bHQgPSB0aGlzLk5hbWUgKyBcIl8wXCI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXN1bHQgPSB0aGlzLk5hbWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgYWJzdHJhY3QgZ2V0UGFyZW50KCk6IGFueTtcclxuXHJcbiAgYWJzdHJhY3QgZ2V0IFRhc2tUYWcoKTogc3RyaW5nO1xyXG5cclxuICBnZXQgVW5pcXVlTmFtZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuTmFtZTtcclxuICB9XHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoaXMgY29udHJvbCBpcyBhIHN0YXRpYyBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBpc1N0YXRpYygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9MQUJFTCB8fCB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9HUk9VUCB8fCB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9UQUJMRSB8fFxyXG4gICAgICB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9DT0xVTU4gfHwgdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfU1RBVFVTX0JBUiB8fCB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9TQl9JTUFHRSB8fFxyXG4gICAgICB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9TQl9MQUJFTCB8fCB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9MSU5FO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm4gdHJ1ZSBmb3IgdGFibGUgY29udHJvbFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPlxyXG4gIC8vLyA8L3JldHVybnM+XHJcbiAgaXNUYWJsZUNvbnRyb2woKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfVEFCTEU7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJuIHRydWUgZm9yIHRhYiBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+XHJcbiAgLy8vIDwvcmV0dXJucz5cclxuICBpc1RhYkNvbnRyb2woKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfVEFCO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybiB0cnVlIGZvciBsaW5lIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz5cclxuICAvLy8gPC9yZXR1cm5zPlxyXG4gIGlzTGluZUNvbnRyb2woKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfTElORTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm4gdGV4dCBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+XHJcbiAgLy8vIDwvcmV0dXJucz5cclxuICBpc1RleHRDb250cm9sKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1RFWFQ7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJuIHRydWUgZm9yIGltYWdlIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgaXNJbWFnZUNvbnRyb2woKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfSU1BR0U7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoaXMgY29udHJvbCBpcyBhIHN1YiBmb3JtIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzU3ViZm9ybSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9TVUJGT1JNO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBzdWIgZm9ybSBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBpc1JhZGlvKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1JBRElPO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBDb21ib0JveCBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBpc0NvbWJvQm94KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0NPTUJPO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBMaXN0Qm94IGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzTGlzdEJveCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9MSVNUO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBpc0J1dHRvbiBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBpc0J1dHRvbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9CVVRUT047XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoaXMgY29udHJvbCBpcyBhIGxhYmVsIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzTGFiZWwoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfTEFCRUw7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoaXMgY29udHJvbCBpcyBhIEdyb3VwIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzR3JvdXAoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfR1JPVVA7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoZSBjb250cm9sIGlzIGVpdGhlciBjb21ibyBvciBsaXN0XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+XHJcbiAgLy8vIDwvcmV0dXJucz5cclxuICBpc1NlbGVjdGlvbkN0cmwoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfQ09NQk8gfHwgdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfTElTVDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm4gdHJ1ZSBmb3IgYnJvd3NlciBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+PC9yZXR1cm5zPlxyXG4gIGlzQnJvd3NlckNvbnRyb2woKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfQlJPV1NFUjtcclxuICB9XHJcblxyXG4gIGlzQ2hlY2tCb3goKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfQ0hFQ0tCT1g7XHJcbiAgfVxyXG5cclxuICBpc0NvbHVtbkNvbnRyb2woKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfQ09MVU1OO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29udHJvbCBpcyBhIGNob2ljZSBjb250cm9sOiBDVFJMX1RZUEVfVEFCLCBDVFJMX1RZUEVfQ09NQk8sIENUUkxfVFlQRV9MSVNULFxyXG4gIC8vLyAgIENUUkxfVFlQRV9SQURJT1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBpc0Nob2ljZUNvbnRyb2woKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgdmFsOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBzd2l0Y2ggKHRoaXMuX3R5cGUpIHtcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9UQUI6XHJcbiAgICAgIGNhc2UgTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfQ09NQk86XHJcbiAgICAgIGNhc2UgTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfTElTVDpcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9SQURJTzpcclxuICAgICAgICB2YWwgPSB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHZhbDtcclxuICB9XHJcblxyXG4gIGlzQ29udGFpbmVyKCk6IGJvb2xlYW4ge1xyXG4gICAgc3dpdGNoICh0aGlzLl90eXBlKSB7XHJcbiAgICAgIGNhc2UgTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfVEFCOlxyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1RBQkxFOlxyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0dST1VQOlxyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0NPTlRBSU5FUjpcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoaXMgY29udHJvbCBpcyBzdXBwb3J0IGdyYWRpZW50XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBTdXBwb3J0R3JhZGllbnQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pc0J1dHRvbigpIHx8IHRoaXMuaXNMYWJlbCgpIHx8IHRoaXMuaXNUYWJDb250cm9sKCkgfHwgdGhpcy5pc0dyb3VwKCkgfHwgdGhpcy5Jc0NoZWNrQm94TWFpblN0eWxlQnV0dG9uKCkgfHwgdGhpcy5Jc1JhZGlvQXBwZWFyYW5jZUJ1dHRvbigpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybiBUUlVFIGlmIHRoZSBjb250cm9sIGlzIGJ1dHRvbiBhbmQgaGlzIHN0eWxlIGlzIHRleHQgb24gaW1hZ2VcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgSXNJbWFnZUJ1dHRvbigpOiBib29sZWFuIHtcclxuICAgIGxldCByZXN1bHQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGlmICh0aGlzLmlzQnV0dG9uKCkpIHtcclxuICAgICAgcmVzdWx0ID0gKHRoaXMuQnV0dG9uU3R5bGUgPT09IEN0cmxCdXR0b25UeXBlR3VpLkltYWdlKTtcclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJuIFRSVUUgaWYgdGhlIGNvbnRyb2wgaXMgYnV0dG9uIGFuZCBoaXMgc3R5bGUgaXMgIHB1c2ggYnV0dG9uXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+PC9yZXR1cm5zPlxyXG4gIElzQnV0dG9uUHVzaEJ1dHRvbigpOiBib29sZWFuIHtcclxuICAgIGxldCByZXN1bHQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGlmICh0aGlzLmlzQnV0dG9uKCkpIHtcclxuICAgICAgcmVzdWx0ID0gKHRoaXMuQnV0dG9uU3R5bGUgPT09IEN0cmxCdXR0b25UeXBlR3VpLlB1c2gpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm4gVFJVRSBpZiB0aGUgY29udHJvbCBpcyBidXR0b24gYW5kIGhpcyBzdHlsZSBpcyBIeXBlciBUZXh0XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+PC9yZXR1cm5zPlxyXG4gIElzSHlwZXJUZXh0QnV0dG9uKCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IHJlc3VsdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgaWYgKHRoaXMuaXNCdXR0b24oKSkge1xyXG4gICAgICByZXN1bHQgPSAodGhpcy5CdXR0b25TdHlsZSA9PT0gQ3RybEJ1dHRvblR5cGVHdWkuSHlwZXJ0ZXh0KTtcclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyBUUlVFIGlmIHRoZSAgbWFpbiBzdHlsZSBvZiBhIGNoZWNrIGJveCBpcyBCdXR0b25cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgSXNDaGVja0JveE1haW5TdHlsZUJ1dHRvbigpOiBib29sZWFuIHtcclxuICAgIGxldCByZXN1bHQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGlmICh0aGlzLmlzQ2hlY2tCb3goKSkge1xyXG4gICAgICByZXN1bHQgPSAodGhpcy5DaGVja0JveE1haW5TdHlsZSA9PT0gQ2hlY2tib3hNYWluU3R5bGUuQnV0dG9uKTtcclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV1cm4gVFJVRSBpZiB0aGUgIEFwcGVhcmFuY2Ugb2YgYSByYWRpbyBidXR0b24gaXMgQnV0dG9uXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+PC9yZXR1cm5zPlxyXG4gIElzUmFkaW9BcHBlYXJhbmNlQnV0dG9uKCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IHJlc3VsdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgaWYgKHRoaXMuaXNSYWRpbygpKSB7XHJcbiAgICAgIHJlc3VsdCA9ICh0aGlzLlJhZGlvQnV0dG9uQXBwZWFyYW5jZSA9PT0gUmJBcHBlYXJhbmNlLkJ1dHRvbik7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIEZ1bmN0aW9uIHJldHVybnMgdGhlIGNvbnRyb2x0eXBlIG5hbWUgd2hlbiBjb250cm9sIHR5cGUgY2hhcmFjdGVyIGlzIHBhc3NlZCB0byBpdC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz4gQ29udHJvbCB0eXBlIG5hbWU8L3JldHVybnM+XHJcbiAgZ2V0Q29udHJvbFR5cGVOYW1lKCk6IHN0cmluZyB7XHJcbiAgICBsZXQgcmVzdWx0OiBzdHJpbmcgPSBudWxsO1xyXG4gICAgc3dpdGNoICh0aGlzLl90eXBlKSB7XHJcbiAgICAgIGNhc2UgTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfU1RBVFVTX0JBUjpcclxuICAgICAgICByZXN1bHQgPSBcIlN0YXR1cyBiYXJcIjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9TQl9MQUJFTDpcclxuICAgICAgICByZXN1bHQgPSBcIlN0YXR1cyBiYXIgbGFiZWxcIjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9TQl9JTUFHRTpcclxuICAgICAgICByZXN1bHQgPSBcIlN0YXR1cyBiYXIgaW1hZ2VcIjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9UQUJMRTpcclxuICAgICAgICByZXN1bHQgPSBcIlRhYmxlXCI7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfQlVUVE9OOlxyXG4gICAgICAgIHJlc3VsdCA9IFwiQnV0dG9uXCI7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfQ0hFQ0tCT1g6XHJcbiAgICAgICAgcmVzdWx0ID0gXCJDaGVja2JveFwiO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0NPTUJPOlxyXG4gICAgICAgIHJlc3VsdCA9IFwiQ29tYm9cIjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9MSVNUOlxyXG4gICAgICAgIHJlc3VsdCA9IFwiTGlzdFwiO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1NVQkZPUk06XHJcbiAgICAgICAgcmVzdWx0ID0gXCJTdWJmb3JtXCI7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfR1JPVVA6XHJcbiAgICAgICAgcmVzdWx0ID0gXCJHcm91cGJveFwiO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0lNQUdFOlxyXG4gICAgICAgIHJlc3VsdCA9IFwiSW1hZ2VcIjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9UQUI6XHJcbiAgICAgICAgcmVzdWx0ID0gXCJUYWJcIjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9DT0xVTU46XHJcbiAgICAgICAgcmVzdWx0ID0gXCJDb2x1bW5cIjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9MQUJFTDpcclxuICAgICAgICByZXN1bHQgPSBcIkxhYmVsXCI7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfRlJBTUVfU0VUOlxyXG4gICAgICAgIHJlc3VsdCA9IFwiRnJhbWUgc2V0XCI7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfQ09OVEFJTkVSOlxyXG4gICAgICAgIHJlc3VsdCA9IFwiQ29udGFpbmVyXCI7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfUkFESU86XHJcbiAgICAgICAgcmVzdWx0ID0gXCJSYWRpb1wiO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1RFWFQ6XHJcbiAgICAgICAgcmVzdWx0ID0gXCJUZXh0XCI7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfRlJBTUVfRk9STTpcclxuICAgICAgICByZXN1bHQgPSBcIkZyYW1lIGZvcm1cIjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9CUk9XU0VSOlxyXG4gICAgICAgIHJlc3VsdCA9IFwiQnJvd3NlclwiO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0xJTkU6XHJcbiAgICAgICAgcmVzdWx0ID0gXCJMaW5lXCI7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxufVxyXG5cclxuIl19
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpTWdDb250cm9sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3VpL3NyYy9ndWkvR3VpTWdDb250cm9sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRSxPQUFPLEVBQUMsS0FBSyxFQUFFLEtBQUssRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRWxELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHMUMsTUFBTSxPQUFnQixZQUFhLFNBQVEsV0FBVztJQUF0RDs7UUFDVSxVQUFLLEdBQWtCLGFBQWEsQ0FBQyxjQUFjLENBQUM7UUFtQjVELGdCQUFXLEdBQXNCLGlCQUFpQixDQUFDLElBQUksQ0FBQztRQUN4RCxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQWE5QixVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBRWxCLFNBQUksR0FBVyxJQUFJLENBQUM7UUFDcEIsY0FBUyxHQUFjLElBQUksQ0FBQztJQWlNOUIsQ0FBQztJQWhPQyxJQUFJLElBQUksQ0FBQyxLQUFvQjtRQUMzQixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssYUFBYSxDQUFDLGNBQWMsRUFBRTtZQUMvQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztTQUNwQjthQUNJO1lBQ0gsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNyQjtJQUNILENBQUM7SUFHRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUtELElBQUksWUFBWTtRQUNkLElBQUksTUFBTSxHQUFpQixDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxZQUFZLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBZSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUks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SUFBSSxDQUFDLEtBQUssS0FBSyxhQUFhLENBQUMsY0FBYyxDQUFDO0lBQ3JHLENBQUM7SUFJRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQztJQUN6RCxDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxhQUFhLENBQUMsZ0JBQWdCLENBQUM7SUFDdkQsQ0FBQztJQU9ELGVBQWU7UUFDYixJQUFJLEdBQUcsR0FBWSxLQUFLLENBQUM7UUFDekIsUUFBUSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2xCLEtBQUssYUFBYSxDQUFDLGFBQWEsQ0FBQztZQUNqQyxLQUFLLGFBQWEsQ0FBQyxlQUFlLENBQUM7WUFDbkMsS0FBSyxhQUFhLENBQUMsY0FBYyxDQUFDO1lBQ2xDLEtBQUssYUFBYSxDQUFDLGVBQWU7Z0JBQ2hDLEdBQUcsR0FBRyxJQUFJLENBQUM7Z0JBQ1gsTUFBTTtTQUNUO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBUUQsYUFBYTtRQUNYLElBQUksTUFBTSxHQUFZLEtBQUssQ0FBQztRQUM1QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNuQixNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxLQUFLLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3pEO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQVFELGlCQUFpQjtRQUNmLElBQUksTUFBTSxHQUFZLEtBQUssQ0FBQztRQUM1QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNuQixNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxLQUFLLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzdEO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCB7Q3RybEJ1dHRvblR5cGVHdWksIE1nQ29udHJvbFR5cGV9IGZyb20gXCJAbWFnaWMteHBhL3V0aWxzXCI7XHJcbmltcG9ydCB7RGVidWcsIEludDMyfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuaW1wb3J0IHtHdWlNZ0Zvcm19IGZyb20gXCIuL0d1aU1nRm9ybVwiO1xyXG5pbXBvcnQge0NvbnRyb2xCYXNlfSBmcm9tIFwiLi9Db250cm9sQmFzZVwiO1xyXG5cclxuXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBHdWlNZ0NvbnRyb2wgZXh0ZW5kcyBDb250cm9sQmFzZSB7XHJcbiAgcHJpdmF0ZSBfdHlwZTogTWdDb250cm9sVHlwZSA9IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX05PTkU7XHJcblxyXG5cclxuICBwdWJsaWMgQ29ubmVjdGVkQ29udHJvbDogR3VpTWdDb250cm9sO1xyXG5cclxuICBzZXQgVHlwZSh2YWx1ZTogTWdDb250cm9sVHlwZSkge1xyXG4gICAgaWYgKHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX05PTkUpIHtcclxuICAgICAgdGhpcy5fdHlwZSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIERlYnVnLkFzc2VydChmYWxzZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0IFR5cGUoKTogTWdDb250cm9sVHlwZSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZTtcclxuICB9XHJcblxyXG4gIEJ1dHRvblN0eWxlOiBDdHJsQnV0dG9uVHlwZUd1aSA9IEN0cmxCdXR0b25UeXBlR3VpLk5vbmU7XHJcbiAgSXNSZXBlYXRhYmxlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGdldCBJc1RhYmxlQ2hpbGQoKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgcGFyZW50OiBHdWlNZ0NvbnRyb2wgPSAoKHRoaXMuZ2V0UGFyZW50KCkgaW5zdGFuY2VvZiBHdWlNZ0NvbnRyb2wpID8gPEd1aU1nQ29udHJvbD50aGlzLmdldFBhcmVudCgpIDogbnVsbCk7XHJcbiAgICBsZXQgcGFyZW50SXNUYWJsZTogYm9vbGVhbiA9IHBhcmVudCAhPT0gbnVsbCAmJiBwYXJlbnQuaXNUYWJsZUNvbnRyb2woKTtcclxuICAgIHJldHVybiBwYXJlbnRJc1RhYmxlICYmICF0aGlzLmlzQ29sdW1uQ29udHJvbCgpO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldCBJc1RhYmxlSGVhZGVyQ2hpbGQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIXRoaXMuSXNSZXBlYXRhYmxlICYmIHRoaXMuSXNUYWJsZUNoaWxkO1xyXG4gIH1cclxuXHJcbiAgTGF5ZXI6IG51bWJlciA9IDA7XHJcblxyXG4gIE5hbWU6IHN0cmluZyA9IG51bGw7XHJcbiAgR3VpTWdGb3JtOiBHdWlNZ0Zvcm0gPSBudWxsO1xyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGdldCB0aGUgbmFtZSBvZiB0aGUgQ29udHJvbCB3aXRoIHRoZSBsaW5lIG51bWJlciBmb3IgcmVwZWF0YWJsZSBjb250cm9sc1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgZ2V0TmFtZShsaW5lOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgbGV0IHJlc3VsdDogc3RyaW5nO1xyXG4gICAgaWYgKHRoaXMuSXNSZXBlYXRhYmxlKSB7XHJcbiAgICAgIGlmIChsaW5lID4gSW50MzIuTWluVmFsdWUpIHtcclxuICAgICAgICByZXN1bHQgPSB0aGlzLk5hbWUgKyBcIl9cIiArIGxpbmU7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgLy8gZWxzZSB0aGVyZSBpcyBubyBjdXJyZW50IHJvdywgeWV0IChwYXJzaW5nIHRpbWUgZm9yIGV4YW1wbGUpLiBUcnkgZmlyc3Qgcm93LlxyXG4gICAgICAgIHJlc3VsdCA9IHRoaXMuTmFtZSArIFwiXzBcIjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHJlc3VsdCA9IHRoaXMuTmFtZTtcclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICBhYnN0cmFjdCBnZXRQYXJlbnQoKTogYW55O1xyXG5cclxuICBhYnN0cmFjdCBnZXQgVGFza1RhZygpOiBzdHJpbmc7XHJcblxyXG4gIGdldCBVbmlxdWVOYW1lKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5OYW1lO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm5zIHRydWUgaWYgdGhpcyBjb250cm9sIGlzIGEgc3RhdGljIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzU3RhdGljKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0xBQkVMIHx8IHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0dST1VQIHx8IHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1RBQkxFIHx8XHJcbiAgICAgIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0NPTFVNTiB8fCB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9TVEFUVVNfQkFSIHx8IHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1NCX0lNQUdFIHx8XHJcbiAgICAgIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1NCX0xBQkVMIHx8IHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0xJTkU7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybiB0cnVlIGZvciB0YWJsZSBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+XHJcbiAgLy8vIDwvcmV0dXJucz5cclxuICBpc1RhYmxlQ29udHJvbCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9UQUJMRTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm4gdHJ1ZSBmb3IgdGFiIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz5cclxuICAvLy8gPC9yZXR1cm5zPlxyXG4gIGlzVGFiQ29udHJvbCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9UQUI7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm4gdGV4dCBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+XHJcbiAgLy8vIDwvcmV0dXJucz5cclxuICBpc1RleHRDb250cm9sKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1RFWFQ7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJuIHRydWUgZm9yIGltYWdlIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgaXNJbWFnZUNvbnRyb2woKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfSU1BR0U7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoaXMgY29udHJvbCBpcyBhIHN1YiBmb3JtIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzU3ViZm9ybSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9TVUJGT1JNO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBzdWIgZm9ybSBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBpc1JhZGlvKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1JBRElPO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBDb21ib0JveCBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBpc0NvbWJvQm94KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGUgPT09IE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX0NPTUJPO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBMaXN0Qm94IGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzTGlzdEJveCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9MSVNUO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNvbnRyb2wgaXMgYSBpc0J1dHRvbiBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBpc0J1dHRvbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9CVVRUT047XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoaXMgY29udHJvbCBpcyBhIGxhYmVsIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzTGFiZWwoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfTEFCRUw7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoaXMgY29udHJvbCBpcyBhIEdyb3VwIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGlzR3JvdXAoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfR1JPVVA7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoZSBjb250cm9sIGlzIGVpdGhlciBjb21ibyBvciBsaXN0XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+XHJcbiAgLy8vIDwvcmV0dXJucz5cclxuICBpc1NlbGVjdGlvbkN0cmwoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfQ09NQk8gfHwgdGhpcy5fdHlwZSA9PT0gTWdDb250cm9sVHlwZS5DVFJMX1RZUEVfTElTVDtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgaXNDaGVja0JveCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9DSEVDS0JPWDtcclxuICB9XHJcblxyXG4gIGlzQ29sdW1uQ29udHJvbCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90eXBlID09PSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9DT0xVTU47XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgUmV0dXJucyB0cnVlIGlmIHRoZSBjb250cm9sIGlzIGEgY2hvaWNlIGNvbnRyb2w6IENUUkxfVFlQRV9UQUIsIENUUkxfVFlQRV9DT01CTywgQ1RSTF9UWVBFX0xJU1QsXHJcbiAgLy8vICAgQ1RSTF9UWVBFX1JBRElPXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+PC9yZXR1cm5zPlxyXG4gIGlzQ2hvaWNlQ29udHJvbCgpOiBib29sZWFuIHtcclxuICAgIGxldCB2YWw6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHN3aXRjaCAodGhpcy5fdHlwZSkge1xyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1RBQjpcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9DT01CTzpcclxuICAgICAgY2FzZSBNZ0NvbnRyb2xUeXBlLkNUUkxfVFlQRV9MSVNUOlxyXG4gICAgICBjYXNlIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1JBRElPOlxyXG4gICAgICAgIHZhbCA9IHRydWU7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmFsO1xyXG4gIH1cclxuXHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJuIFRSVUUgaWYgdGhlIGNvbnRyb2wgaXMgYnV0dG9uIGFuZCBoaXMgc3R5bGUgaXMgdGV4dCBvbiBpbWFnZVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBJc0ltYWdlQnV0dG9uKCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IHJlc3VsdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgaWYgKHRoaXMuaXNCdXR0b24oKSkge1xyXG4gICAgICByZXN1bHQgPSAodGhpcy5CdXR0b25TdHlsZSA9PT0gQ3RybEJ1dHRvblR5cGVHdWkuSW1hZ2UpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybiBUUlVFIGlmIHRoZSBjb250cm9sIGlzIGJ1dHRvbiBhbmQgaGlzIHN0eWxlIGlzIEh5cGVyIFRleHRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgSXNIeXBlclRleHRCdXR0b24oKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgcmVzdWx0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBpZiAodGhpcy5pc0J1dHRvbigpKSB7XHJcbiAgICAgIHJlc3VsdCA9ICh0aGlzLkJ1dHRvblN0eWxlID09PSBDdHJsQnV0dG9uVHlwZUd1aS5IeXBlcnRleHQpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG59XHJcblxyXG4iXX0=
@@ -1,12 +1,7 @@
1
- import { GuiInteractive } from "./GuiInteractive";
2
1
  export class DialogHandler {
3
- createDialog(parameters) {
4
- let guiInteractive = new GuiInteractive();
5
- guiInteractive.createDialog(this, parameters);
6
- }
7
2
  closeDialog() {
8
3
  }
9
4
  constructor() {
10
5
  }
11
6
  }
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlhbG9nSGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvZ3VpL2xvdy9EaWFsb2dIYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQU9oRCxNQUFNLE9BQU8sYUFBYTtJQUN4QixZQUFZLENBQUMsVUFBaUI7UUFFNUIsSUFBSSxjQUFjLEdBQW1CLElBQUksY0FBYyxFQUFFLENBQUM7UUFDMUQsY0FBYyxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUtELFdBQVc7SUFDWCxDQUFDO0lBRUQ7SUFDQSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0d1aUludGVyYWN0aXZlfSBmcm9tIFwiLi9HdWlJbnRlcmFjdGl2ZVwiO1xyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4vLy8gICBDcmVhdGVzIGRpYWxvZyBmb3IgcGFzc2VkIHR5cGUgb2Ygb2JqZWN0IGJ5IGNhbGxpbmcgb2JqZWN0cyBjb25zdHJ1Y3RvciBtYXRjaGluZyB0aGUgcGFyYW1ldGVyc1xyXG4vLy8gPC9zdW1tYXJ5PlxyXG4vLy8gPHBhcmFtIG5hbWUgPSBcIm9ialR5cGVcIj50eXBlIG9mIG9iamVjdCB3aG9zZSBjb25zdHJ1Y3RvciB0byBiZSBpbnZva2VkPC9wYXJhbT5cclxuLy8vIDxwYXJhbSBuYW1lID0gXCJwYXJhbWV0ZXJzXCI+cGFyYW1ldGVycyB0byBiZSBwYXNzZWQgdG8gb2JqZWN0cyBjb25zdHJ1Y3RvcjwvcGFyYW0+XHJcbmV4cG9ydCBjbGFzcyBEaWFsb2dIYW5kbGVyIHtcclxuICBjcmVhdGVEaWFsb2cocGFyYW1ldGVyczogYW55W10pOiB2b2lkIHtcclxuICAgIC8vIGFsd2F5cyBleGVjdXRlIGRpYWxvZyBjcmVhdGlvbiBjb2RlIGluIEdVSSB0aHJlYWRcclxuICAgIGxldCBndWlJbnRlcmFjdGl2ZTogR3VpSW50ZXJhY3RpdmUgPSBuZXcgR3VpSW50ZXJhY3RpdmUoKTtcclxuICAgIGd1aUludGVyYWN0aXZlLmNyZWF0ZURpYWxvZyh0aGlzLCBwYXJhbWV0ZXJzKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBkaXNwb3NlKGFuZCBjbG9zZSkgdGhlIGRpYWxvZ1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgY2xvc2VEaWFsb2coKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcbn1cclxuIl19
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlhbG9nSGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvZ3VpL2xvdy9EaWFsb2dIYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE1BQU0sT0FBTyxhQUFhO0lBTXhCLFdBQVc7SUFDWCxDQUFDO0lBRUQ7SUFDQSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuLy8vIDxzdW1tYXJ5PlxyXG4vLy8gICBDcmVhdGVzIGRpYWxvZyBmb3IgcGFzc2VkIHR5cGUgb2Ygb2JqZWN0IGJ5IGNhbGxpbmcgb2JqZWN0cyBjb25zdHJ1Y3RvciBtYXRjaGluZyB0aGUgcGFyYW1ldGVyc1xyXG4vLy8gPC9zdW1tYXJ5PlxyXG4vLy8gPHBhcmFtIG5hbWUgPSBcIm9ialR5cGVcIj50eXBlIG9mIG9iamVjdCB3aG9zZSBjb25zdHJ1Y3RvciB0byBiZSBpbnZva2VkPC9wYXJhbT5cclxuLy8vIDxwYXJhbSBuYW1lID0gXCJwYXJhbWV0ZXJzXCI+cGFyYW1ldGVycyB0byBiZSBwYXNzZWQgdG8gb2JqZWN0cyBjb25zdHJ1Y3RvcjwvcGFyYW0+XHJcbmV4cG9ydCBjbGFzcyBEaWFsb2dIYW5kbGVyIHtcclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBkaXNwb3NlKGFuZCBjbG9zZSkgdGhlIGRpYWxvZ1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgY2xvc2VEaWFsb2coKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcbn1cclxuIl19