@taiga-ui/cdk 2.27.1 → 2.31.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 (123) hide show
  1. package/README.md +4 -5
  2. package/abstract/control.d.ts +7 -2
  3. package/abstract/taiga-ui-cdk-abstract.metadata.json +1 -1
  4. package/bundles/taiga-ui-cdk-abstract.umd.js +32 -9
  5. package/bundles/taiga-ui-cdk-abstract.umd.js.map +1 -1
  6. package/bundles/taiga-ui-cdk-abstract.umd.min.js +2 -2
  7. package/bundles/taiga-ui-cdk-abstract.umd.min.js.map +1 -1
  8. package/bundles/taiga-ui-cdk-components-dialog-host.umd.js +1 -1
  9. package/bundles/taiga-ui-cdk-components-dialog-host.umd.min.js +1 -1
  10. package/bundles/taiga-ui-cdk-components-dialog-host.umd.min.js.map +1 -1
  11. package/bundles/taiga-ui-cdk-date-time.umd.js +97 -17
  12. package/bundles/taiga-ui-cdk-date-time.umd.js.map +1 -1
  13. package/bundles/taiga-ui-cdk-date-time.umd.min.js +1 -1
  14. package/bundles/taiga-ui-cdk-date-time.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-cdk-directives-active-zone.umd.js +2 -2
  16. package/bundles/taiga-ui-cdk-directives-active-zone.umd.js.map +1 -1
  17. package/bundles/taiga-ui-cdk-directives-active-zone.umd.min.js.map +1 -1
  18. package/bundles/taiga-ui-cdk-observables.umd.js +1 -0
  19. package/bundles/taiga-ui-cdk-observables.umd.js.map +1 -1
  20. package/bundles/taiga-ui-cdk-observables.umd.min.js.map +1 -1
  21. package/bundles/taiga-ui-cdk-services.umd.js +2 -2
  22. package/bundles/taiga-ui-cdk-services.umd.js.map +1 -1
  23. package/bundles/taiga-ui-cdk-services.umd.min.js +1 -1
  24. package/bundles/taiga-ui-cdk-services.umd.min.js.map +1 -1
  25. package/bundles/taiga-ui-cdk-tokens.umd.js +6 -1
  26. package/bundles/taiga-ui-cdk-tokens.umd.js.map +1 -1
  27. package/bundles/taiga-ui-cdk-tokens.umd.min.js +1 -1
  28. package/bundles/taiga-ui-cdk-tokens.umd.min.js.map +1 -1
  29. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js +4 -1
  30. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js.map +1 -1
  31. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.min.js +1 -1
  32. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.min.js.map +1 -1
  33. package/components/dialog-host/taiga-ui-cdk-components-dialog-host.metadata.json +1 -1
  34. package/date-time/date-format.d.ts +0 -3
  35. package/date-time/date-separator.d.ts +3 -0
  36. package/date-time/day-range.d.ts +13 -1
  37. package/date-time/day.d.ts +16 -3
  38. package/date-time/index.d.ts +1 -0
  39. package/date-time/taiga-ui-cdk-date-time.metadata.json +1 -1
  40. package/esm2015/abstract/control.js +27 -9
  41. package/esm2015/abstract/interactive.js +2 -2
  42. package/esm2015/components/dialog-host/dialog-host.component.js +1 -1
  43. package/esm2015/date-time/date-format.js +1 -4
  44. package/esm2015/date-time/date-separator.js +6 -0
  45. package/esm2015/date-time/day-range.js +28 -5
  46. package/esm2015/date-time/day.js +53 -11
  47. package/esm2015/date-time/index.js +2 -1
  48. package/esm2015/directives/active-zone/active-zone.directive.js +3 -3
  49. package/esm2015/interfaces/control-value-transformer.js +1 -0
  50. package/esm2015/interfaces/index.js +1 -1
  51. package/esm2015/observables/replay-control-value-changes.js +2 -1
  52. package/esm2015/services/destroy.service.js +6 -3
  53. package/esm2015/services/obscured.service.js +1 -1
  54. package/esm2015/services/static-request.service.js +1 -1
  55. package/esm2015/tokens/index.js +2 -1
  56. package/esm2015/tokens/is-mobile.js +2 -2
  57. package/esm2015/tokens/touch-supported.js +6 -0
  58. package/esm2015/utils/miscellaneous/ease-in-out-quad.js +2 -2
  59. package/esm2015/utils/miscellaneous/identity.js +4 -1
  60. package/esm5/abstract/control.js +32 -9
  61. package/esm5/abstract/interactive.js +2 -2
  62. package/esm5/components/dialog-host/dialog-host.component.js +1 -1
  63. package/esm5/date-time/date-format.js +1 -4
  64. package/esm5/date-time/date-separator.js +8 -0
  65. package/esm5/date-time/day-range.js +33 -5
  66. package/esm5/date-time/day.js +57 -11
  67. package/esm5/date-time/index.js +2 -1
  68. package/esm5/directives/active-zone/active-zone.directive.js +3 -3
  69. package/esm5/interfaces/control-value-transformer.js +1 -0
  70. package/esm5/interfaces/index.js +1 -1
  71. package/esm5/observables/replay-control-value-changes.js +2 -1
  72. package/esm5/services/destroy.service.js +4 -4
  73. package/esm5/services/obscured.service.js +1 -1
  74. package/esm5/services/static-request.service.js +1 -1
  75. package/esm5/tokens/index.js +2 -1
  76. package/esm5/tokens/is-mobile.js +2 -2
  77. package/esm5/tokens/touch-supported.js +6 -0
  78. package/esm5/utils/miscellaneous/ease-in-out-quad.js +2 -2
  79. package/esm5/utils/miscellaneous/identity.js +4 -1
  80. package/fesm2015/taiga-ui-cdk-abstract.js +27 -9
  81. package/fesm2015/taiga-ui-cdk-abstract.js.map +1 -1
  82. package/fesm2015/taiga-ui-cdk-components-dialog-host.js +1 -1
  83. package/fesm2015/taiga-ui-cdk-date-time.js +84 -18
  84. package/fesm2015/taiga-ui-cdk-date-time.js.map +1 -1
  85. package/fesm2015/taiga-ui-cdk-directives-active-zone.js +2 -2
  86. package/fesm2015/taiga-ui-cdk-directives-active-zone.js.map +1 -1
  87. package/fesm2015/taiga-ui-cdk-observables.js +1 -0
  88. package/fesm2015/taiga-ui-cdk-observables.js.map +1 -1
  89. package/fesm2015/taiga-ui-cdk-services.js +5 -2
  90. package/fesm2015/taiga-ui-cdk-services.js.map +1 -1
  91. package/fesm2015/taiga-ui-cdk-tokens.js +6 -2
  92. package/fesm2015/taiga-ui-cdk-tokens.js.map +1 -1
  93. package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js +4 -1
  94. package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js.map +1 -1
  95. package/fesm5/taiga-ui-cdk-abstract.js +32 -9
  96. package/fesm5/taiga-ui-cdk-abstract.js.map +1 -1
  97. package/fesm5/taiga-ui-cdk-components-dialog-host.js +1 -1
  98. package/fesm5/taiga-ui-cdk-date-time.js +95 -18
  99. package/fesm5/taiga-ui-cdk-date-time.js.map +1 -1
  100. package/fesm5/taiga-ui-cdk-directives-active-zone.js +2 -2
  101. package/fesm5/taiga-ui-cdk-directives-active-zone.js.map +1 -1
  102. package/fesm5/taiga-ui-cdk-observables.js +1 -0
  103. package/fesm5/taiga-ui-cdk-observables.js.map +1 -1
  104. package/fesm5/taiga-ui-cdk-services.js +3 -3
  105. package/fesm5/taiga-ui-cdk-services.js.map +1 -1
  106. package/fesm5/taiga-ui-cdk-tokens.js +6 -2
  107. package/fesm5/taiga-ui-cdk-tokens.js.map +1 -1
  108. package/fesm5/taiga-ui-cdk-utils-miscellaneous.js +4 -1
  109. package/fesm5/taiga-ui-cdk-utils-miscellaneous.js.map +1 -1
  110. package/interfaces/control-value-transformer.d.ts +4 -0
  111. package/interfaces/index.d.ts +1 -0
  112. package/interfaces/taiga-ui-cdk-interfaces.metadata.json +1 -1
  113. package/observables/replay-control-value-changes.d.ts +1 -0
  114. package/observables/taiga-ui-cdk-observables.metadata.json +1 -1
  115. package/package.json +3 -3
  116. package/services/destroy.service.d.ts +3 -2
  117. package/services/obscured.service.d.ts +1 -1
  118. package/services/static-request.service.d.ts +1 -1
  119. package/services/taiga-ui-cdk-services.metadata.json +1 -1
  120. package/tokens/index.d.ts +1 -0
  121. package/tokens/taiga-ui-cdk-tokens.metadata.json +1 -1
  122. package/tokens/touch-supported.d.ts +2 -0
  123. package/utils/miscellaneous/identity.d.ts +3 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/cdk/abstract/interactive.ts","ng://@taiga-ui/cdk/abstract/control.ts","ng://@taiga-ui/cdk/abstract/controller.ts","ng://@taiga-ui/cdk/abstract/dialog.service.ts","ng://@taiga-ui/cdk/abstract/dialog.directive.ts","ng://@taiga-ui/cdk/abstract/multiple-control.ts","ng://@taiga-ui/cdk/abstract/nullable-control.ts","ng://@taiga-ui/cdk/abstract/theme-switcher.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__assign","assign","t","s","i","n","arguments","length","call","apply","__decorate","decorators","target","key","desc","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__param","paramIndex","decorator","__read","o","m","Symbol","iterator","e","ar","next","done","push","value","error","AbstractTuiInteractive","pseudoHovered","pseudoPressed","pseudoFocused","focusable","nativeId","focusedChange","EventEmitter","pressedChange","hoveredChange","focusVisibleChange","hovered","pressed","focusVisible","autoIdString","AbstractTuiInteractive_1","autoId","Date","now","disabled","computedDisabled","_a","focused","updateHovered","emit","updatePressed","updateFocused","updateFocusVisible","Input","tuiDefaultProp","Output","HostBinding","Directive","AbstractTuiControl","ngControl","changeDetectorRef","_this","_super","onTouched","EMPTY_FUNCTION","onChange","fallbackValue","getFallbackValue","destroy$","Subject","readOnly","pseudoInvalid","tuiAssert","assert","name","valueAccessor","touched","invalid","previousInternalValue","rawValue","safeNgControlData","valid","control","controlName","NgModel","undefined","viewModel","ngOnInit","valueChanges","statusChanges","merge","pipe","takeUntil","subscribe","refreshLocalValue","safeCurrentValue","ngOnDestroy","complete","checkControlUpdate","markForCheck","registerOnChange","registerOnTouched","setDisabledState","writeValue","model","controlMarkAsTouched","updateValue","valueIdenticalComparator","controlSetValue","oldValue","newValue","extractor","defaultFieldValue","NgControl","ChangeDetectorRef","TuiController","change$","ngOnChanges","AbstractTuiDialogService","idService","observer","dialogs$","BehaviorSubject","open","content","options","Observable","dialog","defaultOptions","completeWith","result","$implicit","component","createdAt","id","generate","concat","__spread","filter","item","TuiIdService","type","Inject","args","Injectable","AbstractTuiDialogDirective","templateRef","service","open$","openChange","switchMap","ignoreElements","endWith","EMPTY","TemplateRef","PolymorpheusTemplate","AbstractTuiMultipleControl","clear","AbstractTuiNullableControl","AbstractTuiThemeSwitcher","documentRef","style","styles","head","querySelectorAll","addTheme","removeTheme","appendChild","contains","removeChild","Document","DOCUMENT"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {Directive, EventEmitter, HostBinding, Input, Output} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk/decorators';\n\nconst TUI = 'tui_interactive_';\n\n/**\n * The most basic class for interactive components\n */\n@Directive()\nexport abstract class AbstractTuiInteractive {\n private static autoId = 0;\n\n abstract disabled: boolean;\n\n abstract focused: boolean;\n\n private readonly autoIdString: string;\n\n @Input()\n @tuiDefaultProp()\n pseudoHovered: boolean | null = null;\n\n @Input()\n @tuiDefaultProp()\n pseudoPressed: boolean | null = null;\n\n @Input()\n @tuiDefaultProp()\n pseudoFocused: boolean | null = null;\n\n /**\n * Determines if component is focusable with keyboard.\n */\n @Input()\n @tuiDefaultProp()\n focusable = true;\n\n @Input()\n @tuiDefaultProp()\n nativeId = '';\n\n /**\n * Emits 'true' on focus and 'false' on blur.\n */\n @Output()\n readonly focusedChange = new EventEmitter<boolean>();\n\n @Output()\n readonly pressedChange = new EventEmitter<boolean>();\n\n @Output()\n readonly hoveredChange = new EventEmitter<boolean>();\n\n @Output()\n readonly focusVisibleChange = new EventEmitter<boolean>();\n\n hovered = false;\n\n pressed = false;\n\n focusVisible = false;\n\n constructor() {\n this.autoIdString = `${TUI}${AbstractTuiInteractive.autoId++}${Date.now()}`;\n }\n\n @HostBinding('class._disabled')\n get computedDisabled(): boolean {\n return this.disabled;\n }\n\n @HostBinding('class._hovered')\n get computedHovered(): boolean {\n return !this.computedDisabled && (this.pseudoHovered ?? this.hovered);\n }\n\n @HostBinding('class._pressed')\n get computedPressed(): boolean {\n return !this.computedDisabled && (this.pseudoPressed ?? this.pressed);\n }\n\n get computedFocusable(): boolean {\n return !this.computedDisabled && (this.focusable || this.focused);\n }\n\n @HostBinding('class._focused')\n get computedFocused(): boolean {\n return !this.computedDisabled && (this.pseudoFocused ?? this.focused);\n }\n\n @HostBinding('class._focus-visible')\n get computedFocusVisible(): boolean {\n return !this.computedDisabled && (this.pseudoFocused ?? this.focusVisible);\n }\n\n get id(): string {\n return !!this.nativeId ? this.nativeId : this.autoIdString;\n }\n\n protected updateHovered(hovered: boolean) {\n if (this.hovered === hovered) {\n return;\n }\n\n this.hovered = hovered;\n this.hoveredChange.emit(hovered);\n }\n\n protected updatePressed(pressed: boolean) {\n if (this.pressed === pressed) {\n return;\n }\n\n this.pressed = pressed;\n this.pressedChange.emit(pressed);\n }\n\n protected updateFocused(focused: boolean) {\n this.focusedChange.emit(focused);\n }\n\n protected updateFocusVisible(focusVisible: boolean) {\n if (this.focusVisible === focusVisible) {\n return;\n }\n\n this.focusVisible = focusVisible;\n this.focusVisibleChange.emit(focusVisible);\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport {AbstractControl, ControlValueAccessor, NgControl, NgModel} from '@angular/forms';\nimport {tuiAssert} from '@taiga-ui/cdk/classes';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {tuiDefaultProp} from '@taiga-ui/cdk/decorators';\nimport {merge, Subject} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {AbstractTuiInteractive} from './interactive';\n\n/**\n * Basic ControlValueAccessor class to build form components upon\n */\n@Directive()\nexport abstract class AbstractTuiControl<T>\n extends AbstractTuiInteractive\n implements OnDestroy, OnInit, ControlValueAccessor\n{\n private previousInternalValue?: T | null;\n\n private onTouched = EMPTY_FUNCTION;\n\n private onChange = EMPTY_FUNCTION;\n\n protected readonly fallbackValue = this.getFallbackValue();\n\n protected readonly destroy$ = new Subject<void>();\n\n @Input()\n @HostBinding('class._readonly')\n @tuiDefaultProp()\n readOnly = false;\n\n @Input()\n @tuiDefaultProp()\n pseudoInvalid: boolean | null = null;\n\n protected constructor(\n private readonly ngControl: NgControl | null,\n protected readonly changeDetectorRef: ChangeDetectorRef,\n ) {\n super();\n\n if (this.ngControl === null) {\n tuiAssert.assert(\n false,\n `NgControl not injected in ${this.constructor.name}!\\n`,\n 'Use [(ngModel)] or [formControl] or formControlName for correct work.',\n );\n } else {\n this.ngControl.valueAccessor = this;\n }\n }\n\n protected abstract getFallbackValue(): T;\n\n @HostBinding('class._invalid')\n get computedInvalid(): boolean {\n return (\n !this.readOnly &&\n !this.disabled &&\n (this.pseudoInvalid !== null\n ? this.pseudoInvalid\n : this.touched && this.invalid)\n );\n }\n\n get value(): T {\n return this.previousInternalValue ?? this.fallbackValue;\n }\n\n get safeCurrentValue(): T {\n return this.rawValue ?? this.fallbackValue;\n }\n\n get invalid(): boolean {\n return this.safeNgControlData<boolean>(({invalid}) => invalid, false);\n }\n\n get valid(): boolean {\n return this.safeNgControlData<boolean>(({valid}) => valid, false);\n }\n\n get touched(): boolean {\n return this.safeNgControlData<boolean>(({touched}) => touched, false);\n }\n\n get disabled(): boolean {\n return this.safeNgControlData<boolean>(({disabled}) => disabled, false);\n }\n\n get control(): AbstractControl | null {\n return this.safeNgControlData<AbstractControl | null>(\n ({control}) => control,\n null,\n );\n }\n\n get computedName(): string | number | null {\n return this.controlName;\n }\n\n protected get controlName(): string | number | null {\n return this.ngControl && this.ngControl.name;\n }\n\n private get rawValue(): T | undefined {\n const {ngControl} = this;\n\n if (ngControl === null) {\n return undefined;\n }\n\n return ngControl instanceof NgModel && this.previousInternalValue === undefined\n ? ngControl.viewModel\n : ngControl.value;\n }\n\n ngOnInit() {\n if (\n !this.ngControl ||\n !this.ngControl.valueChanges ||\n !this.ngControl.statusChanges\n ) {\n return;\n }\n\n merge(this.ngControl.valueChanges, this.ngControl.statusChanges)\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.refreshLocalValue(this.safeCurrentValue);\n });\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n checkControlUpdate() {\n this.changeDetectorRef.markForCheck();\n }\n\n registerOnChange(onChange: (value: T) => void) {\n this.onChange = onChange;\n }\n\n registerOnTouched(onTouched: () => void) {\n this.onTouched = onTouched;\n }\n\n setDisabledState() {\n this.checkControlUpdate();\n }\n\n writeValue(value: T | null) {\n this.refreshLocalValue(\n this.ngControl instanceof NgModel && this.previousInternalValue === undefined\n ? this.ngControl.model\n : value,\n );\n }\n\n protected updateFocused(focused: boolean) {\n if (!focused) {\n this.controlMarkAsTouched();\n }\n\n super.updateFocused(focused);\n }\n\n protected updateValue(value: T) {\n if (this.disabled || this.valueIdenticalComparator(this.value, value)) {\n return;\n }\n\n this.previousInternalValue = value;\n this.controlSetValue(value);\n }\n\n protected valueIdenticalComparator(oldValue: T, newValue: T): boolean {\n return oldValue === newValue;\n }\n\n private safeNgControlData<T>(\n extractor: (ngControl: NgControl) => T | null | undefined,\n defaultFieldValue: T,\n ): T {\n return (this.ngControl && extractor(this.ngControl)) ?? defaultFieldValue;\n }\n\n private controlMarkAsTouched() {\n this.onTouched();\n this.checkControlUpdate();\n }\n\n private controlSetValue(value: T) {\n this.onChange(value);\n this.checkControlUpdate();\n }\n\n private refreshLocalValue(value: T | null) {\n this.previousInternalValue = value;\n this.checkControlUpdate();\n }\n}\n","import {OnChanges} from '@angular/core';\nimport {Subject} from 'rxjs';\n\nexport abstract class TuiController implements OnChanges {\n readonly change$ = new Subject<void>();\n\n ngOnChanges() {\n this.change$.next();\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {TuiBaseDialogContext} from '@taiga-ui/cdk/interfaces';\nimport {TuiIdService} from '@taiga-ui/cdk/services';\nimport {TuiDialog} from '@taiga-ui/cdk/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, Observable} from 'rxjs';\n\n@Injectable()\nexport abstract class AbstractTuiDialogService<T extends {}> extends Observable<\n readonly TuiDialog<T, any>[]\n> {\n protected abstract readonly component: PolymorpheusContent<TuiDialog<T, any>>;\n\n protected abstract readonly defaultOptions: T;\n\n protected readonly dialogs$ = new BehaviorSubject<readonly TuiDialog<T, any>[]>([]);\n\n protected constructor(\n @Inject(TuiIdService) private readonly idService: TuiIdService,\n ) {\n super(observer => this.dialogs$.subscribe(observer));\n }\n\n open<G>(\n content: PolymorpheusContent<TuiBaseDialogContext<G> & T>,\n options: Partial<T> = {},\n ): Observable<G> {\n return new Observable(observer => {\n const completeWith = (result: G) => {\n observer.next(result);\n observer.complete();\n };\n const dialog = {\n ...this.defaultOptions,\n ...options,\n content,\n completeWith,\n $implicit: observer,\n component: this.component,\n createdAt: Date.now(),\n id: this.idService.generate(),\n };\n\n this.dialogs$.next([...this.dialogs$.value, dialog]);\n\n return () => {\n this.dialogs$.next(this.dialogs$.value.filter(item => item !== dialog));\n };\n });\n }\n}\n","import {ChangeDetectorRef, Directive, Inject, TemplateRef} from '@angular/core';\nimport {TuiDialog} from '@taiga-ui/cdk/types';\nimport {PolymorpheusTemplate} from '@tinkoff/ng-polymorpheus';\nimport {EMPTY, Subject} from 'rxjs';\nimport {endWith, ignoreElements, switchMap} from 'rxjs/operators';\n\nimport {AbstractTuiDialogService} from './dialog.service';\n\n@Directive()\nexport abstract class AbstractTuiDialogDirective<T> extends PolymorpheusTemplate<\n TuiDialog<T, void>\n> {\n private readonly open$ = new Subject<boolean>();\n\n options: Partial<T> = {};\n\n set open(open: boolean) {\n this.open$.next(open);\n }\n\n openChange = this.open$.pipe(\n switchMap(open =>\n open\n ? this.service\n .open(this, this.options)\n .pipe(ignoreElements(), endWith(false))\n : EMPTY,\n ),\n );\n\n constructor(\n @Inject(TemplateRef)\n templateRef: TemplateRef<TuiDialog<T, void>>,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(AbstractTuiDialogService)\n private readonly service: AbstractTuiDialogService<T>,\n ) {\n super(templateRef, changeDetectorRef);\n }\n}\n","import {Directive} from '@angular/core';\n\nimport {AbstractTuiControl} from './control';\n\n@Directive()\nexport abstract class AbstractTuiMultipleControl<T> extends AbstractTuiControl<\n ReadonlyArray<T>\n> {\n clear() {\n this.updateValue([]);\n }\n\n protected getFallbackValue(): ReadonlyArray<T> {\n return [];\n }\n}\n","import {Directive} from '@angular/core';\n\nimport {AbstractTuiControl} from './control';\n\n@Directive()\nexport abstract class AbstractTuiNullableControl<T> extends AbstractTuiControl<T | null> {\n protected getFallbackValue(): T | null {\n return null;\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {Directive, Inject, OnDestroy} from '@angular/core';\n\n/**\n * Use this abstract class to create your own toggleable themes.\n * A component extending this class must have CSS variables definitions\n * and have ViewEncapsulation set to NONE. A boolean input allows to\n * switch theme on or off.\n * @dynamic\n */\n@Directive()\nexport abstract class AbstractTuiThemeSwitcher implements OnDestroy {\n static style: HTMLStyleElement | null = null;\n\n constructor(@Inject(DOCUMENT) private readonly documentRef: Document) {\n if (this.style !== null) {\n this.addTheme();\n\n return;\n }\n\n const styles = this.documentRef.head.querySelectorAll('style');\n\n (<typeof AbstractTuiThemeSwitcher>this.constructor).style =\n styles[styles.length - 1];\n }\n\n get style(): HTMLStyleElement | null {\n return (<typeof AbstractTuiThemeSwitcher>this.constructor).style;\n }\n\n ngOnDestroy() {\n this.removeTheme();\n }\n\n private addTheme() {\n if (this.style) {\n this.documentRef.head.appendChild(this.style);\n }\n }\n\n private removeTheme() {\n if (this.style && this.documentRef.head.contains(this.style)) {\n this.documentRef.head.removeChild(this.style);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/cdk/abstract/interactive.ts","ng://@taiga-ui/cdk/abstract/control.ts","ng://@taiga-ui/cdk/abstract/controller.ts","ng://@taiga-ui/cdk/abstract/dialog.service.ts","ng://@taiga-ui/cdk/abstract/dialog.directive.ts","ng://@taiga-ui/cdk/abstract/multiple-control.ts","ng://@taiga-ui/cdk/abstract/nullable-control.ts","ng://@taiga-ui/cdk/abstract/theme-switcher.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__assign","assign","t","s","i","n","arguments","length","call","apply","__decorate","decorators","target","key","desc","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__param","paramIndex","decorator","__read","o","m","Symbol","iterator","e","ar","next","done","push","value","error","AbstractTuiInteractive","pseudoHovered","pseudoPressed","pseudoFocused","focusable","nativeId","focusedChange","EventEmitter","pressedChange","hoveredChange","focusVisibleChange","hovered","pressed","focusVisible","autoIdString","AbstractTuiInteractive_1","autoId","Date","now","disabled","computedDisabled","_a","focused","updateHovered","emit","updatePressed","updateFocused","updateFocusVisible","Input","tuiDefaultProp","Output","HostBinding","Directive","AbstractTuiControl","ngControl","changeDetectorRef","valueTransformer","_this","_super","onTouched","EMPTY_FUNCTION","onChange","fallbackValue","getFallbackValue","destroy$","Subject","readOnly","pseudoInvalid","tuiAssert","assert","name","valueAccessor","interactive","touched","invalid","previousInternalValue","rawValue","safeNgControlData","valid","control","controlName","controlValue","NgModel","undefined","viewModel","fromControlValue","ngOnInit","valueChanges","statusChanges","merge","pipe","takeUntil","subscribe","refreshLocalValue","safeCurrentValue","ngOnDestroy","complete","checkControlUpdate","markForCheck","registerOnChange","componentValue","toControlValue","registerOnTouched","setDisabledState","writeValue","model","controlMarkAsTouched","updateValue","valueIdenticalComparator","controlSetValue","oldValue","newValue","extractor","defaultFieldValue","NgControl","ChangeDetectorRef","TuiController","change$","ngOnChanges","AbstractTuiDialogService","idService","observer","dialogs$","BehaviorSubject","open","content","options","Observable","dialog","defaultOptions","completeWith","result","$implicit","component","createdAt","id","generate","concat","__spread","filter","item","TuiIdService","type","Inject","args","Injectable","AbstractTuiDialogDirective","templateRef","service","open$","openChange","switchMap","ignoreElements","endWith","EMPTY","TemplateRef","PolymorpheusTemplate","AbstractTuiMultipleControl","clear","AbstractTuiNullableControl","AbstractTuiThemeSwitcher","documentRef","style","styles","head","querySelectorAll","addTheme","removeTheme","appendChild","contains","removeChild","Document","DOCUMENT"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {Directive, EventEmitter, HostBinding, Input, Output} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk/decorators';\n\nconst TUI = 'tui_interactive_';\n\n/**\n * The most basic class for interactive components\n */\n@Directive()\nexport abstract class AbstractTuiInteractive {\n private static autoId = 0;\n\n abstract disabled: boolean;\n\n abstract focused: boolean;\n\n private readonly autoIdString: string;\n\n @Input()\n @tuiDefaultProp()\n pseudoHovered: boolean | null = null;\n\n @Input()\n @tuiDefaultProp()\n pseudoPressed: boolean | null = null;\n\n @Input()\n @tuiDefaultProp()\n pseudoFocused: boolean | null = null;\n\n /**\n * Determines if component is focusable with keyboard.\n */\n @Input()\n @tuiDefaultProp()\n focusable = true;\n\n @Input()\n @tuiDefaultProp()\n nativeId = '';\n\n /**\n * Emits 'true' on focus and 'false' on blur.\n */\n @Output()\n readonly focusedChange = new EventEmitter<boolean>();\n\n @Output()\n readonly pressedChange = new EventEmitter<boolean>();\n\n @Output()\n readonly hoveredChange = new EventEmitter<boolean>();\n\n @Output()\n readonly focusVisibleChange = new EventEmitter<boolean>();\n\n hovered = false;\n\n pressed = false;\n\n focusVisible = false;\n\n constructor() {\n this.autoIdString = `${TUI}${AbstractTuiInteractive.autoId++}${Date.now()}`;\n }\n\n @HostBinding('class._disabled')\n get computedDisabled(): boolean {\n return this.disabled;\n }\n\n @HostBinding('class._hovered')\n get computedHovered(): boolean {\n return !this.computedDisabled && (this.pseudoHovered ?? this.hovered);\n }\n\n @HostBinding('class._pressed')\n get computedPressed(): boolean {\n return !this.computedDisabled && (this.pseudoPressed ?? this.pressed);\n }\n\n get computedFocusable(): boolean {\n return !this.computedDisabled && (this.focusable || this.focused);\n }\n\n @HostBinding('class._focused')\n get computedFocused(): boolean {\n return !this.computedDisabled && (this.pseudoFocused ?? this.focused);\n }\n\n @HostBinding('class._focus-visible')\n get computedFocusVisible(): boolean {\n return !this.computedDisabled && (this.pseudoFocused ?? this.focusVisible);\n }\n\n get id(): string {\n return this.nativeId ? this.nativeId : this.autoIdString;\n }\n\n protected updateHovered(hovered: boolean) {\n if (this.hovered === hovered) {\n return;\n }\n\n this.hovered = hovered;\n this.hoveredChange.emit(hovered);\n }\n\n protected updatePressed(pressed: boolean) {\n if (this.pressed === pressed) {\n return;\n }\n\n this.pressed = pressed;\n this.pressedChange.emit(pressed);\n }\n\n protected updateFocused(focused: boolean) {\n this.focusedChange.emit(focused);\n }\n\n protected updateFocusVisible(focusVisible: boolean) {\n if (this.focusVisible === focusVisible) {\n return;\n }\n\n this.focusVisible = focusVisible;\n this.focusVisibleChange.emit(focusVisible);\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport {AbstractControl, ControlValueAccessor, NgControl, NgModel} from '@angular/forms';\nimport {tuiAssert} from '@taiga-ui/cdk/classes';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {tuiDefaultProp} from '@taiga-ui/cdk/decorators';\nimport {TuiControlValueTransformer} from '@taiga-ui/cdk/interfaces';\nimport {merge, Subject} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {AbstractTuiInteractive} from './interactive';\n\n/**\n * Basic ControlValueAccessor class to build form components upon\n */\n@Directive()\nexport abstract class AbstractTuiControl<T>\n extends AbstractTuiInteractive\n implements OnDestroy, OnInit, ControlValueAccessor\n{\n private previousInternalValue?: T | null;\n\n private onTouched = EMPTY_FUNCTION;\n\n private onChange = EMPTY_FUNCTION;\n\n protected readonly fallbackValue = this.getFallbackValue();\n\n protected readonly destroy$ = new Subject<void>();\n\n @Input()\n @HostBinding('class._readonly')\n @tuiDefaultProp()\n readOnly = false;\n\n @Input()\n @tuiDefaultProp()\n pseudoInvalid: boolean | null = null;\n\n protected constructor(\n private readonly ngControl: NgControl | null,\n protected readonly changeDetectorRef: ChangeDetectorRef,\n protected readonly valueTransformer?: TuiControlValueTransformer<T> | null,\n ) {\n super();\n\n if (this.ngControl === null) {\n tuiAssert.assert(\n false,\n `NgControl not injected in ${this.constructor.name}!\\n`,\n 'Use [(ngModel)] or [formControl] or formControlName for correct work.',\n );\n } else {\n this.ngControl.valueAccessor = this;\n }\n }\n\n protected abstract getFallbackValue(): T;\n\n @HostBinding('class._invalid')\n get computedInvalid(): boolean {\n return (\n this.interactive &&\n (this.pseudoInvalid !== null\n ? this.pseudoInvalid\n : this.touched && this.invalid)\n );\n }\n\n get value(): T {\n return this.previousInternalValue ?? this.fallbackValue;\n }\n\n get safeCurrentValue(): T {\n return this.rawValue ?? this.fallbackValue;\n }\n\n get invalid(): boolean {\n return this.safeNgControlData<boolean>(({invalid}) => invalid, false);\n }\n\n get valid(): boolean {\n return this.safeNgControlData<boolean>(({valid}) => valid, false);\n }\n\n get touched(): boolean {\n return this.safeNgControlData<boolean>(({touched}) => touched, false);\n }\n\n get disabled(): boolean {\n return this.safeNgControlData<boolean>(({disabled}) => disabled, false);\n }\n\n get interactive(): boolean {\n return !this.readOnly && !this.computedDisabled;\n }\n\n get control(): AbstractControl | null {\n return this.safeNgControlData<AbstractControl | null>(\n ({control}) => control,\n null,\n );\n }\n\n get computedName(): string | number | null {\n return this.controlName;\n }\n\n protected get controlName(): string | number | null {\n return this.ngControl && this.ngControl.name;\n }\n\n private get rawValue(): T | undefined {\n const {ngControl} = this;\n\n if (ngControl === null) {\n return undefined;\n }\n\n const controlValue =\n ngControl instanceof NgModel && this.previousInternalValue === undefined\n ? ngControl.viewModel\n : ngControl.value;\n\n return this.fromControlValue(controlValue);\n }\n\n ngOnInit() {\n if (\n !this.ngControl ||\n !this.ngControl.valueChanges ||\n !this.ngControl.statusChanges\n ) {\n return;\n }\n\n merge(this.ngControl.valueChanges, this.ngControl.statusChanges)\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.refreshLocalValue(this.safeCurrentValue);\n });\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n checkControlUpdate() {\n this.changeDetectorRef.markForCheck();\n }\n\n registerOnChange(onChange: (value: T | unknown) => void) {\n this.onChange = (componentValue: T) => {\n onChange(this.toControlValue(componentValue));\n };\n }\n\n registerOnTouched(onTouched: () => void) {\n this.onTouched = onTouched;\n }\n\n setDisabledState() {\n this.checkControlUpdate();\n }\n\n writeValue(value: T | null) {\n const controlValue =\n this.ngControl instanceof NgModel && this.previousInternalValue === undefined\n ? this.ngControl.model\n : value;\n\n this.refreshLocalValue(this.fromControlValue(controlValue));\n }\n\n protected updateFocused(focused: boolean) {\n if (!focused) {\n this.controlMarkAsTouched();\n }\n\n super.updateFocused(focused);\n }\n\n protected updateValue(value: T) {\n if (this.disabled || this.valueIdenticalComparator(this.value, value)) {\n return;\n }\n\n this.previousInternalValue = value;\n this.controlSetValue(value);\n }\n\n protected valueIdenticalComparator(oldValue: T, newValue: T): boolean {\n return oldValue === newValue;\n }\n\n private safeNgControlData<T>(\n extractor: (ngControl: NgControl) => T | null | undefined,\n defaultFieldValue: T,\n ): T {\n return (this.ngControl && extractor(this.ngControl)) ?? defaultFieldValue;\n }\n\n private controlMarkAsTouched() {\n this.onTouched();\n this.checkControlUpdate();\n }\n\n private controlSetValue(value: T) {\n this.onChange(value);\n this.checkControlUpdate();\n }\n\n private refreshLocalValue(value: T | null) {\n this.previousInternalValue = value;\n this.checkControlUpdate();\n }\n\n private fromControlValue(controlValue: unknown): T {\n return this.valueTransformer\n ? this.valueTransformer.fromControlValue(controlValue)\n : (controlValue as T);\n }\n\n private toControlValue(componentValue: T): unknown {\n return this.valueTransformer\n ? this.valueTransformer.toControlValue(componentValue)\n : componentValue;\n }\n}\n","import {OnChanges} from '@angular/core';\nimport {Subject} from 'rxjs';\n\nexport abstract class TuiController implements OnChanges {\n readonly change$ = new Subject<void>();\n\n ngOnChanges() {\n this.change$.next();\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {TuiBaseDialogContext} from '@taiga-ui/cdk/interfaces';\nimport {TuiIdService} from '@taiga-ui/cdk/services';\nimport {TuiDialog} from '@taiga-ui/cdk/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, Observable} from 'rxjs';\n\n@Injectable()\nexport abstract class AbstractTuiDialogService<T extends {}> extends Observable<\n readonly TuiDialog<T, any>[]\n> {\n protected abstract readonly component: PolymorpheusContent<TuiDialog<T, any>>;\n\n protected abstract readonly defaultOptions: T;\n\n protected readonly dialogs$ = new BehaviorSubject<readonly TuiDialog<T, any>[]>([]);\n\n protected constructor(\n @Inject(TuiIdService) private readonly idService: TuiIdService,\n ) {\n super(observer => this.dialogs$.subscribe(observer));\n }\n\n open<G>(\n content: PolymorpheusContent<TuiBaseDialogContext<G> & T>,\n options: Partial<T> = {},\n ): Observable<G> {\n return new Observable(observer => {\n const completeWith = (result: G) => {\n observer.next(result);\n observer.complete();\n };\n const dialog = {\n ...this.defaultOptions,\n ...options,\n content,\n completeWith,\n $implicit: observer,\n component: this.component,\n createdAt: Date.now(),\n id: this.idService.generate(),\n };\n\n this.dialogs$.next([...this.dialogs$.value, dialog]);\n\n return () => {\n this.dialogs$.next(this.dialogs$.value.filter(item => item !== dialog));\n };\n });\n }\n}\n","import {ChangeDetectorRef, Directive, Inject, TemplateRef} from '@angular/core';\nimport {TuiDialog} from '@taiga-ui/cdk/types';\nimport {PolymorpheusTemplate} from '@tinkoff/ng-polymorpheus';\nimport {EMPTY, Subject} from 'rxjs';\nimport {endWith, ignoreElements, switchMap} from 'rxjs/operators';\n\nimport {AbstractTuiDialogService} from './dialog.service';\n\n@Directive()\nexport abstract class AbstractTuiDialogDirective<T> extends PolymorpheusTemplate<\n TuiDialog<T, void>\n> {\n private readonly open$ = new Subject<boolean>();\n\n options: Partial<T> = {};\n\n set open(open: boolean) {\n this.open$.next(open);\n }\n\n openChange = this.open$.pipe(\n switchMap(open =>\n open\n ? this.service\n .open(this, this.options)\n .pipe(ignoreElements(), endWith(false))\n : EMPTY,\n ),\n );\n\n constructor(\n @Inject(TemplateRef)\n templateRef: TemplateRef<TuiDialog<T, void>>,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(AbstractTuiDialogService)\n private readonly service: AbstractTuiDialogService<T>,\n ) {\n super(templateRef, changeDetectorRef);\n }\n}\n","import {Directive} from '@angular/core';\n\nimport {AbstractTuiControl} from './control';\n\n@Directive()\nexport abstract class AbstractTuiMultipleControl<T> extends AbstractTuiControl<\n ReadonlyArray<T>\n> {\n clear() {\n this.updateValue([]);\n }\n\n protected getFallbackValue(): ReadonlyArray<T> {\n return [];\n }\n}\n","import {Directive} from '@angular/core';\n\nimport {AbstractTuiControl} from './control';\n\n@Directive()\nexport abstract class AbstractTuiNullableControl<T> extends AbstractTuiControl<T | null> {\n protected getFallbackValue(): T | null {\n return null;\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {Directive, Inject, OnDestroy} from '@angular/core';\n\n/**\n * Use this abstract class to create your own toggleable themes.\n * A component extending this class must have CSS variables definitions\n * and have ViewEncapsulation set to NONE. A boolean input allows to\n * switch theme on or off.\n * @dynamic\n */\n@Directive()\nexport abstract class AbstractTuiThemeSwitcher implements OnDestroy {\n static style: HTMLStyleElement | null = null;\n\n constructor(@Inject(DOCUMENT) private readonly documentRef: Document) {\n if (this.style !== null) {\n this.addTheme();\n\n return;\n }\n\n const styles = this.documentRef.head.querySelectorAll('style');\n\n (<typeof AbstractTuiThemeSwitcher>this.constructor).style =\n styles[styles.length - 1];\n }\n\n get style(): HTMLStyleElement | null {\n return (<typeof AbstractTuiThemeSwitcher>this.constructor).style;\n }\n\n ngOnDestroy() {\n this.removeTheme();\n }\n\n private addTheme() {\n if (this.style) {\n this.documentRef.head.appendChild(this.style);\n }\n }\n\n private removeTheme() {\n if (this.style && this.documentRef.head.contains(this.style)) {\n this.documentRef.head.removeChild(this.style);\n }\n }\n}\n"]}
@@ -285,7 +285,7 @@
285
285
  template: "<ng-container *ngIf=\"dialogs$ | async as dialogs\">\n <section\n *ngFor=\"let item of dialogs\"\n polymorpheus-outlet\n tuiFocusTrap\n tuiScrollRef\n tuiOverscroll=\"all\"\n role=\"dialog\"\n aria-modal=\"true\"\n class=\"dialog\"\n [@tuiParentAnimation]\n [attr.aria-labelledby]=\"item.id\"\n [content]=\"item.component\"\n [context]=\"item\"\n ></section>\n <div\n *tuiLet=\"isDialogClosesOnBack$ | async as isDialogClosesOnBack\"\n class=\"overlay\"\n [class.overlay_visible]=\"dialogs.length\"\n (window:popstate)=\"closeLast(dialogs, isDialogClosesOnBack)\"\n (transitionend)=\"onDialog($event, !!dialogs.length, isDialogClosesOnBack)\"\n ></div>\n</ng-container>\n",
286
286
  changeDetection: core.ChangeDetectionStrategy.OnPush,
287
287
  animations: [constants.TUI_PARENT_ANIMATION],
288
- styles: [":host{position:fixed;left:0;bottom:0;width:100%;height:0}.dialog,.overlay{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:flex-start;outline:0;overflow:auto;overflow:overlay}.overlay{height:100vh;pointer-events:none;touch-action:none;opacity:0;letter-spacing:normal;transition:opacity var(--tui-duration),letter-spacing 10ms;background:rgba(0,0,0,.75)}.overlay_visible{opacity:1;letter-spacing:1px}.dialog:last-of-type{z-index:1}"]
288
+ styles: [":host{position:fixed;left:0;bottom:0;width:100%;height:0}.dialog,.overlay{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:flex-start;outline:0;overflow:auto;overflow:overlay}.dialog{bottom:auto;height:100%}.overlay{height:100vh;pointer-events:none;touch-action:none;opacity:0;letter-spacing:normal;transition:opacity var(--tui-duration),letter-spacing 10ms;background:rgba(0,0,0,.75)}.overlay_visible{opacity:1;letter-spacing:1px}.dialog:last-of-type{z-index:1}"]
289
289
  }),
290
290
  __param(0, core.Inject(TUI_DIALOG_CLOSES_ON_BACK)),
291
291
  __param(1, core.Inject(tokens.TUI_DIALOGS)),
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */function f(e,t,i,o){var n,r=arguments.length,a=r<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,i,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(r<3?n(a):r>3?n(t,i,a):n(t,i))||a);return r>3&&a&&Object.defineProperty(t,i,a),a}function y(e,t){return function(i,o){t(i,o,e)}}function m(e,t){var i="function"==typeof Symbol&&e[Symbol.iterator];if(!i)return e;var o,n,r=i.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=r.next()).done;)a.push(o.value)}catch(e){n={error:e}}finally{try{o&&!o.done&&(i=r.return)&&i.call(r)}finally{if(n)throw n.error}}return a}var h=new t.InjectionToken("Is closing dialog on browser backward navigation enabled",{factory:function(){return s.of(!a.isInsideIframe(t.inject(o.WINDOW)))}}),v={label:"ignoreMe"},k=function(e){return(null==e?void 0:e.label)===v.label},b=function(){function e(e,t,i,o){this.isDialogClosesOnBack$=e,this.dialogsByType=t,this.historyRef=i,this.titleService=o,this.dialogs$=s.combineLatest(this.dialogsByType).pipe(c.map((function(e){var t;return(t=new Array).concat.apply(t,function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(m(arguments[t]));return e}(e)).sort((function(e,t){return e.createdAt-t.createdAt}))})))}return e.prototype.closeLast=function(e,t){if(t){var i=m(e.slice(-1),1)[0];i&&(e.length>1&&this.historyRef.pushState(v,this.titleService.getTitle()),i.$implicit.complete())}},e.prototype.onDialog=function(e,t,i){var o=e.propertyName;i&&"letter-spacing"===o&&(t?this.historyRef.pushState(v,this.titleService.getTitle()):k(this.historyRef.state)&&this.historyRef.back())},e.ctorParameters=function(){return[{type:s.Observable,decorators:[{type:t.Inject,args:[h]}]},{type:Array,decorators:[{type:t.Inject,args:[r.TUI_DIALOGS]}]},{type:History,decorators:[{type:t.Inject,args:[o.HISTORY]}]},{type:i.Title,decorators:[{type:t.Inject,args:[i.Title]}]}]},e=f([t.Component({selector:"tui-dialog-host",template:'<ng-container *ngIf="dialogs$ | async as dialogs">\n <section\n *ngFor="let item of dialogs"\n polymorpheus-outlet\n tuiFocusTrap\n tuiScrollRef\n tuiOverscroll="all"\n role="dialog"\n aria-modal="true"\n class="dialog"\n [@tuiParentAnimation]\n [attr.aria-labelledby]="item.id"\n [content]="item.component"\n [context]="item"\n ></section>\n <div\n *tuiLet="isDialogClosesOnBack$ | async as isDialogClosesOnBack"\n class="overlay"\n [class.overlay_visible]="dialogs.length"\n (window:popstate)="closeLast(dialogs, isDialogClosesOnBack)"\n (transitionend)="onDialog($event, !!dialogs.length, isDialogClosesOnBack)"\n ></div>\n</ng-container>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,animations:[n.TUI_PARENT_ANIMATION],styles:[":host{position:fixed;left:0;bottom:0;width:100%;height:0}.dialog,.overlay{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:flex-start;outline:0;overflow:auto;overflow:overlay}.overlay{height:100vh;pointer-events:none;touch-action:none;opacity:0;letter-spacing:normal;transition:opacity var(--tui-duration),letter-spacing 10ms;background:rgba(0,0,0,.75)}.overlay_visible{opacity:1;letter-spacing:1px}.dialog:last-of-type{z-index:1}"]}),y(0,t.Inject(h)),y(1,t.Inject(r.TUI_DIALOGS)),y(2,t.Inject(o.HISTORY)),y(3,t.Inject(i.Title))],e)}(),I=function(){function e(){}return e=f([t.NgModule({imports:[l.CommonModule,p.PolymorpheusModule,d.TuiOverscrollModule,g.TuiFocusTrapModule,u.TuiLetModule],declarations:[b],exports:[b]})],e)}();e.FAKE_HISTORY_STATE=v,e.TUI_DIALOG_CLOSES_ON_BACK=h,e.TuiDialogHostComponent=b,e.TuiDialogHostModule=I,e.isFakeHistoryState=k,Object.defineProperty(e,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */function f(e,t,i,o){var n,r=arguments.length,a=r<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,i,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(r<3?n(a):r>3?n(t,i,a):n(t,i))||a);return r>3&&a&&Object.defineProperty(t,i,a),a}function y(e,t){return function(i,o){t(i,o,e)}}function m(e,t){var i="function"==typeof Symbol&&e[Symbol.iterator];if(!i)return e;var o,n,r=i.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(o=r.next()).done;)a.push(o.value)}catch(e){n={error:e}}finally{try{o&&!o.done&&(i=r.return)&&i.call(r)}finally{if(n)throw n.error}}return a}var h=new t.InjectionToken("Is closing dialog on browser backward navigation enabled",{factory:function(){return s.of(!a.isInsideIframe(t.inject(o.WINDOW)))}}),v={label:"ignoreMe"},k=function(e){return(null==e?void 0:e.label)===v.label},b=function(){function e(e,t,i,o){this.isDialogClosesOnBack$=e,this.dialogsByType=t,this.historyRef=i,this.titleService=o,this.dialogs$=s.combineLatest(this.dialogsByType).pipe(c.map((function(e){var t;return(t=new Array).concat.apply(t,function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(m(arguments[t]));return e}(e)).sort((function(e,t){return e.createdAt-t.createdAt}))})))}return e.prototype.closeLast=function(e,t){if(t){var i=m(e.slice(-1),1)[0];i&&(e.length>1&&this.historyRef.pushState(v,this.titleService.getTitle()),i.$implicit.complete())}},e.prototype.onDialog=function(e,t,i){var o=e.propertyName;i&&"letter-spacing"===o&&(t?this.historyRef.pushState(v,this.titleService.getTitle()):k(this.historyRef.state)&&this.historyRef.back())},e.ctorParameters=function(){return[{type:s.Observable,decorators:[{type:t.Inject,args:[h]}]},{type:Array,decorators:[{type:t.Inject,args:[r.TUI_DIALOGS]}]},{type:History,decorators:[{type:t.Inject,args:[o.HISTORY]}]},{type:i.Title,decorators:[{type:t.Inject,args:[i.Title]}]}]},e=f([t.Component({selector:"tui-dialog-host",template:'<ng-container *ngIf="dialogs$ | async as dialogs">\n <section\n *ngFor="let item of dialogs"\n polymorpheus-outlet\n tuiFocusTrap\n tuiScrollRef\n tuiOverscroll="all"\n role="dialog"\n aria-modal="true"\n class="dialog"\n [@tuiParentAnimation]\n [attr.aria-labelledby]="item.id"\n [content]="item.component"\n [context]="item"\n ></section>\n <div\n *tuiLet="isDialogClosesOnBack$ | async as isDialogClosesOnBack"\n class="overlay"\n [class.overlay_visible]="dialogs.length"\n (window:popstate)="closeLast(dialogs, isDialogClosesOnBack)"\n (transitionend)="onDialog($event, !!dialogs.length, isDialogClosesOnBack)"\n ></div>\n</ng-container>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,animations:[n.TUI_PARENT_ANIMATION],styles:[":host{position:fixed;left:0;bottom:0;width:100%;height:0}.dialog,.overlay{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:flex-start;outline:0;overflow:auto;overflow:overlay}.dialog{bottom:auto;height:100%}.overlay{height:100vh;pointer-events:none;touch-action:none;opacity:0;letter-spacing:normal;transition:opacity var(--tui-duration),letter-spacing 10ms;background:rgba(0,0,0,.75)}.overlay_visible{opacity:1;letter-spacing:1px}.dialog:last-of-type{z-index:1}"]}),y(0,t.Inject(h)),y(1,t.Inject(r.TUI_DIALOGS)),y(2,t.Inject(o.HISTORY)),y(3,t.Inject(i.Title))],e)}(),I=function(){function e(){}return e=f([t.NgModule({imports:[l.CommonModule,p.PolymorpheusModule,d.TuiOverscrollModule,g.TuiFocusTrapModule,u.TuiLetModule],declarations:[b],exports:[b]})],e)}();e.FAKE_HISTORY_STATE=v,e.TUI_DIALOG_CLOSES_ON_BACK=h,e.TuiDialogHostComponent=b,e.TuiDialogHostModule=I,e.isFakeHistoryState=k,Object.defineProperty(e,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=taiga-ui-cdk-components-dialog-host.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/cdk/components/dialog-host/dialog-host.component.ts","ng://@taiga-ui/cdk/components/dialog-host/dialog-host.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","TUI_DIALOG_CLOSES_ON_BACK","InjectionToken","factory","of","isInsideIframe","inject","WINDOW","FAKE_HISTORY_STATE","label","isFakeHistoryState","historyState","TuiDialogHostComponent","isDialogClosesOnBack$","dialogsByType","historyRef","titleService","this","dialogs$","combineLatest","pipe","map","allTypesDialogs","_a","Array","concat","apply","__spread","sort","a","b","createdAt","prototype","closeLast","dialogs","isDialogClosesOnBack","last","slice","pushState","getTitle","$implicit","complete","onDialog","popupOpened","propertyName","state","back","Observable","type","Inject","args","TUI_DIALOGS","History","HISTORY","Title","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","animations","TUI_PARENT_ANIMATION","TuiDialogHostModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiOverscrollModule","TuiFocusTrapModule","TuiLetModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n Inject,\n inject,\n InjectionToken,\n} from '@angular/core';\nimport {Title} from '@angular/platform-browser';\nimport {HISTORY, WINDOW} from '@ng-web-apis/common';\nimport {TUI_PARENT_ANIMATION} from '@taiga-ui/cdk/constants';\nimport {TUI_DIALOGS} from '@taiga-ui/cdk/tokens';\nimport {TuiDialog} from '@taiga-ui/cdk/types';\nimport {isInsideIframe} from '@taiga-ui/cdk/utils';\nimport {combineLatest, Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nexport const TUI_DIALOG_CLOSES_ON_BACK = new InjectionToken<Observable<boolean>>(\n 'Is closing dialog on browser backward navigation enabled',\n {\n /**\n * TODO enable this feature for iframes too\n * when the legacy frame manager (with an iframe inside) will be removed on all internal projects\n */\n factory: () => of(!isInsideIframe(inject(WINDOW))),\n },\n);\n\n// TODO: remove in ivy compilation\nexport const FAKE_HISTORY_STATE = {label: 'ignoreMe'} as const;\n// TODO: remove in ivy compilation\nexport const isFakeHistoryState = (\n historyState: Record<string, unknown>,\n): historyState is typeof FAKE_HISTORY_STATE =>\n historyState?.label === FAKE_HISTORY_STATE.label;\n\n// @dynamic\n@Component({\n selector: 'tui-dialog-host',\n templateUrl: './dialog-host.template.html',\n styleUrls: ['./dialog-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [TUI_PARENT_ANIMATION],\n})\nexport class TuiDialogHostComponent<T extends TuiDialog<unknown, unknown>> {\n readonly dialogs$ = combineLatest(this.dialogsByType).pipe(\n map(allTypesDialogs =>\n new Array<T>()\n .concat(...allTypesDialogs)\n .sort((a, b) => a.createdAt - b.createdAt),\n ),\n );\n\n constructor(\n @Inject(TUI_DIALOG_CLOSES_ON_BACK)\n readonly isDialogClosesOnBack$: Observable<boolean>,\n @Inject(TUI_DIALOGS) private readonly dialogsByType: Observable<readonly T[]>[],\n @Inject(HISTORY) private readonly historyRef: History,\n @Inject(Title) private readonly titleService: Title,\n ) {}\n\n closeLast(dialogs: readonly T[], isDialogClosesOnBack: boolean) {\n if (!isDialogClosesOnBack) {\n return;\n }\n\n const [last] = dialogs.slice(-1);\n\n if (!last) {\n return;\n }\n\n if (dialogs.length > 1) {\n this.historyRef.pushState(FAKE_HISTORY_STATE, this.titleService.getTitle());\n }\n\n last.$implicit.complete();\n }\n\n onDialog(\n {propertyName}: TransitionEvent,\n popupOpened: boolean,\n isDialogClosesOnBack: boolean,\n ) {\n if (!isDialogClosesOnBack || propertyName !== 'letter-spacing') {\n return;\n }\n\n if (popupOpened) {\n this.historyRef.pushState(FAKE_HISTORY_STATE, this.titleService.getTitle());\n } else if (isFakeHistoryState(this.historyRef.state)) {\n this.historyRef.back();\n }\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk/directives';\nimport {TuiFocusTrapModule} from '@taiga-ui/cdk/directives/focus-trap';\nimport {TuiOverscrollModule} from '@taiga-ui/cdk/directives/overscroll';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDialogHostComponent} from './dialog-host.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiOverscrollModule,\n TuiFocusTrapModule,\n TuiLetModule,\n ],\n declarations: [TuiDialogHostComponent],\n exports: [TuiDialogHostComponent],\n})\nexport class TuiDialogHostModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/cdk/components/dialog-host/dialog-host.component.ts","ng://@taiga-ui/cdk/components/dialog-host/dialog-host.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","TUI_DIALOG_CLOSES_ON_BACK","InjectionToken","factory","of","isInsideIframe","inject","WINDOW","FAKE_HISTORY_STATE","label","isFakeHistoryState","historyState","TuiDialogHostComponent","isDialogClosesOnBack$","dialogsByType","historyRef","titleService","this","dialogs$","combineLatest","pipe","map","allTypesDialogs","_a","Array","concat","apply","__spread","sort","a","b","createdAt","prototype","closeLast","dialogs","isDialogClosesOnBack","last","slice","pushState","getTitle","$implicit","complete","onDialog","popupOpened","propertyName","state","back","Observable","type","Inject","args","TUI_DIALOGS","History","HISTORY","Title","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","animations","TUI_PARENT_ANIMATION","TuiDialogHostModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiOverscrollModule","TuiFocusTrapModule","TuiLetModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n Inject,\n inject,\n InjectionToken,\n} from '@angular/core';\nimport {Title} from '@angular/platform-browser';\nimport {HISTORY, WINDOW} from '@ng-web-apis/common';\nimport {TUI_PARENT_ANIMATION} from '@taiga-ui/cdk/constants';\nimport {TUI_DIALOGS} from '@taiga-ui/cdk/tokens';\nimport {TuiDialog} from '@taiga-ui/cdk/types';\nimport {isInsideIframe} from '@taiga-ui/cdk/utils';\nimport {combineLatest, Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nexport const TUI_DIALOG_CLOSES_ON_BACK = new InjectionToken<Observable<boolean>>(\n 'Is closing dialog on browser backward navigation enabled',\n {\n /**\n * TODO enable this feature for iframes too\n * when the legacy frame manager (with an iframe inside) will be removed on all internal projects\n */\n factory: () => of(!isInsideIframe(inject(WINDOW))),\n },\n);\n\n// TODO: remove in ivy compilation\nexport const FAKE_HISTORY_STATE = {label: 'ignoreMe'} as const;\n// TODO: remove in ivy compilation\nexport const isFakeHistoryState = (\n historyState: Record<string, unknown>,\n): historyState is typeof FAKE_HISTORY_STATE =>\n historyState?.label === FAKE_HISTORY_STATE.label;\n\n// @dynamic\n@Component({\n selector: 'tui-dialog-host',\n templateUrl: './dialog-host.template.html',\n styleUrls: ['./dialog-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [TUI_PARENT_ANIMATION],\n})\nexport class TuiDialogHostComponent<T extends TuiDialog<unknown, unknown>> {\n readonly dialogs$ = combineLatest(this.dialogsByType).pipe(\n map(allTypesDialogs =>\n new Array<T>()\n .concat(...allTypesDialogs)\n .sort((a, b) => a.createdAt - b.createdAt),\n ),\n );\n\n constructor(\n @Inject(TUI_DIALOG_CLOSES_ON_BACK)\n readonly isDialogClosesOnBack$: Observable<boolean>,\n @Inject(TUI_DIALOGS) private readonly dialogsByType: Observable<readonly T[]>[],\n @Inject(HISTORY) private readonly historyRef: History,\n @Inject(Title) private readonly titleService: Title,\n ) {}\n\n closeLast(dialogs: readonly T[], isDialogClosesOnBack: boolean) {\n if (!isDialogClosesOnBack) {\n return;\n }\n\n const [last] = dialogs.slice(-1);\n\n if (!last) {\n return;\n }\n\n if (dialogs.length > 1) {\n this.historyRef.pushState(FAKE_HISTORY_STATE, this.titleService.getTitle());\n }\n\n last.$implicit.complete();\n }\n\n onDialog(\n {propertyName}: TransitionEvent,\n popupOpened: boolean,\n isDialogClosesOnBack: boolean,\n ) {\n if (!isDialogClosesOnBack || propertyName !== 'letter-spacing') {\n return;\n }\n\n if (popupOpened) {\n this.historyRef.pushState(FAKE_HISTORY_STATE, this.titleService.getTitle());\n } else if (isFakeHistoryState(this.historyRef.state)) {\n this.historyRef.back();\n }\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk/directives';\nimport {TuiFocusTrapModule} from '@taiga-ui/cdk/directives/focus-trap';\nimport {TuiOverscrollModule} from '@taiga-ui/cdk/directives/overscroll';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiDialogHostComponent} from './dialog-host.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiOverscrollModule,\n TuiFocusTrapModule,\n TuiLetModule,\n ],\n declarations: [TuiDialogHostComponent],\n exports: [TuiDialogHostComponent],\n})\nexport class TuiDialogHostModule {}\n"]}
@@ -272,13 +272,17 @@
272
272
  */
273
273
  var DATE_RANGE_FILLER_LENGTH = 2 * DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length;
274
274
 
275
- /**
276
- * TODO This token supports only DMY now. Add other {@link TuiDateMode} support
277
- */
278
275
  var TUI_DATE_FORMAT = new core.InjectionToken('Active date format for Taiga UI', {
279
276
  factory: function () { return 'DMY'; },
280
277
  });
281
278
 
279
+ var TUI_DATE_SEPARATOR = new core.InjectionToken('Date separator for Taiga UI components', {
280
+ factory: function () { return '.'; },
281
+ });
282
+ var changeDateSeparator = function (dateString, newDateSeparator) {
283
+ return dateString.replace(/[^0-9a-z]/gi, newDateSeparator);
284
+ };
285
+
282
286
  /**
283
287
  * Immutable year object
284
288
  * @nosideeffects
@@ -720,17 +724,42 @@
720
724
  return Math.round((to.toLocalNativeDate().getTime() - from.toLocalNativeDate().getTime()) /
721
725
  (1000 * 60 * 60 * 24));
722
726
  };
727
+ TuiDay.parseRawDateString = function (date, dateMode) {
728
+ if (dateMode === void 0) { dateMode = 'DMY'; }
729
+ classes.tuiAssert.assert(date.length === DATE_FILLER_LENGTH, '[parseRawDateString]: wrong date string length');
730
+ switch (dateMode) {
731
+ case 'YMD':
732
+ return {
733
+ day: parseInt(date.slice(8, 10), 10),
734
+ month: parseInt(date.slice(5, 7), 10) - 1,
735
+ year: parseInt(date.slice(0, 4), 10),
736
+ };
737
+ case 'MDY':
738
+ return {
739
+ day: parseInt(date.slice(3, 5), 10),
740
+ month: parseInt(date.slice(0, 2), 10) - 1,
741
+ year: parseInt(date.slice(6, 10), 10),
742
+ };
743
+ default:
744
+ case 'DMY':
745
+ return {
746
+ day: parseInt(date.slice(0, 2), 10),
747
+ month: parseInt(date.slice(3, 5), 10) - 1,
748
+ year: parseInt(date.slice(6, 10), 10),
749
+ };
750
+ }
751
+ };
723
752
  // TODO: Move month and year related code corresponding classes
724
753
  /**
725
754
  * Parsing a string with date with normalization
726
755
  *
727
- * @param yearMonthDayString date string in format of DD.MM.Yyyy
756
+ * @param rawDate date string
757
+ * @param dateMode date format of the date string (DMY | MDY | YMD)
728
758
  * @return normalized date
729
759
  */
730
- TuiDay.normalizeParse = function (yearMonthDayString) {
731
- var day = parseInt(yearMonthDayString.slice(0, 2), 10);
732
- var month = parseInt(yearMonthDayString.slice(3, 5), 10) - 1;
733
- var year = parseInt(yearMonthDayString.slice(6, 10), 10);
760
+ TuiDay.normalizeParse = function (rawDate, dateMode) {
761
+ if (dateMode === void 0) { dateMode = 'DMY'; }
762
+ var _a = this.parseRawDateString(rawDate, dateMode), day = _a.day, month = _a.month, year = _a.year;
734
763
  return TuiDay.normalizeOf(year, month, day);
735
764
  };
736
765
  /**
@@ -740,9 +769,7 @@
740
769
  * @throws exceptions if any part of the date is invalid
741
770
  */
742
771
  TuiDay.jsonParse = function (yearMonthDayString) {
743
- var day = parseInt(yearMonthDayString.slice(8, 10), 10);
744
- var month = parseInt(yearMonthDayString.slice(5, 7), 10) - 1;
745
- var year = parseInt(yearMonthDayString.slice(0, 4), 10);
772
+ var _a = this.parseRawDateString(yearMonthDayString, 'YMD'), day = _a.day, month = _a.month, year = _a.year;
746
773
  if (!TuiYear.isValidYear(year)) {
747
774
  throw new Error('Invalid year: ' + year);
748
775
  }
@@ -769,6 +796,8 @@
769
796
  });
770
797
  Object.defineProperty(TuiDay.prototype, "formattedDay", {
771
798
  /**
799
+ * @deprecated use {@link getFormattedDay} instead
800
+ * TODO remove in 3.0
772
801
  * Formatted whole date
773
802
  */
774
803
  get: function () {
@@ -894,8 +923,28 @@
894
923
  }
895
924
  return new TuiDay(years, months, days);
896
925
  };
897
- TuiDay.prototype.toString = function () {
898
- return this.formattedDay;
926
+ /**
927
+ * Returns formatted whole date
928
+ */
929
+ TuiDay.prototype.getFormattedDay = function (dateFormat, separator) {
930
+ classes.tuiAssert.assert(separator.length === 1, 'Separator should consist of only 1 symbol');
931
+ var dd = this.formattedDayPart;
932
+ var mm = this.formattedMonthPart;
933
+ var yyyy = this.formattedYear;
934
+ switch (dateFormat) {
935
+ case 'YMD':
936
+ return "" + yyyy + separator + mm + separator + dd;
937
+ case 'MDY':
938
+ return "" + mm + separator + dd + separator + yyyy;
939
+ case 'DMY':
940
+ default:
941
+ return "" + dd + separator + mm + separator + yyyy;
942
+ }
943
+ };
944
+ TuiDay.prototype.toString = function (dateFormat, separator) {
945
+ if (dateFormat === void 0) { dateFormat = 'DMY'; }
946
+ if (separator === void 0) { separator = '.'; }
947
+ return this.getFormattedDay(dateFormat, separator);
899
948
  };
900
949
  TuiDay.prototype.toJSON = function () {
901
950
  return _super.prototype.toJSON.call(this) + "-" + this.formattedDayPart;
@@ -952,6 +1001,13 @@
952
1001
  return TuiMonthRange;
953
1002
  }());
954
1003
 
1004
+ /**
1005
+ * Temporary type guard to satisfy ts-overloading of normalizeParse method
1006
+ * @deprecated TODO rm in v3.0
1007
+ */
1008
+ var isDateMode = function (dateMode) {
1009
+ return ['DMY', 'YMD', 'MDY'].includes(dateMode);
1010
+ };
955
1011
  /**
956
1012
  * An immutable range of two {@link TuiDay} objects
957
1013
  */
@@ -980,14 +1036,17 @@
980
1036
  * Parse and correct a day range in string format
981
1037
  *
982
1038
  * @param rangeString a string of dates in a format dd.mm.yyyy - dd.mm.yyyy
1039
+ * @param dateMode {@link TuiDateMode}
983
1040
  * @return normalized day range object
984
1041
  */
985
- TuiDayRange.normalizeParse = function (rangeString) {
986
- var leftDay = TuiDay.normalizeParse(rangeString.slice(0, DATE_FILLER_LENGTH));
1042
+ TuiDayRange.normalizeParse = function (rangeString, dateMode) {
1043
+ if (dateMode === void 0) { dateMode = 'DMY'; }
1044
+ var dateFormat = isDateMode(dateMode) ? dateMode : 'DMY';
1045
+ var leftDay = TuiDay.normalizeParse(rangeString.slice(0, DATE_FILLER_LENGTH), dateFormat);
987
1046
  if (rangeString.length < DATE_RANGE_FILLER_LENGTH) {
988
1047
  return new TuiDayRange(leftDay, leftDay);
989
1048
  }
990
- return TuiDayRange.sort(leftDay, TuiDay.normalizeParse(rangeString.slice(DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length)));
1049
+ return TuiDayRange.sort(leftDay, TuiDay.normalizeParse(rangeString.slice(DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length), dateFormat));
991
1050
  };
992
1051
  Object.defineProperty(TuiDayRange.prototype, "isSingleDay", {
993
1052
  get: function () {
@@ -999,9 +1058,12 @@
999
1058
  Object.defineProperty(TuiDayRange.prototype, "formattedDayRange", {
1000
1059
  /**
1001
1060
  * Human readable format.
1061
+ * @deprecated use {@link getFormattedDayRange} instead
1002
1062
  */
1003
1063
  get: function () {
1004
- return "" + this.from.formattedDay + RANGE_SEPARATOR_CHAR + this.to.formattedDay;
1064
+ var from = this.from.getFormattedDay('DMY', '.');
1065
+ var to = this.to.getFormattedDay('DMY', '.');
1066
+ return "" + from + RANGE_SEPARATOR_CHAR + to;
1005
1067
  },
1006
1068
  enumerable: true,
1007
1069
  configurable: true
@@ -1025,6 +1087,21 @@
1025
1087
  TuiDayRange.prototype.dayLimit = function (min, max) {
1026
1088
  return new TuiDayRange(this.from.dayLimit(min, max), this.to.dayLimit(min, max));
1027
1089
  };
1090
+ /**
1091
+ * Human readable format.
1092
+ */
1093
+ TuiDayRange.prototype.getFormattedDayRange = function (dateFormat, dateSeparator) {
1094
+ var from = this.from.getFormattedDay(dateFormat, dateSeparator);
1095
+ var to = this.to.getFormattedDay(dateFormat, dateSeparator);
1096
+ return "" + from + RANGE_SEPARATOR_CHAR + to;
1097
+ };
1098
+ TuiDayRange.prototype.toString = function (dateFormat, dateSeparator) {
1099
+ if (dateFormat === void 0) { dateFormat = 'DMY'; }
1100
+ if (dateSeparator === void 0) { dateSeparator = '.'; }
1101
+ var from = this.from.getFormattedDay(dateFormat, dateSeparator);
1102
+ var to = this.to.getFormattedDay(dateFormat, dateSeparator);
1103
+ return "" + from + RANGE_SEPARATOR_CHAR + to;
1104
+ };
1028
1105
  return TuiDayRange;
1029
1106
  }(TuiMonthRange));
1030
1107
 
@@ -1171,6 +1248,7 @@
1171
1248
  exports.TUI_DATE_FILLER = TUI_DATE_FILLER;
1172
1249
  exports.TUI_DATE_FORMAT = TUI_DATE_FORMAT;
1173
1250
  exports.TUI_DATE_RANGE_FILLER = TUI_DATE_RANGE_FILLER;
1251
+ exports.TUI_DATE_SEPARATOR = TUI_DATE_SEPARATOR;
1174
1252
  exports.TUI_FIRST_DAY = TUI_FIRST_DAY;
1175
1253
  exports.TUI_LAST_DAY = TUI_LAST_DAY;
1176
1254
  exports.TuiDay = TuiDay;
@@ -1179,6 +1257,8 @@
1179
1257
  exports.TuiMonthRange = TuiMonthRange;
1180
1258
  exports.TuiTime = TuiTime;
1181
1259
  exports.TuiYear = TuiYear;
1260
+ exports.changeDateSeparator = changeDateSeparator;
1261
+ exports.isDateMode = isDateMode;
1182
1262
 
1183
1263
  Object.defineProperty(exports, '__esModule', { value: true });
1184
1264