@wavemaker/app-ng-runtime 11.5.2-rc.5436 → 11.5.3-next.141100

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 (87) hide show
  1. app-ng-runtime/build-task/bundles/index.umd.js +1 -8
  2. app-ng-runtime/build-task/esm2020/data/form/form.build.mjs +2 -9
  3. app-ng-runtime/build-task/fesm2015/index.mjs +1 -8
  4. app-ng-runtime/build-task/fesm2015/index.mjs.map +1 -1
  5. app-ng-runtime/build-task/fesm2020/index.mjs +1 -8
  6. app-ng-runtime/build-task/fesm2020/index.mjs.map +1 -1
  7. app-ng-runtime/components/base/bundles/index.umd.js +58 -23
  8. app-ng-runtime/components/base/esm2020/widgets/common/base/base-field-validations.mjs +9 -12
  9. app-ng-runtime/components/base/esm2020/widgets/common/base/base.component.mjs +39 -13
  10. app-ng-runtime/components/base/esm2020/widgets/common/lazy-load/lazy-load.directive.mjs +16 -3
  11. app-ng-runtime/components/base/fesm2015/index.mjs +60 -24
  12. app-ng-runtime/components/base/fesm2015/index.mjs.map +1 -1
  13. app-ng-runtime/components/base/fesm2020/index.mjs +60 -24
  14. app-ng-runtime/components/base/fesm2020/index.mjs.map +1 -1
  15. app-ng-runtime/components/base/widgets/common/base/base-field-validations.d.ts +0 -1
  16. app-ng-runtime/components/base/widgets/common/base/base.component.d.ts +1 -0
  17. app-ng-runtime/components/data/form/bundles/index.umd.js +1 -1
  18. app-ng-runtime/components/data/form/esm2020/form.component.mjs +2 -2
  19. app-ng-runtime/components/data/form/fesm2015/index.mjs +1 -1
  20. app-ng-runtime/components/data/form/fesm2015/index.mjs.map +1 -1
  21. app-ng-runtime/components/data/form/fesm2020/index.mjs +1 -1
  22. app-ng-runtime/components/data/form/fesm2020/index.mjs.map +1 -1
  23. app-ng-runtime/components/dialogs/design-dialog/bundles/index.umd.js +0 -1
  24. app-ng-runtime/components/dialogs/design-dialog/dialog.component.d.ts +0 -1
  25. app-ng-runtime/components/dialogs/design-dialog/esm2020/dialog.component.mjs +1 -2
  26. app-ng-runtime/components/dialogs/design-dialog/fesm2015/index.mjs +0 -1
  27. app-ng-runtime/components/dialogs/design-dialog/fesm2015/index.mjs.map +1 -1
  28. app-ng-runtime/components/dialogs/design-dialog/fesm2020/index.mjs +0 -1
  29. app-ng-runtime/components/dialogs/design-dialog/fesm2020/index.mjs.map +1 -1
  30. app-ng-runtime/components/input/default/bundles/index.umd.js +10 -18
  31. app-ng-runtime/components/input/default/esm2020/base-form-custom.component.mjs +2 -6
  32. app-ng-runtime/components/input/default/esm2020/select/select.component.mjs +1 -12
  33. app-ng-runtime/components/input/default/esm2020/text/locale/number-locale.mjs +10 -3
  34. app-ng-runtime/components/input/default/fesm2015/index.mjs +10 -18
  35. app-ng-runtime/components/input/default/fesm2015/index.mjs.map +1 -1
  36. app-ng-runtime/components/input/default/fesm2020/index.mjs +10 -18
  37. app-ng-runtime/components/input/default/fesm2020/index.mjs.map +1 -1
  38. app-ng-runtime/components/input/epoch/bundles/index.umd.js +11 -8
  39. app-ng-runtime/components/input/epoch/esm2020/base-date-time.component.mjs +5 -8
  40. app-ng-runtime/components/input/epoch/esm2020/date/date.component.mjs +8 -2
  41. app-ng-runtime/components/input/epoch/fesm2015/index.mjs +11 -8
  42. app-ng-runtime/components/input/epoch/fesm2015/index.mjs.map +1 -1
  43. app-ng-runtime/components/input/epoch/fesm2020/index.mjs +11 -8
  44. app-ng-runtime/components/input/epoch/fesm2020/index.mjs.map +1 -1
  45. app-ng-runtime/components/navigation/menu/bundles/index.umd.js +9 -12
  46. app-ng-runtime/components/navigation/menu/esm2020/menu-dropdown-item/menu-dropdown-item.component.mjs +5 -6
  47. app-ng-runtime/components/navigation/menu/esm2020/menu.component.mjs +5 -6
  48. app-ng-runtime/components/navigation/menu/esm2020/nav/nav.component.mjs +5 -6
  49. app-ng-runtime/components/navigation/menu/fesm2015/index.mjs +9 -12
  50. app-ng-runtime/components/navigation/menu/fesm2015/index.mjs.map +1 -1
  51. app-ng-runtime/components/navigation/menu/fesm2020/index.mjs +9 -12
  52. app-ng-runtime/components/navigation/menu/fesm2020/index.mjs.map +1 -1
  53. app-ng-runtime/components/navigation/menu/menu-dropdown-item/menu-dropdown-item.component.d.ts +3 -4
  54. app-ng-runtime/components/navigation/menu/menu.component.d.ts +3 -4
  55. app-ng-runtime/components/navigation/menu/nav/nav.component.d.ts +3 -4
  56. app-ng-runtime/core/bundles/index.umd.js +1 -43
  57. app-ng-runtime/core/esm2020/public_api.mjs +2 -2
  58. app-ng-runtime/core/esm2020/utils/dom.mjs +1 -6
  59. app-ng-runtime/core/esm2020/utils/utils.mjs +1 -35
  60. app-ng-runtime/core/esm2020/utils/watcher.mjs +2 -2
  61. app-ng-runtime/core/fesm2015/index.mjs +2 -43
  62. app-ng-runtime/core/fesm2015/index.mjs.map +1 -1
  63. app-ng-runtime/core/fesm2020/index.mjs +2 -43
  64. app-ng-runtime/core/fesm2020/index.mjs.map +1 -1
  65. app-ng-runtime/core/public_api.d.ts +1 -1
  66. app-ng-runtime/core/utils/utils.d.ts +0 -2
  67. app-ng-runtime/package.json +1 -1
  68. app-ng-runtime/runtime/base/bundles/index.umd.js +0 -4
  69. app-ng-runtime/runtime/base/esm2020/services/dynamic-component-ref-provider.service.mjs +1 -4
  70. app-ng-runtime/runtime/base/esm2020/util/fragment-monitor.mjs +1 -2
  71. app-ng-runtime/runtime/base/fesm2015/index.mjs +0 -4
  72. app-ng-runtime/runtime/base/fesm2015/index.mjs.map +1 -1
  73. app-ng-runtime/runtime/base/fesm2020/index.mjs +0 -4
  74. app-ng-runtime/runtime/base/fesm2020/index.mjs.map +1 -1
  75. app-ng-runtime/runtime/base/util/fragment-monitor.d.ts +0 -1
  76. app-ng-runtime/runtime/dynamic/bundles/index.umd.js +0 -1
  77. app-ng-runtime/runtime/dynamic/esm2020/app/services/component-ref-provider.service.mjs +1 -2
  78. app-ng-runtime/runtime/dynamic/fesm2015/index.mjs +0 -1
  79. app-ng-runtime/runtime/dynamic/fesm2015/index.mjs.map +1 -1
  80. app-ng-runtime/runtime/dynamic/fesm2020/index.mjs +0 -1
  81. app-ng-runtime/runtime/dynamic/fesm2020/index.mjs.map +1 -1
  82. app-ng-runtime/variables/bundles/index.umd.js +1 -2
  83. app-ng-runtime/variables/esm2020/service/variables.service.mjs +2 -3
  84. app-ng-runtime/variables/fesm2015/index.mjs +1 -2
  85. app-ng-runtime/variables/fesm2015/index.mjs.map +1 -1
  86. app-ng-runtime/variables/fesm2020/index.mjs +1 -2
  87. app-ng-runtime/variables/fesm2020/index.mjs.map +1 -1
@@ -58,7 +58,7 @@ const getUpdatedWatcInfo = (expr, acceptsArray, listener) => {
58
58
  };
59
59
  export const $watch = (expr, $scope, $locals, listener, identifier = watchIdGenerator.nextUid(), doNotClone = false, config = {}, isMuted) => {
60
60
  if (expr.indexOf('[$i]') !== -1) {
61
- let watchInfo = getUpdatedWatcInfo(expr, config && (config.arrayType || config.isList), listener);
61
+ let watchInfo = getUpdatedWatcInfo(expr, config && config.arrayType, listener);
62
62
  expr = watchInfo.expr;
63
63
  listener = watchInfo.listener;
64
64
  }
@@ -165,4 +165,4 @@ export const $appDigest = (() => {
165
165
  }
166
166
  };
167
167
  })();
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL3V0aWxzL3dhdGNoZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBSXRDLE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxFQUFlLENBQUM7QUFFeEMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUV0RCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7QUFFbkMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBRWhDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLGdCQUFnQixDQUFDO0FBRTdELElBQUksS0FBSyxHQUFHLEtBQUssQ0FBQztBQUNsQixJQUFJLE1BQU0sQ0FBQztBQUVYLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEVBQVksRUFBRSxPQUFlLEVBQUUsRUFBRSxFQUFFO0lBQ3hELElBQUksT0FBTyxDQUFDO0lBQ1osT0FBTyxDQUFDLEdBQUcsSUFBSSxFQUFFLEVBQUU7UUFDZixNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvQyxPQUFPLEdBQUcsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDM0UsQ0FBQyxDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLEdB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SSxDQUFDLEdBQUcsRUFBRTtvQkFDTixNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO29CQUNoQyxNQUFNLEdBQUcsS0FBSyxDQUFDO2dCQUNuQixDQUFDLENBQUMsQ0FBQzthQUNOO1NBQ0o7SUFDTCxDQUFDLENBQUM7QUFDTixDQUFDLENBQUMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSURHZW5lcmF0b3IgfSBmcm9tICcuL2lkLWdlbmVyYXRvcic7XG5cbmltcG9ydCB7ICRwYXJzZUV4cHIgfSBmcm9tICcuL2V4cHJlc3Npb24tcGFyc2VyJztcbmltcG9ydCB7IGZpbmRWYWx1ZU9mIH0gZnJvbSAnLi91dGlscyc7XG5cbmRlY2xhcmUgY29uc3QgXztcblxuY29uc3QgcmVnaXN0cnkgPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xuXG5jb25zdCB3YXRjaElkR2VuZXJhdG9yID0gbmV3IElER2VuZXJhdG9yKCd3YXRjaC1pZC0nKTtcblxuZXhwb3J0IGNvbnN0IEZJUlNUX1RJTUVfV0FUQ0ggPSB7fTtcblxuT2JqZWN0LmZyZWV6ZShGSVJTVF9USU1FX1dBVENIKTtcblxuZXhwb3J0IGNvbnN0IGlzRmlyc3RUaW1lQ2hhbmdlID0gdiA9PiB2ID09PSBGSVJTVF9USU1FX1dBVENIO1xuXG5sZXQgbXV0ZWQgPSBmYWxzZTtcbmxldCBhcHBSZWY7XG5cbmV4cG9ydCBjb25zdCBkZWJvdW5jZSA9IChmbjogRnVuY3Rpb24sIHdhaXQ6IG51bWJlciA9IDUwKSA9PiB7XG4gICAgbGV0IHRpbWVvdXQ7XG4gICAgcmV0dXJuICguLi5hcmdzKSA9PiB7XG4gICAgICAgIHdpbmRvd1snX196b25lX3N5bWJvbF9fY2xlYXJUaW1lb3V0J10odGltZW91dCk7XG4gICAgICAgIHRpbWVvdXQgPSB3aW5kb3dbJ19fem9uZV9zeW1ib2xfX3NldFRpbWVvdXQnXSgoKSA9PiBmbiguLi5hcmdzKSwgd2FpdCk7XG4gICAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBtdXRlV2F0Y2hlcnMgPSAoKSA9PiB7XG4gICAgbXV0ZWQgPSB0cnVlO1xufTtcblxuZXhwb3J0IGNvbnN0IHVuTXV0ZVdhdGNoZXJzID0gKCkgPT4ge1xuICAgIG11dGVkID0gZmFsc2U7XG4gICAgdHJpZ2dlcldhdGNoZXJzKCk7XG59O1xuXG5jb25zdCBhcnJheUNvbnN1bWVyID0gKGxpc3RlbmVyRm4sIHJlc3RFeHByLCBuZXdWYWwsIG9sZFZhbCkgPT4ge1xuICAgIGxldCBkYXRhID0gbmV3VmFsLFxuICAgICAgICBmb3JtYXR0ZWREYXRhO1xuXG4gICAgaWYgKF8uaXNBcnJheShkYXRhKSkge1xuICAgICAgICBmb3JtYXR0ZWREYXRhID0gZGF0YS5tYXAoZnVuY3Rpb24gKGRhdHVtKSB7XG4gICAgICAgICAgICByZXR1cm4gZmluZFZhbHVlT2YoZGF0dW0sIHJlc3RFeHByKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gSWYgcmVzdWx0aW5nIHN0cnVjdHVyZSBpcyBhbiBhcnJheSBvZiBhcnJheSwgZmxhdHRlbiBpdFxuICAgICAgICBpZiAoXy5pc0FycmF5KGZvcm1hdHRlZERhdGFbMF0pKSB7XG4gICAgICAgICAgICBmb3JtYXR0ZWREYXRhID0gXy5mbGF0dGVuKGZvcm1hdHRlZERhdGEpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGlzdGVuZXJGbihmb3JtYXR0ZWREYXRhLCBvbGRWYWwpO1xuICAgIH1cbn07XG5cbmNvbnN0IGdldFVwZGF0ZWRXYXRjSW5mbyA9IChleHByLCBhY2NlcHRzQXJyYXksIGxpc3RlbmVyKSA9PiB7XG4gICAgLy8gbGlzdGVuZXIgZG9lc24ndCBhY2NlcHQgYXJyYXlcbiAgICAvLyByZXBsYWNlIGFsbCBgWyRpXWAgd2l0aCBgWzBdYCBhbmQgcmV0dXJuIHRoZSBleHByZXNzaW9uXG4gICAgbGV0IHJlZ2V4ID0gL1xcW1xcJGlcXF0vZyxcbiAgICAgICAgJEkgICAgICAgICAgICAgICAgPSAnWyRpXScsXG4gICAgICAgICQwICAgICAgICAgICAgICAgID0gJ1swXSc7XG4gICAgaWYgKCFhY2NlcHRzQXJyYXkpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICdleHByJyAgICAgOiBleHByLnJlcGxhY2UocmVnZXgsICQwKSxcbiAgICAgICAgICAgICdsaXN0ZW5lcicgOiBsaXN0ZW5lclxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8vIGxpc3RlbmVyIGFjY2VwdHMgYXJyYXlcbiAgICAvLyByZXBsYWNlIGFsbCBleGNlcHQgdGhlIGxhc3QgYFskaV1gIHdpdGggYFswXWAgYW5kIHJldHVybiB0aGUgZXhwcmVzc2lvbi5cbiAgICB2YXIgaW5kZXggICAgICAgICAgID0gZXhwci5sYXN0SW5kZXhPZigkSSksXG4gICAgICAgIF9leHByICAgICAgICAgICA9IGV4cHIuc3Vic3RyKDAsIGluZGV4KS5yZXBsYWNlKCRJLCAkMCksXG4gICAgICAgIHJlc3RFeHByICAgICAgICA9IGV4cHIuc3Vic3RyKGluZGV4ICsgNSksXG4gICAgICAgIGFycmF5Q29uc3VtZXJGbiA9IGxpc3RlbmVyO1xuXG4gICAgaWYgKHJlc3RFeHByKSB7XG4gICAgICAgIGFycmF5Q29uc3VtZXJGbiA9IGFycmF5Q29uc3VtZXIuYmluZCh1bmRlZmluZWQsIGxpc3RlbmVyLCByZXN0RXhwcik7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgJ2V4cHInICAgICA6IF9leHByLFxuICAgICAgICAnbGlzdGVuZXInIDogYXJyYXlDb25zdW1lckZuXG4gICAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCAkd2F0Y2ggPSAoZXhwciwgJHNjb3BlLCAkbG9jYWxzLCBsaXN0ZW5lciwgaWRlbnRpZmllciA9IHdhdGNoSWRHZW5lcmF0b3IubmV4dFVpZCgpLCBkb05vdENsb25lID0gZmFsc2UsIGNvbmZpZzphbnk9e30sIGlzTXV0ZWQ/OiAoKSA9PiBib29sZWFuKSA9PiB7XG4gICAgaWYgKGV4cHIuaW5kZXhPZignWyRpXScpICE9PSAtMSkge1xuICAgICAgICBsZXQgd2F0Y2hJbmZvID0gZ2V0VXBkYXRlZFdhdGNJbmZvKGV4cHIsIGNvbmZpZyAmJiAoY29uZmlnLmFycmF5VHlwZSB8fCBjb25maWcuaXNMaXN0KSwgbGlzdGVuZXIpO1xuICAgICAgICBleHByID0gd2F0Y2hJbmZvLmV4cHI7XG4gICAgICAgIGxpc3RlbmVyID0gd2F0Y2hJbmZvLmxpc3RlbmVyO1xuICAgIH1cbiAgICBjb25zdCBmbiA9ICRwYXJzZUV4cHIoZXhwcik7XG5cbiAgICByZWdpc3RyeS5zZXQoaWRlbnRpZmllciwge1xuICAgICAgICBmbjogZm4uYmluZChleHByLCAkc2NvcGUsICRsb2NhbHMpLFxuICAgICAgICBsaXN0ZW5lcixcbiAgICAgICAgZXhwcixcbiAgICAgICAgbGFzdDogRklSU1RfVElNRV9XQVRDSCxcbiAgICAgICAgZG9Ob3RDbG9uZSxcbiAgICAgICAgaXNNdXRlZDogaXNNdXRlZFxuICAgIH0pO1xuXG4gICAgcmV0dXJuICgpID0+ICR1bndhdGNoKGlkZW50aWZpZXIpO1xufTtcblxuZXhwb3J0IGNvbnN0ICR1bndhdGNoID0gaWRlbnRpZmllciA9PiByZWdpc3RyeS5kZWxldGUoaWRlbnRpZmllcik7XG5cbmxldCBjaGFuZ2VkQnlXYXRjaCA9IGZhbHNlO1xuXG5jb25zdCAkUkFGID0gd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZTtcblxubGV0IG5nWm9uZTtcblxuY29uc3QgdHJpZ2dlcldhdGNoZXJzID0gKGlnbm9yZU11dGVkPzogYm9vbGVhbikgPT4ge1xuXG4gICAgaWYgKG11dGVkICYmICFpZ25vcmVNdXRlZCkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbGltaXQgPSA1O1xuICAgIGxldCBwYXNzID0gMTtcbiAgICBsZXQgY2hhbmdlRGV0ZWN0ZWQ7XG5cbiAgICBkbyB7XG4gICAgICAgIGNoYW5nZURldGVjdGVkID0gZmFsc2U7XG4gICAgICAgIHJlZ2lzdHJ5LmZvckVhY2god2F0Y2hJbmZvID0+IHtcbiAgICAgICAgICAgIGlmKHdhdGNoSW5mby5pc011dGVkICYmIHdhdGNoSW5mby5pc011dGVkKCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBmbiA9IHdhdGNoSW5mby5mbjtcbiAgICAgICAgICAgIGNvbnN0IGxpc3RlbmVyID0gd2F0Y2hJbmZvLmxpc3RlbmVyO1xuICAgICAgICAgICAgY29uc3Qgb3YgPSB3YXRjaEluZm8ubGFzdDtcbiAgICAgICAgICAgIGxldCBudjtcblxuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBudiA9IGZuKCk7XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS53YXJuKGBlcnJvciBpbiBleGVjdXRpbmcgZXhwcmVzc2lvbjogJyR7d2F0Y2hJbmZvLmV4cHJ9J2ApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIV8uaXNFcXVhbChudiwgb3YpKSB7XG4gICAgICAgICAgICAgICAgY2hhbmdlRGV0ZWN0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGNoYW5nZWRCeVdhdGNoID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB3YXRjaEluZm8ubGFzdCA9IG52O1xuXG4gICAgICAgICAgICAgICAgaWYgKF8uaXNPYmplY3QobnYpICYmICF3YXRjaEluZm8uZG9Ob3RDbG9uZSAmJiBudi5fX2Nsb25lYWJsZV9fICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgICAgICB3YXRjaEluZm8ubGFzdCA9IF8uY2xvbmUobnYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsaXN0ZW5lcihudiwgb3YpO1xuICAgICAgICAgICAgICAgIHJlc2V0Q2hhbmdlRnJvbVdhdGNoKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBwYXNzKys7XG5cbiAgICB9IHdoaWxlIChjaGFuZ2VEZXRlY3RlZCAmJiBwYXNzIDwgbGltaXQpO1xuXG4gICAgaWYgKGNoYW5nZURldGVjdGVkICYmIHBhc3MgPT09IGxpbWl0KSB7XG4gICAgICAgIGNvbnNvbGUud2FybihgTnVtYmVyIG9mIHdhdGNoIGN5Y2xlcyBnb25lIGFib3ZlIHNldCBsaW1pdCBvZjogJHtsaW1pdH0gYCk7XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHNldE5nWm9uZSA9IHpvbmUgPT4gbmdab25lID0gem9uZTtcblxuZXhwb3J0IGNvbnN0IHNldEFwcFJlZiA9IHJlZiA9PiB7XG4gICAgYXBwUmVmID0gcmVmXG59O1xuXG5leHBvcnQgY29uc3QgaXNDaGFuZ2VGcm9tV2F0Y2ggPSAoKSA9PiBjaGFuZ2VkQnlXYXRjaDtcbmV4cG9ydCBjb25zdCByZXNldENoYW5nZUZyb21XYXRjaCA9ICgpID0+IGNoYW5nZWRCeVdhdGNoID0gZmFsc2U7XG5cbig8YW55PndpbmRvdykud2F0Y2hSZWdpc3RyeSA9IHJlZ2lzdHJ5O1xuXG5sZXQgc2tpcFdhdGNoZXJzO1xuXG5jb25zdCBkZWJvdW5jZWRUcmlnZ2VyV2F0Y2hlcnMgPSBkZWJvdW5jZSgoKSA9PiB7XG4gICAgc2tpcFdhdGNoZXJzID0gdHJ1ZTtcbiAgICBuZ1pvbmUucnVuKCgpID0+IHRyaWdnZXJXYXRjaGVycygpKTtcbn0sIDEwMCk7XG5cbmV4cG9ydCBjb25zdCAkaW52b2tlV2F0Y2hlcnMgPSAoZm9yY2U/OiBib29sZWFuLCBpZ25vcmVNdXRlZD86IGJvb2xlYW4pID0+IHtcbiAgICBpZiAoZm9yY2UpIHtcbiAgICAgICAgdHJpZ2dlcldhdGNoZXJzKGlnbm9yZU11dGVkKTtcbiAgICB9IGVsc2Uge1xuXG4gICAgICAgIGlmIChza2lwV2F0Y2hlcnMpIHtcbiAgICAgICAgICAgIHNraXBXYXRjaGVycyA9IGZhbHNlO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGRlYm91bmNlZFRyaWdnZXJXYXRjaGVycygpO1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCAkYXBwRGlnZXN0ID0gKCgpID0+IHtcbiAgICBsZXQgcXVldWVkID0gZmFsc2U7XG4gICAgcmV0dXJuIChmb3JjZT86IGJvb2xlYW4pID0+IHtcbiAgICAgICAgaWYgKCFhcHBSZWYpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZm9yY2UpIHtcbiAgICAgICAgICAgIG5nWm9uZS5ydW4oKCkgPT4gYXBwUmVmLnRpY2soKSk7XG4gICAgICAgICAgICBxdWV1ZWQgPSBmYWxzZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChxdWV1ZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHF1ZXVlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgJFJBRigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIG5nWm9uZS5ydW4oKCkgPT4gYXBwUmVmLnRpY2soKSk7XG4gICAgICAgICAgICAgICAgICAgIHF1ZXVlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbn0pKCk7XG4iXX0=
168
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL3V0aWxzL3dhdGNoZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBSXRDLE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxFQUFlLENBQUM7QUFFeEMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUV0RCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7QUFFbkMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBRWhDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLGdCQUFnQixDQUFDO0FBRTdELElBQUksS0FBSyxHQUFHLEtBQUssQ0FBQztBQUNsQixJQUFJLE1BQU0sQ0FBQztBQUVYLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEVBQVksRUFBRSxPQUFlLEVBQUUsRUFBRSxFQUFFO0lBQ3hELElBQUksT0FBTyxDQUFDO0lBQ1osT0FBTyxDQUFDLEdBQUcsSUFBSSxFQUFFLEVBQUU7UUFDZixNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvQyxPQUFPLEdBQUcsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDM0UsQ0FBQyxDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLEdB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QUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO29CQUNoQyxNQUFNLEdBQUcsS0FBSyxDQUFDO2dCQUNuQixDQUFDLENBQUMsQ0FBQzthQUNOO1NBQ0o7SUFDTCxDQUFDLENBQUM7QUFDTixDQUFDLENBQUMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSURHZW5lcmF0b3IgfSBmcm9tICcuL2lkLWdlbmVyYXRvcic7XG5cbmltcG9ydCB7ICRwYXJzZUV4cHIgfSBmcm9tICcuL2V4cHJlc3Npb24tcGFyc2VyJztcbmltcG9ydCB7IGZpbmRWYWx1ZU9mIH0gZnJvbSAnLi91dGlscyc7XG5cbmRlY2xhcmUgY29uc3QgXztcblxuY29uc3QgcmVnaXN0cnkgPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xuXG5jb25zdCB3YXRjaElkR2VuZXJhdG9yID0gbmV3IElER2VuZXJhdG9yKCd3YXRjaC1pZC0nKTtcblxuZXhwb3J0IGNvbnN0IEZJUlNUX1RJTUVfV0FUQ0ggPSB7fTtcblxuT2JqZWN0LmZyZWV6ZShGSVJTVF9USU1FX1dBVENIKTtcblxuZXhwb3J0IGNvbnN0IGlzRmlyc3RUaW1lQ2hhbmdlID0gdiA9PiB2ID09PSBGSVJTVF9USU1FX1dBVENIO1xuXG5sZXQgbXV0ZWQgPSBmYWxzZTtcbmxldCBhcHBSZWY7XG5cbmV4cG9ydCBjb25zdCBkZWJvdW5jZSA9IChmbjogRnVuY3Rpb24sIHdhaXQ6IG51bWJlciA9IDUwKSA9PiB7XG4gICAgbGV0IHRpbWVvdXQ7XG4gICAgcmV0dXJuICguLi5hcmdzKSA9PiB7XG4gICAgICAgIHdpbmRvd1snX196b25lX3N5bWJvbF9fY2xlYXJUaW1lb3V0J10odGltZW91dCk7XG4gICAgICAgIHRpbWVvdXQgPSB3aW5kb3dbJ19fem9uZV9zeW1ib2xfX3NldFRpbWVvdXQnXSgoKSA9PiBmbiguLi5hcmdzKSwgd2FpdCk7XG4gICAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBtdXRlV2F0Y2hlcnMgPSAoKSA9PiB7XG4gICAgbXV0ZWQgPSB0cnVlO1xufTtcblxuZXhwb3J0IGNvbnN0IHVuTXV0ZVdhdGNoZXJzID0gKCkgPT4ge1xuICAgIG11dGVkID0gZmFsc2U7XG4gICAgdHJpZ2dlcldhdGNoZXJzKCk7XG59O1xuXG5jb25zdCBhcnJheUNvbnN1bWVyID0gKGxpc3RlbmVyRm4sIHJlc3RFeHByLCBuZXdWYWwsIG9sZFZhbCkgPT4ge1xuICAgIGxldCBkYXRhID0gbmV3VmFsLFxuICAgICAgICBmb3JtYXR0ZWREYXRhO1xuXG4gICAgaWYgKF8uaXNBcnJheShkYXRhKSkge1xuICAgICAgICBmb3JtYXR0ZWREYXRhID0gZGF0YS5tYXAoZnVuY3Rpb24gKGRhdHVtKSB7XG4gICAgICAgICAgICByZXR1cm4gZmluZFZhbHVlT2YoZGF0dW0sIHJlc3RFeHByKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gSWYgcmVzdWx0aW5nIHN0cnVjdHVyZSBpcyBhbiBhcnJheSBvZiBhcnJheSwgZmxhdHRlbiBpdFxuICAgICAgICBpZiAoXy5pc0FycmF5KGZvcm1hdHRlZERhdGFbMF0pKSB7XG4gICAgICAgICAgICBmb3JtYXR0ZWREYXRhID0gXy5mbGF0dGVuKGZvcm1hdHRlZERhdGEpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGlzdGVuZXJGbihmb3JtYXR0ZWREYXRhLCBvbGRWYWwpO1xuICAgIH1cbn07XG5cbmNvbnN0IGdldFVwZGF0ZWRXYXRjSW5mbyA9IChleHByLCBhY2NlcHRzQXJyYXksIGxpc3RlbmVyKSA9PiB7XG4gICAgLy8gbGlzdGVuZXIgZG9lc24ndCBhY2NlcHQgYXJyYXlcbiAgICAvLyByZXBsYWNlIGFsbCBgWyRpXWAgd2l0aCBgWzBdYCBhbmQgcmV0dXJuIHRoZSBleHByZXNzaW9uXG4gICAgbGV0IHJlZ2V4ID0gL1xcW1xcJGlcXF0vZyxcbiAgICAgICAgJEkgICAgICAgICAgICAgICAgPSAnWyRpXScsXG4gICAgICAgICQwICAgICAgICAgICAgICAgID0gJ1swXSc7XG4gICAgaWYgKCFhY2NlcHRzQXJyYXkpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICdleHByJyAgICAgOiBleHByLnJlcGxhY2UocmVnZXgsICQwKSxcbiAgICAgICAgICAgICdsaXN0ZW5lcicgOiBsaXN0ZW5lclxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8vIGxpc3RlbmVyIGFjY2VwdHMgYXJyYXlcbiAgICAvLyByZXBsYWNlIGFsbCBleGNlcHQgdGhlIGxhc3QgYFskaV1gIHdpdGggYFswXWAgYW5kIHJldHVybiB0aGUgZXhwcmVzc2lvbi5cbiAgICB2YXIgaW5kZXggICAgICAgICAgID0gZXhwci5sYXN0SW5kZXhPZigkSSksXG4gICAgICAgIF9leHByICAgICAgICAgICA9IGV4cHIuc3Vic3RyKDAsIGluZGV4KS5yZXBsYWNlKCRJLCAkMCksXG4gICAgICAgIHJlc3RFeHByICAgICAgICA9IGV4cHIuc3Vic3RyKGluZGV4ICsgNSksXG4gICAgICAgIGFycmF5Q29uc3VtZXJGbiA9IGxpc3RlbmVyO1xuXG4gICAgaWYgKHJlc3RFeHByKSB7XG4gICAgICAgIGFycmF5Q29uc3VtZXJGbiA9IGFycmF5Q29uc3VtZXIuYmluZCh1bmRlZmluZWQsIGxpc3RlbmVyLCByZXN0RXhwcik7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgJ2V4cHInICAgICA6IF9leHByLFxuICAgICAgICAnbGlzdGVuZXInIDogYXJyYXlDb25zdW1lckZuXG4gICAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCAkd2F0Y2ggPSAoZXhwciwgJHNjb3BlLCAkbG9jYWxzLCBsaXN0ZW5lciwgaWRlbnRpZmllciA9IHdhdGNoSWRHZW5lcmF0b3IubmV4dFVpZCgpLCBkb05vdENsb25lID0gZmFsc2UsIGNvbmZpZzphbnk9e30sIGlzTXV0ZWQ/OiAoKSA9PiBib29sZWFuKSA9PiB7XG4gICAgaWYgKGV4cHIuaW5kZXhPZignWyRpXScpICE9PSAtMSkge1xuICAgICAgICBsZXQgd2F0Y2hJbmZvID0gZ2V0VXBkYXRlZFdhdGNJbmZvKGV4cHIsIGNvbmZpZyAmJiBjb25maWcuYXJyYXlUeXBlLCBsaXN0ZW5lcik7XG4gICAgICAgIGV4cHIgPSB3YXRjaEluZm8uZXhwcjtcbiAgICAgICAgbGlzdGVuZXIgPSB3YXRjaEluZm8ubGlzdGVuZXI7XG4gICAgfVxuICAgIGNvbnN0IGZuID0gJHBhcnNlRXhwcihleHByKTtcblxuICAgIHJlZ2lzdHJ5LnNldChpZGVudGlmaWVyLCB7XG4gICAgICAgIGZuOiBmbi5iaW5kKGV4cHIsICRzY29wZSwgJGxvY2FscyksXG4gICAgICAgIGxpc3RlbmVyLFxuICAgICAgICBleHByLFxuICAgICAgICBsYXN0OiBGSVJTVF9USU1FX1dBVENILFxuICAgICAgICBkb05vdENsb25lLFxuICAgICAgICBpc011dGVkOiBpc011dGVkXG4gICAgfSk7XG5cbiAgICByZXR1cm4gKCkgPT4gJHVud2F0Y2goaWRlbnRpZmllcik7XG59O1xuXG5leHBvcnQgY29uc3QgJHVud2F0Y2ggPSBpZGVudGlmaWVyID0+IHJlZ2lzdHJ5LmRlbGV0ZShpZGVudGlmaWVyKTtcblxubGV0IGNoYW5nZWRCeVdhdGNoID0gZmFsc2U7XG5cbmNvbnN0ICRSQUYgPSB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lO1xuXG5sZXQgbmdab25lO1xuXG5jb25zdCB0cmlnZ2VyV2F0Y2hlcnMgPSAoaWdub3JlTXV0ZWQ/OiBib29sZWFuKSA9PiB7XG5cbiAgICBpZiAobXV0ZWQgJiYgIWlnbm9yZU11dGVkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBsaW1pdCA9IDU7XG4gICAgbGV0IHBhc3MgPSAxO1xuICAgIGxldCBjaGFuZ2VEZXRlY3RlZDtcblxuICAgIGRvIHtcbiAgICAgICAgY2hhbmdlRGV0ZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgcmVnaXN0cnkuZm9yRWFjaCh3YXRjaEluZm8gPT4ge1xuICAgICAgICAgICAgaWYod2F0Y2hJbmZvLmlzTXV0ZWQgJiYgd2F0Y2hJbmZvLmlzTXV0ZWQoKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGZuID0gd2F0Y2hJbmZvLmZuO1xuICAgICAgICAgICAgY29uc3QgbGlzdGVuZXIgPSB3YXRjaEluZm8ubGlzdGVuZXI7XG4gICAgICAgICAgICBjb25zdCBvdiA9IHdhdGNoSW5mby5sYXN0O1xuICAgICAgICAgICAgbGV0IG52O1xuXG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIG52ID0gZm4oKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oYGVycm9yIGluIGV4ZWN1dGluZyBleHByZXNzaW9uOiAnJHt3YXRjaEluZm8uZXhwcn0nYCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghXy5pc0VxdWFsKG52LCBvdikpIHtcbiAgICAgICAgICAgICAgICBjaGFuZ2VEZXRlY3RlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgY2hhbmdlZEJ5V2F0Y2ggPSB0cnVlO1xuICAgICAgICAgICAgICAgIHdhdGNoSW5mby5sYXN0ID0gbnY7XG5cbiAgICAgICAgICAgICAgICBpZiAoXy5pc09iamVjdChudikgJiYgIXdhdGNoSW5mby5kb05vdENsb25lICYmIG52Ll9fY2xvbmVhYmxlX18gIT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgIHdhdGNoSW5mby5sYXN0ID0gXy5jbG9uZShudik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxpc3RlbmVyKG52LCBvdik7XG4gICAgICAgICAgICAgICAgcmVzZXRDaGFuZ2VGcm9tV2F0Y2goKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHBhc3MrKztcblxuICAgIH0gd2hpbGUgKGNoYW5nZURldGVjdGVkICYmIHBhc3MgPCBsaW1pdCk7XG5cbiAgICBpZiAoY2hhbmdlRGV0ZWN0ZWQgJiYgcGFzcyA9PT0gbGltaXQpIHtcbiAgICAgICAgY29uc29sZS53YXJuKGBOdW1iZXIgb2Ygd2F0Y2ggY3ljbGVzIGdvbmUgYWJvdmUgc2V0IGxpbWl0IG9mOiAke2xpbWl0fSBgKTtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3Qgc2V0Tmdab25lID0gem9uZSA9PiBuZ1pvbmUgPSB6b25lO1xuXG5leHBvcnQgY29uc3Qgc2V0QXBwUmVmID0gcmVmID0+IHtcbiAgICBhcHBSZWYgPSByZWZcbn07XG5cbmV4cG9ydCBjb25zdCBpc0NoYW5nZUZyb21XYXRjaCA9ICgpID0+IGNoYW5nZWRCeVdhdGNoO1xuZXhwb3J0IGNvbnN0IHJlc2V0Q2hhbmdlRnJvbVdhdGNoID0gKCkgPT4gY2hhbmdlZEJ5V2F0Y2ggPSBmYWxzZTtcblxuKDxhbnk+d2luZG93KS53YXRjaFJlZ2lzdHJ5ID0gcmVnaXN0cnk7XG5cbmxldCBza2lwV2F0Y2hlcnM7XG5cbmNvbnN0IGRlYm91bmNlZFRyaWdnZXJXYXRjaGVycyA9IGRlYm91bmNlKCgpID0+IHtcbiAgICBza2lwV2F0Y2hlcnMgPSB0cnVlO1xuICAgIG5nWm9uZS5ydW4oKCkgPT4gdHJpZ2dlcldhdGNoZXJzKCkpO1xufSwgMTAwKTtcblxuZXhwb3J0IGNvbnN0ICRpbnZva2VXYXRjaGVycyA9IChmb3JjZT86IGJvb2xlYW4sIGlnbm9yZU11dGVkPzogYm9vbGVhbikgPT4ge1xuICAgIGlmIChmb3JjZSkge1xuICAgICAgICB0cmlnZ2VyV2F0Y2hlcnMoaWdub3JlTXV0ZWQpO1xuICAgIH0gZWxzZSB7XG5cbiAgICAgICAgaWYgKHNraXBXYXRjaGVycykge1xuICAgICAgICAgICAgc2tpcFdhdGNoZXJzID0gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgZGVib3VuY2VkVHJpZ2dlcldhdGNoZXJzKCk7XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0ICRhcHBEaWdlc3QgPSAoKCkgPT4ge1xuICAgIGxldCBxdWV1ZWQgPSBmYWxzZTtcbiAgICByZXR1cm4gKGZvcmNlPzogYm9vbGVhbikgPT4ge1xuICAgICAgICBpZiAoIWFwcFJlZikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChmb3JjZSkge1xuICAgICAgICAgICAgbmdab25lLnJ1bigoKSA9PiBhcHBSZWYudGljaygpKTtcbiAgICAgICAgICAgIHF1ZXVlZCA9IGZhbHNlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHF1ZXVlZCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcXVldWVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAkUkFGKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbmdab25lLnJ1bigoKSA9PiBhcHBSZWYudGljaygpKTtcbiAgICAgICAgICAgICAgICAgICAgcXVldWVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xufSkoKTtcbiJdfQ==
@@ -1444,11 +1444,6 @@ const addClass = (node, nv, sync) => {
1444
1444
  });
1445
1445
  };
1446
1446
  const switchClass = (node, toAdd = '', toRemove = '', sync) => {
1447
- // After NG15 upgrade ng-invalid class is added even the field is valid, so we are removing the ng-invalid manually
1448
- const isNgUntouchedValid = node.classList.contains('ng-untouched') && node.classList.contains('ng-valid');
1449
- if (isNgUntouchedValid && toAdd.includes('ng-untouched') && toAdd.includes('ng-invalid')) {
1450
- toAdd = toAdd.replace('ng-invalid', '');
1451
- }
1452
1447
  removeClass(node, toRemove, sync);
1453
1448
  addClass(node, toAdd, sync);
1454
1449
  };
@@ -2170,7 +2165,7 @@ const getUpdatedWatcInfo = (expr, acceptsArray, listener) => {
2170
2165
  };
2171
2166
  const $watch = (expr, $scope, $locals, listener, identifier = watchIdGenerator.nextUid(), doNotClone = false, config = {}, isMuted) => {
2172
2167
  if (expr.indexOf('[$i]') !== -1) {
2173
- let watchInfo = getUpdatedWatcInfo(expr, config && (config.arrayType || config.isList), listener);
2168
+ let watchInfo = getUpdatedWatcInfo(expr, config && config.arrayType, listener);
2174
2169
  expr = watchInfo.expr;
2175
2170
  listener = watchInfo.listener;
2176
2171
  }
@@ -3780,40 +3775,6 @@ const setListClass = (scope) => {
3780
3775
  scope.itemsPerRowClass = 'col-xs-12';
3781
3776
  }
3782
3777
  };
3783
- const findParent = (lView, viewParentApp) => {
3784
- let parent = findViewParent(lView);
3785
- return parent ? parent : viewParentApp;
3786
- };
3787
- const findViewParent = (lView) => {
3788
- return lView[16] ? lView[16][8] : lView[16];
3789
- /*if(lView[3] === null) {
3790
- return lView[8];
3791
- }
3792
- let parentlView = lView[3];
3793
- if(typeof lView[1] === "boolean") {
3794
- return findViewParent(parentlView);
3795
- }
3796
- let componentType = lView[1]["type"];
3797
- if(componentType === 0 || componentType === 1) {
3798
- let p = lView[8];
3799
- // ts-ignore
3800
- if(p.hasOwnProperty("isDialogComponent") || p.hasOwnProperty("isContainerDirective")) {
3801
- return findViewParent(parentlView);
3802
- } else {
3803
- return p;
3804
- }
3805
- } else {
3806
- return findViewParent(parentlView);
3807
- }*/
3808
- };
3809
- /*export const getParent = (parent: any) => {
3810
- if(parent.hasOwnProperty("isDynamicComponent") || parent.hasOwnProperty("isPageComponent")) {
3811
- return parent
3812
- } else{
3813
- return parent.viewParent ? getParent(parent.viewParent) : parent;
3814
- }
3815
-
3816
- }*/
3817
3778
 
3818
3779
  var Utils = /*#__PURE__*/Object.freeze({
3819
3780
  __proto__: null,
@@ -3838,10 +3799,8 @@ var Utils = /*#__PURE__*/Object.freeze({
3838
3799
  extractCurrentItemExpr: extractCurrentItemExpr,
3839
3800
  extractType: extractType,
3840
3801
  fetchContent: fetchContent,
3841
- findParent: findParent,
3842
3802
  findRootContainer: findRootContainer,
3843
3803
  findValueOf: findValueOf,
3844
- findViewParent: findViewParent,
3845
3804
  generateGUId: generateGUId,
3846
3805
  getAbortableDefer: getAbortableDefer,
3847
3806
  getAndroidVersion: getAndroidVersion,
@@ -5171,5 +5130,5 @@ class LRUCache {
5171
5130
  * Generated bundle index. Do not edit.
5172
5131
  */
5173
5132
 
5174
- export { $appDigest, $invokeWatchers, $parseEvent, $parseExpr, $unwatch, $watch, AbstractDialogService, AbstractHttpService, AbstractI18nService, AbstractNavigationService, AbstractSpinnerService, AbstractToasterService, App, AppConstants, AppDefaults, CURRENCY_INFO, ComponentType, ConstantService, CoreModule, CustomPipeManager, DEFAULT_FORMATS, DataSource, DataType, DynamicComponentRefProvider, EventNotifier, FIRST_TIME_WATCH, FieldTypeService, FieldWidgetService, FormWidgetType, IDGenerator, IDataSource, LRUCache, MatchMode, PaginationService, PartialRefProvider, ScriptLoaderService, ScriptStore, StatePersistence, UserDefinedExecutionContext, UtilsService, VALIDATOR, Viewport, _WM_APP_PROJECT, addClass, addEventListenerOnElement, addForIdAttributes, adjustContainerPosition, adjustContainerRightEdges, appendNode, appendScriptToHead, checkIsCustomPipeExpression, closePopover, convertToBlob, createCSSRule, createElement, deHyphenate, debounce, defer, detectChanges, encodeUrl, encodeUrlParams, executePromiseChain, extendProto, extractCurrentItemExpr, extractType, fetchContent, findParent, findRootContainer, findValueOf, generateGUId, getAbortableDefer, getAndroidVersion, getAppSetting, getBlob, getClonedObject, getDatasourceFromExpr, getDateObj, getDisplayDateTimeFormat, getEvaluatedExprValue, getFiles, getFnByExpr, getFnForBindExpr, getFnForEventExpr, getFormWidgetTemplate, getFormattedDate, getMomentLocaleObject, getNativeDateObject, getNgModelAttr, getRequiredFormWidget, getResourceURL, getRouteNameFromLink, getRowActionAttrs, getSessionStorageItem, getUrlParams, getValidDateObject, getValidJSON, getWebkitTraslationMatrix, getWmProjectProperties, hasCordova, hasOffsetStr, initCaps, insertAfter, insertBefore, isAndroid, isAndroidTablet, isAppleProduct, isArray, isAudioFile, isBoolean, isChangeFromWatch, isDataSourceEqual, isDateTimeType, isDefined, isElementInViewport, isEmptyObject, isEqualWithFields, isFirstTimeChange, isIE, isImageFile, isInsecureContentRequest, isIos, isIpad, isIphone, isIpod, isKitkatDevice, isLargeTabletLandscape, isLargeTabletPortrait, isMobile, isMobileApp, isNumber, isNumberType, isObject, isPageable, isString, isValidWebURL, isVideoFile, loadScript, loadScripts, loadStyleSheet, loadStyleSheets, muteWatchers, noop, openLink, periodSeparate, prettifyLabel, prettifyLabels, processFilterExpBindNode, registerFnByExpr, removeAttr, removeClass, removeExtraSlashes, removeNode, replace, replaceAt, resetChangeFromWatch, retryIfFails, scrollToElement, setAppRef, setAttr, setCSS, setCSSFromObj, setHtml, setListClass, setNgZone, setPipeProvider, setProperty, setSessionStorageItem, setTranslation3dPosition, setWmProjectProperties, spaceSeparate, stringStartsWith, switchClass, toBoolean, toDimension, toPromise, toggleClass, transformFileURI, triggerFn, triggerItemAction, unMuteWatchers, updateTemplateAttrs, validateAccessRoles, validateDataSourceCtx, xmlToJson };
5133
+ export { $appDigest, $invokeWatchers, $parseEvent, $parseExpr, $unwatch, $watch, AbstractDialogService, AbstractHttpService, AbstractI18nService, AbstractNavigationService, AbstractSpinnerService, AbstractToasterService, App, AppConstants, AppDefaults, CURRENCY_INFO, ComponentType, ConstantService, CoreModule, CustomPipeManager, DEFAULT_FORMATS, DataSource, DataType, DynamicComponentRefProvider, EventNotifier, FIRST_TIME_WATCH, FieldTypeService, FieldWidgetService, FormWidgetType, IDGenerator, IDataSource, LRUCache, MatchMode, PaginationService, PartialRefProvider, ScriptLoaderService, ScriptStore, StatePersistence, UserDefinedExecutionContext, UtilsService, VALIDATOR, Viewport, _WM_APP_PROJECT, addClass, addEventListenerOnElement, addForIdAttributes, adjustContainerPosition, adjustContainerRightEdges, appendNode, appendScriptToHead, checkIsCustomPipeExpression, closePopover, convertToBlob, createCSSRule, createElement, deHyphenate, debounce, defer, detectChanges, encodeUrl, encodeUrlParams, executePromiseChain, extendProto, extractCurrentItemExpr, extractType, fetchContent, findRootContainer, findValueOf, generateGUId, getAbortableDefer, getAndroidVersion, getAppSetting, getBlob, getClonedObject, getDatasourceFromExpr, getDateObj, getDisplayDateTimeFormat, getEvaluatedExprValue, getFiles, getFnByExpr, getFnForBindExpr, getFnForEventExpr, getFormWidgetTemplate, getFormattedDate, getMomentLocaleObject, getNativeDateObject, getNgModelAttr, getRequiredFormWidget, getResourceURL, getRouteNameFromLink, getRowActionAttrs, getSessionStorageItem, getUrlParams, getValidDateObject, getValidJSON, getWebkitTraslationMatrix, getWmProjectProperties, hasCordova, hasOffsetStr, initCaps, insertAfter, insertBefore, isAndroid, isAndroidTablet, isAppleProduct, isArray, isAudioFile, isBoolean, isChangeFromWatch, isDataSourceEqual, isDateTimeType, isDefined, isElementInViewport, isEmptyObject, isEqualWithFields, isFirstTimeChange, isIE, isImageFile, isInsecureContentRequest, isIos, isIpad, isIphone, isIpod, isKitkatDevice, isLargeTabletLandscape, isLargeTabletPortrait, isMobile, isMobileApp, isNumber, isNumberType, isObject, isPageable, isString, isValidWebURL, isVideoFile, loadScript, loadScripts, loadStyleSheet, loadStyleSheets, muteWatchers, noop, openLink, periodSeparate, prettifyLabel, prettifyLabels, processFilterExpBindNode, registerFnByExpr, removeAttr, removeClass, removeExtraSlashes, removeNode, replace, replaceAt, resetChangeFromWatch, retryIfFails, scrollToElement, setAppRef, setAttr, setCSS, setCSSFromObj, setHtml, setListClass, setNgZone, setPipeProvider, setProperty, setSessionStorageItem, setTranslation3dPosition, setWmProjectProperties, spaceSeparate, stringStartsWith, switchClass, toBoolean, toDimension, toPromise, toggleClass, transformFileURI, triggerFn, triggerItemAction, unMuteWatchers, updateTemplateAttrs, validateAccessRoles, validateDataSourceCtx, xmlToJson };
5175
5134
  //# sourceMappingURL=index.mjs.map