@taiga-ui/cdk 3.51.0-canary.d032cc6 → 3.52.0-canary.104df92
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.
- package/abstract/control.d.ts +6 -0
- package/abstract/interactive.d.ts +9 -0
- package/abstract/portal-host.d.ts +4 -0
- package/abstract/portal-service.d.ts +3 -0
- package/abstract/taiga-ui-cdk-abstract.d.ts +3 -0
- package/abstract/theme-switcher.d.ts +6 -0
- package/bundles/taiga-ui-cdk-abstract.umd.js +34 -0
- package/bundles/taiga-ui-cdk-abstract.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-classes.umd.js +9 -0
- package/bundles/taiga-ui-cdk-classes.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-coercion.umd.js +10 -0
- package/bundles/taiga-ui-cdk-coercion.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-components-alert-host.umd.js +8 -0
- package/bundles/taiga-ui-cdk-components-alert-host.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-components-dialog-host.umd.js +11 -0
- package/bundles/taiga-ui-cdk-components-dialog-host.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-components-dropdown-host.umd.js +12 -0
- package/bundles/taiga-ui-cdk-components-dropdown-host.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-components-scroll-controls.umd.js +4 -0
- package/bundles/taiga-ui-cdk-components-scroll-controls.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-components.umd.js +4 -0
- package/bundles/taiga-ui-cdk-components.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-constants.umd.js +109 -1
- package/bundles/taiga-ui-cdk-constants.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-date-time.umd.js +284 -0
- package/bundles/taiga-ui-cdk-date-time.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-decorators.umd.js +26 -0
- package/bundles/taiga-ui-cdk-decorators.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-active-zone.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-active-zone.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js +44 -1
- package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-autofilled.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-autofilled.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-checked.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-checked.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-click-outside.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-click-outside.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-control.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-control.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-copy-processor.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-copy-processor.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-drag.umd.js +10 -0
- package/bundles/taiga-ui-cdk-directives-drag.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-droppable.umd.js +5 -0
- package/bundles/taiga-ui-cdk-directives-droppable.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-element.umd.js +18 -0
- package/bundles/taiga-ui-cdk-directives-element.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-focus-trap.umd.js +17 -0
- package/bundles/taiga-ui-cdk-directives-focus-trap.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-focus-visible.umd.js +9 -0
- package/bundles/taiga-ui-cdk-directives-focus-visible.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-focusable.umd.js +10 -0
- package/bundles/taiga-ui-cdk-directives-focusable.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-focused.umd.js +9 -0
- package/bundles/taiga-ui-cdk-directives-focused.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-for-async.umd.js +7 -0
- package/bundles/taiga-ui-cdk-directives-for-async.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-for.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-for.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-high-dpi.umd.js +7 -0
- package/bundles/taiga-ui-cdk-directives-high-dpi.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-hovered.umd.js +7 -1
- package/bundles/taiga-ui-cdk-directives-hovered.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-item.umd.js +7 -0
- package/bundles/taiga-ui-cdk-directives-item.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-let.umd.js +17 -0
- package/bundles/taiga-ui-cdk-directives-let.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-media.umd.js +7 -0
- package/bundles/taiga-ui-cdk-directives-media.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-obscured.umd.js +7 -0
- package/bundles/taiga-ui-cdk-directives-obscured.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-overscroll.umd.js +10 -0
- package/bundles/taiga-ui-cdk-directives-overscroll.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-pan.umd.js +7 -0
- package/bundles/taiga-ui-cdk-directives-pan.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-platform.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-platform.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-portal.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-portal.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-pressed.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-pressed.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-prevent-default.umd.js +12 -0
- package/bundles/taiga-ui-cdk-directives-prevent-default.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-repeat-times.umd.js +11 -0
- package/bundles/taiga-ui-cdk-directives-repeat-times.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-resize.umd.js +7 -0
- package/bundles/taiga-ui-cdk-directives-resize.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-resizer.umd.js +5 -0
- package/bundles/taiga-ui-cdk-directives-resizer.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-swipe.umd.js +7 -0
- package/bundles/taiga-ui-cdk-directives-swipe.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-validator.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-validator.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-value-changes.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives-value-changes.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives-zoom.umd.js +7 -0
- package/bundles/taiga-ui-cdk-directives-zoom.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-directives.umd.js +4 -0
- package/bundles/taiga-ui-cdk-directives.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-enums.umd.js +8 -0
- package/bundles/taiga-ui-cdk-enums.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-exceptions.umd.js +4 -0
- package/bundles/taiga-ui-cdk-exceptions.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-interfaces.umd.js +3 -1
- package/bundles/taiga-ui-cdk-interfaces.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-observables.umd.js +34 -1
- package/bundles/taiga-ui-cdk-observables.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-pipes-filter.umd.js +4 -0
- package/bundles/taiga-ui-cdk-pipes-filter.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-pipes-is-present.umd.js +4 -0
- package/bundles/taiga-ui-cdk-pipes-is-present.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-pipes-keys.umd.js +4 -0
- package/bundles/taiga-ui-cdk-pipes-keys.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-pipes-mapper.umd.js +4 -0
- package/bundles/taiga-ui-cdk-pipes-mapper.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-pipes-replace.umd.js +7 -1
- package/bundles/taiga-ui-cdk-pipes-replace.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-pipes.umd.js +4 -0
- package/bundles/taiga-ui-cdk-pipes.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-services.umd.js +53 -5
- package/bundles/taiga-ui-cdk-services.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-tokens.umd.js +109 -5
- package/bundles/taiga-ui-cdk-tokens.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-types.umd.js +3 -1
- package/bundles/taiga-ui-cdk-types.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-utils-browser.umd.js +4 -0
- package/bundles/taiga-ui-cdk-utils-browser.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-utils-color.umd.js +10 -0
- package/bundles/taiga-ui-cdk-utils-color.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-utils-dom.umd.js +59 -3
- package/bundles/taiga-ui-cdk-utils-dom.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-utils-focus.umd.js +51 -0
- package/bundles/taiga-ui-cdk-utils-focus.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-utils-format.umd.js +7 -0
- package/bundles/taiga-ui-cdk-utils-format.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-utils-math.umd.js +38 -0
- package/bundles/taiga-ui-cdk-utils-math.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js +42 -6
- package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-utils-os.umd.js +14 -0
- package/bundles/taiga-ui-cdk-utils-os.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-utils-svg.umd.js +19 -1
- package/bundles/taiga-ui-cdk-utils-svg.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk-utils.umd.js +4 -0
- package/bundles/taiga-ui-cdk-utils.umd.js.map +1 -1
- package/bundles/taiga-ui-cdk.umd.js +4 -0
- package/bundles/taiga-ui-cdk.umd.js.map +1 -1
- package/classes/assert.d.ts +5 -0
- package/classes/taiga-ui-cdk-classes.d.ts +3 -0
- package/coercion/coerce-boolean-property.d.ts +4 -0
- package/coercion/taiga-ui-cdk-coercion.d.ts +3 -0
- package/components/alert-host/taiga-ui-cdk-components-alert-host.d.ts +3 -0
- package/components/dialog-host/dialog-host.component.d.ts +3 -0
- package/components/dialog-host/taiga-ui-cdk-components-dialog-host.d.ts +3 -0
- package/components/dropdown-host/dropdown-host.component.d.ts +3 -0
- package/components/dropdown-host/dropdown-portal.service.d.ts +3 -0
- package/components/dropdown-host/taiga-ui-cdk-components-dropdown-host.d.ts +3 -0
- package/components/scroll-controls/taiga-ui-cdk-components-scroll-controls.d.ts +3 -0
- package/components/taiga-ui-cdk-components.d.ts +3 -0
- package/constants/always-false-handler.d.ts +3 -0
- package/constants/always-true-handler.d.ts +3 -0
- package/constants/browser.d.ts +4 -0
- package/constants/empty.d.ts +5 -0
- package/constants/matcher.d.ts +19 -0
- package/constants/parent-animation.d.ts +6 -0
- package/constants/stringify.d.ts +3 -0
- package/constants/taiga-ui-cdk-constants.d.ts +3 -0
- package/constants/unicode-chars.d.ts +51 -0
- package/constants/used-icons.d.ts +6 -0
- package/constants/version.d.ts +1 -1
- package/constants/version.js +1 -1
- package/date-time/date-fillers.d.ts +11 -0
- package/date-time/date-format.d.ts +3 -0
- package/date-time/date-separator.d.ts +3 -0
- package/date-time/day-range.d.ts +33 -0
- package/date-time/day.d.ts +91 -0
- package/date-time/month-range.d.ts +3 -0
- package/date-time/month.d.ts +56 -0
- package/date-time/taiga-ui-cdk-date-time.d.ts +3 -0
- package/date-time/time.d.ts +36 -0
- package/date-time/year.d.ts +42 -0
- package/decorators/debounce.d.ts +4 -0
- package/decorators/default-prop.d.ts +9 -0
- package/decorators/pure.d.ts +18 -0
- package/decorators/required-setter.d.ts +9 -0
- package/decorators/taiga-ui-cdk-decorators.d.ts +3 -0
- package/directives/active-zone/taiga-ui-cdk-directives-active-zone.d.ts +3 -0
- package/directives/auto-focus/handlers/ios.handler.d.ts +39 -0
- package/directives/auto-focus/taiga-ui-cdk-directives-auto-focus.d.ts +3 -0
- package/directives/autofilled/taiga-ui-cdk-directives-autofilled.d.ts +3 -0
- package/directives/checked/taiga-ui-cdk-directives-checked.d.ts +3 -0
- package/directives/click-outside/taiga-ui-cdk-directives-click-outside.d.ts +3 -0
- package/directives/control/taiga-ui-cdk-directives-control.d.ts +3 -0
- package/directives/copy-processor/taiga-ui-cdk-directives-copy-processor.d.ts +3 -0
- package/directives/drag/drag.directive.d.ts +3 -0
- package/directives/drag/drag.module.d.ts +3 -0
- package/directives/drag/taiga-ui-cdk-directives-drag.d.ts +3 -0
- package/directives/droppable/taiga-ui-cdk-directives-droppable.d.ts +3 -0
- package/directives/element/taiga-ui-cdk-directives-element.d.ts +3 -0
- package/directives/focus-trap/taiga-ui-cdk-directives-focus-trap.d.ts +3 -0
- package/directives/focus-visible/focus-visible.directive.d.ts +5 -0
- package/directives/focus-visible/taiga-ui-cdk-directives-focus-visible.d.ts +3 -0
- package/directives/focusable/focusable.directive.d.ts +6 -0
- package/directives/focusable/taiga-ui-cdk-directives-focusable.d.ts +3 -0
- package/directives/focused/focused.directive.d.ts +5 -0
- package/directives/focused/taiga-ui-cdk-directives-focused.d.ts +3 -0
- package/directives/for/taiga-ui-cdk-directives-for.d.ts +3 -0
- package/directives/for-async/for-async.module.d.ts +3 -0
- package/directives/for-async/taiga-ui-cdk-directives-for-async.d.ts +3 -0
- package/directives/high-dpi/high-dpi.directive.d.ts +3 -0
- package/directives/high-dpi/taiga-ui-cdk-directives-high-dpi.d.ts +3 -0
- package/directives/hovered/taiga-ui-cdk-directives-hovered.d.ts +3 -0
- package/directives/item/item.directive.d.ts +3 -0
- package/directives/item/taiga-ui-cdk-directives-item.d.ts +3 -0
- package/directives/let/let-context.d.ts +3 -0
- package/directives/let/let.directive.d.ts +10 -0
- package/directives/let/taiga-ui-cdk-directives-let.d.ts +3 -0
- package/directives/media/taiga-ui-cdk-directives-media.d.ts +3 -0
- package/directives/obscured/obscured.directive.d.ts +3 -0
- package/directives/obscured/taiga-ui-cdk-directives-obscured.d.ts +3 -0
- package/directives/overscroll/overscroll.directive.d.ts +3 -0
- package/directives/overscroll/taiga-ui-cdk-directives-overscroll.d.ts +3 -0
- package/directives/pan/pan.module.d.ts +3 -0
- package/directives/pan/taiga-ui-cdk-directives-pan.d.ts +3 -0
- package/directives/platform/taiga-ui-cdk-directives-platform.d.ts +3 -0
- package/directives/portal/taiga-ui-cdk-directives-portal.d.ts +3 -0
- package/directives/pressed/taiga-ui-cdk-directives-pressed.d.ts +3 -0
- package/directives/prevent-default/prevent-default.directive.d.ts +5 -0
- package/directives/prevent-default/prevent-default.module.d.ts +3 -0
- package/directives/prevent-default/taiga-ui-cdk-directives-prevent-default.d.ts +3 -0
- package/directives/repeat-times/repeat-times.directive.d.ts +7 -0
- package/directives/repeat-times/taiga-ui-cdk-directives-repeat-times.d.ts +3 -0
- package/directives/resize/resize.module.d.ts +3 -0
- package/directives/resize/taiga-ui-cdk-directives-resize.d.ts +3 -0
- package/directives/resizer/taiga-ui-cdk-directives-resizer.d.ts +3 -0
- package/directives/swipe/swipe.module.d.ts +3 -0
- package/directives/swipe/taiga-ui-cdk-directives-swipe.d.ts +3 -0
- package/directives/taiga-ui-cdk-directives.d.ts +3 -0
- package/directives/validator/taiga-ui-cdk-directives-validator.d.ts +3 -0
- package/directives/value-changes/taiga-ui-cdk-directives-value-changes.d.ts +3 -0
- package/directives/zoom/taiga-ui-cdk-directives-zoom.d.ts +3 -0
- package/directives/zoom/zoom.module.d.ts +3 -0
- package/enums/taiga-ui-cdk-enums.d.ts +3 -0
- package/esm2015/abstract/control.js +7 -1
- package/esm2015/abstract/interactive.js +11 -1
- package/esm2015/abstract/portal-host.js +6 -1
- package/esm2015/abstract/portal-service.js +4 -1
- package/esm2015/abstract/taiga-ui-cdk-abstract.js +4 -1
- package/esm2015/abstract/theme-switcher.js +7 -1
- package/esm2015/classes/assert.js +6 -1
- package/esm2015/classes/taiga-ui-cdk-classes.js +4 -1
- package/esm2015/coercion/coerce-boolean-property.js +7 -1
- package/esm2015/coercion/taiga-ui-cdk-coercion.js +4 -1
- package/esm2015/components/alert-host/alert-host.component.js +5 -1
- package/esm2015/components/alert-host/taiga-ui-cdk-components-alert-host.js +4 -1
- package/esm2015/components/dialog-host/dialog-host.component.js +8 -1
- package/esm2015/components/dialog-host/taiga-ui-cdk-components-dialog-host.js +4 -1
- package/esm2015/components/dropdown-host/dropdown-host.component.js +6 -1
- package/esm2015/components/dropdown-host/dropdown-portal.service.js +4 -1
- package/esm2015/components/dropdown-host/taiga-ui-cdk-components-dropdown-host.js +4 -1
- package/esm2015/components/scroll-controls/taiga-ui-cdk-components-scroll-controls.js +4 -1
- package/esm2015/components/taiga-ui-cdk-components.js +4 -1
- package/esm2015/constants/always-false-handler.js +5 -1
- package/esm2015/constants/always-true-handler.js +5 -1
- package/esm2015/constants/browser.js +5 -1
- package/esm2015/constants/empty.js +6 -1
- package/esm2015/constants/matcher.js +20 -1
- package/esm2015/constants/parent-animation.js +7 -1
- package/esm2015/constants/stringify.js +4 -1
- package/esm2015/constants/svg-node-filter.js +3 -1
- package/esm2015/constants/taiga-ui-cdk-constants.js +4 -1
- package/esm2015/constants/unicode-chars.js +52 -1
- package/esm2015/constants/used-icons.js +7 -1
- package/esm2015/constants/version.js +2 -2
- package/esm2015/date-time/date-fillers.js +12 -1
- package/esm2015/date-time/date-format.js +4 -1
- package/esm2015/date-time/date-separator.js +4 -1
- package/esm2015/date-time/day-range.js +34 -1
- package/esm2015/date-time/day.js +94 -1
- package/esm2015/date-time/month-range.js +4 -1
- package/esm2015/date-time/month.js +57 -1
- package/esm2015/date-time/taiga-ui-cdk-date-time.js +4 -1
- package/esm2015/date-time/time.js +37 -1
- package/esm2015/date-time/year.js +43 -1
- package/esm2015/decorators/debounce.js +5 -1
- package/esm2015/decorators/default-prop.js +10 -1
- package/esm2015/decorators/required-setter.js +10 -1
- package/esm2015/decorators/taiga-ui-cdk-decorators.js +4 -1
- package/esm2015/directives/active-zone/taiga-ui-cdk-directives-active-zone.js +4 -1
- package/esm2015/directives/auto-focus/autofocus.options.js +3 -2
- package/esm2015/directives/auto-focus/handlers/ios.handler.js +40 -1
- package/esm2015/directives/auto-focus/taiga-ui-cdk-directives-auto-focus.js +4 -1
- package/esm2015/directives/autofilled/taiga-ui-cdk-directives-autofilled.js +4 -1
- package/esm2015/directives/checked/taiga-ui-cdk-directives-checked.js +4 -1
- package/esm2015/directives/click-outside/taiga-ui-cdk-directives-click-outside.js +4 -1
- package/esm2015/directives/control/taiga-ui-cdk-directives-control.js +4 -1
- package/esm2015/directives/copy-processor/taiga-ui-cdk-directives-copy-processor.js +4 -1
- package/esm2015/directives/drag/drag.directive.js +4 -1
- package/esm2015/directives/drag/drag.module.js +4 -1
- package/esm2015/directives/drag/taiga-ui-cdk-directives-drag.js +4 -1
- package/esm2015/directives/droppable/droppable.directive.js +2 -1
- package/esm2015/directives/droppable/taiga-ui-cdk-directives-droppable.js +4 -1
- package/esm2015/directives/element/element.directive.js +15 -1
- package/esm2015/directives/element/taiga-ui-cdk-directives-element.js +4 -1
- package/esm2015/directives/focus-trap/focus-trap.directive.js +14 -1
- package/esm2015/directives/focus-trap/taiga-ui-cdk-directives-focus-trap.js +4 -1
- package/esm2015/directives/focus-visible/focus-visible.directive.js +6 -1
- package/esm2015/directives/focus-visible/taiga-ui-cdk-directives-focus-visible.js +4 -1
- package/esm2015/directives/focusable/focusable.directive.js +7 -1
- package/esm2015/directives/focusable/taiga-ui-cdk-directives-focusable.js +4 -1
- package/esm2015/directives/focused/focused.directive.js +6 -1
- package/esm2015/directives/focused/taiga-ui-cdk-directives-focused.js +4 -1
- package/esm2015/directives/for/taiga-ui-cdk-directives-for.js +4 -1
- package/esm2015/directives/for-async/for-async.module.js +4 -1
- package/esm2015/directives/for-async/taiga-ui-cdk-directives-for-async.js +4 -1
- package/esm2015/directives/high-dpi/high-dpi.directive.js +4 -1
- package/esm2015/directives/high-dpi/taiga-ui-cdk-directives-high-dpi.js +4 -1
- package/esm2015/directives/hovered/hovered.service.js +4 -2
- package/esm2015/directives/hovered/taiga-ui-cdk-directives-hovered.js +4 -1
- package/esm2015/directives/item/item.directive.js +4 -1
- package/esm2015/directives/item/taiga-ui-cdk-directives-item.js +4 -1
- package/esm2015/directives/let/let-context.js +4 -1
- package/esm2015/directives/let/let.directive.js +11 -1
- package/esm2015/directives/let/taiga-ui-cdk-directives-let.js +4 -1
- package/esm2015/directives/media/media.directive.js +4 -1
- package/esm2015/directives/media/taiga-ui-cdk-directives-media.js +4 -1
- package/esm2015/directives/obscured/obscured.directive.js +4 -1
- package/esm2015/directives/obscured/taiga-ui-cdk-directives-obscured.js +4 -1
- package/esm2015/directives/overscroll/overscroll.directive.js +7 -1
- package/esm2015/directives/overscroll/taiga-ui-cdk-directives-overscroll.js +4 -1
- package/esm2015/directives/pan/pan.module.js +4 -1
- package/esm2015/directives/pan/taiga-ui-cdk-directives-pan.js +4 -1
- package/esm2015/directives/platform/taiga-ui-cdk-directives-platform.js +4 -1
- package/esm2015/directives/portal/taiga-ui-cdk-directives-portal.js +4 -1
- package/esm2015/directives/pressed/taiga-ui-cdk-directives-pressed.js +4 -1
- package/esm2015/directives/prevent-default/prevent-default.directive.js +6 -1
- package/esm2015/directives/prevent-default/prevent-default.module.js +4 -1
- package/esm2015/directives/prevent-default/taiga-ui-cdk-directives-prevent-default.js +4 -1
- package/esm2015/directives/repeat-times/repeat-times.directive.js +8 -1
- package/esm2015/directives/repeat-times/taiga-ui-cdk-directives-repeat-times.js +4 -1
- package/esm2015/directives/resize/resize.module.js +4 -1
- package/esm2015/directives/resize/taiga-ui-cdk-directives-resize.js +4 -1
- package/esm2015/directives/resizer/resizer.directive.js +2 -1
- package/esm2015/directives/resizer/taiga-ui-cdk-directives-resizer.js +4 -1
- package/esm2015/directives/swipe/swipe.module.js +4 -1
- package/esm2015/directives/swipe/taiga-ui-cdk-directives-swipe.js +4 -1
- package/esm2015/directives/taiga-ui-cdk-directives.js +4 -1
- package/esm2015/directives/validator/taiga-ui-cdk-directives-validator.js +4 -1
- package/esm2015/directives/value-changes/taiga-ui-cdk-directives-value-changes.js +4 -1
- package/esm2015/directives/zoom/taiga-ui-cdk-directives-zoom.js +4 -1
- package/esm2015/directives/zoom/zoom.module.js +4 -1
- package/esm2015/enums/day-of-week.js +3 -1
- package/esm2015/enums/month-number.js +3 -1
- package/esm2015/enums/taiga-ui-cdk-enums.js +4 -1
- package/esm2015/exceptions/taiga-ui-cdk-exceptions.js +4 -1
- package/esm2015/interfaces/taiga-ui-cdk-interfaces.js +4 -1
- package/esm2015/observables/control-value.js +4 -1
- package/esm2015/observables/drag-and-drop-from.js +3 -1
- package/esm2015/observables/focus-visible-observable.js +6 -2
- package/esm2015/observables/is-alive.js +4 -1
- package/esm2015/observables/items-query-list-observable.js +7 -1
- package/esm2015/observables/mouse-drag-finish-from.js +5 -1
- package/esm2015/observables/scroll-from.js +4 -1
- package/esm2015/observables/taiga-ui-cdk-observables.js +4 -1
- package/esm2015/observables/typed-from-event.js +5 -1
- package/esm2015/pipes/filter/taiga-ui-cdk-pipes-filter.js +4 -1
- package/esm2015/pipes/is-present/taiga-ui-cdk-pipes-is-present.js +4 -1
- package/esm2015/pipes/keys/taiga-ui-cdk-pipes-keys.js +4 -1
- package/esm2015/pipes/mapper/taiga-ui-cdk-pipes-mapper.js +4 -1
- package/esm2015/pipes/replace/replace.pipe.js +4 -2
- package/esm2015/pipes/replace/taiga-ui-cdk-pipes-replace.js +4 -1
- package/esm2015/pipes/taiga-ui-cdk-pipes.js +4 -1
- package/esm2015/services/destroy.service.js +9 -1
- package/esm2015/services/directive-styles.service.js +4 -1
- package/esm2015/services/focus-visible.service.js +6 -1
- package/esm2015/services/id.service.js +4 -1
- package/esm2015/services/obscured.service.js +10 -2
- package/esm2015/services/pan.service.js +4 -2
- package/esm2015/services/parents-scroll.service.js +7 -2
- package/esm2015/services/resize.service.js +8 -2
- package/esm2015/services/static-request.service.js +5 -2
- package/esm2015/services/taiga-ui-cdk-services.js +4 -1
- package/esm2015/taiga-ui-cdk.js +4 -1
- package/esm2015/tokens/active-element.js +26 -4
- package/esm2015/tokens/alerts.js +4 -1
- package/esm2015/tokens/default-renderer.js +10 -2
- package/esm2015/tokens/dialogs.js +5 -1
- package/esm2015/tokens/ensure-base-href.js +4 -1
- package/esm2015/tokens/focusable-item-accessor.js +4 -1
- package/esm2015/tokens/is-android.js +4 -1
- package/esm2015/tokens/is-apple.js +4 -1
- package/esm2015/tokens/is-chromium.js +4 -1
- package/esm2015/tokens/is-cypress.js +5 -1
- package/esm2015/tokens/is-e2e.js +4 -1
- package/esm2015/tokens/is-firefox.js +4 -1
- package/esm2015/tokens/is-ios.js +4 -1
- package/esm2015/tokens/is-mobile.js +5 -1
- package/esm2015/tokens/is-playwright.js +4 -1
- package/esm2015/tokens/is-webkit.js +4 -1
- package/esm2015/tokens/platform.js +2 -1
- package/esm2015/tokens/range.js +4 -1
- package/esm2015/tokens/removed-element.js +4 -1
- package/esm2015/tokens/scroll-ref.js +4 -1
- package/esm2015/tokens/swipe-options.js +4 -1
- package/esm2015/tokens/taiga-ui-cdk-tokens.js +4 -1
- package/esm2015/tokens/take-only-trusted-events.js +7 -1
- package/esm2015/tokens/window-height.js +4 -1
- package/esm2015/tokens/zoom-options.js +4 -1
- package/esm2015/types/taiga-ui-cdk-types.js +4 -1
- package/esm2015/utils/browser/taiga-ui-cdk-utils-browser.js +4 -1
- package/esm2015/utils/color/hex-to-rgba.js +2 -1
- package/esm2015/utils/color/hsv-to-rgb.js +4 -1
- package/esm2015/utils/color/rgb-to-hsv.js +2 -1
- package/esm2015/utils/color/rgba-to-hex.js +2 -1
- package/esm2015/utils/color/taiga-ui-cdk-utils-color.js +4 -1
- package/esm2015/utils/dom/element-checks.js +2 -1
- package/esm2015/utils/dom/get-actual-target.js +4 -1
- package/esm2015/utils/dom/get-clipboard-data-text.js +4 -1
- package/esm2015/utils/dom/get-element-obscurers.js +10 -1
- package/esm2015/utils/dom/get-element-offset.js +8 -1
- package/esm2015/utils/dom/get-scroll-parent.js +7 -1
- package/esm2015/utils/dom/get-selected-text.js +9 -1
- package/esm2015/utils/dom/is-inside-iframe.js +4 -1
- package/esm2015/utils/dom/is-node-in.js +8 -1
- package/esm2015/utils/dom/retarget-boundary-crossing.js +9 -4
- package/esm2015/utils/dom/taiga-ui-cdk-utils-dom.js +4 -1
- package/esm2015/utils/focus/blur-native-focused.js +4 -1
- package/esm2015/utils/focus/get-closest-focusable.js +5 -1
- package/esm2015/utils/focus/get-native-focused.js +6 -1
- package/esm2015/utils/focus/is-native-focused-in.js +8 -1
- package/esm2015/utils/focus/is-native-focused.js +9 -1
- package/esm2015/utils/focus/is-native-keyboard-focusable.js +7 -1
- package/esm2015/utils/focus/move-focus.js +8 -1
- package/esm2015/utils/focus/set-native-mouse-focused.js +8 -1
- package/esm2015/utils/focus/taiga-ui-cdk-utils-focus.js +4 -1
- package/esm2015/utils/format/px.js +4 -1
- package/esm2015/utils/format/taiga-ui-cdk-utils-format.js +4 -1
- package/esm2015/utils/math/clamp.js +8 -1
- package/esm2015/utils/math/normalize-to-int-number.js +9 -1
- package/esm2015/utils/math/quantize.js +7 -1
- package/esm2015/utils/math/round.js +8 -1
- package/esm2015/utils/math/sum.js +4 -1
- package/esm2015/utils/math/taiga-ui-cdk-utils-math.js +4 -1
- package/esm2015/utils/math/to-radians.js +4 -1
- package/esm2015/utils/miscellaneous/create-options.js +2 -1
- package/esm2015/utils/miscellaneous/flat-length.js +6 -1
- package/esm2015/utils/miscellaneous/get-original-array-from-query-list.js +7 -1
- package/esm2015/utils/miscellaneous/is-number.js +2 -1
- package/esm2015/utils/miscellaneous/is-object.js +2 -1
- package/esm2015/utils/miscellaneous/is-string.js +2 -1
- package/esm2015/utils/miscellaneous/is-valid-url.js +8 -7
- package/esm2015/utils/miscellaneous/nullable-same.js +9 -1
- package/esm2015/utils/miscellaneous/object-from-entries.js +9 -1
- package/esm2015/utils/miscellaneous/taiga-ui-cdk-utils-miscellaneous.js +4 -1
- package/esm2015/utils/os/is-apple-platform.js +11 -1
- package/esm2015/utils/os/taiga-ui-cdk-utils-os.js +4 -1
- package/esm2015/utils/svg/svg-linear-gradient-processor.js +16 -2
- package/esm2015/utils/svg/taiga-ui-cdk-utils-svg.js +4 -1
- package/esm2015/utils/taiga-ui-cdk-utils.js +4 -1
- package/exceptions/taiga-ui-cdk-exceptions.d.ts +3 -0
- package/fesm2015/taiga-ui-cdk-abstract.js +34 -0
- package/fesm2015/taiga-ui-cdk-abstract.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-classes.js +9 -0
- package/fesm2015/taiga-ui-cdk-classes.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-coercion.js +10 -0
- package/fesm2015/taiga-ui-cdk-coercion.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-components-alert-host.js +8 -0
- package/fesm2015/taiga-ui-cdk-components-alert-host.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-components-dialog-host.js +11 -0
- package/fesm2015/taiga-ui-cdk-components-dialog-host.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-components-dropdown-host.js +12 -0
- package/fesm2015/taiga-ui-cdk-components-dropdown-host.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-components-scroll-controls.js +4 -0
- package/fesm2015/taiga-ui-cdk-components-scroll-controls.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-components.js +4 -0
- package/fesm2015/taiga-ui-cdk-components.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-constants.js +109 -1
- package/fesm2015/taiga-ui-cdk-constants.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-date-time.js +284 -0
- package/fesm2015/taiga-ui-cdk-date-time.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-decorators.js +26 -0
- package/fesm2015/taiga-ui-cdk-decorators.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-active-zone.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-active-zone.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-auto-focus.js +44 -1
- package/fesm2015/taiga-ui-cdk-directives-auto-focus.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-autofilled.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-autofilled.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-checked.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-checked.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-click-outside.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-click-outside.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-control.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-control.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-copy-processor.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-copy-processor.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-drag.js +10 -0
- package/fesm2015/taiga-ui-cdk-directives-drag.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-droppable.js +5 -0
- package/fesm2015/taiga-ui-cdk-directives-droppable.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-element.js +18 -0
- package/fesm2015/taiga-ui-cdk-directives-element.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-focus-trap.js +17 -0
- package/fesm2015/taiga-ui-cdk-directives-focus-trap.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-focus-visible.js +9 -0
- package/fesm2015/taiga-ui-cdk-directives-focus-visible.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-focusable.js +10 -0
- package/fesm2015/taiga-ui-cdk-directives-focusable.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-focused.js +9 -0
- package/fesm2015/taiga-ui-cdk-directives-focused.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-for-async.js +7 -0
- package/fesm2015/taiga-ui-cdk-directives-for-async.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-for.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-for.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-high-dpi.js +7 -0
- package/fesm2015/taiga-ui-cdk-directives-high-dpi.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-hovered.js +7 -1
- package/fesm2015/taiga-ui-cdk-directives-hovered.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-item.js +7 -0
- package/fesm2015/taiga-ui-cdk-directives-item.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-let.js +17 -0
- package/fesm2015/taiga-ui-cdk-directives-let.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-media.js +7 -0
- package/fesm2015/taiga-ui-cdk-directives-media.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-obscured.js +7 -0
- package/fesm2015/taiga-ui-cdk-directives-obscured.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-overscroll.js +10 -0
- package/fesm2015/taiga-ui-cdk-directives-overscroll.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-pan.js +7 -0
- package/fesm2015/taiga-ui-cdk-directives-pan.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-platform.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-platform.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-portal.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-portal.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-pressed.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-pressed.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-prevent-default.js +12 -0
- package/fesm2015/taiga-ui-cdk-directives-prevent-default.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-repeat-times.js +11 -0
- package/fesm2015/taiga-ui-cdk-directives-repeat-times.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-resize.js +7 -0
- package/fesm2015/taiga-ui-cdk-directives-resize.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-resizer.js +5 -0
- package/fesm2015/taiga-ui-cdk-directives-resizer.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-swipe.js +7 -0
- package/fesm2015/taiga-ui-cdk-directives-swipe.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-validator.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-validator.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-value-changes.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives-value-changes.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives-zoom.js +7 -0
- package/fesm2015/taiga-ui-cdk-directives-zoom.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-directives.js +4 -0
- package/fesm2015/taiga-ui-cdk-directives.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-enums.js +8 -0
- package/fesm2015/taiga-ui-cdk-enums.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-exceptions.js +4 -0
- package/fesm2015/taiga-ui-cdk-exceptions.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-interfaces.js +3 -1
- package/fesm2015/taiga-ui-cdk-interfaces.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-observables.js +34 -1
- package/fesm2015/taiga-ui-cdk-observables.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-pipes-filter.js +4 -0
- package/fesm2015/taiga-ui-cdk-pipes-filter.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-pipes-is-present.js +4 -0
- package/fesm2015/taiga-ui-cdk-pipes-is-present.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-pipes-keys.js +4 -0
- package/fesm2015/taiga-ui-cdk-pipes-keys.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-pipes-mapper.js +4 -0
- package/fesm2015/taiga-ui-cdk-pipes-mapper.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-pipes-replace.js +7 -1
- package/fesm2015/taiga-ui-cdk-pipes-replace.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-pipes.js +4 -0
- package/fesm2015/taiga-ui-cdk-pipes.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-services.js +52 -5
- package/fesm2015/taiga-ui-cdk-services.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-tokens.js +108 -4
- package/fesm2015/taiga-ui-cdk-tokens.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-types.js +3 -1
- package/fesm2015/taiga-ui-cdk-types.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-utils-browser.js +4 -0
- package/fesm2015/taiga-ui-cdk-utils-browser.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-utils-color.js +10 -0
- package/fesm2015/taiga-ui-cdk-utils-color.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-utils-dom.js +59 -3
- package/fesm2015/taiga-ui-cdk-utils-dom.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-utils-focus.js +51 -0
- package/fesm2015/taiga-ui-cdk-utils-focus.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-utils-format.js +7 -0
- package/fesm2015/taiga-ui-cdk-utils-format.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-utils-math.js +38 -0
- package/fesm2015/taiga-ui-cdk-utils-math.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js +42 -6
- package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-utils-os.js +14 -0
- package/fesm2015/taiga-ui-cdk-utils-os.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-utils-svg.js +19 -1
- package/fesm2015/taiga-ui-cdk-utils-svg.js.map +1 -1
- package/fesm2015/taiga-ui-cdk-utils.js +4 -0
- package/fesm2015/taiga-ui-cdk-utils.js.map +1 -1
- package/fesm2015/taiga-ui-cdk.js +4 -0
- package/fesm2015/taiga-ui-cdk.js.map +1 -1
- package/interfaces/control-value-transformer.d.ts +3 -0
- package/interfaces/day-like.d.ts +3 -0
- package/interfaces/focusable-element-accessor.d.ts +4 -0
- package/interfaces/month-like.d.ts +3 -0
- package/interfaces/taiga-ui-cdk-interfaces.d.ts +3 -0
- package/interfaces/year-like.d.ts +3 -0
- package/observables/control-value.d.ts +3 -0
- package/observables/is-alive.d.ts +3 -0
- package/observables/items-query-list-observable.d.ts +6 -0
- package/observables/mouse-drag-finish-from.d.ts +4 -0
- package/observables/scroll-from.d.ts +3 -0
- package/observables/taiga-ui-cdk-observables.d.ts +3 -0
- package/package.json +7 -5
- package/pipes/filter/filter.pipe.d.ts +7 -0
- package/pipes/filter/taiga-ui-cdk-pipes-filter.d.ts +3 -0
- package/pipes/is-present/taiga-ui-cdk-pipes-is-present.d.ts +3 -0
- package/pipes/keys/taiga-ui-cdk-pipes-keys.d.ts +3 -0
- package/pipes/mapper/mapper.pipe.d.ts +7 -0
- package/pipes/mapper/taiga-ui-cdk-pipes-mapper.d.ts +3 -0
- package/pipes/replace/taiga-ui-cdk-pipes-replace.d.ts +3 -0
- package/pipes/taiga-ui-cdk-pipes.d.ts +3 -0
- package/schematics/constants/file-globs.js +3 -1
- package/schematics/index.d.ts +0 -1
- package/schematics/index.js +0 -1
- package/schematics/ng-add/index.js +1 -0
- package/schematics/ng-add/schema.d.ts +12 -0
- package/schematics/ng-update/interfaces/index.d.ts +12 -0
- package/schematics/ng-update/interfaces/index.js +15 -0
- package/schematics/ng-update/{v3/interfaces/replaceable-attribute-value.d.ts → interfaces/replacement-attribute-value.d.ts} +1 -1
- package/schematics/ng-update/interfaces/{replaceable-attribute.d.ts → replacement-attribute.d.ts} +1 -1
- package/schematics/ng-update/interfaces/{replacement-const.d.ts → replacement-identifier.d.ts} +1 -1
- package/schematics/ng-update/interfaces/replacement-service.d.ts +2 -2
- package/schematics/ng-update/interfaces/replacement-tag.d.ts +5 -0
- package/schematics/ng-update/interfaces/{type-to-rename.d.ts → replacement-type.d.ts} +1 -1
- package/schematics/ng-update/steps/icons/replace-imports.d.ts +2 -2
- package/schematics/ng-update/steps/rename-types.d.ts +2 -2
- package/schematics/ng-update/steps/rename-types.js +1 -1
- package/schematics/ng-update/steps/replace-enums.js +2 -2
- package/schematics/ng-update/steps/replace-identifier.d.ts +4 -0
- package/schematics/ng-update/steps/{replace-const.js → replace-identifier.js} +8 -8
- package/schematics/ng-update/steps/replace-services.js +1 -1
- package/schematics/ng-update/steps/show-warnings.js +5 -0
- package/schematics/ng-update/utils/templates/remove-inputs.d.ts +10 -0
- package/schematics/ng-update/utils/templates/remove-inputs.js +19 -0
- package/schematics/ng-update/utils/templates/replace-attr-values.d.ts +3 -3
- package/schematics/ng-update/utils/templates/replace-attr-values.js +2 -2
- package/schematics/ng-update/utils/templates/replace-attrs.d.ts +10 -0
- package/schematics/ng-update/utils/templates/replace-attrs.js +20 -0
- package/schematics/ng-update/utils/templates/replace-tags.d.ts +10 -0
- package/schematics/ng-update/utils/templates/replace-tags.js +19 -0
- package/schematics/ng-update/v3/constants/breakpoints.js +2 -0
- package/schematics/ng-update/v3/constants/constants.d.ts +2 -2
- package/schematics/ng-update/v3/constants/deprecated-functions.d.ts +2 -2
- package/schematics/ng-update/v3/constants/enums.js +4 -0
- package/schematics/ng-update/v3/constants/templates.d.ts +12 -7
- package/schematics/ng-update/v3/constants/templates.js +5 -0
- package/schematics/ng-update/v3/constants/types.d.ts +2 -2
- package/schematics/ng-update/v3/index.d.ts +0 -1
- package/schematics/ng-update/v3/index.js +7 -16
- package/schematics/ng-update/v3/steps/migrate-date-time.js +18 -0
- package/schematics/ng-update/v3/steps/migrate-polymorpheus.js +1 -1
- package/schematics/ng-update/v3/steps/migrate-progress.js +3 -1
- package/schematics/ng-update/v3/steps/migrate-sliders/migrate-input-range.js +6 -0
- package/schematics/ng-update/v3/steps/migrate-sliders/migrate-input-slider.js +5 -0
- package/schematics/ng-update/v3/steps/migrate-taiga-proprietary-icons.js +1 -0
- package/schematics/ng-update/v3/steps/migrate-templates.js +19 -40
- package/schematics/ng-update/v3/steps/miscellaneous.js +5 -1
- package/schematics/ng-update/v3/steps/replace-functions.js +1 -1
- package/schematics/ng-update/v3-30/constants/constants.d.ts +2 -2
- package/schematics/ng-update/v3-30/index.js +1 -0
- package/schematics/ng-update/v3-35/constants/constants.d.ts +2 -2
- package/schematics/ng-update/v3-35/index.js +1 -0
- package/schematics/ng-update/v3-36/index.js +1 -0
- package/schematics/ng-update/v3-40/index.js +2 -1
- package/schematics/ng-update/v3-5/index.js +1 -0
- package/schematics/ng-update/v4/index.js +19 -6
- package/schematics/ng-update/v4/steps/constants/attrs-to-replace.d.ts +2 -0
- package/schematics/ng-update/v4/steps/constants/attrs-to-replace.js +33 -0
- package/schematics/ng-update/v4/steps/constants/identifiers-to-replace.d.ts +2 -0
- package/schematics/ng-update/v4/steps/constants/identifiers-to-replace.js +32 -0
- package/schematics/ng-update/v4/steps/constants/inputs-to-remove.d.ts +2 -0
- package/schematics/ng-update/v4/steps/constants/inputs-to-remove.js +6 -0
- package/schematics/ng-update/v4/steps/constants/tags-to-replace.d.ts +2 -0
- package/schematics/ng-update/v4/steps/constants/tags-to-replace.js +7 -0
- package/schematics/ng-update/v4/steps/index.d.ts +3 -0
- package/schematics/ng-update/v4/steps/index.js +6 -0
- package/schematics/ng-update/v4/steps/migrate-templates.d.ts +3 -0
- package/schematics/ng-update/v4/steps/migrate-templates.js +44 -0
- package/schematics/ng-update/v4/steps/restore-tui-mapper.d.ts +1 -2
- package/schematics/ng-update/v4/steps/restore-tui-mapper.js +23 -67
- package/schematics/ng-update/v4/steps/restore-tui-matcher.d.ts +1 -2
- package/schematics/ng-update/v4/steps/restore-tui-matcher.js +23 -67
- package/schematics/ng-update/v4/steps/templates/migrate-badge.d.ts +8 -0
- package/schematics/ng-update/v4/steps/templates/migrate-badge.js +29 -0
- package/schematics/utils/add-import-to-component.js +3 -2
- package/schematics/utils/angular/ng-module.d.ts +3 -0
- package/schematics/utils/angular/ng-module.js +3 -0
- package/schematics/utils/angular-json-manipulations.js +7 -0
- package/schematics/utils/colored-log.js +1 -1
- package/schematics/utils/get-projects.d.ts +2 -2
- package/schematics/utils/get-projects.js +3 -1
- package/schematics/utils/is-ci.js +13 -11
- package/schematics/utils/progress.js +1 -0
- package/schematics/utils/push-to-array-property.js +1 -0
- package/schematics/utils/templates/elements.d.ts +19 -0
- package/schematics/utils/templates/elements.js +26 -2
- package/schematics/utils/templates/ng-component-input-manipulations.d.ts +44 -0
- package/schematics/utils/templates/ng-component-input-manipulations.js +47 -1
- package/services/destroy.service.d.ts +8 -0
- package/services/directive-styles.service.d.ts +3 -0
- package/services/focus-visible.service.d.ts +5 -0
- package/services/id.service.d.ts +3 -0
- package/services/obscured.service.d.ts +5 -0
- package/services/parents-scroll.service.d.ts +3 -0
- package/services/taiga-ui-cdk-services.d.ts +3 -0
- package/taiga-ui-cdk.d.ts +3 -0
- package/tokens/active-element.d.ts +3 -0
- package/tokens/alerts.d.ts +3 -0
- package/tokens/default-renderer.d.ts +6 -0
- package/tokens/dialogs.d.ts +3 -0
- package/tokens/ensure-base-href.d.ts +3 -0
- package/tokens/focusable-item-accessor.d.ts +3 -0
- package/tokens/is-android.d.ts +3 -0
- package/tokens/is-apple.d.ts +3 -0
- package/tokens/is-chromium.d.ts +3 -0
- package/tokens/is-cypress.d.ts +4 -0
- package/tokens/is-e2e.d.ts +3 -0
- package/tokens/is-firefox.d.ts +3 -0
- package/tokens/is-ios.d.ts +3 -0
- package/tokens/is-mobile.d.ts +3 -0
- package/tokens/is-playwright.d.ts +3 -0
- package/tokens/is-webkit.d.ts +3 -0
- package/tokens/range.d.ts +3 -0
- package/tokens/removed-element.d.ts +3 -0
- package/tokens/scroll-ref.d.ts +3 -0
- package/tokens/swipe-options.d.ts +3 -0
- package/tokens/taiga-ui-cdk-tokens.d.ts +3 -0
- package/tokens/take-only-trusted-events.d.ts +6 -0
- package/tokens/window-height.d.ts +3 -0
- package/tokens/zoom-options.d.ts +3 -0
- package/types/autocomplete.d.ts +1 -0
- package/types/date-mode.d.ts +5 -0
- package/types/event-with.d.ts +3 -0
- package/types/mapper.d.ts +9 -0
- package/types/matcher.d.ts +8 -0
- package/types/taiga-ui-cdk-types.d.ts +3 -0
- package/utils/browser/taiga-ui-cdk-utils-browser.d.ts +3 -0
- package/utils/color/hsv-to-rgb.d.ts +3 -0
- package/utils/color/taiga-ui-cdk-utils-color.d.ts +3 -0
- package/utils/dom/get-actual-target.d.ts +3 -0
- package/utils/dom/get-clipboard-data-text.d.ts +3 -0
- package/utils/dom/get-element-obscurers.d.ts +9 -0
- package/utils/dom/get-element-offset.d.ts +7 -0
- package/utils/dom/get-scroll-parent.d.ts +6 -0
- package/utils/dom/get-selected-text.d.ts +8 -0
- package/utils/dom/is-inside-iframe.d.ts +3 -0
- package/utils/dom/is-node-in.d.ts +7 -0
- package/utils/dom/taiga-ui-cdk-utils-dom.d.ts +3 -0
- package/utils/focus/blur-native-focused.d.ts +3 -0
- package/utils/focus/get-closest-focusable.d.ts +20 -0
- package/utils/focus/get-native-focused.d.ts +5 -0
- package/utils/focus/is-native-focused-in.d.ts +6 -0
- package/utils/focus/is-native-focused.d.ts +8 -0
- package/utils/focus/is-native-keyboard-focusable.d.ts +6 -0
- package/utils/focus/move-focus.d.ts +7 -0
- package/utils/focus/set-native-mouse-focused.d.ts +7 -0
- package/utils/focus/taiga-ui-cdk-utils-focus.d.ts +3 -0
- package/utils/format/px.d.ts +3 -0
- package/utils/format/taiga-ui-cdk-utils-format.d.ts +3 -0
- package/utils/math/clamp.d.ts +7 -0
- package/utils/math/normalize-to-int-number.d.ts +8 -0
- package/utils/math/quantize.d.ts +6 -0
- package/utils/math/sum.d.ts +3 -0
- package/utils/math/taiga-ui-cdk-utils-math.d.ts +3 -0
- package/utils/math/to-radians.d.ts +3 -0
- package/utils/miscellaneous/create-options.d.ts +1 -0
- package/utils/miscellaneous/flat-length.d.ts +5 -0
- package/utils/miscellaneous/get-original-array-from-query-list.d.ts +6 -0
- package/utils/miscellaneous/is-string.js +1 -0
- package/utils/miscellaneous/nullable-same.d.ts +8 -0
- package/utils/miscellaneous/object-from-entries.d.ts +8 -0
- package/utils/miscellaneous/taiga-ui-cdk-utils-miscellaneous.d.ts +3 -0
- package/utils/os/is-apple-platform.d.ts +10 -0
- package/utils/os/taiga-ui-cdk-utils-os.d.ts +3 -0
- package/utils/svg/svg-linear-gradient-processor.d.ts +14 -0
- package/utils/svg/taiga-ui-cdk-utils-svg.d.ts +3 -0
- package/utils/taiga-ui-cdk-utils.d.ts +3 -0
- package/schematics/ng-update/steps/replace-const.d.ts +0 -4
- package/schematics/ng-update/v3/interfaces/replaceable-tag.d.ts +0 -5
- package/schematics/ng-update/v4/steps/replace-thumbnail-card.d.ts +0 -3
- package/schematics/ng-update/v4/steps/replace-thumbnail-card.js +0 -58
- /package/schematics/ng-update/{v3/interfaces → interfaces}/removable-input.d.ts +0 -0
- /package/schematics/ng-update/{v3/interfaces → interfaces}/removable-input.js +0 -0
- /package/schematics/ng-update/interfaces/{replaceable-attribute.js → replacement-attribute-value.js} +0 -0
- /package/schematics/ng-update/interfaces/{replacement-const.js → replacement-attribute.js} +0 -0
- /package/schematics/ng-update/interfaces/{type-to-rename.js → replacement-identifier.js} +0 -0
- /package/schematics/ng-update/{v3/interfaces/replaceable-attribute-value.js → interfaces/replacement-tag.js} +0 -0
- /package/schematics/ng-update/{v3/interfaces/replaceable-tag.js → interfaces/replacement-type.js} +0 -0
- /package/schematics/{utils → ng-update/utils/templates}/replace-tag.d.ts +0 -0
- /package/schematics/{utils → ng-update/utils/templates}/replace-tag.js +0 -0
@@ -1,6 +1,9 @@
|
|
1
1
|
import { tuiAssert } from '@taiga-ui/cdk/classes';
|
2
2
|
import { tuiInRange } from '@taiga-ui/cdk/utils/math';
|
3
3
|
import { HOURS_IN_DAY, MILLISECONDS_IN_DAY, MILLISECONDS_IN_HOUR, MILLISECONDS_IN_MINUTE, MINUTES_IN_HOUR, SECONDS_IN_MINUTE, } from './date-time';
|
4
|
+
/**
|
5
|
+
* Immutable time object with hours, minutes, seconds and ms
|
6
|
+
*/
|
4
7
|
export class TuiTime {
|
5
8
|
constructor(hours, minutes, seconds = 0, ms = 0) {
|
6
9
|
this.hours = hours;
|
@@ -10,6 +13,9 @@ export class TuiTime {
|
|
10
13
|
ngDevMode &&
|
11
14
|
tuiAssert.assert(TuiTime.isValidTime(hours, minutes, seconds, ms), `Time must be real, but got:`, hours, minutes, seconds, ms);
|
12
15
|
}
|
16
|
+
/**
|
17
|
+
* Checks if time is valid
|
18
|
+
*/
|
13
19
|
static isValidTime(hours, minutes, seconds = 0, ms = 0) {
|
14
20
|
return (Number.isInteger(hours) &&
|
15
21
|
tuiInRange(hours, 0, HOURS_IN_DAY) &&
|
@@ -20,14 +26,23 @@ export class TuiTime {
|
|
20
26
|
Number.isInteger(ms) &&
|
21
27
|
tuiInRange(ms, 0, 1000));
|
22
28
|
}
|
29
|
+
/**
|
30
|
+
* Current UTC time.
|
31
|
+
*/
|
23
32
|
static current() {
|
24
33
|
return TuiTime.fromAbsoluteMilliseconds(Date.now() % MILLISECONDS_IN_DAY);
|
25
34
|
}
|
35
|
+
/**
|
36
|
+
* Current time in local timezone
|
37
|
+
*/
|
26
38
|
static currentLocal() {
|
27
39
|
const date = new Date();
|
28
40
|
return TuiTime.fromAbsoluteMilliseconds((Date.now() - date.getTimezoneOffset() * MILLISECONDS_IN_MINUTE) %
|
29
41
|
MILLISECONDS_IN_DAY);
|
30
42
|
}
|
43
|
+
/**
|
44
|
+
* Calculates TuiTime from milliseconds
|
45
|
+
*/
|
31
46
|
static fromAbsoluteMilliseconds(milliseconds) {
|
32
47
|
ngDevMode && tuiAssert.assert(Number.isInteger(milliseconds));
|
33
48
|
ngDevMode &&
|
@@ -38,6 +53,9 @@ export class TuiTime {
|
|
38
53
|
const ms = Math.floor(((milliseconds % MILLISECONDS_IN_HOUR) % MILLISECONDS_IN_MINUTE) % 1000) || 0;
|
39
54
|
return new TuiTime(hours, minutes, seconds, ms);
|
40
55
|
}
|
56
|
+
/**
|
57
|
+
* Parses string into TuiTime object
|
58
|
+
*/
|
41
59
|
static fromString(time) {
|
42
60
|
const hours = Number(time.slice(0, 2));
|
43
61
|
const minutes = Number(time.slice(3, 5));
|
@@ -45,9 +63,16 @@ export class TuiTime {
|
|
45
63
|
const ms = Number(time.slice(9, 12)) || 0;
|
46
64
|
return new TuiTime(hours, minutes, seconds, ms);
|
47
65
|
}
|
66
|
+
/**
|
67
|
+
* Converts Date object into TuiTime
|
68
|
+
* @param date
|
69
|
+
*/
|
48
70
|
static fromLocalNativeDate(date) {
|
49
71
|
return new TuiTime(date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds());
|
50
72
|
}
|
73
|
+
/**
|
74
|
+
* Shifts time by hours and minutes
|
75
|
+
*/
|
51
76
|
shift({ hours = 0, minutes = 0, seconds = 0, ms = 0 }) {
|
52
77
|
const newMs = (1000 + this.ms + (ms % 1000)) % 1000;
|
53
78
|
const secondsInMs = ms < 0 ? Math.ceil(ms / 1000) : Math.floor(ms / 1000);
|
@@ -65,6 +90,9 @@ export class TuiTime {
|
|
65
90
|
const newHours = (24 + this.hours + (hoursToAdd % 24)) % 24;
|
66
91
|
return new TuiTime(newHours, newMinutes, newSeconds, newMs);
|
67
92
|
}
|
93
|
+
/**
|
94
|
+
* Converts TuiTime to string
|
95
|
+
*/
|
68
96
|
toString(mode) {
|
69
97
|
const needAddMs = mode === `HH:MM:SS.MSS` || (!mode && this.ms > 0);
|
70
98
|
const needAddSeconds = needAddMs || mode === `HH:MM:SS` || (!mode && this.seconds > 0);
|
@@ -75,9 +103,17 @@ export class TuiTime {
|
|
75
103
|
valueOf() {
|
76
104
|
return this.toAbsoluteMilliseconds();
|
77
105
|
}
|
106
|
+
/**
|
107
|
+
* Returns the primitive value of the given Date object.
|
108
|
+
* Depending on the argument, the method can return either a string or a number.
|
109
|
+
* @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/@@toPrimitive
|
110
|
+
*/
|
78
111
|
[Symbol.toPrimitive](hint) {
|
79
112
|
return Date.prototype[Symbol.toPrimitive].call(this, hint);
|
80
113
|
}
|
114
|
+
/**
|
115
|
+
* Converts TuiTime to milliseconds
|
116
|
+
*/
|
81
117
|
toAbsoluteMilliseconds() {
|
82
118
|
return (this.hours * MILLISECONDS_IN_HOUR +
|
83
119
|
this.minutes * MILLISECONDS_IN_MINUTE +
|
@@ -88,4 +124,4 @@ export class TuiTime {
|
|
88
124
|
return String(time).padStart(digits, `0`);
|
89
125
|
}
|
90
126
|
}
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kYXRlLXRpbWUvdGltZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFHaEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRXBELE9BQU8sRUFDSCxZQUFZLEVBQ1osbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixzQkFBc0IsRUFDdEIsZUFBZSxFQUNmLGlCQUFpQixHQUNwQixNQUFNLGFBQWEsQ0FBQztBQUtyQixNQUFNLE9BQU8sT0FBTztJQUNoQixZQUNhLEtBQWEsRUFDYixPQUFlLEVBQ2YsVUFBa0IsQ0FBQyxFQUNuQixLQUFhLENBQUM7UUFIZCxVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ2IsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUV2QixTQUFTO1lBQ0wsU0FBUyxDQUFDLE1BQU0sQ0FDWixPQUFPLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxFQUNoRCw2QkFBNkIsRUFDN0IsS0FBSyxFQUNMLE9BQU8sRUFDUCxPQUFPLEVBQ1AsRUFBRSxDQUNMLENBQUM7SUFDVixDQUFDO0lBS0QsTUFBTSxDQUFDLFdBQVcsQ0FDZCxLQUFhLEVBQ2IsT0FBZSxFQUNmLFVBQWtCLENBQUMsRUFDbkIsS0FBYSxDQUFDO1FBRWQsT0FBTyxDQUNILE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO1lBQ3ZCLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLFlBQVksQ0FBQztZQUNsQyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQztZQUN6QixVQUFVLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxl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QU8sSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDekMsQ0FBQztJQU9ELENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQVk7UUFDN0IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFLRCxzQkFBc0I7UUFDbEIsT0FBTyxDQUNILElBQUksQ0FBQyxLQUFLLEdBQUcsb0JBQW9CO1lBQ2pDLElBQUksQ0FBQyxPQUFPLEdBQUcsc0JBQXNCO1lBQ3JDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSTtZQUNuQixJQUFJLENBQUMsRUFBRSxDQUNWLENBQUM7SUFDTixDQUFDO0lBRU8sVUFBVSxDQUFDLElBQVksRUFBRSxTQUFpQixDQUFDO1FBQy9DLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDOUMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt0dWlBc3NlcnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge1R1aVRpbWVMaWtlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUdWlUaW1lTW9kZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5pbXBvcnQge3R1aUluUmFuZ2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWF0aCc7XG5cbmltcG9ydCB7XG4gICAgSE9VUlNfSU5fREFZLFxuICAgIE1JTExJU0VDT05EU19JTl9EQVksXG4gICAgTUlMTElTRUNPTkRTX0lOX0hPVVIsXG4gICAgTUlMTElTRUNPTkRTX0lOX01JTlVURSxcbiAgICBNSU5VVEVTX0lOX0hPVVIsXG4gICAgU0VDT05EU19JTl9NSU5VVEUsXG59IGZyb20gJy4vZGF0ZS10aW1lJztcblxuLyoqXG4gKiBJbW11dGFibGUgdGltZSBvYmplY3Qgd2l0aCBob3VycywgbWludXRlcywgc2Vjb25kcyBhbmQgbXNcbiAqL1xuZXhwb3J0IGNsYXNzIFR1aVRpbWUgaW1wbGVtZW50cyBUdWlUaW1lTGlrZSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHJlYWRvbmx5IGhvdXJzOiBudW1iZXIsXG4gICAgICAgIHJlYWRvbmx5IG1pbnV0ZXM6IG51bWJlcixcbiAgICAgICAgcmVhZG9ubHkgc2Vjb25kczogbnVtYmVyID0gMCxcbiAgICAgICAgcmVhZG9ubHkgbXM6IG51bWJlciA9IDAsXG4gICAgKSB7XG4gICAgICAgIG5nRGV2TW9kZSAmJlxuICAgICAgICAgICAgdHVpQXNzZXJ0LmFzc2VydChcbiAgICAgICAgICAgICAgICBUdWlUaW1lLmlzVmFsaWRUaW1lKGhvdXJzLCBtaW51dGVzLCBzZWNvbmRzLCBtcyksXG4gICAgICAgICAgICAgICAgYFRpbWUgbXVzdCBiZSByZWFsLCBidXQgZ290OmAsXG4gICAgICAgICAgICAgICAgaG91cnMsXG4gICAgICAgICAgICAgICAgbWludXRlcyxcbiAgICAgICAgICAgICAgICBzZWNvbmRzLFxuICAgICAgICAgICAgICAgIG1zLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgdGltZSBpcyB2YWxpZFxuICAgICAqL1xuICAgIHN0YXRpYyBpc1ZhbGlkVGltZShcbiAgICAgICAgaG91cnM6IG51bWJlcixcbiAgICAgICAgbWludXRlczogbnVtYmVyLFxuICAgICAgICBzZWNvbmRzOiBudW1iZXIgPSAwLFxuICAgICAgICBtczogbnVtYmVyID0gMCxcbiAgICApOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIE51bWJlci5pc0ludGVnZXIoaG91cnMpICYmXG4gICAgICAgICAgICB0dWlJblJhbmdlKGhvdXJzLCAwLCBIT1VSU19JTl9EQVkpICYmXG4gICAgICAgICAgICBOdW1iZXIuaXNJbnRlZ2VyKG1pbnV0ZXMpICYmXG4gICAgICAgICAgICB0dWlJblJhbmdlKG1pbnV0ZXMsIDAsIE1JTlVURVNfSU5fSE9VUikgJiZcbiAgICAgICAgICAgIE51bWJlci5pc0ludGVnZXIoc2Vjb25kcykgJiZcbiAgICAgICAgICAgIHR1aUluUmFuZ2Uoc2Vjb25kcywgMCwgU0VDT05EU19JTl9NSU5VVEUpICYmXG4gICAgICAgICAgICBOdW1iZXIuaXNJbnRlZ2VyKG1zKSAmJlxuICAgICAgICAgICAgdHVpSW5SYW5nZShtcywgMCwgMTAwMClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDdXJyZW50IFVUQyB0aW1lLlxuICAgICAqL1xuICAgIHN0YXRpYyBjdXJyZW50KCk6IFR1aVRpbWUge1xuICAgICAgICByZXR1cm4gVHVpVGltZS5mcm9tQWJzb2x1dGVNaWxsaXNlY29uZHMoRGF0ZS5ub3coKSAlIE1JTExJU0VDT05EU19JTl9EQVkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEN1cnJlbnQgdGltZSBpbiBsb2NhbCB0aW1lem9uZVxuICAgICAqL1xuICAgIHN0YXRpYyBjdXJyZW50TG9jYWwoKTogVHVpVGltZSB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xuXG4gICAgICAgIHJldHVybiBUdWlUaW1lLmZyb21BYnNvbHV0ZU1pbGxpc2Vjb25kcyhcbiAgICAgICAgICAgIChEYXRlLm5vdygpIC0gZGF0ZS5nZXRUaW1lem9uZU9mZnNldCgpICogTUlMTElTRUNPTkRTX0lOX01JTlVURSkgJVxuICAgICAgICAgICAgICAgIE1JTExJU0VDT05EU19JTl9EQVksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlcyBUdWlUaW1lIGZyb20gbWlsbGlzZWNvbmRzXG4gICAgICovXG4gICAgc3RhdGljIGZyb21BYnNvbHV0ZU1pbGxpc2Vjb25kcyhtaWxsaXNlY29uZHM6IG51bWJlcik6IFR1aVRpbWUge1xuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChOdW1iZXIuaXNJbnRlZ2VyKG1pbGxpc2Vjb25kcykpO1xuICAgICAgICBuZ0Rldk1vZGUgJiZcbiAgICAgICAgICAgIHR1aUFzc2VydC5hc3NlcnQoXG4gICAgICAgICAgICAgICAgdHVpSW5SYW5nZShtaWxsaXNlY29uZHMsIDAsIE1JTExJU0VDT05EU19JTl9EQVkpLFxuICAgICAgICAgICAgICAgIGBNaWxsaXNlY29uZHMgbXVzdCBiZSBiZWxvdyAke01JTExJU0VDT05EU19JTl9EQVl9IChtaWxsaXNlY29uZHMgaW4gYSBkYXkpLmAsXG4gICAgICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IGhvdXJzID0gTWF0aC5mbG9vcihtaWxsaXNlY29uZHMgLyBNSUxMSVNFQ09ORFNfSU5fSE9VUik7XG4gICAgICAgIGNvbnN0IG1pbnV0ZXMgPSBNYXRoLmZsb29yKFxuICAgICAgICAgICAgKG1pbGxpc2Vjb25kcyAlIE1JTExJU0VDT05EU19JTl9IT1VSKSAvIE1JTExJU0VDT05EU19JTl9NSU5VVEUsXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IHNlY29uZHMgPVxuICAgICAgICAgICAgTWF0aC5mbG9vcihcbiAgICAgICAgICAgICAgICAoKG1pbGxpc2Vjb25kcyAlIE1JTExJU0VDT05EU19JTl9IT1VSKSAlIE1JTExJU0VDT05EU19JTl9NSU5VVEUpIC8gMTAwMCxcbiAgICAgICAgICAgICkgfHwgMDtcbiAgICAgICAgY29uc3QgbXMgPVxuICAgICAgICAgICAgTWF0aC5mbG9vcihcbiAgICAgICAgICAgICAgICAoKG1pbGxpc2Vjb25kcyAlIE1JTExJU0VDT05EU19JTl9IT1VSKSAlIE1JTExJU0VDT05EU19JTl9NSU5VVEUpICUgMTAwMCxcbiAgICAgICAgICAgICkgfHwgMDtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aVRpbWUoaG91cnMsIG1pbnV0ZXMsIHNlY29uZHMsIG1zKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXJzZXMgc3RyaW5nIGludG8gVHVpVGltZSBvYmplY3RcbiAgICAgKi9cbiAgICBzdGF0aWMgZnJvbVN0cmluZyh0aW1lOiBzdHJpbmcpOiBUdWlUaW1lIHtcbiAgICAgICAgY29uc3QgaG91cnMgPSBOdW1iZXIodGltZS5zbGljZSgwLCAyKSk7XG4gICAgICAgIGNvbnN0IG1pbnV0ZXMgPSBOdW1iZXIodGltZS5zbGljZSgzLCA1KSk7XG4gICAgICAgIGNvbnN0IHNlY29uZHMgPSBOdW1iZXIodGltZS5zbGljZSg2LCA4KSkgfHwgMDtcbiAgICAgICAgY29uc3QgbXMgPSBOdW1iZXIodGltZS5zbGljZSg5LCAxMikpIHx8IDA7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlUaW1lKGhvdXJzLCBtaW51dGVzLCBzZWNvbmRzLCBtcyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydHMgRGF0ZSBvYmplY3QgaW50byBUdWlUaW1lXG4gICAgICogQHBhcmFtIGRhdGVcbiAgICAgKi9cbiAgICBzdGF0aWMgZnJvbUxvY2FsTmF0aXZlRGF0ZShkYXRlOiBEYXRlKTogVHVpVGltZSB7XG4gICAgICAgIHJldHVybiBuZXcgVHVpVGltZShcbiAgICAgICAgICAgIGRhdGUuZ2V0SG91cnMoKSxcbiAgICAgICAgICAgIGRhdGUuZ2V0TWludXRlcygpLFxuICAgICAgICAgICAgZGF0ZS5nZXRTZWNvbmRzKCksXG4gICAgICAgICAgICBkYXRlLmdldE1pbGxpc2Vjb25kcygpLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNoaWZ0cyB0aW1lIGJ5IGhvdXJzIGFuZCBtaW51dGVzXG4gICAgICovXG4gICAgc2hpZnQoe2hvdXJzID0gMCwgbWludXRlcyA9IDAsIHNlY29uZHMgPSAwLCBtcyA9IDB9OiBUdWlUaW1lTGlrZSk6IFR1aVRpbWUge1xuICAgICAgICBjb25zdCBuZXdNcyA9ICgxMDAwICsgdGhpcy5tcyArIChtcyAlIDEwMDApKSAlIDEwMDA7XG5cbiAgICAgICAgY29uc3Qgc2Vjb25kc0luTXMgPSBtcyA8IDAgPyBNYXRoLmNlaWwobXMgLyAxMDAwKSA6IE1hdGguZmxvb3IobXMgLyAxMDAwKTtcbiAgICAgICAgY29uc3Qgc2Vjb25kc1RvQWRkID0gc2Vjb25kc0luTXMgKyBzZWNvbmRzO1xuICAgICAgICBjb25zdCBuZXdTZWNvbmRzID0gKDYwICsgdGhpcy5zZWNvbmRzICsgKHNlY29uZHNUb0FkZCAlIDYwKSkgJSA2MDtcblxuICAgICAgICBjb25zdCBtaW51dGVzSW5TZWNvbmRzID1cbiAgICAgICAgICAgIHNlY29uZHNUb0FkZCA8IDBcbiAgICAgICAgICAgICAgICA/IE1hdGguY2VpbChzZWNvbmRzVG9BZGQgLyA2MClcbiAgICAgICAgICAgICAgICA6IE1hdGguZmxvb3Ioc2Vjb25kc1RvQWRkIC8gNjApO1xuICAgICAgICBjb25zdCBtaW51dGVzVG9BZGQgPSBtaW51dGVzSW5TZWNvbmRzICsgbWludXRlcztcbiAgICAgICAgY29uc3QgbmV3TWludXRlcyA9ICg2MCArIHRoaXMubWludXRlcyArIChtaW51dGVzVG9BZGQgJSA2MCkpICUgNjA7XG5cbiAgICAgICAgY29uc3QgaG91cnNJbk1pbnV0ZXMgPVxuICAgICAgICAgICAgbWludXRlc1RvQWRkIDwgMFxuICAgICAgICAgICAgICAgID8gTWF0aC5jZWlsKG1pbnV0ZXNUb0FkZCAvIDYwKVxuICAgICAgICAgICAgICAgIDogTWF0aC5mbG9vcihtaW51dGVzVG9BZGQgLyA2MCk7XG4gICAgICAgIGNvbnN0IGhvdXJzVG9BZGQgPSBob3Vyc0luTWludXRlcyArIGhvdXJzO1xuICAgICAgICBjb25zdCBuZXdIb3VycyA9ICgyNCArIHRoaXMuaG91cnMgKyAoaG91cnNUb0FkZCAlIDI0KSkgJSAyNDtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aVRpbWUobmV3SG91cnMsIG5ld01pbnV0ZXMsIG5ld1NlY29uZHMsIG5ld01zKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb252ZXJ0cyBUdWlUaW1lIHRvIHN0cmluZ1xuICAgICAqL1xuICAgIHRvU3RyaW5nKG1vZGU/OiBUdWlUaW1lTW9kZSk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IG5lZWRBZGRNcyA9IG1vZGUgPT09IGBISDpNTTpTUy5NU1NgIHx8ICghbW9kZSAmJiB0aGlzLm1zID4gMCk7XG4gICAgICAgIGNvbnN0IG5lZWRBZGRTZWNvbmRzID1cbiAgICAgICAgICAgIG5lZWRBZGRNcyB8fCBtb2RlID09PSBgSEg6TU06U1NgIHx8ICghbW9kZSAmJiB0aGlzLnNlY29uZHMgPiAwKTtcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgYCR7dGhpcy5mb3JtYXRUaW1lKHRoaXMuaG91cnMpfToke3RoaXMuZm9ybWF0VGltZSh0aGlzLm1pbnV0ZXMpfWAgK1xuICAgICAgICAgICAgYCR7bmVlZEFkZFNlY29uZHMgPyBgOiR7dGhpcy5mb3JtYXRUaW1lKHRoaXMuc2Vjb25kcyl9YCA6IGBgfWAgK1xuICAgICAgICAgICAgYCR7bmVlZEFkZE1zID8gYC4ke3RoaXMuZm9ybWF0VGltZSh0aGlzLm1zLCAzKX1gIDogYGB9YFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHZhbHVlT2YoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudG9BYnNvbHV0ZU1pbGxpc2Vjb25kcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIHByaW1pdGl2ZSB2YWx1ZSBvZiB0aGUgZ2l2ZW4gRGF0ZSBvYmplY3QuXG4gICAgICogRGVwZW5kaW5nIG9uIHRoZSBhcmd1bWVudCwgdGhlIG1ldGhvZCBjYW4gcmV0dXJuIGVpdGhlciBhIHN0cmluZyBvciBhIG51bWJlci5cbiAgICAgKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0RhdGUvQEB0b1ByaW1pdGl2ZVxuICAgICAqL1xuICAgIFtTeW1ib2wudG9QcmltaXRpdmVdKGhpbnQ6IHN0cmluZyk6IG51bWJlciB8IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBEYXRlLnByb3RvdHlwZVtTeW1ib2wudG9QcmltaXRpdmVdLmNhbGwodGhpcywgaGludCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydHMgVHVpVGltZSB0byBtaWxsaXNlY29uZHNcbiAgICAgKi9cbiAgICB0b0Fic29sdXRlTWlsbGlzZWNvbmRzKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmhvdXJzICogTUlMTElTRUNPTkRTX0lOX0hPVVIgK1xuICAgICAgICAgICAgdGhpcy5taW51dGVzICogTUlMTElTRUNPTkRTX0lOX01JTlVURSArXG4gICAgICAgICAgICB0aGlzLnNlY29uZHMgKiAxMDAwICtcbiAgICAgICAgICAgIHRoaXMubXNcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvcm1hdFRpbWUodGltZTogbnVtYmVyLCBkaWdpdHM6IG51bWJlciA9IDIpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gU3RyaW5nKHRpbWUpLnBhZFN0YXJ0KGRpZ2l0cywgYDBgKTtcbiAgICB9XG59XG4iXX0=
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kYXRlLXRpbWUvdGltZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFHaEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRXBELE9BQU8sRUFDSCxZQUFZLEVBQ1osbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixzQkFBc0IsRUFDdEIsZUFBZSxFQUNmLGlCQUFpQixHQUNwQixNQUFNLGFBQWEsQ0FBQztBQUVyQjs7R0FFRztBQUNILE1BQU0sT0FBTyxPQUFPO0lBQ2hCLFlBQ2EsS0FBYSxFQUNiLE9BQWUsRUFDZixVQUFrQixDQUFDLEVBQ25CLEtBQWEsQ0FBQztRQUhkLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDYixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixPQUFFLEdBQUYsRUFBRSxDQUFZO1FBRXZCLFNBQVM7WUFDTCxTQUFTLENBQUMsTUFBTSxDQUNaLE9BQU8sQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLEVBQ2hELDZCQUE2QixFQUM3QixLQUFLLEVBQ0wsT0FBTyxFQUNQLE9BQU8sRUFDUCxFQUFFLENBQ0wsQ0FBQztJQUNWLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxXQUFXLENBQ2QsS0FBYSxFQUNiLE9BQWUsRUFDZixVQUFrQixDQUFDLEVBQ25CLEtBQWEsQ0FBQztRQUVkLE9BQU8sQ0FDSCxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUN2QixVQUFVLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxZQUFZLENBQUM7WUFDbEMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7WUFDekIsVUFBVSxDQUFD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QyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUMxRCxDQUFDO0lBQ04sQ0FBQztJQUVELE9BQU87UUFDSCxPQUFPLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBWTtRQUM3QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsc0JBQXNCO1FBQ2xCLE9BQU8sQ0FDSCxJQUFJLENBQUMsS0FBSyxHQUFHLG9CQUFvQjtZQUNqQyxJQUFJLENBQUMsT0FBTyxHQUFHLHNCQUFzQjtZQUNyQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUk7WUFDbkIsSUFBSSxDQUFDLEVBQUUsQ0FDVixDQUFDO0lBQ04sQ0FBQztJQUVPLFVBQVUsQ0FBQyxJQUFZLEVBQUUsU0FBaUIsQ0FBQztRQUMvQyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzlDLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dHVpQXNzZXJ0fSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NsYXNzZXMnO1xuaW1wb3J0IHtUdWlUaW1lTGlrZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9pbnRlcmZhY2VzJztcbmltcG9ydCB7VHVpVGltZU1vZGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlJblJhbmdlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21hdGgnO1xuXG5pbXBvcnQge1xuICAgIEhPVVJTX0lOX0RBWSxcbiAgICBNSUxMSVNFQ09ORFNfSU5fREFZLFxuICAgIE1JTExJU0VDT05EU19JTl9IT1VSLFxuICAgIE1JTExJU0VDT05EU19JTl9NSU5VVEUsXG4gICAgTUlOVVRFU19JTl9IT1VSLFxuICAgIFNFQ09ORFNfSU5fTUlOVVRFLFxufSBmcm9tICcuL2RhdGUtdGltZSc7XG5cbi8qKlxuICogSW1tdXRhYmxlIHRpbWUgb2JqZWN0IHdpdGggaG91cnMsIG1pbnV0ZXMsIHNlY29uZHMgYW5kIG1zXG4gKi9cbmV4cG9ydCBjbGFzcyBUdWlUaW1lIGltcGxlbWVudHMgVHVpVGltZUxpa2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICByZWFkb25seSBob3VyczogbnVtYmVyLFxuICAgICAgICByZWFkb25seSBtaW51dGVzOiBudW1iZXIsXG4gICAgICAgIHJlYWRvbmx5IHNlY29uZHM6IG51bWJlciA9IDAsXG4gICAgICAgIHJlYWRvbmx5IG1zOiBudW1iZXIgPSAwLFxuICAgICkge1xuICAgICAgICBuZ0Rldk1vZGUgJiZcbiAgICAgICAgICAgIHR1aUFzc2VydC5hc3NlcnQoXG4gICAgICAgICAgICAgICAgVHVpVGltZS5pc1ZhbGlkVGltZShob3VycywgbWludXRlcywgc2Vjb25kcywgbXMpLFxuICAgICAgICAgICAgICAgIGBUaW1lIG11c3QgYmUgcmVhbCwgYnV0IGdvdDpgLFxuICAgICAgICAgICAgICAgIGhvdXJzLFxuICAgICAgICAgICAgICAgIG1pbnV0ZXMsXG4gICAgICAgICAgICAgICAgc2Vjb25kcyxcbiAgICAgICAgICAgICAgICBtcyxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIHRpbWUgaXMgdmFsaWRcbiAgICAgKi9cbiAgICBzdGF0aWMgaXNWYWxpZFRpbWUoXG4gICAgICAgIGhvdXJzOiBudW1iZXIsXG4gICAgICAgIG1pbnV0ZXM6IG51bWJlcixcbiAgICAgICAgc2Vjb25kczogbnVtYmVyID0gMCxcbiAgICAgICAgbXM6IG51bWJlciA9IDAsXG4gICAgKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBOdW1iZXIuaXNJbnRlZ2VyKGhvdXJzKSAmJlxuICAgICAgICAgICAgdHVpSW5SYW5nZShob3VycywgMCwgSE9VUlNfSU5fREFZKSAmJlxuICAgICAgICAgICAgTnVtYmVyLmlzSW50ZWdlcihtaW51dGVzKSAmJlxuICAgICAgICAgICAgdHVpSW5SYW5nZShtaW51dGVzLCAwLCBNSU5VVEVTX0lOX0hPVVIpICYmXG4gICAgICAgICAgICBOdW1iZXIuaXNJbnRlZ2VyKHNlY29uZHMpICYmXG4gICAgICAgICAgICB0dWlJblJhbmdlKHNlY29uZHMsIDAsIFNFQ09ORFNfSU5fTUlOVVRFKSAmJlxuICAgICAgICAgICAgTnVtYmVyLmlzSW50ZWdlcihtcykgJiZcbiAgICAgICAgICAgIHR1aUluUmFuZ2UobXMsIDAsIDEwMDApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3VycmVudCBVVEMgdGltZS5cbiAgICAgKi9cbiAgICBzdGF0aWMgY3VycmVudCgpOiBUdWlUaW1lIHtcbiAgICAgICAgcmV0dXJuIFR1aVRpbWUuZnJvbUFic29sdXRlTWlsbGlzZWNvbmRzKERhdGUubm93KCkgJSBNSUxMSVNFQ09ORFNfSU5fREFZKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDdXJyZW50IHRpbWUgaW4gbG9jYWwgdGltZXpvbmVcbiAgICAgKi9cbiAgICBzdGF0aWMgY3VycmVudExvY2FsKCk6IFR1aVRpbWUge1xuICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcblxuICAgICAgICByZXR1cm4gVHVpVGltZS5mcm9tQWJzb2x1dGVNaWxsaXNlY29uZHMoXG4gICAgICAgICAgICAoRGF0ZS5ub3coKSAtIGRhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKSAqIE1JTExJU0VDT05EU19JTl9NSU5VVEUpICVcbiAgICAgICAgICAgICAgICBNSUxMSVNFQ09ORFNfSU5fREFZLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGN1bGF0ZXMgVHVpVGltZSBmcm9tIG1pbGxpc2Vjb25kc1xuICAgICAqL1xuICAgIHN0YXRpYyBmcm9tQWJzb2x1dGVNaWxsaXNlY29uZHMobWlsbGlzZWNvbmRzOiBudW1iZXIpOiBUdWlUaW1lIHtcbiAgICAgICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoTnVtYmVyLmlzSW50ZWdlcihtaWxsaXNlY29uZHMpKTtcbiAgICAgICAgbmdEZXZNb2RlICYmXG4gICAgICAgICAgICB0dWlBc3NlcnQuYXNzZXJ0KFxuICAgICAgICAgICAgICAgIHR1aUluUmFuZ2UobWlsbGlzZWNvbmRzLCAwLCBNSUxMSVNFQ09ORFNfSU5fREFZKSxcbiAgICAgICAgICAgICAgICBgTWlsbGlzZWNvbmRzIG11c3QgYmUgYmVsb3cgJHtNSUxMSVNFQ09ORFNfSU5fREFZfSAobWlsbGlzZWNvbmRzIGluIGEgZGF5KS5gLFxuICAgICAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBob3VycyA9IE1hdGguZmxvb3IobWlsbGlzZWNvbmRzIC8gTUlMTElTRUNPTkRTX0lOX0hPVVIpO1xuICAgICAgICBjb25zdCBtaW51dGVzID0gTWF0aC5mbG9vcihcbiAgICAgICAgICAgIChtaWxsaXNlY29uZHMgJSBNSUxMSVNFQ09ORFNfSU5fSE9VUikgLyBNSUxMSVNFQ09ORFNfSU5fTUlOVVRFLFxuICAgICAgICApO1xuICAgICAgICBjb25zdCBzZWNvbmRzID1cbiAgICAgICAgICAgIE1hdGguZmxvb3IoXG4gICAgICAgICAgICAgICAgKChtaWxsaXNlY29uZHMgJSBNSUxMSVNFQ09ORFNfSU5fSE9VUikgJSBNSUxMSVNFQ09ORFNfSU5fTUlOVVRFKSAvIDEwMDAsXG4gICAgICAgICAgICApIHx8IDA7XG4gICAgICAgIGNvbnN0IG1zID1cbiAgICAgICAgICAgIE1hdGguZmxvb3IoXG4gICAgICAgICAgICAgICAgKChtaWxsaXNlY29uZHMgJSBNSUxMSVNFQ09ORFNfSU5fSE9VUikgJSBNSUxMSVNFQ09ORFNfSU5fTUlOVVRFKSAlIDEwMDAsXG4gICAgICAgICAgICApIHx8IDA7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlUaW1lKGhvdXJzLCBtaW51dGVzLCBzZWNvbmRzLCBtcyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFyc2VzIHN0cmluZyBpbnRvIFR1aVRpbWUgb2JqZWN0XG4gICAgICovXG4gICAgc3RhdGljIGZyb21TdHJpbmcodGltZTogc3RyaW5nKTogVHVpVGltZSB7XG4gICAgICAgIGNvbnN0IGhvdXJzID0gTnVtYmVyKHRpbWUuc2xpY2UoMCwgMikpO1xuICAgICAgICBjb25zdCBtaW51dGVzID0gTnVtYmVyKHRpbWUuc2xpY2UoMywgNSkpO1xuICAgICAgICBjb25zdCBzZWNvbmRzID0gTnVtYmVyKHRpbWUuc2xpY2UoNiwgOCkpIHx8IDA7XG4gICAgICAgIGNvbnN0IG1zID0gTnVtYmVyKHRpbWUuc2xpY2UoOSwgMTIpKSB8fCAwO1xuXG4gICAgICAgIHJldHVybiBuZXcgVHVpVGltZShob3VycywgbWludXRlcywgc2Vjb25kcywgbXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbnZlcnRzIERhdGUgb2JqZWN0IGludG8gVHVpVGltZVxuICAgICAqIEBwYXJhbSBkYXRlXG4gICAgICovXG4gICAgc3RhdGljIGZyb21Mb2NhbE5hdGl2ZURhdGUoZGF0ZTogRGF0ZSk6IFR1aVRpbWUge1xuICAgICAgICByZXR1cm4gbmV3IFR1aVRpbWUoXG4gICAgICAgICAgICBkYXRlLmdldEhvdXJzKCksXG4gICAgICAgICAgICBkYXRlLmdldE1pbnV0ZXMoKSxcbiAgICAgICAgICAgIGRhdGUuZ2V0U2Vjb25kcygpLFxuICAgICAgICAgICAgZGF0ZS5nZXRNaWxsaXNlY29uZHMoKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaGlmdHMgdGltZSBieSBob3VycyBhbmQgbWludXRlc1xuICAgICAqL1xuICAgIHNoaWZ0KHtob3VycyA9IDAsIG1pbnV0ZXMgPSAwLCBzZWNvbmRzID0gMCwgbXMgPSAwfTogVHVpVGltZUxpa2UpOiBUdWlUaW1lIHtcbiAgICAgICAgY29uc3QgbmV3TXMgPSAoMTAwMCArIHRoaXMubXMgKyAobXMgJSAxMDAwKSkgJSAxMDAwO1xuXG4gICAgICAgIGNvbnN0IHNlY29uZHNJbk1zID0gbXMgPCAwID8gTWF0aC5jZWlsKG1zIC8gMTAwMCkgOiBNYXRoLmZsb29yKG1zIC8gMTAwMCk7XG4gICAgICAgIGNvbnN0IHNlY29uZHNUb0FkZCA9IHNlY29uZHNJbk1zICsgc2Vjb25kcztcbiAgICAgICAgY29uc3QgbmV3U2Vjb25kcyA9ICg2MCArIHRoaXMuc2Vjb25kcyArIChzZWNvbmRzVG9BZGQgJSA2MCkpICUgNjA7XG5cbiAgICAgICAgY29uc3QgbWludXRlc0luU2Vjb25kcyA9XG4gICAgICAgICAgICBzZWNvbmRzVG9BZGQgPCAwXG4gICAgICAgICAgICAgICAgPyBNYXRoLmNlaWwoc2Vjb25kc1RvQWRkIC8gNjApXG4gICAgICAgICAgICAgICAgOiBNYXRoLmZsb29yKHNlY29uZHNUb0FkZCAvIDYwKTtcbiAgICAgICAgY29uc3QgbWludXRlc1RvQWRkID0gbWludXRlc0luU2Vjb25kcyArIG1pbnV0ZXM7XG4gICAgICAgIGNvbnN0IG5ld01pbnV0ZXMgPSAoNjAgKyB0aGlzLm1pbnV0ZXMgKyAobWludXRlc1RvQWRkICUgNjApKSAlIDYwO1xuXG4gICAgICAgIGNvbnN0IGhvdXJzSW5NaW51dGVzID1cbiAgICAgICAgICAgIG1pbnV0ZXNUb0FkZCA8IDBcbiAgICAgICAgICAgICAgICA/IE1hdGguY2VpbChtaW51dGVzVG9BZGQgLyA2MClcbiAgICAgICAgICAgICAgICA6IE1hdGguZmxvb3IobWludXRlc1RvQWRkIC8gNjApO1xuICAgICAgICBjb25zdCBob3Vyc1RvQWRkID0gaG91cnNJbk1pbnV0ZXMgKyBob3VycztcbiAgICAgICAgY29uc3QgbmV3SG91cnMgPSAoMjQgKyB0aGlzLmhvdXJzICsgKGhvdXJzVG9BZGQgJSAyNCkpICUgMjQ7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlUaW1lKG5ld0hvdXJzLCBuZXdNaW51dGVzLCBuZXdTZWNvbmRzLCBuZXdNcyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydHMgVHVpVGltZSB0byBzdHJpbmdcbiAgICAgKi9cbiAgICB0b1N0cmluZyhtb2RlPzogVHVpVGltZU1vZGUpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBuZWVkQWRkTXMgPSBtb2RlID09PSBgSEg6TU06U1MuTVNTYCB8fCAoIW1vZGUgJiYgdGhpcy5tcyA+IDApO1xuICAgICAgICBjb25zdCBuZWVkQWRkU2Vjb25kcyA9XG4gICAgICAgICAgICBuZWVkQWRkTXMgfHwgbW9kZSA9PT0gYEhIOk1NOlNTYCB8fCAoIW1vZGUgJiYgdGhpcy5zZWNvbmRzID4gMCk7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIGAke3RoaXMuZm9ybWF0VGltZSh0aGlzLmhvdXJzKX06JHt0aGlzLmZvcm1hdFRpbWUodGhpcy5taW51dGVzKX1gICtcbiAgICAgICAgICAgIGAke25lZWRBZGRTZWNvbmRzID8gYDoke3RoaXMuZm9ybWF0VGltZSh0aGlzLnNlY29uZHMpfWAgOiBgYH1gICtcbiAgICAgICAgICAgIGAke25lZWRBZGRNcyA/IGAuJHt0aGlzLmZvcm1hdFRpbWUodGhpcy5tcywgMyl9YCA6IGBgfWBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICB2YWx1ZU9mKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLnRvQWJzb2x1dGVNaWxsaXNlY29uZHMoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBwcmltaXRpdmUgdmFsdWUgb2YgdGhlIGdpdmVuIERhdGUgb2JqZWN0LlxuICAgICAqIERlcGVuZGluZyBvbiB0aGUgYXJndW1lbnQsIHRoZSBtZXRob2QgY2FuIHJldHVybiBlaXRoZXIgYSBzdHJpbmcgb3IgYSBudW1iZXIuXG4gICAgICogQHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9EYXRlL0BAdG9QcmltaXRpdmVcbiAgICAgKi9cbiAgICBbU3ltYm9sLnRvUHJpbWl0aXZlXShoaW50OiBzdHJpbmcpOiBudW1iZXIgfCBzdHJpbmcge1xuICAgICAgICByZXR1cm4gRGF0ZS5wcm90b3R5cGVbU3ltYm9sLnRvUHJpbWl0aXZlXS5jYWxsKHRoaXMsIGhpbnQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbnZlcnRzIFR1aVRpbWUgdG8gbWlsbGlzZWNvbmRzXG4gICAgICovXG4gICAgdG9BYnNvbHV0ZU1pbGxpc2Vjb25kcygpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5ob3VycyAqIE1JTExJU0VDT05EU19JTl9IT1VSICtcbiAgICAgICAgICAgIHRoaXMubWludXRlcyAqIE1JTExJU0VDT05EU19JTl9NSU5VVEUgK1xuICAgICAgICAgICAgdGhpcy5zZWNvbmRzICogMTAwMCArXG4gICAgICAgICAgICB0aGlzLm1zXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb3JtYXRUaW1lKHRpbWU6IG51bWJlciwgZGlnaXRzOiBudW1iZXIgPSAyKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFN0cmluZyh0aW1lKS5wYWRTdGFydChkaWdpdHMsIGAwYCk7XG4gICAgfVxufVxuIl19
|
@@ -1,18 +1,31 @@
|
|
1
1
|
import { tuiAssert } from '@taiga-ui/cdk/classes';
|
2
2
|
import { tuiInRange, tuiNormalizeToIntNumber } from '@taiga-ui/cdk/utils/math';
|
3
3
|
import { MAX_YEAR, MIN_YEAR } from './date-time';
|
4
|
+
/**
|
5
|
+
* Immutable year object
|
6
|
+
* @nosideeffects
|
7
|
+
*/
|
4
8
|
export class TuiYear {
|
5
9
|
constructor(year) {
|
6
10
|
this.year = year;
|
7
11
|
ngDevMode && tuiAssert.assert(TuiYear.isValidYear(year));
|
8
12
|
}
|
13
|
+
/**
|
14
|
+
* Checks year for validity
|
15
|
+
*/
|
9
16
|
static isValidYear(year) {
|
10
17
|
return Number.isInteger(year) && tuiInRange(year, MIN_YEAR, MAX_YEAR + 1);
|
11
18
|
}
|
19
|
+
/**
|
20
|
+
* Check if passed year is a leap year
|
21
|
+
*/
|
12
22
|
static isLeapYear(year) {
|
13
23
|
ngDevMode && tuiAssert.assert(TuiYear.isValidYear(year));
|
14
24
|
return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0);
|
15
25
|
}
|
26
|
+
/**
|
27
|
+
* Returns amount of leap years from year 0 to the passed one
|
28
|
+
*/
|
16
29
|
static getAbsoluteLeapYears(year) {
|
17
30
|
ngDevMode && tuiAssert.assert(TuiYear.isValidYear(year));
|
18
31
|
return Math.ceil(year / 400) + (Math.ceil(year / 4) - Math.ceil(year / 100));
|
@@ -20,6 +33,9 @@ export class TuiYear {
|
|
20
33
|
static lengthBetween(from, to) {
|
21
34
|
return to.year - from.year;
|
22
35
|
}
|
36
|
+
/**
|
37
|
+
* Normalizes year by clamping it between min and max years
|
38
|
+
*/
|
23
39
|
static normalizeYearPart(year) {
|
24
40
|
return tuiNormalizeToIntNumber(year, MIN_YEAR, MAX_YEAR);
|
25
41
|
}
|
@@ -29,24 +45,45 @@ export class TuiYear {
|
|
29
45
|
get isLeapYear() {
|
30
46
|
return TuiYear.isLeapYear(this.year);
|
31
47
|
}
|
48
|
+
/**
|
49
|
+
* Returns amount of leap years from year 0 to current
|
50
|
+
*/
|
32
51
|
get absoluteLeapYears() {
|
33
52
|
return TuiYear.getAbsoluteLeapYears(this.year);
|
34
53
|
}
|
54
|
+
/**
|
55
|
+
* Passed year is after current
|
56
|
+
*/
|
35
57
|
yearBefore({ year }) {
|
36
58
|
return this.year < year;
|
37
59
|
}
|
60
|
+
/**
|
61
|
+
* Passed year is the same or after current
|
62
|
+
*/
|
38
63
|
yearSameOrBefore({ year }) {
|
39
64
|
return this.year <= year;
|
40
65
|
}
|
66
|
+
/**
|
67
|
+
* Passed year is the same as current
|
68
|
+
*/
|
41
69
|
yearSame({ year }) {
|
42
70
|
return this.year === year;
|
43
71
|
}
|
72
|
+
/**
|
73
|
+
* Passed year is either the same of before the current
|
74
|
+
*/
|
44
75
|
yearSameOrAfter({ year }) {
|
45
76
|
return this.year >= year;
|
46
77
|
}
|
78
|
+
/**
|
79
|
+
* Passed year is before current
|
80
|
+
*/
|
47
81
|
yearAfter({ year }) {
|
48
82
|
return this.year > year;
|
49
83
|
}
|
84
|
+
/**
|
85
|
+
* Immutably offsets year
|
86
|
+
*/
|
50
87
|
append({ year = 0 }) {
|
51
88
|
ngDevMode && tuiAssert.assert(Number.isInteger(year));
|
52
89
|
const resultYear = this.year + year;
|
@@ -59,6 +96,11 @@ export class TuiYear {
|
|
59
96
|
valueOf() {
|
60
97
|
return this.year;
|
61
98
|
}
|
99
|
+
/**
|
100
|
+
* Returns the primitive value of the given Date object.
|
101
|
+
* Depending on the argument, the method can return either a string or a number.
|
102
|
+
* @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/@@toPrimitive
|
103
|
+
*/
|
62
104
|
[Symbol.toPrimitive](hint) {
|
63
105
|
return Date.prototype[Symbol.toPrimitive].call(this, hint);
|
64
106
|
}
|
@@ -66,4 +108,4 @@ export class TuiYear {
|
|
66
108
|
return this.formattedYear;
|
67
109
|
}
|
68
110
|
}
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWVhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kYXRlLXRpbWUveWVhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFaEQsT0FBTyxFQUFDLFVBQVUsRUFBRSx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTdFLE9BQU8sRUFBQyxRQUFRLEVBQUUsUUFBUSxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBRS9DOzs7R0FHRztBQUNILE1BQU0sT0FBTyxPQUFPO0lBQ2hCLFlBQXFCLElBQVk7UUFBWixTQUFJLEdBQUosSUFBSSxDQUFRO1FBQzdCLFNBQVMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsV0FBVyxDQUFDLElBQVk7UUFDM0IsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsVUFBVSxDQUFDLElBQVk7UUFDMUIsU0FBUyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBRXpELE9BQU8sSUFBSSxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxJQUFZO1FBQ3BDLFNBQVMsSUFBSSxTQUFTLENBQUMsTUFB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c291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt0dWlBc3NlcnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge1R1aVllYXJMaWtlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2ludGVyZmFjZXMnO1xuaW1wb3J0IHt0dWlJblJhbmdlLCB0dWlOb3JtYWxpemVUb0ludE51bWJlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9tYXRoJztcblxuaW1wb3J0IHtNQVhfWUVBUiwgTUlOX1lFQVJ9IGZyb20gJy4vZGF0ZS10aW1lJztcblxuLyoqXG4gKiBJbW11dGFibGUgeWVhciBvYmplY3RcbiAqIEBub3NpZGVlZmZlY3RzXG4gKi9cbmV4cG9ydCBjbGFzcyBUdWlZZWFyIGltcGxlbWVudHMgVHVpWWVhckxpa2Uge1xuICAgIGNvbnN0cnVjdG9yKHJlYWRvbmx5IHllYXI6IG51bWJlcikge1xuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChUdWlZZWFyLmlzVmFsaWRZZWFyKHllYXIpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgeWVhciBmb3IgdmFsaWRpdHlcbiAgICAgKi9cbiAgICBzdGF0aWMgaXNWYWxpZFllYXIoeWVhcjogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBOdW1iZXIuaXNJbnRlZ2VyKHllYXIpICYmIHR1aUluUmFuZ2UoeWVhciwgTUlOX1lFQVIsIE1BWF9ZRUFSICsgMSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgcGFzc2VkIHllYXIgaXMgYSBsZWFwIHllYXJcbiAgICAgKi9cbiAgICBzdGF0aWMgaXNMZWFwWWVhcih5ZWFyOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoVHVpWWVhci5pc1ZhbGlkWWVhcih5ZWFyKSk7XG5cbiAgICAgICAgcmV0dXJuIHllYXIgJSA0MDAgPT09IDAgfHwgKHllYXIgJSA0ID09PSAwICYmIHllYXIgJSAxMDAgIT09IDApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYW1vdW50IG9mIGxlYXAgeWVhcnMgZnJvbSB5ZWFyIDAgdG8gdGhlIHBhc3NlZCBvbmVcbiAgICAgKi9cbiAgICBzdGF0aWMgZ2V0QWJzb2x1dGVMZWFwWWVhcnMoeWVhcjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoVHVpWWVhci5pc1ZhbGlkWWVhcih5ZWFyKSk7XG5cbiAgICAgICAgcmV0dXJuIE1hdGguY2VpbCh5ZWFyIC8gNDAwKSArIChNYXRoLmNlaWwoeWVhciAvIDQpIC0gTWF0aC5jZWlsKHllYXIgLyAxMDApKTtcbiAgICB9XG5cbiAgICBzdGF0aWMgbGVuZ3RoQmV0d2Vlbihmcm9tOiBUdWlZZWFyLCB0bzogVHVpWWVhcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0by55ZWFyIC0gZnJvbS55ZWFyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE5vcm1hbGl6ZXMgeWVhciBieSBjbGFtcGluZyBpdCBiZXR3ZWVuIG1pbiBhbmQgbWF4IHllYXJzXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHN0YXRpYyBub3JtYWxpemVZZWFyUGFydCh5ZWFyOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdHVpTm9ybWFsaXplVG9JbnROdW1iZXIoeWVhciwgTUlOX1lFQVIsIE1BWF9ZRUFSKTtcbiAgICB9XG5cbiAgICBnZXQgZm9ybWF0dGVkWWVhcigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gU3RyaW5nKHRoaXMueWVhcikucGFkU3RhcnQoNCwgYDBgKTtcbiAgICB9XG5cbiAgICBnZXQgaXNMZWFwWWVhcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIFR1aVllYXIuaXNMZWFwWWVhcih0aGlzLnllYXIpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYW1vdW50IG9mIGxlYXAgeWVhcnMgZnJvbSB5ZWFyIDAgdG8gY3VycmVudFxuICAgICAqL1xuICAgIGdldCBhYnNvbHV0ZUxlYXBZZWFycygpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gVHVpWWVhci5nZXRBYnNvbHV0ZUxlYXBZZWFycyh0aGlzLnllYXIpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCB5ZWFyIGlzIGFmdGVyIGN1cnJlbnRcbiAgICAgKi9cbiAgICB5ZWFyQmVmb3JlKHt5ZWFyfTogVHVpWWVhcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy55ZWFyIDwgeWVhcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzZWQgeWVhciBpcyB0aGUgc2FtZSBvciBhZnRlciBjdXJyZW50XG4gICAgICovXG4gICAgeWVhclNhbWVPckJlZm9yZSh7eWVhcn06IFR1aVllYXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMueWVhciA8PSB5ZWFyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCB5ZWFyIGlzIHRoZSBzYW1lIGFzIGN1cnJlbnRcbiAgICAgKi9cbiAgICB5ZWFyU2FtZSh7eWVhcn06IFR1aVllYXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMueWVhciA9PT0geWVhcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzZWQgeWVhciBpcyBlaXRoZXIgdGhlIHNhbWUgb2YgYmVmb3JlIHRoZSBjdXJyZW50XG4gICAgICovXG4gICAgeWVhclNhbWVPckFmdGVyKHt5ZWFyfTogVHVpWWVhcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy55ZWFyID49IHllYXI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIHllYXIgaXMgYmVmb3JlIGN1cnJlbnRcbiAgICAgKi9cbiAgICB5ZWFyQWZ0ZXIoe3llYXJ9OiBUdWlZZWFyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnllYXIgPiB5ZWFyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEltbXV0YWJseSBvZmZzZXRzIHllYXJcbiAgICAgKi9cbiAgICBhcHBlbmQoe3llYXIgPSAwfTogVHVpWWVhckxpa2UpOiBUdWlZZWFyIHtcbiAgICAgICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoTnVtYmVyLmlzSW50ZWdlcih5ZWFyKSk7XG5cbiAgICAgICAgY29uc3QgcmVzdWx0WWVhciA9IHRoaXMueWVhciArIHllYXI7XG5cbiAgICAgICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoVHVpWWVhci5pc1ZhbGlkWWVhcihyZXN1bHRZZWFyKSk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlZZWFyKHJlc3VsdFllYXIpO1xuICAgIH1cblxuICAgIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1hdHRlZFllYXI7XG4gICAgfVxuXG4gICAgdmFsdWVPZigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy55ZWFyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIHByaW1pdGl2ZSB2YWx1ZSBvZiB0aGUgZ2l2ZW4gRGF0ZSBvYmplY3QuXG4gICAgICogRGVwZW5kaW5nIG9uIHRoZSBhcmd1bWVudCwgdGhlIG1ldGhvZCBjYW4gcmV0dXJuIGVpdGhlciBhIHN0cmluZyBvciBhIG51bWJlci5cbiAgICAgKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0RhdGUvQEB0b1ByaW1pdGl2ZVxuICAgICAqL1xuICAgIFtTeW1ib2wudG9QcmltaXRpdmVdKGhpbnQ6IHN0cmluZyk6IG51bWJlciB8IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBEYXRlLnByb3RvdHlwZVtTeW1ib2wudG9QcmltaXRpdmVdLmNhbGwodGhpcywgaGludCk7XG4gICAgfVxuXG4gICAgdG9KU09OKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1hdHRlZFllYXI7XG4gICAgfVxufVxuIl19
|
@@ -1,3 +1,7 @@
|
|
1
|
+
/**
|
2
|
+
* @deprecated:
|
3
|
+
* not compatible with TypeScript 5
|
4
|
+
*/
|
1
5
|
export function tuiDebounce(timeout) {
|
2
6
|
let timeoutRef;
|
3
7
|
return function (_target, _key, descriptor) {
|
@@ -9,4 +13,4 @@ export function tuiDebounce(timeout) {
|
|
9
13
|
return descriptor;
|
10
14
|
};
|
11
15
|
}
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVib3VuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGVjb3JhdG9ycy9kZWJvdW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFDLE9BQWU7SUFDdkMsSUFBSSxVQUFxRCxDQUFDO0lBRTFELE9BQU8sVUFBVSxPQUFPLEVBQUUsSUFBcUIsRUFBRSxVQUE4QjtRQUMzRSxNQUFNLEVBQUMsS0FBSyxFQUFDLEdBQUcsVUFBVSxDQUFDO1FBRTNCLFVBQVUsQ0FBQyxLQUFLLEdBQUcsVUFBVSxHQUFHLElBQWU7WUFDM0MsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3pCLFVBQVUsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDO1FBRUYsT0FBTyxVQUFVLENBQUM7SUFDdEIsQ0FBQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGRlcHJlY2F0ZWQ6XG4gKiBub3QgY29tcGF0aWJsZSB3aXRoIFR5cGVTY3JpcHQgNVxuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpRGVib3VuY2UodGltZW91dDogbnVtYmVyKTogTWV0aG9kRGVjb3JhdG9yIHtcbiAgICBsZXQgdGltZW91dFJlZjogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCB1bmRlZmluZWQ7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gKF90YXJnZXQsIF9rZXk6IHN0cmluZyB8IHN5bWJvbCwgZGVzY3JpcHRvcjogUHJvcGVydHlEZXNjcmlwdG9yKSB7XG4gICAgICAgIGNvbnN0IHt2YWx1ZX0gPSBkZXNjcmlwdG9yO1xuXG4gICAgICAgIGRlc2NyaXB0b3IudmFsdWUgPSBmdW5jdGlvbiAoLi4uYXJnczogdW5rbm93bltdKSB7XG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dFJlZik7XG4gICAgICAgICAgICB0aW1lb3V0UmVmID0gc2V0VGltZW91dCgoKSA9PiB2YWx1ZS5hcHBseSh0aGlzLCBhcmdzKSwgdGltZW91dCk7XG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3I7XG4gICAgfTtcbn1cbiJdfQ==
|
@@ -1,4 +1,13 @@
|
|
1
1
|
import { tuiAssert } from '@taiga-ui/cdk/classes';
|
2
|
+
/**
|
3
|
+
* @deprecated:
|
4
|
+
* not compatible with TypeScript 5
|
5
|
+
*
|
6
|
+
* Decorator for checking input values for undefined. You can also pass
|
7
|
+
* optional assertion to check input against.
|
8
|
+
*
|
9
|
+
* CAUTION: This decorator overwrites other getters and setters.
|
10
|
+
*/
|
2
11
|
export function tuiDefaultProp(assertion, ...args) {
|
3
12
|
return (target, key) => {
|
4
13
|
const { name } = target.constructor;
|
@@ -47,4 +56,4 @@ function errorSetDefault(key, component) {
|
|
47
56
|
function errorSetDefaultInitial(key, component) {
|
48
57
|
return `Undefined was passed as default value for ${String(key)} to ${component}, error in Taiga UI Angular Kit`;
|
49
58
|
}
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1wcm9wLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RlY29yYXRvcnMvZGVmYXVsdC1wcm9wLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUdoRDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSxjQUFjLENBQzFCLFNBQW1DLEVBQ25DLEdBQUcsSUFBZTtJQUVsQixPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBQ25CLE1BQU0sRUFBQyxJQUFJLEVBQUMsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ2xDLE1BQU0sc0JBQXNCLEdBQUcsU0FBUyxJQUFJLGVBQWUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdkUsTUFBTSxzQkFBc0IsR0FBRyxTQUFTLElBQUksZUFBZSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUV2RSxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUU7WUFDL0IsWUFBWSxFQUFFLElBQUk7WUFDbEIsR0FBRztnQkFDQyxTQUFTLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztnQkFFN0QsT0FBTyxTQUFTLENBQUM7WUFDckIsQ0FBQztZQUNELEdBQUcsQ0FBVSxZQUFrQjtnQkFDM0IsTUFBTSxPQUFPLEdBQUcsWUFBWSxLQUFLLFNBQVMsQ0FBQztnQkFDM0MsTUFBTSxZQUFZLEdBQUcsU0FBUyxJQUFJLHNCQUFzQixDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDcEUsSUFBSSxZQUFZLEdBQUcsWUFBWSxDQUFDO2dCQUVoQyxTQUFTLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUM7Z0JBRXJELElBQUksU0FBUyxJQUFJLE9BQU8sSUFBSSxTQUFTLElBQUksU0FBUyxFQUFFO29CQUNoRCxTQUFTLENBQUMsTUFBTSxDQUNaLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxFQUNsQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsT0FBTyxJQUFJLFlBQVksRUFDckMsWUFBWSxFQUNaLEdBQUcsSUFBSSxDQUNWLENBQUM7aUJBQ0w7Z0JBRUQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFO29CQUM3QixZQUFZLEVBQUUsSUFBSTtvQkFDbEIsR0FBRzt3QkFDQyxPQUFPLFlBQVksQ0FBQztvQkFDeEIsQ0FBQztvQkFDRCxHQUFHLENBQVUsS0FBVzt3QkFDcEIsTUFBTSxPQUFPLEdBQUcsS0FBSyxLQUFLLFNBQVMsQ0FBQzt3QkFDcEMsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDO3dCQUVqQyxTQUFTOzRCQUNMLFNBQVMsQ0FBQyxNQUFNLENBQ1osT0FBTyxFQUNQLHNCQUFzQixFQUN0QixNQUFNLENBQUMsV0FBVyxDQUFDLENBQ3RCLENBQUM7d0JBRU4sSUFBSSxTQUFTLElBQUksT0FBTyxJQUFJLFNBQVMsSUFBSSxTQUFTLEVBQUU7NEJBQ2hELFNBQVMsQ0FBQyxNQUFNLENBQ1osU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQzNCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLElBQUksWUFBWSxFQUNyQyxLQUFLLEVBQ0wsR0FBRyxJQUFJLENBQ1YsQ0FBQzt5QkFDTDt3QkFFRCxZQUFZLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztvQkFDakQsQ0FBQztpQkFDSixDQUFDLENBQUM7WUFDUCxDQUFDO1NBQ0osQ0FBQyxDQUFDO0lBQ1AsQ0FBQyxDQUFDO0FBQ04sQ0FBQztBQUVELFNBQVMsZUFBZSxDQUFDLEdBQW9CLEVBQUUsU0FBaUI7SUFDNUQsT0FBTyxxQkFBcUIsTUFBTSxDQUM5QixHQUFHLENBQ04sd0JBQXdCLFNBQVMsaUNBQWlDLENBQUM7QUFDeEUsQ0FBQztBQUVELFNBQVMsZUFBZSxDQUFDLEdBQW9CLEVBQUUsU0FBaUI7SUFDNUQsT0FBTywyQkFBMkIsTUFBTSxDQUNwQyxHQUFHLENBQ04sT0FBTyxTQUFTLGdEQUFnRCxDQUFDO0FBQ3RFLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUFDLEdBQW9CLEVBQUUsU0FBaUI7SUFDbkUsT0FBTyw2Q0FBNkMsTUFBTSxDQUN0RCxHQUFHLENBQ04sT0FBTyxTQUFTLGlDQUFpQyxDQUFDO0FBQ3ZELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3R1aUFzc2VydH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jbGFzc2VzJztcbmltcG9ydCB7VHVpQm9vbGVhbkhhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkOlxuICogbm90IGNvbXBhdGlibGUgd2l0aCBUeXBlU2NyaXB0IDVcbiAqXG4gKiBEZWNvcmF0b3IgZm9yIGNoZWNraW5nIGlucHV0IHZhbHVlcyBmb3IgdW5kZWZpbmVkLiBZb3UgY2FuIGFsc28gcGFzc1xuICogb3B0aW9uYWwgYXNzZXJ0aW9uIHRvIGNoZWNrIGlucHV0IGFnYWluc3QuXG4gKlxuICogQ0FVVElPTjogVGhpcyBkZWNvcmF0b3Igb3ZlcndyaXRlcyBvdGhlciBnZXR0ZXJzIGFuZCBzZXR0ZXJzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpRGVmYXVsdFByb3A8VCBleHRlbmRzIFJlY29yZDxzdHJpbmcsIGFueT4sIEsgZXh0ZW5kcyBrZXlvZiBUPihcbiAgICBhc3NlcnRpb24/OiBUdWlCb29sZWFuSGFuZGxlcjxUW0tdPixcbiAgICAuLi5hcmdzOiB1bmtub3duW11cbik6IFByb3BlcnR5RGVjb3JhdG9yIHtcbiAgICByZXR1cm4gKHRhcmdldCwga2V5KSA9PiB7XG4gICAgICAgIGNvbnN0IHtuYW1lfSA9IHRhcmdldC5jb25zdHJ1Y3RvcjtcbiAgICAgICAgY29uc3QgZXJyb3JHZXREZWZhdWx0TWVzc2FnZSA9IG5nRGV2TW9kZSAmJiBlcnJvckdldERlZmF1bHQoa2V5LCBuYW1lKTtcbiAgICAgICAgY29uc3QgZXJyb3JTZXREZWZhdWx0TWVzc2FnZSA9IG5nRGV2TW9kZSAmJiBlcnJvclNldERlZmF1bHQoa2V5LCBuYW1lKTtcblxuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHtcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGdldCgpOiB1bmRlZmluZWQge1xuICAgICAgICAgICAgICAgIG5nRGV2TW9kZSAmJiB0dWlBc3NlcnQuYXNzZXJ0KGZhbHNlLCBlcnJvckdldERlZmF1bHRNZXNzYWdlKTtcblxuICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2V0KHRoaXM6IFQsIGluaXRpYWxWYWx1ZTogVFtLXSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGlzVmFsaWQgPSBpbml0aWFsVmFsdWUgIT09IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBuZ0Rldk1vZGUgJiYgZXJyb3JTZXREZWZhdWx0SW5pdGlhbChrZXksIG5hbWUpO1xuICAgICAgICAgICAgICAgIGxldCBjdXJyZW50VmFsdWUgPSBpbml0aWFsVmFsdWU7XG5cbiAgICAgICAgICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChpc1ZhbGlkLCBlcnJvck1lc3NhZ2UpO1xuXG4gICAgICAgICAgICAgICAgaWYgKG5nRGV2TW9kZSAmJiBpc1ZhbGlkICYmIGFzc2VydGlvbiAmJiB0dWlBc3NlcnQpIHtcbiAgICAgICAgICAgICAgICAgICAgdHVpQXNzZXJ0LmFzc2VydChcbiAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydGlvbi5jYWxsKHRoaXMsIGluaXRpYWxWYWx1ZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBgJHtTdHJpbmcoa2V5KX0gaW4gJHtuYW1lfSByZWNlaXZlZDpgLFxuICAgICAgICAgICAgICAgICAgICAgICAgaW5pdGlhbFZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgLi4uYXJncyxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywga2V5LCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgZ2V0KCk6IFRbS10ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGN1cnJlbnRWYWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgc2V0KHRoaXM6IFQsIHZhbHVlOiBUW0tdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpc1ZhbGlkID0gdmFsdWUgIT09IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJhY2t1cFZhbHVlID0gaW5pdGlhbFZhbHVlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBuZ0Rldk1vZGUgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlBc3NlcnQuYXNzZXJ0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc1ZhbGlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvclNldERlZmF1bHRNZXNzYWdlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdHJpbmcoYmFja3VwVmFsdWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuZ0Rldk1vZGUgJiYgaXNWYWxpZCAmJiBhc3NlcnRpb24gJiYgdHVpQXNzZXJ0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHVpQXNzZXJ0LmFzc2VydChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0aW9uLmNhbGwodGhpcywgdmFsdWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtTdHJpbmcoa2V5KX0gaW4gJHtuYW1lfSByZWNlaXZlZDpgLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uYXJncyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50VmFsdWUgPSBpc1ZhbGlkID8gdmFsdWUgOiBiYWNrdXBWYWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgIH07XG59XG5cbmZ1bmN0aW9uIGVycm9yR2V0RGVmYXVsdChrZXk6IHN0cmluZyB8IHN5bWJvbCwgY29tcG9uZW50OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgRGVmYXVsdCB2YWx1ZSBmb3IgJHtTdHJpbmcoXG4gICAgICAgIGtleSxcbiAgICApfSB3YXMgbm90IHByb3ZpZGVkIGluICR7Y29tcG9uZW50fSwgZXJyb3IgaW4gVGFpZ2EgVUkgQW5ndWxhciBLaXRgO1xufVxuXG5mdW5jdGlvbiBlcnJvclNldERlZmF1bHQoa2V5OiBzdHJpbmcgfCBzeW1ib2wsIGNvbXBvbmVudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYFVuZGVmaW5lZCB3YXMgcGFzc2VkIGFzICR7U3RyaW5nKFxuICAgICAgICBrZXksXG4gICAgKX0gdG8gJHtjb21wb25lbnR9LCB3aGljaCBpcyBpbnZhbGlkIGlucHV0LCB1c2luZyBkZWZhdWx0IHZhbHVlOmA7XG59XG5cbmZ1bmN0aW9uIGVycm9yU2V0RGVmYXVsdEluaXRpYWwoa2V5OiBzdHJpbmcgfCBzeW1ib2wsIGNvbXBvbmVudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYFVuZGVmaW5lZCB3YXMgcGFzc2VkIGFzIGRlZmF1bHQgdmFsdWUgZm9yICR7U3RyaW5nKFxuICAgICAgICBrZXksXG4gICAgKX0gdG8gJHtjb21wb25lbnR9LCBlcnJvciBpbiBUYWlnYSBVSSBBbmd1bGFyIEtpdGA7XG59XG4iXX0=
|
@@ -1,4 +1,13 @@
|
|
1
1
|
import { tuiAssert } from '@taiga-ui/cdk/classes';
|
2
|
+
/**
|
3
|
+
* @deprecated:
|
4
|
+
* not compatible with TypeScript 5
|
5
|
+
*
|
6
|
+
* Decorator for checking input setter values against a custom assertion which
|
7
|
+
* takes value passed to input setter and component instance as arguments.
|
8
|
+
* It specifically checks for undefined values and prevents calls to the
|
9
|
+
* original setter in this case.
|
10
|
+
*/
|
2
11
|
export function tuiRequiredSetter(assertion, ...args) {
|
3
12
|
return (target, key, { configurable, enumerable, get, set }) => {
|
4
13
|
const { name } = target.constructor;
|
@@ -23,4 +32,4 @@ export function tuiRequiredSetter(assertion, ...args) {
|
|
23
32
|
function errorSet(key, component) {
|
24
33
|
return `Undefined was passed as ${String(key)} to ${component}, setter will not be called`;
|
25
34
|
}
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZWQtc2V0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RlY29yYXRvcnMvcmVxdWlyZWQtc2V0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUdoRDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FDN0IsU0FBbUMsRUFDbkMsR0FBRyxJQUFXO0lBRWQsT0FBTyxDQUNILE1BQTJCLEVBQzNCLEdBQUcsRUFDSCxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBcUIsRUFDdEMsRUFBRTtRQUNwQixNQUFNLEVBQUMsSUFBSSxFQUFDLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQztRQUVsQyxPQUFPO1lBQ0gsWUFBWTtZQUNaLFVBQVU7WUFDVixHQUFHO1lBQ0gsR0FBRyxDQUFVLEtBQVc7Z0JBQ3BCLElBQUksU0FBUyxJQUFJLEtBQUssS0FBSyxTQUFTLElBQUksU0FBUyxJQUFJLFNBQVMsRUFBRTtvQkFDNUQsU0FBUyxDQUFDLE1BQU0sQ0FDWixTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsRUFDM0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sSUFBSSxZQUFZLEVBQ3JDLEtBQUssRUFDTCxHQUFHLElBQUksQ0FDVixDQUFDO2lCQUNMO2dCQUVELElBQUksQ0FBQyxHQUFHLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtvQkFDN0IsU0FBUzt3QkFDTCxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUUsUUFBUSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO29CQUUvRCxPQUFPO2lCQUNWO2dCQUVELEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzFCLENBQUM7U0FDSixDQUFDO0lBQ04sQ0FBQyxDQUFDO0FBQ04sQ0FBQztBQUVELFNBQVMsUUFBUSxDQUFDLEdBQW9CLEVBQUUsU0FBaUI7SUFDckQsT0FBTywyQkFBMkIsTUFBTSxDQUNwQyxHQUFHLENBQ04sT0FBTyxTQUFTLDZCQUE2QixDQUFDO0FBQ25ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3R1aUFzc2VydH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jbGFzc2VzJztcbmltcG9ydCB7VHVpQm9vbGVhbkhhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkOlxuICogbm90IGNvbXBhdGlibGUgd2l0aCBUeXBlU2NyaXB0IDVcbiAqXG4gKiBEZWNvcmF0b3IgZm9yIGNoZWNraW5nIGlucHV0IHNldHRlciB2YWx1ZXMgYWdhaW5zdCBhIGN1c3RvbSBhc3NlcnRpb24gd2hpY2hcbiAqIHRha2VzIHZhbHVlIHBhc3NlZCB0byBpbnB1dCBzZXR0ZXIgYW5kIGNvbXBvbmVudCBpbnN0YW5jZSBhcyBhcmd1bWVudHMuXG4gKiBJdCBzcGVjaWZpY2FsbHkgY2hlY2tzIGZvciB1bmRlZmluZWQgdmFsdWVzIGFuZCBwcmV2ZW50cyBjYWxscyB0byB0aGVcbiAqIG9yaWdpbmFsIHNldHRlciBpbiB0aGlzIGNhc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlSZXF1aXJlZFNldHRlcjxUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgYW55PiwgSyBleHRlbmRzIGtleW9mIFQ+KFxuICAgIGFzc2VydGlvbj86IFR1aUJvb2xlYW5IYW5kbGVyPFRbS10+LFxuICAgIC4uLmFyZ3M6IGFueVtdXG4pOiBNZXRob2REZWNvcmF0b3Ige1xuICAgIHJldHVybiAoXG4gICAgICAgIHRhcmdldDogUmVjb3JkPHN0cmluZywgYW55PixcbiAgICAgICAga2V5LFxuICAgICAgICB7Y29uZmlndXJhYmxlLCBlbnVtZXJhYmxlLCBnZXQsIHNldH06IFByb3BlcnR5RGVzY3JpcHRvcixcbiAgICApOiBQcm9wZXJ0eURlc2NyaXB0b3IgPT4ge1xuICAgICAgICBjb25zdCB7bmFtZX0gPSB0YXJnZXQuY29uc3RydWN0b3I7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZSxcbiAgICAgICAgICAgIGVudW1lcmFibGUsXG4gICAgICAgICAgICBnZXQsXG4gICAgICAgICAgICBzZXQodGhpczogVCwgdmFsdWU6IFRbS10pIHtcbiAgICAgICAgICAgICAgICBpZiAobmdEZXZNb2RlICYmIHZhbHVlICE9PSB1bmRlZmluZWQgJiYgYXNzZXJ0aW9uICYmIHR1aUFzc2VydCkge1xuICAgICAgICAgICAgICAgICAgICB0dWlBc3NlcnQuYXNzZXJ0KFxuICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0aW9uLmNhbGwodGhpcywgdmFsdWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgYCR7U3RyaW5nKGtleSl9IGluICR7bmFtZX0gcmVjZWl2ZWQ6YCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgLi4uYXJncyxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoIXNldCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIG5nRGV2TW9kZSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgdHVpQXNzZXJ0LmFzc2VydCh2YWx1ZSAhPT0gdW5kZWZpbmVkLCBlcnJvclNldChrZXksIG5hbWUpKTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc2V0LmNhbGwodGhpcywgdmFsdWUpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICB9O1xufVxuXG5mdW5jdGlvbiBlcnJvclNldChrZXk6IHN0cmluZyB8IHN5bWJvbCwgY29tcG9uZW50OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgVW5kZWZpbmVkIHdhcyBwYXNzZWQgYXMgJHtTdHJpbmcoXG4gICAgICAgIGtleSxcbiAgICApfSB0byAke2NvbXBvbmVudH0sIHNldHRlciB3aWxsIG5vdCBiZSBjYWxsZWRgO1xufVxuIl19
|
@@ -1,2 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
1
4
|
export * from './index';
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY2RrLWRlY29yYXRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGVjb3JhdG9ycy90YWlnYS11aS1jZGstZGVjb3JhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
@@ -1,2 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
1
4
|
export * from './index';
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY2RrLWRpcmVjdGl2ZXMtYWN0aXZlLXpvbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9hY3RpdmUtem9uZS90YWlnYS11aS1jZGstZGlyZWN0aXZlcy1hY3RpdmUtem9uZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
@@ -4,9 +4,10 @@ import { TuiDestroyService } from '@taiga-ui/cdk/services';
|
|
4
4
|
import { TUI_FOCUSABLE_ITEM_ACCESSOR, TUI_IS_IOS } from '@taiga-ui/cdk/tokens';
|
5
5
|
import { tuiCreateToken, tuiProvideOptions } from '@taiga-ui/cdk/utils/miscellaneous';
|
6
6
|
import { TuiDefaultAutofocusHandler } from './handlers/default.handler';
|
7
|
+
// eslint-disable-next-line import/no-cycle
|
7
8
|
import { TuiIosAutofocusHandler } from './handlers/ios.handler';
|
8
9
|
export const TUI_AUTOFOCUS_DEFAULT_OPTIONS = {
|
9
|
-
delay: NaN,
|
10
|
+
delay: NaN, // NaN = no delay/sync
|
10
11
|
};
|
11
12
|
export const TUI_AUTOFOCUS_OPTIONS = tuiCreateToken(TUI_AUTOFOCUS_DEFAULT_OPTIONS);
|
12
13
|
export function tuiAutoFocusOptionsProvider(options) {
|
@@ -31,4 +32,4 @@ export const TUI_AUTOFOCUS_PROVIDERS = [
|
|
31
32
|
},
|
32
33
|
TuiDestroyService,
|
33
34
|
];
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2ZvY3VzLm9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9hdXRvLWZvY3VzL2F1dG9mb2N1cy5vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxVQUFVLEVBQ1YsY0FBYyxFQUNkLE1BQU0sRUFDTixRQUFRLEVBRVIsU0FBUyxFQUNULElBQUksR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFFLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRTVELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBQywyQkFBMkIsRUFBRSxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RSxPQUFPLEVBQUMsY0FBYyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFHcEYsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsMkNBQTJDO0FBQzNDLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBVTlELE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUF3QjtJQUM5RCxLQUFLLEVBQUUsR0FBRyxFQUFFLHNCQUFzQjtDQUNyQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsY0FBYyxDQUFDLDZCQUE2QixDQUFDLENBQUM7QUFFbkYsTUFBTSxVQUFVLDJCQUEyQixDQUN2QyxPQUFxQztJQUVyQyxPQUFPLGlCQUFpQixDQUNwQixxQkFBcUIsRUFDckIsT0FBTyxFQUNQLDZCQUE2QixDQUNoQyxDQUFDO0FBQ04sQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUNuRCx5QkFBeUIsQ0FDNUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHO0lBQ25DO1FBQ0ksT0FBTyxFQUFFLHFCQUFxQjtRQUM5QixVQUFVLEVBQUUsQ0FDUixTQUE2QyxFQUM3QyxFQUEyQixFQUMzQixlQUFtQyxFQUNuQyxRQUFtQixFQUNuQixJQUFZLEVBQ1osR0FBVyxFQUNYLEtBQWMsRUFDaEIsRUFBRSxDQUNBLEtBQUs7WUFDRCxDQUFDLENBQUMsSUFBSSxzQkFBc0IsQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDO1lBQ2hFLENBQUMsQ0FBQyxJQUFJLDBCQUEwQixDQUFDLFNBQVMsRUFBRSxFQUFFLEVBQUUsZUFBZSxDQUFDO1FBQ3hFLElBQUksRUFBRTtZQUNGLENBQUMsSUFBSSxRQUFRLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxFQUFFLDJCQUEyQixDQUFDO1lBQ3pELFVBQVU7WUFDVixlQUFlO1lBQ2YsU0FBUztZQUNULE1BQU07WUFDTixNQUFNO1lBQ04sVUFBVTtTQUNiO0tBQ0o7SUFDRCxpQkFBaUI7Q0FDcEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3Rpb25Ub2tlbixcbiAgICBOZ1pvbmUsXG4gICAgT3B0aW9uYWwsXG4gICAgUHJvdmlkZXIsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBTklNQVRJT05fRlJBTUUsIFdJTkRPV30gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1R1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3Nvcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9pbnRlcmZhY2VzJztcbmltcG9ydCB7VHVpRGVzdHJveVNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuaW1wb3J0IHtUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsIFRVSV9JU19JT1N9IGZyb20gJ0B0YWlnYS11aS9jZGsvdG9rZW5zJztcbmltcG9ydCB7dHVpQ3JlYXRlVG9rZW4sIHR1aVByb3ZpZGVPcHRpb25zfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUdWlEZWZhdWx0QXV0b2ZvY3VzSGFuZGxlcn0gZnJvbSAnLi9oYW5kbGVycy9kZWZhdWx0LmhhbmRsZXInO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1jeWNsZVxuaW1wb3J0IHtUdWlJb3NBdXRvZm9jdXNIYW5kbGVyfSBmcm9tICcuL2hhbmRsZXJzL2lvcy5oYW5kbGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBUdWlBdXRvZm9jdXNIYW5kbGVyIHtcbiAgICBzZXRGb2N1cygpOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFR1aUF1dG9mb2N1c09wdGlvbnMge1xuICAgIHJlYWRvbmx5IGRlbGF5OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjb25zdCBUVUlfQVVUT0ZPQ1VTX0RFRkFVTFRfT1BUSU9OUzogVHVpQXV0b2ZvY3VzT3B0aW9ucyA9IHtcbiAgICBkZWxheTogTmFOLCAvLyBOYU4gPSBubyBkZWxheS9zeW5jXG59O1xuXG5leHBvcnQgY29uc3QgVFVJX0FVVE9GT0NVU19PUFRJT05TID0gdHVpQ3JlYXRlVG9rZW4oVFVJX0FVVE9GT0NVU19ERUZBVUxUX09QVElPTlMpO1xuXG5leHBvcnQgZnVuY3Rpb24gdHVpQXV0b0ZvY3VzT3B0aW9uc1Byb3ZpZGVyKFxuICAgIG9wdGlvbnM6IFBhcnRpYWw8VHVpQXV0b2ZvY3VzT3B0aW9ucz4sXG4pOiBQcm92aWRlciB7XG4gICAgcmV0dXJuIHR1aVByb3ZpZGVPcHRpb25zKFxuICAgICAgICBUVUlfQVVUT0ZPQ1VTX09QVElPTlMsXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICAgIFRVSV9BVVRPRk9DVVNfREVGQVVMVF9PUFRJT05TLFxuICAgICk7XG59XG5cbmV4cG9ydCBjb25zdCBUVUlfQVVUT0ZPQ1VTX0hBTkRMRVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48VHVpQXV0b2ZvY3VzSGFuZGxlcj4oXG4gICAgYFtUVUlfQVVUT0ZPQ1VTX0hBTkRMRVJdYCxcbik7XG5cbmV4cG9ydCBjb25zdCBUVUlfQVVUT0ZPQ1VTX1BST1ZJREVSUyA9IFtcbiAgICB7XG4gICAgICAgIHByb3ZpZGU6IFRVSV9BVVRPRk9DVVNfSEFORExFUixcbiAgICAgICAgdXNlRmFjdG9yeTogKFxuICAgICAgICAgICAgZm9jdXNhYmxlOiBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IgfCBudWxsLFxuICAgICAgICAgICAgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICAgICAgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgICAgICAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICAgICAgem9uZTogTmdab25lLFxuICAgICAgICAgICAgd2luOiBXaW5kb3csXG4gICAgICAgICAgICBpc0lvczogYm9vbGVhbixcbiAgICAgICAgKSA9PlxuICAgICAgICAgICAgaXNJb3NcbiAgICAgICAgICAgICAgICA/IG5ldyBUdWlJb3NBdXRvZm9jdXNIYW5kbGVyKGZvY3VzYWJsZSwgZWwsIHJlbmRlcmVyLCB6b25lLCB3aW4pXG4gICAgICAgICAgICAgICAgOiBuZXcgVHVpRGVmYXVsdEF1dG9mb2N1c0hhbmRsZXIoZm9jdXNhYmxlLCBlbCwgYW5pbWF0aW9uRnJhbWUkKSxcbiAgICAgICAgZGVwczogW1xuICAgICAgICAgICAgW25ldyBPcHRpb25hbCgpLCBuZXcgU2VsZigpLCBUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1JdLFxuICAgICAgICAgICAgRWxlbWVudFJlZixcbiAgICAgICAgICAgIEFOSU1BVElPTl9GUkFNRSxcbiAgICAgICAgICAgIFJlbmRlcmVyMixcbiAgICAgICAgICAgIE5nWm9uZSxcbiAgICAgICAgICAgIFdJTkRPVyxcbiAgICAgICAgICAgIFRVSV9JU19JT1MsXG4gICAgICAgIF0sXG4gICAgfSxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbl07XG4iXX0=
|
@@ -61,6 +61,24 @@ export class TuiIosAutofocusHandler extends AbstractTuiAutofocusHandler {
|
|
61
61
|
}
|
62
62
|
fakeInput.focus({ preventScroll: true });
|
63
63
|
}
|
64
|
+
/**
|
65
|
+
* @note:
|
66
|
+
* emulate textfield position in layout with cursor
|
67
|
+
* before focus to real textfield element
|
68
|
+
*
|
69
|
+
* required note:
|
70
|
+
* [fakeInput.readOnly = true] ~
|
71
|
+
* don't use {readOnly: true} value, it's doesn't work for emulate autofill
|
72
|
+
*
|
73
|
+
* [fakeInput.style.opacity = 0] ~
|
74
|
+
* don't use {opacity: 0}, sometimes it's doesn't work for emulate real input
|
75
|
+
*
|
76
|
+
* [fakeInput.style.fontSize = 16px] ~
|
77
|
+
* disable possible auto zoom
|
78
|
+
*
|
79
|
+
* [fakeInput.style.top/left] ~
|
80
|
+
* emulate position cursor before focus to real textfield element
|
81
|
+
*/
|
64
82
|
makeFakeInput() {
|
65
83
|
const fakeInput = this.renderer.createElement(`input`);
|
66
84
|
const rect = this.element.getBoundingClientRect();
|
@@ -85,9 +103,24 @@ export class TuiIosAutofocusHandler extends AbstractTuiAutofocusHandler {
|
|
85
103
|
.getComputedStyle(this.element)
|
86
104
|
.getPropertyValue(`--tui-duration`)) || 0);
|
87
105
|
}
|
106
|
+
/**
|
107
|
+
* @note:
|
108
|
+
* unfortunately, in older versions of iOS
|
109
|
+
* there is a bug that the fake input cursor
|
110
|
+
* will move along with the dialog animation
|
111
|
+
* and then that dialog will be shaking
|
112
|
+
*/
|
88
113
|
insideDialog() {
|
89
114
|
return !!this.element.closest(`tui-dialog`);
|
90
115
|
}
|
116
|
+
/**
|
117
|
+
* @note:
|
118
|
+
* This is necessary so that the viewport isn't recalculated
|
119
|
+
* and then the dialogs don't shake.
|
120
|
+
*
|
121
|
+
* Also, we need to fixed height viewport,
|
122
|
+
* so that when focusing the dialogs don't shake
|
123
|
+
*/
|
91
124
|
patchCssStyles() {
|
92
125
|
const doc = this.win.document;
|
93
126
|
for (const element of [doc.documentElement, doc.body]) {
|
@@ -95,6 +128,12 @@ export class TuiIosAutofocusHandler extends AbstractTuiAutofocusHandler {
|
|
95
128
|
element.style.setProperty(`height`, `100%`);
|
96
129
|
}
|
97
130
|
}
|
131
|
+
/**
|
132
|
+
* @note:
|
133
|
+
* inherit basic attributes values from real input
|
134
|
+
* for help iOS detect what do you want see on keyboard,
|
135
|
+
* for example [inputMode=numeric, autocomplete=cc-number]
|
136
|
+
*/
|
98
137
|
patchFakeInputFromFocusableElement(fakeInput) {
|
99
138
|
TEXTFIELD_ATTRS.forEach(attr => {
|
100
139
|
const value = this.element.getAttribute(attr);
|
@@ -128,4 +167,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
128
167
|
type: Inject,
|
129
168
|
args: [WINDOW]
|
130
169
|
}] }]; } });
|
131
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW9zLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9hdXRvLWZvY3VzL2hhbmRsZXJzL2lvcy5oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixNQUFNLEVBQ04sUUFBUSxFQUNSLFNBQVMsRUFDVCxJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRTNDLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxZQUFZLEVBQUUsS0FBSyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFeEQsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7O0FBRS9ELE1BQU0sZUFBZSxHQUFHO0lBQ3BCLE1BQU07SUFDTixXQUFXO0lBQ1gsY0FBYztJQUNkLFFBQVE7SUFDUixLQUFLO0lBQ0wsS0FBSztJQUNMLE1BQU07SUFDTixTQUFTO0lBQ1QsTUFBTTtJQUNOLFdBQVc7Q0FDTCxDQUFDO0FBR1gsTUFBTSxPQUFPLHNCQUF1QixTQUFRLDJCQUEyQjtJQUNuRSxZQUlJLFNBQTZDLEVBQ3pCLEVBQTJCLEVBQ1gsUUFBbUIsRUFDdEIsSUFBWSxFQUNaLEdBQVc7UUFFNUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUplLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDdEIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFHNUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDekIsSUFBSSxDQUFDLElB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LE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUMvQztJQUNMLENBQUM7SUFRTyxrQ0FBa0MsQ0FBQyxTQUEyQjtRQUNsRSxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzNCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRTlDLElBQUksWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNyQixTQUFTLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQzthQUN2QztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7b0hBdkpRLHNCQUFzQixrQkFJbkIsMkJBQTJCLHlDQUUzQixVQUFVLGFBQ1YsU0FBUyxhQUNULE1BQU0sYUFDTixNQUFNO3dHQVRULHNCQUFzQjs0RkFBdEIsc0JBQXNCO2tCQURsQyxTQUFTOzswQkFHRCxRQUFROzswQkFDUixJQUFJOzswQkFDSixNQUFNOzJCQUFDLDJCQUEyQjs7MEJBRWxDLE1BQU07MkJBQUMsVUFBVTs7MEJBQ2pCLE1BQU07MkJBQUMsU0FBUzs7MEJBQ2hCLE1BQU07MkJBQUMsTUFBTTs4QkFDd0IsTUFBTTswQkFBM0MsTUFBTTsyQkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3QsXG4gICAgTmdab25lLFxuICAgIE9wdGlvbmFsLFxuICAgIFJlbmRlcmVyMixcbiAgICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7VHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1J9IGZyb20gJ0B0YWlnYS11aS9jZGsvdG9rZW5zJztcbmltcG9ydCB7dHVpSXNQcmVzZW50LCB0dWlQeH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscyc7XG5cbmltcG9ydCB7QWJzdHJhY3RUdWlBdXRvZm9jdXNIYW5kbGVyfSBmcm9tICcuL2Fic3RyYWN0LmhhbmRsZXInO1xuXG5jb25zdCBURVhURklFTERfQVRUUlMgPSBbXG4gICAgYHR5cGVgLFxuICAgIGBpbnB1dE1vZGVgLFxuICAgIGBhdXRvY29tcGxldGVgLFxuICAgIGBhY2NlcHRgLFxuICAgIGBtaW5gLFxuICAgIGBtYXhgLFxuICAgIGBzdGVwYCxcbiAgICBgcGF0dGVybmAsXG4gICAgYHNpemVgLFxuICAgIGBtYXhsZW5ndGhgLFxuXSBhcyBjb25zdDtcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgVHVpSW9zQXV0b2ZvY3VzSGFuZGxlciBleHRlbmRzIEFic3RyYWN0VHVpQXV0b2ZvY3VzSGFuZGxlciB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBTZWxmKClcbiAgICAgICAgQEluamVjdChUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IpXG4gICAgICAgIGZvY3VzYWJsZTogVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBlbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoUmVuZGVyZXIyKSBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBwcml2YXRlIHJlYWRvbmx5IHpvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByaXZhdGUgcmVhZG9ubHkgd2luOiBXaW5kb3csXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGZvY3VzYWJsZSwgZWwpO1xuICAgICAgICB0aGlzLnBhdGNoQ3NzU3R5bGVzKCk7XG4gICAgfVxuXG4gICAgc2V0Rm9jdXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzVGV4dEZpZWxkRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHRoaXMuaW9zV2Via2l0QXV0b2ZvY3VzKCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5lbGVtZW50LmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiB0cnVlfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGlvc1dlYmtpdEF1dG9mb2N1cygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmFrZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50ID0gdGhpcy5tYWtlRmFrZUlucHV0KCk7XG4gICAgICAgIGNvbnN0IGR1cmF0aW9uID0gdGhpcy5nZXREdXJhdGlvblRpbWVCZWZvcmVGb2N1cygpO1xuICAgICAgICBsZXQgZmFrZUZvY3VzVGltZW91dElkID0gMDtcbiAgICAgICAgbGV0IGVsZW1lbnRGb2N1c1RpbWVvdXRJZCA9IDA7XG5cbiAgICAgICAgY29uc3QgYmx1ckhhbmRsZXIgPSAoKTogdm9pZCA9PiBmYWtlSW5wdXQuZm9jdXMoe3ByZXZlbnRTY3JvbGw6IHRydWV9KTtcbiAgICAgICAgY29uc3QgZm9jdXNIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KGZha2VGb2N1c1RpbWVvdXRJZCk7XG5cbiAgICAgICAgICAgIGZha2VGb2N1c1RpbWVvdXRJZCA9IHRoaXMud2luLnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNsZWFyVGltZW91dChlbGVtZW50Rm9jdXNUaW1lb3V0SWQpO1xuXG4gICAgICAgICAgICAgICAgZmFrZUlucHV0LnJlbW92ZUV2ZW50TGlzdGVuZXIoYGJsdXJgLCBibHVySGFuZGxlcik7XG4gICAgICAgICAgICAgICAgZmFrZUlucHV0LnJlbW92ZUV2ZW50TGlzdGVuZXIoYGZvY3VzYCwgZm9jdXNIYW5kbGVyKTtcblxuICAgICAgICAgICAgICAgIGVsZW1lbnRGb2N1c1RpbWVvdXRJZCA9IHRoaXMud2luLnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuZm9jdXMoe3ByZXZlbnRTY3JvbGw6IGZhbHNlfSk7XG4gICAgICAgICAgICAgICAgICAgIGZha2VJbnB1dC5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB9LCBkdXJhdGlvbik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcblxuICAgICAgICBmYWtlSW5wdXQuYWRkRXZlbnRMaXN0ZW5lcihgYmx1cmAsIGJsdXJIYW5kbGVyLCB7b25jZTogdHJ1ZX0pO1xuICAgICAgICBmYWtlSW5wdXQuYWRkRXZlbnRMaXN0ZW5lcihgZm9jdXNgLCBmb2N1c0hhbmRsZXIpO1xuXG4gICAgICAgIGlmICh0aGlzLmluc2lkZURpYWxvZygpKSB7XG4gICAgICAgICAgICB0aGlzLndpbi5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZha2VJbnB1dCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnQucGFyZW50RWxlbWVudD8uYXBwZW5kQ2hpbGQoZmFrZUlucHV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZha2VJbnB1dC5mb2N1cyh7cHJldmVudFNjcm9sbDogdHJ1ZX0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBub3RlOlxuICAgICAqIGVtdWxhdGUgdGV4dGZpZWxkIHBvc2l0aW9uIGluIGxheW91dCB3aXRoIGN1cnNvclxuICAgICAqIGJlZm9yZSBmb2N1cyB0byByZWFsIHRleHRmaWVsZCBlbGVtZW50XG4gICAgICpcbiAgICAgKiByZXF1aXJlZCBub3RlOlxuICAgICAqIFtmYWtlSW5wdXQucmVhZE9ubHkgPSB0cnVlXSB+XG4gICAgICogZG9uJ3QgdXNlIHtyZWFkT25seTogdHJ1ZX0gdmFsdWUsIGl0J3MgZG9lc24ndCB3b3JrIGZvciBlbXVsYXRlIGF1dG9maWxsXG4gICAgICpcbiAgICAgKiBbZmFrZUlucHV0LnN0eWxlLm9wYWNpdHkgPSAwXSB+XG4gICAgICogZG9uJ3QgdXNlIHtvcGFjaXR5OiAwfSwgc29tZXRpbWVzIGl0J3MgZG9lc24ndCB3b3JrIGZvciBlbXVsYXRlIHJlYWwgaW5wdXRcbiAgICAgKlxuICAgICAqIFtmYWtlSW5wdXQuc3R5bGUuZm9udFNpemUgPSAxNnB4XSB+XG4gICAgICogZGlzYWJsZSBwb3NzaWJsZSBhdXRvIHpvb21cbiAgICAgKlxuICAgICAqIFtmYWtlSW5wdXQuc3R5bGUudG9wL2xlZnRdIH5cbiAgICAgKiBlbXVsYXRlIHBvc2l0aW9uIGN1cnNvciBiZWZvcmUgZm9jdXMgdG8gcmVhbCB0ZXh0ZmllbGQgZWxlbWVudFxuICAgICAqL1xuICAgIHByaXZhdGUgbWFrZUZha2VJbnB1dCgpOiBIVE1MSW5wdXRFbGVtZW50IHtcbiAgICAgICAgY29uc3QgZmFrZUlucHV0OiBIVE1MSW5wdXRFbGVtZW50ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KGBpbnB1dGApO1xuICAgICAgICBjb25zdCByZWN0OiBET01SZWN0ID0gdGhpcy5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIHRoaXMucGF0Y2hGYWtlSW5wdXRGcm9tRm9jdXNhYmxlRWxlbWVudChmYWtlSW5wdXQpO1xuXG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5oZWlnaHQgPSB0dWlQeChyZWN0LmhlaWdodCk7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS53aWR0aCA9IHR1aVB4KHJlY3Qud2lkdGggLyAyKTtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLnBvc2l0aW9uID0gYGZpeGVkYDtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLnpJbmRleCA9IGAtOTk5OTk5OTlgO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUuY2FyZXRDb2xvciA9IGB0cmFuc3BhcmVudGA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5ib3JkZXIgPSBgbm9uZWA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5vdXRsaW5lID0gYG5vbmVgO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUuY29sb3IgPSBgdHJhbnNwYXJlbnRgO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUuYmFja2dyb3VuZCA9IGB0cmFuc3BhcmVudGA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5jdXJzb3IgPSBgbm9uZWA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5mb250U2l6ZSA9IHR1aVB4KDE2KTtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLnRvcCA9IHR1aVB4KHJlY3QudG9wKTtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLmxlZnQgPSB0dWlQeChyZWN0LmxlZnQpO1xuXG4gICAgICAgIHJldHVybiBmYWtlSW5wdXQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREdXJhdGlvblRpbWVCZWZvcmVGb2N1cygpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgcGFyc2VGbG9hdChcbiAgICAgICAgICAgICAgICB0aGlzLndpblxuICAgICAgICAgICAgICAgICAgICAuZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLmVsZW1lbnQpXG4gICAgICAgICAgICAgICAgICAgIC5nZXRQcm9wZXJ0eVZhbHVlKGAtLXR1aS1kdXJhdGlvbmApLFxuICAgICAgICAgICAgKSB8fCAwXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQG5vdGU6XG4gICAgICogdW5mb3J0dW5hdGVseSwgaW4gb2xkZXIgdmVyc2lvbnMgb2YgaU9TXG4gICAgICogdGhlcmUgaXMgYSBidWcgdGhhdCB0aGUgZmFrZSBpbnB1dCBjdXJzb3JcbiAgICAgKiB3aWxsIG1vdmUgYWxvbmcgd2l0aCB0aGUgZGlhbG9nIGFuaW1hdGlvblxuICAgICAqIGFuZCB0aGVuIHRoYXQgZGlhbG9nIHdpbGwgYmUgc2hha2luZ1xuICAgICAqL1xuICAgIHByaXZhdGUgaW5zaWRlRGlhbG9nKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmVsZW1lbnQuY2xvc2VzdChgdHVpLWRpYWxvZ2ApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBub3RlOlxuICAgICAqIFRoaXMgaXMgbmVjZXNzYXJ5IHNvIHRoYXQgdGhlIHZpZXdwb3J0IGlzbid0IHJlY2FsY3VsYXRlZFxuICAgICAqIGFuZCB0aGVuIHRoZSBkaWFsb2dzIGRvbid0IHNoYWtlLlxuICAgICAqXG4gICAgICogQWxzbywgd2UgbmVlZCB0byBmaXhlZCBoZWlnaHQgdmlld3BvcnQsXG4gICAgICogc28gdGhhdCB3aGVuIGZvY3VzaW5nIHRoZSBkaWFsb2dzIGRvbid0IHNoYWtlXG4gICAgICovXG4gICAgcHJpdmF0ZSBwYXRjaENzc1N0eWxlcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZG9jID0gdGhpcy53aW4uZG9jdW1lbnQ7XG5cbiAgICAgICAgZm9yIChjb25zdCBlbGVtZW50IG9mIFtkb2MuZG9jdW1lbnRFbGVtZW50LCBkb2MuYm9keV0pIHtcbiAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoYG92ZXJmbG93YCwgYGF1dG9gKTtcbiAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoYGhlaWdodGAsIGAxMDAlYCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAbm90ZTpcbiAgICAgKiBpbmhlcml0IGJhc2ljIGF0dHJpYnV0ZXMgdmFsdWVzIGZyb20gcmVhbCBpbnB1dFxuICAgICAqIGZvciBoZWxwIGlPUyBkZXRlY3Qgd2hhdCBkbyB5b3Ugd2FudCBzZWUgb24ga2V5Ym9hcmQsXG4gICAgICogZm9yIGV4YW1wbGUgW2lucHV0TW9kZT1udW1lcmljLCBhdXRvY29tcGxldGU9Y2MtbnVtYmVyXVxuICAgICAqL1xuICAgIHByaXZhdGUgcGF0Y2hGYWtlSW5wdXRGcm9tRm9jdXNhYmxlRWxlbWVudChmYWtlSW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgVEVYVEZJRUxEX0FUVFJTLmZvckVhY2goYXR0ciA9PiB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoYXR0cik7XG5cbiAgICAgICAgICAgIGlmICh0dWlJc1ByZXNlbnQodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgZmFrZUlucHV0LnNldEF0dHJpYnV0ZShhdHRyLCB2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
170
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW9zLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9hdXRvLWZvY3VzL2hhbmRsZXJzL2lvcy5oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixNQUFNLEVBQ04sUUFBUSxFQUNSLFNBQVMsRUFDVCxJQUFJLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRTNDLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxZQUFZLEVBQUUsS0FBSyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFeEQsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7O0FBRS9ELE1BQU0sZUFBZSxHQUFHO0lBQ3BCLE1BQU07SUFDTixXQUFXO0lBQ1gsY0FBYztJQUNkLFFBQVE7SUFDUixLQUFLO0lBQ0wsS0FBSztJQUNMLE1BQU07SUFDTixTQUFTO0lBQ1QsTUFBTTtJQUNOLFdBQVc7Q0FDTCxDQUFDO0FBR1gsTUFBTSxPQUFPLHNCQUF1QixTQUFRLDJCQUEyQjtJQUNuRSxZQUlJLFNBQTZDLEVBQ3pCLEVBQTJCLEVBQ1gsUUFBbUIsRUFDdEIsSUFBWSxFQUNaLEdBQVc7UUFFNUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUplLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDdEIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFHNUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDekIsSUFBSSxDQUFDLElB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TyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzlDLE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUMvQztJQUNMLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNLLGtDQUFrQyxDQUFDLFNBQTJCO1FBQ2xFLGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDM0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFOUMsSUFBSSxZQUFZLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3JCLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2FBQ3ZDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOztvSEF2SlEsc0JBQXNCLGtCQUluQiwyQkFBMkIseUNBRTNCLFVBQVUsYUFDVixTQUFTLGFBQ1QsTUFBTSxhQUNOLE1BQU07d0dBVFQsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBRGxDLFNBQVM7OzBCQUdELFFBQVE7OzBCQUNSLElBQUk7OzBCQUNKLE1BQU07MkJBQUMsMkJBQTJCOzswQkFFbEMsTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyxTQUFTOzswQkFDaEIsTUFBTTsyQkFBQyxNQUFNOzhCQUN3QixNQUFNOzBCQUEzQyxNQUFNOzJCQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCxcbiAgICBOZ1pvbmUsXG4gICAgT3B0aW9uYWwsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3J9IGZyb20gJ0B0YWlnYS11aS9jZGsvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90b2tlbnMnO1xuaW1wb3J0IHt0dWlJc1ByZXNlbnQsIHR1aVB4fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzJztcblxuaW1wb3J0IHtBYnN0cmFjdFR1aUF1dG9mb2N1c0hhbmRsZXJ9IGZyb20gJy4vYWJzdHJhY3QuaGFuZGxlcic7XG5cbmNvbnN0IFRFWFRGSUVMRF9BVFRSUyA9IFtcbiAgICBgdHlwZWAsXG4gICAgYGlucHV0TW9kZWAsXG4gICAgYGF1dG9jb21wbGV0ZWAsXG4gICAgYGFjY2VwdGAsXG4gICAgYG1pbmAsXG4gICAgYG1heGAsXG4gICAgYHN0ZXBgLFxuICAgIGBwYXR0ZXJuYCxcbiAgICBgc2l6ZWAsXG4gICAgYG1heGxlbmd0aGAsXG5dIGFzIGNvbnN0O1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBUdWlJb3NBdXRvZm9jdXNIYW5kbGVyIGV4dGVuZHMgQWJzdHJhY3RUdWlBdXRvZm9jdXNIYW5kbGVyIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUilcbiAgICAgICAgZm9jdXNhYmxlOiBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IgfCBudWxsLFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIGVsOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChSZW5kZXJlcjIpIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgQEluamVjdChOZ1pvbmUpIHByaXZhdGUgcmVhZG9ubHkgem9uZTogTmdab25lLFxuICAgICAgICBASW5qZWN0KFdJTkRPVykgcHJpdmF0ZSByZWFkb25seSB3aW46IFdpbmRvdyxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoZm9jdXNhYmxlLCBlbCk7XG4gICAgICAgIHRoaXMucGF0Y2hDc3NTdHlsZXMoKTtcbiAgICB9XG5cbiAgICBzZXRGb2N1cygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNUZXh0RmllbGRFbGVtZW50KSB7XG4gICAgICAgICAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gdGhpcy5pb3NXZWJraXRBdXRvZm9jdXMoKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnQuZm9jdXMoe3ByZXZlbnRTY3JvbGw6IHRydWV9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW9zV2Via2l0QXV0b2ZvY3VzKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBmYWtlSW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQgPSB0aGlzLm1ha2VGYWtlSW5wdXQoKTtcbiAgICAgICAgY29uc3QgZHVyYXRpb24gPSB0aGlzLmdldER1cmF0aW9uVGltZUJlZm9yZUZvY3VzKCk7XG4gICAgICAgIGxldCBmYWtlRm9jdXNUaW1lb3V0SWQgPSAwO1xuICAgICAgICBsZXQgZWxlbWVudEZvY3VzVGltZW91dElkID0gMDtcblxuICAgICAgICBjb25zdCBibHVySGFuZGxlciA9ICgpOiB2b2lkID0+IGZha2VJbnB1dC5mb2N1cyh7cHJldmVudFNjcm9sbDogdHJ1ZX0pO1xuICAgICAgICBjb25zdCBmb2N1c0hhbmRsZXIgPSAoKTogdm9pZCA9PiB7XG4gICAgICAgICAgICBjbGVhclRpbWVvdXQoZmFrZUZvY3VzVGltZW91dElkKTtcblxuICAgICAgICAgICAgZmFrZUZvY3VzVGltZW91dElkID0gdGhpcy53aW4uc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KGVsZW1lbnRGb2N1c1RpbWVvdXRJZCk7XG5cbiAgICAgICAgICAgICAgICBmYWtlSW5wdXQucmVtb3ZlRXZlbnRMaXN0ZW5lcihgYmx1cmAsIGJsdXJIYW5kbGVyKTtcbiAgICAgICAgICAgICAgICBmYWtlSW5wdXQucmVtb3ZlRXZlbnRMaXN0ZW5lcihgZm9jdXNgLCBmb2N1c0hhbmRsZXIpO1xuXG4gICAgICAgICAgICAgICAgZWxlbWVudEZvY3VzVGltZW91dElkID0gdGhpcy53aW4uc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5mb2N1cyh7cHJldmVudFNjcm9sbDogZmFsc2V9KTtcbiAgICAgICAgICAgICAgICAgICAgZmFrZUlucHV0LnJlbW92ZSgpO1xuICAgICAgICAgICAgICAgIH0sIGR1cmF0aW9uKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9O1xuXG4gICAgICAgIGZha2VJbnB1dC5hZGRFdmVudExpc3RlbmVyKGBibHVyYCwgYmx1ckhhbmRsZXIsIHtvbmNlOiB0cnVlfSk7XG4gICAgICAgIGZha2VJbnB1dC5hZGRFdmVudExpc3RlbmVyKGBmb2N1c2AsIGZvY3VzSGFuZGxlcik7XG5cbiAgICAgICAgaWYgKHRoaXMuaW5zaWRlRGlhbG9nKCkpIHtcbiAgICAgICAgICAgIHRoaXMud2luLmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZmFrZUlucHV0KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudC5wYXJlbnRFbGVtZW50Py5hcHBlbmRDaGlsZChmYWtlSW5wdXQpO1xuICAgICAgICB9XG5cbiAgICAgICAgZmFrZUlucHV0LmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiB0cnVlfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQG5vdGU6XG4gICAgICogZW11bGF0ZSB0ZXh0ZmllbGQgcG9zaXRpb24gaW4gbGF5b3V0IHdpdGggY3Vyc29yXG4gICAgICogYmVmb3JlIGZvY3VzIHRvIHJlYWwgdGV4dGZpZWxkIGVsZW1lbnRcbiAgICAgKlxuICAgICAqIHJlcXVpcmVkIG5vdGU6XG4gICAgICogW2Zha2VJbnB1dC5yZWFkT25seSA9IHRydWVdIH5cbiAgICAgKiBkb24ndCB1c2Uge3JlYWRPbmx5OiB0cnVlfSB2YWx1ZSwgaXQncyBkb2Vzbid0IHdvcmsgZm9yIGVtdWxhdGUgYXV0b2ZpbGxcbiAgICAgKlxuICAgICAqIFtmYWtlSW5wdXQuc3R5bGUub3BhY2l0eSA9IDBdIH5cbiAgICAgKiBkb24ndCB1c2Uge29wYWNpdHk6IDB9LCBzb21ldGltZXMgaXQncyBkb2Vzbid0IHdvcmsgZm9yIGVtdWxhdGUgcmVhbCBpbnB1dFxuICAgICAqXG4gICAgICogW2Zha2VJbnB1dC5zdHlsZS5mb250U2l6ZSA9IDE2cHhdIH5cbiAgICAgKiBkaXNhYmxlIHBvc3NpYmxlIGF1dG8gem9vbVxuICAgICAqXG4gICAgICogW2Zha2VJbnB1dC5zdHlsZS50b3AvbGVmdF0gflxuICAgICAqIGVtdWxhdGUgcG9zaXRpb24gY3Vyc29yIGJlZm9yZSBmb2N1cyB0byByZWFsIHRleHRmaWVsZCBlbGVtZW50XG4gICAgICovXG4gICAgcHJpdmF0ZSBtYWtlRmFrZUlucHV0KCk6IEhUTUxJbnB1dEVsZW1lbnQge1xuICAgICAgICBjb25zdCBmYWtlSW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoYGlucHV0YCk7XG4gICAgICAgIGNvbnN0IHJlY3Q6IERPTVJlY3QgPSB0aGlzLmVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgdGhpcy5wYXRjaEZha2VJbnB1dEZyb21Gb2N1c2FibGVFbGVtZW50KGZha2VJbnB1dCk7XG5cbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLmhlaWdodCA9IHR1aVB4KHJlY3QuaGVpZ2h0KTtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLndpZHRoID0gdHVpUHgocmVjdC53aWR0aCAvIDIpO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUucG9zaXRpb24gPSBgZml4ZWRgO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUuekluZGV4ID0gYC05OTk5OTk5OWA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5jYXJldENvbG9yID0gYHRyYW5zcGFyZW50YDtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLmJvcmRlciA9IGBub25lYDtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLm91dGxpbmUgPSBgbm9uZWA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5jb2xvciA9IGB0cmFuc3BhcmVudGA7XG4gICAgICAgIGZha2VJbnB1dC5zdHlsZS5iYWNrZ3JvdW5kID0gYHRyYW5zcGFyZW50YDtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLmN1cnNvciA9IGBub25lYDtcbiAgICAgICAgZmFrZUlucHV0LnN0eWxlLmZvbnRTaXplID0gdHVpUHgoMTYpO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUudG9wID0gdHVpUHgocmVjdC50b3ApO1xuICAgICAgICBmYWtlSW5wdXQuc3R5bGUubGVmdCA9IHR1aVB4KHJlY3QubGVmdCk7XG5cbiAgICAgICAgcmV0dXJuIGZha2VJbnB1dDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldER1cmF0aW9uVGltZUJlZm9yZUZvY3VzKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBwYXJzZUZsb2F0KFxuICAgICAgICAgICAgICAgIHRoaXMud2luXG4gICAgICAgICAgICAgICAgICAgIC5nZXRDb21wdXRlZFN0eWxlKHRoaXMuZWxlbWVudClcbiAgICAgICAgICAgICAgICAgICAgLmdldFByb3BlcnR5VmFsdWUoYC0tdHVpLWR1cmF0aW9uYCksXG4gICAgICAgICAgICApIHx8IDBcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAbm90ZTpcbiAgICAgKiB1bmZvcnR1bmF0ZWx5LCBpbiBvbGRlciB2ZXJzaW9ucyBvZiBpT1NcbiAgICAgKiB0aGVyZSBpcyBhIGJ1ZyB0aGF0IHRoZSBmYWtlIGlucHV0IGN1cnNvclxuICAgICAqIHdpbGwgbW92ZSBhbG9uZyB3aXRoIHRoZSBkaWFsb2cgYW5pbWF0aW9uXG4gICAgICogYW5kIHRoZW4gdGhhdCBkaWFsb2cgd2lsbCBiZSBzaGFraW5nXG4gICAgICovXG4gICAgcHJpdmF0ZSBpbnNpZGVEaWFsb2coKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuZWxlbWVudC5jbG9zZXN0KGB0dWktZGlhbG9nYCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQG5vdGU6XG4gICAgICogVGhpcyBpcyBuZWNlc3Nhcnkgc28gdGhhdCB0aGUgdmlld3BvcnQgaXNuJ3QgcmVjYWxjdWxhdGVkXG4gICAgICogYW5kIHRoZW4gdGhlIGRpYWxvZ3MgZG9uJ3Qgc2hha2UuXG4gICAgICpcbiAgICAgKiBBbHNvLCB3ZSBuZWVkIHRvIGZpeGVkIGhlaWdodCB2aWV3cG9ydCxcbiAgICAgKiBzbyB0aGF0IHdoZW4gZm9jdXNpbmcgdGhlIGRpYWxvZ3MgZG9uJ3Qgc2hha2VcbiAgICAgKi9cbiAgICBwcml2YXRlIHBhdGNoQ3NzU3R5bGVzKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBkb2MgPSB0aGlzLndpbi5kb2N1bWVudDtcblxuICAgICAgICBmb3IgKGNvbnN0IGVsZW1lbnQgb2YgW2RvYy5kb2N1bWVudEVsZW1lbnQsIGRvYy5ib2R5XSkge1xuICAgICAgICAgICAgZWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShgb3ZlcmZsb3dgLCBgYXV0b2ApO1xuICAgICAgICAgICAgZWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShgaGVpZ2h0YCwgYDEwMCVgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBub3RlOlxuICAgICAqIGluaGVyaXQgYmFzaWMgYXR0cmlidXRlcyB2YWx1ZXMgZnJvbSByZWFsIGlucHV0XG4gICAgICogZm9yIGhlbHAgaU9TIGRldGVjdCB3aGF0IGRvIHlvdSB3YW50IHNlZSBvbiBrZXlib2FyZCxcbiAgICAgKiBmb3IgZXhhbXBsZSBbaW5wdXRNb2RlPW51bWVyaWMsIGF1dG9jb21wbGV0ZT1jYy1udW1iZXJdXG4gICAgICovXG4gICAgcHJpdmF0ZSBwYXRjaEZha2VJbnB1dEZyb21Gb2N1c2FibGVFbGVtZW50KGZha2VJbnB1dDogSFRNTElucHV0RWxlbWVudCk6IHZvaWQge1xuICAgICAgICBURVhURklFTERfQVRUUlMuZm9yRWFjaChhdHRyID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZShhdHRyKTtcblxuICAgICAgICAgICAgaWYgKHR1aUlzUHJlc2VudCh2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICBmYWtlSW5wdXQuc2V0QXR0cmlidXRlKGF0dHIsIHZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
|
@@ -1,2 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
1
4
|
export * from './index';
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY2RrLWRpcmVjdGl2ZXMtYXV0by1mb2N1cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kaXJlY3RpdmVzL2F1dG8tZm9jdXMvdGFpZ2EtdWktY2RrLWRpcmVjdGl2ZXMtYXV0by1mb2N1cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
@@ -1,2 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
1
4
|
export * from './index';
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY2RrLWRpcmVjdGl2ZXMtYXV0b2ZpbGxlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kaXJlY3RpdmVzL2F1dG9maWxsZWQvdGFpZ2EtdWktY2RrLWRpcmVjdGl2ZXMtYXV0b2ZpbGxlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|