@taiga-ui/cdk 4.68.0 → 5.0.0-canary.0dce162
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/README.md +1 -1
- package/classes/control.d.ts +3 -5
- package/classes/index.d.ts +0 -1
- package/constants/empty.d.ts +0 -9
- package/constants/handlers.d.ts +2 -0
- package/constants/index.d.ts +0 -1
- package/constants/used-icons.d.ts +2 -2
- package/constants/version.d.ts +1 -1
- package/constants/version.js +1 -1
- package/constants/version.js.map +1 -1
- package/date-time/date-fillers.d.ts +5 -5
- package/date-time/date-time.d.ts +1 -1
- package/date-time/day-range.d.ts +1 -1
- package/date-time/day.d.ts +4 -4
- package/date-time/time.d.ts +2 -2
- package/date-time/types.d.ts +1 -12
- package/directives/active-zone/active-zone.directive.d.ts +3 -5
- package/directives/animated/animated.directive.d.ts +1 -3
- package/directives/animated/index.d.ts +0 -1
- package/directives/auto-focus/autofocus.directive.d.ts +2 -3
- package/directives/auto-focus/autofocus.options.d.ts +2 -2
- package/directives/copy-processor/copy-processor.directive.d.ts +2 -2
- package/directives/hovered/hovered.directive.d.ts +1 -2
- package/directives/index.d.ts +1 -6
- package/directives/media/media.directive.d.ts +8 -12
- package/directives/native-validator/native-validator.directive.d.ts +2 -2
- package/directives/obscured/obscured.directive.d.ts +4 -4
- package/directives/pan/pan.directive.d.ts +1 -2
- package/directives/platform/platform.directive.d.ts +2 -2
- package/directives/resizer/resizer.directive.d.ts +3 -4
- package/directives/swipe/swipe.directive.d.ts +1 -2
- package/directives/transitioned/transitioned.directive.d.ts +1 -0
- package/directives/value-changes/value-changes.directive.d.ts +2 -1
- package/directives/with-styles/index.d.ts +1 -0
- package/directives/with-styles/with-styles.directive.d.ts +10 -0
- package/fesm2022/taiga-ui-cdk-classes.mjs +9 -93
- package/fesm2022/taiga-ui-cdk-classes.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-constants.mjs +18 -42
- package/fesm2022/taiga-ui-cdk-constants.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-date-time.mjs +22 -22
- package/fesm2022/taiga-ui-cdk-date-time.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-active-zone.mjs +27 -42
- package/fesm2022/taiga-ui-cdk-directives-active-zone.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-animated.mjs +24 -71
- package/fesm2022/taiga-ui-cdk-directives-animated.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-auto-focus.mjs +15 -17
- package/fesm2022/taiga-ui-cdk-directives-auto-focus.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-control.mjs +3 -4
- package/fesm2022/taiga-ui-cdk-directives-control.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-copy-processor.mjs +9 -14
- package/fesm2022/taiga-ui-cdk-directives-copy-processor.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-element.mjs +5 -6
- package/fesm2022/taiga-ui-cdk-directives-element.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-focus-trap.mjs +8 -13
- package/fesm2022/taiga-ui-cdk-directives-focus-trap.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-font-size.mjs +4 -7
- package/fesm2022/taiga-ui-cdk-directives-font-size.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-high-dpi.mjs +4 -7
- package/fesm2022/taiga-ui-cdk-directives-high-dpi.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-hovered.mjs +14 -19
- package/fesm2022/taiga-ui-cdk-directives-hovered.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-item.mjs +4 -7
- package/fesm2022/taiga-ui-cdk-directives-item.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-media.mjs +33 -58
- package/fesm2022/taiga-ui-cdk-directives-media.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-native-validator.mjs +10 -14
- package/fesm2022/taiga-ui-cdk-directives-native-validator.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-obscured.mjs +15 -23
- package/fesm2022/taiga-ui-cdk-directives-obscured.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-pan.mjs +12 -16
- package/fesm2022/taiga-ui-cdk-directives-pan.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-platform.mjs +9 -14
- package/fesm2022/taiga-ui-cdk-directives-platform.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-resizer.mjs +20 -26
- package/fesm2022/taiga-ui-cdk-directives-resizer.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-swipe.mjs +11 -13
- package/fesm2022/taiga-ui-cdk-directives-swipe.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-transitioned.mjs +9 -16
- package/fesm2022/taiga-ui-cdk-directives-transitioned.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-validator.mjs +4 -5
- package/fesm2022/taiga-ui-cdk-directives-validator.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-value-changes.mjs +9 -12
- package/fesm2022/taiga-ui-cdk-directives-value-changes.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-visual-viewport.mjs +8 -10
- package/fesm2022/taiga-ui-cdk-directives-visual-viewport.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-with-styles.mjs +29 -0
- package/fesm2022/taiga-ui-cdk-directives-with-styles.mjs.map +1 -0
- package/fesm2022/taiga-ui-cdk-directives-zoom.mjs +11 -17
- package/fesm2022/taiga-ui-cdk-directives-zoom.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives.mjs +1 -6
- package/fesm2022/taiga-ui-cdk-directives.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-observables.mjs +2 -24
- package/fesm2022/taiga-ui-cdk-observables.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-filter.mjs +4 -7
- package/fesm2022/taiga-ui-cdk-pipes-filter.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-mapper.mjs +4 -7
- package/fesm2022/taiga-ui-cdk-pipes-mapper.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes-obfuscate.mjs +6 -8
- package/fesm2022/taiga-ui-cdk-pipes-obfuscate.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-pipes.mjs +0 -6
- package/fesm2022/taiga-ui-cdk-pipes.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-portals.mjs +126 -0
- package/fesm2022/taiga-ui-cdk-portals.mjs.map +1 -0
- package/fesm2022/taiga-ui-cdk-tokens.mjs +24 -91
- package/fesm2022/taiga-ui-cdk-tokens.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-di.mjs +46 -6
- package/fesm2022/taiga-ui-cdk-utils-di.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-dom.mjs +4 -82
- package/fesm2022/taiga-ui-cdk-utils-dom.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-focus.mjs +22 -39
- package/fesm2022/taiga-ui-cdk-utils-focus.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-math.mjs +13 -21
- package/fesm2022/taiga-ui-cdk-utils-math.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-miscellaneous.mjs +19 -198
- package/fesm2022/taiga-ui-cdk-utils-miscellaneous.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils.mjs +0 -2
- package/fesm2022/taiga-ui-cdk-utils.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk.mjs +1 -1
- package/index.d.ts +1 -1
- package/observables/index.d.ts +0 -2
- package/package.json +26 -189
- package/pipes/index.d.ts +0 -6
- package/pipes/obfuscate/obfuscate.options.d.ts +2 -2
- package/portals/directive.d.ts +11 -0
- package/portals/index.d.ts +4 -0
- package/portals/portal.d.ts +24 -0
- package/portals/portals.d.ts +12 -0
- package/portals/service.d.ts +15 -0
- package/schematics/constants/file-globs.js +1 -1
- package/schematics/constants/file-globs.js.map +1 -1
- package/schematics/index.d.ts +5 -0
- package/schematics/index.js +4 -0
- package/schematics/index.js.map +1 -1
- package/schematics/migration.json +1 -1
- package/schematics/ng-add/constants/versions.d.ts +1 -1
- package/schematics/ng-add/index.js +1 -2
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/setup-project.js +1 -1
- package/schematics/ng-add/setup-project.js.map +1 -1
- package/schematics/ng-add/steps/add-taiga-icons.js +2 -3
- package/schematics/ng-add/steps/add-taiga-icons.js.map +1 -1
- package/schematics/ng-add/steps/add-taiga-modules.js +1 -17
- package/schematics/ng-add/steps/add-taiga-modules.js.map +1 -1
- package/schematics/ng-add/steps/add-taiga-styles.js +1 -2
- package/schematics/ng-add/steps/add-taiga-styles.js.map +1 -1
- package/schematics/ng-add/steps/wrap-with-tui-root.js +1 -2
- package/schematics/ng-add/steps/wrap-with-tui-root.js.map +1 -1
- package/schematics/ng-update/interfaces/html-comment.d.ts +1 -1
- package/schematics/ng-update/interfaces/removable-input.d.ts +1 -1
- package/schematics/ng-update/interfaces/replacement-attribute-to-directive.d.ts +1 -1
- package/schematics/ng-update/interfaces/replacement-attribute-value.d.ts +1 -1
- package/schematics/ng-update/interfaces/replacement-attribute.d.ts +1 -1
- package/schematics/ng-update/interfaces/replacement-tag.d.ts +1 -1
- package/schematics/ng-update/steps/icons/replace-imports.js +2 -5
- package/schematics/ng-update/steps/icons/replace-imports.js.map +1 -1
- package/schematics/ng-update/steps/rename-types.js +1 -2
- package/schematics/ng-update/steps/rename-types.js.map +1 -1
- package/schematics/ng-update/steps/replace-deep-import.js +1 -2
- package/schematics/ng-update/steps/replace-deep-import.js.map +1 -1
- package/schematics/ng-update/steps/replace-enums.js +1 -2
- package/schematics/ng-update/steps/replace-enums.js.map +1 -1
- package/schematics/ng-update/steps/replace-identifier.js +3 -6
- package/schematics/ng-update/steps/replace-identifier.js.map +1 -1
- package/schematics/ng-update/steps/replace-package-name.js +1 -2
- package/schematics/ng-update/steps/replace-package-name.js.map +1 -1
- package/schematics/ng-update/steps/replace-services.js +1 -2
- package/schematics/ng-update/steps/replace-services.js.map +1 -1
- package/schematics/ng-update/steps/show-warnings.js +1 -2
- package/schematics/ng-update/steps/show-warnings.js.map +1 -1
- package/schematics/ng-update/utils/get-file-system.js +1 -2
- package/schematics/ng-update/utils/get-file-system.js.map +1 -1
- package/schematics/ng-update/{v4/steps → utils}/replace-functions.d.ts +1 -1
- package/schematics/ng-update/{v4/steps → utils}/replace-functions.js +2 -3
- package/schematics/ng-update/utils/replace-functions.js.map +1 -0
- package/schematics/ng-update/utils/replace-text.js +1 -2
- package/schematics/ng-update/utils/replace-text.js.map +1 -1
- package/schematics/ng-update/utils/templates/dom-traversal.d.ts +5 -0
- package/schematics/ng-update/utils/templates/dom-traversal.js +29 -0
- package/schematics/ng-update/utils/templates/dom-traversal.js.map +1 -0
- package/schematics/ng-update/utils/templates/index.d.ts +1 -0
- package/schematics/ng-update/utils/templates/index.js +1 -0
- package/schematics/ng-update/utils/templates/index.js.map +1 -1
- package/schematics/ng-update/utils/templates/remove-inputs.js +1 -2
- package/schematics/ng-update/utils/templates/remove-inputs.js.map +1 -1
- package/schematics/ng-update/utils/templates/replace-attr-values.js +1 -2
- package/schematics/ng-update/utils/templates/replace-attr-values.js.map +1 -1
- package/schematics/ng-update/utils/templates/replace-attrs-by-directives.js +1 -2
- package/schematics/ng-update/utils/templates/replace-attrs-by-directives.js.map +1 -1
- package/schematics/ng-update/utils/templates/replace-attrs.js +1 -2
- package/schematics/ng-update/utils/templates/replace-attrs.js.map +1 -1
- package/schematics/ng-update/utils/templates/replace-tag.d.ts +1 -1
- package/schematics/ng-update/utils/templates/replace-tag.js +19 -7
- package/schematics/ng-update/utils/templates/replace-tag.js.map +1 -1
- package/schematics/ng-update/utils/templates/replace-tags.js +2 -3
- package/schematics/ng-update/utils/templates/replace-tags.js.map +1 -1
- package/schematics/ng-update/utils/templates/template-comments.js +1 -2
- package/schematics/ng-update/utils/templates/template-comments.js.map +1 -1
- package/schematics/ng-update/v4/index.js +2 -3
- package/schematics/ng-update/v4/index.js.map +1 -1
- package/schematics/ng-update/v4/migrate-addon-doc/index.js +1 -2
- package/schematics/ng-update/v4/migrate-addon-doc/index.js.map +1 -1
- package/schematics/ng-update/v4/migrate-css-vars/index.js +1 -2
- package/schematics/ng-update/v4/migrate-css-vars/index.js.map +1 -1
- package/schematics/ng-update/v4/migrate-css-vars/palette.d.ts +4 -4
- package/schematics/ng-update/v4/migrate-css-vars/palette.js +4 -4
- package/schematics/ng-update/v4/migrate-css-vars/palette.js.map +1 -1
- package/schematics/ng-update/v4/migrate-css-vars/rename-css-vars.d.ts +0 -1
- package/schematics/ng-update/v4/migrate-css-vars/rename-css-vars.js +2 -3
- package/schematics/ng-update/v4/migrate-css-vars/rename-css-vars.js.map +1 -1
- package/schematics/ng-update/v4/migrate-icons/index.js +1 -2
- package/schematics/ng-update/v4/migrate-icons/index.js.map +1 -1
- package/schematics/ng-update/v4/migrate-icons/rename-icons.d.ts +0 -1
- package/schematics/ng-update/v4/migrate-icons/rename-icons.js +1 -2
- package/schematics/ng-update/v4/migrate-icons/rename-icons.js.map +1 -1
- package/schematics/ng-update/v4/migrate-icons/rename-proprietary-icons.d.ts +0 -1
- package/schematics/ng-update/v4/migrate-icons/rename-proprietary-icons.js +1 -2
- package/schematics/ng-update/v4/migrate-icons/rename-proprietary-icons.js.map +1 -1
- package/schematics/ng-update/v4/steps/constants/attrs-to-replace.js +4 -12
- package/schematics/ng-update/v4/steps/constants/attrs-to-replace.js.map +1 -1
- package/schematics/ng-update/v4/steps/constants/identifiers-to-replace.js +36 -37
- package/schematics/ng-update/v4/steps/constants/identifiers-to-replace.js.map +1 -1
- package/schematics/ng-update/v4/steps/constants/tags-to-replace.js +4 -8
- package/schematics/ng-update/v4/steps/constants/tags-to-replace.js.map +1 -1
- package/schematics/ng-update/v4/steps/drop-universal-mock.js +1 -2
- package/schematics/ng-update/v4/steps/drop-universal-mock.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-alert-service.js +1 -2
- package/schematics/ng-update/v4/steps/migrate-alert-service.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-all-country-iso-codes.js +1 -2
- package/schematics/ng-update/v4/steps/migrate-all-country-iso-codes.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-destroy-service.js +1 -2
- package/schematics/ng-update/v4/steps/migrate-destroy-service.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-editor.d.ts +0 -1
- package/schematics/ng-update/v4/steps/migrate-editor.js +2 -2
- package/schematics/ng-update/v4/steps/migrate-editor.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-legacy-mask.js +1 -2
- package/schematics/ng-update/v4/steps/migrate-legacy-mask.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-month-context.js +1 -2
- package/schematics/ng-update/v4/steps/migrate-month-context.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-number-format-settings.js +1 -2
- package/schematics/ng-update/v4/steps/migrate-number-format-settings.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-option-providers.js +1 -2
- package/schematics/ng-update/v4/steps/migrate-option-providers.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-proprietary.d.ts +0 -1
- package/schematics/ng-update/v4/steps/migrate-proprietary.js +2 -3
- package/schematics/ng-update/v4/steps/migrate-proprietary.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-providers-from.js +1 -2
- package/schematics/ng-update/v4/steps/migrate-providers-from.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-root.js +2 -4
- package/schematics/ng-update/v4/steps/migrate-root.js.map +1 -1
- package/schematics/ng-update/v4/steps/migrate-templates.d.ts +2 -2
- package/schematics/ng-update/v4/steps/migrate-templates.js +3 -6
- package/schematics/ng-update/v4/steps/migrate-templates.js.map +1 -1
- package/schematics/ng-update/v4/steps/remove-duplicates.js +1 -2
- package/schematics/ng-update/v4/steps/remove-duplicates.js.map +1 -1
- package/schematics/ng-update/v4/steps/restore-tui-mapper.js +2 -3
- package/schematics/ng-update/v4/steps/restore-tui-mapper.js.map +1 -1
- package/schematics/ng-update/v4/steps/restore-tui-matcher.js +2 -3
- package/schematics/ng-update/v4/steps/restore-tui-matcher.js.map +1 -1
- package/schematics/ng-update/v4/steps/styles/index.d.ts +0 -1
- package/schematics/ng-update/v4/steps/styles/index.js +2 -2
- package/schematics/ng-update/v4/steps/styles/index.js.map +1 -1
- package/schematics/ng-update/v4/steps/styles/migrate-legacy-mixins.js +1 -2
- package/schematics/ng-update/v4/steps/styles/migrate-legacy-mixins.js.map +1 -1
- package/schematics/ng-update/v4/steps/styles/migrate-less-scss-constants.js +2 -5
- package/schematics/ng-update/v4/steps/styles/migrate-less-scss-constants.js.map +1 -1
- package/schematics/ng-update/v4/steps/styles/migrate-mixins.js +1 -2
- package/schematics/ng-update/v4/steps/styles/migrate-mixins.js.map +1 -1
- package/schematics/ng-update/v4/steps/styles/migrate-shadow-mixins.js +1 -2
- package/schematics/ng-update/v4/steps/styles/migrate-shadow-mixins.js.map +1 -1
- package/schematics/ng-update/v4/steps/styles/migrate-space-mixins.js +2 -3
- package/schematics/ng-update/v4/steps/styles/migrate-space-mixins.js.map +1 -1
- package/schematics/ng-update/v4/steps/styles/migrate-text-mixins.js +14 -15
- package/schematics/ng-update/v4/steps/styles/migrate-text-mixins.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/dropdown-ref-comment.js +1 -2
- package/schematics/ng-update/v4/steps/templates/dropdown-ref-comment.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-active-zone.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-active-zone.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-avatar.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-avatar.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-axes.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-axes.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-badge.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-badge.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-badged-content.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-badged-content.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-blocked.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-blocked.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-button-appearance.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-button-appearance.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-expandable.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-expandable.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-filter-pipe.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-filter-pipe.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-focusable.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-focusable.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-label.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-label.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-labeled.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-labeled.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-mobile-tabs.js +2 -3
- package/schematics/ng-update/v4/steps/templates/migrate-mobile-tabs.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-money.js +11 -6
- package/schematics/ng-update/v4/steps/templates/migrate-money.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-notification.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-notification.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-number-precision.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-number-precision.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-overscroll.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-overscroll.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-prevent-default.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-prevent-default.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-progress-segmented.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-progress-segmented.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/migrate-thumbnail-card.js +1 -2
- package/schematics/ng-update/v4/steps/templates/migrate-thumbnail-card.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/toggles/common.js +4 -5
- package/schematics/ng-update/v4/steps/templates/toggles/common.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/toggles/migrate-checkbox.js +1 -2
- package/schematics/ng-update/v4/steps/templates/toggles/migrate-checkbox.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/toggles/migrate-radio.js +1 -2
- package/schematics/ng-update/v4/steps/templates/toggles/migrate-radio.js.map +1 -1
- package/schematics/ng-update/v4/steps/templates/toggles/migrate-toggle.js +1 -2
- package/schematics/ng-update/v4/steps/templates/toggles/migrate-toggle.js.map +1 -1
- package/schematics/ng-update/v4/steps/update-packages.d.ts +0 -1
- package/schematics/ng-update/v4/steps/update-packages.js +2 -2
- package/schematics/ng-update/v4/steps/update-packages.js.map +1 -1
- package/schematics/ng-update/v4/steps/utils/clean-object.js +1 -2
- package/schematics/ng-update/v4/steps/utils/clean-object.js.map +1 -1
- package/schematics/ng-update/v4/steps/utils/normalize-attr-value.js +1 -2
- package/schematics/ng-update/v4/steps/utils/normalize-attr-value.js.map +1 -1
- package/schematics/ng-update/v4/steps/utils/remove-attrs.js +1 -2
- package/schematics/ng-update/v4/steps/utils/remove-attrs.js.map +1 -1
- package/schematics/ng-update/v4/steps/utils/replace-modules-with-providers.js.map +1 -1
- package/schematics/ng-update/v4/steps/utils/replace-substrings.js +1 -2
- package/schematics/ng-update/v4/steps/utils/replace-substrings.js.map +1 -1
- package/schematics/ng-update/v4/tests/migrate-destroy-service/utils.js +1 -2
- package/schematics/ng-update/v4/tests/migrate-destroy-service/utils.js.map +1 -1
- package/schematics/ng-update/v5/index.js +17 -2
- package/schematics/ng-update/v5/index.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/attrs-to-replace.d.ts +2 -0
- package/schematics/ng-update/v5/steps/constants/attrs-to-replace.js +30 -0
- package/schematics/ng-update/v5/steps/constants/attrs-to-replace.js.map +1 -0
- package/schematics/ng-update/v5/steps/constants/functions.d.ts +2 -0
- package/schematics/ng-update/v5/steps/constants/functions.js +67 -0
- package/schematics/ng-update/v5/steps/constants/functions.js.map +1 -0
- package/schematics/ng-update/v5/steps/constants/html-comments.d.ts +2 -0
- package/schematics/ng-update/v5/steps/constants/html-comments.js +23 -0
- package/schematics/ng-update/v5/steps/constants/html-comments.js.map +1 -0
- package/schematics/ng-update/v5/steps/constants/identifiers-to-replace.d.ts +2 -0
- package/schematics/ng-update/v5/steps/constants/identifiers-to-replace.js +172 -0
- package/schematics/ng-update/v5/steps/constants/identifiers-to-replace.js.map +1 -0
- package/schematics/ng-update/v5/steps/constants/tags-to-replace.d.ts +2 -0
- package/schematics/ng-update/v5/steps/constants/tags-to-replace.js +26 -0
- package/schematics/ng-update/v5/steps/constants/tags-to-replace.js.map +1 -0
- package/schematics/ng-update/v5/steps/migrate-css-variables.d.ts +3 -0
- package/schematics/ng-update/v5/steps/migrate-css-variables.js +31 -0
- package/schematics/ng-update/v5/steps/migrate-css-variables.js.map +1 -0
- package/schematics/ng-update/v5/steps/migrate-templates.d.ts +17 -0
- package/schematics/ng-update/v5/steps/migrate-templates.js +50 -0
- package/schematics/ng-update/v5/steps/migrate-templates.js.map +1 -0
- package/schematics/ng-update/v5/steps/migrate-tokens/migrate-tokens.js +1 -2
- package/schematics/ng-update/v5/steps/migrate-tokens/migrate-tokens.js.map +1 -1
- package/schematics/ng-update/v5/steps/migrate-tokens/update-tsconfig.js +1 -2
- package/schematics/ng-update/v5/steps/migrate-tokens/update-tsconfig.js.map +1 -1
- package/schematics/ng-update/v5/steps/migrate-tui-let.d.ts +3 -0
- package/schematics/ng-update/v5/steps/migrate-tui-let.js +95 -0
- package/schematics/ng-update/v5/steps/migrate-tui-let.js.map +1 -0
- package/schematics/ng-update/v5/steps/templates/migrate-accordion.d.ts +8 -0
- package/schematics/ng-update/v5/steps/templates/migrate-accordion.js +199 -0
- package/schematics/ng-update/v5/steps/templates/migrate-accordion.js.map +1 -0
- package/schematics/ng-update/v5/steps/templates/migrate-avatar.d.ts +8 -0
- package/schematics/ng-update/v5/steps/templates/migrate-avatar.js +104 -0
- package/schematics/ng-update/v5/steps/templates/migrate-avatar.js.map +1 -0
- package/schematics/ng-update/v5/steps/templates/migrate-input-year.d.ts +8 -0
- package/schematics/ng-update/v5/steps/templates/migrate-input-year.js +52 -0
- package/schematics/ng-update/v5/steps/templates/migrate-input-year.js.map +1 -0
- package/schematics/ng-update/v5/steps/templates/migrate-notification.d.ts +8 -0
- package/schematics/ng-update/v5/steps/templates/migrate-notification.js +45 -0
- package/schematics/ng-update/v5/steps/templates/migrate-notification.js.map +1 -0
- package/schematics/ng-update/v5/tests/migrate-tokens/utils.js +1 -2
- package/schematics/ng-update/v5/tests/migrate-tokens/utils.js.map +1 -1
- package/schematics/utils/add-import-to-closest-module.js +3 -6
- package/schematics/utils/add-import-to-closest-module.js.map +1 -1
- package/schematics/utils/add-unique-import.js +2 -5
- package/schematics/utils/add-unique-import.js.map +1 -1
- package/schematics/utils/angular-json-manipulations.js +2 -5
- package/schematics/utils/angular-json-manipulations.js.map +1 -1
- package/schematics/utils/create-angular-json.js +1 -2
- package/schematics/utils/create-angular-json.js.map +1 -1
- package/schematics/utils/get-component-from-identifier.js +1 -2
- package/schematics/utils/get-component-from-identifier.js.map +1 -1
- package/schematics/utils/get-execution-time.js +1 -2
- package/schematics/utils/get-execution-time.js.map +1 -1
- package/schematics/utils/get-named-import-references.js +1 -2
- package/schematics/utils/get-named-import-references.js.map +1 -1
- package/schematics/utils/get-project-target-options.js +1 -2
- package/schematics/utils/get-project-target-options.js.map +1 -1
- package/schematics/utils/get-projects.js +1 -2
- package/schematics/utils/get-projects.js.map +1 -1
- package/schematics/utils/get-standalone-bootstrap-function.d.ts +1 -1
- package/schematics/utils/get-standalone-bootstrap-function.js +2 -5
- package/schematics/utils/get-standalone-bootstrap-function.js.map +1 -1
- package/schematics/utils/import-manipulations.js +2 -3
- package/schematics/utils/import-manipulations.js.map +1 -1
- package/schematics/utils/insert-todo.js +2 -2
- package/schematics/utils/insert-todo.js.map +1 -1
- package/schematics/utils/is-ci.js +1 -2
- package/schematics/utils/is-ci.js.map +1 -1
- package/schematics/utils/make-angular-json-with-assets.js +1 -2
- package/schematics/utils/make-angular-json-with-assets.js.map +1 -1
- package/schematics/utils/progress.js +1 -2
- package/schematics/utils/progress.js.map +1 -1
- package/schematics/utils/push-to-array-property.js +1 -2
- package/schematics/utils/push-to-array-property.js.map +1 -1
- package/schematics/utils/remove-module.js +2 -3
- package/schematics/utils/remove-module.js.map +1 -1
- package/schematics/utils/run-migration.d.ts +14 -0
- package/schematics/utils/run-migration.js +27 -0
- package/schematics/utils/run-migration.js.map +1 -0
- package/schematics/utils/templates/elements.d.ts +4 -1
- package/schematics/utils/templates/elements.js +15 -24
- package/schematics/utils/templates/elements.js.map +1 -1
- package/schematics/utils/templates/get-component-templates.js +1 -2
- package/schematics/utils/templates/get-component-templates.js.map +1 -1
- package/schematics/utils/templates/inputs.js +2 -3
- package/schematics/utils/templates/inputs.js.map +1 -1
- package/schematics/utils/templates/ng-component-input-manipulations.d.ts +3 -3
- package/schematics/utils/templates/ng-component-input-manipulations.js +6 -9
- package/schematics/utils/templates/ng-component-input-manipulations.js.map +1 -1
- package/schematics/utils/templates/template-resource.js +3 -4
- package/schematics/utils/templates/template-resource.js.map +1 -1
- package/tokens/index.d.ts +1 -3
- package/tokens/platform.d.ts +2 -0
- package/tokens/removed-element.d.ts +0 -3
- package/types/index.d.ts +0 -3
- package/utils/di/create-options.d.ts +2 -2
- package/utils/di/index.d.ts +3 -0
- package/utils/di/provide-options.d.ts +2 -0
- package/utils/dom/index.d.ts +0 -6
- package/utils/focus/get-closest-focusable.d.ts +1 -6
- package/utils/focus/{get-native-focused.d.ts → get-focused.d.ts} +0 -5
- package/utils/focus/index.d.ts +4 -6
- package/utils/focus/{is-native-keyboard-focusable.d.ts → is-focusable.d.ts} +1 -6
- package/utils/focus/{is-native-focused-in.d.ts → is-focused-in.d.ts} +0 -5
- package/utils/focus/{is-native-focused.d.ts → is-focused.d.ts} +0 -5
- package/utils/index.d.ts +0 -2
- package/utils/math/clamp.d.ts +1 -5
- package/utils/math/index.d.ts +0 -2
- package/utils/miscellaneous/generate-id.d.ts +1 -0
- package/utils/miscellaneous/index.d.ts +2 -12
- package/utils/miscellaneous/is-string.js +1 -2
- package/utils/miscellaneous/is-string.js.map +1 -1
- package/utils/miscellaneous/set-signal.d.ts +2 -0
- package/classes/portals.d.ts +0 -33
- package/constants/allow-signal-writes.d.ts +0 -2
- package/directives/animated/animated-parent.directive.d.ts +0 -10
- package/directives/click-outside/click-outside.directive.d.ts +0 -14
- package/directives/click-outside/index.d.ts +0 -1
- package/directives/droppable/droppable.directive.d.ts +0 -8
- package/directives/droppable/index.d.ts +0 -1
- package/directives/for/for.directive.d.ts +0 -15
- package/directives/for/index.d.ts +0 -1
- package/directives/let/index.d.ts +0 -2
- package/directives/let/let-context.d.ts +0 -11
- package/directives/let/let.directive.d.ts +0 -18
- package/directives/popover/index.d.ts +0 -1
- package/directives/popover/popover.directive.d.ts +0 -14
- package/directives/repeat-times/index.d.ts +0 -1
- package/directives/repeat-times/repeat-times.directive.d.ts +0 -22
- package/esm2022/classes/control.mjs +0 -96
- package/esm2022/classes/index.mjs +0 -5
- package/esm2022/classes/portals.mjs +0 -77
- package/esm2022/classes/taiga-ui-cdk-classes.mjs +0 -5
- package/esm2022/classes/validation-error.mjs +0 -7
- package/esm2022/classes/value-transformer.mjs +0 -25
- package/esm2022/constants/allow-signal-writes.mjs +0 -3
- package/esm2022/constants/empty.mjs +0 -25
- package/esm2022/constants/handlers.mjs +0 -11
- package/esm2022/constants/index.mjs +0 -10
- package/esm2022/constants/matchers.mjs +0 -26
- package/esm2022/constants/regexp.mjs +0 -4
- package/esm2022/constants/svg-node-filter.mjs +0 -8
- package/esm2022/constants/taiga-ui-cdk-constants.mjs +0 -5
- package/esm2022/constants/unicode-chars.mjs +0 -64
- package/esm2022/constants/used-icons.mjs +0 -76
- package/esm2022/constants/version.mjs +0 -2
- package/esm2022/date-time/date-clamp.mjs +0 -10
- package/esm2022/date-time/date-fillers.mjs +0 -15
- package/esm2022/date-time/date-time.mjs +0 -20
- package/esm2022/date-time/day-of-week.mjs +0 -10
- package/esm2022/date-time/day-range.mjs +0 -84
- package/esm2022/date-time/day.mjs +0 -306
- package/esm2022/date-time/days.const.mjs +0 -6
- package/esm2022/date-time/index.mjs +0 -13
- package/esm2022/date-time/month-number.mjs +0 -15
- package/esm2022/date-time/month-range.mjs +0 -27
- package/esm2022/date-time/month.mjs +0 -152
- package/esm2022/date-time/taiga-ui-cdk-date-time.mjs +0 -5
- package/esm2022/date-time/time.mjs +0 -160
- package/esm2022/date-time/types.mjs +0 -2
- package/esm2022/date-time/year.mjs +0 -111
- package/esm2022/directives/active-zone/active-zone.directive.mjs +0 -73
- package/esm2022/directives/active-zone/index.mjs +0 -2
- package/esm2022/directives/active-zone/taiga-ui-cdk-directives-active-zone.mjs +0 -5
- package/esm2022/directives/animated/animated-parent.directive.mjs +0 -39
- package/esm2022/directives/animated/animated.directive.mjs +0 -82
- package/esm2022/directives/animated/index.mjs +0 -3
- package/esm2022/directives/animated/taiga-ui-cdk-directives-animated.mjs +0 -5
- package/esm2022/directives/auto-focus/autofocus.directive.mjs +0 -46
- package/esm2022/directives/auto-focus/autofocus.options.mjs +0 -31
- package/esm2022/directives/auto-focus/handlers/abstract.handler.mjs +0 -17
- package/esm2022/directives/auto-focus/handlers/default.handler.mjs +0 -21
- package/esm2022/directives/auto-focus/handlers/ios.handler.mjs +0 -125
- package/esm2022/directives/auto-focus/handlers/sync.handler.mjs +0 -7
- package/esm2022/directives/auto-focus/index.mjs +0 -7
- package/esm2022/directives/auto-focus/taiga-ui-cdk-directives-auto-focus.mjs +0 -5
- package/esm2022/directives/click-outside/click-outside.directive.mjs +0 -33
- package/esm2022/directives/click-outside/index.mjs +0 -2
- package/esm2022/directives/click-outside/taiga-ui-cdk-directives-click-outside.mjs +0 -5
- package/esm2022/directives/control/control.directive.mjs +0 -23
- package/esm2022/directives/control/index.mjs +0 -2
- package/esm2022/directives/control/taiga-ui-cdk-directives-control.mjs +0 -5
- package/esm2022/directives/copy-processor/copy-processor.directive.mjs +0 -33
- package/esm2022/directives/copy-processor/index.mjs +0 -2
- package/esm2022/directives/copy-processor/taiga-ui-cdk-directives-copy-processor.mjs +0 -5
- package/esm2022/directives/droppable/droppable.directive.mjs +0 -31
- package/esm2022/directives/droppable/index.mjs +0 -2
- package/esm2022/directives/droppable/taiga-ui-cdk-directives-droppable.mjs +0 -5
- package/esm2022/directives/element/element.directive.mjs +0 -35
- package/esm2022/directives/element/index.mjs +0 -2
- package/esm2022/directives/element/taiga-ui-cdk-directives-element.mjs +0 -5
- package/esm2022/directives/focus-trap/focus-trap.directive.mjs +0 -61
- package/esm2022/directives/focus-trap/index.mjs +0 -2
- package/esm2022/directives/focus-trap/taiga-ui-cdk-directives-focus-trap.mjs +0 -5
- package/esm2022/directives/font-size/font-size.directive.mjs +0 -27
- package/esm2022/directives/font-size/index.mjs +0 -2
- package/esm2022/directives/font-size/taiga-ui-cdk-directives-font-size.mjs +0 -5
- package/esm2022/directives/for/for.directive.mjs +0 -37
- package/esm2022/directives/for/index.mjs +0 -2
- package/esm2022/directives/for/taiga-ui-cdk-directives-for.mjs +0 -5
- package/esm2022/directives/high-dpi/high-dpi.directive.mjs +0 -23
- package/esm2022/directives/high-dpi/index.mjs +0 -2
- package/esm2022/directives/high-dpi/taiga-ui-cdk-directives-high-dpi.mjs +0 -5
- package/esm2022/directives/hovered/hovered.directive.mjs +0 -22
- package/esm2022/directives/hovered/hovered.service.mjs +0 -35
- package/esm2022/directives/hovered/index.mjs +0 -3
- package/esm2022/directives/hovered/taiga-ui-cdk-directives-hovered.mjs +0 -5
- package/esm2022/directives/index.mjs +0 -30
- package/esm2022/directives/item/index.mjs +0 -2
- package/esm2022/directives/item/item.directive.mjs +0 -18
- package/esm2022/directives/item/taiga-ui-cdk-directives-item.mjs +0 -5
- package/esm2022/directives/let/index.mjs +0 -3
- package/esm2022/directives/let/let-context.mjs +0 -15
- package/esm2022/directives/let/let.directive.mjs +0 -33
- package/esm2022/directives/let/taiga-ui-cdk-directives-let.mjs +0 -5
- package/esm2022/directives/media/index.mjs +0 -2
- package/esm2022/directives/media/media.directive.mjs +0 -89
- package/esm2022/directives/media/taiga-ui-cdk-directives-media.mjs +0 -5
- package/esm2022/directives/native-validator/index.mjs +0 -2
- package/esm2022/directives/native-validator/native-validator.directive.mjs +0 -43
- package/esm2022/directives/native-validator/taiga-ui-cdk-directives-native-validator.mjs +0 -5
- package/esm2022/directives/obscured/index.mjs +0 -3
- package/esm2022/directives/obscured/obscured.directive.mjs +0 -38
- package/esm2022/directives/obscured/obscured.service.mjs +0 -24
- package/esm2022/directives/obscured/taiga-ui-cdk-directives-obscured.mjs +0 -5
- package/esm2022/directives/pan/index.mjs +0 -3
- package/esm2022/directives/pan/pan.directive.mjs +0 -22
- package/esm2022/directives/pan/pan.service.mjs +0 -28
- package/esm2022/directives/pan/taiga-ui-cdk-directives-pan.mjs +0 -5
- package/esm2022/directives/platform/index.mjs +0 -2
- package/esm2022/directives/platform/platform.directive.mjs +0 -35
- package/esm2022/directives/platform/taiga-ui-cdk-directives-platform.mjs +0 -5
- package/esm2022/directives/popover/index.mjs +0 -2
- package/esm2022/directives/popover/popover.directive.mjs +0 -26
- package/esm2022/directives/popover/taiga-ui-cdk-directives-popover.mjs +0 -5
- package/esm2022/directives/repeat-times/index.mjs +0 -2
- package/esm2022/directives/repeat-times/repeat-times.directive.mjs +0 -55
- package/esm2022/directives/repeat-times/taiga-ui-cdk-directives-repeat-times.mjs +0 -5
- package/esm2022/directives/resizer/index.mjs +0 -3
- package/esm2022/directives/resizer/resizable.directive.mjs +0 -16
- package/esm2022/directives/resizer/resizer.directive.mjs +0 -83
- package/esm2022/directives/resizer/taiga-ui-cdk-directives-resizer.mjs +0 -5
- package/esm2022/directives/swipe/index.mjs +0 -4
- package/esm2022/directives/swipe/swipe.directive.mjs +0 -22
- package/esm2022/directives/swipe/swipe.options.mjs +0 -8
- package/esm2022/directives/swipe/swipe.service.mjs +0 -50
- package/esm2022/directives/swipe/swipe.types.mjs +0 -2
- package/esm2022/directives/swipe/taiga-ui-cdk-directives-swipe.mjs +0 -5
- package/esm2022/directives/taiga-ui-cdk-directives.mjs +0 -5
- package/esm2022/directives/transitioned/index.mjs +0 -2
- package/esm2022/directives/transitioned/taiga-ui-cdk-directives-transitioned.mjs +0 -5
- package/esm2022/directives/transitioned/transitioned.directive.mjs +0 -27
- package/esm2022/directives/validator/index.mjs +0 -2
- package/esm2022/directives/validator/taiga-ui-cdk-directives-validator.mjs +0 -5
- package/esm2022/directives/validator/validator.directive.mjs +0 -30
- package/esm2022/directives/value-changes/index.mjs +0 -2
- package/esm2022/directives/value-changes/taiga-ui-cdk-directives-value-changes.mjs +0 -5
- package/esm2022/directives/value-changes/value-changes.directive.mjs +0 -29
- package/esm2022/directives/visual-viewport/index.mjs +0 -2
- package/esm2022/directives/visual-viewport/taiga-ui-cdk-directives-visual-viewport.mjs +0 -5
- package/esm2022/directives/visual-viewport/visual-viewport.directive.mjs +0 -34
- package/esm2022/directives/zoom/index.mjs +0 -4
- package/esm2022/directives/zoom/taiga-ui-cdk-directives-zoom.mjs +0 -5
- package/esm2022/directives/zoom/zoom.directive.mjs +0 -24
- package/esm2022/directives/zoom/zoom.options.mjs +0 -10
- package/esm2022/directives/zoom/zoom.service.mjs +0 -46
- package/esm2022/directives/zoom/zoom.types.mjs +0 -2
- package/esm2022/index.mjs +0 -10
- package/esm2022/observables/close-watcher.mjs +0 -26
- package/esm2022/observables/control-value.mjs +0 -8
- package/esm2022/observables/drag-and-drop-from.mjs +0 -14
- package/esm2022/observables/events.mjs +0 -8
- package/esm2022/observables/if-map.mjs +0 -5
- package/esm2022/observables/index.mjs +0 -14
- package/esm2022/observables/must-be-present.mjs +0 -17
- package/esm2022/observables/query-list-observable.mjs +0 -9
- package/esm2022/observables/scroll-from.mjs +0 -10
- package/esm2022/observables/taiga-ui-cdk-observables.mjs +0 -5
- package/esm2022/observables/take-until-destroyed.mjs +0 -9
- package/esm2022/observables/typed-from-event.mjs +0 -9
- package/esm2022/observables/untracked-scheduler.mjs +0 -11
- package/esm2022/observables/watch.mjs +0 -6
- package/esm2022/observables/zone.mjs +0 -34
- package/esm2022/pipes/animation/animation.pipe.mjs +0 -27
- package/esm2022/pipes/animation/index.mjs +0 -2
- package/esm2022/pipes/animation/taiga-ui-cdk-pipes-animation.mjs +0 -5
- package/esm2022/pipes/filter/filter.pipe.mjs +0 -25
- package/esm2022/pipes/filter/index.mjs +0 -2
- package/esm2022/pipes/filter/taiga-ui-cdk-pipes-filter.mjs +0 -5
- package/esm2022/pipes/index.mjs +0 -10
- package/esm2022/pipes/is-present/index.mjs +0 -2
- package/esm2022/pipes/is-present/is-present.pipe.mjs +0 -19
- package/esm2022/pipes/is-present/taiga-ui-cdk-pipes-is-present.mjs +0 -5
- package/esm2022/pipes/keys/index.mjs +0 -2
- package/esm2022/pipes/keys/keys.pipe.mjs +0 -18
- package/esm2022/pipes/keys/taiga-ui-cdk-pipes-keys.mjs +0 -5
- package/esm2022/pipes/mapper/index.mjs +0 -2
- package/esm2022/pipes/mapper/mapper.pipe.mjs +0 -25
- package/esm2022/pipes/mapper/taiga-ui-cdk-pipes-mapper.mjs +0 -5
- package/esm2022/pipes/obfuscate/index.mjs +0 -3
- package/esm2022/pipes/obfuscate/obfuscate.options.mjs +0 -10
- package/esm2022/pipes/obfuscate/obfuscate.pipe.mjs +0 -44
- package/esm2022/pipes/obfuscate/taiga-ui-cdk-pipes-obfuscate.mjs +0 -5
- package/esm2022/pipes/repeat-times/index.mjs +0 -19
- package/esm2022/pipes/repeat-times/taiga-ui-cdk-pipes-repeat-times.mjs +0 -5
- package/esm2022/pipes/replace/index.mjs +0 -2
- package/esm2022/pipes/replace/replace.pipe.mjs +0 -20
- package/esm2022/pipes/replace/taiga-ui-cdk-pipes-replace.mjs +0 -5
- package/esm2022/pipes/taiga-ui-cdk-pipes.mjs +0 -5
- package/esm2022/pipes/to-array/index.mjs +0 -2
- package/esm2022/pipes/to-array/taiga-ui-cdk-pipes-to-array.mjs +0 -5
- package/esm2022/pipes/to-array/to-array.pipe.mjs +0 -18
- package/esm2022/services/id.service.mjs +0 -21
- package/esm2022/services/index.mjs +0 -5
- package/esm2022/services/popover.service.mjs +0 -45
- package/esm2022/services/scroll.service.mjs +0 -58
- package/esm2022/services/taiga-ui-cdk-services.mjs +0 -5
- package/esm2022/services/theme-color.service.mjs +0 -33
- package/esm2022/taiga-ui-cdk.mjs +0 -5
- package/esm2022/tokens/active-element.mjs +0 -56
- package/esm2022/tokens/base-href.mjs +0 -6
- package/esm2022/tokens/environment.mjs +0 -65
- package/esm2022/tokens/fallback-value.mjs +0 -11
- package/esm2022/tokens/index.mjs +0 -8
- package/esm2022/tokens/range.mjs +0 -9
- package/esm2022/tokens/removed-element.mjs +0 -20
- package/esm2022/tokens/taiga-ui-cdk-tokens.mjs +0 -5
- package/esm2022/tokens/window-size.mjs +0 -28
- package/esm2022/types/context.mjs +0 -2
- package/esm2022/types/handler.mjs +0 -2
- package/esm2022/types/index.mjs +0 -2
- package/esm2022/types/loose-union.mjs +0 -2
- package/esm2022/types/mapper.mjs +0 -2
- package/esm2022/types/matcher.mjs +0 -2
- package/esm2022/types/rounding.mjs +0 -2
- package/esm2022/types/safe-html.mjs +0 -2
- package/esm2022/types/taiga-ui-cdk-types.mjs +0 -5
- package/esm2022/types/values-of.mjs +0 -2
- package/esm2022/utils/browser/index.mjs +0 -6
- package/esm2022/utils/browser/is-apple.mjs +0 -14
- package/esm2022/utils/browser/is-edge.mjs +0 -4
- package/esm2022/utils/browser/is-firefox.mjs +0 -4
- package/esm2022/utils/browser/is-ios.mjs +0 -7
- package/esm2022/utils/browser/is-safari.mjs +0 -12
- package/esm2022/utils/browser/taiga-ui-cdk-utils-browser.mjs +0 -5
- package/esm2022/utils/color/get-gradient-data.mjs +0 -6
- package/esm2022/utils/color/hex-to-rgb.mjs +0 -12
- package/esm2022/utils/color/hex-to-rgba.mjs +0 -29
- package/esm2022/utils/color/hsv-to-rgb.mjs +0 -11
- package/esm2022/utils/color/index.mjs +0 -10
- package/esm2022/utils/color/parse-color.mjs +0 -27
- package/esm2022/utils/color/parse-gradient.mjs +0 -70
- package/esm2022/utils/color/rgb-to-hex.mjs +0 -4
- package/esm2022/utils/color/rgb-to-hsv.mjs +0 -8
- package/esm2022/utils/color/rgba-to-hex.mjs +0 -23
- package/esm2022/utils/color/taiga-ui-cdk-utils-color.mjs +0 -5
- package/esm2022/utils/di/create-options.mjs +0 -10
- package/esm2022/utils/di/index.mjs +0 -3
- package/esm2022/utils/di/taiga-ui-cdk-utils-di.mjs +0 -5
- package/esm2022/utils/dom/contains-or-after.mjs +0 -10
- package/esm2022/utils/dom/element-checks.mjs +0 -20
- package/esm2022/utils/dom/event-checks.mjs +0 -4
- package/esm2022/utils/dom/get-actual-target.mjs +0 -7
- package/esm2022/utils/dom/get-clipboard-data-text.mjs +0 -11
- package/esm2022/utils/dom/get-document-or-shadow-root.mjs +0 -6
- package/esm2022/utils/dom/get-element-obscurers.mjs +0 -36
- package/esm2022/utils/dom/get-element-offset.mjs +0 -20
- package/esm2022/utils/dom/get-element-point.mjs +0 -6
- package/esm2022/utils/dom/get-selected-text.mjs +0 -15
- package/esm2022/utils/dom/index.mjs +0 -20
- package/esm2022/utils/dom/inject-element.mjs +0 -5
- package/esm2022/utils/dom/is-current-target.mjs +0 -4
- package/esm2022/utils/dom/is-element-editable.mjs +0 -6
- package/esm2022/utils/dom/is-inside-iframe.mjs +0 -7
- package/esm2022/utils/dom/is-node-in.mjs +0 -14
- package/esm2022/utils/dom/point-to-client-rect.mjs +0 -17
- package/esm2022/utils/dom/retarget-boundary-crossing.mjs +0 -16
- package/esm2022/utils/dom/taiga-ui-cdk-utils-dom.mjs +0 -5
- package/esm2022/utils/dom/value-binding.mjs +0 -29
- package/esm2022/utils/dom/value.mjs +0 -83
- package/esm2022/utils/focus/blur-native-focused.mjs +0 -17
- package/esm2022/utils/focus/focused-in.mjs +0 -8
- package/esm2022/utils/focus/get-closest-focusable.mjs +0 -26
- package/esm2022/utils/focus/get-native-focused.mjs +0 -21
- package/esm2022/utils/focus/index.mjs +0 -10
- package/esm2022/utils/focus/is-native-focused-in.mjs +0 -17
- package/esm2022/utils/focus/is-native-focused.mjs +0 -20
- package/esm2022/utils/focus/is-native-keyboard-focusable.mjs +0 -38
- package/esm2022/utils/focus/is-native-mouse-focusable.mjs +0 -12
- package/esm2022/utils/focus/move-focus.mjs +0 -19
- package/esm2022/utils/focus/taiga-ui-cdk-utils-focus.mjs +0 -5
- package/esm2022/utils/index.mjs +0 -8
- package/esm2022/utils/math/clamp.mjs +0 -16
- package/esm2022/utils/math/in-range.mjs +0 -9
- package/esm2022/utils/math/index.mjs +0 -11
- package/esm2022/utils/math/normalize-to-int-number.mjs +0 -22
- package/esm2022/utils/math/quantize.mjs +0 -15
- package/esm2022/utils/math/round-with.mjs +0 -14
- package/esm2022/utils/math/round.mjs +0 -42
- package/esm2022/utils/math/sum.mjs +0 -7
- package/esm2022/utils/math/taiga-ui-cdk-utils-math.mjs +0 -5
- package/esm2022/utils/math/to-int.mjs +0 -4
- package/esm2022/utils/math/to-integer.mjs +0 -4
- package/esm2022/utils/math/to-radians.mjs +0 -7
- package/esm2022/utils/miscellaneous/array-remove.mjs +0 -4
- package/esm2022/utils/miscellaneous/array-shallow-equals.mjs +0 -4
- package/esm2022/utils/miscellaneous/array-toggle.mjs +0 -8
- package/esm2022/utils/miscellaneous/change-date-separator.mjs +0 -3
- package/esm2022/utils/miscellaneous/count-filled-controls.mjs +0 -13
- package/esm2022/utils/miscellaneous/create-token.mjs +0 -16
- package/esm2022/utils/miscellaneous/default-sort.mjs +0 -11
- package/esm2022/utils/miscellaneous/directive-binding.mjs +0 -26
- package/esm2022/utils/miscellaneous/directive-listener.mjs +0 -8
- package/esm2022/utils/miscellaneous/distance-between-touches.mjs +0 -4
- package/esm2022/utils/miscellaneous/ease-in-out-quad.mjs +0 -7
- package/esm2022/utils/miscellaneous/flat-length.mjs +0 -9
- package/esm2022/utils/miscellaneous/font-size-watcher.mjs +0 -30
- package/esm2022/utils/miscellaneous/get-original-array-from-query-list.mjs +0 -15
- package/esm2022/utils/miscellaneous/index.mjs +0 -32
- package/esm2022/utils/miscellaneous/is-control-empty.mjs +0 -4
- package/esm2022/utils/miscellaneous/is-falsy.mjs +0 -4
- package/esm2022/utils/miscellaneous/is-number.mjs +0 -4
- package/esm2022/utils/miscellaneous/is-object.mjs +0 -4
- package/esm2022/utils/miscellaneous/is-present.mjs +0 -4
- package/esm2022/utils/miscellaneous/is-string.mjs +0 -4
- package/esm2022/utils/miscellaneous/is-valid-url.mjs +0 -13
- package/esm2022/utils/miscellaneous/mark-control-as-touched-and-validate.mjs +0 -16
- package/esm2022/utils/miscellaneous/nullable-same.mjs +0 -18
- package/esm2022/utils/miscellaneous/obfuscate.mjs +0 -53
- package/esm2022/utils/miscellaneous/provide-options.mjs +0 -14
- package/esm2022/utils/miscellaneous/provide.mjs +0 -4
- package/esm2022/utils/miscellaneous/pure.mjs +0 -83
- package/esm2022/utils/miscellaneous/px.mjs +0 -9
- package/esm2022/utils/miscellaneous/sanitize-text.mjs +0 -32
- package/esm2022/utils/miscellaneous/taiga-ui-cdk-utils-miscellaneous.mjs +0 -5
- package/esm2022/utils/miscellaneous/uniq-by.mjs +0 -6
- package/esm2022/utils/miscellaneous/with-styles.mjs +0 -17
- package/esm2022/utils/taiga-ui-cdk-utils.mjs +0 -5
- package/fesm2022/taiga-ui-cdk-directives-click-outside.mjs +0 -39
- package/fesm2022/taiga-ui-cdk-directives-click-outside.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-directives-droppable.mjs +0 -37
- package/fesm2022/taiga-ui-cdk-directives-droppable.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-directives-for.mjs +0 -43
- package/fesm2022/taiga-ui-cdk-directives-for.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-directives-let.mjs +0 -53
- package/fesm2022/taiga-ui-cdk-directives-let.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-directives-popover.mjs +0 -32
- package/fesm2022/taiga-ui-cdk-directives-popover.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-directives-repeat-times.mjs +0 -61
- package/fesm2022/taiga-ui-cdk-directives-repeat-times.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-animation.mjs +0 -33
- package/fesm2022/taiga-ui-cdk-pipes-animation.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-is-present.mjs +0 -25
- package/fesm2022/taiga-ui-cdk-pipes-is-present.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-keys.mjs +0 -24
- package/fesm2022/taiga-ui-cdk-pipes-keys.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-repeat-times.mjs +0 -25
- package/fesm2022/taiga-ui-cdk-pipes-repeat-times.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-replace.mjs +0 -26
- package/fesm2022/taiga-ui-cdk-pipes-replace.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-pipes-to-array.mjs +0 -24
- package/fesm2022/taiga-ui-cdk-pipes-to-array.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-services.mjs +0 -152
- package/fesm2022/taiga-ui-cdk-services.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-utils-browser.mjs +0 -48
- package/fesm2022/taiga-ui-cdk-utils-browser.mjs.map +0 -1
- package/fesm2022/taiga-ui-cdk-utils-color.mjs +0 -195
- package/fesm2022/taiga-ui-cdk-utils-color.mjs.map +0 -1
- package/observables/must-be-present.d.ts +0 -5
- package/observables/query-list-observable.d.ts +0 -6
- package/pipes/animation/animation.pipe.d.ts +0 -13
- package/pipes/animation/index.d.ts +0 -1
- package/pipes/is-present/index.d.ts +0 -1
- package/pipes/is-present/is-present.pipe.d.ts +0 -7
- package/pipes/keys/index.d.ts +0 -1
- package/pipes/keys/keys.pipe.d.ts +0 -7
- package/pipes/repeat-times/index.d.ts +0 -7
- package/pipes/replace/index.d.ts +0 -1
- package/pipes/replace/replace.pipe.d.ts +0 -7
- package/pipes/to-array/index.d.ts +0 -1
- package/pipes/to-array/to-array.pipe.d.ts +0 -7
- package/schematics/migrate-tui-let/index.d.ts +0 -3
- package/schematics/migrate-tui-let/index.js +0 -72
- package/schematics/migrate-tui-let/index.js.map +0 -1
- package/schematics/migrate-tui-let/schema.json +0 -7
- package/schematics/ng-update/v4/steps/replace-functions.js.map +0 -1
- package/services/id.service.d.ts +0 -8
- package/services/index.d.ts +0 -4
- package/services/popover.service.d.ts +0 -26
- package/services/scroll.service.d.ts +0 -13
- package/services/theme-color.service.d.ts +0 -18
- package/tokens/base-href.d.ts +0 -2
- package/tokens/environment.d.ts +0 -29
- package/tokens/range.d.ts +0 -5
- package/types/loose-union.d.ts +0 -36
- package/types/safe-html.d.ts +0 -2
- package/types/values-of.d.ts +0 -1
- package/utils/browser/index.d.ts +0 -5
- package/utils/browser/is-apple.d.ts +0 -11
- package/utils/browser/is-edge.d.ts +0 -1
- package/utils/browser/is-firefox.d.ts +0 -1
- package/utils/browser/is-ios.d.ts +0 -6
- package/utils/browser/is-safari.d.ts +0 -1
- package/utils/color/get-gradient-data.d.ts +0 -1
- package/utils/color/hex-to-rgb.d.ts +0 -1
- package/utils/color/hex-to-rgba.d.ts +0 -3
- package/utils/color/hsv-to-rgb.d.ts +0 -4
- package/utils/color/index.d.ts +0 -9
- package/utils/color/parse-color.d.ts +0 -1
- package/utils/color/parse-gradient.d.ts +0 -10
- package/utils/color/rgb-to-hex.d.ts +0 -1
- package/utils/color/rgb-to-hsv.d.ts +0 -1
- package/utils/color/rgba-to-hex.d.ts +0 -2
- package/utils/dom/get-element-point.d.ts +0 -2
- package/utils/dom/is-current-target.d.ts +0 -1
- package/utils/dom/is-inside-iframe.d.ts +0 -4
- package/utils/dom/is-node-in.d.ts +0 -8
- package/utils/dom/retarget-boundary-crossing.d.ts +0 -1
- package/utils/dom/value-binding.d.ts +0 -3
- package/utils/focus/blur-native-focused.d.ts +0 -9
- package/utils/focus/is-native-mouse-focusable.d.ts +0 -6
- package/utils/math/to-integer.d.ts +0 -1
- package/utils/math/to-radians.d.ts +0 -4
- package/utils/miscellaneous/change-date-separator.d.ts +0 -1
- package/utils/miscellaneous/create-token.d.ts +0 -9
- package/utils/miscellaneous/directive-listener.d.ts +0 -9
- package/utils/miscellaneous/flat-length.d.ts +0 -6
- package/utils/miscellaneous/get-original-array-from-query-list.d.ts +0 -8
- package/utils/miscellaneous/is-falsy.d.ts +0 -1
- package/utils/miscellaneous/is-valid-url.d.ts +0 -4
- package/utils/miscellaneous/provide-options.d.ts +0 -2
- package/utils/miscellaneous/pure.d.ts +0 -22
- package/utils/miscellaneous/uniq-by.d.ts +0 -1
- /package/utils/{miscellaneous → di}/directive-binding.d.ts +0 -0
- /package/utils/{miscellaneous → di}/provide.d.ts +0 -0
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
/// <reference types="@taiga-ui/tsconfig/ng-dev-mode" />
|
|
2
|
-
import { tuiInRange, tuiNormalizeToIntNumber } from '@taiga-ui/cdk/utils/math';
|
|
3
|
-
import { MAX_MONTH, MIN_MONTH, MONTHS_IN_YEAR } from './date-time';
|
|
4
|
-
import { TuiMonthNumber } from './month-number';
|
|
5
|
-
import { TuiYear } from './year';
|
|
6
|
-
/**
|
|
7
|
-
* Immutable object consisting of year and month
|
|
8
|
-
*/
|
|
9
|
-
export class TuiMonth extends TuiYear {
|
|
10
|
-
/**
|
|
11
|
-
* @param year
|
|
12
|
-
* @param month (starting with 0)
|
|
13
|
-
*/
|
|
14
|
-
constructor(year, month) {
|
|
15
|
-
super(year);
|
|
16
|
-
this.month = month;
|
|
17
|
-
ngDevMode && console.assert(TuiMonth.isValidMonth(year, month));
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Tests month and year for validity
|
|
21
|
-
*/
|
|
22
|
-
static isValidMonth(year, month) {
|
|
23
|
-
return TuiYear.isValidYear(year) && TuiMonth.isValidMonthPart(month);
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Returns number of days in a month
|
|
27
|
-
*/
|
|
28
|
-
static getMonthDaysCount(month, isLeapYear) {
|
|
29
|
-
ngDevMode && console.assert(TuiMonth.isValidMonthPart(month));
|
|
30
|
-
switch (month) {
|
|
31
|
-
case TuiMonthNumber.April:
|
|
32
|
-
case TuiMonthNumber.June:
|
|
33
|
-
case TuiMonthNumber.November:
|
|
34
|
-
case TuiMonthNumber.September:
|
|
35
|
-
return 30;
|
|
36
|
-
case TuiMonthNumber.February:
|
|
37
|
-
return isLeapYear ? 29 : 28;
|
|
38
|
-
default:
|
|
39
|
-
return 31;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Returns current month and year based on local time zone
|
|
44
|
-
* @nosideeffects
|
|
45
|
-
*/
|
|
46
|
-
static currentLocal() {
|
|
47
|
-
const nativeDate = new Date();
|
|
48
|
-
return new TuiMonth(nativeDate.getFullYear(), nativeDate.getMonth());
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Returns current month and year based on UTC
|
|
52
|
-
*/
|
|
53
|
-
static currentUtc() {
|
|
54
|
-
const nativeDate = new Date();
|
|
55
|
-
return new TuiMonth(nativeDate.getUTCFullYear(), nativeDate.getUTCMonth());
|
|
56
|
-
}
|
|
57
|
-
static lengthBetween(from, to) {
|
|
58
|
-
const absoluteFrom = from.month + from.year * 12;
|
|
59
|
-
const absoluteTo = to.month + to.year * 12;
|
|
60
|
-
return absoluteTo - absoluteFrom;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Normalizes number by clamping it between min and max month
|
|
64
|
-
*/
|
|
65
|
-
static normalizeMonthPart(month) {
|
|
66
|
-
return tuiNormalizeToIntNumber(month, MIN_MONTH, MAX_MONTH);
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Tests month for validity
|
|
70
|
-
*/
|
|
71
|
-
static isValidMonthPart(month) {
|
|
72
|
-
return Number.isInteger(month) && tuiInRange(month, MIN_MONTH, MAX_MONTH + 1);
|
|
73
|
-
}
|
|
74
|
-
get formattedMonthPart() {
|
|
75
|
-
return String(this.month + 1).padStart(2, '0');
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Returns days in a month
|
|
79
|
-
*/
|
|
80
|
-
get daysCount() {
|
|
81
|
-
return TuiMonth.getMonthDaysCount(this.month, this.isLeapYear);
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Passed month and year are after current
|
|
85
|
-
*/
|
|
86
|
-
monthBefore(another) {
|
|
87
|
-
return (this.yearBefore(another) ||
|
|
88
|
-
(this.yearSame(another) && this.month < another.month));
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Passed month and year are after or the same as current
|
|
92
|
-
*/
|
|
93
|
-
monthSameOrBefore(another) {
|
|
94
|
-
return (this.yearBefore(another) ||
|
|
95
|
-
(this.yearSame(another) && this.month <= another.month));
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* Passed month and year are the same as current
|
|
99
|
-
*/
|
|
100
|
-
monthSame(another) {
|
|
101
|
-
return this.yearSame(another) && this.month === another.month;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Passed month and year are either before or equal to current
|
|
105
|
-
*/
|
|
106
|
-
monthSameOrAfter(another) {
|
|
107
|
-
return (this.yearAfter(another) ||
|
|
108
|
-
(this.yearSame(another) && this.month >= another.month));
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* Passed month and year are before current
|
|
112
|
-
*/
|
|
113
|
-
monthAfter(another) {
|
|
114
|
-
return (this.yearAfter(another) ||
|
|
115
|
-
(this.yearSame(another) && this.month > another.month));
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Immutably alters current month and year by passed offset
|
|
119
|
-
*
|
|
120
|
-
* @param offset
|
|
121
|
-
* @return new month and year object as a result of offsetting current
|
|
122
|
-
*/
|
|
123
|
-
append({ year = 0, month = 0 }) {
|
|
124
|
-
const totalMonths = (this.year + year) * MONTHS_IN_YEAR + this.month + month;
|
|
125
|
-
return new TuiMonth(Math.floor(totalMonths / MONTHS_IN_YEAR), totalMonths % MONTHS_IN_YEAR);
|
|
126
|
-
}
|
|
127
|
-
toString() {
|
|
128
|
-
return `${this.formattedMonthPart}.${this.formattedYear}`;
|
|
129
|
-
}
|
|
130
|
-
valueOf() {
|
|
131
|
-
return this.toLocalNativeDate().valueOf();
|
|
132
|
-
}
|
|
133
|
-
toJSON() {
|
|
134
|
-
return `${super.toJSON()}-${this.formattedMonthPart}`;
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Returns native {@link Date} based on local time zone
|
|
138
|
-
*/
|
|
139
|
-
toLocalNativeDate() {
|
|
140
|
-
const date = new Date(this.year, this.month);
|
|
141
|
-
// for years less than 1900
|
|
142
|
-
date.setFullYear(this.year);
|
|
143
|
-
return date;
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Returns native {@link Date} based on UTC
|
|
147
|
-
*/
|
|
148
|
-
toUtcNativeDate() {
|
|
149
|
-
return new Date(Date.UTC(this.year, this.month));
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGF0ZS10aW1lL21vbnRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdEQUF3RDtBQUV4RCxPQUFPLEVBQUMsVUFBVSxFQUFFLHVCQUF1QixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFN0UsT0FBTyxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5QyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sUUFBUSxDQUFDO0FBRS9COztHQUVHO0FBQ0gsTUFBTSxPQUFPLFFBQVMsU0FBUSxPQUFPO0lBQ2pDOzs7T0FHRztJQUNILFlBQ0ksSUFBWSxFQUNJLEtBQWE7UUFFN0IsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRkksVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUc3QixTQUFTLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBWSxFQUFFLEtBQWE7UUFDbEQsT0FBTyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsaUJBQWlCLENBQUMsS0FBYSxFQUFFLFVBQW1CO1FBQzlELFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRTlELFFBQVEsS0FBSyxFQUFFO1lBQ1gsS0FBSyxjQUFjLENBQUMsS0FBSyxDQUFD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RUQ7O09BRUc7SUFDSSxpQkFBaUI7UUFDcEIsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFN0MsMkJBQTJCO1FBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTVCLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7T0FFRztJQUNJLGVBQWU7UUFDbEIsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgdHlwZXM9XCJAdGFpZ2EtdWkvdHNjb25maWcvbmctZGV2LW1vZGVcIiAvPlxuXG5pbXBvcnQge3R1aUluUmFuZ2UsIHR1aU5vcm1hbGl6ZVRvSW50TnVtYmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21hdGgnO1xuXG5pbXBvcnQge01BWF9NT05USCwgTUlOX01PTlRILCBNT05USFNfSU5fWUVBUn0gZnJvbSAnLi9kYXRlLXRpbWUnO1xuaW1wb3J0IHtUdWlNb250aE51bWJlcn0gZnJvbSAnLi9tb250aC1udW1iZXInO1xuaW1wb3J0IHt0eXBlIFR1aU1vbnRoTGlrZX0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQge1R1aVllYXJ9IGZyb20gJy4veWVhcic7XG5cbi8qKlxuICogSW1tdXRhYmxlIG9iamVjdCBjb25zaXN0aW5nIG9mIHllYXIgYW5kIG1vbnRoXG4gKi9cbmV4cG9ydCBjbGFzcyBUdWlNb250aCBleHRlbmRzIFR1aVllYXIgaW1wbGVtZW50cyBUdWlNb250aExpa2Uge1xuICAgIC8qKlxuICAgICAqIEBwYXJhbSB5ZWFyXG4gICAgICogQHBhcmFtIG1vbnRoIChzdGFydGluZyB3aXRoIDApXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHllYXI6IG51bWJlcixcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IG1vbnRoOiBudW1iZXIsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKHllYXIpO1xuICAgICAgICBuZ0Rldk1vZGUgJiYgY29uc29sZS5hc3NlcnQoVHVpTW9udGguaXNWYWxpZE1vbnRoKHllYXIsIG1vbnRoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGVzdHMgbW9udGggYW5kIHllYXIgZm9yIHZhbGlkaXR5XG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpc1ZhbGlkTW9udGgoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBUdWlZZWFyLmlzVmFsaWRZZWFyKHllYXIpICYmIFR1aU1vbnRoLmlzVmFsaWRNb250aFBhcnQobW9udGgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgbnVtYmVyIG9mIGRheXMgaW4gYSBtb250aFxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0TW9udGhEYXlzQ291bnQobW9udGg6IG51bWJlciwgaXNMZWFwWWVhcjogYm9vbGVhbik6IG51bWJlciB7XG4gICAgICAgIG5nRGV2TW9kZSAmJiBjb25zb2xlLmFzc2VydChUdWlNb250aC5pc1ZhbGlkTW9udGhQYXJ0KG1vbnRoKSk7XG5cbiAgICAgICAgc3dpdGNoIChtb250aCkge1xuICAgICAgICAgICAgY2FzZSBUdWlNb250aE51bWJlci5BcHJpbDpcbiAgICAgICAgICAgIGNhc2UgVHVpTW9udGhOdW1iZXIuSnVuZTpcbiAgICAgICAgICAgIGNhc2UgVHVpTW9udGhOdW1iZXIuTm92ZW1iZXI6XG4gICAgICAgICAgICBjYXNlIFR1aU1vbnRoTnVtYmVyLlNlcHRlbWJlcjpcbiAgICAgICAgICAgICAgICByZXR1cm4gMzA7XG4gICAgICAgICAgICBjYXNlIFR1aU1vbnRoTnVtYmVyLkZlYnJ1YXJ5OlxuICAgICAgICAgICAgICAgIHJldHVybiBpc0xlYXBZZWFyID8gMjkgOiAyODtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIDMxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBjdXJyZW50IG1vbnRoIGFuZCB5ZWFyIGJhc2VkIG9uIGxvY2FsIHRpbWUgem9uZVxuICAgICAqIEBub3NpZGVlZmZlY3RzXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBjdXJyZW50TG9jYWwoKTogVHVpTW9udGgge1xuICAgICAgICBjb25zdCBuYXRpdmVEYXRlID0gbmV3IERhdGUoKTtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aU1vbnRoKG5hdGl2ZURhdGUuZ2V0RnVsbFllYXIoKSwgbmF0aXZlRGF0ZS5nZXRNb250aCgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGN1cnJlbnQgbW9udGggYW5kIHllYXIgYmFzZWQgb24gVVRDXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBjdXJyZW50VXRjKCk6IFR1aU1vbnRoIHtcbiAgICAgICAgY29uc3QgbmF0aXZlRGF0ZSA9IG5ldyBEYXRlKCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlNb250aChuYXRpdmVEYXRlLmdldFVUQ0Z1bGxZZWFyKCksIG5hdGl2ZURhdGUuZ2V0VVRDTW9udGgoKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBsZW5ndGhCZXR3ZWVuKGZyb206IFR1aU1vbnRoLCB0bzogVHVpTW9udGgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBhYnNvbHV0ZUZyb20gPSBmcm9tLm1vbnRoICsgZnJvbS55ZWFyICogMTI7XG4gICAgICAgIGNvbnN0IGFic29sdXRlVG8gPSB0by5tb250aCArIHRvLnllYXIgKiAxMjtcblxuICAgICAgICByZXR1cm4gYWJzb2x1dGVUbyAtIGFic29sdXRlRnJvbTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBOb3JtYWxpemVzIG51bWJlciBieSBjbGFtcGluZyBpdCBiZXR3ZWVuIG1pbiBhbmQgbWF4IG1vbnRoXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBub3JtYWxpemVNb250aFBhcnQobW9udGg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0dWlOb3JtYWxpemVUb0ludE51bWJlcihtb250aCwgTUlOX01PTlRILCBNQVhfTU9OVEgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRlc3RzIG1vbnRoIGZvciB2YWxpZGl0eVxuICAgICAqL1xuICAgIHByaXZhdGUgc3RhdGljIGlzVmFsaWRNb250aFBhcnQobW9udGg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gTnVtYmVyLmlzSW50ZWdlcihtb250aCkgJiYgdHVpSW5SYW5nZShtb250aCwgTUlOX01PTlRILCBNQVhfTU9OVEggKyAxKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGZvcm1hdHRlZE1vbnRoUGFydCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gU3RyaW5nKHRoaXMubW9udGggKyAxKS5wYWRTdGFydCgyLCAnMCcpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgZGF5cyBpbiBhIG1vbnRoXG4gICAgICovXG4gICAgcHVibGljIGdldCBkYXlzQ291bnQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KHRoaXMubW9udGgsIHRoaXMuaXNMZWFwWWVhcik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIG1vbnRoIGFuZCB5ZWFyIGFyZSBhZnRlciBjdXJyZW50XG4gICAgICovXG4gICAgcHVibGljIG1vbnRoQmVmb3JlKGFub3RoZXI6IFR1aU1vbnRoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnllYXJCZWZvcmUoYW5vdGhlcikgfHxcbiAgICAgICAgICAgICh0aGlzLnllYXJTYW1lKGFub3RoZXIpICYmIHRoaXMubW9udGggPCBhbm90aGVyLm1vbnRoKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBtb250aCBhbmQgeWVhciBhcmUgYWZ0ZXIgb3IgdGhlIHNhbWUgYXMgY3VycmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBtb250aFNhbWVPckJlZm9yZShhbm90aGVyOiBUdWlNb250aCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy55ZWFyQmVmb3JlKGFub3RoZXIpIHx8XG4gICAgICAgICAgICAodGhpcy55ZWFyU2FtZShhbm90aGVyKSAmJiB0aGlzLm1vbnRoIDw9IGFub3RoZXIubW9udGgpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIG1vbnRoIGFuZCB5ZWFyIGFyZSB0aGUgc2FtZSBhcyBjdXJyZW50XG4gICAgICovXG4gICAgcHVibGljIG1vbnRoU2FtZShhbm90aGVyOiBUdWlNb250aCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy55ZWFyU2FtZShhbm90aGVyKSAmJiB0aGlzLm1vbnRoID09PSBhbm90aGVyLm1vbnRoO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBtb250aCBhbmQgeWVhciBhcmUgZWl0aGVyIGJlZm9yZSBvciBlcXVhbCB0byBjdXJyZW50XG4gICAgICovXG4gICAgcHVibGljIG1vbnRoU2FtZU9yQWZ0ZXIoYW5vdGhlcjogVHVpTW9udGgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMueWVhckFmdGVyKGFub3RoZXIpIHx8XG4gICAgICAgICAgICAodGhpcy55ZWFyU2FtZShhbm90aGVyKSAmJiB0aGlzLm1vbnRoID49IGFub3RoZXIubW9udGgpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIG1vbnRoIGFuZCB5ZWFyIGFyZSBiZWZvcmUgY3VycmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBtb250aEFmdGVyKGFub3RoZXI6IFR1aU1vbnRoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLnllYXJBZnRlcihhbm90aGVyKSB8fFxuICAgICAgICAgICAgKHRoaXMueWVhclNhbWUoYW5vdGhlcikgJiYgdGhpcy5tb250aCA+IGFub3RoZXIubW9udGgpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSW1tdXRhYmx5IGFsdGVycyBjdXJyZW50IG1vbnRoIGFuZCB5ZWFyIGJ5IHBhc3NlZCBvZmZzZXRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBvZmZzZXRcbiAgICAgKiBAcmV0dXJuIG5ldyBtb250aCBhbmQgeWVhciBvYmplY3QgYXMgYSByZXN1bHQgb2Ygb2Zmc2V0dGluZyBjdXJyZW50XG4gICAgICovXG4gICAgcHVibGljIG92ZXJyaWRlIGFwcGVuZCh7eWVhciA9IDAsIG1vbnRoID0gMH06IFR1aU1vbnRoTGlrZSk6IFR1aU1vbnRoIHtcbiAgICAgICAgY29uc3QgdG90YWxNb250aHMgPSAodGhpcy55ZWFyICsgeWVhcikgKiBNT05USFNfSU5fWUVBUiArIHRoaXMubW9udGggKyBtb250aDtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aU1vbnRoKFxuICAgICAgICAgICAgTWF0aC5mbG9vcih0b3RhbE1vbnRocyAvIE1PTlRIU19JTl9ZRUFSKSxcbiAgICAgICAgICAgIHRvdGFsTW9udGhzICUgTU9OVEhTX0lOX1lFQVIsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLmZvcm1hdHRlZE1vbnRoUGFydH0uJHt0aGlzLmZvcm1hdHRlZFllYXJ9YDtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgdmFsdWVPZigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy50b0xvY2FsTmF0aXZlRGF0ZSgpLnZhbHVlT2YoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgdG9KU09OKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHtzdXBlci50b0pTT04oKX0tJHt0aGlzLmZvcm1hdHRlZE1vbnRoUGFydH1gO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgbmF0aXZlIHtAbGluayBEYXRlfSBiYXNlZCBvbiBsb2NhbCB0aW1lIHpvbmVcbiAgICAgKi9cbiAgICBwdWJsaWMgdG9Mb2NhbE5hdGl2ZURhdGUoKTogRGF0ZSB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh0aGlzLnllYXIsIHRoaXMubW9udGgpO1xuXG4gICAgICAgIC8vIGZvciB5ZWFycyBsZXNzIHRoYW4gMTkwMFxuICAgICAgICBkYXRlLnNldEZ1bGxZZWFyKHRoaXMueWVhcik7XG5cbiAgICAgICAgcmV0dXJuIGRhdGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBuYXRpdmUge0BsaW5rIERhdGV9IGJhc2VkIG9uIFVUQ1xuICAgICAqL1xuICAgIHB1YmxpYyB0b1V0Y05hdGl2ZURhdGUoKTogRGF0ZSB7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShEYXRlLlVUQyh0aGlzLnllYXIsIHRoaXMubW9udGgpKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './index';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY2RrLWRhdGUtdGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kYXRlLXRpbWUvdGFpZ2EtdWktY2RrLWRhdGUtdGltZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
/// <reference types="@taiga-ui/tsconfig/ng-dev-mode" />
|
|
2
|
-
import { CHAR_NO_BREAK_SPACE } from '@taiga-ui/cdk/constants';
|
|
3
|
-
import { tuiInRange } from '@taiga-ui/cdk/utils/math';
|
|
4
|
-
import { HOURS_IN_DAY, MILLISECONDS_IN_DAY, MILLISECONDS_IN_HOUR, MILLISECONDS_IN_MINUTE, MILLISECONDS_IN_SECOND, MINUTES_IN_HOUR, SECONDS_IN_MINUTE, } from './date-time';
|
|
5
|
-
/**
|
|
6
|
-
* Immutable time object with hours, minutes, seconds and ms
|
|
7
|
-
*/
|
|
8
|
-
export class TuiTime {
|
|
9
|
-
constructor(hours, minutes, seconds = 0, ms = 0) {
|
|
10
|
-
this.hours = hours;
|
|
11
|
-
this.minutes = minutes;
|
|
12
|
-
this.seconds = seconds;
|
|
13
|
-
this.ms = ms;
|
|
14
|
-
ngDevMode &&
|
|
15
|
-
console.assert(
|
|
16
|
-
// Currently `TuiTime` could have hours more than 23
|
|
17
|
-
// in order to not break current behaviour of `isValidTime` the logic is duplicated
|
|
18
|
-
Number.isInteger(hours) &&
|
|
19
|
-
tuiInRange(hours, 0, Infinity) &&
|
|
20
|
-
Number.isInteger(minutes) &&
|
|
21
|
-
tuiInRange(minutes, 0, MINUTES_IN_HOUR) &&
|
|
22
|
-
Number.isInteger(seconds) &&
|
|
23
|
-
tuiInRange(seconds, 0, SECONDS_IN_MINUTE) &&
|
|
24
|
-
Number.isInteger(ms) &&
|
|
25
|
-
tuiInRange(ms, 0, 1000), 'Time must be real, but got:', hours, minutes, seconds, ms);
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Checks if time is valid
|
|
29
|
-
*/
|
|
30
|
-
static isValidTime(hours, minutes, seconds = 0, ms = 0) {
|
|
31
|
-
return (Number.isInteger(hours) &&
|
|
32
|
-
tuiInRange(hours, 0, HOURS_IN_DAY) &&
|
|
33
|
-
Number.isInteger(minutes) &&
|
|
34
|
-
tuiInRange(minutes, 0, MINUTES_IN_HOUR) &&
|
|
35
|
-
Number.isInteger(seconds) &&
|
|
36
|
-
tuiInRange(seconds, 0, SECONDS_IN_MINUTE) &&
|
|
37
|
-
Number.isInteger(ms) &&
|
|
38
|
-
tuiInRange(ms, 0, 1000));
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Current UTC time.
|
|
42
|
-
*/
|
|
43
|
-
static current() {
|
|
44
|
-
return TuiTime.fromAbsoluteMilliseconds(Date.now() % MILLISECONDS_IN_DAY);
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Current time in local timezone
|
|
48
|
-
*/
|
|
49
|
-
static currentLocal() {
|
|
50
|
-
const date = new Date();
|
|
51
|
-
return TuiTime.fromAbsoluteMilliseconds((Date.now() - date.getTimezoneOffset() * MILLISECONDS_IN_MINUTE) %
|
|
52
|
-
MILLISECONDS_IN_DAY);
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Calculates TuiTime from milliseconds
|
|
56
|
-
*/
|
|
57
|
-
static fromAbsoluteMilliseconds(milliseconds) {
|
|
58
|
-
ngDevMode &&
|
|
59
|
-
console.assert(Number.isInteger(milliseconds) && milliseconds >= 0, 'Milliseconds must be a non-negative integer.');
|
|
60
|
-
const hours = Math.floor(milliseconds / MILLISECONDS_IN_HOUR);
|
|
61
|
-
const minutes = Math.floor((milliseconds % MILLISECONDS_IN_HOUR) / MILLISECONDS_IN_MINUTE);
|
|
62
|
-
const seconds = Math.floor(((milliseconds % MILLISECONDS_IN_HOUR) % MILLISECONDS_IN_MINUTE) / 1000) || 0;
|
|
63
|
-
const ms = Math.floor(((milliseconds % MILLISECONDS_IN_HOUR) % MILLISECONDS_IN_MINUTE) % 1000) || 0;
|
|
64
|
-
return new TuiTime(hours, minutes, seconds, ms);
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Parses string into TuiTime object
|
|
68
|
-
*/
|
|
69
|
-
static fromString(time) {
|
|
70
|
-
const hours = this.parseHours(time);
|
|
71
|
-
const minutes = Number(time.slice(3, 5)) || 0;
|
|
72
|
-
const seconds = Number(time.slice(6, 8)) || 0;
|
|
73
|
-
const ms = Number(time.slice(9, 12)) || 0;
|
|
74
|
-
return new TuiTime(hours, minutes, seconds, ms);
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Converts Date object into TuiTime
|
|
78
|
-
* @param date
|
|
79
|
-
*/
|
|
80
|
-
static fromLocalNativeDate(date) {
|
|
81
|
-
return new TuiTime(date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds());
|
|
82
|
-
}
|
|
83
|
-
static parseMeridiemPeriod(time) {
|
|
84
|
-
return (/[AP]M/.exec(time.toUpperCase().replaceAll(/\W/g, ''))?.[0] || null);
|
|
85
|
-
}
|
|
86
|
-
static parseHours(time) {
|
|
87
|
-
const hours = Number(time.slice(0, 2));
|
|
88
|
-
const meridiem = this.parseMeridiemPeriod(time);
|
|
89
|
-
if (!meridiem) {
|
|
90
|
-
return hours;
|
|
91
|
-
}
|
|
92
|
-
if (hours === 12) {
|
|
93
|
-
return meridiem === 'AM' ? 0 : 12;
|
|
94
|
-
}
|
|
95
|
-
return meridiem === 'PM' ? hours + 12 : hours;
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* Shifts time by hours and minutes
|
|
99
|
-
*/
|
|
100
|
-
shift({ hours = 0, minutes = 0, seconds = 0, ms = 0 }) {
|
|
101
|
-
const totalMs = this.toAbsoluteMilliseconds() +
|
|
102
|
-
hours * MILLISECONDS_IN_HOUR +
|
|
103
|
-
minutes * MILLISECONDS_IN_MINUTE +
|
|
104
|
-
seconds * MILLISECONDS_IN_SECOND +
|
|
105
|
-
ms;
|
|
106
|
-
const totalSeconds = Math.floor(totalMs / MILLISECONDS_IN_SECOND);
|
|
107
|
-
const totalMinutes = Math.floor(totalSeconds / SECONDS_IN_MINUTE);
|
|
108
|
-
const totalHours = Math.floor(totalMinutes / MINUTES_IN_HOUR);
|
|
109
|
-
return new TuiTime(this.normalizeToRange(totalHours, HOURS_IN_DAY), this.normalizeToRange(totalMinutes, MINUTES_IN_HOUR), this.normalizeToRange(totalSeconds, SECONDS_IN_MINUTE), this.normalizeToRange(totalMs, MILLISECONDS_IN_SECOND));
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* Converts TuiTime to string
|
|
113
|
-
*/
|
|
114
|
-
toString(mode) {
|
|
115
|
-
const needAddMs = mode?.startsWith('HH:MM:SS.MSS') || (!mode && this.ms > 0);
|
|
116
|
-
const needAddSeconds = needAddMs || mode?.startsWith('HH:MM:SS') || (!mode && this.seconds > 0);
|
|
117
|
-
const { hours = this.hours, meridiem = '' } = mode?.includes('AA')
|
|
118
|
-
? this.toTwelveHour(this.hours)
|
|
119
|
-
: {};
|
|
120
|
-
const hhMm = `${this.formatTime(hours)}:${this.formatTime(this.minutes)}`;
|
|
121
|
-
const ss = needAddSeconds ? `:${this.formatTime(this.seconds)}` : '';
|
|
122
|
-
const mss = needAddMs ? `.${this.formatTime(this.ms, 3)}` : '';
|
|
123
|
-
const aa = meridiem && `${CHAR_NO_BREAK_SPACE}${meridiem}`;
|
|
124
|
-
return `${hhMm}${ss}${mss}${aa}`;
|
|
125
|
-
}
|
|
126
|
-
valueOf() {
|
|
127
|
-
return this.toAbsoluteMilliseconds();
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Returns the primitive value of the given Date object.
|
|
131
|
-
* Depending on the argument, the method can return either a string or a number.
|
|
132
|
-
* @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/@@toPrimitive
|
|
133
|
-
*/
|
|
134
|
-
[Symbol.toPrimitive](hint) {
|
|
135
|
-
return Date.prototype[Symbol.toPrimitive].call(this, hint);
|
|
136
|
-
}
|
|
137
|
-
/**
|
|
138
|
-
* Converts TuiTime to milliseconds
|
|
139
|
-
*/
|
|
140
|
-
toAbsoluteMilliseconds() {
|
|
141
|
-
return (this.hours * MILLISECONDS_IN_HOUR +
|
|
142
|
-
this.minutes * MILLISECONDS_IN_MINUTE +
|
|
143
|
-
this.seconds * 1000 +
|
|
144
|
-
this.ms);
|
|
145
|
-
}
|
|
146
|
-
formatTime(time, digits = 2) {
|
|
147
|
-
return String(time).padStart(digits, '0');
|
|
148
|
-
}
|
|
149
|
-
toTwelveHour(hours) {
|
|
150
|
-
const meridiem = hours >= 12 ? 'PM' : 'AM';
|
|
151
|
-
if (hours === 0 || hours === 12) {
|
|
152
|
-
return { meridiem, hours: 12 };
|
|
153
|
-
}
|
|
154
|
-
return { meridiem, hours: hours % 12 };
|
|
155
|
-
}
|
|
156
|
-
normalizeToRange(value, modulus) {
|
|
157
|
-
return ((value % modulus) + modulus) % modulus;
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kYXRlLXRpbWUvdGltZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx3REFBd0Q7QUFFeEQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRXBELE9BQU8sRUFDSCxZQUFZLEVBQ1osbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixzQkFBc0IsRUFDdEIsc0JBQXNCLEVBQ3RCLGVBQWUsRUFDZixpQkFBaUIsR0FDcEIsTUFBTSxhQUFhLENBQUM7QUFHckI7O0dBRUc7QUFDSCxNQUFNLE9BQU8sT0FBTztJQUNoQixZQUNvQixLQUFhLEVBQ2IsT0FBZSxFQUNmLFVBQVUsQ0FBQyxFQUNYLEtBQUssQ0FBQztRQUhOLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDYixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsWUFBTyxHQUFQLE9BQU8sQ0FBSTtRQUNYLE9BQUUsR0FBRixFQUFFLENBQUk7UUFFdEIsU0FBUztZQUNMLE9BQU8sQ0FBQyxNQUFNO1lBQ1Ysb0RBQW9EO1lBQ3BELG1GQUFtRjtZQUNuRixNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztnQkFDbkIsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsUUFBUSxDQUFDO2dCQUM5QixNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQztnQkFDekIsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsZUFBZSxDQUFDO2dCQUN2QyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQztnQkFDekIsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsaUJBQWlCLENBQUM7Z0JBQ3pDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUNwQixVQUFVLENBQUMsRUFBRSxF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QyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxzQkFBc0I7UUFDekIsT0FBTyxDQUNILElBQUksQ0FBQyxLQUFLLEdBQUcsb0JBQW9CO1lBQ2pDLElBQUksQ0FBQyxPQUFPLEdBQUcsc0JBQXNCO1lBQ3JDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSTtZQUNuQixJQUFJLENBQUMsRUFBRSxDQUNWLENBQUM7SUFDTixDQUFDO0lBRU8sVUFBVSxDQUFDLElBQVksRUFBRSxNQUFNLEdBQUcsQ0FBQztRQUN2QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTyxZQUFZLENBQUMsS0FBYTtRQUM5QixNQUFNLFFBQVEsR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUUzQyxJQUFJLEtBQUssS0FBSyxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUUsRUFBRTtZQUM3QixPQUFPLEVBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUMsQ0FBQztTQUNoQztRQUVELE9BQU8sRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssR0FBRyxFQUFFLEVBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsS0FBYSxFQUFFLE9BQWU7UUFDbkQsT0FBTyxDQUFDLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQztJQUNuRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSB0eXBlcz1cIkB0YWlnYS11aS90c2NvbmZpZy9uZy1kZXYtbW9kZVwiIC8+XG5cbmltcG9ydCB7Q0hBUl9OT19CUkVBS19TUEFDRX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jb25zdGFudHMnO1xuaW1wb3J0IHt0dWlJblJhbmdlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21hdGgnO1xuXG5pbXBvcnQge1xuICAgIEhPVVJTX0lOX0RBWSxcbiAgICBNSUxMSVNFQ09ORFNfSU5fREFZLFxuICAgIE1JTExJU0VDT05EU19JTl9IT1VSLFxuICAgIE1JTExJU0VDT05EU19JTl9NSU5VVEUsXG4gICAgTUlMTElTRUNPTkRTX0lOX1NFQ09ORCxcbiAgICBNSU5VVEVTX0lOX0hPVVIsXG4gICAgU0VDT05EU19JTl9NSU5VVEUsXG59IGZyb20gJy4vZGF0ZS10aW1lJztcbmltcG9ydCB7dHlwZSBUdWlUaW1lTGlrZSwgdHlwZSBUdWlUaW1lTW9kZX0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogSW1tdXRhYmxlIHRpbWUgb2JqZWN0IHdpdGggaG91cnMsIG1pbnV0ZXMsIHNlY29uZHMgYW5kIG1zXG4gKi9cbmV4cG9ydCBjbGFzcyBUdWlUaW1lIGltcGxlbWVudHMgVHVpVGltZUxpa2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgcmVhZG9ubHkgaG91cnM6IG51bWJlcixcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IG1pbnV0ZXM6IG51bWJlcixcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IHNlY29uZHMgPSAwLFxuICAgICAgICBwdWJsaWMgcmVhZG9ubHkgbXMgPSAwLFxuICAgICkge1xuICAgICAgICBuZ0Rldk1vZGUgJiZcbiAgICAgICAgICAgIGNvbnNvbGUuYXNzZXJ0KFxuICAgICAgICAgICAgICAgIC8vIEN1cnJlbnRseSBgVHVpVGltZWAgY291bGQgaGF2ZSBob3VycyBtb3JlIHRoYW4gMjNcbiAgICAgICAgICAgICAgICAvLyBpbiBvcmRlciB0byBub3QgYnJlYWsgY3VycmVudCBiZWhhdmlvdXIgb2YgYGlzVmFsaWRUaW1lYCB0aGUgbG9naWMgaXMgZHVwbGljYXRlZFxuICAgICAgICAgICAgICAgIE51bWJlci5pc0ludGVnZXIoaG91cnMpICYmXG4gICAgICAgICAgICAgICAgICAgIHR1aUluUmFuZ2UoaG91cnMsIDAsIEluZmluaXR5KSAmJlxuICAgICAgICAgICAgICAgICAgICBOdW1iZXIuaXNJbnRlZ2VyKG1pbnV0ZXMpICYmXG4gICAgICAgICAgICAgICAgICAgIHR1aUluUmFuZ2UobWludXRlcywgMCwgTUlOVVRFU19JTl9IT1VSKSAmJlxuICAgICAgICAgICAgICAgICAgICBOdW1iZXIuaXNJbnRlZ2VyKHNlY29uZHMpICYmXG4gICAgICAgICAgICAgICAgICAgIHR1aUluUmFuZ2Uoc2Vjb25kcywgMCwgU0VDT05EU19JTl9NSU5VVEUpICYmXG4gICAgICAgICAgICAgICAgICAgIE51bWJlci5pc0ludGVnZXIobXMpICYmXG4gICAgICAgICAgICAgICAgICAgIHR1aUluUmFuZ2UobXMsIDAsIDEwMDApLFxuICAgICAgICAgICAgICAgICdUaW1lIG11c3QgYmUgcmVhbCwgYnV0IGdvdDonLFxuICAgICAgICAgICAgICAgIGhvdXJzLFxuICAgICAgICAgICAgICAgIG1pbnV0ZXMsXG4gICAgICAgICAgICAgICAgc2Vjb25kcyxcbiAgICAgICAgICAgICAgICBtcyxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIHRpbWUgaXMgdmFsaWRcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGlzVmFsaWRUaW1lKFxuICAgICAgICBob3VyczogbnVtYmVyLFxuICAgICAgICBtaW51dGVzOiBudW1iZXIsXG4gICAgICAgIHNlY29uZHMgPSAwLFxuICAgICAgICBtcyA9IDAsXG4gICAgKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBOdW1iZXIuaXNJbnRlZ2VyKGhvdXJzKSAmJlxuICAgICAgICAgICAgdHVpSW5SYW5nZShob3VycywgMCwgSE9VUlNfSU5fREFZKSAmJlxuICAgICAgICAgICAgTnVtYmVyLmlzSW50ZWdlcihtaW51dGVzKSAmJlxuICAgICAgICAgICAgdHVpSW5SYW5nZShtaW51dGVzLCAwLCBNSU5VVEVTX0lOX0hPVVIpICYmXG4gICAgICAgICAgICBOdW1iZXIuaXNJbnRlZ2VyKHNlY29uZHMpICYmXG4gICAgICAgICAgICB0dWlJblJhbmdlKHNlY29uZHMsIDAsIFNFQ09ORFNfSU5fTUlOVVRFKSAmJlxuICAgICAgICAgICAgTnVtYmVyLmlzSW50ZWdlcihtcykgJiZcbiAgICAgICAgICAgIHR1aUluUmFuZ2UobXMsIDAsIDEwMDApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3VycmVudCBVVEMgdGltZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGN1cnJlbnQoKTogVHVpVGltZSB7XG4gICAgICAgIHJldHVybiBUdWlUaW1lLmZyb21BYnNvbHV0ZU1pbGxpc2Vjb25kcyhEYXRlLm5vdygpICUgTUlMTElTRUNPTkRTX0lOX0RBWSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3VycmVudCB0aW1lIGluIGxvY2FsIHRpbWV6b25lXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBjdXJyZW50TG9jYWwoKTogVHVpVGltZSB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xuXG4gICAgICAgIHJldHVybiBUdWlUaW1lLmZyb21BYnNvbHV0ZU1pbGxpc2Vjb25kcyhcbiAgICAgICAgICAgIChEYXRlLm5vdygpIC0gZGF0ZS5nZXRUaW1lem9uZU9mZnNldCgpICogTUlMTElTRUNPTkRTX0lOX01JTlVURSkgJVxuICAgICAgICAgICAgICAgIE1JTExJU0VDT05EU19JTl9EQVksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlcyBUdWlUaW1lIGZyb20gbWlsbGlzZWNvbmRzXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBmcm9tQWJzb2x1dGVNaWxsaXNlY29uZHMobWlsbGlzZWNvbmRzOiBudW1iZXIpOiBUdWlUaW1lIHtcbiAgICAgICAgbmdEZXZNb2RlICYmXG4gICAgICAgICAgICBjb25zb2xlLmFzc2VydChcbiAgICAgICAgICAgICAgICBOdW1iZXIuaXNJbnRlZ2VyKG1pbGxpc2Vjb25kcykgJiYgbWlsbGlzZWNvbmRzID49IDAsXG4gICAgICAgICAgICAgICAgJ01pbGxpc2Vjb25kcyBtdXN0IGJlIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIuJyxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgaG91cnMgPSBNYXRoLmZsb29yKG1pbGxpc2Vjb25kcyAvIE1JTExJU0VDT05EU19JTl9IT1VSKTtcbiAgICAgICAgY29uc3QgbWludXRlcyA9IE1hdGguZmxvb3IoXG4gICAgICAgICAgICAobWlsbGlzZWNvbmRzICUgTUlMTElTRUNPTkRTX0lOX0hPVVIpIC8gTUlMTElTRUNPTkRTX0lOX01JTlVURSxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3Qgc2Vjb25kcyA9XG4gICAgICAgICAgICBNYXRoLmZsb29yKFxuICAgICAgICAgICAgICAgICgobWlsbGlzZWNvbmRzICUgTUlMTElTRUNPTkRTX0lOX0hPVVIpICUgTUlMTElTRUNPTkRTX0lOX01JTlVURSkgLyAxMDAwLFxuICAgICAgICAgICAgKSB8fCAwO1xuICAgICAgICBjb25zdCBtcyA9XG4gICAgICAgICAgICBNYXRoLmZsb29yKFxuICAgICAgICAgICAgICAgICgobWlsbGlzZWNvbmRzICUgTUlMTElTRUNPTkRTX0lOX0hPVVIpICUgTUlMTElTRUNPTkRTX0lOX01JTlVURSkgJSAxMDAwLFxuICAgICAgICAgICAgKSB8fCAwO1xuXG4gICAgICAgIHJldHVybiBuZXcgVHVpVGltZShob3VycywgbWludXRlcywgc2Vjb25kcywgbXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhcnNlcyBzdHJpbmcgaW50byBUdWlUaW1lIG9iamVjdFxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZnJvbVN0cmluZyh0aW1lOiBzdHJpbmcpOiBUdWlUaW1lIHtcbiAgICAgICAgY29uc3QgaG91cnMgPSB0aGlzLnBhcnNlSG91cnModGltZSk7XG4gICAgICAgIGNvbnN0IG1pbnV0ZXMgPSBOdW1iZXIodGltZS5zbGljZSgzLCA1KSkgfHwgMDtcbiAgICAgICAgY29uc3Qgc2Vjb25kcyA9IE51bWJlcih0aW1lLnNsaWNlKDYsIDgpKSB8fCAwO1xuICAgICAgICBjb25zdCBtcyA9IE51bWJlcih0aW1lLnNsaWNlKDksIDEyKSkgfHwgMDtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aVRpbWUoaG91cnMsIG1pbnV0ZXMsIHNlY29uZHMsIG1zKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb252ZXJ0cyBEYXRlIG9iamVjdCBpbnRvIFR1aVRpbWVcbiAgICAgKiBAcGFyYW0gZGF0ZVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZnJvbUxvY2FsTmF0aXZlRGF0ZShkYXRlOiBEYXRlKTogVHVpVGltZSB7XG4gICAgICAgIHJldHVybiBuZXcgVHVpVGltZShcbiAgICAgICAgICAgIGRhdGUuZ2V0SG91cnMoKSxcbiAgICAgICAgICAgIGRhdGUuZ2V0TWludXRlcygpLFxuICAgICAgICAgICAgZGF0ZS5nZXRTZWNvbmRzKCksXG4gICAgICAgICAgICBkYXRlLmdldE1pbGxpc2Vjb25kcygpLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIHBhcnNlTWVyaWRpZW1QZXJpb2QodGltZTogc3RyaW5nKTogJ0FNJyB8ICdQTScgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICgvW0FQXU0vLmV4ZWModGltZS50b1VwcGVyQ2FzZSgpLnJlcGxhY2VBbGwoL1xcVy9nLCAnJykpPy5bMF0gYXNcbiAgICAgICAgICAgICAgICB8ICdBTSdcbiAgICAgICAgICAgICAgICB8ICdQTScpIHx8IG51bGxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBwYXJzZUhvdXJzKHRpbWU6IHN0cmluZyk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGhvdXJzID0gTnVtYmVyKHRpbWUuc2xpY2UoMCwgMikpO1xuICAgICAgICBjb25zdCBtZXJpZGllbSA9IHRoaXMucGFyc2VNZXJpZGllbVBlcmlvZCh0aW1lKTtcblxuICAgICAgICBpZiAoIW1lcmlkaWVtKSB7XG4gICAgICAgICAgICByZXR1cm4gaG91cnM7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaG91cnMgPT09IDEyKSB7XG4gICAgICAgICAgICByZXR1cm4gbWVyaWRpZW0gPT09ICdBTScgPyAwIDogMTI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbWVyaWRpZW0gPT09ICdQTScgPyBob3VycyArIDEyIDogaG91cnM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hpZnRzIHRpbWUgYnkgaG91cnMgYW5kIG1pbnV0ZXNcbiAgICAgKi9cbiAgICBwdWJsaWMgc2hpZnQoe2hvdXJzID0gMCwgbWludXRlcyA9IDAsIHNlY29uZHMgPSAwLCBtcyA9IDB9OiBUdWlUaW1lTGlrZSk6IFR1aVRpbWUge1xuICAgICAgICBjb25zdCB0b3RhbE1zID1cbiAgICAgICAgICAgIHRoaXMudG9BYnNvbHV0ZU1pbGxpc2Vjb25kcygpICtcbiAgICAgICAgICAgIGhvdXJzICogTUlMTElTRUNPTkRTX0lOX0hPVVIgK1xuICAgICAgICAgICAgbWludXRlcyAqIE1JTExJU0VDT05EU19JTl9NSU5VVEUgK1xuICAgICAgICAgICAgc2Vjb25kcyAqIE1JTExJU0VDT05EU19JTl9TRUNPTkQgK1xuICAgICAgICAgICAgbXM7XG4gICAgICAgIGNvbnN0IHRvdGFsU2Vjb25kcyA9IE1hdGguZmxvb3IodG90YWxNcyAvIE1JTExJU0VDT05EU19JTl9TRUNPTkQpO1xuICAgICAgICBjb25zdCB0b3RhbE1pbnV0ZXMgPSBNYXRoLmZsb29yKHRvdGFsU2Vjb25kcyAvIFNFQ09ORFNfSU5fTUlOVVRFKTtcbiAgICAgICAgY29uc3QgdG90YWxIb3VycyA9IE1hdGguZmxvb3IodG90YWxNaW51dGVzIC8gTUlOVVRFU19JTl9IT1VSKTtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aVRpbWUoXG4gICAgICAgICAgICB0aGlzLm5vcm1hbGl6ZVRvUmFuZ2UodG90YWxIb3VycywgSE9VUlNfSU5fREFZKSxcbiAgICAgICAgICAgIHRoaXMubm9ybWFsaXplVG9SYW5nZSh0b3RhbE1pbnV0ZXMsIE1JTlVURVNfSU5fSE9VUiksXG4gICAgICAgICAgICB0aGlzLm5vcm1hbGl6ZVRvUmFuZ2UodG90YWxTZWNvbmRzLCBTRUNPTkRTX0lOX01JTlVURSksXG4gICAgICAgICAgICB0aGlzLm5vcm1hbGl6ZVRvUmFuZ2UodG90YWxNcywgTUlMTElTRUNPTkRTX0lOX1NFQ09ORCksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydHMgVHVpVGltZSB0byBzdHJpbmdcbiAgICAgKi9cbiAgICBwdWJsaWMgdG9TdHJpbmcoXG4gICAgICAgIG1vZGU/OiBUdWlUaW1lTW9kZSwgLy8gVE9ETyh2NSk6IHJlbW92ZSB1c2FnZSBvZiBgVHVpVGltZU1vZGVgIGFuZCBpbmxpbmUgYWxsIG1vZGVzIGFzIGh1Z2UgdW5pb24gdHlwZVxuICAgICk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IG5lZWRBZGRNcyA9IG1vZGU/LnN0YXJ0c1dpdGgoJ0hIOk1NOlNTLk1TUycpIHx8ICghbW9kZSAmJiB0aGlzLm1zID4gMCk7XG4gICAgICAgIGNvbnN0IG5lZWRBZGRTZWNvbmRzID1cbiAgICAgICAgICAgIG5lZWRBZGRNcyB8fCBtb2RlPy5zdGFydHNXaXRoKCdISDpNTTpTUycpIHx8ICghbW9kZSAmJiB0aGlzLnNlY29uZHMgPiAwKTtcbiAgICAgICAgY29uc3Qge2hvdXJzID0gdGhpcy5ob3VycywgbWVyaWRpZW0gPSAnJ30gPSBtb2RlPy5pbmNsdWRlcygnQUEnKVxuICAgICAgICAgICAgPyB0aGlzLnRvVHdlbHZlSG91cih0aGlzLmhvdXJzKVxuICAgICAgICAgICAgOiB7fTtcbiAgICAgICAgY29uc3QgaGhNbSA9IGAke3RoaXMuZm9ybWF0VGltZShob3Vycyl9OiR7dGhpcy5mb3JtYXRUaW1lKHRoaXMubWludXRlcyl9YDtcbiAgICAgICAgY29uc3Qgc3MgPSBuZWVkQWRkU2Vjb25kcyA/IGA6JHt0aGlzLmZvcm1hdFRpbWUodGhpcy5zZWNvbmRzKX1gIDogJyc7XG4gICAgICAgIGNvbnN0IG1zcyA9IG5lZWRBZGRNcyA/IGAuJHt0aGlzLmZvcm1hdFRpbWUodGhpcy5tcywgMyl9YCA6ICcnO1xuICAgICAgICBjb25zdCBhYSA9IG1lcmlkaWVtICYmIGAke0NIQVJfTk9fQlJFQUtfU1BBQ0V9JHttZXJpZGllbX1gO1xuXG4gICAgICAgIHJldHVybiBgJHtoaE1tfSR7c3N9JHttc3N9JHthYX1gO1xuICAgIH1cblxuICAgIHB1YmxpYyB2YWx1ZU9mKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLnRvQWJzb2x1dGVNaWxsaXNlY29uZHMoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBwcmltaXRpdmUgdmFsdWUgb2YgdGhlIGdpdmVuIERhdGUgb2JqZWN0LlxuICAgICAqIERlcGVuZGluZyBvbiB0aGUgYXJndW1lbnQsIHRoZSBtZXRob2QgY2FuIHJldHVybiBlaXRoZXIgYSBzdHJpbmcgb3IgYSBudW1iZXIuXG4gICAgICogQHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9EYXRlL0BAdG9QcmltaXRpdmVcbiAgICAgKi9cbiAgICBwdWJsaWMgW1N5bWJvbC50b1ByaW1pdGl2ZV0oaGludDogc3RyaW5nKTogbnVtYmVyIHwgc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIERhdGUucHJvdG90eXBlW1N5bWJvbC50b1ByaW1pdGl2ZV0uY2FsbCh0aGlzLCBoaW50KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb252ZXJ0cyBUdWlUaW1lIHRvIG1pbGxpc2Vjb25kc1xuICAgICAqL1xuICAgIHB1YmxpYyB0b0Fic29sdXRlTWlsbGlzZWNvbmRzKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmhvdXJzICogTUlMTElTRUNPTkRTX0lOX0hPVVIgK1xuICAgICAgICAgICAgdGhpcy5taW51dGVzICogTUlMTElTRUNPTkRTX0lOX01JTlVURSArXG4gICAgICAgICAgICB0aGlzLnNlY29uZHMgKiAxMDAwICtcbiAgICAgICAgICAgIHRoaXMubXNcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZvcm1hdFRpbWUodGltZTogbnVtYmVyLCBkaWdpdHMgPSAyKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFN0cmluZyh0aW1lKS5wYWRTdGFydChkaWdpdHMsICcwJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB0b1R3ZWx2ZUhvdXIoaG91cnM6IG51bWJlcik6IHtob3VyczogbnVtYmVyOyBtZXJpZGllbTogc3RyaW5nfSB7XG4gICAgICAgIGNvbnN0IG1lcmlkaWVtID0gaG91cnMgPj0gMTIgPyAnUE0nIDogJ0FNJztcblxuICAgICAgICBpZiAoaG91cnMgPT09IDAgfHwgaG91cnMgPT09IDEyKSB7XG4gICAgICAgICAgICByZXR1cm4ge21lcmlkaWVtLCBob3VyczogMTJ9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHttZXJpZGllbSwgaG91cnM6IGhvdXJzICUgMTJ9O1xuICAgIH1cblxuICAgIHByaXZhdGUgbm9ybWFsaXplVG9SYW5nZSh2YWx1ZTogbnVtYmVyLCBtb2R1bHVzOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKCh2YWx1ZSAlIG1vZHVsdXMpICsgbW9kdWx1cykgJSBtb2R1bHVzO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGF0ZS10aW1lL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICogRE1ZIC0gZGQubW0ueXl5eVxuICogKiBNRFkgLSBtbS5kZC55eXl5XG4gKiAqIFlNRCAtIHl5eXkubW0uZGRcbiAqIFRPRE86IENoYW5nZSB0byBiZSBNYXNraXRvRGF0ZU1vZGUgY29tcGF0aWJsZSBpbiB2NVxuICovXG5leHBvcnQgdHlwZSBUdWlEYXRlTW9kZSA9ICdETVknIHwgJ01EWScgfCAnWU1EJztcbi8qKlxuICogVE9ETyh2NSk6IHJlcGxhY2UgYWxsIGl0cyB1c2FnZSBieSBNYXNraXRvVGltZU1vZGUgYW5kIGRlbGV0ZSBpdFxuICogQGRlcHJlY2F0ZWQgdXNlIGBNYXNraXRvVGltZU1vZGVgIChmcm9tIGBAbWFza2l0by9raXRgKSBpbnN0ZWFkXG4gKi9cbmV4cG9ydCB0eXBlIFR1aVRpbWVNb2RlID1cbiAgICB8ICdISCBBQSdcbiAgICB8ICdISDpNTSBBQSdcbiAgICB8ICdISDpNTTpTUyBBQSdcbiAgICB8ICdISDpNTTpTUy5NU1MgQUEnXG4gICAgfCAnSEg6TU06U1MuTVNTJ1xuICAgIHwgJ0hIOk1NOlNTJ1xuICAgIHwgJ0hIOk1NJ1xuICAgIHwgJ0hIJ1xuICAgIHwgJ01NOlNTLk1TUydcbiAgICB8ICdNTTpTUydcbiAgICB8ICdNTS5TUy5NU1MnIC8vIFRPRE8odjUpOiBkZWxldGUgKGV4aXN0cyBvbmx5IGZvciBNYXNraXRvQDMgY29tcGF0aWJpbGl0eSlcbiAgICB8ICdTUy5NU1MnO1xuXG4vKipcbiAqIE9wdGlvbmFsbHkgaGFzIHllYXIgYW5kL29yIG1vbnRoIGFuZC9vciBkYXlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUdWlEYXlMaWtlIGV4dGVuZHMgVHVpTW9udGhMaWtlIHtcbiAgICByZWFkb25seSBkYXk/OiBudW1iZXI7XG59XG5cbi8qKlxuICogT3B0aW9uYWxseSBoYXMgeWVhciBhbmQvb3IgbW9udGhcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUdWlNb250aExpa2UgZXh0ZW5kcyBUdWlZZWFyTGlrZSB7XG4gICAgcmVhZG9ubHkgbW9udGg/OiBudW1iZXI7XG59XG5cbi8qKlxuICogT3B0aW9uYWxseSBoYXMgeWVhclxuICovXG5leHBvcnQgaW50ZXJmYWNlIFR1aVllYXJMaWtlIHtcbiAgICByZWFkb25seSB5ZWFyPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFR1aVRpbWVMaWtlIHtcbiAgICByZWFkb25seSBob3Vycz86IG51bWJlcjtcbiAgICByZWFkb25seSBtaW51dGVzPzogbnVtYmVyO1xuICAgIHJlYWRvbmx5IG1zPzogbnVtYmVyO1xuICAgIHJlYWRvbmx5IHNlY29uZHM/OiBudW1iZXI7XG59XG4iXX0=
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
/// <reference types="@taiga-ui/tsconfig/ng-dev-mode" />
|
|
2
|
-
import { tuiInRange, tuiNormalizeToIntNumber } from '@taiga-ui/cdk/utils/math';
|
|
3
|
-
import { MAX_YEAR, MIN_YEAR } from './date-time';
|
|
4
|
-
/**
|
|
5
|
-
* Immutable year object
|
|
6
|
-
* @nosideeffects
|
|
7
|
-
*/
|
|
8
|
-
export class TuiYear {
|
|
9
|
-
constructor(year) {
|
|
10
|
-
this.year = year;
|
|
11
|
-
ngDevMode && console.assert(TuiYear.isValidYear(year));
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Checks year for validity
|
|
15
|
-
*/
|
|
16
|
-
static isValidYear(year) {
|
|
17
|
-
return Number.isInteger(year) && tuiInRange(year, MIN_YEAR, MAX_YEAR + 1);
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Check if passed year is a leap year
|
|
21
|
-
*/
|
|
22
|
-
static isLeapYear(year) {
|
|
23
|
-
ngDevMode && console.assert(TuiYear.isValidYear(year));
|
|
24
|
-
return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0);
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Returns amount of leap years from year 0 to the passed one
|
|
28
|
-
*/
|
|
29
|
-
static getAbsoluteLeapYears(year) {
|
|
30
|
-
ngDevMode && console.assert(TuiYear.isValidYear(year));
|
|
31
|
-
return Math.ceil(year / 400) + (Math.ceil(year / 4) - Math.ceil(year / 100));
|
|
32
|
-
}
|
|
33
|
-
static lengthBetween(from, to) {
|
|
34
|
-
return to.year - from.year;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Normalizes year by clamping it between min and max years
|
|
38
|
-
*/
|
|
39
|
-
static normalizeYearPart(year) {
|
|
40
|
-
return tuiNormalizeToIntNumber(year, MIN_YEAR, MAX_YEAR);
|
|
41
|
-
}
|
|
42
|
-
get formattedYear() {
|
|
43
|
-
return String(this.year).padStart(4, '0');
|
|
44
|
-
}
|
|
45
|
-
get isLeapYear() {
|
|
46
|
-
return TuiYear.isLeapYear(this.year);
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Returns amount of leap years from year 0 to current
|
|
50
|
-
*/
|
|
51
|
-
get absoluteLeapYears() {
|
|
52
|
-
return TuiYear.getAbsoluteLeapYears(this.year);
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Passed year is after current
|
|
56
|
-
*/
|
|
57
|
-
yearBefore({ year }) {
|
|
58
|
-
return this.year < year;
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Passed year is the same or after current
|
|
62
|
-
*/
|
|
63
|
-
yearSameOrBefore({ year }) {
|
|
64
|
-
return this.year <= year;
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Passed year is the same as current
|
|
68
|
-
*/
|
|
69
|
-
yearSame({ year }) {
|
|
70
|
-
return this.year === year;
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Passed year is either the same of before the current
|
|
74
|
-
*/
|
|
75
|
-
yearSameOrAfter({ year }) {
|
|
76
|
-
return this.year >= year;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Passed year is before current
|
|
80
|
-
*/
|
|
81
|
-
yearAfter({ year }) {
|
|
82
|
-
return this.year > year;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Immutably offsets year
|
|
86
|
-
*/
|
|
87
|
-
append({ year = 0 }) {
|
|
88
|
-
ngDevMode && console.assert(Number.isInteger(year));
|
|
89
|
-
const resultYear = this.year + year;
|
|
90
|
-
ngDevMode && console.assert(TuiYear.isValidYear(resultYear));
|
|
91
|
-
return new TuiYear(resultYear);
|
|
92
|
-
}
|
|
93
|
-
toString() {
|
|
94
|
-
return this.formattedYear;
|
|
95
|
-
}
|
|
96
|
-
valueOf() {
|
|
97
|
-
return this.year;
|
|
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
|
-
*/
|
|
104
|
-
[Symbol.toPrimitive](hint) {
|
|
105
|
-
return Date.prototype[Symbol.toPrimitive].call(this, hint);
|
|
106
|
-
}
|
|
107
|
-
toJSON() {
|
|
108
|
-
return this.formattedYear;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWVhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kYXRlLXRpbWUveWVhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx3REFBd0Q7QUFDeEQsT0FBTyxFQUFDLFVBQVUsRUFBRSx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTdFLE9BQU8sRUFBQyxRQUFRLEVBQUUsUUFBUSxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBRy9DOzs7R0FHRztBQUNILE1BQU0sT0FBTyxPQUFPO0lBQ2hCLFlBQTRCLElBQVk7UUFBWixTQUFJLEdBQUosSUFBSSxDQUFRO1FBQ3BDLFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsV0FBVyxDQUFDLElBQVk7UUFDbEMsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLElBQVk7UUFDakMsU0FBUyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBRXZELE9BQU8sSUFBSSxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxJQUFZO1FBQzNDLFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFB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ZW5jZSB0eXBlcz1cIkB0YWlnYS11aS90c2NvbmZpZy9uZy1kZXYtbW9kZVwiIC8+XG5pbXBvcnQge3R1aUluUmFuZ2UsIHR1aU5vcm1hbGl6ZVRvSW50TnVtYmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21hdGgnO1xuXG5pbXBvcnQge01BWF9ZRUFSLCBNSU5fWUVBUn0gZnJvbSAnLi9kYXRlLXRpbWUnO1xuaW1wb3J0IHt0eXBlIFR1aVllYXJMaWtlfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBJbW11dGFibGUgeWVhciBvYmplY3RcbiAqIEBub3NpZGVlZmZlY3RzXG4gKi9cbmV4cG9ydCBjbGFzcyBUdWlZZWFyIGltcGxlbWVudHMgVHVpWWVhckxpa2Uge1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSB5ZWFyOiBudW1iZXIpIHtcbiAgICAgICAgbmdEZXZNb2RlICYmIGNvbnNvbGUuYXNzZXJ0KFR1aVllYXIuaXNWYWxpZFllYXIoeWVhcikpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrcyB5ZWFyIGZvciB2YWxpZGl0eVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgaXNWYWxpZFllYXIoeWVhcjogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBOdW1iZXIuaXNJbnRlZ2VyKHllYXIpICYmIHR1aUluUmFuZ2UoeWVhciwgTUlOX1lFQVIsIE1BWF9ZRUFSICsgMSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgcGFzc2VkIHllYXIgaXMgYSBsZWFwIHllYXJcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGlzTGVhcFllYXIoeWVhcjogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgICAgIG5nRGV2TW9kZSAmJiBjb25zb2xlLmFzc2VydChUdWlZZWFyLmlzVmFsaWRZZWFyKHllYXIpKTtcblxuICAgICAgICByZXR1cm4geWVhciAlIDQwMCA9PT0gMCB8fCAoeWVhciAlIDQgPT09IDAgJiYgeWVhciAlIDEwMCAhPT0gMCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbW91bnQgb2YgbGVhcCB5ZWFycyBmcm9tIHllYXIgMCB0byB0aGUgcGFzc2VkIG9uZVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0QWJzb2x1dGVMZWFwWWVhcnMoeWVhcjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgbmdEZXZNb2RlICYmIGNvbnNvbGUuYXNzZXJ0KFR1aVllYXIuaXNWYWxpZFllYXIoeWVhcikpO1xuXG4gICAgICAgIHJldHVybiBNYXRoLmNlaWwoeWVhciAvIDQwMCkgKyAoTWF0aC5jZWlsKHllYXIgLyA0KSAtIE1hdGguY2VpbCh5ZWFyIC8gMTAwKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBsZW5ndGhCZXR3ZWVuKGZyb206IFR1aVllYXIsIHRvOiBUdWlZZWFyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRvLnllYXIgLSBmcm9tLnllYXI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTm9ybWFsaXplcyB5ZWFyIGJ5IGNsYW1waW5nIGl0IGJldHdlZW4gbWluIGFuZCBtYXggeWVhcnNcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIG5vcm1hbGl6ZVllYXJQYXJ0KHllYXI6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0dWlOb3JtYWxpemVUb0ludE51bWJlcih5ZWFyLCBNSU5fWUVBUiwgTUFYX1lFQVIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZm9ybWF0dGVkWWVhcigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gU3RyaW5nKHRoaXMueWVhcikucGFkU3RhcnQoNCwgJzAnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGlzTGVhcFllYXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBUdWlZZWFyLmlzTGVhcFllYXIodGhpcy55ZWFyKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGFtb3VudCBvZiBsZWFwIHllYXJzIGZyb20geWVhciAwIHRvIGN1cnJlbnRcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IGFic29sdXRlTGVhcFllYXJzKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBUdWlZZWFyLmdldEFic29sdXRlTGVhcFllYXJzKHRoaXMueWVhcik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIHllYXIgaXMgYWZ0ZXIgY3VycmVudFxuICAgICAqL1xuICAgIHB1YmxpYyB5ZWFyQmVmb3JlKHt5ZWFyfTogVHVpWWVhcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy55ZWFyIDwgeWVhcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzZWQgeWVhciBpcyB0aGUgc2FtZSBvciBhZnRlciBjdXJyZW50XG4gICAgICovXG4gICAgcHVibGljIHllYXJTYW1lT3JCZWZvcmUoe3llYXJ9OiBUdWlZZWFyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnllYXIgPD0geWVhcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzZWQgeWVhciBpcyB0aGUgc2FtZSBhcyBjdXJyZW50XG4gICAgICovXG4gICAgcHVibGljIHllYXJTYW1lKHt5ZWFyfTogVHVpWWVhcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy55ZWFyID09PSB5ZWFyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCB5ZWFyIGlzIGVpdGhlciB0aGUgc2FtZSBvZiBiZWZvcmUgdGhlIGN1cnJlbnRcbiAgICAgKi9cbiAgICBwdWJsaWMgeWVhclNhbWVPckFmdGVyKHt5ZWFyfTogVHVpWWVhcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy55ZWFyID49IHllYXI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIHllYXIgaXMgYmVmb3JlIGN1cnJlbnRcbiAgICAgKi9cbiAgICBwdWJsaWMgeWVhckFmdGVyKHt5ZWFyfTogVHVpWWVhcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy55ZWFyID4geWVhcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJbW11dGFibHkgb2Zmc2V0cyB5ZWFyXG4gICAgICovXG4gICAgcHVibGljIGFwcGVuZCh7eWVhciA9IDB9OiBUdWlZZWFyTGlrZSk6IFR1aVllYXIge1xuICAgICAgICBuZ0Rldk1vZGUgJiYgY29uc29sZS5hc3NlcnQoTnVtYmVyLmlzSW50ZWdlcih5ZWFyKSk7XG5cbiAgICAgICAgY29uc3QgcmVzdWx0WWVhciA9IHRoaXMueWVhciArIHllYXI7XG5cbiAgICAgICAgbmdEZXZNb2RlICYmIGNvbnNvbGUuYXNzZXJ0KFR1aVllYXIuaXNWYWxpZFllYXIocmVzdWx0WWVhcikpO1xuXG4gICAgICAgIHJldHVybiBuZXcgVHVpWWVhcihyZXN1bHRZZWFyKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0dGVkWWVhcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgdmFsdWVPZigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy55ZWFyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIHByaW1pdGl2ZSB2YWx1ZSBvZiB0aGUgZ2l2ZW4gRGF0ZSBvYmplY3QuXG4gICAgICogRGVwZW5kaW5nIG9uIHRoZSBhcmd1bWVudCwgdGhlIG1ldGhvZCBjYW4gcmV0dXJuIGVpdGhlciBhIHN0cmluZyBvciBhIG51bWJlci5cbiAgICAgKiBAc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0RhdGUvQEB0b1ByaW1pdGl2ZVxuICAgICAqL1xuICAgIHB1YmxpYyBbU3ltYm9sLnRvUHJpbWl0aXZlXShoaW50OiBzdHJpbmcpOiBudW1iZXIgfCBzdHJpbmcge1xuICAgICAgICByZXR1cm4gRGF0ZS5wcm90b3R5cGVbU3ltYm9sLnRvUHJpbWl0aXZlXS5jYWxsKHRoaXMsIGhpbnQpO1xuICAgIH1cblxuICAgIHB1YmxpYyB0b0pTT04oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0dGVkWWVhcjtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { Directive, inject, Input, NgZone, Output } from '@angular/core';
|
|
3
|
-
import { NgControl } from '@angular/forms';
|
|
4
|
-
import { tuiZoneOptimized } from '@taiga-ui/cdk/observables';
|
|
5
|
-
import { TUI_ACTIVE_ELEMENT } from '@taiga-ui/cdk/tokens';
|
|
6
|
-
import { tuiArrayRemove, tuiInjectElement, tuiPure } from '@taiga-ui/cdk/utils';
|
|
7
|
-
import { distinctUntilChanged, map, share, skip, startWith, tap, } from 'rxjs';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
class TuiActiveZone {
|
|
10
|
-
constructor() {
|
|
11
|
-
// TODO: Should we remove in v5? It's no longer used in Taiga UI
|
|
12
|
-
this.control = inject(NgControl, { self: true, optional: true });
|
|
13
|
-
this.active$ = inject(TUI_ACTIVE_ELEMENT);
|
|
14
|
-
this.zone = inject(NgZone);
|
|
15
|
-
this.el = tuiInjectElement();
|
|
16
|
-
this.tuiActiveZoneParent = null;
|
|
17
|
-
this.directParentActiveZone = inject(TuiActiveZone, {
|
|
18
|
-
skipSelf: true,
|
|
19
|
-
optional: true,
|
|
20
|
-
});
|
|
21
|
-
this.tuiActiveZoneChange = this.active$.pipe(map((element) => !!element && this.contains(element)), startWith(false), distinctUntilChanged(), skip(1), tap((active) => {
|
|
22
|
-
if (!active && typeof this.control?.valueAccessor.onTouched === 'function') {
|
|
23
|
-
this.control.valueAccessor.onTouched();
|
|
24
|
-
}
|
|
25
|
-
}), tuiZoneOptimized(this.zone), share());
|
|
26
|
-
this.children = [];
|
|
27
|
-
this.directParentActiveZone?.addSubActiveZone(this);
|
|
28
|
-
}
|
|
29
|
-
set tuiActiveZoneParentSetter(zone) {
|
|
30
|
-
this.setZone(zone);
|
|
31
|
-
}
|
|
32
|
-
ngOnDestroy() {
|
|
33
|
-
this.directParentActiveZone?.removeSubActiveZone(this);
|
|
34
|
-
this.tuiActiveZoneParent?.removeSubActiveZone(this);
|
|
35
|
-
}
|
|
36
|
-
contains(node) {
|
|
37
|
-
return (this.el.contains(node) || this.children.some((item) => item.contains(node)));
|
|
38
|
-
}
|
|
39
|
-
setZone(zone) {
|
|
40
|
-
this.tuiActiveZoneParent?.removeSubActiveZone(this);
|
|
41
|
-
zone?.addSubActiveZone(this);
|
|
42
|
-
this.tuiActiveZoneParent = zone;
|
|
43
|
-
}
|
|
44
|
-
addSubActiveZone(activeZone) {
|
|
45
|
-
this.children = [...this.children, activeZone];
|
|
46
|
-
}
|
|
47
|
-
removeSubActiveZone(activeZone) {
|
|
48
|
-
this.children = tuiArrayRemove(this.children, this.children.indexOf(activeZone));
|
|
49
|
-
}
|
|
50
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiActiveZone, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
51
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiActiveZone, isStandalone: true, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: { tuiActiveZoneParentSetter: ["tuiActiveZoneParent", "tuiActiveZoneParentSetter"] }, outputs: { tuiActiveZoneChange: "tuiActiveZoneChange" }, host: { listeners: { "document:mousedown.zoneless": "(0)" } }, exportAs: ["tuiActiveZone"], ngImport: i0 }); }
|
|
52
|
-
}
|
|
53
|
-
__decorate([
|
|
54
|
-
tuiPure
|
|
55
|
-
], TuiActiveZone.prototype, "setZone", null);
|
|
56
|
-
export { TuiActiveZone };
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiActiveZone, decorators: [{
|
|
58
|
-
type: Directive,
|
|
59
|
-
args: [{
|
|
60
|
-
standalone: true,
|
|
61
|
-
selector: '[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)',
|
|
62
|
-
exportAs: 'tuiActiveZone',
|
|
63
|
-
host: {
|
|
64
|
-
'(document:mousedown.zoneless)': '(0)',
|
|
65
|
-
},
|
|
66
|
-
}]
|
|
67
|
-
}], ctorParameters: function () { return []; }, propDecorators: { tuiActiveZoneChange: [{
|
|
68
|
-
type: Output
|
|
69
|
-
}], tuiActiveZoneParentSetter: [{
|
|
70
|
-
type: Input,
|
|
71
|
-
args: ['tuiActiveZoneParent']
|
|
72
|
-
}], setZone: [] } });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLXpvbmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RpcmVjdGl2ZXMvYWN0aXZlLXpvbmUvYWN0aXZlLXpvbmUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFrQixNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBQyxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDOUUsT0FBTyxFQUNILG9CQUFvQixFQUNwQixHQUFHLEVBRUgsS0FBSyxFQUNMLElBQUksRUFDSixTQUFTLEVBQ1QsR0FBRyxHQUNOLE1BQU0sTUFBTSxDQUFDOztBQUVkLE1BU2EsYUFBYTtJQTZCdEI7UUE1QkEsZ0VBQWdFO1FBQy9DLFlBQU8sR0FBUSxNQUFNLENBQUMsU0FBUyxFQUFFLEVBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztRQUMvRCxZQUFPLEdBQUcsTUFBTSxDQUE2QixrQkFBa0IsQ0FBQyxDQUFDO1FBQ2pFLFNBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEIsT0FBRSxHQUFHLGdCQUFnQixFQUFFLENBQUM7UUFDakMsd0JBQW1CLEdBQXlCLElBQUksQ0FBQztRQUN4QywyQkFBc0IsR0FBRyxNQUFNLENBQUMsYUFBYSxFQUFFO1lBQzVELFFBQVEsRUFBRSxJQUFJO1lBQ2QsUUFBUSxFQUFFLElBQUk7U0FDakIsQ0FBQyxDQUFDO1FBR2Esd0JBQW1CLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQ25ELEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQ3JELFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFDaEIsb0JBQW9CLEVBQUUsRUFDdEIsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ1gsSUFBSSxDQUFDLE1BQU0sSUFBSSxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLFNBQVMsS0FBSyxVQUFVLEVBQUU7Z0JBQ3hFLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxDQUFDO2FBQzFDO1FBQ0wsQ0FBQyxDQUFDLEVBQ0YsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUMzQixLQUFLLEVBQUUsQ0FDVixDQUFDO1FBRUssYUFBUSxHQUE2QixFQUFFLENBQUM7UUFHM0MsSUFBSSxDQUFDLHNCQUFzQixFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxJQUNXLHlCQUF5QixDQUFDLElBQTBCO1FBQzNELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLG1CQUFtQixFQUFFLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFTSxRQUFRLENBQUMsSUFBVTtRQUN0QixPQUFPLENBQ0gsSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDOUUsQ0FBQztJQUNOLENBQUM7SUFHTyxPQUFPLENBQUMsSUFBMEI7UUFDdEMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0lBQ3BDLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxVQUF5QjtRQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxVQUF5QjtRQUNqRCxJQUFJLENBQUMsUUFBUSxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDckYsQ0FBQzsrR0E5RFEsYUFBYTttR0FBYixhQUFhOztBQWtEZDtJQURQLE9BQU87NENBS1A7U0F0RFEsYUFBYTs0RkFBYixhQUFhO2tCQVR6QixTQUFTO21CQUFDO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQ0oscUhBQXFIO29CQUN6SCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsSUFBSSxFQUFFO3dCQUNGLCtCQUErQixFQUFFLEtBQUs7cUJBQ3pDO2lCQUNKOzBFQWNtQixtQkFBbUI7c0JBRGxDLE1BQU07Z0JBc0JJLHlCQUF5QjtzQkFEbkMsS0FBSzt1QkFBQyxxQkFBcUI7Z0JBaUJwQixPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIGluamVjdCwgSW5wdXQsIE5nWm9uZSwgdHlwZSBPbkRlc3Ryb3ksIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHt0dWlab25lT3B0aW1pemVkfSBmcm9tICdAdGFpZ2EtdWkvY2RrL29ic2VydmFibGVzJztcbmltcG9ydCB7VFVJX0FDVElWRV9FTEVNRU5UfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3Rva2Vucyc7XG5pbXBvcnQge3R1aUFycmF5UmVtb3ZlLCB0dWlJbmplY3RFbGVtZW50LCB0dWlQdXJlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzJztcbmltcG9ydCB7XG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gICAgbWFwLFxuICAgIHR5cGUgT2JzZXJ2YWJsZSxcbiAgICBzaGFyZSxcbiAgICBza2lwLFxuICAgIHN0YXJ0V2l0aCxcbiAgICB0YXAsXG59IGZyb20gJ3J4anMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOlxuICAgICAgICAnW3R1aUFjdGl2ZVpvbmVdOm5vdChuZy1jb250YWluZXIpLCBbdHVpQWN0aXZlWm9uZUNoYW5nZV06bm90KG5nLWNvbnRhaW5lciksIFt0dWlBY3RpdmVab25lUGFyZW50XTpub3QobmctY29udGFpbmVyKScsXG4gICAgZXhwb3J0QXM6ICd0dWlBY3RpdmVab25lJyxcbiAgICBob3N0OiB7XG4gICAgICAgICcoZG9jdW1lbnQ6bW91c2Vkb3duLnpvbmVsZXNzKSc6ICcoMCknLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUFjdGl2ZVpvbmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIC8vIFRPRE86IFNob3VsZCB3ZSByZW1vdmUgaW4gdjU/IEl0J3Mgbm8gbG9uZ2VyIHVzZWQgaW4gVGFpZ2EgVUlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRyb2w6IGFueSA9IGluamVjdChOZ0NvbnRyb2wsIHtzZWxmOiB0cnVlLCBvcHRpb25hbDogdHJ1ZX0pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZlJCA9IGluamVjdDxPYnNlcnZhYmxlPEVsZW1lbnQgfCBudWxsPj4oVFVJX0FDVElWRV9FTEVNRU5UKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHpvbmUgPSBpbmplY3QoTmdab25lKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsID0gdHVpSW5qZWN0RWxlbWVudCgpO1xuICAgIHByaXZhdGUgdHVpQWN0aXZlWm9uZVBhcmVudDogVHVpQWN0aXZlWm9uZSB8IG51bGwgPSBudWxsO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlyZWN0UGFyZW50QWN0aXZlWm9uZSA9IGluamVjdChUdWlBY3RpdmVab25lLCB7XG4gICAgICAgIHNraXBTZWxmOiB0cnVlLFxuICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICB9KTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZWFkb25seSB0dWlBY3RpdmVab25lQ2hhbmdlID0gdGhpcy5hY3RpdmUkLnBpcGUoXG4gICAgICAgIG1hcCgoZWxlbWVudCkgPT4gISFlbGVtZW50ICYmIHRoaXMuY29udGFpbnMoZWxlbWVudCkpLFxuICAgICAgICBzdGFydFdpdGgoZmFsc2UpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICBza2lwKDEpLFxuICAgICAgICB0YXAoKGFjdGl2ZSkgPT4ge1xuICAgICAgICAgICAgaWYgKCFhY3RpdmUgJiYgdHlwZW9mIHRoaXMuY29udHJvbD8udmFsdWVBY2Nlc3Nvci5vblRvdWNoZWQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2wudmFsdWVBY2Nlc3Nvci5vblRvdWNoZWQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIHR1aVpvbmVPcHRpbWl6ZWQodGhpcy56b25lKSxcbiAgICAgICAgc2hhcmUoKSxcbiAgICApO1xuXG4gICAgcHVibGljIGNoaWxkcmVuOiByZWFkb25seSBUdWlBY3RpdmVab25lW10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmRpcmVjdFBhcmVudEFjdGl2ZVpvbmU/LmFkZFN1YkFjdGl2ZVpvbmUodGhpcyk7XG4gICAgfVxuXG4gICAgQElucHV0KCd0dWlBY3RpdmVab25lUGFyZW50JylcbiAgICBwdWJsaWMgc2V0IHR1aUFjdGl2ZVpvbmVQYXJlbnRTZXR0ZXIoem9uZTogVHVpQWN0aXZlWm9uZSB8IG51bGwpIHtcbiAgICAgICAgdGhpcy5zZXRab25lKHpvbmUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXJlY3RQYXJlbnRBY3RpdmVab25lPy5yZW1vdmVTdWJBY3RpdmVab25lKHRoaXMpO1xuICAgICAgICB0aGlzLnR1aUFjdGl2ZVpvbmVQYXJlbnQ/LnJlbW92ZVN1YkFjdGl2ZVpvbmUodGhpcyk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnRhaW5zKG5vZGU6IE5vZGUpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuZWwuY29udGFpbnMobm9kZSkgfHwgdGhpcy5jaGlsZHJlbi5zb21lKChpdGVtKSA9PiBpdGVtLmNvbnRhaW5zKG5vZGUpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBzZXRab25lKHpvbmU6IFR1aUFjdGl2ZVpvbmUgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHRoaXMudHVpQWN0aXZlWm9uZVBhcmVudD8ucmVtb3ZlU3ViQWN0aXZlWm9uZSh0aGlzKTtcbiAgICAgICAgem9uZT8uYWRkU3ViQWN0aXZlWm9uZSh0aGlzKTtcbiAgICAgICAgdGhpcy50dWlBY3RpdmVab25lUGFyZW50ID0gem9uZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZFN1YkFjdGl2ZVpvbmUoYWN0aXZlWm9uZTogVHVpQWN0aXZlWm9uZSk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gWy4uLnRoaXMuY2hpbGRyZW4sIGFjdGl2ZVpvbmVdO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVtb3ZlU3ViQWN0aXZlWm9uZShhY3RpdmVab25lOiBUdWlBY3RpdmVab25lKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hpbGRyZW4gPSB0dWlBcnJheVJlbW92ZSh0aGlzLmNoaWxkcmVuLCB0aGlzLmNoaWxkcmVuLmluZGV4T2YoYWN0aXZlWm9uZSkpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './active-zone.directive';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9hY3RpdmUtem9uZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY3RpdmUtem9uZS5kaXJlY3RpdmUnO1xuIl19
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './index';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY2RrLWRpcmVjdGl2ZXMtYWN0aXZlLXpvbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvZGlyZWN0aXZlcy9hY3RpdmUtem9uZS90YWlnYS11aS1jZGstZGlyZWN0aXZlcy1hY3RpdmUtem9uZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|