@taiga-ui/cdk 2.47.0 → 2.48.0

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 (79) hide show
  1. package/abstract/controller.d.ts +6 -0
  2. package/abstract/taiga-ui-cdk-abstract.metadata.json +1 -1
  3. package/bundles/taiga-ui-cdk-abstract.umd.js +12 -0
  4. package/bundles/taiga-ui-cdk-abstract.umd.js.map +1 -1
  5. package/bundles/taiga-ui-cdk-abstract.umd.min.js +1 -1
  6. package/bundles/taiga-ui-cdk-abstract.umd.min.js.map +1 -1
  7. package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js +96 -35
  8. package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js.map +1 -1
  9. package/bundles/taiga-ui-cdk-directives-auto-focus.umd.min.js +1 -1
  10. package/bundles/taiga-ui-cdk-directives-auto-focus.umd.min.js.map +1 -1
  11. package/bundles/taiga-ui-cdk-enums.umd.js +12 -0
  12. package/bundles/taiga-ui-cdk-enums.umd.js.map +1 -1
  13. package/bundles/taiga-ui-cdk-enums.umd.min.js +1 -1
  14. package/bundles/taiga-ui-cdk-enums.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-cdk-utils-browser.umd.js +2 -2
  16. package/bundles/taiga-ui-cdk-utils-browser.umd.js.map +1 -1
  17. package/bundles/taiga-ui-cdk-utils-browser.umd.min.js +1 -1
  18. package/bundles/taiga-ui-cdk-utils-browser.umd.min.js.map +1 -1
  19. package/bundles/taiga-ui-cdk-utils-focus.umd.js +1 -1
  20. package/bundles/taiga-ui-cdk-utils-focus.umd.js.map +1 -1
  21. package/bundles/taiga-ui-cdk-utils-focus.umd.min.js +1 -1
  22. package/bundles/taiga-ui-cdk-utils-focus.umd.min.js.map +1 -1
  23. package/directives/auto-focus/autofocus.options.d.ts +1 -1
  24. package/directives/auto-focus/handlers/ios.handler.d.ts +26 -1
  25. package/directives/auto-focus/taiga-ui-cdk-directives-auto-focus.metadata.json +1 -1
  26. package/enums/autocomplete.d.ts +10 -0
  27. package/enums/taiga-ui-cdk-enums.metadata.json +1 -1
  28. package/esm2015/abstract/controller.js +7 -1
  29. package/esm2015/directives/auto-focus/autofocus.options.js +7 -6
  30. package/esm2015/directives/auto-focus/handlers/ios.handler.js +80 -29
  31. package/esm2015/enums/autocomplete.js +12 -1
  32. package/esm2015/utils/browser/is-edge-older-than.js +2 -2
  33. package/esm2015/utils/browser/is-safari.js +2 -2
  34. package/esm2015/utils/focus/get-native-focused.js +2 -2
  35. package/esm5/abstract/controller.js +14 -1
  36. package/esm5/directives/auto-focus/autofocus.options.js +7 -6
  37. package/esm5/directives/auto-focus/handlers/ios.handler.js +92 -30
  38. package/esm5/enums/autocomplete.js +12 -1
  39. package/esm5/utils/browser/is-edge-older-than.js +2 -2
  40. package/esm5/utils/browser/is-safari.js +2 -2
  41. package/esm5/utils/focus/get-native-focused.js +2 -2
  42. package/fesm2015/taiga-ui-cdk-abstract.js +7 -1
  43. package/fesm2015/taiga-ui-cdk-abstract.js.map +1 -1
  44. package/fesm2015/taiga-ui-cdk-directives-auto-focus.js +84 -33
  45. package/fesm2015/taiga-ui-cdk-directives-auto-focus.js.map +1 -1
  46. package/fesm2015/taiga-ui-cdk-enums.js +11 -0
  47. package/fesm2015/taiga-ui-cdk-enums.js.map +1 -1
  48. package/fesm2015/taiga-ui-cdk-utils-browser.js +2 -2
  49. package/fesm2015/taiga-ui-cdk-utils-browser.js.map +1 -1
  50. package/fesm2015/taiga-ui-cdk-utils-focus.js +1 -1
  51. package/fesm2015/taiga-ui-cdk-utils-focus.js.map +1 -1
  52. package/fesm5/taiga-ui-cdk-abstract.js +12 -1
  53. package/fesm5/taiga-ui-cdk-abstract.js.map +1 -1
  54. package/fesm5/taiga-ui-cdk-directives-auto-focus.js +96 -34
  55. package/fesm5/taiga-ui-cdk-directives-auto-focus.js.map +1 -1
  56. package/fesm5/taiga-ui-cdk-enums.js +11 -0
  57. package/fesm5/taiga-ui-cdk-enums.js.map +1 -1
  58. package/fesm5/taiga-ui-cdk-utils-browser.js +2 -2
  59. package/fesm5/taiga-ui-cdk-utils-browser.js.map +1 -1
  60. package/fesm5/taiga-ui-cdk-utils-focus.js +1 -1
  61. package/fesm5/taiga-ui-cdk-utils-focus.js.map +1 -1
  62. package/package.json +1 -1
  63. package/schematics/ng-update/constants/consts.js +28 -0
  64. package/schematics/ng-update/constants/enums.js +22 -0
  65. package/schematics/ng-update/constants/services.d.ts +8 -0
  66. package/schematics/ng-update/constants/services.js +43 -0
  67. package/schematics/ng-update/constants/types.d.ts +1 -0
  68. package/schematics/ng-update/constants/types.js +29 -0
  69. package/schematics/ng-update/constants/warnings.js +22 -0
  70. package/schematics/ng-update/index.js +2 -0
  71. package/schematics/ng-update/steps/rename-types.js +26 -17
  72. package/schematics/ng-update/steps/replace-const.js +2 -2
  73. package/schematics/ng-update/steps/replace-enums.js +2 -2
  74. package/schematics/ng-update/steps/replace-services.d.ts +1 -0
  75. package/schematics/ng-update/steps/replace-services.js +51 -0
  76. package/schematics/ng-update/steps/show-warnings.js +26 -9
  77. package/schematics/utils/{remove-import.d.ts → import-manipulations.d.ts} +1 -0
  78. package/schematics/utils/import-manipulations.js +19 -0
  79. package/schematics/utils/remove-import.js +0 -11
@@ -1,6 +1,6 @@
1
+ const EDGE = 'edge/';
1
2
  export function isEdgeOlderThan(version, userAgent) {
2
- const EDGE = 'edge/';
3
3
  const currentVersion = parseInt(userAgent.slice(userAgent.toLowerCase().indexOf(EDGE) + EDGE.length), 10);
4
4
  return currentVersion < version;
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZWRnZS1vbGRlci10aGFuLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9icm93c2VyLyIsInNvdXJjZXMiOlsiaXMtZWRnZS1vbGRlci10aGFuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxlQUFlLENBQUMsT0FBZSxFQUFFLFNBQWlCO0lBQzlELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQztJQUNyQixNQUFNLGNBQWMsR0FBRyxRQUFRLENBQzNCLFNBQVMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ3BFLEVBQUUsQ0FDTCxDQUFDO0lBRUYsT0FBTyxjQUFjLEdBQUcsT0FBTyxDQUFDO0FBQ3BDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gaXNFZGdlT2xkZXJUaGFuKHZlcnNpb246IG51bWJlciwgdXNlckFnZW50OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBFREdFID0gJ2VkZ2UvJztcbiAgICBjb25zdCBjdXJyZW50VmVyc2lvbiA9IHBhcnNlSW50KFxuICAgICAgICB1c2VyQWdlbnQuc2xpY2UodXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZihFREdFKSArIEVER0UubGVuZ3RoKSxcbiAgICAgICAgMTAsXG4gICAgKTtcblxuICAgIHJldHVybiBjdXJyZW50VmVyc2lvbiA8IHZlcnNpb247XG59XG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZWRnZS1vbGRlci10aGFuLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9icm93c2VyLyIsInNvdXJjZXMiOlsiaXMtZWRnZS1vbGRlci10aGFuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQztBQUVyQixNQUFNLFVBQVUsZUFBZSxDQUFDLE9BQWUsRUFBRSxTQUFpQjtJQUM5RCxNQUFNLGNBQWMsR0FBRyxRQUFRLENBQzNCLFNBQVMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ3BFLEVBQUUsQ0FDTCxDQUFDO0lBRUYsT0FBTyxjQUFjLEdBQUcsT0FBTyxDQUFDO0FBQ3BDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBFREdFID0gJ2VkZ2UvJztcblxuZXhwb3J0IGZ1bmN0aW9uIGlzRWRnZU9sZGVyVGhhbih2ZXJzaW9uOiBudW1iZXIsIHVzZXJBZ2VudDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY3VycmVudFZlcnNpb24gPSBwYXJzZUludChcbiAgICAgICAgdXNlckFnZW50LnNsaWNlKHVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoRURHRSkgKyBFREdFLmxlbmd0aCksXG4gICAgICAgIDEwLFxuICAgICk7XG5cbiAgICByZXR1cm4gY3VycmVudFZlcnNpb24gPCB2ZXJzaW9uO1xufVxuIl19
@@ -1,6 +1,6 @@
1
1
  export function isSafari(element) {
2
2
  const documentRef = element.ownerDocument;
3
- const windowRef = documentRef && documentRef.defaultView;
3
+ const windowRef = documentRef === null || documentRef === void 0 ? void 0 : documentRef.defaultView;
4
4
  return !!windowRef && 'safari' in windowRef;
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtc2FmYXJpLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9icm93c2VyLyIsInNvdXJjZXMiOlsiaXMtc2FmYXJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxRQUFRLENBQUMsT0FBZ0I7SUFDckMsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztJQUMxQyxNQUFNLFNBQVMsR0FBRyxXQUFXLElBQUksV0FBVyxDQUFDLFdBQVcsQ0FBQztJQUV6RCxPQUFPLENBQUMsQ0FBQyxTQUFTLElBQUksUUFBUSxJQUFJLFNBQVMsQ0FBQztBQUNoRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGlzU2FmYXJpKGVsZW1lbnQ6IEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICBjb25zdCBkb2N1bWVudFJlZiA9IGVsZW1lbnQub3duZXJEb2N1bWVudDtcbiAgICBjb25zdCB3aW5kb3dSZWYgPSBkb2N1bWVudFJlZiAmJiBkb2N1bWVudFJlZi5kZWZhdWx0VmlldztcblxuICAgIHJldHVybiAhIXdpbmRvd1JlZiAmJiAnc2FmYXJpJyBpbiB3aW5kb3dSZWY7XG59XG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtc2FmYXJpLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9icm93c2VyLyIsInNvdXJjZXMiOlsiaXMtc2FmYXJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxRQUFRLENBQUMsT0FBZ0I7SUFDckMsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztJQUMxQyxNQUFNLFNBQVMsR0FBRyxXQUFXLGFBQVgsV0FBVyx1QkFBWCxXQUFXLENBQUUsV0FBVyxDQUFDO0lBRTNDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsSUFBSSxRQUFRLElBQUksU0FBUyxDQUFDO0FBQ2hELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gaXNTYWZhcmkoZWxlbWVudDogRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGRvY3VtZW50UmVmID0gZWxlbWVudC5vd25lckRvY3VtZW50O1xuICAgIGNvbnN0IHdpbmRvd1JlZiA9IGRvY3VtZW50UmVmPy5kZWZhdWx0VmlldztcblxuICAgIHJldHVybiAhIXdpbmRvd1JlZiAmJiAnc2FmYXJpJyBpbiB3aW5kb3dSZWY7XG59XG4iXX0=
@@ -8,9 +8,9 @@ export function getNativeFocused(documentRef) {
8
8
  return documentRef.activeElement;
9
9
  }
10
10
  let element = documentRef.activeElement.shadowRoot.activeElement;
11
- while (element && element.shadowRoot) {
11
+ while (element === null || element === void 0 ? void 0 : element.shadowRoot) {
12
12
  element = element.shadowRoot.activeElement;
13
13
  }
14
14
  return element;
15
15
  }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW5hdGl2ZS1mb2N1c2VkLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9mb2N1cy8iLCJzb3VyY2VzIjpbImdldC1uYXRpdmUtZm9jdXNlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLFdBQXFCO0lBQ2xELElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUU7UUFDckUsT0FBTyxXQUFXLENBQUMsYUFBYSxDQUFDO0tBQ3BDO0lBRUQsSUFBSSxPQUFPLEdBQUcsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBRWpFLE9BQU8sT0FBTyxJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUU7UUFDbEMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0tBQzlDO0lBRUQsT0FBTyxPQUFPLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmV0dXJucyBjdXJyZW50IGFjdGl2ZSBlbGVtZW50LCBpbmNsdWRpbmcgc2hhZG93IGRvbVxuICpcbiAqIEByZXR1cm4gZWxlbWVudCBvciBudWxsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXROYXRpdmVGb2N1c2VkKGRvY3VtZW50UmVmOiBEb2N1bWVudCk6IEVsZW1lbnQgfCBudWxsIHtcbiAgICBpZiAoIWRvY3VtZW50UmVmLmFjdGl2ZUVsZW1lbnQgfHwgIWRvY3VtZW50UmVmLmFjdGl2ZUVsZW1lbnQuc2hhZG93Um9vdCkge1xuICAgICAgICByZXR1cm4gZG9jdW1lbnRSZWYuYWN0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICBsZXQgZWxlbWVudCA9IGRvY3VtZW50UmVmLmFjdGl2ZUVsZW1lbnQuc2hhZG93Um9vdC5hY3RpdmVFbGVtZW50O1xuXG4gICAgd2hpbGUgKGVsZW1lbnQgJiYgZWxlbWVudC5zaGFkb3dSb290KSB7XG4gICAgICAgIGVsZW1lbnQgPSBlbGVtZW50LnNoYWRvd1Jvb3QuYWN0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICByZXR1cm4gZWxlbWVudDtcbn1cbiJdfQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW5hdGl2ZS1mb2N1c2VkLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9mb2N1cy8iLCJzb3VyY2VzIjpbImdldC1uYXRpdmUtZm9jdXNlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLFdBQXFCO0lBQ2xELElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUU7UUFDckUsT0FBTyxXQUFXLENBQUMsYUFBYSxDQUFDO0tBQ3BDO0lBRUQsSUFBSSxPQUFPLEdBQUcsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBRWpFLE9BQU8sT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLFVBQVUsRUFBRTtRQUN4QixPQUFPLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7S0FDOUM7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSZXR1cm5zIGN1cnJlbnQgYWN0aXZlIGVsZW1lbnQsIGluY2x1ZGluZyBzaGFkb3cgZG9tXG4gKlxuICogQHJldHVybiBlbGVtZW50IG9yIG51bGxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE5hdGl2ZUZvY3VzZWQoZG9jdW1lbnRSZWY6IERvY3VtZW50KTogRWxlbWVudCB8IG51bGwge1xuICAgIGlmICghZG9jdW1lbnRSZWYuYWN0aXZlRWxlbWVudCB8fCAhZG9jdW1lbnRSZWYuYWN0aXZlRWxlbWVudC5zaGFkb3dSb290KSB7XG4gICAgICAgIHJldHVybiBkb2N1bWVudFJlZi5hY3RpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIGxldCBlbGVtZW50ID0gZG9jdW1lbnRSZWYuYWN0aXZlRWxlbWVudC5zaGFkb3dSb290LmFjdGl2ZUVsZW1lbnQ7XG5cbiAgICB3aGlsZSAoZWxlbWVudD8uc2hhZG93Um9vdCkge1xuICAgICAgICBlbGVtZW50ID0gZWxlbWVudC5zaGFkb3dSb290LmFjdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVsZW1lbnQ7XG59XG4iXX0=
@@ -1,4 +1,9 @@
1
+ import { __extends } from "tslib";
1
2
  import { Subject } from 'rxjs';
3
+ /**
4
+ * @deprecated
5
+ * TODO: 3.0 replace with {@link AbstractTuiController}
6
+ */
2
7
  var TuiController = /** @class */ (function () {
3
8
  function TuiController() {
4
9
  this.change$ = new Subject();
@@ -9,4 +14,12 @@ var TuiController = /** @class */ (function () {
9
14
  return TuiController;
10
15
  }());
11
16
  export { TuiController };
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jZGsvYWJzdHJhY3QvIiwic291cmNlcyI6WyJjb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFN0I7SUFBQTtRQUNhLFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBSzNDLENBQUM7SUFIRyxtQ0FBVyxHQUFYO1FBQ0ksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBQ0wsb0JBQUM7QUFBRCxDQUFDLEFBTkQsSUFNQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7T25DaGFuZ2VzfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U3ViamVjdH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUdWlDb250cm9sbGVyIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICByZWFkb25seSBjaGFuZ2UkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoYW5nZSQubmV4dCgpO1xuICAgIH1cbn1cbiJdfQ==
17
+ var AbstractTuiController = /** @class */ (function (_super) {
18
+ __extends(AbstractTuiController, _super);
19
+ function AbstractTuiController() {
20
+ return _super !== null && _super.apply(this, arguments) || this;
21
+ }
22
+ return AbstractTuiController;
23
+ }(TuiController));
24
+ export { AbstractTuiController };
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jZGsvYWJzdHJhY3QvIiwic291cmNlcyI6WyJjb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRTdCOzs7R0FHRztBQUNIO0lBQUE7UUFDYSxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUszQyxDQUFDO0lBSEcsbUNBQVcsR0FBWDtRQUNJLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUNMLG9CQUFDO0FBQUQsQ0FBQyxBQU5ELElBTUM7O0FBRUQ7SUFBb0QseUNBQWE7SUFBakU7O0lBQW1FLENBQUM7SUFBRCw0QkFBQztBQUFELENBQUMsQUFBcEUsQ0FBb0QsYUFBYSxHQUFHIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uICovXG5pbXBvcnQge09uQ2hhbmdlc30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKiBUT0RPOiAzLjAgcmVwbGFjZSB3aXRoIHtAbGluayBBYnN0cmFjdFR1aUNvbnRyb2xsZXJ9XG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUdWlDb250cm9sbGVyIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICByZWFkb25seSBjaGFuZ2UkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoYW5nZSQubmV4dCgpO1xuICAgIH1cbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0VHVpQ29udHJvbGxlciBleHRlbmRzIFR1aUNvbnRyb2xsZXIge31cbiJdfQ==
@@ -1,13 +1,13 @@
1
1
  import { ElementRef, inject, InjectionToken, NgZone, Optional, Renderer2, Self, } from '@angular/core';
2
- import { ANIMATION_FRAME } from '@ng-web-apis/common';
3
- import { TUI_FOCUSABLE_ITEM_ACCESSOR, TUI_IS_APPLE } from '@taiga-ui/cdk/tokens';
2
+ import { ANIMATION_FRAME, WINDOW } from '@ng-web-apis/common';
3
+ import { TUI_FOCUSABLE_ITEM_ACCESSOR, TUI_IS_IOS } from '@taiga-ui/cdk/tokens';
4
4
  import { TuiDefaultAutofocusHandler } from './handlers/default.handler';
5
5
  import { TuiIosAutofocusHandler } from './handlers/ios.handler';
6
6
  export var TUI_AUTOFOCUS_HANDLER = new InjectionToken('Autofocusing handler');
7
7
  // TODO: 3.0 remove in ivy compilation
8
- export function tuiAutofocusHandlerFactory(tuiFocusableComponent, elementRef, animationFrame$, renderer, ngZone) {
9
- return inject(TUI_IS_APPLE)
10
- ? new TuiIosAutofocusHandler(tuiFocusableComponent, elementRef, renderer, ngZone)
8
+ export function tuiAutofocusHandlerFactory(tuiFocusableComponent, elementRef, animationFrame$, renderer, ngZone, windowRef) {
9
+ return inject(TUI_IS_IOS)
10
+ ? new TuiIosAutofocusHandler(tuiFocusableComponent, elementRef, renderer, ngZone, windowRef)
11
11
  : new TuiDefaultAutofocusHandler(tuiFocusableComponent, elementRef, animationFrame$);
12
12
  }
13
13
  export var TUI_AUTOFOCUS_PROVIDERS = [
@@ -21,7 +21,8 @@ export var TUI_AUTOFOCUS_PROVIDERS = [
21
21
  ANIMATION_FRAME,
22
22
  Renderer2,
23
23
  NgZone,
24
+ WINDOW,
24
25
  ],
25
26
  },
26
27
  ];
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2ZvY3VzLm9wdGlvbnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvYXV0by1mb2N1cy8iLCJzb3VyY2VzIjpbImF1dG9mb2N1cy5vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxVQUFVLEVBQ1YsTUFBTSxFQUNOLGNBQWMsRUFDZCxNQUFNLEVBQ04sUUFBUSxFQUNSLFNBQVMsRUFDVCxJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRXBELE9BQU8sRUFBQywyQkFBMkIsRUFBRSxZQUFZLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUcvRSxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RSxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQU05RCxNQUFNLENBQUMsSUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FDbkQsc0JBQXNCLENBQ3pCLENBQUM7QUFFRixzQ0FBc0M7QUFDdEMsTUFBTSxVQUFVLDBCQUEwQixDQUN0QyxxQkFBeUQsRUFDekQsVUFBbUMsRUFDbkMsZUFBbUMsRUFDbkMsUUFBbUIsRUFDbkIsTUFBYztJQUVkLE9BQU8sTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN2QixDQUFDLENBQUMsSUFBSSxzQkFBc0IsQ0FBQyxxQkFBcUIsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQztRQUNqRixDQUFDLENBQUMsSUFBSSwwQkFBMEIsQ0FDMUIscUJBQXFCLEVBQ3JCLFVBQVUsRUFDVixlQUFlLENBQ2xCLENBQUM7QUFDWixDQUFDO0FBRUQsTUFBTSxDQUFDLElBQU0sdUJBQXVCLEdBQUc7SUFDbkM7UUFDSSxPQUFPLEVBQUUscUJBQXFCO1FBQzlCLG9DQUFvQztRQUNwQyxVQUFVLEVBQUUsMEJBQTBCO1FBQ3RDLElBQUksRUFBRTtZQUNGLENBQUMsSUFBSSxRQUFRLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxFQUFFLDJCQUEyQixDQUFDO1lBQ3pELFVBQVU7WUFDVixlQUFlO1lBQ2YsU0FBUztZQUNULE1BQU07U0FDVDtLQUNKO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRWxlbWVudFJlZixcbiAgICBpbmplY3QsXG4gICAgSW5qZWN0aW9uVG9rZW4sXG4gICAgTmdab25lLFxuICAgIE9wdGlvbmFsLFxuICAgIFJlbmRlcmVyMixcbiAgICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QU5JTUFUSU9OX0ZSQU1FfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7VHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsIFRVSV9JU19BUFBMRX0gZnJvbSAnQHRhaWdhLXVpL2Nkay90b2tlbnMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlEZWZhdWx0QXV0b2ZvY3VzSGFuZGxlcn0gZnJvbSAnLi9oYW5kbGVycy9kZWZhdWx0LmhhbmRsZXInO1xuaW1wb3J0IHtUdWlJb3NBdXRvZm9jdXNIYW5kbGVyfSBmcm9tICcuL2hhbmRsZXJzL2lvcy5oYW5kbGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBUdWlBdXRvZm9jdXNIYW5kbGVyIHtcbiAgICBzZXRGb2N1cygpOiB2b2lkO1xufVxuXG5leHBvcnQgY29uc3QgVFVJX0FVVE9GT0NVU19IQU5ETEVSID0gbmV3IEluamVjdGlvblRva2VuPFR1aUF1dG9mb2N1c0hhbmRsZXI+KFxuICAgICdBdXRvZm9jdXNpbmcgaGFuZGxlcicsXG4pO1xuXG4vLyBUT0RPOiAzLjAgcmVtb3ZlIGluIGl2eSBjb21waWxhdGlvblxuZXhwb3J0IGZ1bmN0aW9uIHR1aUF1dG9mb2N1c0hhbmRsZXJGYWN0b3J5KFxuICAgIHR1aUZvY3VzYWJsZUNvbXBvbmVudDogVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yIHwgbnVsbCxcbiAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBhbmltYXRpb25GcmFtZSQ6IE9ic2VydmFibGU8bnVtYmVyPixcbiAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIG5nWm9uZTogTmdab25lLFxuKTogVHVpQXV0b2ZvY3VzSGFuZGxlciB7XG4gICAgcmV0dXJuIGluamVjdChUVUlfSVNfQVBQTEUpXG4gICAgICAgID8gbmV3IFR1aUlvc0F1dG9mb2N1c0hhbmRsZXIodHVpRm9jdXNhYmxlQ29tcG9uZW50LCBlbGVtZW50UmVmLCByZW5kZXJlciwgbmdab25lKVxuICAgICAgICA6IG5ldyBUdWlEZWZhdWx0QXV0b2ZvY3VzSGFuZGxlcihcbiAgICAgICAgICAgICAgdHVpRm9jdXNhYmxlQ29tcG9uZW50LFxuICAgICAgICAgICAgICBlbGVtZW50UmVmLFxuICAgICAgICAgICAgICBhbmltYXRpb25GcmFtZSQsXG4gICAgICAgICAgKTtcbn1cblxuZXhwb3J0IGNvbnN0IFRVSV9BVVRPRk9DVVNfUFJPVklERVJTID0gW1xuICAgIHtcbiAgICAgICAgcHJvdmlkZTogVFVJX0FVVE9GT0NVU19IQU5ETEVSLFxuICAgICAgICAvLyBUT0RPOiByZXBsYWNlIHRvIHVzZUNsYXNzIGluIHYzLjBcbiAgICAgICAgdXNlRmFjdG9yeTogdHVpQXV0b2ZvY3VzSGFuZGxlckZhY3RvcnksXG4gICAgICAgIGRlcHM6IFtcbiAgICAgICAgICAgIFtuZXcgT3B0aW9uYWwoKSwgbmV3IFNlbGYoKSwgVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SXSxcbiAgICAgICAgICAgIEVsZW1lbnRSZWYsXG4gICAgICAgICAgICBBTklNQVRJT05fRlJBTUUsXG4gICAgICAgICAgICBSZW5kZXJlcjIsXG4gICAgICAgICAgICBOZ1pvbmUsXG4gICAgICAgIF0sXG4gICAgfSxcbl07XG4iXX0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2ZvY3VzLm9wdGlvbnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvYXV0by1mb2N1cy8iLCJzb3VyY2VzIjpbImF1dG9mb2N1cy5vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxVQUFVLEVBQ1YsTUFBTSxFQUNOLGNBQWMsRUFDZCxNQUFNLEVBQ04sUUFBUSxFQUNSLFNBQVMsRUFDVCxJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBRSxNQUFNLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUU1RCxPQUFPLEVBQUMsMkJBQTJCLEVBQUUsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFHN0UsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFNOUQsTUFBTSxDQUFDLElBQU0scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQ25ELHNCQUFzQixDQUN6QixDQUFDO0FBRUYsc0NBQXNDO0FBQ3RDLE1BQU0sVUFBVSwwQkFBMEIsQ0FDdEMscUJBQXlELEVBQ3pELFVBQW1DLEVBQ25DLGVBQW1DLEVBQ25DLFFBQW1CLEVBQ25CLE1BQWMsRUFDZCxTQUFpQjtJQUVqQixPQUFPLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDckIsQ0FBQyxDQUFDLElBQUksc0JBQXNCLENBQ3RCLHFCQUFxQixFQUNyQixVQUFVLEVBQ1YsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLENBQ1o7UUFDSCxDQUFDLENBQUMsSUFBSSwwQkFBMEIsQ0FDMUIscUJBQXFCLEVBQ3JCLFVBQVUsRUFDVixlQUFlLENBQ2xCLENBQUM7QUFDWixDQUFDO0FBRUQsTUFBTSxDQUFDLElBQU0sdUJBQXVCLEdBQUc7SUFDbkM7UUFDSSxPQUFPLEVBQUUscUJBQXFCO1FBQzlCLG9DQUFvQztRQUNwQyxVQUFVLEVBQUUsMEJBQTBCO1FBQ3RDLElBQUksRUFBRTtZQUNGLENBQUMsSUFBSSxRQUFRLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxFQUFFLDJCQUEyQixDQUFDO1lBQ3pELFVBQVU7WUFDVixlQUFlO1lBQ2YsU0FBUztZQUNULE1BQU07WUFDTixNQUFNO1NBQ1Q7S0FDSjtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEVsZW1lbnRSZWYsXG4gICAgaW5qZWN0LFxuICAgIEluamVjdGlvblRva2VuLFxuICAgIE5nWm9uZSxcbiAgICBPcHRpb25hbCxcbiAgICBSZW5kZXJlcjIsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0FOSU1BVElPTl9GUkFNRSwgV0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7VHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsIFRVSV9JU19JT1N9IGZyb20gJ0B0YWlnYS11aS9jZGsvdG9rZW5zJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VHVpRGVmYXVsdEF1dG9mb2N1c0hhbmRsZXJ9IGZyb20gJy4vaGFuZGxlcnMvZGVmYXVsdC5oYW5kbGVyJztcbmltcG9ydCB7VHVpSW9zQXV0b2ZvY3VzSGFuZGxlcn0gZnJvbSAnLi9oYW5kbGVycy9pb3MuaGFuZGxlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHVpQXV0b2ZvY3VzSGFuZGxlciB7XG4gICAgc2V0Rm9jdXMoKTogdm9pZDtcbn1cblxuZXhwb3J0IGNvbnN0IFRVSV9BVVRPRk9DVVNfSEFORExFUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxUdWlBdXRvZm9jdXNIYW5kbGVyPihcbiAgICAnQXV0b2ZvY3VzaW5nIGhhbmRsZXInLFxuKTtcblxuLy8gVE9ETzogMy4wIHJlbW92ZSBpbiBpdnkgY29tcGlsYXRpb25cbmV4cG9ydCBmdW5jdGlvbiB0dWlBdXRvZm9jdXNIYW5kbGVyRmFjdG9yeShcbiAgICB0dWlGb2N1c2FibGVDb21wb25lbnQ6IFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvciB8IG51bGwsXG4gICAgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBuZ1pvbmU6IE5nWm9uZSxcbiAgICB3aW5kb3dSZWY6IFdpbmRvdyxcbik6IFR1aUF1dG9mb2N1c0hhbmRsZXIge1xuICAgIHJldHVybiBpbmplY3QoVFVJX0lTX0lPUylcbiAgICAgICAgPyBuZXcgVHVpSW9zQXV0b2ZvY3VzSGFuZGxlcihcbiAgICAgICAgICAgICAgdHVpRm9jdXNhYmxlQ29tcG9uZW50LFxuICAgICAgICAgICAgICBlbGVtZW50UmVmLFxuICAgICAgICAgICAgICByZW5kZXJlcixcbiAgICAgICAgICAgICAgbmdab25lLFxuICAgICAgICAgICAgICB3aW5kb3dSZWYsXG4gICAgICAgICAgKVxuICAgICAgICA6IG5ldyBUdWlEZWZhdWx0QXV0b2ZvY3VzSGFuZGxlcihcbiAgICAgICAgICAgICAgdHVpRm9jdXNhYmxlQ29tcG9uZW50LFxuICAgICAgICAgICAgICBlbGVtZW50UmVmLFxuICAgICAgICAgICAgICBhbmltYXRpb25GcmFtZSQsXG4gICAgICAgICAgKTtcbn1cblxuZXhwb3J0IGNvbnN0IFRVSV9BVVRPRk9DVVNfUFJPVklERVJTID0gW1xuICAgIHtcbiAgICAgICAgcHJvdmlkZTogVFVJX0FVVE9GT0NVU19IQU5ETEVSLFxuICAgICAgICAvLyBUT0RPOiByZXBsYWNlIHRvIHVzZUNsYXNzIGluIHYzLjBcbiAgICAgICAgdXNlRmFjdG9yeTogdHVpQXV0b2ZvY3VzSGFuZGxlckZhY3RvcnksXG4gICAgICAgIGRlcHM6IFtcbiAgICAgICAgICAgIFtuZXcgT3B0aW9uYWwoKSwgbmV3IFNlbGYoKSwgVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SXSxcbiAgICAgICAgICAgIEVsZW1lbnRSZWYsXG4gICAgICAgICAgICBBTklNQVRJT05fRlJBTUUsXG4gICAgICAgICAgICBSZW5kZXJlcjIsXG4gICAgICAgICAgICBOZ1pvbmUsXG4gICAgICAgICAgICBXSU5ET1csXG4gICAgICAgIF0sXG4gICAgfSxcbl07XG4iXX0=
@@ -1,13 +1,18 @@
1
- import { __decorate, __extends, __param } from "tslib";
1
+ import { __decorate, __extends, __param, __values } from "tslib";
2
2
  import { Directive, ElementRef, Inject, NgZone, Optional, Renderer2, Self, } from '@angular/core';
3
+ import { WINDOW } from '@ng-web-apis/common';
3
4
  import { TUI_FOCUSABLE_ITEM_ACCESSOR } from '@taiga-ui/cdk/tokens';
5
+ import { px } from '@taiga-ui/cdk/utils';
4
6
  import { AbstractTuiAutofocusHandler } from './abstract.handler';
7
+ // @dynamic
5
8
  var TuiIosAutofocusHandler = /** @class */ (function (_super) {
6
9
  __extends(TuiIosAutofocusHandler, _super);
7
- function TuiIosAutofocusHandler(tuiFocusableComponent, elementRef, renderer, ngZone) {
10
+ function TuiIosAutofocusHandler(tuiFocusableComponent, elementRef, renderer, ngZone, windowRef) {
8
11
  var _this = _super.call(this, tuiFocusableComponent, elementRef) || this;
9
12
  _this.renderer = renderer;
10
13
  _this.ngZone = ngZone;
14
+ _this.windowRef = windowRef;
15
+ _this.patchCssStyles();
11
16
  return _this;
12
17
  }
13
18
  TuiIosAutofocusHandler.prototype.setFocus = function () {
@@ -22,43 +27,99 @@ var TuiIosAutofocusHandler = /** @class */ (function (_super) {
22
27
  TuiIosAutofocusHandler.prototype.iosWebkitAutofocus = function () {
23
28
  var _this = this;
24
29
  var _a;
25
- var fakeInput = this.renderer.createElement('input');
26
- fakeInput.style.position = 'absolute';
27
- fakeInput.style.opacity = '0';
28
- fakeInput.style.height = '0';
29
- var blurHandler = function () { return fakeInput.focus(); };
30
+ var fakeInput = this.makeFakeInput();
31
+ var duration = this.getDurationTimeBeforeFocus();
32
+ var fakeFocusTimeoutId = 0;
33
+ var elementFocusTimeoutId = 0;
34
+ var blurHandler = function () { return fakeInput.focus({ preventScroll: true }); };
30
35
  var focusHandler = function () {
31
- setTimeout(function () {
32
- _this.element.focus();
33
- /**
34
- * @note:
35
- * We can't remove the element immediately, because it breaks flow
36
- */
37
- setTimeout(function () {
38
- fakeInput.removeEventListener('blur', blurHandler);
39
- fakeInput.removeEventListener('focus', focusHandler);
36
+ clearTimeout(fakeFocusTimeoutId);
37
+ fakeFocusTimeoutId = _this.windowRef.setTimeout(function () {
38
+ clearTimeout(elementFocusTimeoutId);
39
+ fakeInput.removeEventListener('blur', blurHandler);
40
+ fakeInput.removeEventListener('focus', focusHandler);
41
+ elementFocusTimeoutId = _this.windowRef.setTimeout(function () {
42
+ _this.element.focus({ preventScroll: false });
40
43
  fakeInput.remove();
41
- });
44
+ }, duration);
42
45
  });
43
46
  };
44
- /**
45
- * @note: ping-pong eager strategy hack
46
- * After creating an element and bringing it into DOM,
47
- * the browser automatically focuses on the invisible element.
48
- * And then, after focus is triggered, we try to focus on target element, and if we managed to refocus,
49
- * then we try to focus again on an invisible element, so that the keyboard slowly appears.
50
- * This ping pong allows the keyboard to not overlap the modal window.
51
- */
52
47
  fakeInput.addEventListener('blur', blurHandler, { once: true });
53
48
  fakeInput.addEventListener('focus', focusHandler);
54
- (_a = this.element.parentElement) === null || _a === void 0 ? void 0 : _a.appendChild(fakeInput);
55
- fakeInput.focus();
49
+ if (this.insideDialog()) {
50
+ this.windowRef.document.body.appendChild(fakeInput);
51
+ }
52
+ else {
53
+ (_a = this.element.parentElement) === null || _a === void 0 ? void 0 : _a.appendChild(fakeInput);
54
+ }
55
+ fakeInput.focus({ preventScroll: true });
56
+ };
57
+ /**
58
+ * @note:
59
+ * emulate textfield position in layout with cursor
60
+ * before focus to real textfield element
61
+ */
62
+ TuiIosAutofocusHandler.prototype.makeFakeInput = function () {
63
+ var fakeInput = this.renderer.createElement('input');
64
+ var rect = this.element.getBoundingClientRect();
65
+ fakeInput.style.height = px(rect.height);
66
+ fakeInput.style.width = px(rect.width / 2);
67
+ fakeInput.style.position = 'fixed';
68
+ fakeInput.style.opacity = '0';
69
+ fakeInput.style.fontSize = px(16); // disable possible auto zoom
70
+ fakeInput.readOnly = true; // prevent keyboard for fake input
71
+ // @note: emulate position cursor before focus to real textfield element
72
+ fakeInput.style.top = px(rect.top);
73
+ fakeInput.style.left = px(rect.left);
74
+ return fakeInput;
75
+ };
76
+ TuiIosAutofocusHandler.prototype.getDurationTimeBeforeFocus = function () {
77
+ return (parseFloat(this.windowRef
78
+ .getComputedStyle(this.element)
79
+ .getPropertyValue('--tui-duration')) || 0);
80
+ };
81
+ /**
82
+ * @note:
83
+ * unfortunately, in older versions of iOS
84
+ * there is a bug that the fake input cursor
85
+ * will move along with the dialog animation
86
+ * and then that dialog will be shaking
87
+ */
88
+ TuiIosAutofocusHandler.prototype.insideDialog = function () {
89
+ return !!this.element.closest('tui-dialog');
90
+ };
91
+ /**
92
+ * @note:
93
+ * This is necessary so that the viewport isn't recalculated
94
+ * and then the dialogs don't shake.
95
+ *
96
+ * Also, we need to fixed height viewport,
97
+ * so that when focusing the dialogs don't shake
98
+ */
99
+ TuiIosAutofocusHandler.prototype.patchCssStyles = function () {
100
+ var e_1, _a;
101
+ var documentRef = this.windowRef.document;
102
+ try {
103
+ for (var _b = __values([documentRef.documentElement, documentRef.body]), _c = _b.next(); !_c.done; _c = _b.next()) {
104
+ var element = _c.value;
105
+ element.style.setProperty('overflow', 'auto');
106
+ element.style.setProperty('height', '100%');
107
+ }
108
+ }
109
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
110
+ finally {
111
+ try {
112
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
113
+ }
114
+ finally { if (e_1) throw e_1.error; }
115
+ }
56
116
  };
57
117
  TuiIosAutofocusHandler.ctorParameters = function () { return [
58
118
  { type: undefined, decorators: [{ type: Optional }, { type: Self }, { type: Inject, args: [TUI_FOCUSABLE_ITEM_ACCESSOR,] }] },
59
119
  { type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
60
120
  { type: Renderer2, decorators: [{ type: Inject, args: [Renderer2,] }] },
61
- { type: NgZone, decorators: [{ type: Inject, args: [NgZone,] }] }
121
+ { type: NgZone, decorators: [{ type: Inject, args: [NgZone,] }] },
122
+ { type: Window, decorators: [{ type: Inject, args: [WINDOW,] }] }
62
123
  ]; };
63
124
  TuiIosAutofocusHandler = __decorate([
64
125
  Directive(),
@@ -67,9 +128,10 @@ var TuiIosAutofocusHandler = /** @class */ (function (_super) {
67
128
  __param(0, Inject(TUI_FOCUSABLE_ITEM_ACCESSOR)),
68
129
  __param(1, Inject(ElementRef)),
69
130
  __param(2, Inject(Renderer2)),
70
- __param(3, Inject(NgZone))
131
+ __param(3, Inject(NgZone)),
132
+ __param(4, Inject(WINDOW))
71
133
  ], TuiIosAutofocusHandler);
72
134
  return TuiIosAutofocusHandler;
73
135
  }(AbstractTuiAutofocusHandler));
74
136
  export { TuiIosAutofocusHandler };
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW9zLmhhbmRsZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvYXV0by1mb2N1cy8iLCJzb3VyY2VzIjpbImhhbmRsZXJzL2lvcy5oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sTUFBTSxFQUNOLFFBQVEsRUFDUixTQUFTLEVBQ1QsSUFBSSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRWpFLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBRy9EO0lBQTRDLDBDQUEyQjtJQUNuRSxnQ0FJSSxxQkFBeUQsRUFDckMsVUFBbUMsRUFFdEMsUUFBbUIsRUFFbkIsTUFBYztRQVRuQyxZQVdJLGtCQUFNLHFCQUFxQixFQUFFLFVBQVUsQ0FBQyxTQUMzQztRQUxvQixjQUFRLEdBQVIsUUFBUSxDQUFXO1FBRW5CLFlBQU0sR0FBTixNQUFNLENBQVE7O0lBR25DLENBQUM7SUFFRCx5Q0FBUSxHQUFSO1FBQUEsaUJBTUM7UUFMRyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsa0JBQWtCLEVBQUUsRUFBekIsQ0FBeUIsQ0FBQyxDQUFDO1NBQ2xFO2FBQU07WUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3hCO0lBQ0wsQ0FBQztJQUVPLG1EQUFrQixHQUExQjtRQUFBLGlCQXNDQzs7UUFyQ0csSUFBTSxTQUFTLEdBQWdCLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXBFLFNBQVMsQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUN0QyxTQUFTLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7UUFDOUIsU0FBUyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBRTdCLElBQU0sV0FBVyxHQUFHLGNBQVksT0FBQSxTQUFTLENBQUMsS0FBSyxFQUFFLEVBQWpCLENBQWlCLENBQUM7UUFDbEQsSUFBTSxZQUFZLEdBQUc7WUFDakIsVUFBVSxDQUFDO2dCQUNQLEtBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBRXJCOzs7bUJBR0c7Z0JBQ0gsVUFBVSxDQUFDO29CQUNQLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7b0JBQ25ELFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUM7b0JBQ3JELFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDdkIsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQztRQUVGOzs7Ozs7O1dBT0c7UUFDSCxTQUFTLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO1FBQzlELFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFFbEQsTUFBQSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsMENBQUUsV0FBVyxDQUFDLFNBQVMsRUFBRTtRQUVuRCxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7Z0RBM0RJLFFBQVEsWUFDUixJQUFJLFlBQ0osTUFBTSxTQUFDLDJCQUEyQjtnQkFFSCxVQUFVLHVCQUF6QyxNQUFNLFNBQUMsVUFBVTtnQkFFUyxTQUFTLHVCQURuQyxNQUFNLFNBQUMsU0FBUztnQkFHUSxNQUFNLHVCQUQ5QixNQUFNLFNBQUMsTUFBTTs7SUFUVCxzQkFBc0I7UUFEbEMsU0FBUyxFQUFFO1FBR0gsV0FBQSxRQUFRLEVBQUUsQ0FBQTtRQUNWLFdBQUEsSUFBSSxFQUFFLENBQUE7UUFDTixXQUFBLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxDQUFBO1FBRW5DLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2xCLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBRWpCLFdBQUEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO09BVFYsc0JBQXNCLENBOERsQztJQUFELDZCQUFDO0NBQUEsQUE5REQsQ0FBNEMsMkJBQTJCLEdBOER0RTtTQTlEWSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCxcbiAgICBOZ1pvbmUsXG4gICAgT3B0aW9uYWwsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3J9IGZyb20gJ0B0YWlnYS11aS9jZGsvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90b2tlbnMnO1xuXG5pbXBvcnQge0Fic3RyYWN0VHVpQXV0b2ZvY3VzSGFuZGxlcn0gZnJvbSAnLi9hYnN0cmFjdC5oYW5kbGVyJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgVHVpSW9zQXV0b2ZvY3VzSGFuZGxlciBleHRlbmRzIEFic3RyYWN0VHVpQXV0b2ZvY3VzSGFuZGxlciB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBTZWxmKClcbiAgICAgICAgQEluamVjdChUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IpXG4gICAgICAgIHR1aUZvY3VzYWJsZUNvbXBvbmVudDogVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChSZW5kZXJlcjIpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgQEluamVjdChOZ1pvbmUpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKHR1aUZvY3VzYWJsZUNvbXBvbmVudCwgZWxlbWVudFJlZik7XG4gICAgfVxuXG4gICAgc2V0Rm9jdXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzVGV4dEZpZWxkRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gdGhpcy5pb3NXZWJraXRBdXRvZm9jdXMoKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW9zV2Via2l0QXV0b2ZvY3VzKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBmYWtlSW5wdXQ6IEhUTUxFbGVtZW50ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdpbnB1dCcpO1xuXG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5vcGFjaXR5ID0gJzAnO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUuaGVpZ2h0ID0gJzAnO1xuXG4gICAgICAgIGNvbnN0IGJsdXJIYW5kbGVyID0gKCk6IHZvaWQgPT4gZmFrZUlucHV0LmZvY3VzKCk7XG4gICAgICAgIGNvbnN0IGZvY3VzSGFuZGxlciA9ICgpOiB2b2lkID0+IHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5mb2N1cygpO1xuXG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogQG5vdGU6XG4gICAgICAgICAgICAgICAgICogV2UgY2FuJ3QgcmVtb3ZlIHRoZSBlbGVtZW50IGltbWVkaWF0ZWx5LCBiZWNhdXNlIGl0IGJyZWFrcyBmbG93XG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGZha2VJbnB1dC5yZW1vdmVFdmVudExpc3RlbmVyKCdibHVyJywgYmx1ckhhbmRsZXIpO1xuICAgICAgICAgICAgICAgICAgICBmYWtlSW5wdXQucmVtb3ZlRXZlbnRMaXN0ZW5lcignZm9jdXMnLCBmb2N1c0hhbmRsZXIpO1xuICAgICAgICAgICAgICAgICAgICBmYWtlSW5wdXQucmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcblxuICAgICAgICAvKipcbiAgICAgICAgICogQG5vdGU6IHBpbmctcG9uZyBlYWdlciBzdHJhdGVneSBoYWNrXG4gICAgICAgICAqIEFmdGVyIGNyZWF0aW5nIGFuIGVsZW1lbnQgYW5kIGJyaW5naW5nIGl0IGludG8gRE9NLFxuICAgICAgICAgKiB0aGUgYnJvd3NlciBhdXRvbWF0aWNhbGx5IGZvY3VzZXMgb24gdGhlIGludmlzaWJsZSBlbGVtZW50LlxuICAgICAgICAgKiBBbmQgdGhlbiwgYWZ0ZXIgZm9jdXMgaXMgdHJpZ2dlcmVkLCB3ZSB0cnkgdG8gZm9jdXMgb24gdGFyZ2V0IGVsZW1lbnQsIGFuZCBpZiB3ZSBtYW5hZ2VkIHRvIHJlZm9jdXMsXG4gICAgICAgICAqIHRoZW4gd2UgdHJ5IHRvIGZvY3VzIGFnYWluIG9uIGFuIGludmlzaWJsZSBlbGVtZW50LCBzbyB0aGF0IHRoZSBrZXlib2FyZCBzbG93bHkgYXBwZWFycy5cbiAgICAgICAgICogVGhpcyBwaW5nIHBvbmcgYWxsb3dzIHRoZSBrZXlib2FyZCB0byBub3Qgb3ZlcmxhcCB0aGUgbW9kYWwgd2luZG93LlxuICAgICAgICAgKi9cbiAgICAgICAgZmFrZUlucHV0LmFkZEV2ZW50TGlzdGVuZXIoJ2JsdXInLCBibHVySGFuZGxlciwge29uY2U6IHRydWV9KTtcbiAgICAgICAgZmFrZUlucHV0LmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3VzJywgZm9jdXNIYW5kbGVyKTtcblxuICAgICAgICB0aGlzLmVsZW1lbnQucGFyZW50RWxlbWVudD8uYXBwZW5kQ2hpbGQoZmFrZUlucHV0KTtcblxuICAgICAgICBmYWtlSW5wdXQuZm9jdXMoKTtcbiAgICB9XG59XG4iXX0=
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW9zLmhhbmRsZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvYXV0by1mb2N1cy8iLCJzb3VyY2VzIjpbImhhbmRsZXJzL2lvcy5oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sTUFBTSxFQUNOLFFBQVEsRUFDUixTQUFTLEVBQ1QsSUFBSSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUzQyxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRSxPQUFPLEVBQUMsRUFBRSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFdkMsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFFL0QsV0FBVztBQUVYO0lBQTRDLDBDQUEyQjtJQUNuRSxnQ0FJSSxxQkFBeUQsRUFDckMsVUFBbUMsRUFDbkIsUUFBbUIsRUFDdEIsTUFBYyxFQUNkLFNBQWlCO1FBUnRELFlBVUksa0JBQU0scUJBQXFCLEVBQUUsVUFBVSxDQUFDLFNBRTNDO1FBTnVDLGNBQVEsR0FBUixRQUFRLENBQVc7UUFDdEIsWUFBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGVBQVMsR0FBVCxTQUFTLENBQVE7UUFHbEQsS0FBSSxDQUFDLGNBQWMsRUFBRSxDQUFDOztJQUMxQixDQUFDO0lBRUQseUNBQVEsR0FBUjtRQUFBLGlCQU1DO1FBTEcsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxjQUFNLE9BQUEsS0FBSSxDQUFDLGtCQUFrQixFQUFFLEVBQXpCLENBQXlCLENBQUMsQ0FBQztTQUNsRTthQUFNO1lBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUN4QjtJ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RSxDQUFBO1FBQ1YsV0FBQSxJQUFJLEVBQUUsQ0FBQTtRQUNOLFdBQUEsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUE7UUFFbkMsV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbEIsV0FBQSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDakIsV0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDZCxXQUFBLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtPQVRWLHNCQUFzQixDQXNIbEM7SUFBRCw2QkFBQztDQUFBLEFBdEhELENBQTRDLDJCQUEyQixHQXNIdEU7U0F0SFksc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3QsXG4gICAgTmdab25lLFxuICAgIE9wdGlvbmFsLFxuICAgIFJlbmRlcmVyMixcbiAgICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7VHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1J9IGZyb20gJ0B0YWlnYS11aS9jZGsvdG9rZW5zJztcbmltcG9ydCB7cHh9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMnO1xuXG5pbXBvcnQge0Fic3RyYWN0VHVpQXV0b2ZvY3VzSGFuZGxlcn0gZnJvbSAnLi9hYnN0cmFjdC5oYW5kbGVyJztcblxuLy8gQGR5bmFtaWNcbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIFR1aUlvc0F1dG9mb2N1c0hhbmRsZXIgZXh0ZW5kcyBBYnN0cmFjdFR1aUF1dG9mb2N1c0hhbmRsZXIge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SKVxuICAgICAgICB0dWlGb2N1c2FibGVDb21wb25lbnQ6IFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvciB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoUmVuZGVyZXIyKSBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lLFxuICAgICAgICBASW5qZWN0KFdJTkRPVykgcHJpdmF0ZSByZWFkb25seSB3aW5kb3dSZWY6IFdpbmRvdyxcbiAgICApIHtcbiAgICAgICAgc3VwZXIodHVpRm9jdXNhYmxlQ29tcG9uZW50LCBlbGVtZW50UmVmKTtcbiAgICAgICAgdGhpcy5wYXRjaENzc1N0eWxlcygpO1xuICAgIH1cblxuICAgIHNldEZvY3VzKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc1RleHRGaWVsZEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHRoaXMuaW9zV2Via2l0QXV0b2ZvY3VzKCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5lbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGlvc1dlYmtpdEF1dG9mb2N1cygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmFrZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50ID0gdGhpcy5tYWtlRmFrZUlucHV0KCk7XG4gICAgICAgIGNvbnN0IGR1cmF0aW9uID0gdGhpcy5nZXREdXJhdGlvblRpbWVCZWZvcmVGb2N1cygpO1xuICAgICAgICBsZXQgZmFrZUZvY3VzVGltZW91dElkID0gMDtcbiAgICAgICAgbGV0IGVsZW1lbnRGb2N1c1RpbWVvdXRJZCA9IDA7XG5cbiAgICAgICAgY29uc3QgYmx1ckhhbmRsZXIgPSAoKTogdm9pZCA9PiBmYWtlSW5wdXQuZm9jdXMoe3ByZXZlbnRTY3JvbGw6IHRydWV9KTtcbiAgICAgICAgY29uc3QgZm9jdXNIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KGZha2VGb2N1c1RpbWVvdXRJZCk7XG5cbiAgICAgICAgICAgIGZha2VGb2N1c1RpbWVvdXRJZCA9IHRoaXMud2luZG93UmVmLnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNsZWFyVGltZW91dChlbGVtZW50Rm9jdXNUaW1lb3V0SWQpO1xuXG4gICAgICAgICAgICAgICAgZmFrZUlucHV0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2JsdXInLCBibHVySGFuZGxlcik7XG4gICAgICAgICAgICAgICAgZmFrZUlucHV0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3VzJywgZm9jdXNIYW5kbGVyKTtcblxuICAgICAgICAgICAgICAgIGVsZW1lbnRGb2N1c1RpbWVvdXRJZCA9IHRoaXMud2luZG93UmVmLnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuZm9jdXMoe3ByZXZlbnRTY3JvbGw6IGZhbHNlfSk7XG4gICAgICAgICAgICAgICAgICAgIGZha2VJbnB1dC5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB9LCBkdXJhdGlvbik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcblxuICAgICAgICBmYWtlSW5wdXQuYWRkRXZlbnRMaXN0ZW5lcignYmx1cicsIGJsdXJIYW5kbGVyLCB7b25jZTogdHJ1ZX0pO1xuICAgICAgICBmYWtlSW5wdXQuYWRkRXZlbnRMaXN0ZW5lcignZm9jdXMnLCBmb2N1c0hhbmRsZXIpO1xuXG4gICAgICAgIGlmICh0aGlzLmluc2lkZURpYWxvZygpKSB7XG4gICAgICAgICAgICB0aGlzLndpbmRvd1JlZi5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZha2VJbnB1dCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnQucGFyZW50RWxlbWVudD8uYXBwZW5kQ2hpbGQoZmFrZUlucHV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZha2VJbnB1dC5mb2N1cyh7cHJldmVudFNjcm9sbDogdHJ1ZX0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBub3RlOlxuICAgICAqIGVtdWxhdGUgdGV4dGZpZWxkIHBvc2l0aW9uIGluIGxheW91dCB3aXRoIGN1cnNvclxuICAgICAqIGJlZm9yZSBmb2N1cyB0byByZWFsIHRleHRmaWVsZCBlbGVtZW50XG4gICAgICovXG4gICAgcHJpdmF0ZSBtYWtlRmFrZUlucHV0KCk6IEhUTUxJbnB1dEVsZW1lbnQge1xuICAgICAgICBjb25zdCBmYWtlSW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7XG4gICAgICAgIGNvbnN0IHJlY3Q6IERPTVJlY3QgPSB0aGlzLmVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLmhlaWdodCA9IHB4KHJlY3QuaGVpZ2h0KTtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLndpZHRoID0gcHgocmVjdC53aWR0aCAvIDIpO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUucG9zaXRpb24gPSAnZml4ZWQnO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUub3BhY2l0eSA9ICcwJztcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLmZvbnRTaXplID0gcHgoMTYpOyAvLyBkaXNhYmxlIHBvc3NpYmxlIGF1dG8gem9vbVxuICAgICAgICBmYWtlSW5wdXQucmVhZE9ubHkgPSB0cnVlOyAvLyBwcmV2ZW50IGtleWJvYXJkIGZvciBmYWtlIGlucHV0XG5cbiAgICAgICAgLy8gQG5vdGU6IGVtdWxhdGUgcG9zaXRpb24gY3Vyc29yIGJlZm9yZSBmb2N1cyB0byByZWFsIHRleHRmaWVsZCBlbGVtZW50XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS50b3AgPSBweChyZWN0LnRvcCk7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5sZWZ0ID0gcHgocmVjdC5sZWZ0KTtcblxuICAgICAgICByZXR1cm4gZmFrZUlucHV0O1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RHVyYXRpb25UaW1lQmVmb3JlRm9jdXMoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHBhcnNlRmxvYXQoXG4gICAgICAgICAgICAgICAgdGhpcy53aW5kb3dSZWZcbiAgICAgICAgICAgICAgICAgICAgLmdldENvbXB1dGVkU3R5bGUodGhpcy5lbGVtZW50KVxuICAgICAgICAgICAgICAgICAgICAuZ2V0UHJvcGVydHlWYWx1ZSgnLS10dWktZHVyYXRpb24nKSxcbiAgICAgICAgICAgICkgfHwgMFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBub3RlOlxuICAgICAqIHVuZm9ydHVuYXRlbHksIGluIG9sZGVyIHZlcnNpb25zIG9mIGlPU1xuICAgICAqIHRoZXJlIGlzIGEgYnVnIHRoYXQgdGhlIGZha2UgaW5wdXQgY3Vyc29yXG4gICAgICogd2lsbCBtb3ZlIGFsb25nIHdpdGggdGhlIGRpYWxvZyBhbmltYXRpb25cbiAgICAgKiBhbmQgdGhlbiB0aGF0IGRpYWxvZyB3aWxsIGJlIHNoYWtpbmdcbiAgICAgKi9cbiAgICBwcml2YXRlIGluc2lkZURpYWxvZygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5lbGVtZW50LmNsb3Nlc3QoJ3R1aS1kaWFsb2cnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAbm90ZTpcbiAgICAgKiBUaGlzIGlzIG5lY2Vzc2FyeSBzbyB0aGF0IHRoZSB2aWV3cG9ydCBpc24ndCByZWNhbGN1bGF0ZWRcbiAgICAgKiBhbmQgdGhlbiB0aGUgZGlhbG9ncyBkb24ndCBzaGFrZS5cbiAgICAgKlxuICAgICAqIEFsc28sIHdlIG5lZWQgdG8gZml4ZWQgaGVpZ2h0IHZpZXdwb3J0LFxuICAgICAqIHNvIHRoYXQgd2hlbiBmb2N1c2luZyB0aGUgZGlhbG9ncyBkb24ndCBzaGFrZVxuICAgICAqL1xuICAgIHByaXZhdGUgcGF0Y2hDc3NTdHlsZXMoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRvY3VtZW50UmVmID0gdGhpcy53aW5kb3dSZWYuZG9jdW1lbnQ7XG5cbiAgICAgICAgZm9yIChjb25zdCBlbGVtZW50IG9mIFtkb2N1bWVudFJlZi5kb2N1bWVudEVsZW1lbnQsIGRvY3VtZW50UmVmLmJvZHldKSB7XG4gICAgICAgICAgICBlbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdvdmVyZmxvdycsICdhdXRvJyk7XG4gICAgICAgICAgICBlbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdoZWlnaHQnLCAnMTAwJScpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -1,10 +1,21 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
1
2
  export var TuiCreditCardAutofillName;
2
3
  (function (TuiCreditCardAutofillName) {
3
4
  TuiCreditCardAutofillName["Off"] = "off";
4
5
  TuiCreditCardAutofillName["CcName"] = "cc-name";
5
6
  TuiCreditCardAutofillName["CcNumber"] = "cc-number";
6
7
  TuiCreditCardAutofillName["CcCsc"] = "cc-csc";
8
+ TuiCreditCardAutofillName["CcExpMonth"] = "cc-exp-month";
9
+ /**
10
+ * @deprecated
11
+ * TODO: 3.0 replace with {@link CcExpMonth}
12
+ */
7
13
  TuiCreditCardAutofillName["CcExp_mounth"] = "cc-exp-month";
14
+ TuiCreditCardAutofillName["CcExpYear"] = "cc-exp-year";
15
+ /**
16
+ * @deprecated
17
+ * TODO: 3.0 replace with {@link CcExpYear}
18
+ */
8
19
  TuiCreditCardAutofillName["CcExp_year"] = "cc-exp-year";
9
20
  TuiCreditCardAutofillName["CcExp"] = "cc-exp";
10
21
  TuiCreditCardAutofillName["CcType"] = "cc-type";
@@ -52,4 +63,4 @@ export var TuiTransactionAutofillName;
52
63
  TuiTransactionAutofillName["TransactionCurrency"] = "transaction-currency";
53
64
  TuiTransactionAutofillName["TransactionAmount"] = "transaction-amount";
54
65
  })(TuiTransactionAutofillName || (TuiTransactionAutofillName = {}));
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay9lbnVtcy8iLCJzb3VyY2VzIjpbImF1dG9jb21wbGV0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBa0IseUJBU2pCO0FBVEQsV0FBa0IseUJBQXlCO0lBQ3ZDLHdDQUFXLENBQUE7SUFDWCwrQ0FBa0IsQ0FBQTtJQUNsQixtREFBc0IsQ0FBQTtJQUN0Qiw2Q0FBZ0IsQ0FBQTtJQUNoQiwwREFBNkIsQ0FBQTtJQUM3Qix1REFBMEIsQ0FBQTtJQUMxQiw2Q0FBZ0IsQ0FBQTtJQUNoQiwrQ0FBa0IsQ0FBQTtBQUN0QixDQUFDLEVBVGlCLHlCQUF5QixLQUF6Qix5QkFBeUIsUUFTMUM7QUFFRCxNQUFNLENBQU4sSUFBa0IsbUJBTWpCO0FBTkQsV0FBa0IsbUJBQW1CO0lBQ2pDLGtDQUFXLENBQUE7SUFDWCxvQ0FBYSxDQUFBO0lBQ2IsK0NBQXdCLENBQUE7SUFDeEIseURBQWtDLENBQUE7SUFDbEMsaURBQTBCLENBQUE7QUFDOUIsQ0FBQyxFQU5pQixtQkFBbUIsS0FBbkIsbUJBQW1CLFFBTXBDO0FBRUQsTUFBTSxDQUFOLElBQWtCLHNCQUtqQjtBQUxELFdBQWtCLHNCQUFzQjtJQUNwQyxxQ0FBVyxDQUFBO0lBQ1gsK0NBQXFCLENBQUE7SUFDckIsc0RBQTRCLENBQUE7SUFDNUIsOERBQW9DLENBQUE7QUFDeEMsQ0FBQyxFQUxpQixzQkFBc0IsS0FBdEIsc0JBQXNCLFFBS3ZDO0FBRUQsTUFBTSxDQUFOLElBQWtCLG9CQUdqQjtBQUhELFdBQWtCLG9CQUFvQjtJQUNsQyxtQ0FBVyxDQUFBO0lBQ1gsdUNBQWUsQ0FBQTtBQUNuQixDQUFDLEVBSGlCLG9CQUFvQixLQUFwQixvQkFBb0IsUUFHckM7QUFFRCxNQUFNLENBQU4sSUFBa0Isc0JBS2pCO0FBTEQsV0FBa0Isc0JBQXNCO0lBQ3BDLHFDQUFXLENBQUE7SUFDWCwwREFBZ0MsQ0FBQTtJQUNoQyxvREFBMEIsQ0FBQTtJQUMxQixzREFBNEIsQ0FBQTtBQUNoQyxDQUFDLEVBTGlCLHNCQUFzQixLQUF0QixzQkFBc0IsUUFLdkM7QUFFRCxNQUFNLENBQU4sSUFBa0Isb0JBR2pCO0FBSEQsV0FBa0Isb0JBQW9CO0lBQ2xDLG1DQUFXLENBQUE7SUFDWCxtQ0FBVyxDQUFBO0FBQ2YsQ0FBQyxFQUhpQixvQkFBb0IsS0FBcEIsb0JBQW9CLFFBR3JDO0FBRUQsTUFBTSxDQUFOLElBQWtCLG1CQUdqQjtBQUhELFdBQWtCLG1CQUFtQjtJQUNqQyxrQ0FBVyxDQUFBO0lBQ1gsb0NBQWEsQ0FBQTtBQUNqQixDQUFDLEVBSGlCLG1CQUFtQixLQUFuQixtQkFBbUIsUUFHcEM7QUFFRCxNQUFNLENBQU4sSUFBa0IsMEJBSWpCO0FBSkQsV0FBa0IsMEJBQTBCO0lBQ3hDLHlDQUFXLENBQUE7SUFDWCwwRUFBNEMsQ0FBQTtJQUM1QyxzRUFBd0MsQ0FBQTtBQUM1QyxDQUFDLEVBSmlCLDBCQUEwQixLQUExQiwwQkFBMEIsUUFJM0MiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW51bSBUdWlDcmVkaXRDYXJkQXV0b2ZpbGxOYW1lIHtcbiAgICBPZmYgPSAnb2ZmJyxcbiAgICBDY05hbWUgPSAnY2MtbmFtZScsXG4gICAgQ2NOdW1iZXIgPSAnY2MtbnVtYmVyJyxcbiAgICBDY0NzYyA9ICdjYy1jc2MnLFxuICAgIENjRXhwX21vdW50aCA9ICdjYy1leHAtbW9udGgnLFxuICAgIENjRXhwX3llYXIgPSAnY2MtZXhwLXllYXInLFxuICAgIENjRXhwID0gJ2NjLWV4cCcsXG4gICAgQ2NUeXBlID0gJ2NjLXR5cGUnLFxufVxuXG5leHBvcnQgY29uc3QgZW51bSBUdWlOYW1lQXV0b2ZpbGxOYW1lIHtcbiAgICBPZmYgPSAnb2ZmJyxcbiAgICBOYW1lID0gJ25hbWUnLFxuICAgIEdpdmVuTmFtZSA9ICdnaXZlbi1uYW1lJyxcbiAgICBBZGRpdGlvbmFsTmFtZSA9ICdhZGRpdGlvbmFsLW5hbWUnLFxuICAgIEZhbWlseU5hbWUgPSAnZmFtaWx5LW5hbWUnLFxufVxuXG5leHBvcnQgY29uc3QgZW51bSBUdWlBY2NvdW50QXV0b2ZpbGxOYW1lIHtcbiAgICBPZmYgPSAnb2ZmJyxcbiAgICBVc2VybmFtZSA9ICd1c2VybmFtZScsXG4gICAgTmV3UGFzc3dvcmQgPSAnbmV3LXBhc3N3b3JkJyxcbiAgICBDdXJyZW50UGFzc3dvcmQgPSAnY3VycmVudC1wYXNzd29yZCcsXG59XG5cbmV4cG9ydCBjb25zdCBlbnVtIFR1aUVtYWlsQXV0b2ZpbGxOYW1lIHtcbiAgICBPZmYgPSAnb2ZmJyxcbiAgICBFbWFpbCA9ICdlbWFpbCcsXG59XG5cbmV4cG9ydCBjb25zdCBlbnVtIFR1aUFkZHJlc3NBdXRvZmlsbE5hbWUge1xuICAgIE9mZiA9ICdvZmYnLFxuICAgIFN0cmVldEFkZHJlc3MgPSAnc3RyZWV0LWFkZHJlc3MnLFxuICAgIFBvc3RhbENvZGUgPSAncG9zdGFsLWNvZGUnLFxuICAgIENvdW50cnlOYW1lID0gJ2NvdW50cnktbmFtZScsXG59XG5cbmV4cG9ydCBjb25zdCBlbnVtIFR1aVBob25lQXV0b2ZpbGxOYW1lIHtcbiAgICBPZmYgPSAnb2ZmJyxcbiAgICBUZWwgPSAndGVsJyxcbn1cblxuZXhwb3J0IGNvbnN0IGVudW0gVHVpRGF0ZUF1dG9maWxsTmFtZSB7XG4gICAgT2ZmID0gJ29mZicsXG4gICAgQmRheSA9ICdiZGF5Jyxcbn1cblxuZXhwb3J0IGNvbnN0IGVudW0gVHVpVHJhbnNhY3Rpb25BdXRvZmlsbE5hbWUge1xuICAgIE9mZiA9ICdvZmYnLFxuICAgIFRyYW5zYWN0aW9uQ3VycmVuY3kgPSAndHJhbnNhY3Rpb24tY3VycmVuY3knLFxuICAgIFRyYW5zYWN0aW9uQW1vdW50ID0gJ3RyYW5zYWN0aW9uLWFtb3VudCcsXG59XG5cbmV4cG9ydCB0eXBlIFR1aUF1dG9maWxsRmllbGROYW1lVCA9XG4gICAgfCAnb2ZmJ1xuICAgIC8vIFR1aUNyZWRpdENhcmRBdXRvZmlsbE5hbWVcbiAgICB8ICdjYy1uYW1lJ1xuICAgIHwgJ2NjLW51bWJlcidcbiAgICB8ICdjYy1jc2MnXG4gICAgfCAnY2MtZXhwLW1vbnRoJ1xuICAgIHwgJ2NjLWV4cC15ZWFyJ1xuICAgIHwgJ2NjLWV4cCdcbiAgICB8ICdjYy10eXBlJ1xuICAgIC8vIFR1aU5hbWVBdXRvZmlsbE5hbWVcbiAgICB8ICduYW1lJ1xuICAgIHwgJ2dpdmVuLW5hbWUnXG4gICAgfCAnYWRkaXRpb25hbC1uYW1lJ1xuICAgIHwgJ2ZhbWlseS1uYW1lJ1xuICAgIC8vIFR1aUFjY291bnRBdXRvZmlsbE5hbWVcbiAgICB8ICd1c2VybmFtZSdcbiAgICB8ICduZXctcGFzc3dvcmQnXG4gICAgfCAnY3VycmVudC1wYXNzd29yZCdcbiAgICAvLyBUdWlFbWFpbEF1dG9maWxsTmFtZVxuICAgIHwgJ2VtYWlsJ1xuICAgIC8vIFR1aUFkZHJlc3NBdXRvZmlsbE5hbWVcbiAgICB8ICdzdHJlZXQtYWRkcmVzcydcbiAgICB8ICdwb3N0YWwtY29kZSdcbiAgICB8ICdjb3VudHJ5LW5hbWUnXG4gICAgLy8gVHVpUGhvbmVBdXRvZmlsbE5hbWVcbiAgICB8ICd0ZWwnXG4gICAgLy8gVHVpRGF0ZUF1dG9maWxsTmFtZVxuICAgIHwgJ2JkYXknXG4gICAgLy8gVHVpVHJhbnNhY3Rpb25BdXRvZmlsbE5hbWVcbiAgICB8ICd0cmFuc2FjdGlvbi1jdXJyZW5jeSdcbiAgICB8ICd0cmFuc2FjdGlvbi1hbW91bnQnO1xuXG5leHBvcnQgdHlwZSBUdWlBdXRvZmlsbEZpZWxkTmFtZSA9XG4gICAgfCBUdWlBdXRvZmlsbEZpZWxkTmFtZVRcbiAgICB8IFR1aUNyZWRpdENhcmRBdXRvZmlsbE5hbWVcbiAgICB8IFR1aU5hbWVBdXRvZmlsbE5hbWVcbiAgICB8IFR1aUFjY291bnRBdXRvZmlsbE5hbWVcbiAgICB8IFR1aUVtYWlsQXV0b2ZpbGxOYW1lXG4gICAgfCBUdWlBZGRyZXNzQXV0b2ZpbGxOYW1lXG4gICAgfCBUdWlQaG9uZUF1dG9maWxsTmFtZVxuICAgIHwgVHVpRGF0ZUF1dG9maWxsTmFtZVxuICAgIHwgVHVpVHJhbnNhY3Rpb25BdXRvZmlsbE5hbWU7XG4iXX0=
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay9lbnVtcy8iLCJzb3VyY2VzIjpbImF1dG9jb21wbGV0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5REFBeUQ7QUFDekQsTUFBTSxDQUFOLElBQWtCLHlCQW1CakI7QUFuQkQsV0FBa0IseUJBQXlCO0lBQ3ZDLHdDQUFXLENBQUE7SUFDWCwrQ0FBa0IsQ0FBQTtJQUNsQixtREFBc0IsQ0FBQTtJQUN0Qiw2Q0FBZ0IsQ0FBQTtJQUNoQix3REFBMkIsQ0FBQTtJQUMzQjs7O09BR0c7SUFDSCwwREFBNkIsQ0FBQTtJQUM3QixzREFBeUIsQ0FBQTtJQUN6Qjs7O09BR0c7SUFDSCx1REFBMEIsQ0FBQTtJQUMxQiw2Q0FBZ0IsQ0FBQTtJQUNoQiwrQ0FBa0IsQ0FBQTtBQUN0QixDQUFDLEVBbkJpQix5QkFBeUIsS0FBekIseUJBQXlCLFFBbUIxQztBQUVELE1BQU0sQ0FBTixJQUFrQixtQkFNakI7QUFORCxXQUFrQixtQkFBbUI7SUFDakMsa0NBQVcsQ0FBQTtJQUNYLG9DQUFhLENBQUE7SUFDYiwrQ0FBd0IsQ0FBQTtJQUN4Qix5REFBa0MsQ0FBQTtJQUNsQyxpREFBMEIsQ0FBQTtBQUM5QixDQUFDLEVBTmlCLG1CQUFtQixLQUFuQixtQkFBbUIsUUFNcEM7QUFFRCxNQUFNLENBQU4sSUFBa0Isc0JBS2pCO0FBTEQsV0FBa0Isc0JBQXNCO0lBQ3BDLHFDQUFXLENBQUE7SUFDWCwrQ0FBcUIsQ0FBQTtJQUNyQixzREFBNEIsQ0FBQTtJQUM1Qiw4REFBb0MsQ0FBQTtBQUN4QyxDQUFDLEVBTGlCLHNCQUFzQixLQUF0QixzQkFBc0IsUUFLdkM7QUFFRCxNQUFNLENBQU4sSUFBa0Isb0JBR2pCO0FBSEQsV0FBa0Isb0JBQW9CO0lBQ2xDLG1DQUFXLENBQUE7SUFDWCx1Q0FBZSxDQUFBO0FBQ25CLENBQUMsRUFIaUIsb0JBQW9CLEtBQXBCLG9CQUFvQixRQUdyQztBQUVELE1BQU0sQ0FBTixJQUFrQixzQkFLakI7QUFMRCxXQUFrQixzQkFBc0I7SUFDcEMscUNBQVcsQ0FBQTtJQUNYLDBEQUFnQyxDQUFBO0lBQ2hDLG9EQUEwQixDQUFBO0lBQzFCLHNEQUE0QixDQUFBO0FBQ2hDLENBQUMsRUFMaUIsc0JBQXNCLEtBQXRCLHNCQUFzQixRQUt2QztBQUVELE1BQU0sQ0FBTixJQUFrQixvQkFHakI7QUFIRCxXQUFrQixvQkFBb0I7SUFDbEMsbUNBQVcsQ0FBQTtJQUNYLG1DQUFXLENBQUE7QUFDZixDQUFDLEVBSGlCLG9CQUFvQixLQUFwQixvQkFBb0IsUUFHckM7QUFFRCxNQUFNLENBQU4sSUFBa0IsbUJBR2pCO0FBSEQsV0FBa0IsbUJBQW1CO0lBQ2pDLGtDQUFXLENBQUE7SUFDWCxvQ0FBYSxDQUFBO0FBQ2pCLENBQUMsRUFIaUIsbUJBQW1CLEtBQW5CLG1CQUFtQixRQUdwQztBQUVELE1BQU0sQ0FBTixJQUFrQiwwQkFJakI7QUFKRCxXQUFrQiwwQkFBMEI7SUFDeEMseUNBQVcsQ0FBQTtJQUNYLDBFQUE0QyxDQUFBO0lBQzVDLHNFQUF3QyxDQUFBO0FBQzVDLENBQUMsRUFKaUIsMEJBQTBCLEtBQTFCLDBCQUEwQixRQUkzQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvbiAqL1xuZXhwb3J0IGNvbnN0IGVudW0gVHVpQ3JlZGl0Q2FyZEF1dG9maWxsTmFtZSB7XG4gICAgT2ZmID0gJ29mZicsXG4gICAgQ2NOYW1lID0gJ2NjLW5hbWUnLFxuICAgIENjTnVtYmVyID0gJ2NjLW51bWJlcicsXG4gICAgQ2NDc2MgPSAnY2MtY3NjJyxcbiAgICBDY0V4cE1vbnRoID0gJ2NjLWV4cC1tb250aCcsXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKiBUT0RPOiAzLjAgcmVwbGFjZSB3aXRoIHtAbGluayBDY0V4cE1vbnRofVxuICAgICAqL1xuICAgIENjRXhwX21vdW50aCA9ICdjYy1leHAtbW9udGgnLFxuICAgIENjRXhwWWVhciA9ICdjYy1leHAteWVhcicsXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKiBUT0RPOiAzLjAgcmVwbGFjZSB3aXRoIHtAbGluayBDY0V4cFllYXJ9XG4gICAgICovXG4gICAgQ2NFeHBfeWVhciA9ICdjYy1leHAteWVhcicsXG4gICAgQ2NFeHAgPSAnY2MtZXhwJyxcbiAgICBDY1R5cGUgPSAnY2MtdHlwZScsXG59XG5cbmV4cG9ydCBjb25zdCBlbnVtIFR1aU5hbWVBdXRvZmlsbE5hbWUge1xuICAgIE9mZiA9ICdvZmYnLFxuICAgIE5hbWUgPSAnbmFtZScsXG4gICAgR2l2ZW5OYW1lID0gJ2dpdmVuLW5hbWUnLFxuICAgIEFkZGl0aW9uYWxOYW1lID0gJ2FkZGl0aW9uYWwtbmFtZScsXG4gICAgRmFtaWx5TmFtZSA9ICdmYW1pbHktbmFtZScsXG59XG5cbmV4cG9ydCBjb25zdCBlbnVtIFR1aUFjY291bnRBdXRvZmlsbE5hbWUge1xuICAgIE9mZiA9ICdvZmYnLFxuICAgIFVzZXJuYW1lID0gJ3VzZXJuYW1lJyxcbiAgICBOZXdQYXNzd29yZCA9ICduZXctcGFzc3dvcmQnLFxuICAgIEN1cnJlbnRQYXNzd29yZCA9ICdjdXJyZW50LXBhc3N3b3JkJyxcbn1cblxuZXhwb3J0IGNvbnN0IGVudW0gVHVpRW1haWxBdXRvZmlsbE5hbWUge1xuICAgIE9mZiA9ICdvZmYnLFxuICAgIEVtYWlsID0gJ2VtYWlsJyxcbn1cblxuZXhwb3J0IGNvbnN0IGVudW0gVHVpQWRkcmVzc0F1dG9maWxsTmFtZSB7XG4gICAgT2ZmID0gJ29mZicsXG4gICAgU3RyZWV0QWRkcmVzcyA9ICdzdHJlZXQtYWRkcmVzcycsXG4gICAgUG9zdGFsQ29kZSA9ICdwb3N0YWwtY29kZScsXG4gICAgQ291bnRyeU5hbWUgPSAnY291bnRyeS1uYW1lJyxcbn1cblxuZXhwb3J0IGNvbnN0IGVudW0gVHVpUGhvbmVBdXRvZmlsbE5hbWUge1xuICAgIE9mZiA9ICdvZmYnLFxuICAgIFRlbCA9ICd0ZWwnLFxufVxuXG5leHBvcnQgY29uc3QgZW51bSBUdWlEYXRlQXV0b2ZpbGxOYW1lIHtcbiAgICBPZmYgPSAnb2ZmJyxcbiAgICBCZGF5ID0gJ2JkYXknLFxufVxuXG5leHBvcnQgY29uc3QgZW51bSBUdWlUcmFuc2FjdGlvbkF1dG9maWxsTmFtZSB7XG4gICAgT2ZmID0gJ29mZicsXG4gICAgVHJhbnNhY3Rpb25DdXJyZW5jeSA9ICd0cmFuc2FjdGlvbi1jdXJyZW5jeScsXG4gICAgVHJhbnNhY3Rpb25BbW91bnQgPSAndHJhbnNhY3Rpb24tYW1vdW50Jyxcbn1cblxuZXhwb3J0IHR5cGUgVHVpQXV0b2ZpbGxGaWVsZE5hbWVUID1cbiAgICB8ICdvZmYnXG4gICAgLy8gVHVpQ3JlZGl0Q2FyZEF1dG9maWxsTmFtZVxuICAgIHwgJ2NjLW5hbWUnXG4gICAgfCAnY2MtbnVtYmVyJ1xuICAgIHwgJ2NjLWNzYydcbiAgICB8ICdjYy1leHAtbW9udGgnXG4gICAgfCAnY2MtZXhwLXllYXInXG4gICAgfCAnY2MtZXhwJ1xuICAgIHwgJ2NjLXR5cGUnXG4gICAgLy8gVHVpTmFtZUF1dG9maWxsTmFtZVxuICAgIHwgJ25hbWUnXG4gICAgfCAnZ2l2ZW4tbmFtZSdcbiAgICB8ICdhZGRpdGlvbmFsLW5hbWUnXG4gICAgfCAnZmFtaWx5LW5hbWUnXG4gICAgLy8gVHVpQWNjb3VudEF1dG9maWxsTmFtZVxuICAgIHwgJ3VzZXJuYW1lJ1xuICAgIHwgJ25ldy1wYXNzd29yZCdcbiAgICB8ICdjdXJyZW50LXBhc3N3b3JkJ1xuICAgIC8vIFR1aUVtYWlsQXV0b2ZpbGxOYW1lXG4gICAgfCAnZW1haWwnXG4gICAgLy8gVHVpQWRkcmVzc0F1dG9maWxsTmFtZVxuICAgIHwgJ3N0cmVldC1hZGRyZXNzJ1xuICAgIHwgJ3Bvc3RhbC1jb2RlJ1xuICAgIHwgJ2NvdW50cnktbmFtZSdcbiAgICAvLyBUdWlQaG9uZUF1dG9maWxsTmFtZVxuICAgIHwgJ3RlbCdcbiAgICAvLyBUdWlEYXRlQXV0b2ZpbGxOYW1lXG4gICAgfCAnYmRheSdcbiAgICAvLyBUdWlUcmFuc2FjdGlvbkF1dG9maWxsTmFtZVxuICAgIHwgJ3RyYW5zYWN0aW9uLWN1cnJlbmN5J1xuICAgIHwgJ3RyYW5zYWN0aW9uLWFtb3VudCc7XG5cbmV4cG9ydCB0eXBlIFR1aUF1dG9maWxsRmllbGROYW1lID1cbiAgICB8IFR1aUF1dG9maWxsRmllbGROYW1lVFxuICAgIHwgVHVpQ3JlZGl0Q2FyZEF1dG9maWxsTmFtZVxuICAgIHwgVHVpTmFtZUF1dG9maWxsTmFtZVxuICAgIHwgVHVpQWNjb3VudEF1dG9maWxsTmFtZVxuICAgIHwgVHVpRW1haWxBdXRvZmlsbE5hbWVcbiAgICB8IFR1aUFkZHJlc3NBdXRvZmlsbE5hbWVcbiAgICB8IFR1aVBob25lQXV0b2ZpbGxOYW1lXG4gICAgfCBUdWlEYXRlQXV0b2ZpbGxOYW1lXG4gICAgfCBUdWlUcmFuc2FjdGlvbkF1dG9maWxsTmFtZTtcbiJdfQ==
@@ -1,6 +1,6 @@
1
+ var EDGE = 'edge/';
1
2
  export function isEdgeOlderThan(version, userAgent) {
2
- var EDGE = 'edge/';
3
3
  var currentVersion = parseInt(userAgent.slice(userAgent.toLowerCase().indexOf(EDGE) + EDGE.length), 10);
4
4
  return currentVersion < version;
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZWRnZS1vbGRlci10aGFuLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9icm93c2VyLyIsInNvdXJjZXMiOlsiaXMtZWRnZS1vbGRlci10aGFuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxlQUFlLENBQUMsT0FBZSxFQUFFLFNBQWlCO0lBQzlELElBQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQztJQUNyQixJQUFNLGNBQWMsR0FBRyxRQUFRLENBQzNCLFNBQVMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ3BFLEVBQUUsQ0FDTCxDQUFDO0lBRUYsT0FBTyxjQUFjLEdBQUcsT0FBTyxDQUFDO0FBQ3BDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gaXNFZGdlT2xkZXJUaGFuKHZlcnNpb246IG51bWJlciwgdXNlckFnZW50OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBFREdFID0gJ2VkZ2UvJztcbiAgICBjb25zdCBjdXJyZW50VmVyc2lvbiA9IHBhcnNlSW50KFxuICAgICAgICB1c2VyQWdlbnQuc2xpY2UodXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZihFREdFKSArIEVER0UubGVuZ3RoKSxcbiAgICAgICAgMTAsXG4gICAgKTtcblxuICAgIHJldHVybiBjdXJyZW50VmVyc2lvbiA8IHZlcnNpb247XG59XG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtZWRnZS1vbGRlci10aGFuLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9icm93c2VyLyIsInNvdXJjZXMiOlsiaXMtZWRnZS1vbGRlci10aGFuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLElBQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQztBQUVyQixNQUFNLFVBQVUsZUFBZSxDQUFDLE9BQWUsRUFBRSxTQUFpQjtJQUM5RCxJQUFNLGNBQWMsR0FBRyxRQUFRLENBQzNCLFNBQVMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ3BFLEVBQUUsQ0FDTCxDQUFDO0lBRUYsT0FBTyxjQUFjLEdBQUcsT0FBTyxDQUFDO0FBQ3BDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBFREdFID0gJ2VkZ2UvJztcblxuZXhwb3J0IGZ1bmN0aW9uIGlzRWRnZU9sZGVyVGhhbih2ZXJzaW9uOiBudW1iZXIsIHVzZXJBZ2VudDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY3VycmVudFZlcnNpb24gPSBwYXJzZUludChcbiAgICAgICAgdXNlckFnZW50LnNsaWNlKHVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoRURHRSkgKyBFREdFLmxlbmd0aCksXG4gICAgICAgIDEwLFxuICAgICk7XG5cbiAgICByZXR1cm4gY3VycmVudFZlcnNpb24gPCB2ZXJzaW9uO1xufVxuIl19
@@ -1,6 +1,6 @@
1
1
  export function isSafari(element) {
2
2
  var documentRef = element.ownerDocument;
3
- var windowRef = documentRef && documentRef.defaultView;
3
+ var windowRef = documentRef === null || documentRef === void 0 ? void 0 : documentRef.defaultView;
4
4
  return !!windowRef && 'safari' in windowRef;
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtc2FmYXJpLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9icm93c2VyLyIsInNvdXJjZXMiOlsiaXMtc2FmYXJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxRQUFRLENBQUMsT0FBZ0I7SUFDckMsSUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztJQUMxQyxJQUFNLFNBQVMsR0FBRyxXQUFXLElBQUksV0FBVyxDQUFDLFdBQVcsQ0FBQztJQUV6RCxPQUFPLENBQUMsQ0FBQyxTQUFTLElBQUksUUFBUSxJQUFJLFNBQVMsQ0FBQztBQUNoRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGlzU2FmYXJpKGVsZW1lbnQ6IEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICBjb25zdCBkb2N1bWVudFJlZiA9IGVsZW1lbnQub3duZXJEb2N1bWVudDtcbiAgICBjb25zdCB3aW5kb3dSZWYgPSBkb2N1bWVudFJlZiAmJiBkb2N1bWVudFJlZi5kZWZhdWx0VmlldztcblxuICAgIHJldHVybiAhIXdpbmRvd1JlZiAmJiAnc2FmYXJpJyBpbiB3aW5kb3dSZWY7XG59XG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtc2FmYXJpLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9icm93c2VyLyIsInNvdXJjZXMiOlsiaXMtc2FmYXJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxRQUFRLENBQUMsT0FBZ0I7SUFDckMsSUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztJQUMxQyxJQUFNLFNBQVMsR0FBRyxXQUFXLGFBQVgsV0FBVyx1QkFBWCxXQUFXLENBQUUsV0FBVyxDQUFDO0lBRTNDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsSUFBSSxRQUFRLElBQUksU0FBUyxDQUFDO0FBQ2hELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gaXNTYWZhcmkoZWxlbWVudDogRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGRvY3VtZW50UmVmID0gZWxlbWVudC5vd25lckRvY3VtZW50O1xuICAgIGNvbnN0IHdpbmRvd1JlZiA9IGRvY3VtZW50UmVmPy5kZWZhdWx0VmlldztcblxuICAgIHJldHVybiAhIXdpbmRvd1JlZiAmJiAnc2FmYXJpJyBpbiB3aW5kb3dSZWY7XG59XG4iXX0=
@@ -8,9 +8,9 @@ export function getNativeFocused(documentRef) {
8
8
  return documentRef.activeElement;
9
9
  }
10
10
  var element = documentRef.activeElement.shadowRoot.activeElement;
11
- while (element && element.shadowRoot) {
11
+ while (element === null || element === void 0 ? void 0 : element.shadowRoot) {
12
12
  element = element.shadowRoot.activeElement;
13
13
  }
14
14
  return element;
15
15
  }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW5hdGl2ZS1mb2N1c2VkLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9mb2N1cy8iLCJzb3VyY2VzIjpbImdldC1uYXRpdmUtZm9jdXNlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLFdBQXFCO0lBQ2xELElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUU7UUFDckUsT0FBTyxXQUFXLENBQUMsYUFBYSxDQUFDO0tBQ3BDO0lBRUQsSUFBSSxPQUFPLEdBQUcsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBRWpFLE9BQU8sT0FBTyxJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUU7UUFDbEMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0tBQzlDO0lBRUQsT0FBTyxPQUFPLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmV0dXJucyBjdXJyZW50IGFjdGl2ZSBlbGVtZW50LCBpbmNsdWRpbmcgc2hhZG93IGRvbVxuICpcbiAqIEByZXR1cm4gZWxlbWVudCBvciBudWxsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXROYXRpdmVGb2N1c2VkKGRvY3VtZW50UmVmOiBEb2N1bWVudCk6IEVsZW1lbnQgfCBudWxsIHtcbiAgICBpZiAoIWRvY3VtZW50UmVmLmFjdGl2ZUVsZW1lbnQgfHwgIWRvY3VtZW50UmVmLmFjdGl2ZUVsZW1lbnQuc2hhZG93Um9vdCkge1xuICAgICAgICByZXR1cm4gZG9jdW1lbnRSZWYuYWN0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICBsZXQgZWxlbWVudCA9IGRvY3VtZW50UmVmLmFjdGl2ZUVsZW1lbnQuc2hhZG93Um9vdC5hY3RpdmVFbGVtZW50O1xuXG4gICAgd2hpbGUgKGVsZW1lbnQgJiYgZWxlbWVudC5zaGFkb3dSb290KSB7XG4gICAgICAgIGVsZW1lbnQgPSBlbGVtZW50LnNoYWRvd1Jvb3QuYWN0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICByZXR1cm4gZWxlbWVudDtcbn1cbiJdfQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LW5hdGl2ZS1mb2N1c2VkLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2Nkay91dGlscy9mb2N1cy8iLCJzb3VyY2VzIjpbImdldC1uYXRpdmUtZm9jdXNlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLFdBQXFCO0lBQ2xELElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUU7UUFDckUsT0FBTyxXQUFXLENBQUMsYUFBYSxDQUFDO0tBQ3BDO0lBRUQsSUFBSSxPQUFPLEdBQUcsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBRWpFLE9BQU8sT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLFVBQVUsRUFBRTtRQUN4QixPQUFPLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7S0FDOUM7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSZXR1cm5zIGN1cnJlbnQgYWN0aXZlIGVsZW1lbnQsIGluY2x1ZGluZyBzaGFkb3cgZG9tXG4gKlxuICogQHJldHVybiBlbGVtZW50IG9yIG51bGxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE5hdGl2ZUZvY3VzZWQoZG9jdW1lbnRSZWY6IERvY3VtZW50KTogRWxlbWVudCB8IG51bGwge1xuICAgIGlmICghZG9jdW1lbnRSZWYuYWN0aXZlRWxlbWVudCB8fCAhZG9jdW1lbnRSZWYuYWN0aXZlRWxlbWVudC5zaGFkb3dSb290KSB7XG4gICAgICAgIHJldHVybiBkb2N1bWVudFJlZi5hY3RpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIGxldCBlbGVtZW50ID0gZG9jdW1lbnRSZWYuYWN0aXZlRWxlbWVudC5zaGFkb3dSb290LmFjdGl2ZUVsZW1lbnQ7XG5cbiAgICB3aGlsZSAoZWxlbWVudD8uc2hhZG93Um9vdCkge1xuICAgICAgICBlbGVtZW50ID0gZWxlbWVudC5zaGFkb3dSb290LmFjdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVsZW1lbnQ7XG59XG4iXX0=
@@ -318,6 +318,10 @@ AbstractTuiControl = __decorate([
318
318
  Directive()
319
319
  ], AbstractTuiControl);
320
320
 
321
+ /**
322
+ * @deprecated
323
+ * TODO: 3.0 replace with {@link AbstractTuiController}
324
+ */
321
325
  class TuiController {
322
326
  constructor() {
323
327
  this.change$ = new Subject();
@@ -326,6 +330,8 @@ class TuiController {
326
330
  this.change$.next();
327
331
  }
328
332
  }
333
+ class AbstractTuiController extends TuiController {
334
+ }
329
335
 
330
336
  let AbstractTuiDialogService = class AbstractTuiDialogService extends Observable {
331
337
  constructor(idService) {
@@ -524,5 +530,5 @@ AbstractTuiThemeSwitcher = AbstractTuiThemeSwitcher_1 = __decorate([
524
530
  * Generated bundle index. Do not edit.
525
531
  */
526
532
 
527
- export { AbstractTuiControl, AbstractTuiDialogDirective, AbstractTuiDialogService, AbstractTuiInteractive, AbstractTuiMultipleControl, AbstractTuiNullableControl, AbstractTuiPortalHostComponent, AbstractTuiPortalService, AbstractTuiThemeSwitcher, TuiController };
533
+ export { AbstractTuiControl, AbstractTuiController, AbstractTuiDialogDirective, AbstractTuiDialogService, AbstractTuiInteractive, AbstractTuiMultipleControl, AbstractTuiNullableControl, AbstractTuiPortalHostComponent, AbstractTuiPortalService, AbstractTuiThemeSwitcher, TuiController };
528
534
  //# sourceMappingURL=taiga-ui-cdk-abstract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-abstract.js","sources":["ng://@taiga-ui/cdk/abstract/interactive.ts","ng://@taiga-ui/cdk/abstract/control.ts","ng://@taiga-ui/cdk/abstract/controller.ts","ng://@taiga-ui/cdk/abstract/dialog.service.ts","ng://@taiga-ui/cdk/abstract/dialog.directive.ts","ng://@taiga-ui/cdk/abstract/multiple-control.ts","ng://@taiga-ui/cdk/abstract/nullable-control.ts","ng://@taiga-ui/cdk/abstract/portal-service.ts","ng://@taiga-ui/cdk/abstract/portal-host.ts","ng://@taiga-ui/cdk/abstract/theme-switcher.ts","ng://@taiga-ui/cdk/abstract/taiga-ui-cdk-abstract.ts"],"sourcesContent":["import {Directive, EventEmitter, HostBinding, Input, Output} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk/decorators';\n\nconst TUI = 'tui_interactive_';\n\n/**\n * The most basic class for interactive components\n */\n@Directive()\nexport abstract class AbstractTuiInteractive {\n private static autoId = 0;\n\n abstract disabled: boolean;\n\n abstract focused: boolean;\n\n private readonly autoIdString: string;\n\n @Input()\n @tuiDefaultProp()\n pseudoHovered: boolean | null = null;\n\n @Input()\n @tuiDefaultProp()\n pseudoPressed: boolean | null = null;\n\n @Input()\n @tuiDefaultProp()\n pseudoFocused: boolean | null = null;\n\n /**\n * Determines if component is focusable with keyboard.\n */\n @Input()\n @tuiDefaultProp()\n focusable = true;\n\n @Input()\n @tuiDefaultProp()\n nativeId = '';\n\n /**\n * Emits 'true' on focus and 'false' on blur.\n */\n @Output()\n readonly focusedChange = new EventEmitter<boolean>();\n\n /** @deprecated use `tuiPressedChange` directive */\n @Output()\n readonly pressedChange = new EventEmitter<boolean>();\n\n /** @deprecated use `tuiHoveredChange` directive */\n @Output()\n readonly hoveredChange = new EventEmitter<boolean>();\n\n @Output()\n readonly focusVisibleChange = new EventEmitter<boolean>();\n\n /** @deprecated use `tuiHoveredChange` directive */\n hovered = false;\n\n /** @deprecated use `tuiPressedChange` directive */\n pressed = false;\n\n focusVisible = false;\n\n protected constructor() {\n this.autoIdString = `${TUI}${AbstractTuiInteractive.autoId++}${Date.now()}`;\n }\n\n @HostBinding('class._disabled')\n get computedDisabled(): boolean {\n return this.disabled;\n }\n\n /** @deprecated */\n @HostBinding('class._hovered')\n get computedHovered(): boolean {\n return !this.computedDisabled && (this.pseudoHovered ?? this.hovered);\n }\n\n /** @deprecated */\n @HostBinding('class._pressed')\n get computedPressed(): boolean {\n return !this.computedDisabled && (this.pseudoPressed ?? this.pressed);\n }\n\n get computedFocusable(): boolean {\n return !this.computedDisabled && (this.focusable || this.focused);\n }\n\n @HostBinding('class._focused')\n get computedFocused(): boolean {\n return !this.computedDisabled && (this.pseudoFocused ?? this.focused);\n }\n\n @HostBinding('class._focus-visible')\n get computedFocusVisible(): boolean {\n return !this.computedDisabled && (this.pseudoFocused ?? this.focusVisible);\n }\n\n // TODO: 3.0 Consider removing since native input is exposed\n get id(): string {\n return this.nativeId ? this.nativeId : this.autoIdString;\n }\n\n /** @deprecated */\n protected updateHovered(hovered: boolean): void {\n if (this.hovered === hovered) {\n return;\n }\n\n this.hovered = hovered;\n this.hoveredChange.emit(hovered);\n }\n\n /** @deprecated */\n protected updatePressed(pressed: boolean): void {\n if (this.pressed === pressed) {\n return;\n }\n\n this.pressed = pressed;\n this.pressedChange.emit(pressed);\n }\n\n protected updateFocused(focused: boolean): void {\n this.focusedChange.emit(focused);\n }\n\n protected updateFocusVisible(focusVisible: boolean): void {\n if (this.focusVisible === focusVisible) {\n return;\n }\n\n this.focusVisible = focusVisible;\n this.focusVisibleChange.emit(focusVisible);\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport {AbstractControl, ControlValueAccessor, NgControl, NgModel} from '@angular/forms';\nimport {tuiAssert} from '@taiga-ui/cdk/classes';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {tuiDefaultProp} from '@taiga-ui/cdk/decorators';\nimport {TuiControlValueTransformer} from '@taiga-ui/cdk/interfaces';\nimport {merge, Subject} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {AbstractTuiInteractive} from './interactive';\n\n/**\n * Basic ControlValueAccessor class to build form components upon\n */\n@Directive()\nexport abstract class AbstractTuiControl<T>\n extends AbstractTuiInteractive\n implements OnDestroy, OnInit, ControlValueAccessor\n{\n private previousInternalValue?: T | null;\n\n private onTouched = EMPTY_FUNCTION;\n\n private onChange = EMPTY_FUNCTION;\n\n protected readonly fallbackValue = this.getFallbackValue();\n\n protected readonly destroy$ = new Subject<void>();\n\n @Input()\n @HostBinding('class._readonly')\n @tuiDefaultProp()\n readOnly = false;\n\n @Input()\n @tuiDefaultProp()\n pseudoInvalid: boolean | null = null;\n\n protected constructor(\n private readonly ngControl: NgControl | null,\n protected readonly changeDetectorRef: ChangeDetectorRef,\n protected readonly valueTransformer?: TuiControlValueTransformer<T> | null,\n ) {\n super();\n\n if (this.ngControl === null) {\n tuiAssert.assert(\n false,\n `NgControl not injected in ${this.constructor.name}!\\n`,\n 'Use [(ngModel)] or [formControl] or formControlName for correct work.',\n );\n } else {\n this.ngControl.valueAccessor = this;\n }\n }\n\n protected abstract getFallbackValue(): T;\n\n @HostBinding('class._invalid')\n get computedInvalid(): boolean {\n return (\n this.interactive &&\n (this.pseudoInvalid !== null\n ? this.pseudoInvalid\n : this.touched && this.invalid)\n );\n }\n\n get value(): T {\n return this.previousInternalValue ?? this.fallbackValue;\n }\n\n get safeCurrentValue(): T {\n return this.rawValue ?? this.fallbackValue;\n }\n\n get invalid(): boolean {\n return this.safeNgControlData<boolean>(({invalid}) => invalid, false);\n }\n\n get valid(): boolean {\n return this.safeNgControlData<boolean>(({valid}) => valid, false);\n }\n\n get touched(): boolean {\n return this.safeNgControlData<boolean>(({touched}) => touched, false);\n }\n\n get disabled(): boolean {\n return this.safeNgControlData<boolean>(({disabled}) => disabled, false);\n }\n\n get interactive(): boolean {\n return !this.readOnly && !this.computedDisabled;\n }\n\n get control(): AbstractControl | null {\n return this.safeNgControlData<AbstractControl | null>(\n ({control}) => control,\n null,\n );\n }\n\n get computedName(): string | null {\n return this.controlName?.toString() ?? null;\n }\n\n protected get controlName(): string | null {\n return this.ngControl?.name?.toString() ?? null;\n }\n\n private get rawValue(): T | undefined {\n const {ngControl} = this;\n\n if (ngControl === null) {\n return undefined;\n }\n\n const controlValue =\n ngControl instanceof NgModel && this.previousInternalValue === undefined\n ? ngControl.viewModel\n : ngControl.value;\n\n return this.fromControlValue(controlValue);\n }\n\n ngOnInit(): void {\n if (!this.ngControl?.valueChanges || !this.ngControl?.statusChanges) {\n return;\n }\n\n merge(this.ngControl.valueChanges, this.ngControl.statusChanges)\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => this.refreshLocalValue(this.safeCurrentValue));\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n checkControlUpdate(): void {\n this.changeDetectorRef.markForCheck();\n }\n\n registerOnChange(onChange: (value: T | unknown) => void): void {\n this.onChange = (componentValue: T) => {\n onChange(this.toControlValue(componentValue));\n };\n }\n\n registerOnTouched(onTouched: () => void): void {\n this.onTouched = onTouched;\n }\n\n setDisabledState(): void {\n this.checkControlUpdate();\n }\n\n writeValue(value: T | null): void {\n const controlValue =\n this.ngControl instanceof NgModel && this.previousInternalValue === undefined\n ? this.ngControl.model\n : value;\n\n this.refreshLocalValue(this.fromControlValue(controlValue));\n }\n\n protected updateFocused(focused: boolean): void {\n if (!focused) {\n this.controlMarkAsTouched();\n }\n\n super.updateFocused(focused);\n }\n\n protected updateValue(value: T): void {\n if (this.disabled || this.valueIdenticalComparator(this.value, value)) {\n return;\n }\n\n this.previousInternalValue = value;\n this.controlSetValue(value);\n }\n\n protected valueIdenticalComparator(oldValue: T, newValue: T): boolean {\n return oldValue === newValue;\n }\n\n private safeNgControlData<T>(\n extractor: (ngControl: NgControl) => T | null | undefined,\n defaultFieldValue: T,\n ): T {\n return (this.ngControl && extractor(this.ngControl)) ?? defaultFieldValue;\n }\n\n private controlMarkAsTouched(): void {\n this.onTouched();\n this.checkControlUpdate();\n }\n\n private controlSetValue(value: T): void {\n this.onChange(value);\n this.checkControlUpdate();\n }\n\n private refreshLocalValue(value: T | null): void {\n this.previousInternalValue = value;\n this.checkControlUpdate();\n }\n\n private fromControlValue(controlValue: unknown): T {\n return this.valueTransformer\n ? this.valueTransformer.fromControlValue(controlValue)\n : (controlValue as T);\n }\n\n private toControlValue(componentValue: T): unknown {\n return this.valueTransformer\n ? this.valueTransformer.toControlValue(componentValue)\n : componentValue;\n }\n}\n","import {OnChanges} from '@angular/core';\nimport {Subject} from 'rxjs';\n\nexport abstract class TuiController implements OnChanges {\n readonly change$ = new Subject<void>();\n\n ngOnChanges(): void {\n this.change$.next();\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {TuiBaseDialogContext} from '@taiga-ui/cdk/interfaces';\nimport {TuiIdService} from '@taiga-ui/cdk/services';\nimport {TuiDialog} from '@taiga-ui/cdk/types';\nimport {PolymorpheusComponent, PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, Observable} from 'rxjs';\n\n@Injectable()\nexport abstract class AbstractTuiDialogService<T> extends Observable<\n ReadonlyArray<TuiDialog<T, any>>\n> {\n protected abstract readonly component: PolymorpheusComponent<any, TuiDialog<T, any>>;\n\n protected abstract readonly defaultOptions: T;\n\n protected readonly dialogs$ = new BehaviorSubject<ReadonlyArray<TuiDialog<T, any>>>(\n [],\n );\n\n protected constructor(\n @Inject(TuiIdService) private readonly idService: TuiIdService,\n ) {\n super(observer => this.dialogs$.subscribe(observer));\n }\n\n open<G = void>(\n content: PolymorpheusContent<TuiBaseDialogContext<G> & T>,\n options: Partial<T> = {},\n ): Observable<G> {\n return new Observable(observer => {\n const completeWith = (result: G): void => {\n observer.next(result);\n observer.complete();\n };\n const dialog = {\n ...this.defaultOptions,\n ...options,\n content,\n completeWith,\n $implicit: observer,\n component: this.component,\n createdAt: Date.now(),\n id: this.idService.generate(),\n };\n\n this.dialogs$.next([...this.dialogs$.value, dialog]);\n\n return () => {\n this.dialogs$.next(this.dialogs$.value.filter(item => item !== dialog));\n };\n });\n }\n}\n","import {ChangeDetectorRef, Directive, Inject, TemplateRef} from '@angular/core';\nimport {TuiDialog} from '@taiga-ui/cdk/types';\nimport {PolymorpheusTemplate} from '@tinkoff/ng-polymorpheus';\nimport {EMPTY, Subject} from 'rxjs';\nimport {endWith, ignoreElements, switchMap} from 'rxjs/operators';\n\nimport {AbstractTuiDialogService} from './dialog.service';\n\n@Directive()\nexport abstract class AbstractTuiDialogDirective<T> extends PolymorpheusTemplate<\n TuiDialog<T, void>\n> {\n private readonly open$ = new Subject<boolean>();\n\n options: Partial<T> = {};\n\n set open(open: boolean) {\n this.open$.next(open);\n }\n\n openChange = this.open$.pipe(\n switchMap(open =>\n open\n ? this.service\n .open(this, this.options)\n .pipe(ignoreElements(), endWith(false))\n : EMPTY,\n ),\n );\n\n constructor(\n @Inject(TemplateRef)\n templateRef: TemplateRef<TuiDialog<T, void>>,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(AbstractTuiDialogService)\n private readonly service: AbstractTuiDialogService<T>,\n ) {\n super(templateRef, changeDetectorRef);\n }\n}\n","import {Directive} from '@angular/core';\n\nimport {AbstractTuiControl} from './control';\n\n@Directive()\nexport abstract class AbstractTuiMultipleControl<T> extends AbstractTuiControl<\n readonly T[]\n> {\n clear(): void {\n this.updateValue([]);\n }\n\n protected getFallbackValue(): readonly T[] {\n return [];\n }\n}\n","import {Directive} from '@angular/core';\n\nimport {AbstractTuiControl} from './control';\n\n@Directive()\nexport abstract class AbstractTuiNullableControl<T> extends AbstractTuiControl<T | null> {\n protected getFallbackValue(): T | null {\n return null;\n }\n}\n","import {\n ComponentFactory,\n ComponentRef,\n EmbeddedViewRef,\n Injectable,\n Injector,\n TemplateRef,\n} from '@angular/core';\nimport {TuiNoHostException} from '@taiga-ui/cdk/exceptions';\n\nimport {AbstractTuiPortalHostComponent} from './portal-host';\n\n/**\n * Abstract service for displaying portals\n */\n@Injectable()\nexport abstract class AbstractTuiPortalService {\n protected host?: AbstractTuiPortalHostComponent;\n\n protected get safeHost(): AbstractTuiPortalHostComponent {\n if (!this.host) {\n throw new TuiNoHostException();\n }\n\n return this.host;\n }\n\n attach(host: AbstractTuiPortalHostComponent): void {\n this.host = host;\n }\n\n add<C>(componentFactory: ComponentFactory<C>, injector: Injector): ComponentRef<C> {\n return this.safeHost.addComponentChild(componentFactory, injector);\n }\n\n remove<C>({hostView}: ComponentRef<C>): void {\n hostView.destroy();\n }\n\n addTemplate<C>(templateRef: TemplateRef<C>, context?: C): EmbeddedViewRef<C> {\n return this.safeHost.addTemplateChild(templateRef, context);\n }\n\n removeTemplate<C>(viewRef: EmbeddedViewRef<C>): void {\n viewRef.destroy();\n }\n}\n","import {\n ComponentFactory,\n ComponentRef,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n Inject,\n Injector,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport {AbstractTuiPortalService} from './portal-service';\n\n/**\n * Abstract class for host element for dynamically created portals.\n */\n@Directive()\nexport abstract class AbstractTuiPortalHostComponent {\n @ViewChild('viewContainer', {read: ViewContainerRef})\n viewContainerRef!: ViewContainerRef;\n\n constructor(\n @Inject(ElementRef)\n readonly elementRef: ElementRef<HTMLElement>,\n @Inject(AbstractTuiPortalService) portalService: AbstractTuiPortalService,\n ) {\n portalService.attach(this);\n }\n\n get clientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n\n addComponentChild<C>(\n componentFactory: ComponentFactory<C>,\n injector: Injector,\n ): ComponentRef<C> {\n return this.viewContainerRef.createComponent<C>(\n componentFactory,\n undefined,\n Injector.create({\n parent: injector,\n providers: [\n {\n provide: AbstractTuiPortalHostComponent,\n useValue: this,\n },\n ],\n }),\n );\n }\n\n addTemplateChild<C>(templateRef: TemplateRef<C>, context?: C): EmbeddedViewRef<C> {\n return this.viewContainerRef.createEmbeddedView(templateRef, context);\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {Directive, Inject, OnDestroy} from '@angular/core';\n\n/**\n * Use this abstract class to create your own toggleable themes.\n * A component extending this class must have CSS variables definitions\n * and have ViewEncapsulation set to NONE. A boolean input allows to\n * switch theme on or off.\n * @dynamic\n */\n@Directive()\nexport abstract class AbstractTuiThemeSwitcher implements OnDestroy {\n static style: HTMLStyleElement | null = null;\n\n constructor(@Inject(DOCUMENT) private readonly documentRef: Document) {\n if (this.style !== null) {\n this.addTheme();\n\n return;\n }\n\n const styles = this.documentRef.head.querySelectorAll('style');\n\n (<typeof AbstractTuiThemeSwitcher>this.constructor).style =\n styles[styles.length - 1];\n }\n\n get style(): HTMLStyleElement | null {\n return (<typeof AbstractTuiThemeSwitcher>this.constructor).style;\n }\n\n ngOnDestroy(): void {\n this.removeTheme();\n }\n\n private addTheme(): void {\n if (this.style) {\n this.documentRef.head.appendChild(this.style);\n }\n }\n\n private removeTheme(): void {\n if (this.style && this.documentRef.head.contains(this.style)) {\n this.documentRef.head.removeChild(this.style);\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,MAAM,GAAG,GAAG,kBAAkB,CAAC;AAE/B;;;IAIsB,sBAAsB,8BAA5C,MAAsB,sBAAsB;IAyDxC;QA9CA,kBAAa,GAAmB,IAAI,CAAC;QAIrC,kBAAa,GAAmB,IAAI,CAAC;QAIrC,kBAAa,GAAmB,IAAI,CAAC;;;;QAOrC,cAAS,GAAG,IAAI,CAAC;QAIjB,aAAQ,GAAG,EAAE,CAAC;;;;QAML,kBAAa,GAAG,IAAI,YAAY,EAAW,CAAC;;QAI5C,kBAAa,GAAG,IAAI,YAAY,EAAW,CAAC;;QAI5C,kBAAa,GAAG,IAAI,YAAY,EAAW,CAAC;QAG5C,uBAAkB,GAAG,IAAI,YAAY,EAAW,CAAC;;QAG1D,YAAO,GAAG,KAAK,CAAC;;QAGhB,YAAO,GAAG,KAAK,CAAC;QAEhB,iBAAY,GAAG,KAAK,CAAC;QAGjB,IAAI,CAAC,YAAY,GAAG,GAAG,GAAG,GAAG,wBAAsB,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;KAC/E;IAGD,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC;KACxB;;IAID,IAAI,eAAe;;QACf,OAAO,CAAC,IAAI,CAAC,gBAAgB,WAAK,IAAI,CAAC,aAAa,mCAAI,IAAI,CAAC,OAAO,CAAC,CAAC;KACzE;;IAID,IAAI,eAAe;;QACf,OAAO,CAAC,IAAI,CAAC,gBAAgB,WAAK,IAAI,CAAC,aAAa,mCAAI,IAAI,CAAC,OAAO,CAAC,CAAC;KACzE;IAED,IAAI,iBAAiB;QACjB,OAAO,CAAC,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;KACrE;IAGD,IAAI,eAAe;;QACf,OAAO,CAAC,IAAI,CAAC,gBAAgB,WAAK,IAAI,CAAC,aAAa,mCAAI,IAAI,CAAC,OAAO,CAAC,CAAC;KACzE;IAGD,IAAI,oBAAoB;;QACpB,OAAO,CAAC,IAAI,CAAC,gBAAgB,WAAK,IAAI,CAAC,aAAa,mCAAI,IAAI,CAAC,YAAY,CAAC,CAAC;KAC9E;;IAGD,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC;KAC5D;;IAGS,aAAa,CAAC,OAAgB;QACpC,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE;YAC1B,OAAO;SACV;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACpC;;IAGS,aAAa,CAAC,OAAgB;QACpC,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE;YAC1B,OAAO;SACV;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACpC;IAES,aAAa,CAAC,OAAgB;QACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACpC;IAES,kBAAkB,CAAC,YAAqB;QAC9C,IAAI,IAAI,CAAC,YAAY,KAAK,YAAY,EAAE;YACpC,OAAO;SACV;QAED,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAC9C;EACJ;AAhIkB,6BAAM,GAAG,CAAC,CAAC;AAU1B;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;6DACoB;AAIrC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;6DACoB;AAIrC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;6DACoB;AAOrC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;yDACA;AAIjB;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;wDACH;AAMd;IADC,MAAM,EAAE;6DAC4C;AAIrD;IADC,MAAM,EAAE;6DAC4C;AAIrD;IADC,MAAM,EAAE;6DAC4C;AAGrD;IADC,MAAM,EAAE;kEACiD;AAe1D;IADC,WAAW,CAAC,iBAAiB,CAAC;8DAG9B;AAID;IADC,WAAW,CAAC,gBAAgB,CAAC;6DAG7B;AAID;IADC,WAAW,CAAC,gBAAgB,CAAC;6DAG7B;AAOD;IADC,WAAW,CAAC,gBAAgB,CAAC;6DAG7B;AAGD;IADC,WAAW,CAAC,sBAAsB,CAAC;kEAGnC;AA1FiB,sBAAsB;IAD3C,SAAS,EAAE;GACU,sBAAsB,CAiI3C;;ACxHD;;;IAIsB,kBAAkB,GAAxC,MAAsB,kBAClB,SAAQ,sBAAsB;IAsB9B,YACqB,SAA2B,EACzB,iBAAoC,EACpC,gBAAuD;QAE1E,KAAK,EAAE,CAAC;QAJS,cAAS,GAAT,SAAS,CAAkB;QACzB,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,qBAAgB,GAAhB,gBAAgB,CAAuC;QApBtE,cAAS,GAAG,cAAc,CAAC;QAE3B,aAAQ,GAAG,cAAc,CAAC;QAEf,kBAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExC,aAAQ,GAAG,IAAI,OAAO,EAAQ,CAAC;QAKlD,aAAQ,GAAG,KAAK,CAAC;QAIjB,kBAAa,GAAmB,IAAI,CAAC;QASjC,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE;YACzB,SAAS,CAAC,MAAM,CACZ,KAAK,EACL,6BAA6B,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,EACvD,uEAAuE,CAC1E,CAAC;SACL;aAAM;YACH,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC;SACvC;KACJ;IAKD,IAAI,eAAe;QACf,QACI,IAAI,CAAC,WAAW;aACf,IAAI,CAAC,aAAa,KAAK,IAAI;kBACtB,IAAI,CAAC,aAAa;kBAClB,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,EACrC;KACL;IAED,IAAI,KAAK;;QACL,aAAO,IAAI,CAAC,qBAAqB,mCAAI,IAAI,CAAC,aAAa,CAAC;KAC3D;IAED,IAAI,gBAAgB;;QAChB,aAAO,IAAI,CAAC,QAAQ,mCAAI,IAAI,CAAC,aAAa,CAAC;KAC9C;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,iBAAiB,CAAU,CAAC,EAAC,OAAO,EAAC,KAAK,OAAO,EAAE,KAAK,CAAC,CAAC;KACzE;IAED,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,iBAAiB,CAAU,CAAC,EAAC,KAAK,EAAC,KAAK,KAAK,EAAE,KAAK,CAAC,CAAC;KACrE;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,iBAAiB,CAAU,CAAC,EAAC,OAAO,EAAC,KAAK,OAAO,EAAE,KAAK,CAAC,CAAC;KACzE;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,iBAAiB,CAAU,CAAC,EAAC,QAAQ,EAAC,KAAK,QAAQ,EAAE,KAAK,CAAC,CAAC;KAC3E;IAED,IAAI,WAAW;QACX,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC;KACnD;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,iBAAiB,CACzB,CAAC,EAAC,OAAO,EAAC,KAAK,OAAO,EACtB,IAAI,CACP,CAAC;KACL;IAED,IAAI,YAAY;;QACZ,mBAAO,IAAI,CAAC,WAAW,0CAAE,QAAQ,qCAAM,IAAI,CAAC;KAC/C;IAED,IAAc,WAAW;;QACrB,yBAAO,IAAI,CAAC,SAAS,0CAAE,IAAI,0CAAE,QAAQ,qCAAM,IAAI,CAAC;KACnD;IAED,IAAY,QAAQ;QAChB,MAAM,EAAC,SAAS,EAAC,GAAG,IAAI,CAAC;QAEzB,IAAI,SAAS,KAAK,IAAI,EAAE;YACpB,OAAO,SAAS,CAAC;SACpB;QAED,MAAM,YAAY,GACd,SAAS,YAAY,OAAO,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS;cAClE,SAAS,CAAC,SAAS;cACnB,SAAS,CAAC,KAAK,CAAC;QAE1B,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;KAC9C;IAED,QAAQ;;QACJ,IAAI,QAAC,IAAI,CAAC,SAAS,0CAAE,YAAY,CAAA,IAAI,QAAC,IAAI,CAAC,SAAS,0CAAE,aAAa,CAAA,EAAE;YACjE,OAAO;SACV;QAED,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;aAC3D,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;KACvE;IAED,WAAW;QACP,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;KAC5B;IAED,kBAAkB;QACd,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;KACzC;IAED,gBAAgB,CAAC,QAAsC;QACnD,IAAI,CAAC,QAAQ,GAAG,CAAC,cAAiB;YAC9B,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;SACjD,CAAC;KACL;IAED,iBAAiB,CAAC,SAAqB;QACnC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC9B;IAED,gBAAgB;QACZ,IAAI,CAAC,kBAAkB,EAAE,CAAC;KAC7B;IAED,UAAU,CAAC,KAAe;QACtB,MAAM,YAAY,GACd,IAAI,CAAC,SAAS,YAAY,OAAO,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS;cACvE,IAAI,CAAC,SAAS,CAAC,KAAK;cACpB,KAAK,CAAC;QAEhB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC;KAC/D;IAES,aAAa,CAAC,OAAgB;QACpC,IAAI,CAAC,OAAO,EAAE;YACV,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAC/B;QAED,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;KAChC;IAES,WAAW,CAAC,KAAQ;QAC1B,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE;YACnE,OAAO;SACV;QAED,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QACnC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;KAC/B;IAES,wBAAwB,CAAC,QAAW,EAAE,QAAW;QACvD,OAAO,QAAQ,KAAK,QAAQ,CAAC;KAChC;IAEO,iBAAiB,CACrB,SAAyD,EACzD,iBAAoB;;QAEpB,cAAQ,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,mCAAI,iBAAiB,CAAC;KAC7E;IAEO,oBAAoB;QACxB,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,kBAAkB,EAAE,CAAC;KAC7B;IAEO,eAAe,CAAC,KAAQ;QAC5B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACrB,IAAI,CAAC,kBAAkB,EAAE,CAAC;KAC7B;IAEO,iBAAiB,CAAC,KAAe;QACrC,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QACnC,IAAI,CAAC,kBAAkB,EAAE,CAAC;KAC7B;IAEO,gBAAgB,CAAC,YAAqB;QAC1C,OAAO,IAAI,CAAC,gBAAgB;cACtB,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,YAAY,CAAC;cACnD,YAAkB,CAAC;KAC7B;IAEO,cAAc,CAAC,cAAiB;QACpC,OAAO,IAAI,CAAC,gBAAgB;cACtB,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,cAAc,CAAC;cACpD,cAAc,CAAC;KACxB;EACJ;;YAvLmC,SAAS;YACC,iBAAiB;;;AAR3D;IAHC,KAAK,EAAE;IACP,WAAW,CAAC,iBAAiB,CAAC;IAC9B,cAAc,EAAE;oDACA;AAIjB;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;yDACoB;AAuBrC;IADC,WAAW,CAAC,gBAAgB,CAAC;yDAQ7B;AAnDiB,kBAAkB;IADvC,SAAS,EAAE;GACU,kBAAkB,CA+MvC;;MClOqB,aAAa;IAAnC;QACa,YAAO,GAAG,IAAI,OAAO,EAAQ,CAAC;KAK1C;IAHG,WAAW;QACP,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;KACvB;;;ICAiB,wBAAwB,GAA9C,MAAsB,wBAA4B,SAAQ,UAEzD;IASG,YAC2C,SAAuB;QAE9D,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QAFd,cAAS,GAAT,SAAS,CAAc;QAL/C,aAAQ,GAAG,IAAI,eAAe,CAC7C,EAAE,CACL,CAAC;KAMD;IAED,IAAI,CACA,OAAyD,EACzD,UAAsB,EAAE;QAExB,OAAO,IAAI,UAAU,CAAC,QAAQ;YAC1B,MAAM,YAAY,GAAG,CAAC,MAAS;gBAC3B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACtB,QAAQ,CAAC,QAAQ,EAAE,CAAC;aACvB,CAAC;YACF,MAAM,MAAM,iDACL,IAAI,CAAC,cAAc,GACnB,OAAO,KACV,OAAO;gBACP,YAAY,EACZ,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EACrB,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,GAChC,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;YAErD,OAAO;gBACH,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;aAC3E,CAAC;SACL,CAAC,CAAC;KACN;EACJ;;YAhCyD,YAAY,uBAA7D,MAAM,SAAC,YAAY;;AAZN,wBAAwB;IAD7C,UAAU,EAAE;IAaJ,WAAA,MAAM,CAAC,YAAY,CAAC,CAAA;GAZP,wBAAwB,CA4C7C;;IC3CqB,0BAA0B,GAAhD,MAAsB,0BAA8B,SAAQ,oBAE3D;IAmBG,YAEI,WAA4C,EACjB,iBAAoC,EAE9C,OAAoC;QAErD,KAAK,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;QAFrB,YAAO,GAAP,OAAO,CAA6B;QAvBxC,UAAK,GAAG,IAAI,OAAO,EAAW,CAAC;QAEhD,YAAO,GAAe,EAAE,CAAC;QAMzB,eAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CACxB,SAAS,CAAC,IAAI,IACV,IAAI;cACE,IAAI,CAAC,OAAO;iBACP,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC;iBACxB,IAAI,CAAC,cAAc,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;cAC3C,KAAK,CACd,CACJ,CAAC;KAUD;IAtBD,IAAI,IAAI,CAAC,IAAa;QAClB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACzB;EAqBJ;;YAPoB,WAAW,uBADvB,MAAM,SAAC,WAAW;YAE2B,iBAAiB,uBAA9D,MAAM,SAAC,iBAAiB;YAEC,wBAAwB,uBADjD,MAAM,SAAC,wBAAwB;;AAzBlB,0BAA0B;IAD/C,SAAS,EAAE;IAuBH,WAAA,MAAM,CAAC,WAAW,CAAC,CAAA;IAEnB,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;IACzB,WAAA,MAAM,CAAC,wBAAwB,CAAC,CAAA;GAzBnB,0BAA0B,CA8B/C;;IClCqB,0BAA0B,GAAhD,MAAsB,0BAA8B,SAAQ,kBAE3D;IACG,KAAK;QACD,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;KACxB;IAES,gBAAgB;QACtB,OAAO,EAAE,CAAC;KACb;EACJ;AAVqB,0BAA0B;IAD/C,SAAS,EAAE;GACU,0BAA0B,CAU/C;;ICVqB,0BAA0B,GAAhD,MAAsB,0BAA8B,SAAQ,kBAA4B;IAC1E,gBAAgB;QACtB,OAAO,IAAI,CAAC;KACf;EACJ;AAJqB,0BAA0B;IAD/C,SAAS,EAAE;GACU,0BAA0B,CAI/C;;ACGD;;;IAIsB,wBAAwB,GAA9C,MAAsB,wBAAwB;IAG1C,IAAc,QAAQ;QAClB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACZ,MAAM,IAAI,kBAAkB,EAAE,CAAC;SAClC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC;KACpB;IAED,MAAM,CAAC,IAAoC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;KACpB;IAED,GAAG,CAAI,gBAAqC,EAAE,QAAkB;QAC5D,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;KACtE;IAED,MAAM,CAAI,EAAC,QAAQ,EAAkB;QACjC,QAAQ,CAAC,OAAO,EAAE,CAAC;KACtB;IAED,WAAW,CAAI,WAA2B,EAAE,OAAW;QACnD,OAAO,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;KAC/D;IAED,cAAc,CAAI,OAA2B;QACzC,OAAO,CAAC,OAAO,EAAE,CAAC;KACrB;EACJ;AA9BqB,wBAAwB;IAD7C,UAAU,EAAE;GACS,wBAAwB,CA8B7C;;;AC/BD;;;IAIsB,8BAA8B,sCAApD,MAAsB,8BAA8B;IAIhD,YAEa,UAAmC,EACV,aAAuC;QADhE,eAAU,GAAV,UAAU,CAAyB;QAG5C,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KAC9B;IAED,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC;KAChE;IAED,iBAAiB,CACb,gBAAqC,EACrC,QAAkB;QAElB,OAAO,IAAI,CAAC,gBAAgB,CAAC,eAAe,CACxC,gBAAgB,EAChB,SAAS,EACT,QAAQ,CAAC,MAAM,CAAC;YACZ,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE;gBACP;oBACI,OAAO,EAAE,gCAA8B;oBACvC,QAAQ,EAAE,IAAI;iBACjB;aACJ;SACJ,CAAC,CACL,CAAC;KACL;IAED,gBAAgB,CAAI,WAA2B,EAAE,OAAW;QACxD,OAAO,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;KACzE;EACJ;;YAhC4B,UAAU,uBAD9B,MAAM,SAAC,UAAU;YAE+B,wBAAwB,uBAAxE,MAAM,SAAC,wBAAwB;;AALpC;IADC,SAAS,CAAC,eAAe,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC,CAAC;wEACjB;AAFlB,8BAA8B;IADnD,SAAS,EAAE;IAMH,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;IAElB,WAAA,MAAM,CAAC,wBAAwB,CAAC,CAAA;GAPnB,8BAA8B,CAsCnD;;;ACtDD;;;;;;;IAQsB,wBAAwB,gCAA9C,MAAsB,wBAAwB;IAG1C,YAA+C,WAAqB;QAArB,gBAAW,GAAX,WAAW,CAAU;QAChE,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;YACrB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAEhB,OAAO;SACV;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAE7B,IAAI,CAAC,WAAY,CAAC,KAAK;YACrD,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;KACjC;IAED,IAAI,KAAK;QACL,OAAyC,IAAI,CAAC,WAAY,CAAC,KAAK,CAAC;KACpE;IAED,WAAW;QACP,IAAI,CAAC,WAAW,EAAE,CAAC;KACtB;IAEO,QAAQ;QACZ,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACjD;KACJ;IAEO,WAAW;QACf,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC1D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACjD;KACJ;EACJ;AAlCU,8BAAK,GAA4B,IAAI,CAAC;;YAEe,QAAQ,uBAAvD,MAAM,SAAC,QAAQ;;AAHV,wBAAwB;IAD7C,SAAS,EAAE;IAIK,WAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;GAHX,wBAAwB,CAmC7C;;AC9CD;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-abstract.js","sources":["ng://@taiga-ui/cdk/abstract/interactive.ts","ng://@taiga-ui/cdk/abstract/control.ts","ng://@taiga-ui/cdk/abstract/controller.ts","ng://@taiga-ui/cdk/abstract/dialog.service.ts","ng://@taiga-ui/cdk/abstract/dialog.directive.ts","ng://@taiga-ui/cdk/abstract/multiple-control.ts","ng://@taiga-ui/cdk/abstract/nullable-control.ts","ng://@taiga-ui/cdk/abstract/portal-service.ts","ng://@taiga-ui/cdk/abstract/portal-host.ts","ng://@taiga-ui/cdk/abstract/theme-switcher.ts","ng://@taiga-ui/cdk/abstract/taiga-ui-cdk-abstract.ts"],"sourcesContent":["import {Directive, EventEmitter, HostBinding, Input, Output} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk/decorators';\n\nconst TUI = 'tui_interactive_';\n\n/**\n * The most basic class for interactive components\n */\n@Directive()\nexport abstract class AbstractTuiInteractive {\n private static autoId = 0;\n\n abstract disabled: boolean;\n\n abstract focused: boolean;\n\n private readonly autoIdString: string;\n\n @Input()\n @tuiDefaultProp()\n pseudoHovered: boolean | null = null;\n\n @Input()\n @tuiDefaultProp()\n pseudoPressed: boolean | null = null;\n\n @Input()\n @tuiDefaultProp()\n pseudoFocused: boolean | null = null;\n\n /**\n * Determines if component is focusable with keyboard.\n */\n @Input()\n @tuiDefaultProp()\n focusable = true;\n\n @Input()\n @tuiDefaultProp()\n nativeId = '';\n\n /**\n * Emits 'true' on focus and 'false' on blur.\n */\n @Output()\n readonly focusedChange = new EventEmitter<boolean>();\n\n /** @deprecated use `tuiPressedChange` directive */\n @Output()\n readonly pressedChange = new EventEmitter<boolean>();\n\n /** @deprecated use `tuiHoveredChange` directive */\n @Output()\n readonly hoveredChange = new EventEmitter<boolean>();\n\n @Output()\n readonly focusVisibleChange = new EventEmitter<boolean>();\n\n /** @deprecated use `tuiHoveredChange` directive */\n hovered = false;\n\n /** @deprecated use `tuiPressedChange` directive */\n pressed = false;\n\n focusVisible = false;\n\n protected constructor() {\n this.autoIdString = `${TUI}${AbstractTuiInteractive.autoId++}${Date.now()}`;\n }\n\n @HostBinding('class._disabled')\n get computedDisabled(): boolean {\n return this.disabled;\n }\n\n /** @deprecated */\n @HostBinding('class._hovered')\n get computedHovered(): boolean {\n return !this.computedDisabled && (this.pseudoHovered ?? this.hovered);\n }\n\n /** @deprecated */\n @HostBinding('class._pressed')\n get computedPressed(): boolean {\n return !this.computedDisabled && (this.pseudoPressed ?? this.pressed);\n }\n\n get computedFocusable(): boolean {\n return !this.computedDisabled && (this.focusable || this.focused);\n }\n\n @HostBinding('class._focused')\n get computedFocused(): boolean {\n return !this.computedDisabled && (this.pseudoFocused ?? this.focused);\n }\n\n @HostBinding('class._focus-visible')\n get computedFocusVisible(): boolean {\n return !this.computedDisabled && (this.pseudoFocused ?? this.focusVisible);\n }\n\n // TODO: 3.0 Consider removing since native input is exposed\n get id(): string {\n return this.nativeId ? this.nativeId : this.autoIdString;\n }\n\n /** @deprecated */\n protected updateHovered(hovered: boolean): void {\n if (this.hovered === hovered) {\n return;\n }\n\n this.hovered = hovered;\n this.hoveredChange.emit(hovered);\n }\n\n /** @deprecated */\n protected updatePressed(pressed: boolean): void {\n if (this.pressed === pressed) {\n return;\n }\n\n this.pressed = pressed;\n this.pressedChange.emit(pressed);\n }\n\n protected updateFocused(focused: boolean): void {\n this.focusedChange.emit(focused);\n }\n\n protected updateFocusVisible(focusVisible: boolean): void {\n if (this.focusVisible === focusVisible) {\n return;\n }\n\n this.focusVisible = focusVisible;\n this.focusVisibleChange.emit(focusVisible);\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport {AbstractControl, ControlValueAccessor, NgControl, NgModel} from '@angular/forms';\nimport {tuiAssert} from '@taiga-ui/cdk/classes';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {tuiDefaultProp} from '@taiga-ui/cdk/decorators';\nimport {TuiControlValueTransformer} from '@taiga-ui/cdk/interfaces';\nimport {merge, Subject} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {AbstractTuiInteractive} from './interactive';\n\n/**\n * Basic ControlValueAccessor class to build form components upon\n */\n@Directive()\nexport abstract class AbstractTuiControl<T>\n extends AbstractTuiInteractive\n implements OnDestroy, OnInit, ControlValueAccessor\n{\n private previousInternalValue?: T | null;\n\n private onTouched = EMPTY_FUNCTION;\n\n private onChange = EMPTY_FUNCTION;\n\n protected readonly fallbackValue = this.getFallbackValue();\n\n protected readonly destroy$ = new Subject<void>();\n\n @Input()\n @HostBinding('class._readonly')\n @tuiDefaultProp()\n readOnly = false;\n\n @Input()\n @tuiDefaultProp()\n pseudoInvalid: boolean | null = null;\n\n protected constructor(\n private readonly ngControl: NgControl | null,\n protected readonly changeDetectorRef: ChangeDetectorRef,\n protected readonly valueTransformer?: TuiControlValueTransformer<T> | null,\n ) {\n super();\n\n if (this.ngControl === null) {\n tuiAssert.assert(\n false,\n `NgControl not injected in ${this.constructor.name}!\\n`,\n 'Use [(ngModel)] or [formControl] or formControlName for correct work.',\n );\n } else {\n this.ngControl.valueAccessor = this;\n }\n }\n\n protected abstract getFallbackValue(): T;\n\n @HostBinding('class._invalid')\n get computedInvalid(): boolean {\n return (\n this.interactive &&\n (this.pseudoInvalid !== null\n ? this.pseudoInvalid\n : this.touched && this.invalid)\n );\n }\n\n get value(): T {\n return this.previousInternalValue ?? this.fallbackValue;\n }\n\n get safeCurrentValue(): T {\n return this.rawValue ?? this.fallbackValue;\n }\n\n get invalid(): boolean {\n return this.safeNgControlData<boolean>(({invalid}) => invalid, false);\n }\n\n get valid(): boolean {\n return this.safeNgControlData<boolean>(({valid}) => valid, false);\n }\n\n get touched(): boolean {\n return this.safeNgControlData<boolean>(({touched}) => touched, false);\n }\n\n get disabled(): boolean {\n return this.safeNgControlData<boolean>(({disabled}) => disabled, false);\n }\n\n get interactive(): boolean {\n return !this.readOnly && !this.computedDisabled;\n }\n\n get control(): AbstractControl | null {\n return this.safeNgControlData<AbstractControl | null>(\n ({control}) => control,\n null,\n );\n }\n\n get computedName(): string | null {\n return this.controlName?.toString() ?? null;\n }\n\n protected get controlName(): string | null {\n return this.ngControl?.name?.toString() ?? null;\n }\n\n private get rawValue(): T | undefined {\n const {ngControl} = this;\n\n if (ngControl === null) {\n return undefined;\n }\n\n const controlValue =\n ngControl instanceof NgModel && this.previousInternalValue === undefined\n ? ngControl.viewModel\n : ngControl.value;\n\n return this.fromControlValue(controlValue);\n }\n\n ngOnInit(): void {\n if (!this.ngControl?.valueChanges || !this.ngControl?.statusChanges) {\n return;\n }\n\n merge(this.ngControl.valueChanges, this.ngControl.statusChanges)\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => this.refreshLocalValue(this.safeCurrentValue));\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n checkControlUpdate(): void {\n this.changeDetectorRef.markForCheck();\n }\n\n registerOnChange(onChange: (value: T | unknown) => void): void {\n this.onChange = (componentValue: T) => {\n onChange(this.toControlValue(componentValue));\n };\n }\n\n registerOnTouched(onTouched: () => void): void {\n this.onTouched = onTouched;\n }\n\n setDisabledState(): void {\n this.checkControlUpdate();\n }\n\n writeValue(value: T | null): void {\n const controlValue =\n this.ngControl instanceof NgModel && this.previousInternalValue === undefined\n ? this.ngControl.model\n : value;\n\n this.refreshLocalValue(this.fromControlValue(controlValue));\n }\n\n protected updateFocused(focused: boolean): void {\n if (!focused) {\n this.controlMarkAsTouched();\n }\n\n super.updateFocused(focused);\n }\n\n protected updateValue(value: T): void {\n if (this.disabled || this.valueIdenticalComparator(this.value, value)) {\n return;\n }\n\n this.previousInternalValue = value;\n this.controlSetValue(value);\n }\n\n protected valueIdenticalComparator(oldValue: T, newValue: T): boolean {\n return oldValue === newValue;\n }\n\n private safeNgControlData<T>(\n extractor: (ngControl: NgControl) => T | null | undefined,\n defaultFieldValue: T,\n ): T {\n return (this.ngControl && extractor(this.ngControl)) ?? defaultFieldValue;\n }\n\n private controlMarkAsTouched(): void {\n this.onTouched();\n this.checkControlUpdate();\n }\n\n private controlSetValue(value: T): void {\n this.onChange(value);\n this.checkControlUpdate();\n }\n\n private refreshLocalValue(value: T | null): void {\n this.previousInternalValue = value;\n this.checkControlUpdate();\n }\n\n private fromControlValue(controlValue: unknown): T {\n return this.valueTransformer\n ? this.valueTransformer.fromControlValue(controlValue)\n : (controlValue as T);\n }\n\n private toControlValue(componentValue: T): unknown {\n return this.valueTransformer\n ? this.valueTransformer.toControlValue(componentValue)\n : componentValue;\n }\n}\n","/* eslint-disable @typescript-eslint/naming-convention */\nimport {OnChanges} from '@angular/core';\nimport {Subject} from 'rxjs';\n\n/**\n * @deprecated\n * TODO: 3.0 replace with {@link AbstractTuiController}\n */\nexport abstract class TuiController implements OnChanges {\n readonly change$ = new Subject<void>();\n\n ngOnChanges(): void {\n this.change$.next();\n }\n}\n\nexport abstract class AbstractTuiController extends TuiController {}\n","import {Inject, Injectable} from '@angular/core';\nimport {TuiBaseDialogContext} from '@taiga-ui/cdk/interfaces';\nimport {TuiIdService} from '@taiga-ui/cdk/services';\nimport {TuiDialog} from '@taiga-ui/cdk/types';\nimport {PolymorpheusComponent, PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, Observable} from 'rxjs';\n\n@Injectable()\nexport abstract class AbstractTuiDialogService<T> extends Observable<\n ReadonlyArray<TuiDialog<T, any>>\n> {\n protected abstract readonly component: PolymorpheusComponent<any, TuiDialog<T, any>>;\n\n protected abstract readonly defaultOptions: T;\n\n protected readonly dialogs$ = new BehaviorSubject<ReadonlyArray<TuiDialog<T, any>>>(\n [],\n );\n\n protected constructor(\n @Inject(TuiIdService) private readonly idService: TuiIdService,\n ) {\n super(observer => this.dialogs$.subscribe(observer));\n }\n\n open<G = void>(\n content: PolymorpheusContent<TuiBaseDialogContext<G> & T>,\n options: Partial<T> = {},\n ): Observable<G> {\n return new Observable(observer => {\n const completeWith = (result: G): void => {\n observer.next(result);\n observer.complete();\n };\n const dialog = {\n ...this.defaultOptions,\n ...options,\n content,\n completeWith,\n $implicit: observer,\n component: this.component,\n createdAt: Date.now(),\n id: this.idService.generate(),\n };\n\n this.dialogs$.next([...this.dialogs$.value, dialog]);\n\n return () => {\n this.dialogs$.next(this.dialogs$.value.filter(item => item !== dialog));\n };\n });\n }\n}\n","import {ChangeDetectorRef, Directive, Inject, TemplateRef} from '@angular/core';\nimport {TuiDialog} from '@taiga-ui/cdk/types';\nimport {PolymorpheusTemplate} from '@tinkoff/ng-polymorpheus';\nimport {EMPTY, Subject} from 'rxjs';\nimport {endWith, ignoreElements, switchMap} from 'rxjs/operators';\n\nimport {AbstractTuiDialogService} from './dialog.service';\n\n@Directive()\nexport abstract class AbstractTuiDialogDirective<T> extends PolymorpheusTemplate<\n TuiDialog<T, void>\n> {\n private readonly open$ = new Subject<boolean>();\n\n options: Partial<T> = {};\n\n set open(open: boolean) {\n this.open$.next(open);\n }\n\n openChange = this.open$.pipe(\n switchMap(open =>\n open\n ? this.service\n .open(this, this.options)\n .pipe(ignoreElements(), endWith(false))\n : EMPTY,\n ),\n );\n\n constructor(\n @Inject(TemplateRef)\n templateRef: TemplateRef<TuiDialog<T, void>>,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(AbstractTuiDialogService)\n private readonly service: AbstractTuiDialogService<T>,\n ) {\n super(templateRef, changeDetectorRef);\n }\n}\n","import {Directive} from '@angular/core';\n\nimport {AbstractTuiControl} from './control';\n\n@Directive()\nexport abstract class AbstractTuiMultipleControl<T> extends AbstractTuiControl<\n readonly T[]\n> {\n clear(): void {\n this.updateValue([]);\n }\n\n protected getFallbackValue(): readonly T[] {\n return [];\n }\n}\n","import {Directive} from '@angular/core';\n\nimport {AbstractTuiControl} from './control';\n\n@Directive()\nexport abstract class AbstractTuiNullableControl<T> extends AbstractTuiControl<T | null> {\n protected getFallbackValue(): T | null {\n return null;\n }\n}\n","import {\n ComponentFactory,\n ComponentRef,\n EmbeddedViewRef,\n Injectable,\n Injector,\n TemplateRef,\n} from '@angular/core';\nimport {TuiNoHostException} from '@taiga-ui/cdk/exceptions';\n\nimport {AbstractTuiPortalHostComponent} from './portal-host';\n\n/**\n * Abstract service for displaying portals\n */\n@Injectable()\nexport abstract class AbstractTuiPortalService {\n protected host?: AbstractTuiPortalHostComponent;\n\n protected get safeHost(): AbstractTuiPortalHostComponent {\n if (!this.host) {\n throw new TuiNoHostException();\n }\n\n return this.host;\n }\n\n attach(host: AbstractTuiPortalHostComponent): void {\n this.host = host;\n }\n\n add<C>(componentFactory: ComponentFactory<C>, injector: Injector): ComponentRef<C> {\n return this.safeHost.addComponentChild(componentFactory, injector);\n }\n\n remove<C>({hostView}: ComponentRef<C>): void {\n hostView.destroy();\n }\n\n addTemplate<C>(templateRef: TemplateRef<C>, context?: C): EmbeddedViewRef<C> {\n return this.safeHost.addTemplateChild(templateRef, context);\n }\n\n removeTemplate<C>(viewRef: EmbeddedViewRef<C>): void {\n viewRef.destroy();\n }\n}\n","import {\n ComponentFactory,\n ComponentRef,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n Inject,\n Injector,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport {AbstractTuiPortalService} from './portal-service';\n\n/**\n * Abstract class for host element for dynamically created portals.\n */\n@Directive()\nexport abstract class AbstractTuiPortalHostComponent {\n @ViewChild('viewContainer', {read: ViewContainerRef})\n viewContainerRef!: ViewContainerRef;\n\n constructor(\n @Inject(ElementRef)\n readonly elementRef: ElementRef<HTMLElement>,\n @Inject(AbstractTuiPortalService) portalService: AbstractTuiPortalService,\n ) {\n portalService.attach(this);\n }\n\n get clientRect(): ClientRect {\n return this.elementRef.nativeElement.getBoundingClientRect();\n }\n\n addComponentChild<C>(\n componentFactory: ComponentFactory<C>,\n injector: Injector,\n ): ComponentRef<C> {\n return this.viewContainerRef.createComponent<C>(\n componentFactory,\n undefined,\n Injector.create({\n parent: injector,\n providers: [\n {\n provide: AbstractTuiPortalHostComponent,\n useValue: this,\n },\n ],\n }),\n );\n }\n\n addTemplateChild<C>(templateRef: TemplateRef<C>, context?: C): EmbeddedViewRef<C> {\n return this.viewContainerRef.createEmbeddedView(templateRef, context);\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {Directive, Inject, OnDestroy} from '@angular/core';\n\n/**\n * Use this abstract class to create your own toggleable themes.\n * A component extending this class must have CSS variables definitions\n * and have ViewEncapsulation set to NONE. A boolean input allows to\n * switch theme on or off.\n * @dynamic\n */\n@Directive()\nexport abstract class AbstractTuiThemeSwitcher implements OnDestroy {\n static style: HTMLStyleElement | null = null;\n\n constructor(@Inject(DOCUMENT) private readonly documentRef: Document) {\n if (this.style !== null) {\n this.addTheme();\n\n return;\n }\n\n const styles = this.documentRef.head.querySelectorAll('style');\n\n (<typeof AbstractTuiThemeSwitcher>this.constructor).style =\n styles[styles.length - 1];\n }\n\n get style(): HTMLStyleElement | null {\n return (<typeof AbstractTuiThemeSwitcher>this.constructor).style;\n }\n\n ngOnDestroy(): void {\n this.removeTheme();\n }\n\n private addTheme(): void {\n if (this.style) {\n this.documentRef.head.appendChild(this.style);\n }\n }\n\n private removeTheme(): void {\n if (this.style && this.documentRef.head.contains(this.style)) {\n this.documentRef.head.removeChild(this.style);\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}