@taiga-ui/kit 2.37.0 → 2.39.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 (166) hide show
  1. package/abstract/input-slider.d.ts +9 -5
  2. package/abstract/taiga-ui-kit-abstract.metadata.json +1 -1
  3. package/bundles/taiga-ui-kit-abstract.umd.js +8 -10
  4. package/bundles/taiga-ui-kit-abstract.umd.js.map +1 -1
  5. package/bundles/taiga-ui-kit-abstract.umd.min.js +2 -2
  6. package/bundles/taiga-ui-kit-abstract.umd.min.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-accordion.umd.js +1 -1
  8. package/bundles/taiga-ui-kit-components-accordion.umd.min.js +1 -1
  9. package/bundles/taiga-ui-kit-components-accordion.umd.min.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-checkbox.umd.js +2 -2
  11. package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js +2 -2
  13. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js.map +1 -1
  14. package/bundles/taiga-ui-kit-components-input-files.umd.js +8 -0
  15. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  16. package/bundles/taiga-ui-kit-components-input-files.umd.min.js +1 -1
  17. package/bundles/taiga-ui-kit-components-input-files.umd.min.js.map +1 -1
  18. package/bundles/taiga-ui-kit-components-input-number.umd.js +21 -14
  19. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-input-number.umd.min.js +2 -2
  21. package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-input-range.umd.js +12 -2
  23. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  24. package/bundles/taiga-ui-kit-components-input-range.umd.min.js +1 -1
  25. package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
  26. package/bundles/taiga-ui-kit-components-input-slider.umd.js +153 -117
  27. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  28. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +2 -2
  29. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-input-tag.umd.js +18 -9
  31. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +1 -1
  33. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-radio.umd.js +1 -1
  35. package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-radio.umd.min.js +1 -1
  37. package/bundles/taiga-ui-kit-components-radio.umd.min.js.map +1 -1
  38. package/bundles/taiga-ui-kit-components-select.umd.js +1 -1
  39. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  40. package/bundles/taiga-ui-kit-components-select.umd.min.js +1 -1
  41. package/bundles/taiga-ui-kit-components-select.umd.min.js.map +1 -1
  42. package/bundles/taiga-ui-kit-components-slider.umd.js +23 -2
  43. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  44. package/bundles/taiga-ui-kit-components-slider.umd.min.js +2 -2
  45. package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
  46. package/bundles/taiga-ui-kit-components-text-area.umd.js +2 -2
  47. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  48. package/bundles/taiga-ui-kit-components-text-area.umd.min.js +1 -1
  49. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-toggle.umd.js +2 -2
  51. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  52. package/bundles/taiga-ui-kit-components-toggle.umd.min.js +1 -1
  53. package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
  54. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +25 -1
  55. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
  56. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.min.js +2 -2
  57. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.min.js.map +1 -1
  58. package/components/accordion/taiga-ui-kit-components-accordion.metadata.json +1 -1
  59. package/components/checkbox/taiga-ui-kit-components-checkbox.metadata.json +1 -1
  60. package/components/input-files/input-files.component.d.ts +1 -0
  61. package/components/input-files/taiga-ui-kit-components-input-files.metadata.json +1 -1
  62. package/components/input-number/input-number.component.d.ts +4 -2
  63. package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
  64. package/components/input-range/input-range.component.d.ts +2 -1
  65. package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
  66. package/components/input-slider/input-slider.component.d.ts +39 -22
  67. package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
  68. package/components/input-tag/input-tag.component.d.ts +9 -2
  69. package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
  70. package/components/radio/taiga-ui-kit-components-radio.metadata.json +1 -1
  71. package/components/select/taiga-ui-kit-components-select.metadata.json +1 -1
  72. package/components/slider/slider-key-steps.directive.d.ts +3 -1
  73. package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
  74. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  75. package/components/toggle/taiga-ui-kit-components-toggle.metadata.json +1 -1
  76. package/esm2015/abstract/input-slider.js +9 -7
  77. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +1 -1
  78. package/esm2015/components/checkbox/checkbox.component.js +3 -3
  79. package/esm2015/components/input-files/input-files.component.js +5 -1
  80. package/esm2015/components/input-number/input-number.component.js +21 -15
  81. package/esm2015/components/input-number/input-number.module.js +5 -1
  82. package/esm2015/components/input-range/input-range.component.js +10 -4
  83. package/esm2015/components/input-slider/input-slider.component.js +155 -108
  84. package/esm2015/components/input-slider/input-slider.module.js +5 -2
  85. package/esm2015/components/input-tag/input-tag.component.js +21 -12
  86. package/esm2015/components/radio/radio.component.js +2 -2
  87. package/esm2015/components/select/select.component.js +2 -2
  88. package/esm2015/components/slider/slider-key-steps.directive.js +14 -1
  89. package/esm2015/components/slider/slider.component.js +3 -3
  90. package/esm2015/components/text-area/text-area.component.js +3 -3
  91. package/esm2015/components/toggle/toggle.component.js +3 -3
  92. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +26 -2
  93. package/esm5/abstract/input-slider.js +9 -11
  94. package/esm5/components/accordion/accordion-item/accordion-item.component.js +1 -1
  95. package/esm5/components/checkbox/checkbox.component.js +3 -3
  96. package/esm5/components/input-files/input-files.component.js +9 -1
  97. package/esm5/components/input-number/input-number.component.js +18 -12
  98. package/esm5/components/input-number/input-number.module.js +5 -1
  99. package/esm5/components/input-range/input-range.component.js +14 -4
  100. package/esm5/components/input-slider/input-slider.component.js +153 -117
  101. package/esm5/components/input-slider/input-slider.module.js +5 -2
  102. package/esm5/components/input-tag/input-tag.component.js +21 -12
  103. package/esm5/components/radio/radio.component.js +2 -2
  104. package/esm5/components/select/select.component.js +2 -2
  105. package/esm5/components/slider/slider-key-steps.directive.js +22 -1
  106. package/esm5/components/slider/slider.component.js +3 -3
  107. package/esm5/components/text-area/text-area.component.js +3 -3
  108. package/esm5/components/toggle/toggle.component.js +3 -3
  109. package/esm5/internal/primitive-calendar-range/primitive-calendar-range.component.js +26 -2
  110. package/fesm2015/taiga-ui-kit-abstract.js +8 -6
  111. package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
  112. package/fesm2015/taiga-ui-kit-components-accordion.js +1 -1
  113. package/fesm2015/taiga-ui-kit-components-checkbox.js +2 -2
  114. package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
  115. package/fesm2015/taiga-ui-kit-components-input-files.js +4 -0
  116. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  117. package/fesm2015/taiga-ui-kit-components-input-number.js +24 -15
  118. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  119. package/fesm2015/taiga-ui-kit-components-input-range.js +8 -2
  120. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  121. package/fesm2015/taiga-ui-kit-components-input-slider.js +156 -107
  122. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  123. package/fesm2015/taiga-ui-kit-components-input-tag.js +21 -12
  124. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  125. package/fesm2015/taiga-ui-kit-components-radio.js +1 -1
  126. package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
  127. package/fesm2015/taiga-ui-kit-components-select.js +1 -1
  128. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  129. package/fesm2015/taiga-ui-kit-components-slider.js +15 -2
  130. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  131. package/fesm2015/taiga-ui-kit-components-text-area.js +2 -2
  132. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  133. package/fesm2015/taiga-ui-kit-components-toggle.js +2 -2
  134. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  135. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +25 -1
  136. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  137. package/fesm5/taiga-ui-kit-abstract.js +8 -10
  138. package/fesm5/taiga-ui-kit-abstract.js.map +1 -1
  139. package/fesm5/taiga-ui-kit-components-accordion.js +1 -1
  140. package/fesm5/taiga-ui-kit-components-checkbox.js +2 -2
  141. package/fesm5/taiga-ui-kit-components-checkbox.js.map +1 -1
  142. package/fesm5/taiga-ui-kit-components-input-files.js +8 -0
  143. package/fesm5/taiga-ui-kit-components-input-files.js.map +1 -1
  144. package/fesm5/taiga-ui-kit-components-input-number.js +21 -12
  145. package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
  146. package/fesm5/taiga-ui-kit-components-input-range.js +12 -2
  147. package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
  148. package/fesm5/taiga-ui-kit-components-input-slider.js +154 -116
  149. package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
  150. package/fesm5/taiga-ui-kit-components-input-tag.js +21 -12
  151. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  152. package/fesm5/taiga-ui-kit-components-radio.js +1 -1
  153. package/fesm5/taiga-ui-kit-components-radio.js.map +1 -1
  154. package/fesm5/taiga-ui-kit-components-select.js +1 -1
  155. package/fesm5/taiga-ui-kit-components-select.js.map +1 -1
  156. package/fesm5/taiga-ui-kit-components-slider.js +23 -2
  157. package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
  158. package/fesm5/taiga-ui-kit-components-text-area.js +2 -2
  159. package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
  160. package/fesm5/taiga-ui-kit-components-toggle.js +2 -2
  161. package/fesm5/taiga-ui-kit-components-toggle.js.map +1 -1
  162. package/fesm5/taiga-ui-kit-internal-primitive-calendar-range.js +25 -1
  163. package/fesm5/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  164. package/internal/primitive-calendar-range/primitive-calendar-range.component.d.ts +3 -0
  165. package/internal/primitive-calendar-range/taiga-ui-kit-internal-primitive-calendar-range.metadata.json +1 -1
  166. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-files/input-files.component.ts","ng://@taiga-ui/kit/components/input-files/input-files.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","__spread","concat","TuiInputFilesComponent","control","changeDetectorRef","isMobile","inputFileTexts$","units$","_this","_super","this","dataTransfer","link","label","accept","multiple","size","maxFileSize","reject","EventEmitter","__","constructor","prototype","create","__extends","_a","input","nativeElement","isNativeFocused","nativeFocusableElement","computeLink$","fileDragged","computeLabel$","types","includes","getValueArray","onHovered","hovered","updateHovered","onFocused","focused","updateFocused","onPressed","pressed","updatePressed","onFilesSelected","texts","units","processSelectedFiles","files","onDropped","event","onDragOver","removeFile","removedFile","updateValue","arrayValue","filter","file","of","pipe","map","defaultLinkMultiple","defaultLinkSingle","dropMultiple","drop","defaultLabelMultiple","defaultLabelSingle","isArray","EMPTY_ARRAY","newFiles","from","tooBigFiles","wrongFormatFiles","isFormatAcceptable","acceptedFiles","rejectFiles","name","type","content","maxSizeRejectionReason","formatSize","formatRejectionReason","extension","split","pop","toLowerCase","getAcceptArray","some","format","rejectedFiles","emit","NgControl","Optional","Self","Inject","args","ChangeDetectorRef","TUI_IS_MOBILE","Observable","TUI_INPUT_FILE_TEXTS","TUI_DIGITAL_INFORMATION_UNITS","ViewChild","Input","tuiDefaultProp","Output","tuiPure","TuiInputFilesComponent_1","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","providers","MODE_PROVIDER","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","AbstractTuiNullableControl","TuiInputFilesModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiLetModule","TuiFocusedModule","TuiFocusVisibleModule","TuiPressedModule","TuiHoveredModule","TuiFocusableModule","TuiDroppableModule","TuiWrapperModule","TuiSvgModule","TuiLinkModule","TuiLoaderModule","TuiButtonModule","TuiGroupModule","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 ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n EMPTY_ARRAY,\n isNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TUI_IS_MOBILE,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TuiSizeL} from '@taiga-ui/core';\nimport {TuiFileLike} from '@taiga-ui/kit/interfaces';\nimport {TUI_DIGITAL_INFORMATION_UNITS, TUI_INPUT_FILE_TEXTS} from '@taiga-ui/kit/tokens';\nimport {formatSize, getAcceptArray} from '@taiga-ui/kit/utils/files';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nconst DEFAULT_MAX_SIZE = 30 * 1000 * 1000; // 30 MB\n\n// @dynamic\n@Component({\n selector: 'tui-input-files',\n templateUrl: './input-files.template.html',\n styleUrls: ['./input-files.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n MODE_PROVIDER,\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputFilesComponent),\n },\n ],\n})\nexport class TuiInputFilesComponent\n extends AbstractTuiNullableControl<TuiFileLike | ReadonlyArray<TuiFileLike>>\n implements TuiFocusableElementAccessor\n{\n @ViewChild('input')\n private readonly input?: ElementRef<HTMLInputElement>;\n\n private dataTransfer: DataTransfer | null = null;\n\n @Input()\n @tuiDefaultProp()\n link: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n label: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n accept = '';\n\n @Input()\n @tuiDefaultProp()\n multiple = false;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n maxFileSize = DEFAULT_MAX_SIZE;\n\n @Output()\n reject = new EventEmitter<ReadonlyArray<TuiFileLike> | TuiFileLike>();\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef)\n changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_IS_MOBILE)\n readonly isMobile: boolean,\n @Inject(TUI_INPUT_FILE_TEXTS)\n readonly inputFileTexts$: Observable<\n Record<\n | 'defaultLabelSingle'\n | 'defaultLabelMultiple'\n | 'defaultLinkSingle'\n | 'defaultLinkMultiple'\n | 'maxSizeRejectionReason'\n | 'formatRejectionReason'\n | 'drop'\n | 'dropMultiple',\n string\n >\n >,\n @Inject(TUI_DIGITAL_INFORMATION_UNITS)\n readonly units$: Observable<[string, string, string]>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.input?.nativeElement || null;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get computedLink$(): Observable<PolymorpheusContent> {\n return this.computeLink$(this.fileDragged, this.multiple, this.link);\n }\n\n get computedLabel$(): Observable<PolymorpheusContent> {\n return this.computeLabel$(\n this.isMobile,\n this.fileDragged,\n this.multiple,\n this.label,\n );\n }\n\n get fileDragged(): boolean {\n return !!this.dataTransfer?.types.includes('Files');\n }\n\n get arrayValue(): ReadonlyArray<TuiFileLike> {\n return this.getValueArray(this.value);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onFilesSelected(\n input: HTMLInputElement,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(input.files, texts, units);\n input.value = '';\n }\n\n onDropped(\n event: DataTransfer,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(event.files, texts, units);\n }\n\n onDragOver(dataTransfer: DataTransfer | null) {\n this.dataTransfer = dataTransfer;\n }\n\n removeFile(removedFile: TuiFileLike) {\n this.updateValue(\n this.multiple ? this.arrayValue.filter(file => file !== removedFile) : null,\n );\n }\n\n @tuiPure\n private computeLink$(\n fileDragged: boolean,\n multiple: boolean,\n link: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n return fileDragged\n ? of('')\n : this.inputFileTexts$.pipe(\n map(texts =>\n multiple && link === ''\n ? texts.defaultLinkMultiple\n : link || texts.defaultLinkSingle,\n ),\n );\n }\n\n @tuiPure\n private computeLabel$(\n isMobile: boolean,\n fileDragged: boolean,\n multiple: boolean,\n label: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n if (isMobile) {\n return of('');\n }\n\n if (fileDragged) {\n return this.inputFileTexts$.pipe(\n map(texts => (multiple ? texts.dropMultiple : texts.drop)),\n );\n }\n\n return this.inputFileTexts$.pipe(\n map(texts =>\n multiple && label === ''\n ? texts.defaultLabelMultiple\n : label || texts.defaultLabelSingle,\n ),\n );\n }\n\n @tuiPure\n private getValueArray(\n value: TuiFileLike | ReadonlyArray<TuiFileLike> | null,\n ): ReadonlyArray<TuiFileLike> {\n if (!value) {\n return EMPTY_ARRAY;\n }\n\n return Array.isArray(value) ? value : [value];\n }\n\n private processSelectedFiles(\n files: FileList | null,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n // IE11 after selecting a file through the open dialog generates a second event passing an empty FileList.\n if (!files?.length) {\n return;\n }\n\n const newFiles = this.multiple ? Array.from(files) : [files[0]];\n const tooBigFiles = newFiles.filter(file => file.size > this.maxFileSize);\n const wrongFormatFiles = newFiles.filter(\n file => !this.isFormatAcceptable(file) && !tooBigFiles.includes(file),\n );\n const acceptedFiles = newFiles.filter(\n file => !tooBigFiles.includes(file) && !wrongFormatFiles.includes(file),\n );\n\n if (tooBigFiles.length || wrongFormatFiles.length) {\n this.rejectFiles([\n ...tooBigFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content:\n texts.maxSizeRejectionReason +\n formatSize(units, this.maxFileSize),\n })),\n ...wrongFormatFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content: texts.formatRejectionReason,\n })),\n ]);\n }\n\n this.updateValue(\n this.multiple\n ? [...this.arrayValue, ...acceptedFiles]\n : acceptedFiles[0] || null,\n );\n }\n\n private isFormatAcceptable(file: File): boolean {\n if (!this.accept) {\n return true;\n }\n\n const extension = `.${(file.name.split('.').pop() || '').toLowerCase()}`;\n\n return getAcceptArray(this.accept).some(\n format =>\n format === extension ||\n format === file.type ||\n (format.split('/')[1] === '*' &&\n file.type.split('/')[0] === format.split('/')[0]),\n );\n }\n\n private rejectFiles(rejectedFiles: ReadonlyArray<TuiFileLike>) {\n this.reject.emit(this.multiple ? rejectedFiles : rejectedFiles[0]);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiDroppableModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiButtonModule,\n TuiGroupModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiSvgModule,\n TuiWrapperModule,\n} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputFilesComponent} from './input-files.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiPressedModule,\n TuiHoveredModule,\n TuiFocusableModule,\n TuiDroppableModule,\n TuiWrapperModule,\n TuiSvgModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiButtonModule,\n TuiGroupModule,\n ],\n declarations: [TuiInputFilesComponent],\n exports: [TuiInputFilesComponent],\n})\nexport class TuiInputFilesModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-files/input-files.component.ts","ng://@taiga-ui/kit/components/input-files/input-files.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","__spread","concat","TuiInputFilesComponent","control","changeDetectorRef","isMobile","inputFileTexts$","units$","_this","_super","this","dataTransfer","link","label","accept","multiple","size","maxFileSize","reject","EventEmitter","__","constructor","prototype","create","__extends","_a","input","nativeElement","isNativeFocused","nativeFocusableElement","pseudoHovered","fileDragged","computeLink$","computeLabel$","types","includes","getValueArray","onHovered","hovered","updateHovered","onFocused","focused","updateFocused","onPressed","pressed","updatePressed","onFilesSelected","texts","units","processSelectedFiles","files","onDropped","event","onDragOver","removeFile","removedFile","updateValue","arrayValue","filter","file","of","pipe","map","defaultLinkMultiple","defaultLinkSingle","dropMultiple","drop","defaultLabelMultiple","defaultLabelSingle","isArray","EMPTY_ARRAY","newFiles","from","tooBigFiles","wrongFormatFiles","isFormatAcceptable","acceptedFiles","rejectFiles","name","type","content","maxSizeRejectionReason","formatSize","formatRejectionReason","extension","split","pop","toLowerCase","getAcceptArray","some","format","rejectedFiles","emit","NgControl","Optional","Self","Inject","args","ChangeDetectorRef","TUI_IS_MOBILE","Observable","TUI_INPUT_FILE_TEXTS","TUI_DIGITAL_INFORMATION_UNITS","ViewChild","Input","tuiDefaultProp","Output","tuiPure","TuiInputFilesComponent_1","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","providers","MODE_PROVIDER","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","AbstractTuiNullableControl","TuiInputFilesModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiLetModule","TuiFocusedModule","TuiFocusVisibleModule","TuiPressedModule","TuiHoveredModule","TuiFocusableModule","TuiDroppableModule","TuiWrapperModule","TuiSvgModule","TuiLinkModule","TuiLoaderModule","TuiButtonModule","TuiGroupModule","declarations","exports"],"mappings":";;;;;;;;;;;;;;oFAgBA,IAAIA,EAAgB,SAASC,EAAGC,GAI5B,OAHAF,EAAgBG,OAAOC,gBAClB,CAAEC,UAAW,cAAgBC,OAAS,SAAUL,EAAGC,GAAKD,EAAEI,UAAYH,IACvE,SAAUD,EAAGC,GAAK,IAAK,IAAIK,KAAKL,EAAOA,EAAEM,eAAeD,KAAIN,EAAEM,GAAKL,EAAEK,MACpDN,EAAGC,IAgCrB,SAASO,EAAWC,EAAYC,EAAQC,EAAKC,GAChD,IAA2HZ,EAAvHa,EAAIC,UAAUC,OAAQC,EAAIH,EAAI,EAAIH,EAAkB,OAATE,EAAgBA,EAAOV,OAAOe,yBAAyBP,EAAQC,GAAOC,EACrH,GAAuB,iBAAZM,SAAoD,mBAArBA,QAAQC,SAAyBH,EAAIE,QAAQC,SAASV,EAAYC,EAAQC,EAAKC,QACpH,IAAK,IAAIQ,EAAIX,EAAWM,OAAS,EAAGK,GAAK,EAAGA,KAASpB,EAAIS,EAAWW,MAAIJ,GAAKH,EAAI,EAAIb,EAAEgB,GAAKH,EAAI,EAAIb,EAAEU,EAAQC,EAAKK,GAAKhB,EAAEU,EAAQC,KAASK,GAChJ,OAAOH,EAAI,GAAKG,GAAKd,OAAOmB,eAAeX,EAAQC,EAAKK,GAAIA,EAGzD,SAASM,EAAQC,EAAYC,GAChC,OAAO,SAAUd,EAAQC,GAAOa,EAAUd,EAAQC,EAAKY,IAkEpD,SAASE,EAAOC,EAAGC,GACtB,IAAIC,EAAsB,mBAAXC,QAAyBH,EAAEG,OAAOC,UACjD,IAAKF,EAAG,OAAOF,EACf,IAAmBV,EAAYe,EAA3BX,EAAIQ,EAAEI,KAAKN,GAAOO,EAAK,GAC3B,IACI,WAAc,IAANN,GAAgBA,KAAM,MAAQX,EAAII,EAAEc,QAAQC,MAAMF,EAAGG,KAAKpB,EAAEqB,OAExE,MAAOC,GAASP,EAAI,CAAEO,MAAOA,GACjC,QACQ,IACQtB,IAAMA,EAAEmB,OAASP,EAAIR,EAAU,SAAIQ,EAAEI,KAAKZ,GAE1D,QAAkB,GAAIW,EAAG,MAAMA,EAAEO,OAE7B,OAAOL,EAGJ,SAASM,IACZ,IAAK,IAAIN,EAAK,GAAIb,EAAI,EAAGA,EAAIN,UAAUC,OAAQK,IAC3Ca,EAAKA,EAAGO,OAAOf,EAAOX,UAAUM,KACpC,OAAOa,EC/GX,kBAqDI,SAAAQ,EAIIC,EAEAC,EAESC,EAEAC,EAcAC,GAxBb,IAAAC,EA0BIC,EAAAhB,KAAAiB,KAAMP,EAASC,IAAkBM,YAlBxBF,EAAAH,SAAAA,EAEAG,EAAAF,gBAAAA,EAcAE,EAAAD,OAAAA,EArDLC,EAAAG,aAAoC,KAI5CH,EAAAI,KAA4B,GAI5BJ,EAAAK,MAA6B,GAI7BL,EAAAM,OAAS,GAITN,EAAAO,UAAW,EAIXP,EAAAQ,KAAiB,IAIjBR,EAAAS,YAhDqB,IAmDrBT,EAAAU,OAAS,IAAIC,EAAAA,qBA6NjB,OD5RO,SAAmB1D,EAAGC,GAEzB,SAAS0D,IAAOV,KAAKW,YAAc5D,EADnCD,EAAcC,EAAGC,GAEjBD,EAAE6D,UAAkB,OAAN5D,EAAaC,OAAO4D,OAAO7D,IAAM0D,EAAGE,UAAY5D,EAAE4D,UAAW,IAAIF,GC2BvEI,CAAAtB,EAAAO,KADCP,EAiETvC,OAAAmB,eAAIoB,EAAAoB,UAAA,yBAAsB,KAA1B,iBACI,OAAiB,QAAVG,EAAAf,KAAKgB,aAAK,IAAAD,OAAA,EAAAA,EAAEE,gBAAiB,sCAGxChE,OAAAmB,eAAIoB,EAAAoB,UAAA,UAAO,KAAX,WACI,OAAOM,EAAAA,gBAAgBlB,KAAKmB,yDAGhClE,OAAAmB,eAAIoB,EAAAoB,UAAA,wBAAqB,KAAzB,iBACI,OAAyB,QAAzBG,EAAOf,KAAKoB,qBAAa,IAAAL,EAAAA,EAAKf,KAAKqB,aAAe,sCAGtDpE,OAAAmB,eAAIoB,EAAAoB,UAAA,gBAAa,KAAjB,WACI,OAAOZ,KAAKsB,aAAatB,KAAKqB,YAAarB,KAAKK,SAAUL,KAAKE,uCAGnEjD,OAAAmB,eAAIoB,EAAAoB,UAAA,iBAAc,KAAlB,WACI,OAAOZ,KAAKuB,cACRvB,KAAKL,SACLK,KAAKqB,YACLrB,KAAKK,SACLL,KAAKG,wCAIblD,OAAAmB,eAAIoB,EAAAoB,UAAA,cAAW,KAAf,iBACI,SAA0B,QAAlBG,EAACf,KAAKC,oBAAY,IAAAc,OAAA,EAAAA,EAAES,MAAMC,SAAS,2CAG/CxE,OAAAmB,eAAIoB,EAAAoB,UAAA,aAAU,KAAd,WACI,OAAOZ,KAAK0B,cAAc1B,KAAKZ,wCAGnCI,EAAAoB,UAAAe,UAAA,SAAUC,GACN5B,KAAK6B,cAAcD,IAGvBpC,EAAAoB,UAAAkB,UAAA,SAAUC,GACN/B,KAAKgC,cAAcD,IAGvBvC,EAAAoB,UAAAqB,UAAA,SAAUC,GACNlC,KAAKmC,cAAcD,IAGvB1C,EAAAoB,UAAAwB,gBAAA,SACIpB,EACAqB,EACAC,GAEAtC,KAAKuC,qBAAqBvB,EAAMwB,MAAOH,EAAOC,GAC9CtB,EAAM5B,MAAQ,IAGlBI,EAAAoB,UAAA6B,UAAA,SACIC,EACAL,EACAC,GAEAtC,KAAKuC,qBAAqBG,EAAMF,MAAOH,EAAOC,IAGlD9C,EAAAoB,UAAA+B,WAAA,SAAW1C,GACPD,KAAKC,aAAeA,GAGxBT,EAAAoB,UAAAgC,WAAA,SAAWC,GACP7C,KAAK8C,YACD9C,KAAKK,SAAWL,KAAK+C,WAAWC,QAAO,SAAAC,GAAQ,OAAAA,IAASJ,KAAe,OAKvErD,EAAAoB,UAAAU,aAAR,SACID,EACAhB,EACAH,GAEA,OAAOmB,EACD6B,EAAAA,GAAG,IACHlD,KAAKJ,gBAAgBuD,KACjBC,EAAAA,KAAI,SAAAf,GACA,OAAAhC,GAAqB,KAATH,EACNmC,EAAMgB,oBACNnD,GAAQmC,EAAMiB,uBAM9B9D,EAAAoB,UAAAW,cAAR,SACI5B,EACA0B,EACAhB,EACAF,GAEA,OAAIR,EACOuD,EAAAA,GAAG,IAGV7B,EACOrB,KAAKJ,gBAAgBuD,KACxBC,EAAAA,KAAI,SAAAf,GAAS,OAAChC,EAAWgC,EAAMkB,aAAelB,EAAMmB,SAIrDxD,KAAKJ,gBAAgBuD,KACxBC,EAAAA,KAAI,SAAAf,GACA,OAAAhC,GAAsB,KAAVF,EACNkC,EAAMoB,qBACNtD,GAASkC,EAAMqB,wBAMzBlE,EAAAoB,UAAAc,cAAR,SACItC,GAEA,OAAKA,EAIEhC,MAAMuG,QAAQvE,GAASA,EAAQ,CAACA,GAH5BwE,EAAAA,aAMPpE,EAAAoB,UAAA2B,qBAAR,SACIC,EACAH,EACAC,GAHJ,IAAAxC,EAAAE,KAMI,GAAKwC,MAAAA,OAAK,EAALA,EAAO1E,OAAZ,CAIA,IAAM+F,EAAW7D,KAAKK,SAAWjD,MAAM0G,KAAKtB,GAAS,CAACA,EAAM,IACtDuB,EAAcF,EAASb,QAAO,SAAAC,GAAQ,OAAAA,EAAK3C,KAAOR,EAAKS,eACvDyD,EAAmBH,EAASb,QAC9B,SAAAC,GAAQ,OAACnD,EAAKmE,mBAAmBhB,KAAUc,EAAYtC,SAASwB,MAE9DiB,EAAgBL,EAASb,QAC3B,SAAAC,GAAQ,OAACc,EAAYtC,SAASwB,KAAUe,EAAiBvC,SAASwB,OAGlEc,EAAYjG,QAAUkG,EAAiBlG,SACvCkC,KAAKmE,YAAW7E,EACTyE,EAAYX,KAAI,SAAAH,GAAQ,MAAA,CACvBmB,KAAMnB,EAAKmB,KACXC,KAAMpB,EAAKoB,KACX/D,KAAM2C,EAAK3C,KACXgE,QACIjC,EAAMkC,uBACNC,EAAAA,WAAWlC,EAAOxC,EAAKS,iBAE5ByD,EAAiBZ,KAAI,SAAAH,GAAQ,MAAA,CAC5BmB,KAAMnB,EAAKmB,KACXC,KAAMpB,EAAKoB,KACX/D,KAAM2C,EAAK3C,KACXgE,QAASjC,EAAMoC,4BAK3BzE,KAAK8C,YACD9C,KAAKK,WACKL,KAAK+C,WAAemB,GACxBA,EAAc,IAAM,QAI1B1E,EAAAoB,UAAAqD,mBAAR,SAA2BhB,GACvB,IAAKjD,KAAKI,OACN,OAAO,EAGX,IAAMsE,EAAY,KAAKzB,EAAKmB,KAAKO,MAAM,KAAKC,OAAS,IAAIC,cAEzD,OAAOC,EAAAA,eAAe9E,KAAKI,QAAQ2E,MAC/B,SAAAC,GACI,OAAAA,IAAWN,GACXM,IAAW/B,EAAKoB,MACU,MAAzBW,EAAOL,MAAM,KAAK,IACf1B,EAAKoB,KAAKM,MAAM,KAAK,KAAOK,EAAOL,MAAM,KAAK,OAItDnF,EAAAoB,UAAAuD,YAAR,SAAoBc,GAChBjF,KAAKQ,OAAO0E,KAAKlF,KAAKK,SAAW4E,EAAgBA,EAAc,8CArNtDE,EAAAA,UAAS3H,WAAA,CAAA,CAAA6G,KAHjBe,EAAAA,UAAQ,CAAAf,KACRgB,EAAAA,MAAI,CAAAhB,KACJiB,EAAAA,OAAMC,KAAA,CAACJ,EAAAA,oBAGWK,EAAAA,kBAAiBhI,WAAA,CAAA,CAAA6G,KADnCiB,EAAAA,OAAMC,KAAA,CAACC,EAAAA,sDAEPF,EAAAA,OAAMC,KAAA,CAACE,EAAAA,wBAGkBC,EAAAA,WAAUlI,WAAA,CAAA,CAAA6G,KADnCiB,EAAAA,OAAMC,KAAA,CAACI,EAAAA,+BAeSD,EAAAA,WAAUlI,WAAA,CAAA,CAAA6G,KAD1BiB,EAAAA,OAAMC,KAAA,CAACK,EAAAA,oCAtDZrI,EAAA,CADCsI,EAAAA,UAAU,sCAOXtI,EAAA,CAFCuI,EAAAA,QACAC,EAAAA,6CAKDxI,EAAA,CAFCuI,EAAAA,QACAC,EAAAA,8CAKDxI,EAAA,CAFCuI,EAAAA,QACAC,EAAAA,+CAKDxI,EAAA,CAFCuI,EAAAA,QACAC,EAAAA,iDAKDxI,EAAA,CAFCuI,EAAAA,QACAC,EAAAA,6CAKDxI,EAAA,CAFCuI,EAAAA,QACAC,EAAAA,oDAIDxI,EAAA,CADCyI,EAAAA,uCAyGDzI,EAAA,CADC0I,EAAAA,0CAkBD1I,EAAA,CADC0I,EAAAA,2CA2BD1I,EAAA,CADC0I,EAAAA,2CApLQzG,EAAsB0G,EAAA3I,EAAA,CAdlC4I,EAAAA,UAAU,CACPC,SAAU,kBACVC,SAAA,4qDAEAC,gBAAiBC,EAAAA,wBAAwBC,OACzCC,cAAeC,EAAAA,kBAAkBC,KACjCC,UAAW,CACPC,EAAAA,cACA,CACIC,QAASC,EAAAA,4BACTC,YAAaC,EAAAA,YAAW,WAAM,OAAAf,k9EAyCjC7H,EAAA,EAAA+G,EAAAA,YACA/G,EAAA,EAAAgH,EAAAA,QACAhH,EAAA,EAAAiH,EAAAA,OAAOH,EAAAA,YAEP9G,EAAA,EAAAiH,EAAAA,OAAOE,EAAAA,oBAEPnH,EAAA,EAAAiH,EAAAA,OAAOG,EAAAA,gBAEPpH,EAAA,EAAAiH,EAAAA,OAAOK,EAAAA,uBAcPtH,EAAA,EAAAiH,EAAAA,OAAOM,EAAAA,iCA3DHpG,IACD0H,EAAAA,yCCTZ,SAAAC,KAAkC,OAArBA,EAAmB5J,EAAA,CArB/B6J,EAAAA,SAAS,CACNC,QAAS,CACLC,EAAAA,aACAC,EAAAA,mBACAC,EAAAA,aACAC,EAAAA,iBACAC,EAAAA,sBACAC,EAAAA,iBACAC,EAAAA,iBACAC,EAAAA,mBACAC,EAAAA,mBACAC,EAAAA,iBACAC,EAAAA,aACAC,EAAAA,cACAC,EAAAA,gBACAC,EAAAA,gBACAC,EAAAA,gBAEJC,aAAc,CAAC7I,GACf8I,QAAS,CAAC9I,MAED2H","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 ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n EMPTY_ARRAY,\n isNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TUI_IS_MOBILE,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TuiSizeL} from '@taiga-ui/core';\nimport {TuiFileLike} from '@taiga-ui/kit/interfaces';\nimport {TUI_DIGITAL_INFORMATION_UNITS, TUI_INPUT_FILE_TEXTS} from '@taiga-ui/kit/tokens';\nimport {formatSize, getAcceptArray} from '@taiga-ui/kit/utils/files';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nconst DEFAULT_MAX_SIZE = 30 * 1000 * 1000; // 30 MB\n\n// @dynamic\n@Component({\n selector: 'tui-input-files',\n templateUrl: './input-files.template.html',\n styleUrls: ['./input-files.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n MODE_PROVIDER,\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputFilesComponent),\n },\n ],\n})\nexport class TuiInputFilesComponent\n extends AbstractTuiNullableControl<TuiFileLike | ReadonlyArray<TuiFileLike>>\n implements TuiFocusableElementAccessor\n{\n @ViewChild('input')\n private readonly input?: ElementRef<HTMLInputElement>;\n\n private dataTransfer: DataTransfer | null = null;\n\n @Input()\n @tuiDefaultProp()\n link: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n label: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n accept = '';\n\n @Input()\n @tuiDefaultProp()\n multiple = false;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n maxFileSize = DEFAULT_MAX_SIZE;\n\n @Output()\n reject = new EventEmitter<ReadonlyArray<TuiFileLike> | TuiFileLike>();\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef)\n changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_IS_MOBILE)\n readonly isMobile: boolean,\n @Inject(TUI_INPUT_FILE_TEXTS)\n readonly inputFileTexts$: Observable<\n Record<\n | 'defaultLabelSingle'\n | 'defaultLabelMultiple'\n | 'defaultLinkSingle'\n | 'defaultLinkMultiple'\n | 'maxSizeRejectionReason'\n | 'formatRejectionReason'\n | 'drop'\n | 'dropMultiple',\n string\n >\n >,\n @Inject(TUI_DIGITAL_INFORMATION_UNITS)\n readonly units$: Observable<[string, string, string]>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.input?.nativeElement || null;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get computedPseudoHovered(): boolean | null {\n return this.pseudoHovered ?? (this.fileDragged || null);\n }\n\n get computedLink$(): Observable<PolymorpheusContent> {\n return this.computeLink$(this.fileDragged, this.multiple, this.link);\n }\n\n get computedLabel$(): Observable<PolymorpheusContent> {\n return this.computeLabel$(\n this.isMobile,\n this.fileDragged,\n this.multiple,\n this.label,\n );\n }\n\n get fileDragged(): boolean {\n return !!this.dataTransfer?.types.includes('Files');\n }\n\n get arrayValue(): ReadonlyArray<TuiFileLike> {\n return this.getValueArray(this.value);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onFilesSelected(\n input: HTMLInputElement,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(input.files, texts, units);\n input.value = '';\n }\n\n onDropped(\n event: DataTransfer,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(event.files, texts, units);\n }\n\n onDragOver(dataTransfer: DataTransfer | null) {\n this.dataTransfer = dataTransfer;\n }\n\n removeFile(removedFile: TuiFileLike) {\n this.updateValue(\n this.multiple ? this.arrayValue.filter(file => file !== removedFile) : null,\n );\n }\n\n @tuiPure\n private computeLink$(\n fileDragged: boolean,\n multiple: boolean,\n link: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n return fileDragged\n ? of('')\n : this.inputFileTexts$.pipe(\n map(texts =>\n multiple && link === ''\n ? texts.defaultLinkMultiple\n : link || texts.defaultLinkSingle,\n ),\n );\n }\n\n @tuiPure\n private computeLabel$(\n isMobile: boolean,\n fileDragged: boolean,\n multiple: boolean,\n label: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n if (isMobile) {\n return of('');\n }\n\n if (fileDragged) {\n return this.inputFileTexts$.pipe(\n map(texts => (multiple ? texts.dropMultiple : texts.drop)),\n );\n }\n\n return this.inputFileTexts$.pipe(\n map(texts =>\n multiple && label === ''\n ? texts.defaultLabelMultiple\n : label || texts.defaultLabelSingle,\n ),\n );\n }\n\n @tuiPure\n private getValueArray(\n value: TuiFileLike | ReadonlyArray<TuiFileLike> | null,\n ): ReadonlyArray<TuiFileLike> {\n if (!value) {\n return EMPTY_ARRAY;\n }\n\n return Array.isArray(value) ? value : [value];\n }\n\n private processSelectedFiles(\n files: FileList | null,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n // IE11 after selecting a file through the open dialog generates a second event passing an empty FileList.\n if (!files?.length) {\n return;\n }\n\n const newFiles = this.multiple ? Array.from(files) : [files[0]];\n const tooBigFiles = newFiles.filter(file => file.size > this.maxFileSize);\n const wrongFormatFiles = newFiles.filter(\n file => !this.isFormatAcceptable(file) && !tooBigFiles.includes(file),\n );\n const acceptedFiles = newFiles.filter(\n file => !tooBigFiles.includes(file) && !wrongFormatFiles.includes(file),\n );\n\n if (tooBigFiles.length || wrongFormatFiles.length) {\n this.rejectFiles([\n ...tooBigFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content:\n texts.maxSizeRejectionReason +\n formatSize(units, this.maxFileSize),\n })),\n ...wrongFormatFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content: texts.formatRejectionReason,\n })),\n ]);\n }\n\n this.updateValue(\n this.multiple\n ? [...this.arrayValue, ...acceptedFiles]\n : acceptedFiles[0] || null,\n );\n }\n\n private isFormatAcceptable(file: File): boolean {\n if (!this.accept) {\n return true;\n }\n\n const extension = `.${(file.name.split('.').pop() || '').toLowerCase()}`;\n\n return getAcceptArray(this.accept).some(\n format =>\n format === extension ||\n format === file.type ||\n (format.split('/')[1] === '*' &&\n file.type.split('/')[0] === format.split('/')[0]),\n );\n }\n\n private rejectFiles(rejectedFiles: ReadonlyArray<TuiFileLike>) {\n this.reject.emit(this.multiple ? rejectedFiles : rejectedFiles[0]);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiDroppableModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiButtonModule,\n TuiGroupModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiSvgModule,\n TuiWrapperModule,\n} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputFilesComponent} from './input-files.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiPressedModule,\n TuiHoveredModule,\n TuiFocusableModule,\n TuiDroppableModule,\n TuiWrapperModule,\n TuiSvgModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiButtonModule,\n TuiGroupModule,\n ],\n declarations: [TuiInputFilesComponent],\n exports: [TuiInputFilesComponent],\n})\nexport class TuiInputFilesModule {}\n"]}
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/forms'), require('@taiga-ui/cdk'), require('@taiga-ui/core'), require('@taiga-ui/kit/directives'), require('angular2-text-mask')) :
3
- typeof define === 'function' && define.amd ? define('@taiga-ui/kit/components/input-number', ['exports', '@angular/core', '@angular/forms', '@taiga-ui/cdk', '@taiga-ui/core', '@taiga-ui/kit/directives', 'angular2-text-mask'], factory) :
4
- (global = global || self, factory((global['taiga-ui'] = global['taiga-ui'] || {}, global['taiga-ui'].kit = global['taiga-ui'].kit || {}, global['taiga-ui'].kit.components = global['taiga-ui'].kit.components || {}, global['taiga-ui'].kit.components['input-number'] = {}), global.ng.core, global.ng.forms, global.cdk, global.core$1, global['taiga-ui'].kit.directives, global.angular2TextMask));
5
- }(this, (function (exports, core, forms, cdk, core$1, directives, angular2TextMask) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/forms'), require('@taiga-ui/cdk'), require('@taiga-ui/core'), require('@tinkoff/ng-polymorpheus'), require('@angular/common'), require('@taiga-ui/kit/directives'), require('angular2-text-mask')) :
3
+ typeof define === 'function' && define.amd ? define('@taiga-ui/kit/components/input-number', ['exports', '@angular/core', '@angular/forms', '@taiga-ui/cdk', '@taiga-ui/core', '@tinkoff/ng-polymorpheus', '@angular/common', '@taiga-ui/kit/directives', 'angular2-text-mask'], factory) :
4
+ (global = global || self, factory((global['taiga-ui'] = global['taiga-ui'] || {}, global['taiga-ui'].kit = global['taiga-ui'].kit || {}, global['taiga-ui'].kit.components = global['taiga-ui'].kit.components || {}, global['taiga-ui'].kit.components['input-number'] = {}), global.ng.core, global.ng.forms, global.cdk, global.core$1, global.ngPolymorpheus, global.ng.common, global['taiga-ui'].kit.directives, global.angular2TextMask));
5
+ }(this, (function (exports, core, forms, cdk, core$1, ngPolymorpheus, common, directives, angular2TextMask) { 'use strict';
6
6
 
7
7
  /*! *****************************************************************************
8
8
  Copyright (c) Microsoft Corporation.
@@ -297,15 +297,7 @@
297
297
  });
298
298
  Object.defineProperty(TuiInputNumberComponent.prototype, "formattedValue", {
299
299
  get: function () {
300
- var value = this.value || 0;
301
- var absValue = Math.abs(value);
302
- var hasFraction = absValue % 1 > 0;
303
- var limit = this.decimal === 'always' || hasFraction ? this.precision : 0;
304
- var fraction = hasFraction ? core$1.getFractionPartPadded(value, this.precision) : '';
305
- if (this.focused && this.decimal !== 'always') {
306
- limit = fraction.length;
307
- }
308
- return core$1.formatNumber(value, limit, this.numberFormat.decimalSeparator, this.numberFormat.thousandSeparator, this.numberFormat.zeroPadding);
300
+ return this.getFormattedValue(this.value || 0);
309
301
  },
310
302
  enumerable: true,
311
303
  configurable: true
@@ -383,6 +375,16 @@
383
375
  TuiInputNumberComponent.prototype.onPressed = function (pressed) {
384
376
  this.updatePressed(pressed);
385
377
  };
378
+ TuiInputNumberComponent.prototype.getFormattedValue = function (value) {
379
+ var absValue = Math.abs(value);
380
+ var hasFraction = absValue % 1 > 0;
381
+ var limit = this.decimal === 'always' || hasFraction ? this.precision : 0;
382
+ var fraction = hasFraction ? core$1.getFractionPartPadded(value, this.precision) : '';
383
+ if (this.focused && this.decimal !== 'always') {
384
+ limit = fraction.length;
385
+ }
386
+ return core$1.formatNumber(value, limit, this.numberFormat.decimalSeparator, this.numberFormat.thousandSeparator, this.numberFormat.zeroPadding);
387
+ };
386
388
  Object.defineProperty(TuiInputNumberComponent.prototype, "isNativeValueNotFinished", {
387
389
  get: function () {
388
390
  var nativeNumberValue = this.nativeNumberValue;
@@ -466,13 +468,16 @@
466
468
  core.Input(),
467
469
  cdk.tuiDefaultProp()
468
470
  ], TuiInputNumberComponent.prototype, "postfix", void 0);
471
+ __decorate([
472
+ core.ContentChild(ngPolymorpheus.PolymorpheusOutletComponent)
473
+ ], TuiInputNumberComponent.prototype, "polymorpheusValueContent", void 0);
469
474
  __decorate([
470
475
  core.HostListener('keydown.0', ['$event'])
471
476
  ], TuiInputNumberComponent.prototype, "onZero", null);
472
477
  TuiInputNumberComponent = TuiInputNumberComponent_1 = __decorate([
473
478
  core.Component({
474
479
  selector: 'tui-input-number',
475
- template: "<tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldInputMode=\"decimal\"\n class=\"textfield\"\n [pseudoHovered]=\"pseudoHovered\"\n [pseudoFocused]=\"computedFocused\"\n [invalid]=\"computedInvalid\"\n [tuiTextfieldMaxLength]=\"calculatedMaxLength\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [textMask]=\"isNegativeAllowed | tuiMapper: mask:decimal:precision:nativeFocusableElement\"\n [value]=\"computedValue\"\n [prefix]=\"prefix\"\n [postfix]=\"postfix\"\n [focusable]=\"focusable\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (focusedChange)=\"onFocused($event)\"\n (pressedChange)=\"onPressed($event)\"\n (keydown)=\"onKeyDown($event)\"\n>\n <ng-content></ng-content>\n <ng-content select=\"input\" ngProjectAs=\"input\"></ng-content>\n</tui-primitive-textfield>\n",
480
+ template: "<tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldInputMode=\"decimal\"\n class=\"textfield\"\n [pseudoHovered]=\"computedHovered\"\n [pseudoFocused]=\"computedFocused\"\n [pseudoPressed]=\"computedPressed\"\n [invalid]=\"computedInvalid\"\n [tuiTextfieldMaxLength]=\"calculatedMaxLength\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [textMask]=\"isNegativeAllowed | tuiMapper: mask:decimal:precision:nativeFocusableElement\"\n [value]=\"computedValue\"\n [prefix]=\"prefix\"\n [postfix]=\"postfix\"\n [focusable]=\"focusable\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (focusedChange)=\"onFocused($event)\"\n (pressedChange)=\"onPressed($event)\"\n (keydown)=\"onKeyDown($event)\"\n>\n <ng-content></ng-content>\n <ng-content select=\"input\" ngProjectAs=\"input\"></ng-content>\n <div\n *ngIf=\"polymorpheusValueContent\"\n polymorpheus-outlet\n [content]=\"valueContent\"\n ></div>\n</tui-primitive-textfield>\n\n<ng-template #valueContent>\n <ng-content select=\"[polymorpheus-outlet]\"></ng-content>\n</ng-template>\n",
476
481
  changeDetection: core.ChangeDetectionStrategy.OnPush,
477
482
  providers: [
478
483
  {
@@ -542,11 +547,13 @@
542
547
  TuiInputNumberModule = __decorate([
543
548
  core.NgModule({
544
549
  imports: [
550
+ common.CommonModule,
545
551
  angular2TextMask.TextMaskModule,
546
552
  cdk.TuiMapperPipeModule,
547
553
  core$1.TuiPrimitiveTextfieldModule,
548
554
  core$1.TuiTextfieldControllerModule,
549
555
  directives.TuiValueAccessorModule,
556
+ ngPolymorpheus.PolymorpheusModule,
550
557
  ],
551
558
  declarations: [TuiInputNumberComponent, TuiInputNumberDirective],
552
559
  exports: [TuiInputNumberComponent, TuiInputNumberDirective, core$1.TuiTextfieldComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-input-number.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-number/input-number.component.ts","ng://@taiga-ui/kit/components/input-number/input-number.directive.ts","ng://@taiga-ui/kit/components/input-number/input-number.module.ts"],"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 ChangeDetectorRef,\n Component,\n forwardRef,\n HostListener,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n AbstractTuiNullableControl,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiInputModeT,\n TuiMapper,\n} from '@taiga-ui/cdk';\nimport {\n formatNumber,\n getFractionPartPadded,\n maskedMoneyValueIsEmpty,\n maskedNumberStringToNumber,\n NumberFormatSettings,\n TUI_DECIMAL_SYMBOLS,\n TUI_NUMBER_FORMAT,\n tuiCreateAutoCorrectedNumberPipe,\n tuiCreateNumberMask,\n TuiDecimalT,\n tuiEnableAutoCorrectDecimalSymbol,\n TuiPrimitiveTextfieldComponent,\n TuiTextMaskOptions,\n} from '@taiga-ui/core';\nimport {TextMaskConfig} from 'angular2-text-mask';\n\nconst DEFAULT_MAX_LENGTH = 18;\n\n// @dynamic\n@Component({\n selector: 'tui-input-number',\n templateUrl: './input-number.template.html',\n styleUrls: ['./input-number.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputNumberComponent),\n },\n {\n provide: AbstractTuiControl,\n useExisting: forwardRef(() => TuiInputNumberComponent),\n },\n ],\n})\nexport class TuiInputNumberComponent\n extends AbstractTuiNullableControl<number>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly primitiveTextfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n min = -Infinity;\n\n @Input()\n @tuiDefaultProp()\n max = Infinity;\n\n @Input()\n @tuiDefaultProp()\n decimal: TuiDecimalT = 'not-zero';\n\n @Input()\n @tuiDefaultProp()\n precision = 2;\n\n @Input()\n @tuiDefaultProp()\n prefix = '';\n\n @Input()\n @tuiDefaultProp()\n postfix = '';\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef)\n changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_NUMBER_FORMAT)\n private readonly numberFormat: NumberFormatSettings,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return !this.primitiveTextfield || this.computedDisabled\n ? null\n : this.primitiveTextfield.nativeFocusableElement;\n }\n\n get focused(): boolean {\n return !!this.primitiveTextfield && this.primitiveTextfield.focused;\n }\n\n get isNegativeAllowed(): boolean {\n return this.min < 0;\n }\n\n get inputMode(): TuiInputModeT {\n return this.decimal === 'never' ? 'numeric' : 'decimal';\n }\n\n get calculatedMaxLength(): number {\n const decimalPart =\n this.decimal !== 'never' &&\n this.nativeValue.includes(this.numberFormat.decimalSeparator);\n const precision = decimalPart ? this.precision + 1 : 0;\n const takeThousand = this.numberFormat.thousandSeparator.repeat(5).length;\n\n return DEFAULT_MAX_LENGTH + precision + takeThousand;\n }\n\n get formattedValue(): string {\n const value = this.value || 0;\n const absValue = Math.abs(value);\n const hasFraction = absValue % 1 > 0;\n let limit = this.decimal === 'always' || hasFraction ? this.precision : 0;\n\n const fraction = hasFraction ? getFractionPartPadded(value, this.precision) : '';\n\n if (this.focused && this.decimal !== 'always') {\n limit = fraction.length;\n }\n\n return formatNumber(\n value,\n limit,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n this.numberFormat.zeroPadding,\n );\n }\n\n get computedValue(): string {\n if (this.focused) {\n return this.nativeValue;\n }\n\n return this.value === null ? '' : this.formattedValue;\n }\n\n @HostListener('keydown.0', ['$event'])\n onZero(event: KeyboardEvent) {\n const decimal =\n this.nativeValue.split(this.numberFormat.decimalSeparator)[1] || '';\n const {nativeFocusableElement} = this;\n\n if (\n decimal.length < this.precision ||\n !nativeFocusableElement ||\n !nativeFocusableElement.selectionStart ||\n this.nativeValue[nativeFocusableElement.selectionStart] !== '0'\n ) {\n return;\n }\n\n event.preventDefault();\n nativeFocusableElement.selectionStart++;\n }\n\n mask: TuiMapper<boolean, TextMaskConfig> = (\n allowNegative: boolean,\n decimal: TuiDecimalT,\n decimalLimit: number,\n nativeFocusableElement: HTMLInputElement | null,\n ) =>\n ({\n mask: tuiCreateNumberMask({\n allowNegative,\n decimalLimit,\n allowDecimal: decimal !== 'never',\n requireDecimal: decimal === 'always',\n decimalSymbol: this.numberFormat.decimalSeparator,\n thousandSymbol: this.numberFormat.thousandSeparator,\n autoCorrectDecimalSymbol: tuiEnableAutoCorrectDecimalSymbol(\n this.numberFormat,\n ),\n }),\n pipe: tuiCreateAutoCorrectedNumberPipe(\n decimal === 'always' ? decimalLimit : 0,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n nativeFocusableElement,\n allowNegative,\n ),\n guide: false,\n } as TuiTextMaskOptions as unknown as TextMaskConfig);\n\n onValueChange(value: string) {\n if (maskedMoneyValueIsEmpty(value)) {\n this.updateValue(null);\n\n return;\n }\n\n if (this.isNativeValueNotFinished) {\n return;\n }\n\n const capped = this.absoluteCapInputValue(value);\n\n if (capped === null || isNaN(capped)) {\n return;\n }\n\n this.updateValue(capped);\n\n if (\n capped !==\n maskedNumberStringToNumber(\n value,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n )\n ) {\n this.nativeValue = this.formattedValue;\n }\n }\n\n onKeyDown(event: KeyboardEvent) {\n if (!TUI_DECIMAL_SYMBOLS.includes(event.key)) {\n return;\n }\n\n if (this.decimal === 'never') {\n event.preventDefault();\n\n return;\n }\n\n if (this.nativeValue.includes(this.numberFormat.decimalSeparator)) {\n event.preventDefault();\n this.setCaretAfterComma();\n }\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n\n if (focused) {\n return;\n }\n\n const nativeNumberValue = this.nativeNumberValue;\n\n if (isNaN(nativeNumberValue)) {\n this.clear();\n\n return;\n }\n\n const clamped = Math.min(this.max, Math.max(this.min, nativeNumberValue));\n\n this.updateValue(clamped);\n this.nativeValue = this.formattedValue;\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n private get isNativeValueNotFinished(): boolean {\n const nativeNumberValue = this.nativeNumberValue;\n\n return nativeNumberValue < 0\n ? nativeNumberValue > this.max\n : nativeNumberValue < this.min;\n }\n\n private get nativeValue(): string {\n return this.nativeFocusableElement ? this.nativeFocusableElement.value : '';\n }\n\n private get nativeNumberValue(): number {\n return maskedNumberStringToNumber(\n this.nativeValue,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n );\n }\n\n private set nativeValue(value: string) {\n if (!this.primitiveTextfield || !this.nativeFocusableElement) {\n return;\n }\n\n this.primitiveTextfield.value = value;\n this.nativeFocusableElement.value = value;\n }\n\n private clear() {\n this.nativeValue = '';\n this.updateValue(null);\n }\n\n private absoluteCapInputValue(inputValue: string): number | null {\n const value = maskedNumberStringToNumber(\n inputValue,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n );\n const capped =\n value < 0\n ? Math.max(Math.max(this.min, Number.MIN_SAFE_INTEGER), value)\n : Math.min(value, Math.min(this.max, Number.MAX_SAFE_INTEGER));\n const ineligibleValue = isNaN(capped) || capped < this.min || capped > this.max;\n\n return ineligibleValue ? null : capped;\n }\n\n private setCaretAfterComma() {\n if (!this.nativeFocusableElement) {\n return;\n }\n\n const afterCommaPosition = this.nativeValue.length - this.precision;\n\n this.nativeFocusableElement.setSelectionRange(\n afterCommaPosition,\n afterCommaPosition,\n );\n }\n}\n","import {Directive, DoCheck, forwardRef} from '@angular/core';\nimport {TUI_TEXTFIELD_HOST, TuiAbstractTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiInputNumberComponent} from './input-number.component';\n\n@Directive({\n selector: 'tui-input-number',\n providers: [\n {\n provide: TUI_TEXTFIELD_HOST,\n useExisting: forwardRef(() => TuiInputNumberDirective),\n },\n ],\n})\nexport class TuiInputNumberDirective\n extends TuiAbstractTextfieldHost<TuiInputNumberComponent>\n implements DoCheck\n{\n input?: HTMLInputElement;\n\n get value(): string {\n return this.host.computedValue;\n }\n\n onValueChange(value: string) {\n this.host.onValueChange(value);\n }\n\n process(input: HTMLInputElement) {\n this.input = input;\n }\n\n ngDoCheck() {\n if (!this.input) {\n return;\n }\n\n this.input.maxLength = this.host.calculatedMaxLength;\n this.input.inputMode = 'decimal';\n }\n}\n","import {NgModule} from '@angular/core';\nimport {TuiMapperPipeModule} from '@taiga-ui/cdk';\nimport {\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit/directives';\nimport {TextMaskModule} from 'angular2-text-mask';\n\nimport {TuiInputNumberComponent} from './input-number.component';\nimport {TuiInputNumberDirective} from './input-number.directive';\n\n@NgModule({\n imports: [\n TextMaskModule,\n TuiMapperPipeModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiValueAccessorModule,\n ],\n declarations: [TuiInputNumberComponent, TuiInputNumberDirective],\n exports: [TuiInputNumberComponent, TuiInputNumberDirective, TuiTextfieldComponent],\n})\nexport class TuiInputNumberModule {}\n"],"names":["tuiCreateNumberMask","tuiEnableAutoCorrectDecimalSymbol","tuiCreateAutoCorrectedNumberPipe","getFractionPartPadded","formatNumber","maskedMoneyValueIsEmpty","maskedNumberStringToNumber","TUI_DECIMAL_SYMBOLS","NgControl","Optional","Self","Inject","ChangeDetectorRef","TUI_NUMBER_FORMAT","ViewChild","TuiPrimitiveTextfieldComponent","Input","tuiDefaultProp","HostListener","Component","ChangeDetectionStrategy","TUI_FOCUSABLE_ITEM_ACCESSOR","forwardRef","AbstractTuiControl","AbstractTuiNullableControl","Directive","TUI_TEXTFIELD_HOST","TuiAbstractTextfieldHost","NgModule","TextMaskModule","TuiMapperPipeModule","TuiPrimitiveTextfieldModule","TuiTextfieldControllerModule","TuiValueAccessorModule","TuiTextfieldComponent"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-input-number.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-number/input-number.component.ts","ng://@taiga-ui/kit/components/input-number/input-number.directive.ts","ng://@taiga-ui/kit/components/input-number/input-number.module.ts"],"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 ChangeDetectorRef,\n Component,\n ContentChild,\n forwardRef,\n HostListener,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n AbstractTuiNullableControl,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiInputModeT,\n TuiMapper,\n} from '@taiga-ui/cdk';\nimport {\n formatNumber,\n getFractionPartPadded,\n maskedMoneyValueIsEmpty,\n maskedNumberStringToNumber,\n NumberFormatSettings,\n TUI_DECIMAL_SYMBOLS,\n TUI_NUMBER_FORMAT,\n tuiCreateAutoCorrectedNumberPipe,\n tuiCreateNumberMask,\n TuiDecimalT,\n tuiEnableAutoCorrectDecimalSymbol,\n TuiPrimitiveTextfieldComponent,\n TuiTextMaskOptions,\n} from '@taiga-ui/core';\nimport {PolymorpheusOutletComponent} from '@tinkoff/ng-polymorpheus';\nimport {TextMaskConfig} from 'angular2-text-mask';\n\nconst DEFAULT_MAX_LENGTH = 18;\n\n// @dynamic\n@Component({\n selector: 'tui-input-number',\n templateUrl: './input-number.template.html',\n styleUrls: ['./input-number.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputNumberComponent),\n },\n {\n provide: AbstractTuiControl,\n useExisting: forwardRef(() => TuiInputNumberComponent),\n },\n ],\n})\nexport class TuiInputNumberComponent\n extends AbstractTuiNullableControl<number>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly primitiveTextfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n min = -Infinity;\n\n @Input()\n @tuiDefaultProp()\n max = Infinity;\n\n @Input()\n @tuiDefaultProp()\n decimal: TuiDecimalT = 'not-zero';\n\n @Input()\n @tuiDefaultProp()\n precision = 2;\n\n @Input()\n @tuiDefaultProp()\n prefix = '';\n\n @Input()\n @tuiDefaultProp()\n postfix = '';\n\n @ContentChild(PolymorpheusOutletComponent)\n readonly polymorpheusValueContent?: unknown;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef)\n changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_NUMBER_FORMAT)\n private readonly numberFormat: NumberFormatSettings,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return !this.primitiveTextfield || this.computedDisabled\n ? null\n : this.primitiveTextfield.nativeFocusableElement;\n }\n\n get focused(): boolean {\n return !!this.primitiveTextfield && this.primitiveTextfield.focused;\n }\n\n get isNegativeAllowed(): boolean {\n return this.min < 0;\n }\n\n get inputMode(): TuiInputModeT {\n return this.decimal === 'never' ? 'numeric' : 'decimal';\n }\n\n get calculatedMaxLength(): number {\n const decimalPart =\n this.decimal !== 'never' &&\n this.nativeValue.includes(this.numberFormat.decimalSeparator);\n const precision = decimalPart ? this.precision + 1 : 0;\n const takeThousand = this.numberFormat.thousandSeparator.repeat(5).length;\n\n return DEFAULT_MAX_LENGTH + precision + takeThousand;\n }\n\n get formattedValue(): string {\n return this.getFormattedValue(this.value || 0);\n }\n\n get computedValue(): string {\n if (this.focused) {\n return this.nativeValue;\n }\n\n return this.value === null ? '' : this.formattedValue;\n }\n\n @HostListener('keydown.0', ['$event'])\n onZero(event: KeyboardEvent) {\n const decimal =\n this.nativeValue.split(this.numberFormat.decimalSeparator)[1] || '';\n const {nativeFocusableElement} = this;\n\n if (\n decimal.length < this.precision ||\n !nativeFocusableElement ||\n !nativeFocusableElement.selectionStart ||\n this.nativeValue[nativeFocusableElement.selectionStart] !== '0'\n ) {\n return;\n }\n\n event.preventDefault();\n nativeFocusableElement.selectionStart++;\n }\n\n mask: TuiMapper<boolean, TextMaskConfig> = (\n allowNegative: boolean,\n decimal: TuiDecimalT,\n decimalLimit: number,\n nativeFocusableElement: HTMLInputElement | null,\n ) =>\n ({\n mask: tuiCreateNumberMask({\n allowNegative,\n decimalLimit,\n allowDecimal: decimal !== 'never',\n requireDecimal: decimal === 'always',\n decimalSymbol: this.numberFormat.decimalSeparator,\n thousandSymbol: this.numberFormat.thousandSeparator,\n autoCorrectDecimalSymbol: tuiEnableAutoCorrectDecimalSymbol(\n this.numberFormat,\n ),\n }),\n pipe: tuiCreateAutoCorrectedNumberPipe(\n decimal === 'always' ? decimalLimit : 0,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n nativeFocusableElement,\n allowNegative,\n ),\n guide: false,\n } as TuiTextMaskOptions as unknown as TextMaskConfig);\n\n onValueChange(value: string) {\n if (maskedMoneyValueIsEmpty(value)) {\n this.updateValue(null);\n\n return;\n }\n\n if (this.isNativeValueNotFinished) {\n return;\n }\n\n const capped = this.absoluteCapInputValue(value);\n\n if (capped === null || isNaN(capped)) {\n return;\n }\n\n this.updateValue(capped);\n\n if (\n capped !==\n maskedNumberStringToNumber(\n value,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n )\n ) {\n this.nativeValue = this.formattedValue;\n }\n }\n\n onKeyDown(event: KeyboardEvent) {\n if (!TUI_DECIMAL_SYMBOLS.includes(event.key)) {\n return;\n }\n\n if (this.decimal === 'never') {\n event.preventDefault();\n\n return;\n }\n\n if (this.nativeValue.includes(this.numberFormat.decimalSeparator)) {\n event.preventDefault();\n this.setCaretAfterComma();\n }\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n\n if (focused) {\n return;\n }\n\n const nativeNumberValue = this.nativeNumberValue;\n\n if (isNaN(nativeNumberValue)) {\n this.clear();\n\n return;\n }\n\n const clamped = Math.min(this.max, Math.max(this.min, nativeNumberValue));\n\n this.updateValue(clamped);\n this.nativeValue = this.formattedValue;\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n getFormattedValue(value: number): string {\n const absValue = Math.abs(value);\n const hasFraction = absValue % 1 > 0;\n let limit = this.decimal === 'always' || hasFraction ? this.precision : 0;\n\n const fraction = hasFraction ? getFractionPartPadded(value, this.precision) : '';\n\n if (this.focused && this.decimal !== 'always') {\n limit = fraction.length;\n }\n\n return formatNumber(\n value,\n limit,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n this.numberFormat.zeroPadding,\n );\n }\n\n private get isNativeValueNotFinished(): boolean {\n const nativeNumberValue = this.nativeNumberValue;\n\n return nativeNumberValue < 0\n ? nativeNumberValue > this.max\n : nativeNumberValue < this.min;\n }\n\n get nativeValue(): string {\n return this.nativeFocusableElement ? this.nativeFocusableElement.value : '';\n }\n\n set nativeValue(value: string) {\n if (!this.primitiveTextfield || !this.nativeFocusableElement) {\n return;\n }\n\n this.primitiveTextfield.value = value;\n this.nativeFocusableElement.value = value;\n }\n\n private get nativeNumberValue(): number {\n return maskedNumberStringToNumber(\n this.nativeValue,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n );\n }\n\n private clear() {\n this.nativeValue = '';\n this.updateValue(null);\n }\n\n private absoluteCapInputValue(inputValue: string): number | null {\n const value = maskedNumberStringToNumber(\n inputValue,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n );\n const capped =\n value < 0\n ? Math.max(Math.max(this.min, Number.MIN_SAFE_INTEGER), value)\n : Math.min(value, Math.min(this.max, Number.MAX_SAFE_INTEGER));\n const ineligibleValue = isNaN(capped) || capped < this.min || capped > this.max;\n\n return ineligibleValue ? null : capped;\n }\n\n private setCaretAfterComma() {\n if (!this.nativeFocusableElement) {\n return;\n }\n\n const afterCommaPosition = this.nativeValue.length - this.precision;\n\n this.nativeFocusableElement.setSelectionRange(\n afterCommaPosition,\n afterCommaPosition,\n );\n }\n}\n","import {Directive, DoCheck, forwardRef} from '@angular/core';\nimport {TUI_TEXTFIELD_HOST, TuiAbstractTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiInputNumberComponent} from './input-number.component';\n\n@Directive({\n selector: 'tui-input-number',\n providers: [\n {\n provide: TUI_TEXTFIELD_HOST,\n useExisting: forwardRef(() => TuiInputNumberDirective),\n },\n ],\n})\nexport class TuiInputNumberDirective\n extends TuiAbstractTextfieldHost<TuiInputNumberComponent>\n implements DoCheck\n{\n input?: HTMLInputElement;\n\n get value(): string {\n return this.host.computedValue;\n }\n\n onValueChange(value: string) {\n this.host.onValueChange(value);\n }\n\n process(input: HTMLInputElement) {\n this.input = input;\n }\n\n ngDoCheck() {\n if (!this.input) {\n return;\n }\n\n this.input.maxLength = this.host.calculatedMaxLength;\n this.input.inputMode = 'decimal';\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiMapperPipeModule} from '@taiga-ui/cdk';\nimport {\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit/directives';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TextMaskModule} from 'angular2-text-mask';\n\nimport {TuiInputNumberComponent} from './input-number.component';\nimport {TuiInputNumberDirective} from './input-number.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n TextMaskModule,\n TuiMapperPipeModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiValueAccessorModule,\n PolymorpheusModule,\n ],\n declarations: [TuiInputNumberComponent, TuiInputNumberDirective],\n exports: [TuiInputNumberComponent, TuiInputNumberDirective, TuiTextfieldComponent],\n})\nexport class TuiInputNumberModule {}\n"],"names":["tuiCreateNumberMask","tuiEnableAutoCorrectDecimalSymbol","tuiCreateAutoCorrectedNumberPipe","maskedMoneyValueIsEmpty","maskedNumberStringToNumber","TUI_DECIMAL_SYMBOLS","getFractionPartPadded","formatNumber","NgControl","Optional","Self","Inject","ChangeDetectorRef","TUI_NUMBER_FORMAT","ViewChild","TuiPrimitiveTextfieldComponent","Input","tuiDefaultProp","ContentChild","PolymorpheusOutletComponent","HostListener","Component","ChangeDetectionStrategy","TUI_FOCUSABLE_ITEM_ACCESSOR","forwardRef","AbstractTuiControl","AbstractTuiNullableControl","Directive","TUI_TEXTFIELD_HOST","TuiAbstractTextfieldHost","NgModule","CommonModule","TextMaskModule","TuiMapperPipeModule","TuiPrimitiveTextfieldModule","TuiTextfieldControllerModule","TuiValueAccessorModule","PolymorpheusModule","TuiTextfieldComponent"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/forms"),require("@taiga-ui/cdk"),require("@taiga-ui/core"),require("@taiga-ui/kit/directives"),require("angular2-text-mask")):"function"==typeof define&&define.amd?define("@taiga-ui/kit/components/input-number",["exports","@angular/core","@angular/forms","@taiga-ui/cdk","@taiga-ui/core","@taiga-ui/kit/directives","angular2-text-mask"],t):t(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"].kit=e["taiga-ui"].kit||{},e["taiga-ui"].kit.components=e["taiga-ui"].kit.components||{},e["taiga-ui"].kit.components["input-number"]={}),e.ng.core,e.ng.forms,e.cdk,e.core$1,e["taiga-ui"].kit.directives,e.angular2TextMask)}(this,(function(e,t,i,n,r,o,a){"use strict";
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/forms"),require("@taiga-ui/cdk"),require("@taiga-ui/core"),require("@tinkoff/ng-polymorpheus"),require("@angular/common"),require("@taiga-ui/kit/directives"),require("angular2-text-mask")):"function"==typeof define&&define.amd?define("@taiga-ui/kit/components/input-number",["exports","@angular/core","@angular/forms","@taiga-ui/cdk","@taiga-ui/core","@tinkoff/ng-polymorpheus","@angular/common","@taiga-ui/kit/directives","angular2-text-mask"],t):t(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"].kit=e["taiga-ui"].kit||{},e["taiga-ui"].kit.components=e["taiga-ui"].kit.components||{},e["taiga-ui"].kit.components["input-number"]={}),e.ng.core,e.ng.forms,e.cdk,e.core$1,e.ngPolymorpheus,e.ng.common,e["taiga-ui"].kit.directives,e.angular2TextMask)}(this,(function(e,t,n,i,o,r,a,u,l){"use strict";
2
2
  /*! *****************************************************************************
3
3
  Copyright (c) Microsoft Corporation.
4
4
 
@@ -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
- ***************************************************************************** */var u=function(e,t){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(e,t)};function l(e,t){function i(){this.constructor=e}u(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}function s(e,t,i,n){var r,o=arguments.length,a=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,i,n);else for(var u=e.length-1;u>=0;u--)(r=e[u])&&(a=(o<3?r(a):o>3?r(t,i,a):r(t,i))||a);return o>3&&a&&Object.defineProperty(t,i,a),a}function p(e,t){return function(i,n){t(i,n,e)}}var c=function(e){function o(t,i,n){var o=e.call(this,t,i)||this;return o.numberFormat=n,o.min=-1/0,o.max=1/0,o.decimal="not-zero",o.precision=2,o.prefix="",o.postfix="",o.mask=function(e,t,i,n){return{mask:r.tuiCreateNumberMask({allowNegative:e,decimalLimit:i,allowDecimal:"never"!==t,requireDecimal:"always"===t,decimalSymbol:o.numberFormat.decimalSeparator,thousandSymbol:o.numberFormat.thousandSeparator,autoCorrectDecimalSymbol:r.tuiEnableAutoCorrectDecimalSymbol(o.numberFormat)}),pipe:r.tuiCreateAutoCorrectedNumberPipe("always"===t?i:0,o.numberFormat.decimalSeparator,o.numberFormat.thousandSeparator,n,e),guide:!1}},o}var a;return l(o,e),a=o,Object.defineProperty(o.prototype,"nativeFocusableElement",{get:function(){return!this.primitiveTextfield||this.computedDisabled?null:this.primitiveTextfield.nativeFocusableElement},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"focused",{get:function(){return!!this.primitiveTextfield&&this.primitiveTextfield.focused},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"isNegativeAllowed",{get:function(){return this.min<0},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"inputMode",{get:function(){return"never"===this.decimal?"numeric":"decimal"},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"calculatedMaxLength",{get:function(){return 18+("never"!==this.decimal&&this.nativeValue.includes(this.numberFormat.decimalSeparator)?this.precision+1:0)+this.numberFormat.thousandSeparator.repeat(5).length},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"formattedValue",{get:function(){var e=this.value||0,t=Math.abs(e)%1>0,i="always"===this.decimal||t?this.precision:0,n=t?r.getFractionPartPadded(e,this.precision):"";return this.focused&&"always"!==this.decimal&&(i=n.length),r.formatNumber(e,i,this.numberFormat.decimalSeparator,this.numberFormat.thousandSeparator,this.numberFormat.zeroPadding)},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"computedValue",{get:function(){return this.focused?this.nativeValue:null===this.value?"":this.formattedValue},enumerable:!0,configurable:!0}),o.prototype.onZero=function(e){var t=this.nativeValue.split(this.numberFormat.decimalSeparator)[1]||"",i=this.nativeFocusableElement;t.length<this.precision||!i||!i.selectionStart||"0"!==this.nativeValue[i.selectionStart]||(e.preventDefault(),i.selectionStart++)},o.prototype.onValueChange=function(e){if(r.maskedMoneyValueIsEmpty(e))this.updateValue(null);else if(!this.isNativeValueNotFinished){var t=this.absoluteCapInputValue(e);null===t||isNaN(t)||(this.updateValue(t),t!==r.maskedNumberStringToNumber(e,this.numberFormat.decimalSeparator,this.numberFormat.thousandSeparator)&&(this.nativeValue=this.formattedValue))}},o.prototype.onKeyDown=function(e){r.TUI_DECIMAL_SYMBOLS.includes(e.key)&&("never"!==this.decimal?this.nativeValue.includes(this.numberFormat.decimalSeparator)&&(e.preventDefault(),this.setCaretAfterComma()):e.preventDefault())},o.prototype.onFocused=function(e){if(this.updateFocused(e),!e){var t=this.nativeNumberValue;if(isNaN(t))this.clear();else{var i=Math.min(this.max,Math.max(this.min,t));this.updateValue(i),this.nativeValue=this.formattedValue}}},o.prototype.onHovered=function(e){this.updateHovered(e)},o.prototype.onPressed=function(e){this.updatePressed(e)},Object.defineProperty(o.prototype,"isNativeValueNotFinished",{get:function(){var e=this.nativeNumberValue;return e<0?e>this.max:e<this.min},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"nativeValue",{get:function(){return this.nativeFocusableElement?this.nativeFocusableElement.value:""},set:function(e){this.primitiveTextfield&&this.nativeFocusableElement&&(this.primitiveTextfield.value=e,this.nativeFocusableElement.value=e)},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"nativeNumberValue",{get:function(){return r.maskedNumberStringToNumber(this.nativeValue,this.numberFormat.decimalSeparator,this.numberFormat.thousandSeparator)},enumerable:!0,configurable:!0}),o.prototype.clear=function(){this.nativeValue="",this.updateValue(null)},o.prototype.absoluteCapInputValue=function(e){var t=r.maskedNumberStringToNumber(e,this.numberFormat.decimalSeparator,this.numberFormat.thousandSeparator),i=t<0?Math.max(Math.max(this.min,Number.MIN_SAFE_INTEGER),t):Math.min(t,Math.min(this.max,Number.MAX_SAFE_INTEGER));return isNaN(i)||i<this.min||i>this.max?null:i},o.prototype.setCaretAfterComma=function(){if(this.nativeFocusableElement){var e=this.nativeValue.length-this.precision;this.nativeFocusableElement.setSelectionRange(e,e)}},o.ctorParameters=function(){return[{type:i.NgControl,decorators:[{type:t.Optional},{type:t.Self},{type:t.Inject,args:[i.NgControl]}]},{type:t.ChangeDetectorRef,decorators:[{type:t.Inject,args:[t.ChangeDetectorRef]}]},{type:void 0,decorators:[{type:t.Inject,args:[r.TUI_NUMBER_FORMAT]}]}]},s([t.ViewChild(r.TuiPrimitiveTextfieldComponent)],o.prototype,"primitiveTextfield",void 0),s([t.Input(),n.tuiDefaultProp()],o.prototype,"min",void 0),s([t.Input(),n.tuiDefaultProp()],o.prototype,"max",void 0),s([t.Input(),n.tuiDefaultProp()],o.prototype,"decimal",void 0),s([t.Input(),n.tuiDefaultProp()],o.prototype,"precision",void 0),s([t.Input(),n.tuiDefaultProp()],o.prototype,"prefix",void 0),s([t.Input(),n.tuiDefaultProp()],o.prototype,"postfix",void 0),s([t.HostListener("keydown.0",["$event"])],o.prototype,"onZero",null),o=a=s([t.Component({selector:"tui-input-number",template:'<tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldInputMode="decimal"\n class="textfield"\n [pseudoHovered]="pseudoHovered"\n [pseudoFocused]="computedFocused"\n [invalid]="computedInvalid"\n [tuiTextfieldMaxLength]="calculatedMaxLength"\n [readOnly]="readOnly"\n [disabled]="computedDisabled"\n [textMask]="isNegativeAllowed | tuiMapper: mask:decimal:precision:nativeFocusableElement"\n [value]="computedValue"\n [prefix]="prefix"\n [postfix]="postfix"\n [focusable]="focusable"\n (valueChange)="onValueChange($event)"\n (hoveredChange)="onHovered($event)"\n (focusedChange)="onFocused($event)"\n (pressedChange)="onPressed($event)"\n (keydown)="onKeyDown($event)"\n>\n <ng-content></ng-content>\n <ng-content select="input" ngProjectAs="input"></ng-content>\n</tui-primitive-textfield>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[{provide:n.TUI_FOCUSABLE_ITEM_ACCESSOR,useExisting:t.forwardRef((function(){return a}))},{provide:n.AbstractTuiControl,useExisting:t.forwardRef((function(){return a}))}],styles:[":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.textfield{border-radius:inherit;text-align:inherit}"]}),p(0,t.Optional()),p(0,t.Self()),p(0,t.Inject(i.NgControl)),p(1,t.Inject(t.ChangeDetectorRef)),p(2,t.Inject(r.TUI_NUMBER_FORMAT))],o)}(n.AbstractTuiNullableControl),d=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}var n;return l(i,e),n=i,Object.defineProperty(i.prototype,"value",{get:function(){return this.host.computedValue},enumerable:!0,configurable:!0}),i.prototype.onValueChange=function(e){this.host.onValueChange(e)},i.prototype.process=function(e){this.input=e},i.prototype.ngDoCheck=function(){this.input&&(this.input.maxLength=this.host.calculatedMaxLength,this.input.inputMode="decimal")},i=n=s([t.Directive({selector:"tui-input-number",providers:[{provide:r.TUI_TEXTFIELD_HOST,useExisting:t.forwardRef((function(){return n}))}]})],i)}(r.TuiAbstractTextfieldHost),m=function(){function e(){}return e=s([t.NgModule({imports:[a.TextMaskModule,n.TuiMapperPipeModule,r.TuiPrimitiveTextfieldModule,r.TuiTextfieldControllerModule,o.TuiValueAccessorModule],declarations:[c,d],exports:[c,d,r.TuiTextfieldComponent]})],e)}();e.TuiInputNumberComponent=c,e.TuiInputNumberDirective=d,e.TuiInputNumberModule=m,Object.defineProperty(e,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */var s=function(e,t){return(s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function p(e,t){function n(){this.constructor=e}s(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}function c(e,t,n,i){var o,r=arguments.length,a=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var u=e.length-1;u>=0;u--)(o=e[u])&&(a=(r<3?o(a):r>3?o(t,n,a):o(t,n))||a);return r>3&&a&&Object.defineProperty(t,n,a),a}function m(e,t){return function(n,i){t(n,i,e)}}var d=function(e){function a(t,n,i){var r=e.call(this,t,n)||this;return r.numberFormat=i,r.min=-1/0,r.max=1/0,r.decimal="not-zero",r.precision=2,r.prefix="",r.postfix="",r.mask=function(e,t,n,i){return{mask:o.tuiCreateNumberMask({allowNegative:e,decimalLimit:n,allowDecimal:"never"!==t,requireDecimal:"always"===t,decimalSymbol:r.numberFormat.decimalSeparator,thousandSymbol:r.numberFormat.thousandSeparator,autoCorrectDecimalSymbol:o.tuiEnableAutoCorrectDecimalSymbol(r.numberFormat)}),pipe:o.tuiCreateAutoCorrectedNumberPipe("always"===t?n:0,r.numberFormat.decimalSeparator,r.numberFormat.thousandSeparator,i,e),guide:!1}},r}var u;return p(a,e),u=a,Object.defineProperty(a.prototype,"nativeFocusableElement",{get:function(){return!this.primitiveTextfield||this.computedDisabled?null:this.primitiveTextfield.nativeFocusableElement},enumerable:!0,configurable:!0}),Object.defineProperty(a.prototype,"focused",{get:function(){return!!this.primitiveTextfield&&this.primitiveTextfield.focused},enumerable:!0,configurable:!0}),Object.defineProperty(a.prototype,"isNegativeAllowed",{get:function(){return this.min<0},enumerable:!0,configurable:!0}),Object.defineProperty(a.prototype,"inputMode",{get:function(){return"never"===this.decimal?"numeric":"decimal"},enumerable:!0,configurable:!0}),Object.defineProperty(a.prototype,"calculatedMaxLength",{get:function(){return 18+("never"!==this.decimal&&this.nativeValue.includes(this.numberFormat.decimalSeparator)?this.precision+1:0)+this.numberFormat.thousandSeparator.repeat(5).length},enumerable:!0,configurable:!0}),Object.defineProperty(a.prototype,"formattedValue",{get:function(){return this.getFormattedValue(this.value||0)},enumerable:!0,configurable:!0}),Object.defineProperty(a.prototype,"computedValue",{get:function(){return this.focused?this.nativeValue:null===this.value?"":this.formattedValue},enumerable:!0,configurable:!0}),a.prototype.onZero=function(e){var t=this.nativeValue.split(this.numberFormat.decimalSeparator)[1]||"",n=this.nativeFocusableElement;t.length<this.precision||!n||!n.selectionStart||"0"!==this.nativeValue[n.selectionStart]||(e.preventDefault(),n.selectionStart++)},a.prototype.onValueChange=function(e){if(o.maskedMoneyValueIsEmpty(e))this.updateValue(null);else if(!this.isNativeValueNotFinished){var t=this.absoluteCapInputValue(e);null===t||isNaN(t)||(this.updateValue(t),t!==o.maskedNumberStringToNumber(e,this.numberFormat.decimalSeparator,this.numberFormat.thousandSeparator)&&(this.nativeValue=this.formattedValue))}},a.prototype.onKeyDown=function(e){o.TUI_DECIMAL_SYMBOLS.includes(e.key)&&("never"!==this.decimal?this.nativeValue.includes(this.numberFormat.decimalSeparator)&&(e.preventDefault(),this.setCaretAfterComma()):e.preventDefault())},a.prototype.onFocused=function(e){if(this.updateFocused(e),!e){var t=this.nativeNumberValue;if(isNaN(t))this.clear();else{var n=Math.min(this.max,Math.max(this.min,t));this.updateValue(n),this.nativeValue=this.formattedValue}}},a.prototype.onHovered=function(e){this.updateHovered(e)},a.prototype.onPressed=function(e){this.updatePressed(e)},a.prototype.getFormattedValue=function(e){var t=Math.abs(e)%1>0,n="always"===this.decimal||t?this.precision:0,i=t?o.getFractionPartPadded(e,this.precision):"";return this.focused&&"always"!==this.decimal&&(n=i.length),o.formatNumber(e,n,this.numberFormat.decimalSeparator,this.numberFormat.thousandSeparator,this.numberFormat.zeroPadding)},Object.defineProperty(a.prototype,"isNativeValueNotFinished",{get:function(){var e=this.nativeNumberValue;return e<0?e>this.max:e<this.min},enumerable:!0,configurable:!0}),Object.defineProperty(a.prototype,"nativeValue",{get:function(){return this.nativeFocusableElement?this.nativeFocusableElement.value:""},set:function(e){this.primitiveTextfield&&this.nativeFocusableElement&&(this.primitiveTextfield.value=e,this.nativeFocusableElement.value=e)},enumerable:!0,configurable:!0}),Object.defineProperty(a.prototype,"nativeNumberValue",{get:function(){return o.maskedNumberStringToNumber(this.nativeValue,this.numberFormat.decimalSeparator,this.numberFormat.thousandSeparator)},enumerable:!0,configurable:!0}),a.prototype.clear=function(){this.nativeValue="",this.updateValue(null)},a.prototype.absoluteCapInputValue=function(e){var t=o.maskedNumberStringToNumber(e,this.numberFormat.decimalSeparator,this.numberFormat.thousandSeparator),n=t<0?Math.max(Math.max(this.min,Number.MIN_SAFE_INTEGER),t):Math.min(t,Math.min(this.max,Number.MAX_SAFE_INTEGER));return isNaN(n)||n<this.min||n>this.max?null:n},a.prototype.setCaretAfterComma=function(){if(this.nativeFocusableElement){var e=this.nativeValue.length-this.precision;this.nativeFocusableElement.setSelectionRange(e,e)}},a.ctorParameters=function(){return[{type:n.NgControl,decorators:[{type:t.Optional},{type:t.Self},{type:t.Inject,args:[n.NgControl]}]},{type:t.ChangeDetectorRef,decorators:[{type:t.Inject,args:[t.ChangeDetectorRef]}]},{type:void 0,decorators:[{type:t.Inject,args:[o.TUI_NUMBER_FORMAT]}]}]},c([t.ViewChild(o.TuiPrimitiveTextfieldComponent)],a.prototype,"primitiveTextfield",void 0),c([t.Input(),i.tuiDefaultProp()],a.prototype,"min",void 0),c([t.Input(),i.tuiDefaultProp()],a.prototype,"max",void 0),c([t.Input(),i.tuiDefaultProp()],a.prototype,"decimal",void 0),c([t.Input(),i.tuiDefaultProp()],a.prototype,"precision",void 0),c([t.Input(),i.tuiDefaultProp()],a.prototype,"prefix",void 0),c([t.Input(),i.tuiDefaultProp()],a.prototype,"postfix",void 0),c([t.ContentChild(r.PolymorpheusOutletComponent)],a.prototype,"polymorpheusValueContent",void 0),c([t.HostListener("keydown.0",["$event"])],a.prototype,"onZero",null),a=u=c([t.Component({selector:"tui-input-number",template:'<tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldInputMode="decimal"\n class="textfield"\n [pseudoHovered]="computedHovered"\n [pseudoFocused]="computedFocused"\n [pseudoPressed]="computedPressed"\n [invalid]="computedInvalid"\n [tuiTextfieldMaxLength]="calculatedMaxLength"\n [readOnly]="readOnly"\n [disabled]="computedDisabled"\n [textMask]="isNegativeAllowed | tuiMapper: mask:decimal:precision:nativeFocusableElement"\n [value]="computedValue"\n [prefix]="prefix"\n [postfix]="postfix"\n [focusable]="focusable"\n (valueChange)="onValueChange($event)"\n (hoveredChange)="onHovered($event)"\n (focusedChange)="onFocused($event)"\n (pressedChange)="onPressed($event)"\n (keydown)="onKeyDown($event)"\n>\n <ng-content></ng-content>\n <ng-content select="input" ngProjectAs="input"></ng-content>\n <div\n *ngIf="polymorpheusValueContent"\n polymorpheus-outlet\n [content]="valueContent"\n ></div>\n</tui-primitive-textfield>\n\n<ng-template #valueContent>\n <ng-content select="[polymorpheus-outlet]"></ng-content>\n</ng-template>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[{provide:i.TUI_FOCUSABLE_ITEM_ACCESSOR,useExisting:t.forwardRef((function(){return u}))},{provide:i.AbstractTuiControl,useExisting:t.forwardRef((function(){return u}))}],styles:[":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.textfield{border-radius:inherit;text-align:inherit}"]}),m(0,t.Optional()),m(0,t.Self()),m(0,t.Inject(n.NgControl)),m(1,t.Inject(t.ChangeDetectorRef)),m(2,t.Inject(o.TUI_NUMBER_FORMAT))],a)}(i.AbstractTuiNullableControl),f=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}var i;return p(n,e),i=n,Object.defineProperty(n.prototype,"value",{get:function(){return this.host.computedValue},enumerable:!0,configurable:!0}),n.prototype.onValueChange=function(e){this.host.onValueChange(e)},n.prototype.process=function(e){this.input=e},n.prototype.ngDoCheck=function(){this.input&&(this.input.maxLength=this.host.calculatedMaxLength,this.input.inputMode="decimal")},n=i=c([t.Directive({selector:"tui-input-number",providers:[{provide:o.TUI_TEXTFIELD_HOST,useExisting:t.forwardRef((function(){return i}))}]})],n)}(o.TuiAbstractTextfieldHost),h=function(){function e(){}return e=c([t.NgModule({imports:[a.CommonModule,l.TextMaskModule,i.TuiMapperPipeModule,o.TuiPrimitiveTextfieldModule,o.TuiTextfieldControllerModule,u.TuiValueAccessorModule,r.PolymorpheusModule],declarations:[d,f],exports:[d,f,o.TuiTextfieldComponent]})],e)}();e.TuiInputNumberComponent=d,e.TuiInputNumberDirective=f,e.TuiInputNumberModule=h,Object.defineProperty(e,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=taiga-ui-kit-components-input-number.umd.min.js.map