@taiga-ui/cdk 2.59.1 → 2.62.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 (93) hide show
  1. package/bundles/taiga-ui-cdk-constants.umd.js +4 -1
  2. package/bundles/taiga-ui-cdk-constants.umd.js.map +1 -1
  3. package/bundles/taiga-ui-cdk-constants.umd.min.js +1 -1
  4. package/bundles/taiga-ui-cdk-constants.umd.min.js.map +1 -1
  5. package/bundles/taiga-ui-cdk-observables.umd.js +8 -0
  6. package/bundles/taiga-ui-cdk-observables.umd.js.map +1 -1
  7. package/bundles/taiga-ui-cdk-observables.umd.min.js +1 -1
  8. package/bundles/taiga-ui-cdk-observables.umd.min.js.map +1 -1
  9. package/bundles/taiga-ui-cdk-pipes-keys.umd.js +286 -0
  10. package/bundles/taiga-ui-cdk-pipes-keys.umd.js.map +1 -0
  11. package/bundles/taiga-ui-cdk-pipes-keys.umd.min.js +2 -0
  12. package/bundles/taiga-ui-cdk-pipes-keys.umd.min.js.map +1 -0
  13. package/bundles/taiga-ui-cdk-pipes.umd.js +12 -4
  14. package/bundles/taiga-ui-cdk-pipes.umd.js.map +1 -1
  15. package/bundles/taiga-ui-cdk-pipes.umd.min.js +1 -1
  16. package/constants/index.d.ts +1 -0
  17. package/constants/taiga-ui-cdk-constants.metadata.json +1 -1
  18. package/constants/version.d.ts +1 -0
  19. package/constants/version.js +3 -0
  20. package/esm2015/constants/index.js +2 -1
  21. package/esm2015/constants/parent-animation.js +2 -2
  22. package/esm2015/constants/version.js +2 -0
  23. package/esm2015/observables/index.js +2 -1
  24. package/esm2015/observables/is-observed.js +7 -0
  25. package/esm2015/pipes/index.js +2 -1
  26. package/esm2015/pipes/keys/index.js +3 -0
  27. package/esm2015/pipes/keys/keys.module.js +13 -0
  28. package/esm2015/pipes/keys/keys.pipe.js +12 -0
  29. package/esm2015/pipes/keys/taiga-ui-cdk-pipes-keys.js +5 -0
  30. package/esm5/constants/index.js +2 -1
  31. package/esm5/constants/parent-animation.js +2 -2
  32. package/esm5/constants/version.js +2 -0
  33. package/esm5/observables/index.js +2 -1
  34. package/esm5/observables/is-observed.js +7 -0
  35. package/esm5/pipes/index.js +2 -1
  36. package/esm5/pipes/keys/index.js +3 -0
  37. package/esm5/pipes/keys/keys.module.js +16 -0
  38. package/esm5/pipes/keys/keys.pipe.js +15 -0
  39. package/esm5/pipes/keys/taiga-ui-cdk-pipes-keys.js +5 -0
  40. package/fesm2015/taiga-ui-cdk-constants.js +4 -2
  41. package/fesm2015/taiga-ui-cdk-constants.js.map +1 -1
  42. package/fesm2015/taiga-ui-cdk-observables.js +8 -1
  43. package/fesm2015/taiga-ui-cdk-observables.js.map +1 -1
  44. package/fesm2015/taiga-ui-cdk-pipes-keys.js +27 -0
  45. package/fesm2015/taiga-ui-cdk-pipes-keys.js.map +1 -0
  46. package/fesm2015/taiga-ui-cdk-pipes.js +1 -0
  47. package/fesm2015/taiga-ui-cdk-pipes.js.map +1 -1
  48. package/fesm5/taiga-ui-cdk-constants.js +4 -2
  49. package/fesm5/taiga-ui-cdk-constants.js.map +1 -1
  50. package/fesm5/taiga-ui-cdk-observables.js +8 -1
  51. package/fesm5/taiga-ui-cdk-observables.js.map +1 -1
  52. package/fesm5/taiga-ui-cdk-pipes-keys.js +33 -0
  53. package/fesm5/taiga-ui-cdk-pipes-keys.js.map +1 -0
  54. package/fesm5/taiga-ui-cdk-pipes.js +1 -0
  55. package/fesm5/taiga-ui-cdk-pipes.js.map +1 -1
  56. package/observables/index.d.ts +1 -0
  57. package/observables/is-observed.d.ts +5 -0
  58. package/observables/taiga-ui-cdk-observables.metadata.json +1 -1
  59. package/package.json +1 -1
  60. package/pipes/index.d.ts +1 -0
  61. package/pipes/keys/index.d.ts +2 -0
  62. package/pipes/keys/keys.module.d.ts +2 -0
  63. package/pipes/keys/keys.pipe.d.ts +4 -0
  64. package/pipes/keys/package.json +13 -0
  65. package/pipes/keys/taiga-ui-cdk-pipes-keys.d.ts +4 -0
  66. package/pipes/keys/taiga-ui-cdk-pipes-keys.metadata.json +1 -0
  67. package/pipes/taiga-ui-cdk-pipes.metadata.json +1 -1
  68. package/schematics/collection.json +6 -0
  69. package/schematics/constants/file-globs.d.ts +2 -0
  70. package/schematics/constants/file-globs.js +10 -0
  71. package/schematics/constants/index.d.ts +1 -0
  72. package/schematics/constants/index.js +4 -0
  73. package/schematics/ng-add/constants/versions.js +2 -2
  74. package/schematics/ng-update/index.d.ts +11 -2
  75. package/schematics/ng-update/index.js +8 -8
  76. package/schematics/ng-update/schema.json +13 -0
  77. package/schematics/ng-update/steps/migrate-date-time.js +45 -1
  78. package/schematics/ng-update/steps/migrate-progress.js +2 -1
  79. package/schematics/ng-update/steps/migrate-sliders/index.js +2 -0
  80. package/schematics/ng-update/steps/migrate-sliders/migrate-input-range.js +4 -3
  81. package/schematics/ng-update/steps/migrate-sliders/migrate-input-slider.js +3 -2
  82. package/schematics/ng-update/steps/migrate-templates.js +10 -4
  83. package/schematics/ng-update/steps/replace-deep-import.js +2 -1
  84. package/schematics/ng-update/steps/replace-enums.js +2 -1
  85. package/schematics/ng-update/steps/replace-functions.js +6 -2
  86. package/schematics/ng-update/steps/show-warnings.js +2 -1
  87. package/schematics/utils/angular/ng-module.js +2 -1
  88. package/schematics/utils/get-execution-time.d.ts +1 -0
  89. package/schematics/utils/get-execution-time.js +7 -0
  90. package/schematics/utils/get-named-import-references.js +2 -1
  91. package/schematics/utils/progress.d.ts +1 -0
  92. package/schematics/utils/progress.js +12 -0
  93. package/schematics/utils/templates/get-component-templates.js +1 -1
@@ -77,7 +77,7 @@
77
77
  var TUI_PARENT_ANIMATION = animations.trigger("tuiParentAnimation", [
78
78
  animations.transition("* => void", [
79
79
  animations.style({ overflow: "hidden" }),
80
- animations.query("@*", [animations.animateChild()], { optional: true }),
80
+ animations.query(":scope > *", [animations.animateChild()], { optional: true }),
81
81
  ]),
82
82
  ]);
83
83
 
@@ -155,6 +155,8 @@
155
155
  */
156
156
  var CHAR_ZERO_WIDTH_SPACE = "\u200B";
157
157
 
158
+ var TUI_VERSION = "2.62.0";
159
+
158
160
  exports.ALWAYS_FALSE_HANDLER = ALWAYS_FALSE_HANDLER;
159
161
  exports.ALWAYS_TRUE_HANDLER = ALWAYS_TRUE_HANDLER;
160
162
  exports.CHAR_BULLET = CHAR_BULLET;
@@ -181,6 +183,7 @@
181
183
  exports.TUI_DEFAULT_STRINGIFY = TUI_DEFAULT_STRINGIFY;
182
184
  exports.TUI_PARENT_ANIMATION = TUI_PARENT_ANIMATION;
183
185
  exports.TUI_STRICT_MATCHER = TUI_STRICT_MATCHER;
186
+ exports.TUI_VERSION = TUI_VERSION;
184
187
  exports.svgNodeFilter = svgNodeFilter;
185
188
 
186
189
  Object.defineProperty(exports, '__esModule', { value: true });
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-constants.umd.js","sources":["ng://@taiga-ui/cdk/constants/always-false-handler.ts","ng://@taiga-ui/cdk/constants/always-true-handler.ts","ng://@taiga-ui/cdk/constants/browser.ts","ng://@taiga-ui/cdk/constants/empty.ts","ng://@taiga-ui/cdk/constants/stringify.ts","ng://@taiga-ui/cdk/constants/matcher.ts","ng://@taiga-ui/cdk/constants/parent-animation.ts","ng://@taiga-ui/cdk/constants/polling-time.ts","ng://@taiga-ui/cdk/constants/svg-node-filter.ts","ng://@taiga-ui/cdk/constants/unicode-chars.ts"],"sourcesContent":["/**\n * Handler that always returns `false`.\n */\nexport const ALWAYS_FALSE_HANDLER = (): false => false;\n","/**\n * Handler that always returns `true`.\n */\nexport const ALWAYS_TRUE_HANDLER = (): true => true;\n","export const CHROMIUM_EDGE_START_VERSION = 79;\n","import {QueryList} from '@angular/core';\nimport {ValidatorFn} from '@angular/forms';\n\n/**\n * For type safety when using @ContentChildren and @ViewChildren\n *\n * NOTE: Be careful subscribing to 'changes'\n */\nexport const EMPTY_QUERY = new QueryList<any>();\nexport const EMPTY_ARRAY: [] = [];\nexport const EMPTY_FUNCTION: (...args: any[]) => void = () => {};\n/** @deprecated use Validators.nullValidator */\nexport const EMPTY_VALIDATOR: ValidatorFn = () => null;\nexport const EMPTY_CLIENT_RECT: ClientRect = {\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n};\n","import {TuiStringHandler} from '@taiga-ui/cdk/types';\n\n/**\n * Default method to turn arbitrary object into string\n */\nexport const TUI_DEFAULT_STRINGIFY: TuiStringHandler<unknown> = item => String(item);\n","import {TuiHandler, TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\nimport {TUI_DEFAULT_STRINGIFY} from './stringify';\n\n/**\n * Default handler for matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_DEFAULT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = TUI_DEFAULT_STRINGIFY,\n): boolean => stringify(item).toLowerCase().includes(search.toLowerCase());\n\n/**\n * Default handler for strict matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_STRICT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = TUI_DEFAULT_STRINGIFY,\n): boolean => stringify(item).toLowerCase() === search.toLowerCase();\n\n/**\n * Default handler to match equality of two elements\n * ATTENTION: considers two empty arrays equal\n *\n * @param item1 first element\n * @param item2 second element\n */\nexport const TUI_DEFAULT_IDENTITY_MATCHER: TuiIdentityMatcher<unknown> = (item1, item2) =>\n item1 === item2 || bothEmpty(item1, item2);\n\nfunction bothEmpty(item1: unknown, item2: unknown): boolean {\n return Array.isArray(item1) && Array.isArray(item2) && !item1.length && !item2.length;\n}\n","import {animateChild, query, style, transition, trigger} from '@angular/animations';\n\nexport const TUI_PARENT_ANIMATION = trigger(`tuiParentAnimation`, [\n transition(`* => void`, [\n style({overflow: `hidden`}),\n query(`@*`, [animateChild()], {optional: true}),\n ]),\n]);\n","export const POLLING_TIME = 1000 / 15;\n","// Filtering SVGElements for TreeWalker\n// Filter must be a function in IE, other modern browsers are compliant to this format\nexport const svgNodeFilter: NodeFilter = ((node: Node) =>\n `ownerSVGElement` in node\n ? NodeFilter.FILTER_REJECT\n : NodeFilter.FILTER_ACCEPT) as any;\n","/**\n * {@link https://unicode-table.com/en/00A0/ Non-breaking space}.\n */\nexport const CHAR_NO_BREAK_SPACE = `\\u00A0`;\n\n/**\n * {@link https://unicode-table.com/en/2013/ EN dash}\n * is used to indicate a range of numbers or a span of time.\n * @example 2006–2022\n * ___\n * Don't confuse with {@link CHAR_EM_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EN_DASH = `\\u2013`;\n\n/**\n * {@link https://unicode-table.com/en/2014/ EM dash}\n * is used to mark a break in a sentence.\n * @example Taiga UI — powerful set of open source components for Angular\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EM_DASH = `\\u2014`;\n\n/**\n * {@link https://unicode-table.com/en/00AB/ Left-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_LAQUO = `\\u00AB`;\n\n/**\n * {@link https://unicode-table.com/en/00BB/ Right-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_RAQUO = `\\u00BB`;\n\n/**\n * {@link https://unicode-table.com/en/002D/ Hyphen (minus sign)}\n * is used to combine words.\n * @example well-behaved\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_EM_DASH}!\n */\nexport const CHAR_HYPHEN = `\\u002D`;\n\n/**\n * {@link https://unicode-table.com/en/2212/ Minus}\n * is used as math operator symbol or before negative digits.\n * ---\n * Can be used as `&minus;`. Don't confuse with {@link CHAR_HYPHEN}\n */\nexport const CHAR_MINUS = `\\u2212`;\n\n/**\n * {@link https://unicode-table.com/en/002B/ Plus}\n */\nexport const CHAR_PLUS = `\\u002B`;\n\n/**\n * {@link https://unicode-table.com/en/2022/ Bullet}.\n */\nexport const CHAR_BULLET = `\\u2022`;\n\n/**\n * {@link https://unicode-table.com/en/2026/ Suspension points}.\n */\nexport const CHAR_ELLIPSIS = `\\u2026`;\n\n/**\n * {@link https://unicode-table.com/en/00A4/ Suspension points}.\n */\nexport const CHAR_CURRENCY_SIGN = `\\u00A4`;\n\n/**\n * {@link https://unicode-table.com/en/200b/ Suspension points}.\n */\nexport const CHAR_ZERO_WIDTH_SPACE = `\\u200B`;\n"],"names":["QueryList","trigger","transition","style","query","animateChild"],"mappings":";;;;;;IAAA;;;QAGa,oBAAoB,GAAG,cAAa,OAAA,KAAK;;ICHtD;;;QAGa,mBAAmB,GAAG,cAAY,OAAA,IAAI;;QCHtC,2BAA2B,GAAG;;ICG3C;;;;;QAKa,WAAW,GAAG,IAAIA,cAAS,GAAQ;QACnC,WAAW,GAAO,GAAG;QACrB,cAAc,GAA6B,gBAAS;IACjE;QACa,eAAe,GAAgB,cAAM,OAAA,IAAI,IAAC;QAC1C,iBAAiB,GAAe;QACzC,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,CAAC;QACR,GAAG,EAAE,CAAC;QACN,KAAK,EAAE,CAAC;;;ICjBZ;;;QAGa,qBAAqB,GAA8B,UAAA,IAAI,IAAI,OAAA,MAAM,CAAC,IAAI,CAAC;;ICDpF;;;;;;QAMa,mBAAmB,GAAG,UAC/B,IAAO,EACP,MAAc,EACd,SAAwD;QAAxD,0BAAA,EAAA,iCAAwD;QAC9C,OAAA,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IAA5D,EAA6D;IAE3E;;;;;;QAMa,kBAAkB,GAAG,UAC9B,IAAO,EACP,MAAc,EACd,SAAwD;QAAxD,0BAAA,EAAA,iCAAwD;QAC9C,OAAA,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,WAAW,EAAE;IAAtD,EAAuD;IAErE;;;;;;;QAOa,4BAA4B,GAAgC,UAAC,KAAK,EAAE,KAAK;QAClF,OAAA,KAAK,KAAK,KAAK,IAAI,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IAA1C,EAA2C;IAE/C,SAAS,SAAS,CAAC,KAAc,EAAE,KAAc;QAC7C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAC1F;;QCtCa,oBAAoB,GAAGC,kBAAO,CAAC,oBAAoB,EAAE;QAC9DC,qBAAU,CAAC,WAAW,EAAE;YACpBC,gBAAK,CAAC,EAAC,QAAQ,EAAE,QAAQ,EAAC,CAAC;YAC3BC,gBAAK,CAAC,IAAI,EAAE,CAACC,uBAAY,EAAE,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;SAClD,CAAC;KACL;;QCPY,YAAY,GAAG,IAAI,GAAG;;ICAnC;IACA;QACa,aAAa,IAAgB,UAAC,IAAU;QACjD,OAAA,iBAAiB,IAAI,IAAI;cACnB,UAAU,CAAC,aAAa;cACxB,UAAU,CAAC,aAAa;IAF9B,CAE8B;;ICLlC;;;QAGa,mBAAmB,GAAG,SAAS;IAE5C;;;;;;;QAOa,YAAY,GAAG,SAAS;IAErC;;;;;;;QAOa,YAAY,GAAG,SAAS;IAErC;;;QAGa,UAAU,GAAG,SAAS;IAEnC;;;QAGa,UAAU,GAAG,SAAS;IAEnC;;;;;;;QAOa,WAAW,GAAG,IAAS;IAEpC;;;;;;QAMa,UAAU,GAAG,SAAS;IAEnC;;;QAGa,SAAS,GAAG,IAAS;IAElC;;;QAGa,WAAW,GAAG,SAAS;IAEpC;;;QAGa,aAAa,GAAG,SAAS;IAEtC;;;QAGa,kBAAkB,GAAG,SAAS;IAE3C;;;QAGa,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-constants.umd.js","sources":["ng://@taiga-ui/cdk/constants/always-false-handler.ts","ng://@taiga-ui/cdk/constants/always-true-handler.ts","ng://@taiga-ui/cdk/constants/browser.ts","ng://@taiga-ui/cdk/constants/empty.ts","ng://@taiga-ui/cdk/constants/stringify.ts","ng://@taiga-ui/cdk/constants/matcher.ts","ng://@taiga-ui/cdk/constants/parent-animation.ts","ng://@taiga-ui/cdk/constants/polling-time.ts","ng://@taiga-ui/cdk/constants/svg-node-filter.ts","ng://@taiga-ui/cdk/constants/unicode-chars.ts","ng://@taiga-ui/cdk/constants/version.ts"],"sourcesContent":["/**\n * Handler that always returns `false`.\n */\nexport const ALWAYS_FALSE_HANDLER = (): false => false;\n","/**\n * Handler that always returns `true`.\n */\nexport const ALWAYS_TRUE_HANDLER = (): true => true;\n","export const CHROMIUM_EDGE_START_VERSION = 79;\n","import {QueryList} from '@angular/core';\nimport {ValidatorFn} from '@angular/forms';\n\n/**\n * For type safety when using @ContentChildren and @ViewChildren\n *\n * NOTE: Be careful subscribing to 'changes'\n */\nexport const EMPTY_QUERY = new QueryList<any>();\nexport const EMPTY_ARRAY: [] = [];\nexport const EMPTY_FUNCTION: (...args: any[]) => void = () => {};\n/** @deprecated use Validators.nullValidator */\nexport const EMPTY_VALIDATOR: ValidatorFn = () => null;\nexport const EMPTY_CLIENT_RECT: ClientRect = {\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n};\n","import {TuiStringHandler} from '@taiga-ui/cdk/types';\n\n/**\n * Default method to turn arbitrary object into string\n */\nexport const TUI_DEFAULT_STRINGIFY: TuiStringHandler<unknown> = item => String(item);\n","import {TuiHandler, TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\nimport {TUI_DEFAULT_STRINGIFY} from './stringify';\n\n/**\n * Default handler for matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_DEFAULT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = TUI_DEFAULT_STRINGIFY,\n): boolean => stringify(item).toLowerCase().includes(search.toLowerCase());\n\n/**\n * Default handler for strict matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_STRICT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = TUI_DEFAULT_STRINGIFY,\n): boolean => stringify(item).toLowerCase() === search.toLowerCase();\n\n/**\n * Default handler to match equality of two elements\n * ATTENTION: considers two empty arrays equal\n *\n * @param item1 first element\n * @param item2 second element\n */\nexport const TUI_DEFAULT_IDENTITY_MATCHER: TuiIdentityMatcher<unknown> = (item1, item2) =>\n item1 === item2 || bothEmpty(item1, item2);\n\nfunction bothEmpty(item1: unknown, item2: unknown): boolean {\n return Array.isArray(item1) && Array.isArray(item2) && !item1.length && !item2.length;\n}\n","import {animateChild, query, style, transition, trigger} from '@angular/animations';\n\nexport const TUI_PARENT_ANIMATION = trigger(`tuiParentAnimation`, [\n transition(`* => void`, [\n style({overflow: `hidden`}),\n query(`:scope > *`, [animateChild()], {optional: true}),\n ]),\n]);\n","export const POLLING_TIME = 1000 / 15;\n","// Filtering SVGElements for TreeWalker\n// Filter must be a function in IE, other modern browsers are compliant to this format\nexport const svgNodeFilter: NodeFilter = ((node: Node) =>\n `ownerSVGElement` in node\n ? NodeFilter.FILTER_REJECT\n : NodeFilter.FILTER_ACCEPT) as any;\n","/**\n * {@link https://unicode-table.com/en/00A0/ Non-breaking space}.\n */\nexport const CHAR_NO_BREAK_SPACE = `\\u00A0`;\n\n/**\n * {@link https://unicode-table.com/en/2013/ EN dash}\n * is used to indicate a range of numbers or a span of time.\n * @example 2006–2022\n * ___\n * Don't confuse with {@link CHAR_EM_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EN_DASH = `\\u2013`;\n\n/**\n * {@link https://unicode-table.com/en/2014/ EM dash}\n * is used to mark a break in a sentence.\n * @example Taiga UI — powerful set of open source components for Angular\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EM_DASH = `\\u2014`;\n\n/**\n * {@link https://unicode-table.com/en/00AB/ Left-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_LAQUO = `\\u00AB`;\n\n/**\n * {@link https://unicode-table.com/en/00BB/ Right-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_RAQUO = `\\u00BB`;\n\n/**\n * {@link https://unicode-table.com/en/002D/ Hyphen (minus sign)}\n * is used to combine words.\n * @example well-behaved\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_EM_DASH}!\n */\nexport const CHAR_HYPHEN = `\\u002D`;\n\n/**\n * {@link https://unicode-table.com/en/2212/ Minus}\n * is used as math operator symbol or before negative digits.\n * ---\n * Can be used as `&minus;`. Don't confuse with {@link CHAR_HYPHEN}\n */\nexport const CHAR_MINUS = `\\u2212`;\n\n/**\n * {@link https://unicode-table.com/en/002B/ Plus}\n */\nexport const CHAR_PLUS = `\\u002B`;\n\n/**\n * {@link https://unicode-table.com/en/2022/ Bullet}.\n */\nexport const CHAR_BULLET = `\\u2022`;\n\n/**\n * {@link https://unicode-table.com/en/2026/ Suspension points}.\n */\nexport const CHAR_ELLIPSIS = `\\u2026`;\n\n/**\n * {@link https://unicode-table.com/en/00A4/ Suspension points}.\n */\nexport const CHAR_CURRENCY_SIGN = `\\u00A4`;\n\n/**\n * {@link https://unicode-table.com/en/200b/ Suspension points}.\n */\nexport const CHAR_ZERO_WIDTH_SPACE = `\\u200B`;\n","export const TUI_VERSION = `2.62.0`;\n"],"names":["QueryList","trigger","transition","style","query","animateChild"],"mappings":";;;;;;IAAA;;;QAGa,oBAAoB,GAAG,cAAa,OAAA,KAAK;;ICHtD;;;QAGa,mBAAmB,GAAG,cAAY,OAAA,IAAI;;QCHtC,2BAA2B,GAAG;;ICG3C;;;;;QAKa,WAAW,GAAG,IAAIA,cAAS,GAAQ;QACnC,WAAW,GAAO,GAAG;QACrB,cAAc,GAA6B,gBAAS;IACjE;QACa,eAAe,GAAgB,cAAM,OAAA,IAAI,IAAC;QAC1C,iBAAiB,GAAe;QACzC,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,CAAC;QACR,GAAG,EAAE,CAAC;QACN,KAAK,EAAE,CAAC;;;ICjBZ;;;QAGa,qBAAqB,GAA8B,UAAA,IAAI,IAAI,OAAA,MAAM,CAAC,IAAI,CAAC;;ICDpF;;;;;;QAMa,mBAAmB,GAAG,UAC/B,IAAO,EACP,MAAc,EACd,SAAwD;QAAxD,0BAAA,EAAA,iCAAwD;QAC9C,OAAA,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IAA5D,EAA6D;IAE3E;;;;;;QAMa,kBAAkB,GAAG,UAC9B,IAAO,EACP,MAAc,EACd,SAAwD;QAAxD,0BAAA,EAAA,iCAAwD;QAC9C,OAAA,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,WAAW,EAAE;IAAtD,EAAuD;IAErE;;;;;;;QAOa,4BAA4B,GAAgC,UAAC,KAAK,EAAE,KAAK;QAClF,OAAA,KAAK,KAAK,KAAK,IAAI,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IAA1C,EAA2C;IAE/C,SAAS,SAAS,CAAC,KAAc,EAAE,KAAc;QAC7C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAC1F;;QCtCa,oBAAoB,GAAGC,kBAAO,CAAC,oBAAoB,EAAE;QAC9DC,qBAAU,CAAC,WAAW,EAAE;YACpBC,gBAAK,CAAC,EAAC,QAAQ,EAAE,QAAQ,EAAC,CAAC;YAC3BC,gBAAK,CAAC,YAAY,EAAE,CAACC,uBAAY,EAAE,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;SAC1D,CAAC;KACL;;QCPY,YAAY,GAAG,IAAI,GAAG;;ICAnC;IACA;QACa,aAAa,IAAgB,UAAC,IAAU;QACjD,OAAA,iBAAiB,IAAI,IAAI;cACnB,UAAU,CAAC,aAAa;cACxB,UAAU,CAAC,aAAa;IAF9B,CAE8B;;ICLlC;;;QAGa,mBAAmB,GAAG,SAAS;IAE5C;;;;;;;QAOa,YAAY,GAAG,SAAS;IAErC;;;;;;;QAOa,YAAY,GAAG,SAAS;IAErC;;;QAGa,UAAU,GAAG,SAAS;IAEnC;;;QAGa,UAAU,GAAG,SAAS;IAEnC;;;;;;;QAOa,WAAW,GAAG,IAAS;IAEpC;;;;;;QAMa,UAAU,GAAG,SAAS;IAEnC;;;QAGa,SAAS,GAAG,IAAS;IAElC;;;QAGa,WAAW,GAAG,SAAS;IAEpC;;;QAGa,aAAa,GAAG,SAAS;IAEtC;;;QAGa,kBAAkB,GAAG,SAAS;IAE3C;;;QAGa,qBAAqB,GAAG;;QCzExB,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- !function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@angular/core"),require("@angular/animations")):"function"==typeof define&&define.amd?define("@taiga-ui/cdk/constants",["exports","@angular/core","@angular/animations"],n):n(((t=t||self)["taiga-ui"]=t["taiga-ui"]||{},t["taiga-ui"].cdk=t["taiga-ui"].cdk||{},t["taiga-ui"].cdk.constants={}),t.ng.core,t.ng.animations)}(this,(function(t,n,e){"use strict";var i=new n.QueryList,r=function(t){return String(t)};var o=e.trigger("tuiParentAnimation",[e.transition("* => void",[e.style({overflow:"hidden"}),e.query("@*",[e.animateChild()],{optional:!0})])]);t.ALWAYS_FALSE_HANDLER=function(){return!1},t.ALWAYS_TRUE_HANDLER=function(){return!0},t.CHAR_BULLET="•",t.CHAR_CURRENCY_SIGN="¤",t.CHAR_ELLIPSIS="…",t.CHAR_EM_DASH="—",t.CHAR_EN_DASH="–",t.CHAR_HYPHEN="-",t.CHAR_LAQUO="«",t.CHAR_MINUS="−",t.CHAR_NO_BREAK_SPACE=" ",t.CHAR_PLUS="+",t.CHAR_RAQUO="»",t.CHAR_ZERO_WIDTH_SPACE="​",t.CHROMIUM_EDGE_START_VERSION=79,t.EMPTY_ARRAY=[],t.EMPTY_CLIENT_RECT={bottom:0,height:0,left:0,right:0,top:0,width:0},t.EMPTY_FUNCTION=function(){},t.EMPTY_QUERY=i,t.EMPTY_VALIDATOR=function(){return null},t.POLLING_TIME=1e3/15,t.TUI_DEFAULT_IDENTITY_MATCHER=function(t,n){return t===n||function(t,n){return Array.isArray(t)&&Array.isArray(n)&&!t.length&&!n.length}(t,n)},t.TUI_DEFAULT_MATCHER=function(t,n,e){return void 0===e&&(e=r),e(t).toLowerCase().includes(n.toLowerCase())},t.TUI_DEFAULT_STRINGIFY=r,t.TUI_PARENT_ANIMATION=o,t.TUI_STRICT_MATCHER=function(t,n,e){return void 0===e&&(e=r),e(t).toLowerCase()===n.toLowerCase()},t.svgNodeFilter=function(t){return"ownerSVGElement"in t?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},Object.defineProperty(t,"__esModule",{value:!0})}));
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/animations")):"function"==typeof define&&define.amd?define("@taiga-ui/cdk/constants",["exports","@angular/core","@angular/animations"],e):e(((t=t||self)["taiga-ui"]=t["taiga-ui"]||{},t["taiga-ui"].cdk=t["taiga-ui"].cdk||{},t["taiga-ui"].cdk.constants={}),t.ng.core,t.ng.animations)}(this,(function(t,e,n){"use strict";var i=new e.QueryList,r=function(t){return String(t)};var o=n.trigger("tuiParentAnimation",[n.transition("* => void",[n.style({overflow:"hidden"}),n.query(":scope > *",[n.animateChild()],{optional:!0})])]);t.ALWAYS_FALSE_HANDLER=function(){return!1},t.ALWAYS_TRUE_HANDLER=function(){return!0},t.CHAR_BULLET="•",t.CHAR_CURRENCY_SIGN="¤",t.CHAR_ELLIPSIS="…",t.CHAR_EM_DASH="—",t.CHAR_EN_DASH="–",t.CHAR_HYPHEN="-",t.CHAR_LAQUO="«",t.CHAR_MINUS="−",t.CHAR_NO_BREAK_SPACE=" ",t.CHAR_PLUS="+",t.CHAR_RAQUO="»",t.CHAR_ZERO_WIDTH_SPACE="​",t.CHROMIUM_EDGE_START_VERSION=79,t.EMPTY_ARRAY=[],t.EMPTY_CLIENT_RECT={bottom:0,height:0,left:0,right:0,top:0,width:0},t.EMPTY_FUNCTION=function(){},t.EMPTY_QUERY=i,t.EMPTY_VALIDATOR=function(){return null},t.POLLING_TIME=1e3/15,t.TUI_DEFAULT_IDENTITY_MATCHER=function(t,e){return t===e||function(t,e){return Array.isArray(t)&&Array.isArray(e)&&!t.length&&!e.length}(t,e)},t.TUI_DEFAULT_MATCHER=function(t,e,n){return void 0===n&&(n=r),n(t).toLowerCase().includes(e.toLowerCase())},t.TUI_DEFAULT_STRINGIFY=r,t.TUI_PARENT_ANIMATION=o,t.TUI_STRICT_MATCHER=function(t,e,n){return void 0===n&&(n=r),n(t).toLowerCase()===e.toLowerCase()},t.TUI_VERSION="2.62.0",t.svgNodeFilter=function(t){return"ownerSVGElement"in t?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},Object.defineProperty(t,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=taiga-ui-cdk-constants.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["ng://@taiga-ui/cdk/constants/empty.ts","ng://@taiga-ui/cdk/constants/stringify.ts","ng://@taiga-ui/cdk/constants/parent-animation.ts","ng://@taiga-ui/cdk/constants/always-false-handler.ts","ng://@taiga-ui/cdk/constants/always-true-handler.ts","ng://@taiga-ui/cdk/constants/unicode-chars.ts","ng://@taiga-ui/cdk/constants/browser.ts","ng://@taiga-ui/cdk/constants/polling-time.ts","ng://@taiga-ui/cdk/constants/matcher.ts","ng://@taiga-ui/cdk/constants/svg-node-filter.ts"],"names":["EMPTY_QUERY","QueryList","TUI_DEFAULT_STRINGIFY","item","String","TUI_PARENT_ANIMATION","trigger","transition","style","overflow","query","animateChild","optional","bottom","height","left","right","top","width","item1","item2","Array","isArray","length","bothEmpty","search","stringify","toLowerCase","includes","node","NodeFilter","FILTER_REJECT","FILTER_ACCEPT"],"mappings":"2bAQaA,EAAc,IAAIC,EAAAA,UCHlBC,EAAmD,SAAAC,GAAQ,OAAAC,OAAOD,QCHlEE,EAAuBC,EAAAA,QAAQ,qBAAsB,CAC9DC,EAAAA,WAAW,YAAa,CACpBC,EAAAA,MAAM,CAACC,SAAU,WACjBC,EAAAA,MAAM,KAAM,CAACC,EAAAA,gBAAiB,CAACC,UAAU,+BCFb,WAAa,OAAA,yBCAd,WAAY,OAAA,iBCuDpB,yBAUO,oBALL,mBA1CD,mBATA,kBA4BD,iBAdD,iBAsBA,0BA7CS,gBAkDV,iBAtBC,4BA0CW,kCCzEM,iBNSZ,uBAIc,CACzCC,OAAQ,EACRC,OAAQ,EACRC,KAAM,EACNC,MAAO,EACPC,IAAK,EACLC,MAAO,oBAT6C,+CAEZ,WAAM,OAAA,qBOZtB,IAAO,kCCmCsC,SAACC,EAAOC,GAC7E,OAAAD,IAAUC,GAEd,SAAmBD,EAAgBC,GAC/B,OAAOC,MAAMC,QAAQH,IAAUE,MAAMC,QAAQF,KAAWD,EAAMI,SAAWH,EAAMG,OAH5DC,CAAUL,EAAOC,0BA1BL,SAC/BjB,EACAsB,EACAC,GACU,YADV,IAAAA,IAAAA,EAAAxB,GACUwB,EAAUvB,GAAMwB,cAAcC,SAASH,EAAOE,wFAQ1B,SAC9BxB,EACAsB,EACAC,GACU,YADV,IAAAA,IAAAA,EAAAxB,GACUwB,EAAUvB,GAAMwB,gBAAkBF,EAAOE,+BCxB7B,SAAiBE,GACvC,MAAA,oBAAqBA,EACfC,WAAWC,cACXD,WAAWE","sourcesContent":["import {QueryList} from '@angular/core';\nimport {ValidatorFn} from '@angular/forms';\n\n/**\n * For type safety when using @ContentChildren and @ViewChildren\n *\n * NOTE: Be careful subscribing to 'changes'\n */\nexport const EMPTY_QUERY = new QueryList<any>();\nexport const EMPTY_ARRAY: [] = [];\nexport const EMPTY_FUNCTION: (...args: any[]) => void = () => {};\n/** @deprecated use Validators.nullValidator */\nexport const EMPTY_VALIDATOR: ValidatorFn = () => null;\nexport const EMPTY_CLIENT_RECT: ClientRect = {\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n};\n","import {TuiStringHandler} from '@taiga-ui/cdk/types';\n\n/**\n * Default method to turn arbitrary object into string\n */\nexport const TUI_DEFAULT_STRINGIFY: TuiStringHandler<unknown> = item => String(item);\n","import {animateChild, query, style, transition, trigger} from '@angular/animations';\n\nexport const TUI_PARENT_ANIMATION = trigger(`tuiParentAnimation`, [\n transition(`* => void`, [\n style({overflow: `hidden`}),\n query(`@*`, [animateChild()], {optional: true}),\n ]),\n]);\n","/**\n * Handler that always returns `false`.\n */\nexport const ALWAYS_FALSE_HANDLER = (): false => false;\n","/**\n * Handler that always returns `true`.\n */\nexport const ALWAYS_TRUE_HANDLER = (): true => true;\n","/**\n * {@link https://unicode-table.com/en/00A0/ Non-breaking space}.\n */\nexport const CHAR_NO_BREAK_SPACE = `\\u00A0`;\n\n/**\n * {@link https://unicode-table.com/en/2013/ EN dash}\n * is used to indicate a range of numbers or a span of time.\n * @example 2006–2022\n * ___\n * Don't confuse with {@link CHAR_EM_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EN_DASH = `\\u2013`;\n\n/**\n * {@link https://unicode-table.com/en/2014/ EM dash}\n * is used to mark a break in a sentence.\n * @example Taiga UI — powerful set of open source components for Angular\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EM_DASH = `\\u2014`;\n\n/**\n * {@link https://unicode-table.com/en/00AB/ Left-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_LAQUO = `\\u00AB`;\n\n/**\n * {@link https://unicode-table.com/en/00BB/ Right-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_RAQUO = `\\u00BB`;\n\n/**\n * {@link https://unicode-table.com/en/002D/ Hyphen (minus sign)}\n * is used to combine words.\n * @example well-behaved\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_EM_DASH}!\n */\nexport const CHAR_HYPHEN = `\\u002D`;\n\n/**\n * {@link https://unicode-table.com/en/2212/ Minus}\n * is used as math operator symbol or before negative digits.\n * ---\n * Can be used as `&minus;`. Don't confuse with {@link CHAR_HYPHEN}\n */\nexport const CHAR_MINUS = `\\u2212`;\n\n/**\n * {@link https://unicode-table.com/en/002B/ Plus}\n */\nexport const CHAR_PLUS = `\\u002B`;\n\n/**\n * {@link https://unicode-table.com/en/2022/ Bullet}.\n */\nexport const CHAR_BULLET = `\\u2022`;\n\n/**\n * {@link https://unicode-table.com/en/2026/ Suspension points}.\n */\nexport const CHAR_ELLIPSIS = `\\u2026`;\n\n/**\n * {@link https://unicode-table.com/en/00A4/ Suspension points}.\n */\nexport const CHAR_CURRENCY_SIGN = `\\u00A4`;\n\n/**\n * {@link https://unicode-table.com/en/200b/ Suspension points}.\n */\nexport const CHAR_ZERO_WIDTH_SPACE = `\\u200B`;\n","export const CHROMIUM_EDGE_START_VERSION = 79;\n","export const POLLING_TIME = 1000 / 15;\n","import {TuiHandler, TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\nimport {TUI_DEFAULT_STRINGIFY} from './stringify';\n\n/**\n * Default handler for matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_DEFAULT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = TUI_DEFAULT_STRINGIFY,\n): boolean => stringify(item).toLowerCase().includes(search.toLowerCase());\n\n/**\n * Default handler for strict matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_STRICT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = TUI_DEFAULT_STRINGIFY,\n): boolean => stringify(item).toLowerCase() === search.toLowerCase();\n\n/**\n * Default handler to match equality of two elements\n * ATTENTION: considers two empty arrays equal\n *\n * @param item1 first element\n * @param item2 second element\n */\nexport const TUI_DEFAULT_IDENTITY_MATCHER: TuiIdentityMatcher<unknown> = (item1, item2) =>\n item1 === item2 || bothEmpty(item1, item2);\n\nfunction bothEmpty(item1: unknown, item2: unknown): boolean {\n return Array.isArray(item1) && Array.isArray(item2) && !item1.length && !item2.length;\n}\n","// Filtering SVGElements for TreeWalker\n// Filter must be a function in IE, other modern browsers are compliant to this format\nexport const svgNodeFilter: NodeFilter = ((node: Node) =>\n `ownerSVGElement` in node\n ? NodeFilter.FILTER_REJECT\n : NodeFilter.FILTER_ACCEPT) as any;\n"]}
1
+ {"version":3,"sources":["ng://@taiga-ui/cdk/constants/empty.ts","ng://@taiga-ui/cdk/constants/stringify.ts","ng://@taiga-ui/cdk/constants/parent-animation.ts","ng://@taiga-ui/cdk/constants/always-false-handler.ts","ng://@taiga-ui/cdk/constants/always-true-handler.ts","ng://@taiga-ui/cdk/constants/unicode-chars.ts","ng://@taiga-ui/cdk/constants/browser.ts","ng://@taiga-ui/cdk/constants/polling-time.ts","ng://@taiga-ui/cdk/constants/matcher.ts","ng://@taiga-ui/cdk/constants/version.ts","ng://@taiga-ui/cdk/constants/svg-node-filter.ts"],"names":["EMPTY_QUERY","QueryList","TUI_DEFAULT_STRINGIFY","item","String","TUI_PARENT_ANIMATION","trigger","transition","style","overflow","query","animateChild","optional","bottom","height","left","right","top","width","item1","item2","Array","isArray","length","bothEmpty","search","stringify","toLowerCase","includes","node","NodeFilter","FILTER_REJECT","FILTER_ACCEPT"],"mappings":"2bAQaA,EAAc,IAAIC,EAAAA,UCHlBC,EAAmD,SAAAC,GAAQ,OAAAC,OAAOD,QCHlEE,EAAuBC,EAAAA,QAAQ,qBAAsB,CAC9DC,EAAAA,WAAW,YAAa,CACpBC,EAAAA,MAAM,CAACC,SAAU,WACjBC,EAAAA,MAAM,aAAc,CAACC,EAAAA,gBAAiB,CAACC,UAAU,+BCFrB,WAAa,OAAA,yBCAd,WAAY,OAAA,iBCuDpB,yBAUO,oBALL,mBA1CD,mBATA,kBA4BD,iBAdD,iBAsBA,0BA7CS,gBAkDV,iBAtBC,4BA0CW,kCCzEM,iBNSZ,uBAIc,CACzCC,OAAQ,EACRC,OAAQ,EACRC,KAAM,EACNC,MAAO,EACPC,IAAK,EACLC,MAAO,oBAT6C,+CAEZ,WAAM,OAAA,qBOZtB,IAAO,kCCmCsC,SAACC,EAAOC,GAC7E,OAAAD,IAAUC,GAEd,SAAmBD,EAAgBC,GAC/B,OAAOC,MAAMC,QAAQH,IAAUE,MAAMC,QAAQF,KAAWD,EAAMI,SAAWH,EAAMG,OAH5DC,CAAUL,EAAOC,0BA1BL,SAC/BjB,EACAsB,EACAC,GACU,YADV,IAAAA,IAAAA,EAAAxB,GACUwB,EAAUvB,GAAMwB,cAAcC,SAASH,EAAOE,wFAQ1B,SAC9BxB,EACAsB,EACAC,GACU,YADV,IAAAA,IAAAA,EAAAxB,GACUwB,EAAUvB,GAAMwB,gBAAkBF,EAAOE,6BC1B5B,yBCED,SAAiBE,GACvC,MAAA,oBAAqBA,EACfC,WAAWC,cACXD,WAAWE","sourcesContent":["import {QueryList} from '@angular/core';\nimport {ValidatorFn} from '@angular/forms';\n\n/**\n * For type safety when using @ContentChildren and @ViewChildren\n *\n * NOTE: Be careful subscribing to 'changes'\n */\nexport const EMPTY_QUERY = new QueryList<any>();\nexport const EMPTY_ARRAY: [] = [];\nexport const EMPTY_FUNCTION: (...args: any[]) => void = () => {};\n/** @deprecated use Validators.nullValidator */\nexport const EMPTY_VALIDATOR: ValidatorFn = () => null;\nexport const EMPTY_CLIENT_RECT: ClientRect = {\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n};\n","import {TuiStringHandler} from '@taiga-ui/cdk/types';\n\n/**\n * Default method to turn arbitrary object into string\n */\nexport const TUI_DEFAULT_STRINGIFY: TuiStringHandler<unknown> = item => String(item);\n","import {animateChild, query, style, transition, trigger} from '@angular/animations';\n\nexport const TUI_PARENT_ANIMATION = trigger(`tuiParentAnimation`, [\n transition(`* => void`, [\n style({overflow: `hidden`}),\n query(`:scope > *`, [animateChild()], {optional: true}),\n ]),\n]);\n","/**\n * Handler that always returns `false`.\n */\nexport const ALWAYS_FALSE_HANDLER = (): false => false;\n","/**\n * Handler that always returns `true`.\n */\nexport const ALWAYS_TRUE_HANDLER = (): true => true;\n","/**\n * {@link https://unicode-table.com/en/00A0/ Non-breaking space}.\n */\nexport const CHAR_NO_BREAK_SPACE = `\\u00A0`;\n\n/**\n * {@link https://unicode-table.com/en/2013/ EN dash}\n * is used to indicate a range of numbers or a span of time.\n * @example 2006–2022\n * ___\n * Don't confuse with {@link CHAR_EM_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EN_DASH = `\\u2013`;\n\n/**\n * {@link https://unicode-table.com/en/2014/ EM dash}\n * is used to mark a break in a sentence.\n * @example Taiga UI — powerful set of open source components for Angular\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_HYPHEN}!\n */\nexport const CHAR_EM_DASH = `\\u2014`;\n\n/**\n * {@link https://unicode-table.com/en/00AB/ Left-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_LAQUO = `\\u00AB`;\n\n/**\n * {@link https://unicode-table.com/en/00BB/ Right-Pointing Double Angle Quotation Mark}\n */\nexport const CHAR_RAQUO = `\\u00BB`;\n\n/**\n * {@link https://unicode-table.com/en/002D/ Hyphen (minus sign)}\n * is used to combine words.\n * @example well-behaved\n * ___\n * Don't confuse with {@link CHAR_EN_DASH} or {@link CHAR_EM_DASH}!\n */\nexport const CHAR_HYPHEN = `\\u002D`;\n\n/**\n * {@link https://unicode-table.com/en/2212/ Minus}\n * is used as math operator symbol or before negative digits.\n * ---\n * Can be used as `&minus;`. Don't confuse with {@link CHAR_HYPHEN}\n */\nexport const CHAR_MINUS = `\\u2212`;\n\n/**\n * {@link https://unicode-table.com/en/002B/ Plus}\n */\nexport const CHAR_PLUS = `\\u002B`;\n\n/**\n * {@link https://unicode-table.com/en/2022/ Bullet}.\n */\nexport const CHAR_BULLET = `\\u2022`;\n\n/**\n * {@link https://unicode-table.com/en/2026/ Suspension points}.\n */\nexport const CHAR_ELLIPSIS = `\\u2026`;\n\n/**\n * {@link https://unicode-table.com/en/00A4/ Suspension points}.\n */\nexport const CHAR_CURRENCY_SIGN = `\\u00A4`;\n\n/**\n * {@link https://unicode-table.com/en/200b/ Suspension points}.\n */\nexport const CHAR_ZERO_WIDTH_SPACE = `\\u200B`;\n","export const CHROMIUM_EDGE_START_VERSION = 79;\n","export const POLLING_TIME = 1000 / 15;\n","import {TuiHandler, TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\nimport {TUI_DEFAULT_STRINGIFY} from './stringify';\n\n/**\n * Default handler for matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_DEFAULT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = TUI_DEFAULT_STRINGIFY,\n): boolean => stringify(item).toLowerCase().includes(search.toLowerCase());\n\n/**\n * Default handler for strict matching stringified version of an item and a search query\n * @param item arbitrary element to match with a string\n * @param search search query\n * @param stringify handler to turn item into a string\n */\nexport const TUI_STRICT_MATCHER = <T>(\n item: T,\n search: string,\n stringify: TuiHandler<T, string> = TUI_DEFAULT_STRINGIFY,\n): boolean => stringify(item).toLowerCase() === search.toLowerCase();\n\n/**\n * Default handler to match equality of two elements\n * ATTENTION: considers two empty arrays equal\n *\n * @param item1 first element\n * @param item2 second element\n */\nexport const TUI_DEFAULT_IDENTITY_MATCHER: TuiIdentityMatcher<unknown> = (item1, item2) =>\n item1 === item2 || bothEmpty(item1, item2);\n\nfunction bothEmpty(item1: unknown, item2: unknown): boolean {\n return Array.isArray(item1) && Array.isArray(item2) && !item1.length && !item2.length;\n}\n","export const TUI_VERSION = `2.62.0`;\n","// Filtering SVGElements for TreeWalker\n// Filter must be a function in IE, other modern browsers are compliant to this format\nexport const svgNodeFilter: NodeFilter = ((node: Node) =>\n `ownerSVGElement` in node\n ? NodeFilter.FILTER_REJECT\n : NodeFilter.FILTER_ACCEPT) as any;\n"]}
@@ -89,6 +89,13 @@
89
89
  }
90
90
  var tuiFocusVisibleObservable = focusVisibleObservable;
91
91
 
92
+ /**
93
+ * In RxJS 8 `observers` will be removed, this util is for future safety
94
+ */
95
+ function tuiIsObserved(observable) {
96
+ return observable.observed || !!observable.observers.length;
97
+ }
98
+
92
99
  /**
93
100
  * @deprecated: use {@link tuiItemsQueryListObservable} instead
94
101
  * Converts changes observable of a QueryList to an Observable of arrays
@@ -208,6 +215,7 @@
208
215
  exports.tuiDragAndDropFrom = tuiDragAndDropFrom;
209
216
  exports.tuiFocusVisibleObservable = tuiFocusVisibleObservable;
210
217
  exports.tuiIsAlive = tuiIsAlive;
218
+ exports.tuiIsObserved = tuiIsObserved;
211
219
  exports.tuiItemsQueryListObservable = tuiItemsQueryListObservable;
212
220
  exports.tuiMouseDragFinishFrom = tuiMouseDragFinishFrom;
213
221
  exports.tuiMustBePresent = tuiMustBePresent;
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-observables.umd.js","sources":["ng://@taiga-ui/cdk/observables/typed-from-event.ts","ng://@taiga-ui/cdk/observables/mouse-drag-finish-from.ts","ng://@taiga-ui/cdk/observables/drag-and-drop-from.ts","ng://@taiga-ui/cdk/observables/is-alive.ts","ng://@taiga-ui/cdk/observables/focus-visible-observable.ts","ng://@taiga-ui/cdk/observables/items-query-list-observable.ts","ng://@taiga-ui/cdk/observables/must-be-present.ts","ng://@taiga-ui/cdk/observables/pressed-observable.ts","ng://@taiga-ui/cdk/observables/prevent-default.ts","ng://@taiga-ui/cdk/observables/replay-control-value-changes.ts","ng://@taiga-ui/cdk/observables/stop-propagation.ts","ng://@taiga-ui/cdk/observables/watch.ts","ng://@taiga-ui/cdk/observables/zone-free.ts"],"sourcesContent":["import {TuiEventWith, TuiTypedEventTarget} from '@taiga-ui/cdk/types';\nimport {fromEvent, Observable} from 'rxjs';\n\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends keyof WindowEventMap>(\n target: Window,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<WindowEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends keyof DocumentEventMap>(\n target: Document,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<DocumentEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<T extends Element, E extends keyof HTMLElementEventMap>(\n target: T,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<HTMLElementEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<\n E extends Event,\n T extends TuiTypedEventTarget<TuiEventWith<E, T>>,\n>(\n target: T,\n event: string,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<E, T>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends Event>(\n target: TuiTypedEventTarget<E>,\n event: string,\n options?: AddEventListenerOptions,\n): Observable<E>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends Event>(\n target: TuiTypedEventTarget<E>,\n event: string,\n options: AddEventListenerOptions = {},\n): Observable<E> {\n return fromEvent(target, event, options);\n}\n\nexport const tuiTypedFromEvent = typedFromEvent;\n","import {TuiEventWith, TuiTypedEventTarget} from '@taiga-ui/cdk/types';\nimport {merge, Observable} from 'rxjs';\n\nimport {typedFromEvent} from './typed-from-event';\n\n/**\n * @deprecated: use {@link tuiMouseDragFinishFrom} instead\n * Letting go of the mouse after it was pressed\n * @param target\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function mouseDragFinishFrom<\n T extends TuiTypedEventTarget<TuiEventWith<DragEvent, T>>,\n>(target: Exclude<T, null>): Observable<TuiEventWith<MouseEvent, T>> {\n return merge(typedFromEvent(target, `mouseup`), typedFromEvent(target, `dragend`));\n}\n\nexport const tuiMouseDragFinishFrom = mouseDragFinishFrom;\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {isPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {concat, merge, Observable} from 'rxjs';\nimport {endWith, map, repeat, take, takeWhile} from 'rxjs/operators';\n\nimport {mouseDragFinishFrom} from './mouse-drag-finish-from';\nimport {typedFromEvent} from './typed-from-event';\n\nexport const enum TuiDragStage {\n Start,\n Continues,\n End,\n}\n\nexport class TuiDragState {\n constructor(readonly stage: TuiDragStage, readonly event: MouseEvent) {}\n}\n\n/**\n * @deprecated: use {@link tuiDragAndDropFrom} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function dragAndDropFrom(element: Element): Observable<TuiDragState> {\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n return concat(\n typedFromEvent(element, `mousedown`).pipe(\n take(1),\n map(event => new TuiDragState(TuiDragStage.Start, event)),\n ),\n merge(\n typedFromEvent(ownerDocument, `mousemove`).pipe(\n map(event => new TuiDragState(TuiDragStage.Continues, event)),\n ),\n mouseDragFinishFrom(ownerDocument).pipe(\n take(1),\n map(event => new TuiDragState(TuiDragStage.End, event)),\n endWith(null),\n ),\n ).pipe(takeWhile(isPresent)),\n ).pipe(repeat());\n}\n\nexport const tuiDragAndDropFrom = dragAndDropFrom;\n","import {OperatorFunction, pipe, timer} from 'rxjs';\nimport {distinctUntilChanged, mapTo, startWith, switchMapTo} from 'rxjs/operators';\n\n/**\n * Operator to set lifespan after which current value is considered obsolete\n */\nexport function tuiIsAlive(lifespan: number = 0): OperatorFunction<unknown, boolean> {\n return pipe(\n switchMapTo(timer(lifespan).pipe(mapTo(false), startWith(true))),\n distinctUntilChanged(),\n );\n}\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {isNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {concat, merge, Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n ignoreElements,\n mapTo,\n repeat,\n shareReplay,\n startWith,\n switchMapTo,\n take,\n withLatestFrom,\n} from 'rxjs/operators';\n\nimport {tuiIsAlive} from './is-alive';\nimport {typedFromEvent} from './typed-from-event';\n\nlet documentMouseUpIsAlive$: Observable<boolean>;\nlet documentMouseDownIsAlive$: Observable<boolean>;\n\n/**\n * @deprecated: use {@link tuiFocusVisibleObservable} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function focusVisibleObservable(element: Element): Observable<boolean> {\n const elementBlur$ = typedFromEvent(element, `blur`);\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n if (!documentMouseDownIsAlive$ || !documentMouseUpIsAlive$) {\n documentMouseUpIsAlive$ = typedFromEvent(ownerDocument, `mouseup`, {\n capture: true,\n }).pipe(\n tuiIsAlive(),\n startWith(false),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n documentMouseDownIsAlive$ = typedFromEvent(ownerDocument, `mousedown`, {\n capture: true,\n }).pipe(\n tuiIsAlive(),\n startWith(false),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n }\n\n return merge(\n // focus events excluding ones that came right after mouse action\n concat(\n typedFromEvent(element, `focus`).pipe(take(1)),\n // filtering out blur events when element remains focused so that we ignore browser tab focus loss\n elementBlur$.pipe(\n filter(() => !isNativeFocused(element)),\n take(1),\n ignoreElements(),\n ),\n ).pipe(\n repeat(),\n withLatestFrom(\n documentMouseDownIsAlive$,\n documentMouseUpIsAlive$,\n (_event, elementActual, documentActual) =>\n elementActual || documentActual,\n ),\n filter(isUserFocus => !isUserFocus),\n ),\n ).pipe(\n switchMapTo(elementBlur$.pipe(mapTo(false), take(1), startWith(true))),\n distinctUntilChanged(),\n );\n}\n\nexport const tuiFocusVisibleObservable = focusVisibleObservable;\n","import {QueryList} from '@angular/core';\nimport {getOriginalArrayFromQueryList} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {Observable} from 'rxjs';\nimport {map, startWith} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiItemsQueryListObservable} instead\n * Converts changes observable of a QueryList to an Observable of arrays\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function itemsQueryListObservable<T>(\n queryList: QueryList<T>,\n): Observable<readonly T[]> {\n return queryList.changes.pipe(\n map(() => getOriginalArrayFromQueryList(queryList)),\n startWith(getOriginalArrayFromQueryList(queryList)),\n );\n}\n\nexport const tuiItemsQueryListObservable = itemsQueryListObservable;\n","import {TuiValuePresentException} from '@taiga-ui/cdk/exceptions';\nimport {isPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {OperatorFunction} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiMustBePresent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function mustBePresent<T>(): OperatorFunction<T | undefined | null, T> {\n return map(value => {\n if (!isPresent(value)) {\n throw new TuiValuePresentException();\n }\n\n return value;\n });\n}\n\nexport const tuiMustBePresent = mustBePresent;\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {Observable} from 'rxjs';\nimport {filter, mapTo, startWith, switchMapTo, take} from 'rxjs/operators';\n\nimport {mouseDragFinishFrom} from './mouse-drag-finish-from';\nimport {typedFromEvent} from './typed-from-event';\n\nexport interface TuiPressedObservableOptions {\n onlyTrusted: boolean;\n}\n\n/**\n * @deprecated: use {@link tuiPressedObservable} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function pressedObservable(\n element: Element,\n {onlyTrusted}: TuiPressedObservableOptions = {onlyTrusted: true},\n): Observable<boolean> {\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n return typedFromEvent(element, `mousedown`).pipe(\n filter(({isTrusted}) => isTrusted || !onlyTrusted),\n switchMapTo(\n mouseDragFinishFrom(ownerDocument).pipe(\n mapTo(false),\n take(1),\n startWith(true),\n ),\n ),\n );\n}\n\nexport const tuiPressedObservable = pressedObservable;\n","import {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiPreventDefault} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function preventDefault<T extends Event>(): MonoTypeOperatorFunction<T> {\n return tap(event => event.preventDefault());\n}\n\nexport const tuiPreventDefault = preventDefault;\n","import {AbstractControl, AbstractControlDirective} from '@angular/forms';\nimport {TuiValueChangesException} from '@taiga-ui/cdk/exceptions';\nimport {Observable} from 'rxjs';\nimport {startWith} from 'rxjs/operators';\n\n/**\n * Turns AbstractControl/Abstract-control-directive valueChanges into ReplaySubject(1)\n * TODO: 3.0 name should be shorter.\n */\nexport function tuiReplayedValueChangesFrom<T>(\n control: AbstractControl | AbstractControlDirective,\n): Observable<T> {\n return new Observable(subscriber => {\n if (!control.valueChanges) {\n throw new TuiValueChangesException();\n }\n\n control.valueChanges.pipe(startWith(control.value)).subscribe(subscriber);\n });\n}\n","import {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiStopPropagation} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function stopPropagation<T extends Event>(): MonoTypeOperatorFunction<T> {\n return tap(e => {\n e.stopPropagation();\n });\n}\n\nexport const tuiStopPropagation = stopPropagation;\n","import {ChangeDetectorRef} from '@angular/core';\nimport {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiWatch} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function watch<T>(\n changeDetectorRef: ChangeDetectorRef,\n): MonoTypeOperatorFunction<T> {\n return tap(() => {\n changeDetectorRef.markForCheck();\n });\n}\n\nexport const tuiWatch = watch;\n","import {NgZone} from '@angular/core';\nimport {MonoTypeOperatorFunction, Observable, pipe} from 'rxjs';\n\nexport function tuiZonefull<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return source =>\n new Observable(subscriber =>\n source.subscribe({\n next: value => ngZone.run(() => subscriber.next(value)),\n error: (error: unknown) => ngZone.run(() => subscriber.error(error)),\n complete: () => ngZone.run(() => subscriber.complete()),\n }),\n );\n}\n\nexport function tuiZonefree<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return source =>\n new Observable(subscriber =>\n ngZone.runOutsideAngular(() => source.subscribe(subscriber)),\n );\n}\n\nexport function tuiZoneOptimized<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return pipe(tuiZonefree(ngZone), tuiZonefull(ngZone));\n}\n"],"names":["fromEvent","merge","TuiDragStage","TuiOwnerDocumentException","concat","take","map","endWith","takeWhile","isPresent","repeat","pipe","switchMapTo","timer","mapTo","startWith","distinctUntilChanged","shareReplay","filter","isNativeFocused","ignoreElements","withLatestFrom","getOriginalArrayFromQueryList","TuiValuePresentException","tap","Observable","TuiValueChangesException"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-cdk-observables.umd.js","sources":["ng://@taiga-ui/cdk/observables/typed-from-event.ts","ng://@taiga-ui/cdk/observables/mouse-drag-finish-from.ts","ng://@taiga-ui/cdk/observables/drag-and-drop-from.ts","ng://@taiga-ui/cdk/observables/is-alive.ts","ng://@taiga-ui/cdk/observables/focus-visible-observable.ts","ng://@taiga-ui/cdk/observables/is-observed.ts","ng://@taiga-ui/cdk/observables/items-query-list-observable.ts","ng://@taiga-ui/cdk/observables/must-be-present.ts","ng://@taiga-ui/cdk/observables/pressed-observable.ts","ng://@taiga-ui/cdk/observables/prevent-default.ts","ng://@taiga-ui/cdk/observables/replay-control-value-changes.ts","ng://@taiga-ui/cdk/observables/stop-propagation.ts","ng://@taiga-ui/cdk/observables/watch.ts","ng://@taiga-ui/cdk/observables/zone-free.ts"],"sourcesContent":["import {TuiEventWith, TuiTypedEventTarget} from '@taiga-ui/cdk/types';\nimport {fromEvent, Observable} from 'rxjs';\n\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends keyof WindowEventMap>(\n target: Window,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<WindowEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends keyof DocumentEventMap>(\n target: Document,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<DocumentEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<T extends Element, E extends keyof HTMLElementEventMap>(\n target: T,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<HTMLElementEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<\n E extends Event,\n T extends TuiTypedEventTarget<TuiEventWith<E, T>>,\n>(\n target: T,\n event: string,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<E, T>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends Event>(\n target: TuiTypedEventTarget<E>,\n event: string,\n options?: AddEventListenerOptions,\n): Observable<E>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends Event>(\n target: TuiTypedEventTarget<E>,\n event: string,\n options: AddEventListenerOptions = {},\n): Observable<E> {\n return fromEvent(target, event, options);\n}\n\nexport const tuiTypedFromEvent = typedFromEvent;\n","import {TuiEventWith, TuiTypedEventTarget} from '@taiga-ui/cdk/types';\nimport {merge, Observable} from 'rxjs';\n\nimport {typedFromEvent} from './typed-from-event';\n\n/**\n * @deprecated: use {@link tuiMouseDragFinishFrom} instead\n * Letting go of the mouse after it was pressed\n * @param target\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function mouseDragFinishFrom<\n T extends TuiTypedEventTarget<TuiEventWith<DragEvent, T>>,\n>(target: Exclude<T, null>): Observable<TuiEventWith<MouseEvent, T>> {\n return merge(typedFromEvent(target, `mouseup`), typedFromEvent(target, `dragend`));\n}\n\nexport const tuiMouseDragFinishFrom = mouseDragFinishFrom;\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {isPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {concat, merge, Observable} from 'rxjs';\nimport {endWith, map, repeat, take, takeWhile} from 'rxjs/operators';\n\nimport {mouseDragFinishFrom} from './mouse-drag-finish-from';\nimport {typedFromEvent} from './typed-from-event';\n\nexport const enum TuiDragStage {\n Start,\n Continues,\n End,\n}\n\nexport class TuiDragState {\n constructor(readonly stage: TuiDragStage, readonly event: MouseEvent) {}\n}\n\n/**\n * @deprecated: use {@link tuiDragAndDropFrom} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function dragAndDropFrom(element: Element): Observable<TuiDragState> {\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n return concat(\n typedFromEvent(element, `mousedown`).pipe(\n take(1),\n map(event => new TuiDragState(TuiDragStage.Start, event)),\n ),\n merge(\n typedFromEvent(ownerDocument, `mousemove`).pipe(\n map(event => new TuiDragState(TuiDragStage.Continues, event)),\n ),\n mouseDragFinishFrom(ownerDocument).pipe(\n take(1),\n map(event => new TuiDragState(TuiDragStage.End, event)),\n endWith(null),\n ),\n ).pipe(takeWhile(isPresent)),\n ).pipe(repeat());\n}\n\nexport const tuiDragAndDropFrom = dragAndDropFrom;\n","import {OperatorFunction, pipe, timer} from 'rxjs';\nimport {distinctUntilChanged, mapTo, startWith, switchMapTo} from 'rxjs/operators';\n\n/**\n * Operator to set lifespan after which current value is considered obsolete\n */\nexport function tuiIsAlive(lifespan: number = 0): OperatorFunction<unknown, boolean> {\n return pipe(\n switchMapTo(timer(lifespan).pipe(mapTo(false), startWith(true))),\n distinctUntilChanged(),\n );\n}\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {isNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {concat, merge, Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n ignoreElements,\n mapTo,\n repeat,\n shareReplay,\n startWith,\n switchMapTo,\n take,\n withLatestFrom,\n} from 'rxjs/operators';\n\nimport {tuiIsAlive} from './is-alive';\nimport {typedFromEvent} from './typed-from-event';\n\nlet documentMouseUpIsAlive$: Observable<boolean>;\nlet documentMouseDownIsAlive$: Observable<boolean>;\n\n/**\n * @deprecated: use {@link tuiFocusVisibleObservable} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function focusVisibleObservable(element: Element): Observable<boolean> {\n const elementBlur$ = typedFromEvent(element, `blur`);\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n if (!documentMouseDownIsAlive$ || !documentMouseUpIsAlive$) {\n documentMouseUpIsAlive$ = typedFromEvent(ownerDocument, `mouseup`, {\n capture: true,\n }).pipe(\n tuiIsAlive(),\n startWith(false),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n documentMouseDownIsAlive$ = typedFromEvent(ownerDocument, `mousedown`, {\n capture: true,\n }).pipe(\n tuiIsAlive(),\n startWith(false),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n }\n\n return merge(\n // focus events excluding ones that came right after mouse action\n concat(\n typedFromEvent(element, `focus`).pipe(take(1)),\n // filtering out blur events when element remains focused so that we ignore browser tab focus loss\n elementBlur$.pipe(\n filter(() => !isNativeFocused(element)),\n take(1),\n ignoreElements(),\n ),\n ).pipe(\n repeat(),\n withLatestFrom(\n documentMouseDownIsAlive$,\n documentMouseUpIsAlive$,\n (_event, elementActual, documentActual) =>\n elementActual || documentActual,\n ),\n filter(isUserFocus => !isUserFocus),\n ),\n ).pipe(\n switchMapTo(elementBlur$.pipe(mapTo(false), take(1), startWith(true))),\n distinctUntilChanged(),\n );\n}\n\nexport const tuiFocusVisibleObservable = focusVisibleObservable;\n","import {Subject} from 'rxjs';\n\n/**\n * In RxJS 8 `observers` will be removed, this util is for future safety\n */\nexport function tuiIsObserved<T>(observable: Subject<T>): boolean {\n return (observable as any).observed || !!observable.observers.length;\n}\n","import {QueryList} from '@angular/core';\nimport {getOriginalArrayFromQueryList} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {Observable} from 'rxjs';\nimport {map, startWith} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiItemsQueryListObservable} instead\n * Converts changes observable of a QueryList to an Observable of arrays\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function itemsQueryListObservable<T>(\n queryList: QueryList<T>,\n): Observable<readonly T[]> {\n return queryList.changes.pipe(\n map(() => getOriginalArrayFromQueryList(queryList)),\n startWith(getOriginalArrayFromQueryList(queryList)),\n );\n}\n\nexport const tuiItemsQueryListObservable = itemsQueryListObservable;\n","import {TuiValuePresentException} from '@taiga-ui/cdk/exceptions';\nimport {isPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {OperatorFunction} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiMustBePresent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function mustBePresent<T>(): OperatorFunction<T | undefined | null, T> {\n return map(value => {\n if (!isPresent(value)) {\n throw new TuiValuePresentException();\n }\n\n return value;\n });\n}\n\nexport const tuiMustBePresent = mustBePresent;\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {Observable} from 'rxjs';\nimport {filter, mapTo, startWith, switchMapTo, take} from 'rxjs/operators';\n\nimport {mouseDragFinishFrom} from './mouse-drag-finish-from';\nimport {typedFromEvent} from './typed-from-event';\n\nexport interface TuiPressedObservableOptions {\n onlyTrusted: boolean;\n}\n\n/**\n * @deprecated: use {@link tuiPressedObservable} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function pressedObservable(\n element: Element,\n {onlyTrusted}: TuiPressedObservableOptions = {onlyTrusted: true},\n): Observable<boolean> {\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n return typedFromEvent(element, `mousedown`).pipe(\n filter(({isTrusted}) => isTrusted || !onlyTrusted),\n switchMapTo(\n mouseDragFinishFrom(ownerDocument).pipe(\n mapTo(false),\n take(1),\n startWith(true),\n ),\n ),\n );\n}\n\nexport const tuiPressedObservable = pressedObservable;\n","import {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiPreventDefault} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function preventDefault<T extends Event>(): MonoTypeOperatorFunction<T> {\n return tap(event => event.preventDefault());\n}\n\nexport const tuiPreventDefault = preventDefault;\n","import {AbstractControl, AbstractControlDirective} from '@angular/forms';\nimport {TuiValueChangesException} from '@taiga-ui/cdk/exceptions';\nimport {Observable} from 'rxjs';\nimport {startWith} from 'rxjs/operators';\n\n/**\n * Turns AbstractControl/Abstract-control-directive valueChanges into ReplaySubject(1)\n * TODO: 3.0 name should be shorter.\n */\nexport function tuiReplayedValueChangesFrom<T>(\n control: AbstractControl | AbstractControlDirective,\n): Observable<T> {\n return new Observable(subscriber => {\n if (!control.valueChanges) {\n throw new TuiValueChangesException();\n }\n\n control.valueChanges.pipe(startWith(control.value)).subscribe(subscriber);\n });\n}\n","import {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiStopPropagation} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function stopPropagation<T extends Event>(): MonoTypeOperatorFunction<T> {\n return tap(e => {\n e.stopPropagation();\n });\n}\n\nexport const tuiStopPropagation = stopPropagation;\n","import {ChangeDetectorRef} from '@angular/core';\nimport {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiWatch} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function watch<T>(\n changeDetectorRef: ChangeDetectorRef,\n): MonoTypeOperatorFunction<T> {\n return tap(() => {\n changeDetectorRef.markForCheck();\n });\n}\n\nexport const tuiWatch = watch;\n","import {NgZone} from '@angular/core';\nimport {MonoTypeOperatorFunction, Observable, pipe} from 'rxjs';\n\nexport function tuiZonefull<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return source =>\n new Observable(subscriber =>\n source.subscribe({\n next: value => ngZone.run(() => subscriber.next(value)),\n error: (error: unknown) => ngZone.run(() => subscriber.error(error)),\n complete: () => ngZone.run(() => subscriber.complete()),\n }),\n );\n}\n\nexport function tuiZonefree<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return source =>\n new Observable(subscriber =>\n ngZone.runOutsideAngular(() => source.subscribe(subscriber)),\n );\n}\n\nexport function tuiZoneOptimized<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return pipe(tuiZonefree(ngZone), tuiZonefull(ngZone));\n}\n"],"names":["fromEvent","merge","TuiDragStage","TuiOwnerDocumentException","concat","take","map","endWith","takeWhile","isPresent","repeat","pipe","switchMapTo","timer","mapTo","startWith","distinctUntilChanged","shareReplay","filter","isNativeFocused","ignoreElements","withLatestFrom","getOriginalArrayFromQueryList","TuiValuePresentException","tap","Observable","TuiValueChangesException"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@taiga-ui/cdk/exceptions"),require("@taiga-ui/cdk/utils/miscellaneous"),require("rxjs"),require("rxjs/operators"),require("@taiga-ui/cdk/utils/focus")):"function"==typeof define&&define.amd?define("@taiga-ui/cdk/observables",["exports","@taiga-ui/cdk/exceptions","@taiga-ui/cdk/utils/miscellaneous","rxjs","rxjs/operators","@taiga-ui/cdk/utils/focus"],t):t(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"].cdk=e["taiga-ui"].cdk||{},e["taiga-ui"].cdk.observables={}),e["taiga-ui"].cdk.exceptions,e["taiga-ui"].cdk.utils.miscellaneous,e.rxjs,e.rxjs.operators,e["taiga-ui"].cdk.utils.focus)}(this,(function(e,t,r,n,i,u){"use strict";function o(e,t,r){return void 0===r&&(r={}),n.fromEvent(e,t,r)}var a=o;function s(e){return n.merge(o(e,"mouseup"),o(e,"dragend"))}var c,p=s;(c=e.TuiDragStage||(e.TuiDragStage={}))[c.Start=0]="Start",c[c.Continues=1]="Continues",c[c.End=2]="End";var f=function(e,t){this.stage=e,this.event=t};function l(e){var u=e.ownerDocument;if(!u)throw new t.TuiOwnerDocumentException;return n.concat(o(e,"mousedown").pipe(i.take(1),i.map((function(e){return new f(0,e)}))),n.merge(o(u,"mousemove").pipe(i.map((function(e){return new f(1,e)}))),s(u).pipe(i.take(1),i.map((function(e){return new f(2,e)})),i.endWith(null))).pipe(i.takeWhile(r.isPresent))).pipe(i.repeat())}var d,m,g=l;function v(e){return void 0===e&&(e=0),n.pipe(i.switchMapTo(n.timer(e).pipe(i.mapTo(!1),i.startWith(!0))),i.distinctUntilChanged())}function b(e){var r=o(e,"blur"),a=e.ownerDocument;if(!a)throw new t.TuiOwnerDocumentException;return m&&d||(d=o(a,"mouseup",{capture:!0}).pipe(v(),i.startWith(!1),i.shareReplay({bufferSize:1,refCount:!0})),m=o(a,"mousedown",{capture:!0}).pipe(v(),i.startWith(!1),i.shareReplay({bufferSize:1,refCount:!0}))),n.merge(n.concat(o(e,"focus").pipe(i.take(1)),r.pipe(i.filter((function(){return!u.isNativeFocused(e)})),i.take(1),i.ignoreElements())).pipe(i.repeat(),i.withLatestFrom(m,d,(function(e,t,r){return t||r})),i.filter((function(e){return!e})))).pipe(i.switchMapTo(r.pipe(i.mapTo(!1),i.take(1),i.startWith(!0))),i.distinctUntilChanged())}var h=b;function w(e){return e.changes.pipe(i.map((function(){return r.getOriginalArrayFromQueryList(e)})),i.startWith(r.getOriginalArrayFromQueryList(e)))}var k=w;function x(){return i.map((function(e){if(!r.isPresent(e))throw new t.TuiValuePresentException;return e}))}var T=x;function y(e,r){var n=(void 0===r?{onlyTrusted:!0}:r).onlyTrusted,u=e.ownerDocument;if(!u)throw new t.TuiOwnerDocumentException;return o(e,"mousedown").pipe(i.filter((function(e){return e.isTrusted||!n})),i.switchMapTo(s(u).pipe(i.mapTo(!1),i.take(1),i.startWith(!0))))}var D=y;function O(){return i.tap((function(e){return e.preventDefault()}))}var F=O;function C(){return i.tap((function(e){e.stopPropagation()}))}var E=C;function P(e){return i.tap((function(){e.markForCheck()}))}var W=P;function j(e){return function(t){return new n.Observable((function(r){return t.subscribe({next:function(t){return e.run((function(){return r.next(t)}))},error:function(t){return e.run((function(){return r.error(t)}))},complete:function(){return e.run((function(){return r.complete()}))}})}))}}function S(e){return function(t){return new n.Observable((function(r){return e.runOutsideAngular((function(){return t.subscribe(r)}))}))}}e.TuiDragState=f,e.dragAndDropFrom=l,e.focusVisibleObservable=b,e.itemsQueryListObservable=w,e.mouseDragFinishFrom=s,e.mustBePresent=x,e.pressedObservable=y,e.preventDefault=O,e.stopPropagation=C,e.tuiDragAndDropFrom=g,e.tuiFocusVisibleObservable=h,e.tuiIsAlive=v,e.tuiItemsQueryListObservable=k,e.tuiMouseDragFinishFrom=p,e.tuiMustBePresent=T,e.tuiPressedObservable=D,e.tuiPreventDefault=F,e.tuiReplayedValueChangesFrom=function(e){return new n.Observable((function(r){if(!e.valueChanges)throw new t.TuiValueChangesException;e.valueChanges.pipe(i.startWith(e.value)).subscribe(r)}))},e.tuiStopPropagation=E,e.tuiTypedFromEvent=a,e.tuiWatch=W,e.tuiZoneOptimized=function(e){return n.pipe(S(e),j(e))},e.tuiZonefree=S,e.tuiZonefull=j,e.typedFromEvent=o,e.watch=P,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@taiga-ui/cdk/exceptions"),require("@taiga-ui/cdk/utils/miscellaneous"),require("rxjs"),require("rxjs/operators"),require("@taiga-ui/cdk/utils/focus")):"function"==typeof define&&define.amd?define("@taiga-ui/cdk/observables",["exports","@taiga-ui/cdk/exceptions","@taiga-ui/cdk/utils/miscellaneous","rxjs","rxjs/operators","@taiga-ui/cdk/utils/focus"],t):t(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"].cdk=e["taiga-ui"].cdk||{},e["taiga-ui"].cdk.observables={}),e["taiga-ui"].cdk.exceptions,e["taiga-ui"].cdk.utils.miscellaneous,e.rxjs,e.rxjs.operators,e["taiga-ui"].cdk.utils.focus)}(this,(function(e,t,r,n,i,u){"use strict";function o(e,t,r){return void 0===r&&(r={}),n.fromEvent(e,t,r)}var a=o;function s(e){return n.merge(o(e,"mouseup"),o(e,"dragend"))}var c,p=s;(c=e.TuiDragStage||(e.TuiDragStage={}))[c.Start=0]="Start",c[c.Continues=1]="Continues",c[c.End=2]="End";var f=function(e,t){this.stage=e,this.event=t};function l(e){var u=e.ownerDocument;if(!u)throw new t.TuiOwnerDocumentException;return n.concat(o(e,"mousedown").pipe(i.take(1),i.map((function(e){return new f(0,e)}))),n.merge(o(u,"mousemove").pipe(i.map((function(e){return new f(1,e)}))),s(u).pipe(i.take(1),i.map((function(e){return new f(2,e)})),i.endWith(null))).pipe(i.takeWhile(r.isPresent))).pipe(i.repeat())}var d,m,g=l;function v(e){return void 0===e&&(e=0),n.pipe(i.switchMapTo(n.timer(e).pipe(i.mapTo(!1),i.startWith(!0))),i.distinctUntilChanged())}function b(e){var r=o(e,"blur"),a=e.ownerDocument;if(!a)throw new t.TuiOwnerDocumentException;return m&&d||(d=o(a,"mouseup",{capture:!0}).pipe(v(),i.startWith(!1),i.shareReplay({bufferSize:1,refCount:!0})),m=o(a,"mousedown",{capture:!0}).pipe(v(),i.startWith(!1),i.shareReplay({bufferSize:1,refCount:!0}))),n.merge(n.concat(o(e,"focus").pipe(i.take(1)),r.pipe(i.filter((function(){return!u.isNativeFocused(e)})),i.take(1),i.ignoreElements())).pipe(i.repeat(),i.withLatestFrom(m,d,(function(e,t,r){return t||r})),i.filter((function(e){return!e})))).pipe(i.switchMapTo(r.pipe(i.mapTo(!1),i.take(1),i.startWith(!0))),i.distinctUntilChanged())}var h=b;function w(e){return e.changes.pipe(i.map((function(){return r.getOriginalArrayFromQueryList(e)})),i.startWith(r.getOriginalArrayFromQueryList(e)))}var k=w;function x(){return i.map((function(e){if(!r.isPresent(e))throw new t.TuiValuePresentException;return e}))}var O=x;function T(e,r){var n=(void 0===r?{onlyTrusted:!0}:r).onlyTrusted,u=e.ownerDocument;if(!u)throw new t.TuiOwnerDocumentException;return o(e,"mousedown").pipe(i.filter((function(e){return e.isTrusted||!n})),i.switchMapTo(s(u).pipe(i.mapTo(!1),i.take(1),i.startWith(!0))))}var y=T;function D(){return i.tap((function(e){return e.preventDefault()}))}var F=D;function C(){return i.tap((function(e){e.stopPropagation()}))}var E=C;function P(e){return i.tap((function(){e.markForCheck()}))}var W=P;function j(e){return function(t){return new n.Observable((function(r){return t.subscribe({next:function(t){return e.run((function(){return r.next(t)}))},error:function(t){return e.run((function(){return r.error(t)}))},complete:function(){return e.run((function(){return r.complete()}))}})}))}}function S(e){return function(t){return new n.Observable((function(r){return e.runOutsideAngular((function(){return t.subscribe(r)}))}))}}e.TuiDragState=f,e.dragAndDropFrom=l,e.focusVisibleObservable=b,e.itemsQueryListObservable=w,e.mouseDragFinishFrom=s,e.mustBePresent=x,e.pressedObservable=T,e.preventDefault=D,e.stopPropagation=C,e.tuiDragAndDropFrom=g,e.tuiFocusVisibleObservable=h,e.tuiIsAlive=v,e.tuiIsObserved=function(e){return e.observed||!!e.observers.length},e.tuiItemsQueryListObservable=k,e.tuiMouseDragFinishFrom=p,e.tuiMustBePresent=O,e.tuiPressedObservable=y,e.tuiPreventDefault=F,e.tuiReplayedValueChangesFrom=function(e){return new n.Observable((function(r){if(!e.valueChanges)throw new t.TuiValueChangesException;e.valueChanges.pipe(i.startWith(e.value)).subscribe(r)}))},e.tuiStopPropagation=E,e.tuiTypedFromEvent=a,e.tuiWatch=W,e.tuiZoneOptimized=function(e){return n.pipe(S(e),j(e))},e.tuiZonefree=S,e.tuiZonefull=j,e.typedFromEvent=o,e.watch=P,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=taiga-ui-cdk-observables.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["ng://@taiga-ui/cdk/observables/typed-from-event.ts","ng://@taiga-ui/cdk/observables/mouse-drag-finish-from.ts","ng://@taiga-ui/cdk/observables/drag-and-drop-from.ts","ng://@taiga-ui/cdk/observables/focus-visible-observable.ts","ng://@taiga-ui/cdk/observables/is-alive.ts","ng://@taiga-ui/cdk/observables/items-query-list-observable.ts","ng://@taiga-ui/cdk/observables/must-be-present.ts","ng://@taiga-ui/cdk/observables/pressed-observable.ts","ng://@taiga-ui/cdk/observables/prevent-default.ts","ng://@taiga-ui/cdk/observables/stop-propagation.ts","ng://@taiga-ui/cdk/observables/watch.ts","ng://@taiga-ui/cdk/observables/zone-free.ts","ng://@taiga-ui/cdk/observables/replay-control-value-changes.ts"],"names":["typedFromEvent","target","event","options","fromEvent","tuiTypedFromEvent","mouseDragFinishFrom","merge","TuiDragStage","tuiMouseDragFinishFrom","stage","this","dragAndDropFrom","element","ownerDocument","TuiOwnerDocumentException","concat","pipe","take","map","TuiDragState","endWith","takeWhile","isPresent","repeat","documentMouseUpIsAlive$","documentMouseDownIsAlive$","tuiDragAndDropFrom","tuiIsAlive","lifespan","switchMapTo","timer","mapTo","startWith","distinctUntilChanged","focusVisibleObservable","elementBlur$","capture","shareReplay","bufferSize","refCount","filter","isNativeFocused","ignoreElements","withLatestFrom","_event","elementActual","documentActual","isUserFocus","tuiFocusVisibleObservable","itemsQueryListObservable","queryList","changes","getOriginalArrayFromQueryList","tuiItemsQueryListObservable","mustBePresent","value","TuiValuePresentException","tuiMustBePresent","pressedObservable","_a","onlyTrusted","isTrusted","tuiPressedObservable","preventDefault","tap","tuiPreventDefault","stopPropagation","e","tuiStopPropagation","watch","changeDetectorRef","markForCheck","tuiWatch","tuiZonefull","ngZone","source","Observable","subscriber","subscribe","next","run","error","complete","tuiZonefree","runOutsideAngular","control","valueChanges","TuiValueChangesException"],"mappings":"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","sourcesContent":["import {TuiEventWith, TuiTypedEventTarget} from '@taiga-ui/cdk/types';\nimport {fromEvent, Observable} from 'rxjs';\n\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends keyof WindowEventMap>(\n target: Window,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<WindowEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends keyof DocumentEventMap>(\n target: Document,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<DocumentEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<T extends Element, E extends keyof HTMLElementEventMap>(\n target: T,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<HTMLElementEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<\n E extends Event,\n T extends TuiTypedEventTarget<TuiEventWith<E, T>>,\n>(\n target: T,\n event: string,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<E, T>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends Event>(\n target: TuiTypedEventTarget<E>,\n event: string,\n options?: AddEventListenerOptions,\n): Observable<E>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends Event>(\n target: TuiTypedEventTarget<E>,\n event: string,\n options: AddEventListenerOptions = {},\n): Observable<E> {\n return fromEvent(target, event, options);\n}\n\nexport const tuiTypedFromEvent = typedFromEvent;\n","import {TuiEventWith, TuiTypedEventTarget} from '@taiga-ui/cdk/types';\nimport {merge, Observable} from 'rxjs';\n\nimport {typedFromEvent} from './typed-from-event';\n\n/**\n * @deprecated: use {@link tuiMouseDragFinishFrom} instead\n * Letting go of the mouse after it was pressed\n * @param target\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function mouseDragFinishFrom<\n T extends TuiTypedEventTarget<TuiEventWith<DragEvent, T>>,\n>(target: Exclude<T, null>): Observable<TuiEventWith<MouseEvent, T>> {\n return merge(typedFromEvent(target, `mouseup`), typedFromEvent(target, `dragend`));\n}\n\nexport const tuiMouseDragFinishFrom = mouseDragFinishFrom;\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {isPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {concat, merge, Observable} from 'rxjs';\nimport {endWith, map, repeat, take, takeWhile} from 'rxjs/operators';\n\nimport {mouseDragFinishFrom} from './mouse-drag-finish-from';\nimport {typedFromEvent} from './typed-from-event';\n\nexport const enum TuiDragStage {\n Start,\n Continues,\n End,\n}\n\nexport class TuiDragState {\n constructor(readonly stage: TuiDragStage, readonly event: MouseEvent) {}\n}\n\n/**\n * @deprecated: use {@link tuiDragAndDropFrom} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function dragAndDropFrom(element: Element): Observable<TuiDragState> {\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n return concat(\n typedFromEvent(element, `mousedown`).pipe(\n take(1),\n map(event => new TuiDragState(TuiDragStage.Start, event)),\n ),\n merge(\n typedFromEvent(ownerDocument, `mousemove`).pipe(\n map(event => new TuiDragState(TuiDragStage.Continues, event)),\n ),\n mouseDragFinishFrom(ownerDocument).pipe(\n take(1),\n map(event => new TuiDragState(TuiDragStage.End, event)),\n endWith(null),\n ),\n ).pipe(takeWhile(isPresent)),\n ).pipe(repeat());\n}\n\nexport const tuiDragAndDropFrom = dragAndDropFrom;\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {isNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {concat, merge, Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n ignoreElements,\n mapTo,\n repeat,\n shareReplay,\n startWith,\n switchMapTo,\n take,\n withLatestFrom,\n} from 'rxjs/operators';\n\nimport {tuiIsAlive} from './is-alive';\nimport {typedFromEvent} from './typed-from-event';\n\nlet documentMouseUpIsAlive$: Observable<boolean>;\nlet documentMouseDownIsAlive$: Observable<boolean>;\n\n/**\n * @deprecated: use {@link tuiFocusVisibleObservable} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function focusVisibleObservable(element: Element): Observable<boolean> {\n const elementBlur$ = typedFromEvent(element, `blur`);\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n if (!documentMouseDownIsAlive$ || !documentMouseUpIsAlive$) {\n documentMouseUpIsAlive$ = typedFromEvent(ownerDocument, `mouseup`, {\n capture: true,\n }).pipe(\n tuiIsAlive(),\n startWith(false),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n documentMouseDownIsAlive$ = typedFromEvent(ownerDocument, `mousedown`, {\n capture: true,\n }).pipe(\n tuiIsAlive(),\n startWith(false),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n }\n\n return merge(\n // focus events excluding ones that came right after mouse action\n concat(\n typedFromEvent(element, `focus`).pipe(take(1)),\n // filtering out blur events when element remains focused so that we ignore browser tab focus loss\n elementBlur$.pipe(\n filter(() => !isNativeFocused(element)),\n take(1),\n ignoreElements(),\n ),\n ).pipe(\n repeat(),\n withLatestFrom(\n documentMouseDownIsAlive$,\n documentMouseUpIsAlive$,\n (_event, elementActual, documentActual) =>\n elementActual || documentActual,\n ),\n filter(isUserFocus => !isUserFocus),\n ),\n ).pipe(\n switchMapTo(elementBlur$.pipe(mapTo(false), take(1), startWith(true))),\n distinctUntilChanged(),\n );\n}\n\nexport const tuiFocusVisibleObservable = focusVisibleObservable;\n","import {OperatorFunction, pipe, timer} from 'rxjs';\nimport {distinctUntilChanged, mapTo, startWith, switchMapTo} from 'rxjs/operators';\n\n/**\n * Operator to set lifespan after which current value is considered obsolete\n */\nexport function tuiIsAlive(lifespan: number = 0): OperatorFunction<unknown, boolean> {\n return pipe(\n switchMapTo(timer(lifespan).pipe(mapTo(false), startWith(true))),\n distinctUntilChanged(),\n );\n}\n","import {QueryList} from '@angular/core';\nimport {getOriginalArrayFromQueryList} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {Observable} from 'rxjs';\nimport {map, startWith} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiItemsQueryListObservable} instead\n * Converts changes observable of a QueryList to an Observable of arrays\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function itemsQueryListObservable<T>(\n queryList: QueryList<T>,\n): Observable<readonly T[]> {\n return queryList.changes.pipe(\n map(() => getOriginalArrayFromQueryList(queryList)),\n startWith(getOriginalArrayFromQueryList(queryList)),\n );\n}\n\nexport const tuiItemsQueryListObservable = itemsQueryListObservable;\n","import {TuiValuePresentException} from '@taiga-ui/cdk/exceptions';\nimport {isPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {OperatorFunction} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiMustBePresent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function mustBePresent<T>(): OperatorFunction<T | undefined | null, T> {\n return map(value => {\n if (!isPresent(value)) {\n throw new TuiValuePresentException();\n }\n\n return value;\n });\n}\n\nexport const tuiMustBePresent = mustBePresent;\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {Observable} from 'rxjs';\nimport {filter, mapTo, startWith, switchMapTo, take} from 'rxjs/operators';\n\nimport {mouseDragFinishFrom} from './mouse-drag-finish-from';\nimport {typedFromEvent} from './typed-from-event';\n\nexport interface TuiPressedObservableOptions {\n onlyTrusted: boolean;\n}\n\n/**\n * @deprecated: use {@link tuiPressedObservable} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function pressedObservable(\n element: Element,\n {onlyTrusted}: TuiPressedObservableOptions = {onlyTrusted: true},\n): Observable<boolean> {\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n return typedFromEvent(element, `mousedown`).pipe(\n filter(({isTrusted}) => isTrusted || !onlyTrusted),\n switchMapTo(\n mouseDragFinishFrom(ownerDocument).pipe(\n mapTo(false),\n take(1),\n startWith(true),\n ),\n ),\n );\n}\n\nexport const tuiPressedObservable = pressedObservable;\n","import {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiPreventDefault} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function preventDefault<T extends Event>(): MonoTypeOperatorFunction<T> {\n return tap(event => event.preventDefault());\n}\n\nexport const tuiPreventDefault = preventDefault;\n","import {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiStopPropagation} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function stopPropagation<T extends Event>(): MonoTypeOperatorFunction<T> {\n return tap(e => {\n e.stopPropagation();\n });\n}\n\nexport const tuiStopPropagation = stopPropagation;\n","import {ChangeDetectorRef} from '@angular/core';\nimport {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiWatch} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function watch<T>(\n changeDetectorRef: ChangeDetectorRef,\n): MonoTypeOperatorFunction<T> {\n return tap(() => {\n changeDetectorRef.markForCheck();\n });\n}\n\nexport const tuiWatch = watch;\n","import {NgZone} from '@angular/core';\nimport {MonoTypeOperatorFunction, Observable, pipe} from 'rxjs';\n\nexport function tuiZonefull<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return source =>\n new Observable(subscriber =>\n source.subscribe({\n next: value => ngZone.run(() => subscriber.next(value)),\n error: (error: unknown) => ngZone.run(() => subscriber.error(error)),\n complete: () => ngZone.run(() => subscriber.complete()),\n }),\n );\n}\n\nexport function tuiZonefree<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return source =>\n new Observable(subscriber =>\n ngZone.runOutsideAngular(() => source.subscribe(subscriber)),\n );\n}\n\nexport function tuiZoneOptimized<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return pipe(tuiZonefree(ngZone), tuiZonefull(ngZone));\n}\n","import {AbstractControl, AbstractControlDirective} from '@angular/forms';\nimport {TuiValueChangesException} from '@taiga-ui/cdk/exceptions';\nimport {Observable} from 'rxjs';\nimport {startWith} from 'rxjs/operators';\n\n/**\n * Turns AbstractControl/Abstract-control-directive valueChanges into ReplaySubject(1)\n * TODO: 3.0 name should be shorter.\n */\nexport function tuiReplayedValueChangesFrom<T>(\n control: AbstractControl | AbstractControlDirective,\n): Observable<T> {\n return new Observable(subscriber => {\n if (!control.valueChanges) {\n throw new TuiValueChangesException();\n }\n\n control.valueChanges.pipe(startWith(control.value)).subscribe(subscriber);\n });\n}\n"]}
1
+ {"version":3,"sources":["ng://@taiga-ui/cdk/observables/typed-from-event.ts","ng://@taiga-ui/cdk/observables/mouse-drag-finish-from.ts","ng://@taiga-ui/cdk/observables/drag-and-drop-from.ts","ng://@taiga-ui/cdk/observables/focus-visible-observable.ts","ng://@taiga-ui/cdk/observables/is-alive.ts","ng://@taiga-ui/cdk/observables/items-query-list-observable.ts","ng://@taiga-ui/cdk/observables/must-be-present.ts","ng://@taiga-ui/cdk/observables/pressed-observable.ts","ng://@taiga-ui/cdk/observables/prevent-default.ts","ng://@taiga-ui/cdk/observables/stop-propagation.ts","ng://@taiga-ui/cdk/observables/watch.ts","ng://@taiga-ui/cdk/observables/zone-free.ts","ng://@taiga-ui/cdk/observables/is-observed.ts","ng://@taiga-ui/cdk/observables/replay-control-value-changes.ts"],"names":["typedFromEvent","target","event","options","fromEvent","tuiTypedFromEvent","mouseDragFinishFrom","merge","TuiDragStage","tuiMouseDragFinishFrom","stage","this","dragAndDropFrom","element","ownerDocument","TuiOwnerDocumentException","concat","pipe","take","map","TuiDragState","endWith","takeWhile","isPresent","repeat","documentMouseUpIsAlive$","documentMouseDownIsAlive$","tuiDragAndDropFrom","tuiIsAlive","lifespan","switchMapTo","timer","mapTo","startWith","distinctUntilChanged","focusVisibleObservable","elementBlur$","capture","shareReplay","bufferSize","refCount","filter","isNativeFocused","ignoreElements","withLatestFrom","_event","elementActual","documentActual","isUserFocus","tuiFocusVisibleObservable","itemsQueryListObservable","queryList","changes","getOriginalArrayFromQueryList","tuiItemsQueryListObservable","mustBePresent","value","TuiValuePresentException","tuiMustBePresent","pressedObservable","_a","onlyTrusted","isTrusted","tuiPressedObservable","preventDefault","tap","tuiPreventDefault","stopPropagation","e","tuiStopPropagation","watch","changeDetectorRef","markForCheck","tuiWatch","tuiZonefull","ngZone","source","Observable","subscriber","subscribe","next","run","error","complete","tuiZonefree","runOutsideAngular","observable","observed","observers","length","control","valueChanges","TuiValueChangesException"],"mappings":"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","sourcesContent":["import {TuiEventWith, TuiTypedEventTarget} from '@taiga-ui/cdk/types';\nimport {fromEvent, Observable} from 'rxjs';\n\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends keyof WindowEventMap>(\n target: Window,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<WindowEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends keyof DocumentEventMap>(\n target: Document,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<DocumentEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<T extends Element, E extends keyof HTMLElementEventMap>(\n target: T,\n event: E,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<HTMLElementEventMap[E], typeof target>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<\n E extends Event,\n T extends TuiTypedEventTarget<TuiEventWith<E, T>>,\n>(\n target: T,\n event: string,\n options?: AddEventListenerOptions,\n): Observable<TuiEventWith<E, T>>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends Event>(\n target: TuiTypedEventTarget<E>,\n event: string,\n options?: AddEventListenerOptions,\n): Observable<E>;\n/**\n * @deprecated: use {@link tuiTypedFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function typedFromEvent<E extends Event>(\n target: TuiTypedEventTarget<E>,\n event: string,\n options: AddEventListenerOptions = {},\n): Observable<E> {\n return fromEvent(target, event, options);\n}\n\nexport const tuiTypedFromEvent = typedFromEvent;\n","import {TuiEventWith, TuiTypedEventTarget} from '@taiga-ui/cdk/types';\nimport {merge, Observable} from 'rxjs';\n\nimport {typedFromEvent} from './typed-from-event';\n\n/**\n * @deprecated: use {@link tuiMouseDragFinishFrom} instead\n * Letting go of the mouse after it was pressed\n * @param target\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function mouseDragFinishFrom<\n T extends TuiTypedEventTarget<TuiEventWith<DragEvent, T>>,\n>(target: Exclude<T, null>): Observable<TuiEventWith<MouseEvent, T>> {\n return merge(typedFromEvent(target, `mouseup`), typedFromEvent(target, `dragend`));\n}\n\nexport const tuiMouseDragFinishFrom = mouseDragFinishFrom;\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {isPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {concat, merge, Observable} from 'rxjs';\nimport {endWith, map, repeat, take, takeWhile} from 'rxjs/operators';\n\nimport {mouseDragFinishFrom} from './mouse-drag-finish-from';\nimport {typedFromEvent} from './typed-from-event';\n\nexport const enum TuiDragStage {\n Start,\n Continues,\n End,\n}\n\nexport class TuiDragState {\n constructor(readonly stage: TuiDragStage, readonly event: MouseEvent) {}\n}\n\n/**\n * @deprecated: use {@link tuiDragAndDropFrom} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function dragAndDropFrom(element: Element): Observable<TuiDragState> {\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n return concat(\n typedFromEvent(element, `mousedown`).pipe(\n take(1),\n map(event => new TuiDragState(TuiDragStage.Start, event)),\n ),\n merge(\n typedFromEvent(ownerDocument, `mousemove`).pipe(\n map(event => new TuiDragState(TuiDragStage.Continues, event)),\n ),\n mouseDragFinishFrom(ownerDocument).pipe(\n take(1),\n map(event => new TuiDragState(TuiDragStage.End, event)),\n endWith(null),\n ),\n ).pipe(takeWhile(isPresent)),\n ).pipe(repeat());\n}\n\nexport const tuiDragAndDropFrom = dragAndDropFrom;\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {isNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {concat, merge, Observable} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n ignoreElements,\n mapTo,\n repeat,\n shareReplay,\n startWith,\n switchMapTo,\n take,\n withLatestFrom,\n} from 'rxjs/operators';\n\nimport {tuiIsAlive} from './is-alive';\nimport {typedFromEvent} from './typed-from-event';\n\nlet documentMouseUpIsAlive$: Observable<boolean>;\nlet documentMouseDownIsAlive$: Observable<boolean>;\n\n/**\n * @deprecated: use {@link tuiFocusVisibleObservable} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function focusVisibleObservable(element: Element): Observable<boolean> {\n const elementBlur$ = typedFromEvent(element, `blur`);\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n if (!documentMouseDownIsAlive$ || !documentMouseUpIsAlive$) {\n documentMouseUpIsAlive$ = typedFromEvent(ownerDocument, `mouseup`, {\n capture: true,\n }).pipe(\n tuiIsAlive(),\n startWith(false),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n documentMouseDownIsAlive$ = typedFromEvent(ownerDocument, `mousedown`, {\n capture: true,\n }).pipe(\n tuiIsAlive(),\n startWith(false),\n shareReplay({bufferSize: 1, refCount: true}),\n );\n }\n\n return merge(\n // focus events excluding ones that came right after mouse action\n concat(\n typedFromEvent(element, `focus`).pipe(take(1)),\n // filtering out blur events when element remains focused so that we ignore browser tab focus loss\n elementBlur$.pipe(\n filter(() => !isNativeFocused(element)),\n take(1),\n ignoreElements(),\n ),\n ).pipe(\n repeat(),\n withLatestFrom(\n documentMouseDownIsAlive$,\n documentMouseUpIsAlive$,\n (_event, elementActual, documentActual) =>\n elementActual || documentActual,\n ),\n filter(isUserFocus => !isUserFocus),\n ),\n ).pipe(\n switchMapTo(elementBlur$.pipe(mapTo(false), take(1), startWith(true))),\n distinctUntilChanged(),\n );\n}\n\nexport const tuiFocusVisibleObservable = focusVisibleObservable;\n","import {OperatorFunction, pipe, timer} from 'rxjs';\nimport {distinctUntilChanged, mapTo, startWith, switchMapTo} from 'rxjs/operators';\n\n/**\n * Operator to set lifespan after which current value is considered obsolete\n */\nexport function tuiIsAlive(lifespan: number = 0): OperatorFunction<unknown, boolean> {\n return pipe(\n switchMapTo(timer(lifespan).pipe(mapTo(false), startWith(true))),\n distinctUntilChanged(),\n );\n}\n","import {QueryList} from '@angular/core';\nimport {getOriginalArrayFromQueryList} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {Observable} from 'rxjs';\nimport {map, startWith} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiItemsQueryListObservable} instead\n * Converts changes observable of a QueryList to an Observable of arrays\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function itemsQueryListObservable<T>(\n queryList: QueryList<T>,\n): Observable<readonly T[]> {\n return queryList.changes.pipe(\n map(() => getOriginalArrayFromQueryList(queryList)),\n startWith(getOriginalArrayFromQueryList(queryList)),\n );\n}\n\nexport const tuiItemsQueryListObservable = itemsQueryListObservable;\n","import {TuiValuePresentException} from '@taiga-ui/cdk/exceptions';\nimport {isPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {OperatorFunction} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiMustBePresent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function mustBePresent<T>(): OperatorFunction<T | undefined | null, T> {\n return map(value => {\n if (!isPresent(value)) {\n throw new TuiValuePresentException();\n }\n\n return value;\n });\n}\n\nexport const tuiMustBePresent = mustBePresent;\n","import {TuiOwnerDocumentException} from '@taiga-ui/cdk/exceptions';\nimport {Observable} from 'rxjs';\nimport {filter, mapTo, startWith, switchMapTo, take} from 'rxjs/operators';\n\nimport {mouseDragFinishFrom} from './mouse-drag-finish-from';\nimport {typedFromEvent} from './typed-from-event';\n\nexport interface TuiPressedObservableOptions {\n onlyTrusted: boolean;\n}\n\n/**\n * @deprecated: use {@link tuiPressedObservable} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function pressedObservable(\n element: Element,\n {onlyTrusted}: TuiPressedObservableOptions = {onlyTrusted: true},\n): Observable<boolean> {\n const {ownerDocument} = element;\n\n if (!ownerDocument) {\n throw new TuiOwnerDocumentException();\n }\n\n return typedFromEvent(element, `mousedown`).pipe(\n filter(({isTrusted}) => isTrusted || !onlyTrusted),\n switchMapTo(\n mouseDragFinishFrom(ownerDocument).pipe(\n mapTo(false),\n take(1),\n startWith(true),\n ),\n ),\n );\n}\n\nexport const tuiPressedObservable = pressedObservable;\n","import {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiPreventDefault} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function preventDefault<T extends Event>(): MonoTypeOperatorFunction<T> {\n return tap(event => event.preventDefault());\n}\n\nexport const tuiPreventDefault = preventDefault;\n","import {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiStopPropagation} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function stopPropagation<T extends Event>(): MonoTypeOperatorFunction<T> {\n return tap(e => {\n e.stopPropagation();\n });\n}\n\nexport const tuiStopPropagation = stopPropagation;\n","import {ChangeDetectorRef} from '@angular/core';\nimport {MonoTypeOperatorFunction} from 'rxjs';\nimport {tap} from 'rxjs/operators';\n\n/**\n * @deprecated: use {@link tuiWatch} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function watch<T>(\n changeDetectorRef: ChangeDetectorRef,\n): MonoTypeOperatorFunction<T> {\n return tap(() => {\n changeDetectorRef.markForCheck();\n });\n}\n\nexport const tuiWatch = watch;\n","import {NgZone} from '@angular/core';\nimport {MonoTypeOperatorFunction, Observable, pipe} from 'rxjs';\n\nexport function tuiZonefull<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return source =>\n new Observable(subscriber =>\n source.subscribe({\n next: value => ngZone.run(() => subscriber.next(value)),\n error: (error: unknown) => ngZone.run(() => subscriber.error(error)),\n complete: () => ngZone.run(() => subscriber.complete()),\n }),\n );\n}\n\nexport function tuiZonefree<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return source =>\n new Observable(subscriber =>\n ngZone.runOutsideAngular(() => source.subscribe(subscriber)),\n );\n}\n\nexport function tuiZoneOptimized<T>(ngZone: NgZone): MonoTypeOperatorFunction<T> {\n return pipe(tuiZonefree(ngZone), tuiZonefull(ngZone));\n}\n","import {Subject} from 'rxjs';\n\n/**\n * In RxJS 8 `observers` will be removed, this util is for future safety\n */\nexport function tuiIsObserved<T>(observable: Subject<T>): boolean {\n return (observable as any).observed || !!observable.observers.length;\n}\n","import {AbstractControl, AbstractControlDirective} from '@angular/forms';\nimport {TuiValueChangesException} from '@taiga-ui/cdk/exceptions';\nimport {Observable} from 'rxjs';\nimport {startWith} from 'rxjs/operators';\n\n/**\n * Turns AbstractControl/Abstract-control-directive valueChanges into ReplaySubject(1)\n * TODO: 3.0 name should be shorter.\n */\nexport function tuiReplayedValueChangesFrom<T>(\n control: AbstractControl | AbstractControlDirective,\n): Observable<T> {\n return new Observable(subscriber => {\n if (!control.valueChanges) {\n throw new TuiValueChangesException();\n }\n\n control.valueChanges.pipe(startWith(control.value)).subscribe(subscriber);\n });\n}\n"]}