@mis-wis/common 0.1.6 → 0.1.7
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 +2 -1
- package/esm2020/lib/components/datepicker/base/bs-datepicker-container.mjs +47 -0
- package/esm2020/lib/components/datepicker/bs-datepicker-inline.component.mjs +139 -0
- package/esm2020/lib/components/datepicker/bs-datepicker-inline.config.mjs +14 -0
- package/esm2020/lib/components/datepicker/bs-datepicker-input.directive.mjs +160 -0
- package/esm2020/lib/components/datepicker/bs-datepicker.component.mjs +255 -0
- package/esm2020/lib/components/datepicker/bs-datepicker.config.mjs +87 -0
- package/esm2020/lib/components/datepicker/bs-datepicker.module.mjs +125 -0
- package/esm2020/lib/components/datepicker/bs-daterangepicker-inline.component.mjs +136 -0
- package/esm2020/lib/components/datepicker/bs-daterangepicker-inline.config.mjs +21 -0
- package/esm2020/lib/components/datepicker/bs-daterangepicker-input.directive.mjs +192 -0
- package/esm2020/lib/components/datepicker/bs-daterangepicker.component.mjs +242 -0
- package/esm2020/lib/components/datepicker/bs-daterangepicker.config.mjs +19 -0
- package/esm2020/lib/components/datepicker/bs-locale.service.mjs +32 -0
- package/esm2020/lib/components/datepicker/chronos/create/check-overflow.mjs +30 -0
- package/esm2020/lib/components/datepicker/chronos/create/clone.mjs +6 -0
- package/esm2020/lib/components/datepicker/chronos/create/date-from-array.mjs +17 -0
- package/esm2020/lib/components/datepicker/chronos/create/from-anything.mjs +107 -0
- package/esm2020/lib/components/datepicker/chronos/create/from-array.mjs +136 -0
- package/esm2020/lib/components/datepicker/chronos/create/from-object.mjs +17 -0
- package/esm2020/lib/components/datepicker/chronos/create/from-string-and-array.mjs +38 -0
- package/esm2020/lib/components/datepicker/chronos/create/from-string-and-format.mjs +106 -0
- package/esm2020/lib/components/datepicker/chronos/create/from-string.mjs +227 -0
- package/esm2020/lib/components/datepicker/chronos/create/local.mjs +16 -0
- package/esm2020/lib/components/datepicker/chronos/create/parsing-flags.mjs +26 -0
- package/esm2020/lib/components/datepicker/chronos/create/parsing.types.mjs +2 -0
- package/esm2020/lib/components/datepicker/chronos/create/valid.mjs +42 -0
- package/esm2020/lib/components/datepicker/chronos/duration/bubble.mjs +47 -0
- package/esm2020/lib/components/datepicker/chronos/duration/constructor.mjs +130 -0
- package/esm2020/lib/components/datepicker/chronos/duration/create.mjs +113 -0
- package/esm2020/lib/components/datepicker/chronos/duration/humanize.mjs +80 -0
- package/esm2020/lib/components/datepicker/chronos/duration/valid.mjs +43 -0
- package/esm2020/lib/components/datepicker/chronos/format/format.mjs +51 -0
- package/esm2020/lib/components/datepicker/chronos/format.mjs +46 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/ar.mjs +128 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/bg.mjs +94 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/ca.mjs +91 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/cs.mjs +179 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/da.mjs +50 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/de.mjs +72 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/en-gb.mjs +61 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/es-do.mjs +85 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/es-us.mjs +79 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/es.mjs +84 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/et.mjs +73 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/fi.mjs +100 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/fr.mjs +76 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/gl.mjs +84 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/he.mjs +98 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/hi.mjs +124 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/hr.mjs +62 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/hu.mjs +104 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/id.mjs +83 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/it.mjs +65 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/ja.mjs +75 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/ka.mjs +87 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/kk.mjs +76 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/ko.mjs +77 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/lt.mjs +116 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/lv.mjs +56 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/mn.mjs +99 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/nb.mjs +53 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/nl-be.mjs +81 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/nl.mjs +80 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/pl.mjs +126 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/pt-br.mjs +56 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/ro.mjs +66 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/ru.mjs +181 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/sk.mjs +157 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/sl.mjs +184 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/sq.mjs +54 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/sv.mjs +63 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/th-be.mjs +74 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/th.mjs +59 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/tr.mjs +82 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/uk.mjs +147 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/vi.mjs +74 -0
- package/esm2020/lib/components/datepicker/chronos/i18n/zh-cn.mjs +114 -0
- package/esm2020/lib/components/datepicker/chronos/index.mjs +2 -0
- package/esm2020/lib/components/datepicker/chronos/locale/calendar.mjs +9 -0
- package/esm2020/lib/components/datepicker/chronos/locale/locale.class.mjs +532 -0
- package/esm2020/lib/components/datepicker/chronos/locale/locale.defaults.mjs +40 -0
- package/esm2020/lib/components/datepicker/chronos/locale/locales.mjs +229 -0
- package/esm2020/lib/components/datepicker/chronos/moment/add-subtract.mjs +35 -0
- package/esm2020/lib/components/datepicker/chronos/moment/calendar.mjs +41 -0
- package/esm2020/lib/components/datepicker/chronos/moment/diff.mjs +70 -0
- package/esm2020/lib/components/datepicker/chronos/moment/min-max.mjs +38 -0
- package/esm2020/lib/components/datepicker/chronos/parse/regex.mjs +49 -0
- package/esm2020/lib/components/datepicker/chronos/parse/token.mjs +32 -0
- package/esm2020/lib/components/datepicker/chronos/public_api.mjs +56 -0
- package/esm2020/lib/components/datepicker/chronos/test/chain.mjs +711 -0
- package/esm2020/lib/components/datepicker/chronos/types.mjs +2 -0
- package/esm2020/lib/components/datepicker/chronos/units/aliases.mjs +35 -0
- package/esm2020/lib/components/datepicker/chronos/units/constants.mjs +11 -0
- package/esm2020/lib/components/datepicker/chronos/units/day-of-month.mjs +31 -0
- package/esm2020/lib/components/datepicker/chronos/units/day-of-week.mjs +129 -0
- package/esm2020/lib/components/datepicker/chronos/units/day-of-year.mjs +37 -0
- package/esm2020/lib/components/datepicker/chronos/units/hour.mjs +127 -0
- package/esm2020/lib/components/datepicker/chronos/units/index.mjs +19 -0
- package/esm2020/lib/components/datepicker/chronos/units/millisecond.mjs +60 -0
- package/esm2020/lib/components/datepicker/chronos/units/minute.mjs +23 -0
- package/esm2020/lib/components/datepicker/chronos/units/month.mjs +63 -0
- package/esm2020/lib/components/datepicker/chronos/units/offset.mjs +210 -0
- package/esm2020/lib/components/datepicker/chronos/units/priorities.mjs +21 -0
- package/esm2020/lib/components/datepicker/chronos/units/quarter.mjs +39 -0
- package/esm2020/lib/components/datepicker/chronos/units/second.mjs +23 -0
- package/esm2020/lib/components/datepicker/chronos/units/timestamp.mjs +28 -0
- package/esm2020/lib/components/datepicker/chronos/units/timezone.mjs +19 -0
- package/esm2020/lib/components/datepicker/chronos/units/week-calendar-utils.mjs +70 -0
- package/esm2020/lib/components/datepicker/chronos/units/week-year.mjs +101 -0
- package/esm2020/lib/components/datepicker/chronos/units/week.mjs +58 -0
- package/esm2020/lib/components/datepicker/chronos/units/year.mjs +60 -0
- package/esm2020/lib/components/datepicker/chronos/utils/abs-ceil.mjs +4 -0
- package/esm2020/lib/components/datepicker/chronos/utils/abs-round.mjs +4 -0
- package/esm2020/lib/components/datepicker/chronos/utils/compare-arrays.mjs +16 -0
- package/esm2020/lib/components/datepicker/chronos/utils/date-compare.mjs +55 -0
- package/esm2020/lib/components/datepicker/chronos/utils/date-getters.mjs +67 -0
- package/esm2020/lib/components/datepicker/chronos/utils/date-setters.mjs +75 -0
- package/esm2020/lib/components/datepicker/chronos/utils/defaults.mjs +11 -0
- package/esm2020/lib/components/datepicker/chronos/utils/start-end-of.mjs +57 -0
- package/esm2020/lib/components/datepicker/chronos/utils/type-checks.mjs +56 -0
- package/esm2020/lib/components/datepicker/chronos/utils/zero-fill.mjs +10 -0
- package/esm2020/lib/components/datepicker/chronos/utils.mjs +7 -0
- package/esm2020/lib/components/datepicker/component-loader/bs-component-ref.class.mjs +3 -0
- package/esm2020/lib/components/datepicker/component-loader/component-loader.class.mjs +272 -0
- package/esm2020/lib/components/datepicker/component-loader/component-loader.factory.mjs +30 -0
- package/esm2020/lib/components/datepicker/component-loader/content-ref.class.mjs +12 -0
- package/esm2020/lib/components/datepicker/component-loader/index.mjs +2 -0
- package/esm2020/lib/components/datepicker/component-loader/listen-options.model.mjs +2 -0
- package/esm2020/lib/components/datepicker/component-loader/public_api.mjs +5 -0
- package/esm2020/lib/components/datepicker/date-formatter.mjs +7 -0
- package/esm2020/lib/components/datepicker/datepicker-animations.mjs +16 -0
- package/esm2020/lib/components/datepicker/datepicker-inner.component.mjs +317 -0
- package/esm2020/lib/components/datepicker/datepicker.component.mjs +203 -0
- package/esm2020/lib/components/datepicker/datepicker.config.mjs +32 -0
- package/esm2020/lib/components/datepicker/datepicker.module.mjs +48 -0
- package/esm2020/lib/components/datepicker/daypicker.component.mjs +229 -0
- package/esm2020/lib/components/datepicker/engine/calc-days-calendar.mjs +19 -0
- package/esm2020/lib/components/datepicker/engine/flag-days-calendar.mjs +91 -0
- package/esm2020/lib/components/datepicker/engine/flag-months-calendar.mjs +41 -0
- package/esm2020/lib/components/datepicker/engine/flag-years-calendar.mjs +39 -0
- package/esm2020/lib/components/datepicker/engine/format-days-calendar.mjs +29 -0
- package/esm2020/lib/components/datepicker/engine/format-months-calendar.mjs +19 -0
- package/esm2020/lib/components/datepicker/engine/format-years-calendar.mjs +35 -0
- package/esm2020/lib/components/datepicker/engine/view-mode.mjs +4 -0
- package/esm2020/lib/components/datepicker/index.mjs +2 -0
- package/esm2020/lib/components/datepicker/mini-ngrx/index.mjs +2 -0
- package/esm2020/lib/components/datepicker/mini-ngrx/public_api.mjs +3 -0
- package/esm2020/lib/components/datepicker/mini-ngrx/state.class.mjs +16 -0
- package/esm2020/lib/components/datepicker/mini-ngrx/store.class.mjs +43 -0
- package/esm2020/lib/components/datepicker/models/index.mjs +9 -0
- package/esm2020/lib/components/datepicker/monthpicker.component.mjs +117 -0
- package/esm2020/lib/components/datepicker/positioning/index.mjs +2 -0
- package/esm2020/lib/components/datepicker/positioning/models/index.mjs +2 -0
- package/esm2020/lib/components/datepicker/positioning/modifiers/arrow.mjs +56 -0
- package/esm2020/lib/components/datepicker/positioning/modifiers/flip.mjs +66 -0
- package/esm2020/lib/components/datepicker/positioning/modifiers/index.mjs +6 -0
- package/esm2020/lib/components/datepicker/positioning/modifiers/initData.mjs +42 -0
- package/esm2020/lib/components/datepicker/positioning/modifiers/preventOverflow.mjs +59 -0
- package/esm2020/lib/components/datepicker/positioning/modifiers/shift.mjs +24 -0
- package/esm2020/lib/components/datepicker/positioning/ng-positioning.mjs +30 -0
- package/esm2020/lib/components/datepicker/positioning/positioning.service.mjs +75 -0
- package/esm2020/lib/components/datepicker/positioning/public_api.mjs +3 -0
- package/esm2020/lib/components/datepicker/positioning/utils/computeAutoPlacement.mjs +57 -0
- package/esm2020/lib/components/datepicker/positioning/utils/findCommonOffsetParent.mjs +40 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getBordersSize.mjs +10 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getBoundaries.mjs +56 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getBoundingClientRect.mjs +55 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getClientRect.mjs +8 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getFixedPositionOffsetParent.mjs +17 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getOffsetParent.mjs +32 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getOffsetRectRelativeToArbitraryNode.mjs +51 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getOffsets.mjs +11 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getOppositePlacement.mjs +8 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getOppositeVariation.mjs +13 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getOuterSizes.mjs +14 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getParentNode.mjs +10 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getReferenceOffsets.mjs +13 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getRoot.mjs +10 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getScroll.mjs +14 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getScrollParent.mjs +26 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getStyleComputedProperty.mjs +13 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getTargetOffsets.mjs +30 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.mjs +19 -0
- package/esm2020/lib/components/datepicker/positioning/utils/getWindowSizes.mjs +18 -0
- package/esm2020/lib/components/datepicker/positioning/utils/includeScroll.mjs +15 -0
- package/esm2020/lib/components/datepicker/positioning/utils/index.mjs +24 -0
- package/esm2020/lib/components/datepicker/positioning/utils/isBrowser.mjs +2 -0
- package/esm2020/lib/components/datepicker/positioning/utils/isFixed.mjs +16 -0
- package/esm2020/lib/components/datepicker/positioning/utils/isIE.mjs +16 -0
- package/esm2020/lib/components/datepicker/positioning/utils/isModifierEnabled.mjs +10 -0
- package/esm2020/lib/components/datepicker/positioning/utils/isNumeric.mjs +7 -0
- package/esm2020/lib/components/datepicker/positioning/utils/isOffsetContainer.mjs +9 -0
- package/esm2020/lib/components/datepicker/positioning/utils/setStyles.mjs +17 -0
- package/esm2020/lib/components/datepicker/positioning/utils/updateContainerClass.mjs +22 -0
- package/esm2020/lib/components/datepicker/public_api.mjs +25 -0
- package/esm2020/lib/components/datepicker/reducer/_defaults.mjs +5 -0
- package/esm2020/lib/components/datepicker/reducer/bs-datepicker.actions.mjs +136 -0
- package/esm2020/lib/components/datepicker/reducer/bs-datepicker.effects.mjs +171 -0
- package/esm2020/lib/components/datepicker/reducer/bs-datepicker.reducer.mjs +302 -0
- package/esm2020/lib/components/datepicker/reducer/bs-datepicker.state.mjs +12 -0
- package/esm2020/lib/components/datepicker/reducer/bs-datepicker.store.mjs +21 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-calendar-layout.component.mjs +47 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-current-date-view.component.mjs +16 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-custom-dates-view.component.mjs +68 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-datepicker-container.component.mjs +151 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-datepicker-day-decorator.directive.mjs +46 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-datepicker-inline-container.component.mjs +35 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-datepicker-navigation-view.component.mjs +105 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-daterangepicker-container.component.mjs +194 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-daterangepicker-inline-container.component.mjs +35 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-days-calendar-view.component.mjs +230 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-months-calendar-view.component.mjs +93 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-timepicker-view.component.mjs +56 -0
- package/esm2020/lib/components/datepicker/themes/bs/bs-years-calendar-view.component.mjs +94 -0
- package/esm2020/lib/components/datepicker/utils/bs-calendar-utils.mjs +43 -0
- package/esm2020/lib/components/datepicker/utils/matrix-utils.mjs +14 -0
- package/esm2020/lib/components/datepicker/utils-v2/decorators.mjs +25 -0
- package/esm2020/lib/components/datepicker/utils-v2/facade/browser.mjs +24 -0
- package/esm2020/lib/components/datepicker/utils-v2/index.mjs +2 -0
- package/esm2020/lib/components/datepicker/utils-v2/linked-list.class.mjs +240 -0
- package/esm2020/lib/components/datepicker/utils-v2/public_api.mjs +11 -0
- package/esm2020/lib/components/datepicker/utils-v2/theme-provider.mjs +35 -0
- package/esm2020/lib/components/datepicker/utils-v2/trigger.class.mjs +10 -0
- package/esm2020/lib/components/datepicker/utils-v2/triggers.mjs +110 -0
- package/esm2020/lib/components/datepicker/utils-v2/utils.class.mjs +21 -0
- package/esm2020/lib/components/datepicker/utils-v2/warn-once.mjs +12 -0
- package/esm2020/lib/components/datepicker/yearpicker.component.mjs +121 -0
- package/esm2020/lib/constants/release.constants.mjs +2 -0
- package/esm2020/lib/functions/utility.functions.mjs +15 -0
- package/esm2020/lib/interceptors/auth.interceptor.mjs +3 -1
- package/esm2020/lib/models/configurations.model.mjs +1 -1
- package/esm2020/lib/modules/logger/logger.functions.mjs +1 -1
- package/esm2020/lib/modules/logger/logger.service.mjs +2 -1
- package/esm2020/lib/services/http.service.mjs +3 -1
- package/esm2020/lib/services/loader.service.mjs +2 -2
- package/esm2020/lib/services/mfe-communication.service.mjs +5 -5
- package/esm2020/lib/wis-common.module.mjs +1 -1
- package/esm2020/public-api.mjs +4 -1
- package/esm2020/src/lib/components/datepicker/base/bs-datepicker-container.mjs +47 -0
- package/esm2020/src/lib/components/datepicker/bs-datepicker-inline.component.mjs +139 -0
- package/esm2020/src/lib/components/datepicker/bs-datepicker-inline.config.mjs +14 -0
- package/esm2020/src/lib/components/datepicker/bs-datepicker-input.directive.mjs +160 -0
- package/esm2020/src/lib/components/datepicker/bs-datepicker.component.mjs +255 -0
- package/esm2020/src/lib/components/datepicker/bs-datepicker.config.mjs +87 -0
- package/esm2020/src/lib/components/datepicker/bs-datepicker.module.mjs +125 -0
- package/esm2020/src/lib/components/datepicker/bs-daterangepicker-inline.component.mjs +136 -0
- package/esm2020/src/lib/components/datepicker/bs-daterangepicker-inline.config.mjs +21 -0
- package/esm2020/src/lib/components/datepicker/bs-daterangepicker-input.directive.mjs +192 -0
- package/esm2020/src/lib/components/datepicker/bs-daterangepicker.component.mjs +242 -0
- package/esm2020/src/lib/components/datepicker/bs-daterangepicker.config.mjs +19 -0
- package/esm2020/src/lib/components/datepicker/bs-locale.service.mjs +32 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/check-overflow.mjs +30 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/clone.mjs +6 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/date-from-array.mjs +17 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/from-anything.mjs +107 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/from-array.mjs +136 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/from-object.mjs +17 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/from-string-and-array.mjs +38 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/from-string-and-format.mjs +106 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/from-string.mjs +227 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/local.mjs +16 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/parsing-flags.mjs +26 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/parsing.types.mjs +2 -0
- package/esm2020/src/lib/components/datepicker/chronos/create/valid.mjs +42 -0
- package/esm2020/src/lib/components/datepicker/chronos/duration/bubble.mjs +47 -0
- package/esm2020/src/lib/components/datepicker/chronos/duration/constructor.mjs +130 -0
- package/esm2020/src/lib/components/datepicker/chronos/duration/create.mjs +113 -0
- package/esm2020/src/lib/components/datepicker/chronos/duration/humanize.mjs +80 -0
- package/esm2020/src/lib/components/datepicker/chronos/duration/valid.mjs +43 -0
- package/esm2020/src/lib/components/datepicker/chronos/format/format.mjs +51 -0
- package/esm2020/src/lib/components/datepicker/chronos/format.mjs +46 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/ar.mjs +128 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/bg.mjs +94 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/ca.mjs +91 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/cs.mjs +179 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/da.mjs +50 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/de.mjs +72 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/en-gb.mjs +61 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/es-do.mjs +85 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/es-us.mjs +79 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/es.mjs +84 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/et.mjs +73 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/fi.mjs +100 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/fr.mjs +76 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/gl.mjs +84 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/he.mjs +98 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/hi.mjs +124 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/hr.mjs +62 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/hu.mjs +104 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/id.mjs +83 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/it.mjs +65 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/ja.mjs +75 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/ka.mjs +87 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/kk.mjs +76 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/ko.mjs +77 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/lt.mjs +116 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/lv.mjs +56 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/mn.mjs +99 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/nb.mjs +53 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/nl-be.mjs +81 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/nl.mjs +80 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/pl.mjs +126 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/pt-br.mjs +56 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/ro.mjs +66 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/ru.mjs +181 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/sk.mjs +157 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/sl.mjs +184 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/sq.mjs +54 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/sv.mjs +63 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/th-be.mjs +74 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/th.mjs +59 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/tr.mjs +82 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/uk.mjs +147 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/vi.mjs +74 -0
- package/esm2020/src/lib/components/datepicker/chronos/i18n/zh-cn.mjs +114 -0
- package/esm2020/src/lib/components/datepicker/chronos/index.mjs +2 -0
- package/esm2020/src/lib/components/datepicker/chronos/locale/calendar.mjs +9 -0
- package/esm2020/src/lib/components/datepicker/chronos/locale/locale.class.mjs +532 -0
- package/esm2020/src/lib/components/datepicker/chronos/locale/locale.defaults.mjs +40 -0
- package/esm2020/src/lib/components/datepicker/chronos/locale/locales.mjs +229 -0
- package/esm2020/src/lib/components/datepicker/chronos/moment/add-subtract.mjs +35 -0
- package/esm2020/src/lib/components/datepicker/chronos/moment/calendar.mjs +41 -0
- package/esm2020/src/lib/components/datepicker/chronos/moment/diff.mjs +70 -0
- package/esm2020/src/lib/components/datepicker/chronos/moment/min-max.mjs +38 -0
- package/esm2020/src/lib/components/datepicker/chronos/parse/regex.mjs +49 -0
- package/esm2020/src/lib/components/datepicker/chronos/parse/token.mjs +32 -0
- package/esm2020/src/lib/components/datepicker/chronos/public_api.mjs +56 -0
- package/esm2020/src/lib/components/datepicker/chronos/test/chain.mjs +711 -0
- package/esm2020/src/lib/components/datepicker/chronos/types.mjs +2 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/aliases.mjs +35 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/constants.mjs +11 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/day-of-month.mjs +31 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/day-of-week.mjs +129 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/day-of-year.mjs +37 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/hour.mjs +127 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/index.mjs +19 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/millisecond.mjs +60 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/minute.mjs +23 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/month.mjs +63 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/offset.mjs +210 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/priorities.mjs +21 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/quarter.mjs +39 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/second.mjs +23 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/timestamp.mjs +28 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/timezone.mjs +19 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/week-calendar-utils.mjs +70 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/week-year.mjs +101 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/week.mjs +58 -0
- package/esm2020/src/lib/components/datepicker/chronos/units/year.mjs +60 -0
- package/esm2020/src/lib/components/datepicker/chronos/utils/abs-ceil.mjs +4 -0
- package/esm2020/src/lib/components/datepicker/chronos/utils/abs-round.mjs +4 -0
- package/esm2020/src/lib/components/datepicker/chronos/utils/compare-arrays.mjs +16 -0
- package/esm2020/src/lib/components/datepicker/chronos/utils/date-compare.mjs +55 -0
- package/esm2020/src/lib/components/datepicker/chronos/utils/date-getters.mjs +67 -0
- package/esm2020/src/lib/components/datepicker/chronos/utils/date-setters.mjs +75 -0
- package/esm2020/src/lib/components/datepicker/chronos/utils/defaults.mjs +11 -0
- package/esm2020/src/lib/components/datepicker/chronos/utils/start-end-of.mjs +57 -0
- package/esm2020/src/lib/components/datepicker/chronos/utils/type-checks.mjs +56 -0
- package/esm2020/src/lib/components/datepicker/chronos/utils/zero-fill.mjs +10 -0
- package/esm2020/src/lib/components/datepicker/chronos/utils.mjs +7 -0
- package/esm2020/src/lib/components/datepicker/component-loader/bs-component-ref.class.mjs +3 -0
- package/esm2020/src/lib/components/datepicker/component-loader/component-loader.class.mjs +272 -0
- package/esm2020/src/lib/components/datepicker/component-loader/component-loader.factory.mjs +30 -0
- package/esm2020/src/lib/components/datepicker/component-loader/content-ref.class.mjs +12 -0
- package/esm2020/src/lib/components/datepicker/component-loader/index.mjs +2 -0
- package/esm2020/src/lib/components/datepicker/component-loader/listen-options.model.mjs +2 -0
- package/esm2020/src/lib/components/datepicker/component-loader/public_api.mjs +5 -0
- package/esm2020/src/lib/components/datepicker/date-formatter.mjs +7 -0
- package/esm2020/src/lib/components/datepicker/datepicker-animations.mjs +16 -0
- package/esm2020/src/lib/components/datepicker/datepicker-inner.component.mjs +317 -0
- package/esm2020/src/lib/components/datepicker/datepicker.component.mjs +203 -0
- package/esm2020/src/lib/components/datepicker/datepicker.config.mjs +32 -0
- package/esm2020/src/lib/components/datepicker/datepicker.module.mjs +48 -0
- package/esm2020/src/lib/components/datepicker/daypicker.component.mjs +229 -0
- package/esm2020/src/lib/components/datepicker/engine/calc-days-calendar.mjs +19 -0
- package/esm2020/src/lib/components/datepicker/engine/flag-days-calendar.mjs +91 -0
- package/esm2020/src/lib/components/datepicker/engine/flag-months-calendar.mjs +41 -0
- package/esm2020/src/lib/components/datepicker/engine/flag-years-calendar.mjs +39 -0
- package/esm2020/src/lib/components/datepicker/engine/format-days-calendar.mjs +29 -0
- package/esm2020/src/lib/components/datepicker/engine/format-months-calendar.mjs +19 -0
- package/esm2020/src/lib/components/datepicker/engine/format-years-calendar.mjs +35 -0
- package/esm2020/src/lib/components/datepicker/engine/view-mode.mjs +4 -0
- package/esm2020/src/lib/components/datepicker/index.mjs +2 -0
- package/esm2020/src/lib/components/datepicker/mini-ngrx/index.mjs +2 -0
- package/esm2020/src/lib/components/datepicker/mini-ngrx/public_api.mjs +3 -0
- package/esm2020/src/lib/components/datepicker/mini-ngrx/state.class.mjs +16 -0
- package/esm2020/src/lib/components/datepicker/mini-ngrx/store.class.mjs +43 -0
- package/esm2020/src/lib/components/datepicker/mis-wis-common-src-lib-components-datepicker.mjs +5 -0
- package/esm2020/src/lib/components/datepicker/models/index.mjs +9 -0
- package/esm2020/src/lib/components/datepicker/monthpicker.component.mjs +117 -0
- package/esm2020/src/lib/components/datepicker/positioning/index.mjs +2 -0
- package/esm2020/src/lib/components/datepicker/positioning/models/index.mjs +2 -0
- package/esm2020/src/lib/components/datepicker/positioning/modifiers/arrow.mjs +56 -0
- package/esm2020/src/lib/components/datepicker/positioning/modifiers/flip.mjs +66 -0
- package/esm2020/src/lib/components/datepicker/positioning/modifiers/index.mjs +6 -0
- package/esm2020/src/lib/components/datepicker/positioning/modifiers/initData.mjs +42 -0
- package/esm2020/src/lib/components/datepicker/positioning/modifiers/preventOverflow.mjs +59 -0
- package/esm2020/src/lib/components/datepicker/positioning/modifiers/shift.mjs +24 -0
- package/esm2020/src/lib/components/datepicker/positioning/ng-positioning.mjs +30 -0
- package/esm2020/src/lib/components/datepicker/positioning/positioning.service.mjs +75 -0
- package/esm2020/src/lib/components/datepicker/positioning/public_api.mjs +3 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/computeAutoPlacement.mjs +57 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/findCommonOffsetParent.mjs +40 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getBordersSize.mjs +10 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getBoundaries.mjs +56 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getBoundingClientRect.mjs +55 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getClientRect.mjs +8 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getFixedPositionOffsetParent.mjs +17 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getOffsetParent.mjs +32 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getOffsetRectRelativeToArbitraryNode.mjs +51 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getOffsets.mjs +11 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getOppositePlacement.mjs +8 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getOppositeVariation.mjs +13 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getOuterSizes.mjs +14 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getParentNode.mjs +10 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getReferenceOffsets.mjs +13 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getRoot.mjs +10 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getScroll.mjs +14 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getScrollParent.mjs +26 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getStyleComputedProperty.mjs +13 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getTargetOffsets.mjs +30 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.mjs +19 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/getWindowSizes.mjs +18 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/includeScroll.mjs +15 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/index.mjs +24 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/isBrowser.mjs +2 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/isFixed.mjs +16 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/isIE.mjs +16 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/isModifierEnabled.mjs +10 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/isNumeric.mjs +7 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/isOffsetContainer.mjs +9 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/setStyles.mjs +17 -0
- package/esm2020/src/lib/components/datepicker/positioning/utils/updateContainerClass.mjs +22 -0
- package/esm2020/src/lib/components/datepicker/public_api.mjs +25 -0
- package/esm2020/src/lib/components/datepicker/reducer/_defaults.mjs +5 -0
- package/esm2020/src/lib/components/datepicker/reducer/bs-datepicker.actions.mjs +136 -0
- package/esm2020/src/lib/components/datepicker/reducer/bs-datepicker.effects.mjs +171 -0
- package/esm2020/src/lib/components/datepicker/reducer/bs-datepicker.reducer.mjs +302 -0
- package/esm2020/src/lib/components/datepicker/reducer/bs-datepicker.state.mjs +12 -0
- package/esm2020/src/lib/components/datepicker/reducer/bs-datepicker.store.mjs +21 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-calendar-layout.component.mjs +47 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-current-date-view.component.mjs +16 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-custom-dates-view.component.mjs +68 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-datepicker-container.component.mjs +151 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-datepicker-day-decorator.directive.mjs +46 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-datepicker-inline-container.component.mjs +35 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-datepicker-navigation-view.component.mjs +105 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-daterangepicker-container.component.mjs +194 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-daterangepicker-inline-container.component.mjs +35 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-days-calendar-view.component.mjs +230 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-months-calendar-view.component.mjs +93 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-timepicker-view.component.mjs +56 -0
- package/esm2020/src/lib/components/datepicker/themes/bs/bs-years-calendar-view.component.mjs +94 -0
- package/esm2020/src/lib/components/datepicker/utils/bs-calendar-utils.mjs +43 -0
- package/esm2020/src/lib/components/datepicker/utils/matrix-utils.mjs +14 -0
- package/esm2020/src/lib/components/datepicker/utils-v2/decorators.mjs +25 -0
- package/esm2020/src/lib/components/datepicker/utils-v2/facade/browser.mjs +24 -0
- package/esm2020/src/lib/components/datepicker/utils-v2/index.mjs +2 -0
- package/esm2020/src/lib/components/datepicker/utils-v2/linked-list.class.mjs +240 -0
- package/esm2020/src/lib/components/datepicker/utils-v2/public_api.mjs +11 -0
- package/esm2020/src/lib/components/datepicker/utils-v2/theme-provider.mjs +35 -0
- package/esm2020/src/lib/components/datepicker/utils-v2/trigger.class.mjs +10 -0
- package/esm2020/src/lib/components/datepicker/utils-v2/triggers.mjs +110 -0
- package/esm2020/src/lib/components/datepicker/utils-v2/utils.class.mjs +21 -0
- package/esm2020/src/lib/components/datepicker/utils-v2/warn-once.mjs +12 -0
- package/esm2020/src/lib/components/datepicker/yearpicker.component.mjs +121 -0
- package/fesm2015/mis-wis-common-src-lib-components-datepicker.mjs +13591 -0
- package/fesm2015/mis-wis-common-src-lib-components-datepicker.mjs.map +1 -0
- package/fesm2015/mis-wis-common.mjs +13612 -17
- package/fesm2015/mis-wis-common.mjs.map +1 -1
- package/fesm2020/mis-wis-common-src-lib-components-datepicker.mjs +13604 -0
- package/fesm2020/mis-wis-common-src-lib-components-datepicker.mjs.map +1 -0
- package/fesm2020/mis-wis-common.mjs +13626 -18
- package/fesm2020/mis-wis-common.mjs.map +1 -1
- package/lib/components/datepicker/base/bs-datepicker-container.d.ts +44 -0
- package/lib/components/datepicker/bs-datepicker-inline.component.d.ts +64 -0
- package/lib/components/datepicker/bs-datepicker-inline.config.d.ts +6 -0
- package/lib/components/datepicker/bs-datepicker-input.directive.d.ts +33 -0
- package/lib/components/datepicker/bs-datepicker.component.d.ts +126 -0
- package/lib/components/datepicker/bs-datepicker.config.d.ts +143 -0
- package/lib/components/datepicker/bs-datepicker.module.d.ts +29 -0
- package/lib/components/datepicker/bs-daterangepicker-inline.component.d.ts +64 -0
- package/lib/components/datepicker/bs-daterangepicker-inline.config.d.ts +9 -0
- package/lib/components/datepicker/bs-daterangepicker-input.directive.d.ts +33 -0
- package/lib/components/datepicker/bs-daterangepicker.component.d.ts +118 -0
- package/lib/components/datepicker/bs-daterangepicker.config.d.ts +7 -0
- package/lib/components/datepicker/bs-locale.service.d.ts +13 -0
- package/lib/components/datepicker/chronos/create/check-overflow.d.ts +2 -0
- package/lib/components/datepicker/chronos/create/clone.d.ts +1 -0
- package/lib/components/datepicker/chronos/create/date-from-array.d.ts +2 -0
- package/lib/components/datepicker/chronos/create/from-anything.d.ts +4 -0
- package/lib/components/datepicker/chronos/create/from-array.d.ts +2 -0
- package/lib/components/datepicker/chronos/create/from-object.d.ts +2 -0
- package/lib/components/datepicker/chronos/create/from-string-and-array.d.ts +2 -0
- package/lib/components/datepicker/chronos/create/from-string-and-format.d.ts +4 -0
- package/lib/components/datepicker/chronos/create/from-string.d.ts +4 -0
- package/lib/components/datepicker/chronos/create/local.d.ts +3 -0
- package/lib/components/datepicker/chronos/create/parsing-flags.d.ts +2 -0
- package/lib/components/datepicker/chronos/create/parsing.types.d.ts +64 -0
- package/lib/components/datepicker/chronos/create/valid.d.ts +6 -0
- package/lib/components/datepicker/chronos/duration/bubble.d.ts +4 -0
- package/lib/components/datepicker/chronos/duration/constructor.d.ts +21 -0
- package/lib/components/datepicker/chronos/duration/create.d.ts +8 -0
- package/lib/components/datepicker/chronos/duration/humanize.d.ts +5 -0
- package/lib/components/datepicker/chronos/duration/valid.d.ts +2 -0
- package/lib/components/datepicker/chronos/format/format.d.ts +11 -0
- package/lib/components/datepicker/chronos/format.d.ts +5 -0
- package/lib/components/datepicker/chronos/i18n/ar.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/bg.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/ca.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/cs.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/da.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/de.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/en-gb.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/es-do.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/es-us.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/es.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/et.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/fi.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/fr.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/gl.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/he.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/hi.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/hr.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/hu.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/id.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/it.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/ja.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/ka.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/kk.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/ko.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/lt.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/lv.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/mn.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/nb.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/nl-be.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/nl.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/pl.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/pt-br.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/ro.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/ru.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/sk.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/sl.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/sq.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/sv.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/th-be.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/th.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/tr.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/uk.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/vi.d.ts +2 -0
- package/lib/components/datepicker/chronos/i18n/zh-cn.d.ts +2 -0
- package/lib/components/datepicker/chronos/index.d.ts +1 -0
- package/lib/components/datepicker/chronos/locale/calendar.d.ts +8 -0
- package/lib/components/datepicker/chronos/locale/locale.class.d.ts +143 -0
- package/lib/components/datepicker/chronos/locale/locale.defaults.d.ts +11 -0
- package/lib/components/datepicker/chronos/locale/locales.d.ts +7 -0
- package/lib/components/datepicker/chronos/moment/add-subtract.d.ts +5 -0
- package/lib/components/datepicker/chronos/moment/calendar.d.ts +15 -0
- package/lib/components/datepicker/chronos/moment/diff.d.ts +3 -0
- package/lib/components/datepicker/chronos/moment/min-max.d.ts +2 -0
- package/lib/components/datepicker/chronos/parse/regex.d.ts +22 -0
- package/lib/components/datepicker/chronos/parse/token.d.ts +5 -0
- package/lib/components/datepicker/chronos/public_api.d.ts +57 -0
- package/lib/components/datepicker/chronos/test/chain.d.ts +214 -0
- package/lib/components/datepicker/chronos/types.d.ts +36 -0
- package/lib/components/datepicker/chronos/units/aliases.d.ts +7 -0
- package/lib/components/datepicker/chronos/units/constants.d.ts +9 -0
- package/lib/components/datepicker/chronos/units/day-of-month.d.ts +1 -0
- package/lib/components/datepicker/chronos/units/day-of-week.d.ts +20 -0
- package/lib/components/datepicker/chronos/units/day-of-year.d.ts +3 -0
- package/lib/components/datepicker/chronos/units/hour.d.ts +1 -0
- package/lib/components/datepicker/chronos/units/index.d.ts +18 -0
- package/lib/components/datepicker/chronos/units/millisecond.d.ts +1 -0
- package/lib/components/datepicker/chronos/units/minute.d.ts +1 -0
- package/lib/components/datepicker/chronos/units/month.d.ts +2 -0
- package/lib/components/datepicker/chronos/units/offset.d.ts +10 -0
- package/lib/components/datepicker/chronos/units/priorities.d.ts +1 -0
- package/lib/components/datepicker/chronos/units/quarter.d.ts +3 -0
- package/lib/components/datepicker/chronos/units/second.d.ts +1 -0
- package/lib/components/datepicker/chronos/units/timestamp.d.ts +1 -0
- package/lib/components/datepicker/chronos/units/timezone.d.ts +3 -0
- package/lib/components/datepicker/chronos/units/week-calendar-utils.d.ts +9 -0
- package/lib/components/datepicker/chronos/units/week-year.d.ts +8 -0
- package/lib/components/datepicker/chronos/units/week.d.ts +6 -0
- package/lib/components/datepicker/chronos/units/year.d.ts +4 -0
- package/lib/components/datepicker/chronos/utils/abs-ceil.d.ts +1 -0
- package/lib/components/datepicker/chronos/utils/abs-round.d.ts +1 -0
- package/lib/components/datepicker/chronos/utils/compare-arrays.d.ts +1 -0
- package/lib/components/datepicker/chronos/utils/date-compare.d.ts +9 -0
- package/lib/components/datepicker/chronos/utils/date-getters.d.ts +18 -0
- package/lib/components/datepicker/chronos/utils/date-setters.d.ts +12 -0
- package/lib/components/datepicker/chronos/utils/defaults.d.ts +1 -0
- package/lib/components/datepicker/chronos/utils/start-end-of.d.ts +3 -0
- package/lib/components/datepicker/chronos/utils/type-checks.d.ts +12 -0
- package/lib/components/datepicker/chronos/utils/zero-fill.d.ts +1 -0
- package/lib/components/datepicker/chronos/utils.d.ts +2 -0
- package/lib/components/datepicker/component-loader/bs-component-ref.class.d.ts +5 -0
- package/lib/components/datepicker/component-loader/component-loader.class.d.ts +75 -0
- package/lib/components/datepicker/component-loader/component-loader.factory.d.ts +21 -0
- package/lib/components/datepicker/component-loader/content-ref.class.d.ts +7 -0
- package/lib/components/datepicker/component-loader/index.d.ts +1 -0
- package/lib/components/datepicker/component-loader/listen-options.model.d.ts +11 -0
- package/lib/components/datepicker/component-loader/public_api.d.ts +4 -0
- package/lib/components/datepicker/date-formatter.d.ts +3 -0
- package/lib/components/datepicker/datepicker-animations.d.ts +3 -0
- package/lib/components/datepicker/datepicker-inner.component.d.ts +78 -0
- package/lib/components/datepicker/datepicker.component.d.ts +81 -0
- package/lib/components/datepicker/datepicker.config.d.ts +22 -0
- package/lib/components/datepicker/datepicker.module.d.ts +15 -0
- package/lib/components/datepicker/daypicker.component.d.ts +17 -0
- package/lib/components/datepicker/engine/calc-days-calendar.d.ts +2 -0
- package/lib/components/datepicker/engine/flag-days-calendar.d.ts +17 -0
- package/lib/components/datepicker/engine/flag-months-calendar.d.ts +12 -0
- package/lib/components/datepicker/engine/flag-years-calendar.d.ts +12 -0
- package/lib/components/datepicker/engine/format-days-calendar.d.ts +4 -0
- package/lib/components/datepicker/engine/format-months-calendar.d.ts +2 -0
- package/lib/components/datepicker/engine/format-years-calendar.d.ts +4 -0
- package/lib/components/datepicker/engine/view-mode.d.ts +2 -0
- package/lib/components/datepicker/index.d.ts +1 -0
- package/lib/components/datepicker/mini-ngrx/index.d.ts +1 -0
- package/lib/components/datepicker/mini-ngrx/public_api.d.ts +7 -0
- package/lib/components/datepicker/mini-ngrx/state.class.d.ts +8 -0
- package/lib/components/datepicker/mini-ngrx/store.class.d.ts +16 -0
- package/lib/components/datepicker/models/index.d.ts +102 -0
- package/lib/components/datepicker/monthpicker.component.d.ts +14 -0
- package/lib/components/datepicker/positioning/index.d.ts +1 -0
- package/lib/components/datepicker/positioning/models/index.d.ts +41 -0
- package/lib/components/datepicker/positioning/modifiers/arrow.d.ts +2 -0
- package/lib/components/datepicker/positioning/modifiers/flip.d.ts +2 -0
- package/lib/components/datepicker/positioning/modifiers/index.d.ts +5 -0
- package/lib/components/datepicker/positioning/modifiers/initData.d.ts +2 -0
- package/lib/components/datepicker/positioning/modifiers/preventOverflow.d.ts +2 -0
- package/lib/components/datepicker/positioning/modifiers/shift.d.ts +2 -0
- package/lib/components/datepicker/positioning/ng-positioning.d.ts +8 -0
- package/lib/components/datepicker/positioning/positioning.service.d.ts +48 -0
- package/lib/components/datepicker/positioning/public_api.d.ts +2 -0
- package/lib/components/datepicker/positioning/utils/computeAutoPlacement.d.ts +2 -0
- package/lib/components/datepicker/positioning/utils/findCommonOffsetParent.d.ts +1 -0
- package/lib/components/datepicker/positioning/utils/getBordersSize.d.ts +4 -0
- package/lib/components/datepicker/positioning/utils/getBoundaries.d.ts +1 -0
- package/lib/components/datepicker/positioning/utils/getBoundingClientRect.d.ts +2 -0
- package/lib/components/datepicker/positioning/utils/getClientRect.d.ts +5 -0
- package/lib/components/datepicker/positioning/utils/getFixedPositionOffsetParent.d.ts +4 -0
- package/lib/components/datepicker/positioning/utils/getOffsetParent.d.ts +1 -0
- package/lib/components/datepicker/positioning/utils/getOffsetRectRelativeToArbitraryNode.d.ts +2 -0
- package/lib/components/datepicker/positioning/utils/getOffsets.d.ts +2 -0
- package/lib/components/datepicker/positioning/utils/getOppositePlacement.d.ts +4 -0
- package/lib/components/datepicker/positioning/utils/getOppositeVariation.d.ts +4 -0
- package/lib/components/datepicker/positioning/utils/getOuterSizes.d.ts +7 -0
- package/lib/components/datepicker/positioning/utils/getParentNode.d.ts +4 -0
- package/lib/components/datepicker/positioning/utils/getReferenceOffsets.d.ts +2 -0
- package/lib/components/datepicker/positioning/utils/getRoot.d.ts +4 -0
- package/lib/components/datepicker/positioning/utils/getScroll.d.ts +4 -0
- package/lib/components/datepicker/positioning/utils/getScrollParent.d.ts +1 -0
- package/lib/components/datepicker/positioning/utils/getStyleComputedProperty.d.ts +4 -0
- package/lib/components/datepicker/positioning/utils/getTargetOffsets.d.ts +2 -0
- package/lib/components/datepicker/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.d.ts +2 -0
- package/lib/components/datepicker/positioning/utils/getWindowSizes.d.ts +4 -0
- package/lib/components/datepicker/positioning/utils/includeScroll.d.ts +2 -0
- package/lib/components/datepicker/positioning/utils/index.d.ts +23 -0
- package/lib/components/datepicker/positioning/utils/isBrowser.d.ts +1 -0
- package/lib/components/datepicker/positioning/utils/isFixed.d.ts +1 -0
- package/lib/components/datepicker/positioning/utils/isIE.d.ts +1 -0
- package/lib/components/datepicker/positioning/utils/isModifierEnabled.d.ts +4 -0
- package/lib/components/datepicker/positioning/utils/isNumeric.d.ts +4 -0
- package/lib/components/datepicker/positioning/utils/isOffsetContainer.d.ts +1 -0
- package/lib/components/datepicker/positioning/utils/setStyles.d.ts +5 -0
- package/lib/components/datepicker/positioning/utils/updateContainerClass.d.ts +6 -0
- package/lib/components/datepicker/public_api.d.ts +25 -0
- package/lib/components/datepicker/reducer/_defaults.d.ts +2 -0
- package/lib/components/datepicker/reducer/bs-datepicker.actions.d.ts +46 -0
- package/lib/components/datepicker/reducer/bs-datepicker.effects.d.ts +41 -0
- package/lib/components/datepicker/reducer/bs-datepicker.reducer.d.ts +3 -0
- package/lib/components/datepicker/reducer/bs-datepicker.state.d.ts +43 -0
- package/lib/components/datepicker/reducer/bs-datepicker.store.d.ts +8 -0
- package/lib/components/datepicker/themes/bs/bs-calendar-layout.component.d.ts +5 -0
- package/lib/components/datepicker/themes/bs/bs-current-date-view.component.d.ts +6 -0
- package/lib/components/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +17 -0
- package/lib/components/datepicker/themes/bs/bs-datepicker-container.component.d.ts +36 -0
- package/lib/components/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +14 -0
- package/lib/components/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts +13 -0
- package/lib/components/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts +12 -0
- package/lib/components/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +40 -0
- package/lib/components/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts +13 -0
- package/lib/components/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +26 -0
- package/lib/components/datepicker/themes/bs/bs-months-calendar-view.component.d.ts +16 -0
- package/lib/components/datepicker/themes/bs/bs-timepicker-view.component.d.ts +8 -0
- package/lib/components/datepicker/themes/bs/bs-years-calendar-view.component.d.ts +16 -0
- package/lib/components/datepicker/utils/bs-calendar-utils.d.ts +10 -0
- package/lib/components/datepicker/utils/matrix-utils.d.ts +9 -0
- package/lib/components/datepicker/utils-v2/decorators.d.ts +1 -0
- package/lib/components/datepicker/utils-v2/facade/browser.d.ts +23 -0
- package/lib/components/datepicker/utils-v2/index.d.ts +1 -0
- package/lib/components/datepicker/utils-v2/linked-list.class.d.ts +26 -0
- package/lib/components/datepicker/utils-v2/public_api.d.ts +10 -0
- package/lib/components/datepicker/utils-v2/theme-provider.d.ts +2 -0
- package/lib/components/datepicker/utils-v2/trigger.class.d.ts +6 -0
- package/lib/components/datepicker/utils-v2/triggers.d.ts +18 -0
- package/lib/components/datepicker/utils-v2/utils.class.d.ts +4 -0
- package/lib/components/datepicker/utils-v2/warn-once.d.ts +1 -0
- package/lib/components/datepicker/yearpicker.component.d.ts +14 -0
- package/lib/constants/release.constants.d.ts +1 -0
- package/lib/functions/utility.functions.d.ts +1 -0
- package/lib/models/configurations.model.d.ts +2 -0
- package/lib/services/mfe-communication.service.d.ts +1 -1
- package/package.json +9 -1
- package/public-api.d.ts +3 -0
- package/src/lib/components/datepicker/base/bs-datepicker-container.d.ts +44 -0
- package/src/lib/components/datepicker/bs-datepicker-inline.component.d.ts +64 -0
- package/src/lib/components/datepicker/bs-datepicker-inline.config.d.ts +6 -0
- package/src/lib/components/datepicker/bs-datepicker-input.directive.d.ts +33 -0
- package/src/lib/components/datepicker/bs-datepicker.component.d.ts +126 -0
- package/src/lib/components/datepicker/bs-datepicker.config.d.ts +143 -0
- package/src/lib/components/datepicker/bs-datepicker.module.d.ts +29 -0
- package/src/lib/components/datepicker/bs-daterangepicker-inline.component.d.ts +64 -0
- package/src/lib/components/datepicker/bs-daterangepicker-inline.config.d.ts +9 -0
- package/src/lib/components/datepicker/bs-daterangepicker-input.directive.d.ts +33 -0
- package/src/lib/components/datepicker/bs-daterangepicker.component.d.ts +118 -0
- package/src/lib/components/datepicker/bs-daterangepicker.config.d.ts +7 -0
- package/src/lib/components/datepicker/bs-locale.service.d.ts +13 -0
- package/src/lib/components/datepicker/chronos/create/check-overflow.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/create/clone.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/create/date-from-array.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/create/from-anything.d.ts +4 -0
- package/src/lib/components/datepicker/chronos/create/from-array.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/create/from-object.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/create/from-string-and-array.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/create/from-string-and-format.d.ts +4 -0
- package/src/lib/components/datepicker/chronos/create/from-string.d.ts +4 -0
- package/src/lib/components/datepicker/chronos/create/local.d.ts +3 -0
- package/src/lib/components/datepicker/chronos/create/parsing-flags.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/create/parsing.types.d.ts +64 -0
- package/src/lib/components/datepicker/chronos/create/valid.d.ts +6 -0
- package/src/lib/components/datepicker/chronos/duration/bubble.d.ts +4 -0
- package/src/lib/components/datepicker/chronos/duration/constructor.d.ts +21 -0
- package/src/lib/components/datepicker/chronos/duration/create.d.ts +8 -0
- package/src/lib/components/datepicker/chronos/duration/humanize.d.ts +5 -0
- package/src/lib/components/datepicker/chronos/duration/valid.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/format/format.d.ts +11 -0
- package/src/lib/components/datepicker/chronos/format.d.ts +5 -0
- package/src/lib/components/datepicker/chronos/i18n/ar.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/bg.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/ca.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/cs.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/da.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/de.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/en-gb.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/es-do.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/es-us.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/es.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/et.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/fi.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/fr.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/gl.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/he.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/hi.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/hr.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/hu.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/id.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/it.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/ja.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/ka.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/kk.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/ko.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/lt.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/lv.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/mn.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/nb.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/nl-be.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/nl.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/pl.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/pt-br.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/ro.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/ru.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/sk.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/sl.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/sq.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/sv.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/th-be.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/th.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/tr.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/uk.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/vi.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/i18n/zh-cn.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/index.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/locale/calendar.d.ts +8 -0
- package/src/lib/components/datepicker/chronos/locale/locale.class.d.ts +143 -0
- package/src/lib/components/datepicker/chronos/locale/locale.defaults.d.ts +11 -0
- package/src/lib/components/datepicker/chronos/locale/locales.d.ts +7 -0
- package/src/lib/components/datepicker/chronos/moment/add-subtract.d.ts +5 -0
- package/src/lib/components/datepicker/chronos/moment/calendar.d.ts +15 -0
- package/src/lib/components/datepicker/chronos/moment/diff.d.ts +3 -0
- package/src/lib/components/datepicker/chronos/moment/min-max.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/parse/regex.d.ts +22 -0
- package/src/lib/components/datepicker/chronos/parse/token.d.ts +5 -0
- package/src/lib/components/datepicker/chronos/public_api.d.ts +57 -0
- package/src/lib/components/datepicker/chronos/test/chain.d.ts +214 -0
- package/src/lib/components/datepicker/chronos/types.d.ts +36 -0
- package/src/lib/components/datepicker/chronos/units/aliases.d.ts +7 -0
- package/src/lib/components/datepicker/chronos/units/constants.d.ts +9 -0
- package/src/lib/components/datepicker/chronos/units/day-of-month.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/units/day-of-week.d.ts +20 -0
- package/src/lib/components/datepicker/chronos/units/day-of-year.d.ts +3 -0
- package/src/lib/components/datepicker/chronos/units/hour.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/units/index.d.ts +18 -0
- package/src/lib/components/datepicker/chronos/units/millisecond.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/units/minute.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/units/month.d.ts +2 -0
- package/src/lib/components/datepicker/chronos/units/offset.d.ts +10 -0
- package/src/lib/components/datepicker/chronos/units/priorities.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/units/quarter.d.ts +3 -0
- package/src/lib/components/datepicker/chronos/units/second.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/units/timestamp.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/units/timezone.d.ts +3 -0
- package/src/lib/components/datepicker/chronos/units/week-calendar-utils.d.ts +9 -0
- package/src/lib/components/datepicker/chronos/units/week-year.d.ts +8 -0
- package/src/lib/components/datepicker/chronos/units/week.d.ts +6 -0
- package/src/lib/components/datepicker/chronos/units/year.d.ts +4 -0
- package/src/lib/components/datepicker/chronos/utils/abs-ceil.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/utils/abs-round.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/utils/compare-arrays.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/utils/date-compare.d.ts +9 -0
- package/src/lib/components/datepicker/chronos/utils/date-getters.d.ts +18 -0
- package/src/lib/components/datepicker/chronos/utils/date-setters.d.ts +12 -0
- package/src/lib/components/datepicker/chronos/utils/defaults.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/utils/start-end-of.d.ts +3 -0
- package/src/lib/components/datepicker/chronos/utils/type-checks.d.ts +12 -0
- package/src/lib/components/datepicker/chronos/utils/zero-fill.d.ts +1 -0
- package/src/lib/components/datepicker/chronos/utils.d.ts +2 -0
- package/src/lib/components/datepicker/component-loader/bs-component-ref.class.d.ts +5 -0
- package/src/lib/components/datepicker/component-loader/component-loader.class.d.ts +75 -0
- package/src/lib/components/datepicker/component-loader/component-loader.factory.d.ts +21 -0
- package/src/lib/components/datepicker/component-loader/content-ref.class.d.ts +7 -0
- package/src/lib/components/datepicker/component-loader/index.d.ts +1 -0
- package/src/lib/components/datepicker/component-loader/listen-options.model.d.ts +11 -0
- package/src/lib/components/datepicker/component-loader/public_api.d.ts +4 -0
- package/src/lib/components/datepicker/date-formatter.d.ts +3 -0
- package/src/lib/components/datepicker/datepicker-animations.d.ts +3 -0
- package/src/lib/components/datepicker/datepicker-inner.component.d.ts +78 -0
- package/src/lib/components/datepicker/datepicker.component.d.ts +81 -0
- package/src/lib/components/datepicker/datepicker.config.d.ts +22 -0
- package/src/lib/components/datepicker/datepicker.module.d.ts +15 -0
- package/src/lib/components/datepicker/daypicker.component.d.ts +17 -0
- package/src/lib/components/datepicker/engine/calc-days-calendar.d.ts +2 -0
- package/src/lib/components/datepicker/engine/flag-days-calendar.d.ts +17 -0
- package/src/lib/components/datepicker/engine/flag-months-calendar.d.ts +12 -0
- package/src/lib/components/datepicker/engine/flag-years-calendar.d.ts +12 -0
- package/src/lib/components/datepicker/engine/format-days-calendar.d.ts +4 -0
- package/src/lib/components/datepicker/engine/format-months-calendar.d.ts +2 -0
- package/src/lib/components/datepicker/engine/format-years-calendar.d.ts +4 -0
- package/src/lib/components/datepicker/engine/view-mode.d.ts +2 -0
- package/src/lib/components/datepicker/index.d.ts +1 -0
- package/src/lib/components/datepicker/mini-ngrx/index.d.ts +1 -0
- package/src/lib/components/datepicker/mini-ngrx/public_api.d.ts +7 -0
- package/src/lib/components/datepicker/mini-ngrx/state.class.d.ts +8 -0
- package/src/lib/components/datepicker/mini-ngrx/store.class.d.ts +16 -0
- package/src/lib/components/datepicker/models/index.d.ts +102 -0
- package/src/lib/components/datepicker/monthpicker.component.d.ts +14 -0
- package/src/lib/components/datepicker/positioning/index.d.ts +1 -0
- package/src/lib/components/datepicker/positioning/models/index.d.ts +41 -0
- package/src/lib/components/datepicker/positioning/modifiers/arrow.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/modifiers/flip.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/modifiers/index.d.ts +5 -0
- package/src/lib/components/datepicker/positioning/modifiers/initData.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/modifiers/preventOverflow.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/modifiers/shift.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/ng-positioning.d.ts +8 -0
- package/src/lib/components/datepicker/positioning/positioning.service.d.ts +48 -0
- package/src/lib/components/datepicker/positioning/public_api.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/utils/computeAutoPlacement.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/utils/findCommonOffsetParent.d.ts +1 -0
- package/src/lib/components/datepicker/positioning/utils/getBordersSize.d.ts +4 -0
- package/src/lib/components/datepicker/positioning/utils/getBoundaries.d.ts +1 -0
- package/src/lib/components/datepicker/positioning/utils/getBoundingClientRect.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/utils/getClientRect.d.ts +5 -0
- package/src/lib/components/datepicker/positioning/utils/getFixedPositionOffsetParent.d.ts +4 -0
- package/src/lib/components/datepicker/positioning/utils/getOffsetParent.d.ts +1 -0
- package/src/lib/components/datepicker/positioning/utils/getOffsetRectRelativeToArbitraryNode.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/utils/getOffsets.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/utils/getOppositePlacement.d.ts +4 -0
- package/src/lib/components/datepicker/positioning/utils/getOppositeVariation.d.ts +4 -0
- package/src/lib/components/datepicker/positioning/utils/getOuterSizes.d.ts +7 -0
- package/src/lib/components/datepicker/positioning/utils/getParentNode.d.ts +4 -0
- package/src/lib/components/datepicker/positioning/utils/getReferenceOffsets.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/utils/getRoot.d.ts +4 -0
- package/src/lib/components/datepicker/positioning/utils/getScroll.d.ts +4 -0
- package/src/lib/components/datepicker/positioning/utils/getScrollParent.d.ts +1 -0
- package/src/lib/components/datepicker/positioning/utils/getStyleComputedProperty.d.ts +4 -0
- package/src/lib/components/datepicker/positioning/utils/getTargetOffsets.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/utils/getWindowSizes.d.ts +4 -0
- package/src/lib/components/datepicker/positioning/utils/includeScroll.d.ts +2 -0
- package/src/lib/components/datepicker/positioning/utils/index.d.ts +23 -0
- package/src/lib/components/datepicker/positioning/utils/isBrowser.d.ts +1 -0
- package/src/lib/components/datepicker/positioning/utils/isFixed.d.ts +1 -0
- package/src/lib/components/datepicker/positioning/utils/isIE.d.ts +1 -0
- package/src/lib/components/datepicker/positioning/utils/isModifierEnabled.d.ts +4 -0
- package/src/lib/components/datepicker/positioning/utils/isNumeric.d.ts +4 -0
- package/src/lib/components/datepicker/positioning/utils/isOffsetContainer.d.ts +1 -0
- package/src/lib/components/datepicker/positioning/utils/setStyles.d.ts +5 -0
- package/src/lib/components/datepicker/positioning/utils/updateContainerClass.d.ts +6 -0
- package/src/lib/components/datepicker/public_api.d.ts +25 -0
- package/src/lib/components/datepicker/reducer/_defaults.d.ts +2 -0
- package/src/lib/components/datepicker/reducer/bs-datepicker.actions.d.ts +46 -0
- package/src/lib/components/datepicker/reducer/bs-datepicker.effects.d.ts +41 -0
- package/src/lib/components/datepicker/reducer/bs-datepicker.reducer.d.ts +3 -0
- package/src/lib/components/datepicker/reducer/bs-datepicker.state.d.ts +43 -0
- package/src/lib/components/datepicker/reducer/bs-datepicker.store.d.ts +8 -0
- package/src/lib/components/datepicker/themes/bs/bs-calendar-layout.component.d.ts +5 -0
- package/src/lib/components/datepicker/themes/bs/bs-current-date-view.component.d.ts +6 -0
- package/src/lib/components/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +17 -0
- package/src/lib/components/datepicker/themes/bs/bs-datepicker-container.component.d.ts +36 -0
- package/src/lib/components/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +14 -0
- package/src/lib/components/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts +13 -0
- package/src/lib/components/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts +12 -0
- package/src/lib/components/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +40 -0
- package/src/lib/components/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts +13 -0
- package/src/lib/components/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +26 -0
- package/src/lib/components/datepicker/themes/bs/bs-months-calendar-view.component.d.ts +16 -0
- package/src/lib/components/datepicker/themes/bs/bs-timepicker-view.component.d.ts +8 -0
- package/src/lib/components/datepicker/themes/bs/bs-years-calendar-view.component.d.ts +16 -0
- package/src/lib/components/datepicker/utils/bs-calendar-utils.d.ts +10 -0
- package/src/lib/components/datepicker/utils/matrix-utils.d.ts +9 -0
- package/src/lib/components/datepicker/utils-v2/decorators.d.ts +1 -0
- package/src/lib/components/datepicker/utils-v2/facade/browser.d.ts +23 -0
- package/src/lib/components/datepicker/utils-v2/index.d.ts +1 -0
- package/src/lib/components/datepicker/utils-v2/linked-list.class.d.ts +26 -0
- package/src/lib/components/datepicker/utils-v2/public_api.d.ts +10 -0
- package/src/lib/components/datepicker/utils-v2/theme-provider.d.ts +2 -0
- package/src/lib/components/datepicker/utils-v2/trigger.class.d.ts +6 -0
- package/src/lib/components/datepicker/utils-v2/triggers.d.ts +18 -0
- package/src/lib/components/datepicker/utils-v2/utils.class.d.ts +4 -0
- package/src/lib/components/datepicker/utils-v2/warn-once.d.ts +1 -0
- package/src/lib/components/datepicker/yearpicker.component.d.ts +14 -0
- package/styles.scss +0 -3
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export function shift(data) {
|
|
2
|
+
const placement = data.placement;
|
|
3
|
+
const basePlacement = placement.split(' ')[0];
|
|
4
|
+
const shiftVariation = placement.split(' ')[1];
|
|
5
|
+
if (shiftVariation) {
|
|
6
|
+
const { host, target } = data.offsets;
|
|
7
|
+
const isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;
|
|
8
|
+
const side = isVertical ? 'left' : 'top';
|
|
9
|
+
const measurement = isVertical ? 'width' : 'height';
|
|
10
|
+
const shiftOffsets = {
|
|
11
|
+
start: { [side]: host[side] },
|
|
12
|
+
end: {
|
|
13
|
+
[side]: host[side] + host[measurement] - target[measurement]
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
data.offsets.target = {
|
|
17
|
+
...target, ...{
|
|
18
|
+
[side]: (side === shiftVariation ? shiftOffsets.start[side] : shiftOffsets.end[side])
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
return data;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hpZnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvd2lzLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvZGF0ZXBpY2tlci9wb3NpdGlvbmluZy9tb2RpZmllcnMvc2hpZnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLEtBQUssQ0FBQyxJQUFVO0lBQzlCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDakMsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5QyxNQUFNLGNBQWMsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRS9DLElBQUksY0FBYyxFQUFFO1FBQ2xCLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUN0QyxNQUFNLFVBQVUsR0FBRyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDbkUsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUN6QyxNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1FBRXBELE1BQU0sWUFBWSxHQUFHO1lBQ25CLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdCLEdBQUcsRUFBRTtnQkFDSCxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQzthQUM3RDtTQUNGLENBQUM7UUFFRixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRztZQUNwQixHQUFHLE1BQU0sRUFBRSxHQUFHO2dCQUNaLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssY0FBYyxDQUFDLENBQUMsQ0FBRSxZQUFvQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUUsWUFBb0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDeEc7U0FDRixDQUFDO0tBQ0g7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNoaWZ0KGRhdGE6IERhdGEpOiBEYXRhIHtcbiAgY29uc3QgcGxhY2VtZW50ID0gZGF0YS5wbGFjZW1lbnQ7XG4gIGNvbnN0IGJhc2VQbGFjZW1lbnQgPSBwbGFjZW1lbnQuc3BsaXQoJyAnKVswXTtcbiAgY29uc3Qgc2hpZnRWYXJpYXRpb24gPSBwbGFjZW1lbnQuc3BsaXQoJyAnKVsxXTtcblxuICBpZiAoc2hpZnRWYXJpYXRpb24pIHtcbiAgICBjb25zdCB7IGhvc3QsIHRhcmdldCB9ID0gZGF0YS5vZmZzZXRzO1xuICAgIGNvbnN0IGlzVmVydGljYWwgPSBbJ2JvdHRvbScsICd0b3AnXS5pbmRleE9mKGJhc2VQbGFjZW1lbnQpICE9PSAtMTtcbiAgICBjb25zdCBzaWRlID0gaXNWZXJ0aWNhbCA/ICdsZWZ0JyA6ICd0b3AnO1xuICAgIGNvbnN0IG1lYXN1cmVtZW50ID0gaXNWZXJ0aWNhbCA/ICd3aWR0aCcgOiAnaGVpZ2h0JztcblxuICAgIGNvbnN0IHNoaWZ0T2Zmc2V0cyA9IHtcbiAgICAgIHN0YXJ0OiB7IFtzaWRlXTogaG9zdFtzaWRlXSB9LFxuICAgICAgZW5kOiB7XG4gICAgICAgIFtzaWRlXTogaG9zdFtzaWRlXSArIGhvc3RbbWVhc3VyZW1lbnRdIC0gdGFyZ2V0W21lYXN1cmVtZW50XVxuICAgICAgfVxuICAgIH07XG5cbiAgICBkYXRhLm9mZnNldHMudGFyZ2V0ID0ge1xuICAgICAgLi4udGFyZ2V0LCAuLi57XG4gICAgICAgIFtzaWRlXTogKHNpZGUgPT09IHNoaWZ0VmFyaWF0aW9uID8gKHNoaWZ0T2Zmc2V0cyBhcyBhbnkpLnN0YXJ0W3NpZGVdIDogKHNoaWZ0T2Zmc2V0cyBhcyBhbnkpLmVuZFtzaWRlXSlcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIGRhdGE7XG59XG4iXX0=
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { getOffsets, getReferenceOffsets, updateContainerClass, setStyles } from './utils';
|
|
2
|
+
import { arrow, flip, preventOverflow, shift, initData } from './modifiers';
|
|
3
|
+
export class Positioning {
|
|
4
|
+
position(hostElement, targetElement, round = true) {
|
|
5
|
+
return this.offset(hostElement, targetElement, false);
|
|
6
|
+
}
|
|
7
|
+
offset(hostElement, targetElement, round = true) {
|
|
8
|
+
return getReferenceOffsets(targetElement, hostElement);
|
|
9
|
+
}
|
|
10
|
+
positionElements(hostElement, targetElement, position, appendToBody, options) {
|
|
11
|
+
const chainOfModifiers = [flip, shift, preventOverflow, arrow];
|
|
12
|
+
return chainOfModifiers.reduce((modifiedData, modifier) => modifier(modifiedData), initData(targetElement, hostElement, position, options));
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
const positionService = new Positioning();
|
|
16
|
+
export function positionElements(hostElement, targetElement, placement, appendToBody, options, renderer) {
|
|
17
|
+
const data = positionService.positionElements(hostElement, targetElement, placement, appendToBody, options);
|
|
18
|
+
const offsets = getOffsets(data);
|
|
19
|
+
setStyles(targetElement, {
|
|
20
|
+
'will-change': 'transform',
|
|
21
|
+
top: '0px',
|
|
22
|
+
left: '0px',
|
|
23
|
+
transform: `translate3d(${offsets.left}px, ${offsets.top}px, 0px)`
|
|
24
|
+
}, renderer);
|
|
25
|
+
if (data.instance.arrow) {
|
|
26
|
+
setStyles(data.instance.arrow, data.offsets.arrow, renderer);
|
|
27
|
+
}
|
|
28
|
+
updateContainerClass(data, renderer);
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctcG9zaXRpb25pbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvd2lzLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvZGF0ZXBpY2tlci9wb3NpdGlvbmluZy9uZy1wb3NpdGlvbmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsVUFBVSxFQUFFLG1CQUFtQixFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUUzRixPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUk1RSxNQUFNLE9BQU8sV0FBVztJQUN0QixRQUFRLENBQUMsV0FBd0IsRUFBRSxhQUEwQixFQUFFLEtBQUssR0FBRyxJQUFJO1FBQ3pFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxNQUFNLENBQUMsV0FBd0IsRUFBRSxhQUEwQixFQUFFLEtBQUssR0FBRyxJQUFJO1FBQ3ZFLE9BQU8sbUJBQW1CLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxnQkFBZ0IsQ0FDZCxXQUF3QixFQUN4QixhQUEwQixFQUMxQixRQUFnQixFQUNoQixZQUFzQixFQUN0QixPQUFpQjtRQUVqQixNQUFNLGdCQUFnQixHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFL0QsT0FBTyxnQkFBZ0IsQ0FBQyxNQUFNLENBQzVCLENBQUMsWUFBWSxFQUFFLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxFQUNsRCxRQUFRLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQ3hELENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFFRCxNQUFNLGVBQWUsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO0FBRTFDLE1BQU0sVUFBVSxnQkFBZ0IsQ0FDOUIsV0FBd0IsRUFDeEIsYUFBMEIsRUFDMUIsU0FBaUIsRUFDakIsWUFBc0IsRUFDdEIsT0FBaUIsRUFDakIsUUFBb0I7SUFHcEIsTUFBTSxJQUFJLEdBQUcsZUFBZSxDQUFDLGdCQUFnQixDQUMzQyxXQUFXLEVBQ1gsYUFBYSxFQUNiLFNBQVMsRUFDVCxZQUFZLEVBQ1osT0FBTyxDQUNSLENBQUM7SUFFRixNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFakMsU0FBUyxDQUFDLGFBQWEsRUFBRTtRQUN2QixhQUFhLEVBQUUsV0FBVztRQUMxQixHQUFHLEVBQUUsS0FBSztRQUNWLElBQUksRUFBRSxLQUFLO1FBQ1gsU0FBUyxFQUFFLGVBQWUsT0FBTyxDQUFDLElBQUksT0FBTyxPQUFPLENBQUMsR0FBRyxVQUFVO0tBQ25FLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFFYixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFO1FBQ3ZCLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztLQUM5RDtJQUVELG9CQUFvQixDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztBQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGdldE9mZnNldHMsIGdldFJlZmVyZW5jZU9mZnNldHMsIHVwZGF0ZUNvbnRhaW5lckNsYXNzLCBzZXRTdHlsZXMgfSBmcm9tICcuL3V0aWxzJztcblxuaW1wb3J0IHsgYXJyb3csIGZsaXAsIHByZXZlbnRPdmVyZmxvdywgc2hpZnQsIGluaXREYXRhIH0gZnJvbSAnLi9tb2RpZmllcnMnO1xuaW1wb3J0IHsgRGF0YSwgT2Zmc2V0cywgT3B0aW9ucyB9IGZyb20gJy4vbW9kZWxzJztcblxuXG5leHBvcnQgY2xhc3MgUG9zaXRpb25pbmcge1xuICBwb3NpdGlvbihob3N0RWxlbWVudDogSFRNTEVsZW1lbnQsIHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50LCByb3VuZCA9IHRydWUpOiBPZmZzZXRzIHtcbiAgICByZXR1cm4gdGhpcy5vZmZzZXQoaG9zdEVsZW1lbnQsIHRhcmdldEVsZW1lbnQsIGZhbHNlKTtcbiAgfVxuXG4gIG9mZnNldChob3N0RWxlbWVudDogSFRNTEVsZW1lbnQsIHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50LCByb3VuZCA9IHRydWUpOiBPZmZzZXRzIHtcbiAgICByZXR1cm4gZ2V0UmVmZXJlbmNlT2Zmc2V0cyh0YXJnZXRFbGVtZW50LCBob3N0RWxlbWVudCk7XG4gIH1cblxuICBwb3NpdGlvbkVsZW1lbnRzKFxuICAgIGhvc3RFbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgICB0YXJnZXRFbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgICBwb3NpdGlvbjogc3RyaW5nLFxuICAgIGFwcGVuZFRvQm9keT86IGJvb2xlYW4sXG4gICAgb3B0aW9ucz86IE9wdGlvbnNcbiAgKTogRGF0YSB7XG4gICAgY29uc3QgY2hhaW5PZk1vZGlmaWVycyA9IFtmbGlwLCBzaGlmdCwgcHJldmVudE92ZXJmbG93LCBhcnJvd107XG5cbiAgICByZXR1cm4gY2hhaW5PZk1vZGlmaWVycy5yZWR1Y2UoXG4gICAgICAobW9kaWZpZWREYXRhLCBtb2RpZmllcikgPT4gbW9kaWZpZXIobW9kaWZpZWREYXRhKSxcbiAgICAgIGluaXREYXRhKHRhcmdldEVsZW1lbnQsIGhvc3RFbGVtZW50LCBwb3NpdGlvbiwgb3B0aW9ucylcbiAgICApO1xuICB9XG59XG5cbmNvbnN0IHBvc2l0aW9uU2VydmljZSA9IG5ldyBQb3NpdGlvbmluZygpO1xuXG5leHBvcnQgZnVuY3Rpb24gcG9zaXRpb25FbGVtZW50cyhcbiAgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICB0YXJnZXRFbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgcGxhY2VtZW50OiBzdHJpbmcsXG4gIGFwcGVuZFRvQm9keT86IGJvb2xlYW4sXG4gIG9wdGlvbnM/OiBPcHRpb25zLFxuICByZW5kZXJlcj86IFJlbmRlcmVyMlxuKTogdm9pZCB7XG5cbiAgY29uc3QgZGF0YSA9IHBvc2l0aW9uU2VydmljZS5wb3NpdGlvbkVsZW1lbnRzKFxuICAgIGhvc3RFbGVtZW50LFxuICAgIHRhcmdldEVsZW1lbnQsXG4gICAgcGxhY2VtZW50LFxuICAgIGFwcGVuZFRvQm9keSxcbiAgICBvcHRpb25zXG4gICk7XG5cbiAgY29uc3Qgb2Zmc2V0cyA9IGdldE9mZnNldHMoZGF0YSk7XG5cbiAgc2V0U3R5bGVzKHRhcmdldEVsZW1lbnQsIHtcbiAgICAnd2lsbC1jaGFuZ2UnOiAndHJhbnNmb3JtJyxcbiAgICB0b3A6ICcwcHgnLFxuICAgIGxlZnQ6ICcwcHgnLFxuICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZTNkKCR7b2Zmc2V0cy5sZWZ0fXB4LCAke29mZnNldHMudG9wfXB4LCAwcHgpYFxuICB9LCByZW5kZXJlcik7XG5cbiAgaWYgKGRhdGEuaW5zdGFuY2UuYXJyb3cpIHtcbiAgICBzZXRTdHlsZXMoZGF0YS5pbnN0YW5jZS5hcnJvdywgZGF0YS5vZmZzZXRzLmFycm93LCByZW5kZXJlcik7XG4gIH1cblxuICB1cGRhdGVDb250YWluZXJDbGFzcyhkYXRhLCByZW5kZXJlcik7XG59XG4iXX0=
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { Injectable, ElementRef, RendererFactory2, Inject, PLATFORM_ID, NgZone } from '@angular/core';
|
|
2
|
+
import { isPlatformBrowser } from '@angular/common';
|
|
3
|
+
import { positionElements } from './ng-positioning';
|
|
4
|
+
import { fromEvent, merge, of, animationFrameScheduler, Subject } from 'rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class PositioningService {
|
|
7
|
+
constructor(ngZone, rendererFactory, platformId) {
|
|
8
|
+
this.update$$ = new Subject();
|
|
9
|
+
this.positionElements = new Map();
|
|
10
|
+
this.isDisabled = false;
|
|
11
|
+
if (isPlatformBrowser(platformId)) {
|
|
12
|
+
ngZone.runOutsideAngular(() => {
|
|
13
|
+
this.triggerEvent$ = merge(fromEvent(window, 'scroll', { passive: true }), fromEvent(window, 'resize', { passive: true }),
|
|
14
|
+
/* tslint:disable-next-line: deprecation */
|
|
15
|
+
of(0, animationFrameScheduler), this.update$$);
|
|
16
|
+
this.triggerEvent$.subscribe(() => {
|
|
17
|
+
if (this.isDisabled) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
this.positionElements
|
|
21
|
+
/* tslint:disable-next-line: no-any */
|
|
22
|
+
.forEach((positionElement) => {
|
|
23
|
+
positionElements(_getHtmlElement(positionElement.target), _getHtmlElement(positionElement.element), positionElement.attachment, positionElement.appendToBody, this.options, rendererFactory.createRenderer(null, null));
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
position(options) {
|
|
30
|
+
this.addPositionElement(options);
|
|
31
|
+
}
|
|
32
|
+
get event$() {
|
|
33
|
+
return this.triggerEvent$;
|
|
34
|
+
}
|
|
35
|
+
disable() {
|
|
36
|
+
this.isDisabled = true;
|
|
37
|
+
}
|
|
38
|
+
enable() {
|
|
39
|
+
this.isDisabled = false;
|
|
40
|
+
}
|
|
41
|
+
addPositionElement(options) {
|
|
42
|
+
this.positionElements.set(_getHtmlElement(options.element), options);
|
|
43
|
+
}
|
|
44
|
+
calcPosition() {
|
|
45
|
+
this.update$$.next(null);
|
|
46
|
+
}
|
|
47
|
+
deletePositionElement(elRef) {
|
|
48
|
+
this.positionElements.delete(_getHtmlElement(elRef));
|
|
49
|
+
}
|
|
50
|
+
setOptions(options) {
|
|
51
|
+
this.options = options;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
PositioningService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PositioningService, deps: [{ token: i0.NgZone }, { token: i0.RendererFactory2 }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
55
|
+
PositioningService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PositioningService, providedIn: 'root' });
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PositioningService, decorators: [{
|
|
57
|
+
type: Injectable,
|
|
58
|
+
args: [{
|
|
59
|
+
providedIn: 'root'
|
|
60
|
+
}]
|
|
61
|
+
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.RendererFactory2 }, { type: undefined, decorators: [{
|
|
62
|
+
type: Inject,
|
|
63
|
+
args: [PLATFORM_ID]
|
|
64
|
+
}] }]; } });
|
|
65
|
+
function _getHtmlElement(element) {
|
|
66
|
+
// it means that we got a selector
|
|
67
|
+
if (typeof element === 'string') {
|
|
68
|
+
return document.querySelector(element);
|
|
69
|
+
}
|
|
70
|
+
if (element instanceof ElementRef) {
|
|
71
|
+
return element.nativeElement;
|
|
72
|
+
}
|
|
73
|
+
return element;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zaXRpb25pbmcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy93aXMtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9kYXRlcGlja2VyL3Bvc2l0aW9uaW5nL3Bvc2l0aW9uaW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLHVCQUF1QixFQUFFLE9BQU8sRUFBYyxNQUFNLE1BQU0sQ0FBQzs7QUF5QzFGLE1BQU0sT0FBTyxrQkFBa0I7SUFPN0IsWUFDRSxNQUFjLEVBQ2QsZUFBaUMsRUFDWixVQUFrQjtRQVJqQyxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUMvQixxQkFBZ0IsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBRTdCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFRekIsSUFBSSxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUNqQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO2dCQUM1QixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FDeEIsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFDOUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7Z0JBQzlDLDJDQUEyQztnQkFDM0MsRUFBRSxDQUFDLENBQUMsRUFBRSx1QkFBdUIsQ0FBQyxFQUM5QixJQUFJLENBQUMsUUFBUSxDQUNkLENBQUM7Z0JBRUYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNoQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7d0JBQ25CLE9BQU87cUJBQ1I7b0JBRUQsSUFBSSxDQUFDLGdCQUFnQjt3QkFDckIsc0NBQXNDO3lCQUNuQyxPQUFPLENBQUMsQ0FBQyxlQUFvQixFQUFFLEVBQUU7d0JBQ2hDLGdCQUFnQixDQUNkLGVBQWUsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLEVBQ3ZDLGVBQWUsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEVBQ3hDLGVBQWUsQ0FBQyxVQUFVLEVBQzFCLGVBQWUsQ0FBQyxZQUFZLEVBQzVCLElBQUksQ0FBQyxPQUFPLEVBQ1osZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQzNDLENBQUM7b0JBQ0osQ0FBQyxDQUFDLENBQUM7Z0JBQ1AsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxPQUEyQjtRQUNsQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDMUIsQ0FBQztJQUVELGtCQUFrQixDQUFDLE9BQTJCO1FBQzVDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxLQUFpQjtRQUNyQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxVQUFVLENBQUMsT0FBZ0I7UUFDekIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQzs7K0dBM0VVLGtCQUFrQix3RUFVbkIsV0FBVzttSEFWVixrQkFBa0IsY0FGakIsTUFBTTsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFXSSxNQUFNOzJCQUFDLFdBQVc7O0FBb0V2QixTQUFTLGVBQWUsQ0FBQyxPQUEwQztJQUNqRSxrQ0FBa0M7SUFDbEMsSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRLEVBQUU7UUFDL0IsT0FBTyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQ3hDO0lBRUQsSUFBSSxPQUFPLFlBQVksVUFBVSxFQUFFO1FBQ2pDLE9BQU8sT0FBTyxDQUFDLGFBQWEsQ0FBQztLQUM5QjtJQUVELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBFbGVtZW50UmVmLCBSZW5kZXJlckZhY3RvcnkyLCBJbmplY3QsIFBMQVRGT1JNX0lELCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgcG9zaXRpb25FbGVtZW50cyB9IGZyb20gJy4vbmctcG9zaXRpb25pbmcnO1xuXG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlLCBvZiwgYW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIsIFN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE9wdGlvbnMgfSBmcm9tICcuL21vZGVscyc7XG5cblxuZXhwb3J0IGludGVyZmFjZSBQb3NpdGlvbmluZ09wdGlvbnMge1xuICAvKiogVGhlIERPTSBlbGVtZW50LCBFbGVtZW50UmVmLCBvciBhIHNlbGVjdG9yIHN0cmluZyBvZiBhbiBlbGVtZW50IHdoaWNoIHdpbGwgYmUgbW92ZWQgKi9cbiAgZWxlbWVudD86IEhUTUxFbGVtZW50IHwgRWxlbWVudFJlZiB8IHN0cmluZztcblxuICAvKiogVGhlIERPTSBlbGVtZW50LCBFbGVtZW50UmVmLCBvciBhIHNlbGVjdG9yIHN0cmluZyBvZiBhbiBlbGVtZW50IHdoaWNoIHRoZSBlbGVtZW50IHdpbGwgYmUgYXR0YWNoZWQgdG8gICovXG4gIHRhcmdldD86IEhUTUxFbGVtZW50IHwgRWxlbWVudFJlZiB8IHN0cmluZztcblxuICAvKipcbiAgICogQSBzdHJpbmcgb2YgdGhlIGZvcm0gJ3ZlcnQtYXR0YWNobWVudCBob3Jpei1hdHRhY2htZW50JyBvciAncGxhY2VtZW50J1xuICAgKiAtIHBsYWNlbWVudCBjYW4gYmUgXCJ0b3BcIiwgXCJib3R0b21cIiwgXCJsZWZ0XCIsIFwicmlnaHRcIlxuICAgKiBub3QgeWV0IHN1cHBvcnRlZDpcbiAgICogLSB2ZXJ0LWF0dGFjaG1lbnQgY2FuIGJlIGFueSBvZiAndG9wJywgJ21pZGRsZScsICdib3R0b20nXG4gICAqIC0gaG9yaXotYXR0YWNobWVudCBjYW4gYmUgYW55IG9mICdsZWZ0JywgJ2NlbnRlcicsICdyaWdodCdcbiAgICovXG4gIGF0dGFjaG1lbnQ/OiBzdHJpbmc7XG5cbiAgLyoqIEEgc3RyaW5nIHNpbWlsYXIgdG8gYGF0dGFjaG1lbnRgLiBUaGUgb25lIGRpZmZlcmVuY2UgaXMgdGhhdCwgaWYgaXQncyBub3QgcHJvdmlkZWQsXG4gICAqIGB0YXJnZXRBdHRhY2htZW50YCB3aWxsIGFzc3VtZSB0aGUgbWlycm9yIGltYWdlIG9mIGBhdHRhY2htZW50YC5cbiAgICovXG4gIHRhcmdldEF0dGFjaG1lbnQ/OiBzdHJpbmc7XG5cbiAgLyoqIEEgc3RyaW5nIG9mIHRoZSBmb3JtICd2ZXJ0LW9mZnNldCBob3Jpei1vZmZzZXQnXG4gICAqIC0gdmVydC1vZmZzZXQgYW5kIGhvcml6LW9mZnNldCBjYW4gYmUgb2YgdGhlIGZvcm0gXCIyMHB4XCIgb3IgXCI1NSVcIlxuICAgKi9cbiAgb2Zmc2V0Pzogc3RyaW5nO1xuXG4gIC8qKiBBIHN0cmluZyBzaW1pbGFyIHRvIGBvZmZzZXRgLCBidXQgcmVmZXJyaW5nIHRvIHRoZSBvZmZzZXQgb2YgdGhlIHRhcmdldCAqL1xuICB0YXJnZXRPZmZzZXQ/OiBzdHJpbmc7XG5cbiAgLyoqIElmIHRydWUgY29tcG9uZW50IHdpbGwgYmUgYXR0YWNoZWQgdG8gYm9keSAqL1xuICBhcHBlbmRUb0JvZHk/OiBib29sZWFuO1xufVxuXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFBvc2l0aW9uaW5nU2VydmljZSB7XG4gIHByaXZhdGUgb3B0aW9uczogT3B0aW9ucztcbiAgcHJpdmF0ZSB1cGRhdGUkJCA9IG5ldyBTdWJqZWN0PG51bGw+KCk7XG4gIHByaXZhdGUgcG9zaXRpb25FbGVtZW50cyA9IG5ldyBNYXAoKTtcbiAgcHJpdmF0ZSB0cmlnZ2VyRXZlbnQkOiBPYnNlcnZhYmxlPG51bWJlcnxFdmVudD47XG4gIHByaXZhdGUgaXNEaXNhYmxlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG5nWm9uZTogTmdab25lLFxuICAgIHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5MixcbiAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwbGF0Zm9ybUlkOiBudW1iZXJcbiAgKSB7XG5cbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIocGxhdGZvcm1JZCkpIHtcbiAgICAgIG5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgIHRoaXMudHJpZ2dlckV2ZW50JCA9IG1lcmdlKFxuICAgICAgICAgIGZyb21FdmVudCh3aW5kb3csICdzY3JvbGwnLCB7IHBhc3NpdmU6IHRydWUgfSksXG4gICAgICAgICAgZnJvbUV2ZW50KHdpbmRvdywgJ3Jlc2l6ZScsIHsgcGFzc2l2ZTogdHJ1ZSB9KSxcbiAgICAgICAgICAvKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IGRlcHJlY2F0aW9uICovXG4gICAgICAgICAgb2YoMCwgYW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIpLFxuICAgICAgICAgIHRoaXMudXBkYXRlJCRcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLnRyaWdnZXJFdmVudCQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5pc0Rpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5wb3NpdGlvbkVsZW1lbnRzXG4gICAgICAgICAgLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1hbnkgKi9cbiAgICAgICAgICAgIC5mb3JFYWNoKChwb3NpdGlvbkVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgICBwb3NpdGlvbkVsZW1lbnRzKFxuICAgICAgICAgICAgICAgIF9nZXRIdG1sRWxlbWVudChwb3NpdGlvbkVsZW1lbnQudGFyZ2V0KSxcbiAgICAgICAgICAgICAgICBfZ2V0SHRtbEVsZW1lbnQocG9zaXRpb25FbGVtZW50LmVsZW1lbnQpLFxuICAgICAgICAgICAgICAgIHBvc2l0aW9uRWxlbWVudC5hdHRhY2htZW50LFxuICAgICAgICAgICAgICAgIHBvc2l0aW9uRWxlbWVudC5hcHBlbmRUb0JvZHksXG4gICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zLFxuICAgICAgICAgICAgICAgIHJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcihudWxsLCBudWxsKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcG9zaXRpb24ob3B0aW9uczogUG9zaXRpb25pbmdPcHRpb25zKTogdm9pZCB7XG4gICAgdGhpcy5hZGRQb3NpdGlvbkVsZW1lbnQob3B0aW9ucyk7XG4gIH1cblxuICBnZXQgZXZlbnQkKCk6IE9ic2VydmFibGU8bnVtYmVyfEV2ZW50PiB7XG4gICAgcmV0dXJuIHRoaXMudHJpZ2dlckV2ZW50JDtcbiAgfVxuXG4gIGRpc2FibGUoKTogdm9pZCB7XG4gICAgdGhpcy5pc0Rpc2FibGVkID0gdHJ1ZTtcbiAgfVxuXG4gIGVuYWJsZSgpOiB2b2lkIHtcbiAgICB0aGlzLmlzRGlzYWJsZWQgPSBmYWxzZTtcbiAgfVxuXG4gIGFkZFBvc2l0aW9uRWxlbWVudChvcHRpb25zOiBQb3NpdGlvbmluZ09wdGlvbnMpOiB2b2lkIHtcbiAgICB0aGlzLnBvc2l0aW9uRWxlbWVudHMuc2V0KF9nZXRIdG1sRWxlbWVudChvcHRpb25zLmVsZW1lbnQpLCBvcHRpb25zKTtcbiAgfVxuXG4gIGNhbGNQb3NpdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZSQkLm5leHQobnVsbCk7XG4gIH1cblxuICBkZWxldGVQb3NpdGlvbkVsZW1lbnQoZWxSZWY6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICB0aGlzLnBvc2l0aW9uRWxlbWVudHMuZGVsZXRlKF9nZXRIdG1sRWxlbWVudChlbFJlZikpO1xuICB9XG5cbiAgc2V0T3B0aW9ucyhvcHRpb25zOiBPcHRpb25zKSB7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgfVxufVxuXG5mdW5jdGlvbiBfZ2V0SHRtbEVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQgfCBFbGVtZW50UmVmIHwgc3RyaW5nKTogSFRNTEVsZW1lbnQge1xuICAvLyBpdCBtZWFucyB0aGF0IHdlIGdvdCBhIHNlbGVjdG9yXG4gIGlmICh0eXBlb2YgZWxlbWVudCA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlbGVtZW50KTtcbiAgfVxuXG4gIGlmIChlbGVtZW50IGluc3RhbmNlb2YgRWxlbWVudFJlZikge1xuICAgIHJldHVybiBlbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICByZXR1cm4gZWxlbWVudDtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { positionElements, Positioning } from './ng-positioning';
|
|
2
|
+
export { PositioningService } from './positioning.service';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy93aXMtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9kYXRlcGlja2VyL3Bvc2l0aW9uaW5nL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBc0IsTUFBTSx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IHBvc2l0aW9uRWxlbWVudHMsIFBvc2l0aW9uaW5nIH0gZnJvbSAnLi9uZy1wb3NpdGlvbmluZyc7XG5leHBvcnQgeyBQb3NpdGlvbmluZ1NlcnZpY2UsIFBvc2l0aW9uaW5nT3B0aW9ucyB9IGZyb20gJy4vcG9zaXRpb25pbmcuc2VydmljZSc7XG4iXX0=
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility used to transform the `auto` placement to the placement with more
|
|
3
|
+
* available space.
|
|
4
|
+
*/
|
|
5
|
+
import { getBoundaries } from './getBoundaries';
|
|
6
|
+
function getArea({ width, height }) {
|
|
7
|
+
return width * height;
|
|
8
|
+
}
|
|
9
|
+
export function computeAutoPlacement(placement, refRect, target, host, allowedPositions = ['top', 'bottom', 'right', 'left'], boundariesElement = 'viewport', padding = 0) {
|
|
10
|
+
if (placement.indexOf('auto') === -1) {
|
|
11
|
+
return placement;
|
|
12
|
+
}
|
|
13
|
+
const boundaries = getBoundaries(target, host, padding, boundariesElement);
|
|
14
|
+
const rects = {
|
|
15
|
+
top: {
|
|
16
|
+
width: boundaries.width,
|
|
17
|
+
height: refRect.top - boundaries.top
|
|
18
|
+
},
|
|
19
|
+
right: {
|
|
20
|
+
width: boundaries.right - refRect.right,
|
|
21
|
+
height: boundaries.height
|
|
22
|
+
},
|
|
23
|
+
bottom: {
|
|
24
|
+
width: boundaries.width,
|
|
25
|
+
height: boundaries.bottom - refRect.bottom
|
|
26
|
+
},
|
|
27
|
+
left: {
|
|
28
|
+
width: refRect.left - boundaries.left,
|
|
29
|
+
height: boundaries.height
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
const sortedAreas = Object.keys(rects)
|
|
33
|
+
.map(key => ({
|
|
34
|
+
key,
|
|
35
|
+
...rects[key],
|
|
36
|
+
area: getArea(rects[key])
|
|
37
|
+
}))
|
|
38
|
+
.sort((a, b) => b.area - a.area);
|
|
39
|
+
let filteredAreas = sortedAreas.filter(({ width, height }) => {
|
|
40
|
+
return width >= target.clientWidth
|
|
41
|
+
&& height >= target.clientHeight;
|
|
42
|
+
});
|
|
43
|
+
filteredAreas = filteredAreas.filter((position) => {
|
|
44
|
+
return allowedPositions
|
|
45
|
+
.some((allowedPosition) => {
|
|
46
|
+
return allowedPosition === position.key;
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
const computedPlacement = filteredAreas.length > 0
|
|
50
|
+
? filteredAreas[0].key
|
|
51
|
+
: sortedAreas[0].key;
|
|
52
|
+
const variation = placement.split(' ')[1];
|
|
53
|
+
// for tooltip on auto position
|
|
54
|
+
target.className = target.className.replace(/bs-tooltip-auto/g, `bs-tooltip-${computedPlacement}`);
|
|
55
|
+
return computedPlacement + (variation ? `-${variation}` : '');
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0ZUF1dG9QbGFjZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvd2lzLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvZGF0ZXBpY2tlci9wb3NpdGlvbmluZy91dGlscy9jb21wdXRlQXV0b1BsYWNlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHaEQsU0FBUyxPQUFPLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUE2QjtJQUMzRCxPQUFPLEtBQUssR0FBRyxNQUFNLENBQUM7QUFDeEIsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FDbEMsU0FBaUIsRUFDakIsT0FBZ0IsRUFDaEIsTUFBbUIsRUFDbkIsSUFBaUIsRUFDakIsbUJBQTBCLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLEVBQzVELGlCQUFpQixHQUFHLFVBQVUsRUFDOUIsT0FBTyxHQUFHLENBQUM7SUFFWCxJQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDcEMsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFFRCxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUUzRSxNQUFNLEtBQUssR0FBUTtRQUNqQixHQUFHLEVBQUU7WUFDSCxLQUFLLEVBQUUsVUFBVSxDQUFDLEtBQUs7WUFDdkIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxHQUFHLEdBQUcsVUFBVSxDQUFDLEdBQUc7U0FDckM7UUFDRCxLQUFLLEVBQUU7WUFDTCxLQUFLLEVBQUUsVUFBVSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSztZQUN2QyxNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU07U0FDMUI7UUFDRCxNQUFNLEVBQUU7WUFDTixLQUFLLEVBQUUsVUFBVSxDQUFDLEtBQUs7WUFDdkIsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU07U0FDM0M7UUFDRCxJQUFJLEVBQUU7WUFDSixLQUFLLEVBQUUsT0FBTyxDQUFDLElBQUksR0FBRyxVQUFVLENBQUMsSUFBSTtZQUNyQyxNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU07U0FDMUI7S0FDRixDQUFDO0lBRUYsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDbkMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNYLEdBQUc7UUFDSCxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDYixJQUFJLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztLQUMxQixDQUFDLENBQUM7U0FDRixJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVuQyxJQUFJLGFBQWEsR0FBVSxXQUFXLENBQUMsTUFBTSxDQUMzQyxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUU7UUFDcEIsT0FBTyxLQUFLLElBQUksTUFBTSxDQUFDLFdBQVc7ZUFDN0IsTUFBTSxJQUFJLE1BQU0sQ0FBQyxZQUFZLENBQUM7SUFDckMsQ0FBQyxDQUNGLENBQUM7SUFFRixhQUFhLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQWEsRUFBRSxFQUFFO1FBQ3JELE9BQU8sZ0JBQWdCO2FBQ3BCLElBQUksQ0FBQyxDQUFDLGVBQXVCLEVBQUUsRUFBRTtZQUNoQyxPQUFPLGVBQWUsS0FBSyxRQUFRLENBQUMsR0FBRyxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQyxDQUFDLENBQUM7SUFFSCxNQUFNLGlCQUFpQixHQUFXLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQztRQUN4RCxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUc7UUFDdEIsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFFdkIsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUUxQywrQkFBK0I7SUFDL0IsTUFBTSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxjQUFjLGlCQUFpQixFQUFFLENBQUMsQ0FBQztJQUVuRyxPQUFPLGlCQUFpQixHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUNoRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVdGlsaXR5IHVzZWQgdG8gdHJhbnNmb3JtIHRoZSBgYXV0b2AgcGxhY2VtZW50IHRvIHRoZSBwbGFjZW1lbnQgd2l0aCBtb3JlXG4gKiBhdmFpbGFibGUgc3BhY2UuXG4gKi9cbmltcG9ydCB7IGdldEJvdW5kYXJpZXMgfSBmcm9tICcuL2dldEJvdW5kYXJpZXMnO1xuaW1wb3J0IHsgT2Zmc2V0cyB9IGZyb20gJy4uL21vZGVscyc7XG5cbmZ1bmN0aW9uIGdldEFyZWEoeyB3aWR0aCwgaGVpZ2h0IH06IHsgW2tleTogc3RyaW5nXTogbnVtYmVyIH0pIHtcbiAgcmV0dXJuIHdpZHRoICogaGVpZ2h0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29tcHV0ZUF1dG9QbGFjZW1lbnQoXG4gIHBsYWNlbWVudDogc3RyaW5nLFxuICByZWZSZWN0OiBPZmZzZXRzLFxuICB0YXJnZXQ6IEhUTUxFbGVtZW50LFxuICBob3N0OiBIVE1MRWxlbWVudCxcbiAgYWxsb3dlZFBvc2l0aW9uczogYW55W10gPSBbJ3RvcCcsICdib3R0b20nLCAncmlnaHQnLCAnbGVmdCddLFxuICBib3VuZGFyaWVzRWxlbWVudCA9ICd2aWV3cG9ydCcsXG4gIHBhZGRpbmcgPSAwXG4pIHtcbiAgaWYgKHBsYWNlbWVudC5pbmRleE9mKCdhdXRvJykgPT09IC0xKSB7XG4gICAgcmV0dXJuIHBsYWNlbWVudDtcbiAgfVxuXG4gIGNvbnN0IGJvdW5kYXJpZXMgPSBnZXRCb3VuZGFyaWVzKHRhcmdldCwgaG9zdCwgcGFkZGluZywgYm91bmRhcmllc0VsZW1lbnQpO1xuXG4gIGNvbnN0IHJlY3RzOiBhbnkgPSB7XG4gICAgdG9wOiB7XG4gICAgICB3aWR0aDogYm91bmRhcmllcy53aWR0aCxcbiAgICAgIGhlaWdodDogcmVmUmVjdC50b3AgLSBib3VuZGFyaWVzLnRvcFxuICAgIH0sXG4gICAgcmlnaHQ6IHtcbiAgICAgIHdpZHRoOiBib3VuZGFyaWVzLnJpZ2h0IC0gcmVmUmVjdC5yaWdodCxcbiAgICAgIGhlaWdodDogYm91bmRhcmllcy5oZWlnaHRcbiAgICB9LFxuICAgIGJvdHRvbToge1xuICAgICAgd2lkdGg6IGJvdW5kYXJpZXMud2lkdGgsXG4gICAgICBoZWlnaHQ6IGJvdW5kYXJpZXMuYm90dG9tIC0gcmVmUmVjdC5ib3R0b21cbiAgICB9LFxuICAgIGxlZnQ6IHtcbiAgICAgIHdpZHRoOiByZWZSZWN0LmxlZnQgLSBib3VuZGFyaWVzLmxlZnQsXG4gICAgICBoZWlnaHQ6IGJvdW5kYXJpZXMuaGVpZ2h0XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IHNvcnRlZEFyZWFzID0gT2JqZWN0LmtleXMocmVjdHMpXG4gICAgLm1hcChrZXkgPT4gKHtcbiAgICAgIGtleSxcbiAgICAgIC4uLnJlY3RzW2tleV0sXG4gICAgICBhcmVhOiBnZXRBcmVhKHJlY3RzW2tleV0pXG4gICAgfSkpXG4gICAgLnNvcnQoKGEsIGIpID0+IGIuYXJlYSAtIGEuYXJlYSk7XG5cbiAgbGV0IGZpbHRlcmVkQXJlYXM6IGFueVtdID0gc29ydGVkQXJlYXMuZmlsdGVyKFxuICAgICh7IHdpZHRoLCBoZWlnaHQgfSkgPT4ge1xuICAgICAgcmV0dXJuIHdpZHRoID49IHRhcmdldC5jbGllbnRXaWR0aFxuICAgICAgICAmJiBoZWlnaHQgPj0gdGFyZ2V0LmNsaWVudEhlaWdodDtcbiAgICB9XG4gICk7XG5cbiAgZmlsdGVyZWRBcmVhcyA9IGZpbHRlcmVkQXJlYXMuZmlsdGVyKChwb3NpdGlvbjogYW55KSA9PiB7XG4gICAgcmV0dXJuIGFsbG93ZWRQb3NpdGlvbnNcbiAgICAgIC5zb21lKChhbGxvd2VkUG9zaXRpb246IHN0cmluZykgPT4ge1xuICAgICAgICByZXR1cm4gYWxsb3dlZFBvc2l0aW9uID09PSBwb3NpdGlvbi5rZXk7XG4gICAgICB9KTtcbiAgfSk7XG5cbiAgY29uc3QgY29tcHV0ZWRQbGFjZW1lbnQ6IHN0cmluZyA9IGZpbHRlcmVkQXJlYXMubGVuZ3RoID4gMFxuICAgID8gZmlsdGVyZWRBcmVhc1swXS5rZXlcbiAgICA6IHNvcnRlZEFyZWFzWzBdLmtleTtcblxuICBjb25zdCB2YXJpYXRpb24gPSBwbGFjZW1lbnQuc3BsaXQoJyAnKVsxXTtcblxuICAvLyBmb3IgdG9vbHRpcCBvbiBhdXRvIHBvc2l0aW9uXG4gIHRhcmdldC5jbGFzc05hbWUgPSB0YXJnZXQuY2xhc3NOYW1lLnJlcGxhY2UoL2JzLXRvb2x0aXAtYXV0by9nLCBgYnMtdG9vbHRpcC0ke2NvbXB1dGVkUGxhY2VtZW50fWApO1xuXG4gIHJldHVybiBjb21wdXRlZFBsYWNlbWVudCArICh2YXJpYXRpb24gPyBgLSR7dmFyaWF0aW9ufWAgOiAnJyk7XG59XG4iXX0=
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Finds the offset parent common to the two provided nodes
|
|
3
|
+
*/
|
|
4
|
+
import { isOffsetContainer } from './isOffsetContainer';
|
|
5
|
+
import { getRoot } from './getRoot';
|
|
6
|
+
import { getOffsetParent } from './getOffsetParent';
|
|
7
|
+
export function findCommonOffsetParent(element1, element2) {
|
|
8
|
+
// This check is needed to avoid errors in case one of the elements isn't defined for any reason
|
|
9
|
+
if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {
|
|
10
|
+
return document.documentElement;
|
|
11
|
+
}
|
|
12
|
+
// Here we make sure to give as "start" the element that comes first in the DOM
|
|
13
|
+
/* tslint:disable-next-line: no-bitwise */
|
|
14
|
+
const order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;
|
|
15
|
+
const start = order ? element1 : element2;
|
|
16
|
+
const end = order ? element2 : element1;
|
|
17
|
+
// Get common ancestor container
|
|
18
|
+
const range = document.createRange();
|
|
19
|
+
range.setStart(start, 0);
|
|
20
|
+
range.setEnd(end, 0);
|
|
21
|
+
const { commonAncestorContainer } = range;
|
|
22
|
+
// Both nodes are inside #document
|
|
23
|
+
if ((element1 !== commonAncestorContainer &&
|
|
24
|
+
element2 !== commonAncestorContainer) ||
|
|
25
|
+
start.contains(end)) {
|
|
26
|
+
if (isOffsetContainer(commonAncestorContainer)) {
|
|
27
|
+
return commonAncestorContainer;
|
|
28
|
+
}
|
|
29
|
+
return getOffsetParent(commonAncestorContainer);
|
|
30
|
+
}
|
|
31
|
+
// one of the nodes is inside shadowDOM, find which one
|
|
32
|
+
const element1root = getRoot(element1);
|
|
33
|
+
if (element1root.host) {
|
|
34
|
+
return findCommonOffsetParent(element1root.host, element2);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
return findCommonOffsetParent(element1, getRoot(element2).host);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZENvbW1vbk9mZnNldFBhcmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy93aXMtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9kYXRlcGlja2VyL3Bvc2l0aW9uaW5nL3V0aWxzL2ZpbmRDb21tb25PZmZzZXRQYXJlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVwRCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsUUFBcUIsRUFBRSxRQUFxQjtJQUNqRixnR0FBZ0c7SUFDaEcsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFO1FBQ3RFLE9BQU8sUUFBUSxDQUFDLGVBQWUsQ0FBQztLQUNqQztJQUVELCtFQUErRTtJQUMvRSwwQ0FBMEM7SUFDMUMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQztJQUU1RixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO0lBQzFDLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFFeEMsZ0NBQWdDO0lBQ2hDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQyxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6QixLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNyQixNQUFNLEVBQUUsdUJBQXVCLEVBQUUsR0FBRyxLQUFLLENBQUM7SUFFMUMsa0NBQWtDO0lBQ2xDLElBQ0UsQ0FBQyxRQUFRLEtBQUssdUJBQXVCO1FBQ25DLFFBQVEsS0FBSyx1QkFBdUIsQ0FBQztRQUN2QyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUNuQjtRQUNBLElBQUksaUJBQWlCLENBQUMsdUJBQXVCLENBQUMsRUFBRTtZQUM5QyxPQUFPLHVCQUF1QixDQUFDO1NBQ2hDO1FBRUQsT0FBTyxlQUFlLENBQUMsdUJBQXVCLENBQUMsQ0FBQztLQUNqRDtJQUVELHVEQUF1RDtJQUN2RCxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkMsSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFO1FBQ3JCLE9BQU8sc0JBQXNCLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztLQUM1RDtTQUFNO1FBQ0wsT0FBTyxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ2pFO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRmluZHMgdGhlIG9mZnNldCBwYXJlbnQgY29tbW9uIHRvIHRoZSB0d28gcHJvdmlkZWQgbm9kZXNcbiAqL1xuaW1wb3J0IHsgaXNPZmZzZXRDb250YWluZXIgfSBmcm9tICcuL2lzT2Zmc2V0Q29udGFpbmVyJztcbmltcG9ydCB7IGdldFJvb3QgfSBmcm9tICcuL2dldFJvb3QnO1xuaW1wb3J0IHsgZ2V0T2Zmc2V0UGFyZW50IH0gZnJvbSAnLi9nZXRPZmZzZXRQYXJlbnQnO1xuXG5leHBvcnQgZnVuY3Rpb24gZmluZENvbW1vbk9mZnNldFBhcmVudChlbGVtZW50MTogSFRNTEVsZW1lbnQsIGVsZW1lbnQyOiBIVE1MRWxlbWVudCk6IGFueSB7XG4gIC8vIFRoaXMgY2hlY2sgaXMgbmVlZGVkIHRvIGF2b2lkIGVycm9ycyBpbiBjYXNlIG9uZSBvZiB0aGUgZWxlbWVudHMgaXNuJ3QgZGVmaW5lZCBmb3IgYW55IHJlYXNvblxuICBpZiAoIWVsZW1lbnQxIHx8ICFlbGVtZW50MS5ub2RlVHlwZSB8fCAhZWxlbWVudDIgfHwgIWVsZW1lbnQyLm5vZGVUeXBlKSB7XG4gICAgcmV0dXJuIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbiAgfVxuXG4gIC8vIEhlcmUgd2UgbWFrZSBzdXJlIHRvIGdpdmUgYXMgXCJzdGFydFwiIHRoZSBlbGVtZW50IHRoYXQgY29tZXMgZmlyc3QgaW4gdGhlIERPTVxuICAvKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWJpdHdpc2UgKi9cbiAgY29uc3Qgb3JkZXIgPSBlbGVtZW50MS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihlbGVtZW50MikgJiBOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0ZPTExPV0lORztcblxuICBjb25zdCBzdGFydCA9IG9yZGVyID8gZWxlbWVudDEgOiBlbGVtZW50MjtcbiAgY29uc3QgZW5kID0gb3JkZXIgPyBlbGVtZW50MiA6IGVsZW1lbnQxO1xuXG4gIC8vIEdldCBjb21tb24gYW5jZXN0b3IgY29udGFpbmVyXG4gIGNvbnN0IHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTtcbiAgcmFuZ2Uuc2V0U3RhcnQoc3RhcnQsIDApO1xuICByYW5nZS5zZXRFbmQoZW5kLCAwKTtcbiAgY29uc3QgeyBjb21tb25BbmNlc3RvckNvbnRhaW5lciB9ID0gcmFuZ2U7XG5cbiAgLy8gQm90aCBub2RlcyBhcmUgaW5zaWRlICNkb2N1bWVudFxuICBpZiAoXG4gICAgKGVsZW1lbnQxICE9PSBjb21tb25BbmNlc3RvckNvbnRhaW5lciAmJlxuICAgICAgZWxlbWVudDIgIT09IGNvbW1vbkFuY2VzdG9yQ29udGFpbmVyKSB8fFxuICAgIHN0YXJ0LmNvbnRhaW5zKGVuZClcbiAgKSB7XG4gICAgaWYgKGlzT2Zmc2V0Q29udGFpbmVyKGNvbW1vbkFuY2VzdG9yQ29udGFpbmVyKSkge1xuICAgICAgcmV0dXJuIGNvbW1vbkFuY2VzdG9yQ29udGFpbmVyO1xuICAgIH1cblxuICAgIHJldHVybiBnZXRPZmZzZXRQYXJlbnQoY29tbW9uQW5jZXN0b3JDb250YWluZXIpO1xuICB9XG5cbiAgLy8gb25lIG9mIHRoZSBub2RlcyBpcyBpbnNpZGUgc2hhZG93RE9NLCBmaW5kIHdoaWNoIG9uZVxuICBjb25zdCBlbGVtZW50MXJvb3QgPSBnZXRSb290KGVsZW1lbnQxKTtcbiAgaWYgKGVsZW1lbnQxcm9vdC5ob3N0KSB7XG4gICAgcmV0dXJuIGZpbmRDb21tb25PZmZzZXRQYXJlbnQoZWxlbWVudDFyb290Lmhvc3QsIGVsZW1lbnQyKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gZmluZENvbW1vbk9mZnNldFBhcmVudChlbGVtZW50MSwgZ2V0Um9vdChlbGVtZW50MikuaG9zdCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Helper to detect borders of a given element
|
|
3
|
+
*/
|
|
4
|
+
export function getBordersSize(styles, axis) {
|
|
5
|
+
const sideA = axis === 'x' ? 'Left' : 'Top';
|
|
6
|
+
const sideB = sideA === 'Left' ? 'Right' : 'Bottom';
|
|
7
|
+
return (parseFloat(styles[`border${sideA}Width`]) +
|
|
8
|
+
parseFloat(styles[`border${sideB}Width`]));
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Qm9yZGVyc1NpemUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvd2lzLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvZGF0ZXBpY2tlci9wb3NpdGlvbmluZy91dGlscy9nZXRCb3JkZXJzU2l6ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE1BQU0sVUFBVSxjQUFjLENBQUMsTUFBMkIsRUFBRSxJQUFZO0lBQ3RFLE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQzVDLE1BQU0sS0FBSyxHQUFHLEtBQUssS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO0lBRXBELE9BQU8sQ0FDTCxVQUFVLENBQUMsTUFBTSxDQUFDLFNBQVMsS0FBSyxPQUFjLENBQUMsQ0FBQztRQUNoRCxVQUFVLENBQUMsTUFBTSxDQUFDLFNBQVMsS0FBSyxPQUFjLENBQUMsQ0FBQyxDQUNqRCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogSGVscGVyIHRvIGRldGVjdCBib3JkZXJzIG9mIGEgZ2l2ZW4gZWxlbWVudFxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRCb3JkZXJzU2l6ZShzdHlsZXM6IENTU1N0eWxlRGVjbGFyYXRpb24sIGF4aXM6IHN0cmluZykge1xuICBjb25zdCBzaWRlQSA9IGF4aXMgPT09ICd4JyA/ICdMZWZ0JyA6ICdUb3AnO1xuICBjb25zdCBzaWRlQiA9IHNpZGVBID09PSAnTGVmdCcgPyAnUmlnaHQnIDogJ0JvdHRvbSc7XG5cbiAgcmV0dXJuIChcbiAgICBwYXJzZUZsb2F0KHN0eWxlc1tgYm9yZGVyJHtzaWRlQX1XaWR0aGAgYXMgYW55XSkgK1xuICAgIHBhcnNlRmxvYXQoc3R5bGVzW2Bib3JkZXIke3NpZGVCfVdpZHRoYCBhcyBhbnldKVxuICApO1xufVxuIl19
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Computed the boundaries limits and return them
|
|
3
|
+
*/
|
|
4
|
+
import { getScrollParent } from './getScrollParent';
|
|
5
|
+
import { getParentNode } from './getParentNode';
|
|
6
|
+
import { findCommonOffsetParent } from './findCommonOffsetParent';
|
|
7
|
+
import { getOffsetRectRelativeToArbitraryNode } from './getOffsetRectRelativeToArbitraryNode';
|
|
8
|
+
import { getViewportOffsetRectRelativeToArtbitraryNode } from './getViewportOffsetRectRelativeToArtbitraryNode';
|
|
9
|
+
import { getWindowSizes } from './getWindowSizes';
|
|
10
|
+
import { isFixed } from './isFixed';
|
|
11
|
+
import { getFixedPositionOffsetParent } from './getFixedPositionOffsetParent';
|
|
12
|
+
export function getBoundaries(target, host, padding = 0, boundariesElement, fixedPosition = false) {
|
|
13
|
+
// NOTE: 1 DOM access here
|
|
14
|
+
let boundaries = { top: 0, left: 0 };
|
|
15
|
+
const offsetParent = fixedPosition ? getFixedPositionOffsetParent(target) : findCommonOffsetParent(target, host);
|
|
16
|
+
// Handle viewport case
|
|
17
|
+
if (boundariesElement === 'viewport') {
|
|
18
|
+
boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
// Handle other cases based on DOM element used as boundaries
|
|
22
|
+
let boundariesNode;
|
|
23
|
+
if (boundariesElement === 'scrollParent') {
|
|
24
|
+
boundariesNode = getScrollParent(getParentNode(host));
|
|
25
|
+
if (boundariesNode.nodeName === 'BODY') {
|
|
26
|
+
boundariesNode = target.ownerDocument.documentElement;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
else if (boundariesElement === 'window') {
|
|
30
|
+
boundariesNode = target.ownerDocument.documentElement;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
boundariesNode = boundariesElement;
|
|
34
|
+
}
|
|
35
|
+
const offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);
|
|
36
|
+
// In case of HTML, we need a different computation
|
|
37
|
+
if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {
|
|
38
|
+
const { height, width } = getWindowSizes(target.ownerDocument);
|
|
39
|
+
boundaries.top += offsets.top - offsets.marginTop;
|
|
40
|
+
boundaries.bottom = Number(height) + Number(offsets.top);
|
|
41
|
+
boundaries.left += offsets.left - offsets.marginLeft;
|
|
42
|
+
boundaries.right = Number(width) + Number(offsets.left);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
// for all the other DOM elements, this one is good
|
|
46
|
+
boundaries = offsets;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
// Add paddings
|
|
50
|
+
boundaries.left += padding;
|
|
51
|
+
boundaries.top += padding;
|
|
52
|
+
boundaries.right -= padding;
|
|
53
|
+
boundaries.bottom -= padding;
|
|
54
|
+
return boundaries;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Qm91bmRhcmllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy93aXMtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9kYXRlcGlja2VyL3Bvc2l0aW9uaW5nL3V0aWxzL2dldEJvdW5kYXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlGLE9BQU8sRUFBRSw2Q0FBNkMsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ2hILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTlFLE1BQU0sVUFBVSxhQUFhLENBQzNCLE1BQW1CLEVBQ25CLElBQWlCLEVBQ2pCLE9BQU8sR0FBRyxDQUFDLEVBQ1gsaUJBQXlCLEVBQ3pCLGFBQWEsR0FBRyxLQUFLO0lBRXJCLDBCQUEwQjtJQUUxQixJQUFJLFVBQVUsR0FBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDO0lBQzFDLE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FBQyxDQUFDLENBQUMsNEJBQTRCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUVqSCx1QkFBdUI7SUFDdkIsSUFBSSxpQkFBaUIsS0FBSyxVQUFVLEVBQUU7UUFDcEMsVUFBVSxHQUFHLDZDQUE2QyxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsQ0FBQztLQUN6RjtTQUFNO1FBQ0wsNkRBQTZEO1FBQzdELElBQUksY0FBYyxDQUFDO1FBQ25CLElBQUksaUJBQWlCLEtBQUssY0FBYyxFQUFFO1lBQ3hDLGNBQWMsR0FBRyxlQUFlLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDdEQsSUFBSSxjQUFjLENBQUMsUUFBUSxLQUFLLE1BQU0sRUFBRTtnQkFDdEMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDO2FBQ3ZEO1NBQ0Y7YUFBTSxJQUFJLGlCQUFpQixLQUFLLFFBQVEsRUFBRTtZQUN6QyxjQUFjLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUM7U0FDdkQ7YUFBTTtZQUNMLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQztTQUNwQztRQUVELE1BQU0sT0FBTyxHQUFHLG9DQUFvQyxDQUNsRCxjQUFjLEVBQ2QsWUFBWSxFQUNaLGFBQWEsQ0FDZCxDQUFDO1FBRUYsbURBQW1EO1FBQ25ELElBQUksY0FBYyxDQUFDLFFBQVEsS0FBSyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDaEUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQy9ELFVBQVUsQ0FBQyxHQUFHLElBQUksT0FBTyxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDO1lBQ2xELFVBQVUsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekQsVUFBVSxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7WUFDckQsVUFBVSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN6RDthQUFNO1lBQ0wsbURBQW1EO1lBQ25ELFVBQVUsR0FBRyxPQUFPLENBQUM7U0FDdEI7S0FDRjtJQUVELGVBQWU7SUFDZixVQUFVLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQztJQUMzQixVQUFVLENBQUMsR0FBRyxJQUFJLE9BQU8sQ0FBQztJQUMxQixVQUFVLENBQUMsS0FBSyxJQUFJLE9BQU8sQ0FBQztJQUM1QixVQUFVLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQztJQUU3QixPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb21wdXRlZCB0aGUgYm91bmRhcmllcyBsaW1pdHMgYW5kIHJldHVybiB0aGVtXG4gKi9cbmltcG9ydCB7IGdldFNjcm9sbFBhcmVudCB9IGZyb20gJy4vZ2V0U2Nyb2xsUGFyZW50JztcbmltcG9ydCB7IGdldFBhcmVudE5vZGUgfSBmcm9tICcuL2dldFBhcmVudE5vZGUnO1xuaW1wb3J0IHsgZmluZENvbW1vbk9mZnNldFBhcmVudCB9IGZyb20gJy4vZmluZENvbW1vbk9mZnNldFBhcmVudCc7XG5pbXBvcnQgeyBnZXRPZmZzZXRSZWN0UmVsYXRpdmVUb0FyYml0cmFyeU5vZGUgfSBmcm9tICcuL2dldE9mZnNldFJlY3RSZWxhdGl2ZVRvQXJiaXRyYXJ5Tm9kZSc7XG5pbXBvcnQgeyBnZXRWaWV3cG9ydE9mZnNldFJlY3RSZWxhdGl2ZVRvQXJ0Yml0cmFyeU5vZGUgfSBmcm9tICcuL2dldFZpZXdwb3J0T2Zmc2V0UmVjdFJlbGF0aXZlVG9BcnRiaXRyYXJ5Tm9kZSc7XG5pbXBvcnQgeyBnZXRXaW5kb3dTaXplcyB9IGZyb20gJy4vZ2V0V2luZG93U2l6ZXMnO1xuaW1wb3J0IHsgaXNGaXhlZCB9IGZyb20gJy4vaXNGaXhlZCc7XG5pbXBvcnQgeyBnZXRGaXhlZFBvc2l0aW9uT2Zmc2V0UGFyZW50IH0gZnJvbSAnLi9nZXRGaXhlZFBvc2l0aW9uT2Zmc2V0UGFyZW50JztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEJvdW5kYXJpZXMoXG4gIHRhcmdldDogSFRNTEVsZW1lbnQsXG4gIGhvc3Q6IEhUTUxFbGVtZW50LFxuICBwYWRkaW5nID0gMCxcbiAgYm91bmRhcmllc0VsZW1lbnQ6IHN0cmluZyxcbiAgZml4ZWRQb3NpdGlvbiA9IGZhbHNlXG4pIHtcbiAgLy8gTk9URTogMSBET00gYWNjZXNzIGhlcmVcblxuICBsZXQgYm91bmRhcmllczogYW55ID0geyB0b3A6IDAsIGxlZnQ6IDAgfTtcbiAgY29uc3Qgb2Zmc2V0UGFyZW50ID0gZml4ZWRQb3NpdGlvbiA/IGdldEZpeGVkUG9zaXRpb25PZmZzZXRQYXJlbnQodGFyZ2V0KSA6IGZpbmRDb21tb25PZmZzZXRQYXJlbnQodGFyZ2V0LCBob3N0KTtcblxuICAvLyBIYW5kbGUgdmlld3BvcnQgY2FzZVxuICBpZiAoYm91bmRhcmllc0VsZW1lbnQgPT09ICd2aWV3cG9ydCcpIHtcbiAgICBib3VuZGFyaWVzID0gZ2V0Vmlld3BvcnRPZmZzZXRSZWN0UmVsYXRpdmVUb0FydGJpdHJhcnlOb2RlKG9mZnNldFBhcmVudCwgZml4ZWRQb3NpdGlvbik7XG4gIH0gZWxzZSB7XG4gICAgLy8gSGFuZGxlIG90aGVyIGNhc2VzIGJhc2VkIG9uIERPTSBlbGVtZW50IHVzZWQgYXMgYm91bmRhcmllc1xuICAgIGxldCBib3VuZGFyaWVzTm9kZTtcbiAgICBpZiAoYm91bmRhcmllc0VsZW1lbnQgPT09ICdzY3JvbGxQYXJlbnQnKSB7XG4gICAgICBib3VuZGFyaWVzTm9kZSA9IGdldFNjcm9sbFBhcmVudChnZXRQYXJlbnROb2RlKGhvc3QpKTtcbiAgICAgIGlmIChib3VuZGFyaWVzTm9kZS5ub2RlTmFtZSA9PT0gJ0JPRFknKSB7XG4gICAgICAgIGJvdW5kYXJpZXNOb2RlID0gdGFyZ2V0Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoYm91bmRhcmllc0VsZW1lbnQgPT09ICd3aW5kb3cnKSB7XG4gICAgICBib3VuZGFyaWVzTm9kZSA9IHRhcmdldC5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbiAgICB9IGVsc2Uge1xuICAgICAgYm91bmRhcmllc05vZGUgPSBib3VuZGFyaWVzRWxlbWVudDtcbiAgICB9XG5cbiAgICBjb25zdCBvZmZzZXRzID0gZ2V0T2Zmc2V0UmVjdFJlbGF0aXZlVG9BcmJpdHJhcnlOb2RlKFxuICAgICAgYm91bmRhcmllc05vZGUsXG4gICAgICBvZmZzZXRQYXJlbnQsXG4gICAgICBmaXhlZFBvc2l0aW9uXG4gICAgKTtcblxuICAgIC8vIEluIGNhc2Ugb2YgSFRNTCwgd2UgbmVlZCBhIGRpZmZlcmVudCBjb21wdXRhdGlvblxuICAgIGlmIChib3VuZGFyaWVzTm9kZS5ub2RlTmFtZSA9PT0gJ0hUTUwnICYmICFpc0ZpeGVkKG9mZnNldFBhcmVudCkpIHtcbiAgICAgIGNvbnN0IHsgaGVpZ2h0LCB3aWR0aCB9ID0gZ2V0V2luZG93U2l6ZXModGFyZ2V0Lm93bmVyRG9jdW1lbnQpO1xuICAgICAgYm91bmRhcmllcy50b3AgKz0gb2Zmc2V0cy50b3AgLSBvZmZzZXRzLm1hcmdpblRvcDtcbiAgICAgIGJvdW5kYXJpZXMuYm90dG9tID0gTnVtYmVyKGhlaWdodCkgKyBOdW1iZXIob2Zmc2V0cy50b3ApO1xuICAgICAgYm91bmRhcmllcy5sZWZ0ICs9IG9mZnNldHMubGVmdCAtIG9mZnNldHMubWFyZ2luTGVmdDtcbiAgICAgIGJvdW5kYXJpZXMucmlnaHQgPSBOdW1iZXIod2lkdGgpICsgTnVtYmVyKG9mZnNldHMubGVmdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGZvciBhbGwgdGhlIG90aGVyIERPTSBlbGVtZW50cywgdGhpcyBvbmUgaXMgZ29vZFxuICAgICAgYm91bmRhcmllcyA9IG9mZnNldHM7XG4gICAgfVxuICB9XG5cbiAgLy8gQWRkIHBhZGRpbmdzXG4gIGJvdW5kYXJpZXMubGVmdCArPSBwYWRkaW5nO1xuICBib3VuZGFyaWVzLnRvcCArPSBwYWRkaW5nO1xuICBib3VuZGFyaWVzLnJpZ2h0IC09IHBhZGRpbmc7XG4gIGJvdW5kYXJpZXMuYm90dG9tIC09IHBhZGRpbmc7XG5cbiAgcmV0dXJuIGJvdW5kYXJpZXM7XG59XG4iXX0=
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get bounding client rect of given element
|
|
3
|
+
*/
|
|
4
|
+
import { getStyleComputedProperty } from './getStyleComputedProperty';
|
|
5
|
+
import { getBordersSize } from './getBordersSize';
|
|
6
|
+
import { getWindowSizes } from './getWindowSizes';
|
|
7
|
+
import { getScroll } from './getScroll';
|
|
8
|
+
import { getClientRect } from './getClientRect';
|
|
9
|
+
import { isIE } from './isIE';
|
|
10
|
+
export function getBoundingClientRect(element) {
|
|
11
|
+
let rect = {};
|
|
12
|
+
// IE10 10 FIX: Please, don't ask, the element isn't
|
|
13
|
+
// considered in DOM in some circumstances...
|
|
14
|
+
// This isn't reproducible in IE10 compatibility mode of IE11
|
|
15
|
+
try {
|
|
16
|
+
if (isIE(10)) {
|
|
17
|
+
rect = element.getBoundingClientRect();
|
|
18
|
+
const scrollTop = getScroll(element, 'top');
|
|
19
|
+
const scrollLeft = getScroll(element, 'left');
|
|
20
|
+
rect.top += scrollTop;
|
|
21
|
+
rect.left += scrollLeft;
|
|
22
|
+
rect.bottom += scrollTop;
|
|
23
|
+
rect.right += scrollLeft;
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
rect = element.getBoundingClientRect();
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
catch (e) {
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
const result = {
|
|
33
|
+
left: rect.left,
|
|
34
|
+
top: rect.top,
|
|
35
|
+
width: rect.right - rect.left,
|
|
36
|
+
height: rect.bottom - rect.top
|
|
37
|
+
};
|
|
38
|
+
// subtract scrollbar size from sizes
|
|
39
|
+
const sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};
|
|
40
|
+
const width = sizes.width || element.clientWidth || result.right - result.left;
|
|
41
|
+
const height = sizes.height || element.clientHeight || result.bottom - result.top;
|
|
42
|
+
let horizScrollbar = element.offsetWidth - width;
|
|
43
|
+
let vertScrollbar = element.offsetHeight - height;
|
|
44
|
+
// if an hypothetical scrollbar is detected, we must be sure it's not a `border`
|
|
45
|
+
// we make this check conditional for performance reasons
|
|
46
|
+
if (horizScrollbar || vertScrollbar) {
|
|
47
|
+
const styles = getStyleComputedProperty(element);
|
|
48
|
+
horizScrollbar -= getBordersSize(styles, 'x');
|
|
49
|
+
vertScrollbar -= getBordersSize(styles, 'y');
|
|
50
|
+
result.width -= horizScrollbar;
|
|
51
|
+
result.height -= vertScrollbar;
|
|
52
|
+
}
|
|
53
|
+
return getClientRect(result);
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Qm91bmRpbmdDbGllbnRSZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL3dpcy1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2RhdGVwaWNrZXIvcG9zaXRpb25pbmcvdXRpbHMvZ2V0Qm91bmRpbmdDbGllbnRSZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRzlCLE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxPQUFvQjtJQUN4RCxJQUFJLElBQUksR0FBUSxFQUFFLENBQUM7SUFFbkIsb0RBQW9EO0lBQ3BELDZDQUE2QztJQUM3Qyw2REFBNkQ7SUFDN0QsSUFBSTtRQUNGLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ1osSUFBSSxHQUFHLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDNUMsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztZQUM5QyxJQUFJLENBQUMsR0FBRyxJQUFJLFNBQVMsQ0FBQztZQUN0QixJQUFJLENBQUMsSUFBSSxJQUFJLFVBQVUsQ0FBQztZQUN4QixJQUFJLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQztZQUN6QixJQUFJLENBQUMsS0FBSyxJQUFJLFVBQVUsQ0FBQztTQUMxQjthQUFNO1lBQ0wsSUFBSSxHQUFHLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1NBQ3hDO0tBQ0Y7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBRUQsTUFBTSxNQUFNLEdBQVE7UUFDbEIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1FBQ2YsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO1FBQ2IsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUk7UUFDN0IsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUc7S0FDL0IsQ0FBQztJQUVGLHFDQUFxQztJQUNyQyxNQUFNLEtBQUssR0FBUSxPQUFPLENBQUMsUUFBUSxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzVGLE1BQU0sS0FBSyxHQUNULEtBQUssQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLFdBQVcsSUFBSSxNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFDbkUsTUFBTSxNQUFNLEdBQ1YsS0FBSyxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsWUFBWSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQztJQUVyRSxJQUFJLGNBQWMsR0FBRyxPQUFPLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUNqRCxJQUFJLGFBQWEsR0FBRyxPQUFPLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQztJQUVsRCxnRkFBZ0Y7SUFDaEYseURBQXlEO0lBQ3pELElBQUksY0FBYyxJQUFJLGFBQWEsRUFBRTtRQUNuQyxNQUFNLE1BQU0sR0FBRyx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNqRCxjQUFjLElBQUksY0FBYyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUM5QyxhQUFhLElBQUksY0FBYyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUU3QyxNQUFNLENBQUMsS0FBSyxJQUFJLGNBQWMsQ0FBQztRQUMvQixNQUFNLENBQUMsTUFBTSxJQUFJLGFBQWEsQ0FBQztLQUNoQztJQUVELE9BQU8sYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQy9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdldCBib3VuZGluZyBjbGllbnQgcmVjdCBvZiBnaXZlbiBlbGVtZW50XG4gKi9cbmltcG9ydCB7IGdldFN0eWxlQ29tcHV0ZWRQcm9wZXJ0eSB9IGZyb20gJy4vZ2V0U3R5bGVDb21wdXRlZFByb3BlcnR5JztcbmltcG9ydCB7IGdldEJvcmRlcnNTaXplIH0gZnJvbSAnLi9nZXRCb3JkZXJzU2l6ZSc7XG5pbXBvcnQgeyBnZXRXaW5kb3dTaXplcyB9IGZyb20gJy4vZ2V0V2luZG93U2l6ZXMnO1xuaW1wb3J0IHsgZ2V0U2Nyb2xsIH0gZnJvbSAnLi9nZXRTY3JvbGwnO1xuaW1wb3J0IHsgZ2V0Q2xpZW50UmVjdCB9IGZyb20gJy4vZ2V0Q2xpZW50UmVjdCc7XG5pbXBvcnQgeyBpc0lFIH0gZnJvbSAnLi9pc0lFJztcbmltcG9ydCB7IE9mZnNldHMgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Qm91bmRpbmdDbGllbnRSZWN0KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogT2Zmc2V0cyB7XG4gIGxldCByZWN0OiBhbnkgPSB7fTtcblxuICAvLyBJRTEwIDEwIEZJWDogUGxlYXNlLCBkb24ndCBhc2ssIHRoZSBlbGVtZW50IGlzbid0XG4gIC8vIGNvbnNpZGVyZWQgaW4gRE9NIGluIHNvbWUgY2lyY3Vtc3RhbmNlcy4uLlxuICAvLyBUaGlzIGlzbid0IHJlcHJvZHVjaWJsZSBpbiBJRTEwIGNvbXBhdGliaWxpdHkgbW9kZSBvZiBJRTExXG4gIHRyeSB7XG4gICAgaWYgKGlzSUUoMTApKSB7XG4gICAgICByZWN0ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgIGNvbnN0IHNjcm9sbFRvcCA9IGdldFNjcm9sbChlbGVtZW50LCAndG9wJyk7XG4gICAgICBjb25zdCBzY3JvbGxMZWZ0ID0gZ2V0U2Nyb2xsKGVsZW1lbnQsICdsZWZ0Jyk7XG4gICAgICByZWN0LnRvcCArPSBzY3JvbGxUb3A7XG4gICAgICByZWN0LmxlZnQgKz0gc2Nyb2xsTGVmdDtcbiAgICAgIHJlY3QuYm90dG9tICs9IHNjcm9sbFRvcDtcbiAgICAgIHJlY3QucmlnaHQgKz0gc2Nyb2xsTGVmdDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgfVxuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGNvbnN0IHJlc3VsdDogYW55ID0ge1xuICAgIGxlZnQ6IHJlY3QubGVmdCxcbiAgICB0b3A6IHJlY3QudG9wLFxuICAgIHdpZHRoOiByZWN0LnJpZ2h0IC0gcmVjdC5sZWZ0LFxuICAgIGhlaWdodDogcmVjdC5ib3R0b20gLSByZWN0LnRvcFxuICB9O1xuXG4gIC8vIHN1YnRyYWN0IHNjcm9sbGJhciBzaXplIGZyb20gc2l6ZXNcbiAgY29uc3Qgc2l6ZXM6IGFueSA9IGVsZW1lbnQubm9kZU5hbWUgPT09ICdIVE1MJyA/IGdldFdpbmRvd1NpemVzKGVsZW1lbnQub3duZXJEb2N1bWVudCkgOiB7fTtcbiAgY29uc3Qgd2lkdGggPVxuICAgIHNpemVzLndpZHRoIHx8IGVsZW1lbnQuY2xpZW50V2lkdGggfHwgcmVzdWx0LnJpZ2h0IC0gcmVzdWx0LmxlZnQ7XG4gIGNvbnN0IGhlaWdodCA9XG4gICAgc2l6ZXMuaGVpZ2h0IHx8IGVsZW1lbnQuY2xpZW50SGVpZ2h0IHx8IHJlc3VsdC5ib3R0b20gLSByZXN1bHQudG9wO1xuXG4gIGxldCBob3JpelNjcm9sbGJhciA9IGVsZW1lbnQub2Zmc2V0V2lkdGggLSB3aWR0aDtcbiAgbGV0IHZlcnRTY3JvbGxiYXIgPSBlbGVtZW50Lm9mZnNldEhlaWdodCAtIGhlaWdodDtcblxuICAvLyBpZiBhbiBoeXBvdGhldGljYWwgc2Nyb2xsYmFyIGlzIGRldGVjdGVkLCB3ZSBtdXN0IGJlIHN1cmUgaXQncyBub3QgYSBgYm9yZGVyYFxuICAvLyB3ZSBtYWtlIHRoaXMgY2hlY2sgY29uZGl0aW9uYWwgZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnNcbiAgaWYgKGhvcml6U2Nyb2xsYmFyIHx8IHZlcnRTY3JvbGxiYXIpIHtcbiAgICBjb25zdCBzdHlsZXMgPSBnZXRTdHlsZUNvbXB1dGVkUHJvcGVydHkoZWxlbWVudCk7XG4gICAgaG9yaXpTY3JvbGxiYXIgLT0gZ2V0Qm9yZGVyc1NpemUoc3R5bGVzLCAneCcpO1xuICAgIHZlcnRTY3JvbGxiYXIgLT0gZ2V0Qm9yZGVyc1NpemUoc3R5bGVzLCAneScpO1xuXG4gICAgcmVzdWx0LndpZHRoIC09IGhvcml6U2Nyb2xsYmFyO1xuICAgIHJlc3VsdC5oZWlnaHQgLT0gdmVydFNjcm9sbGJhcjtcbiAgfVxuXG4gIHJldHVybiBnZXRDbGllbnRSZWN0KHJlc3VsdCk7XG59XG4iXX0=
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export function getClientRect(offsets) {
|
|
2
|
+
return {
|
|
3
|
+
...offsets,
|
|
4
|
+
right: offsets.left + offsets.width,
|
|
5
|
+
bottom: offsets.top + offsets.height
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Q2xpZW50UmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy93aXMtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9kYXRlcGlja2VyL3Bvc2l0aW9uaW5nL3V0aWxzL2dldENsaWVudFJlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxVQUFVLGFBQWEsQ0FBQyxPQUFnQjtJQUM1QyxPQUFPO1FBQ0wsR0FBRyxPQUFPO1FBQ1YsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLEtBQUs7UUFDbkMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLE1BQU07S0FDckMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdpdmVuIGVsZW1lbnQgb2Zmc2V0cywgZ2VuZXJhdGUgYW4gb3V0cHV0IHNpbWlsYXIgdG8gZ2V0Qm91bmRpbmdDbGllbnRSZWN0XG4gKi9cbmltcG9ydCB7IE9mZnNldHMgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2xpZW50UmVjdChvZmZzZXRzOiBPZmZzZXRzKTogT2Zmc2V0cyB7XG4gIHJldHVybiB7XG4gICAgLi4ub2Zmc2V0cyxcbiAgICByaWdodDogb2Zmc2V0cy5sZWZ0ICsgb2Zmc2V0cy53aWR0aCxcbiAgICBib3R0b206IG9mZnNldHMudG9wICsgb2Zmc2V0cy5oZWlnaHRcbiAgfTtcbn1cbiJdfQ==
|
package/esm2020/src/lib/components/datepicker/positioning/utils/getFixedPositionOffsetParent.mjs
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Finds the first parent of an element that has a transformed property defined
|
|
3
|
+
*/
|
|
4
|
+
import { getStyleComputedProperty } from './getStyleComputedProperty';
|
|
5
|
+
import { isIE } from './isIE';
|
|
6
|
+
export function getFixedPositionOffsetParent(element) {
|
|
7
|
+
// This check is needed to avoid errors in case one of the elements isn't defined for any reason
|
|
8
|
+
if (!element || !element.parentElement || isIE()) {
|
|
9
|
+
return document.documentElement;
|
|
10
|
+
}
|
|
11
|
+
let el = element.parentElement;
|
|
12
|
+
while (el && getStyleComputedProperty(el, 'transform') === 'none') {
|
|
13
|
+
el = el.parentElement;
|
|
14
|
+
}
|
|
15
|
+
return el || document.documentElement;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Rml4ZWRQb3NpdGlvbk9mZnNldFBhcmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy93aXMtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9kYXRlcGlja2VyL3Bvc2l0aW9uaW5nL3V0aWxzL2dldEZpeGVkUG9zaXRpb25PZmZzZXRQYXJlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRTlCLE1BQU0sVUFBVSw0QkFBNEIsQ0FBQyxPQUFvQjtJQUMvRCxnR0FBZ0c7SUFDaEcsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLElBQUksSUFBSSxFQUFFLEVBQUU7UUFDakQsT0FBTyxRQUFRLENBQUMsZUFBZSxDQUFDO0tBQ2hDO0lBRUQsSUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztJQUUvQixPQUFPLEVBQUUsSUFBSSx3QkFBd0IsQ0FBQyxFQUFFLEVBQUUsV0FBVyxDQUFDLEtBQUssTUFBTSxFQUFFO1FBQ2pFLEVBQUUsR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDO0tBQ3ZCO0lBRUQsT0FBTyxFQUFFLElBQUksUUFBUSxDQUFDLGVBQWUsQ0FBQztBQUN4QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBGaW5kcyB0aGUgZmlyc3QgcGFyZW50IG9mIGFuIGVsZW1lbnQgdGhhdCBoYXMgYSB0cmFuc2Zvcm1lZCBwcm9wZXJ0eSBkZWZpbmVkXG4gKi9cblxuaW1wb3J0IHsgZ2V0U3R5bGVDb21wdXRlZFByb3BlcnR5IH0gZnJvbSAnLi9nZXRTdHlsZUNvbXB1dGVkUHJvcGVydHknO1xuaW1wb3J0IHsgaXNJRSB9IGZyb20gJy4vaXNJRSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaXhlZFBvc2l0aW9uT2Zmc2V0UGFyZW50KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnQge1xuICAvLyBUaGlzIGNoZWNrIGlzIG5lZWRlZCB0byBhdm9pZCBlcnJvcnMgaW4gY2FzZSBvbmUgb2YgdGhlIGVsZW1lbnRzIGlzbid0IGRlZmluZWQgZm9yIGFueSByZWFzb25cbiAgaWYgKCFlbGVtZW50IHx8ICFlbGVtZW50LnBhcmVudEVsZW1lbnQgfHwgaXNJRSgpKSB7XG4gICByZXR1cm4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xuICB9XG5cbiAgbGV0IGVsID0gZWxlbWVudC5wYXJlbnRFbGVtZW50O1xuXG4gIHdoaWxlIChlbCAmJiBnZXRTdHlsZUNvbXB1dGVkUHJvcGVydHkoZWwsICd0cmFuc2Zvcm0nKSA9PT0gJ25vbmUnKSB7XG4gICAgZWwgPSBlbC5wYXJlbnRFbGVtZW50O1xuICB9XG5cbiAgcmV0dXJuIGVsIHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns the offset parent of the given element
|
|
3
|
+
*/
|
|
4
|
+
import { getStyleComputedProperty } from './getStyleComputedProperty';
|
|
5
|
+
import { isIE } from './isIE';
|
|
6
|
+
export function getOffsetParent(element) {
|
|
7
|
+
if (!element) {
|
|
8
|
+
return document.documentElement;
|
|
9
|
+
}
|
|
10
|
+
const noOffsetParent = isIE(10) ? document.body : null;
|
|
11
|
+
// NOTE: 1 DOM access here
|
|
12
|
+
let offsetParent = element.offsetParent || null;
|
|
13
|
+
// Skip hidden elements which don't have an offsetParent
|
|
14
|
+
let sibling;
|
|
15
|
+
while (offsetParent === noOffsetParent
|
|
16
|
+
&& element.nextElementSibling
|
|
17
|
+
&& sibling !== element.nextElementSibling) {
|
|
18
|
+
sibling = element.nextElementSibling;
|
|
19
|
+
offsetParent = sibling.offsetParent;
|
|
20
|
+
}
|
|
21
|
+
const nodeName = offsetParent && offsetParent.nodeName;
|
|
22
|
+
if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {
|
|
23
|
+
return sibling ? sibling.ownerDocument.documentElement : document.documentElement;
|
|
24
|
+
}
|
|
25
|
+
// .offsetParent will return the closest TH, TD or TABLE in case
|
|
26
|
+
if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 &&
|
|
27
|
+
getStyleComputedProperty(offsetParent, 'position') === 'static') {
|
|
28
|
+
return getOffsetParent(offsetParent);
|
|
29
|
+
}
|
|
30
|
+
return offsetParent;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0T2Zmc2V0UGFyZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL3dpcy1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2RhdGVwaWNrZXIvcG9zaXRpb25pbmcvdXRpbHMvZ2V0T2Zmc2V0UGFyZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUU5QixNQUFNLFVBQVUsZUFBZSxDQUFDLE9BQVk7SUFDMUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtRQUNaLE9BQU8sUUFBUSxDQUFDLGVBQWUsQ0FBQztLQUNqQztJQUVELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBRXZELDBCQUEwQjtJQUMxQixJQUFJLFlBQVksR0FBRyxPQUFPLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQztJQUVoRCx3REFBd0Q7SUFDeEQsSUFBSSxPQUEyQixDQUFDO0lBRWhDLE9BQU8sWUFBWSxLQUFLLGNBQWM7V0FDNUIsT0FBTyxDQUFDLGtCQUFrQjtXQUMxQixPQUFPLEtBQUssT0FBTyxDQUFDLGtCQUFrQixFQUFFO1FBRTlDLE9BQU8sR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQUM7UUFDckMsWUFBWSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUM7S0FDckM7SUFFSCxNQUFNLFFBQVEsR0FBRyxZQUFZLElBQUksWUFBWSxDQUFDLFFBQVEsQ0FBQztJQUV2RCxJQUFJLENBQUMsUUFBUSxJQUFJLFFBQVEsS0FBSyxNQUFNLElBQUksUUFBUSxLQUFLLE1BQU0sRUFBRTtRQUMzRCxPQUFPLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUM7S0FDbkY7SUFFRCxnRUFBZ0U7SUFDaEUsSUFDRSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0Qsd0JBQXdCLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxLQUFLLFFBQVEsRUFDL0Q7UUFDQSxPQUFPLGVBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQztLQUN0QztJQUVELE9BQU8sWUFBWSxDQUFDO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJldHVybnMgdGhlIG9mZnNldCBwYXJlbnQgb2YgdGhlIGdpdmVuIGVsZW1lbnRcbiAqL1xuaW1wb3J0IHsgZ2V0U3R5bGVDb21wdXRlZFByb3BlcnR5IH0gZnJvbSAnLi9nZXRTdHlsZUNvbXB1dGVkUHJvcGVydHknO1xuaW1wb3J0IHsgaXNJRSB9IGZyb20gJy4vaXNJRSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPZmZzZXRQYXJlbnQoZWxlbWVudDogYW55KTogYW55IHtcbiAgaWYgKCFlbGVtZW50KSB7XG4gICAgcmV0dXJuIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbiAgfVxuXG4gIGNvbnN0IG5vT2Zmc2V0UGFyZW50ID0gaXNJRSgxMCkgPyBkb2N1bWVudC5ib2R5IDogbnVsbDtcblxuICAvLyBOT1RFOiAxIERPTSBhY2Nlc3MgaGVyZVxuICBsZXQgb2Zmc2V0UGFyZW50ID0gZWxlbWVudC5vZmZzZXRQYXJlbnQgfHwgbnVsbDtcblxuICAvLyBTa2lwIGhpZGRlbiBlbGVtZW50cyB3aGljaCBkb24ndCBoYXZlIGFuIG9mZnNldFBhcmVudFxuICBsZXQgc2libGluZzogSFRNTEVsZW1lbnQgfCBudWxsO1xuXG4gIHdoaWxlIChvZmZzZXRQYXJlbnQgPT09IG5vT2Zmc2V0UGFyZW50XG4gICAgICAgICAmJiBlbGVtZW50Lm5leHRFbGVtZW50U2libGluZ1xuICAgICAgICAgJiYgc2libGluZyAhPT0gZWxlbWVudC5uZXh0RWxlbWVudFNpYmxpbmcpIHtcblxuICAgICAgc2libGluZyA9IGVsZW1lbnQubmV4dEVsZW1lbnRTaWJsaW5nO1xuICAgICAgb2Zmc2V0UGFyZW50ID0gc2libGluZy5vZmZzZXRQYXJlbnQ7XG4gICAgfVxuXG4gIGNvbnN0IG5vZGVOYW1lID0gb2Zmc2V0UGFyZW50ICYmIG9mZnNldFBhcmVudC5ub2RlTmFtZTtcblxuICBpZiAoIW5vZGVOYW1lIHx8IG5vZGVOYW1lID09PSAnQk9EWScgfHwgbm9kZU5hbWUgPT09ICdIVE1MJykge1xuICAgIHJldHVybiBzaWJsaW5nID8gc2libGluZy5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCA6IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbiAgfVxuXG4gIC8vIC5vZmZzZXRQYXJlbnQgd2lsbCByZXR1cm4gdGhlIGNsb3Nlc3QgVEgsIFREIG9yIFRBQkxFIGluIGNhc2VcbiAgaWYgKFxuICAgIFsnVEgnLCAnVEQnLCAnVEFCTEUnXS5pbmRleE9mKG9mZnNldFBhcmVudC5ub2RlTmFtZSkgIT09IC0xICYmXG4gICAgZ2V0U3R5bGVDb21wdXRlZFByb3BlcnR5KG9mZnNldFBhcmVudCwgJ3Bvc2l0aW9uJykgPT09ICdzdGF0aWMnXG4gICkge1xuICAgIHJldHVybiBnZXRPZmZzZXRQYXJlbnQob2Zmc2V0UGFyZW50KTtcbiAgfVxuXG4gIHJldHVybiBvZmZzZXRQYXJlbnQ7XG59XG4iXX0=
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { getBoundingClientRect } from './getBoundingClientRect';
|
|
2
|
+
import { getClientRect } from './getClientRect';
|
|
3
|
+
import { getScrollParent } from './getScrollParent';
|
|
4
|
+
import { getStyleComputedProperty } from './getStyleComputedProperty';
|
|
5
|
+
import { includeScroll } from './includeScroll';
|
|
6
|
+
import { isIE as runIsIE } from './isIE';
|
|
7
|
+
export function getOffsetRectRelativeToArbitraryNode(children, parent, fixedPosition = false) {
|
|
8
|
+
const isIE10 = runIsIE(10);
|
|
9
|
+
const isHTML = parent.nodeName === 'HTML';
|
|
10
|
+
const childrenRect = getBoundingClientRect(children);
|
|
11
|
+
const parentRect = getBoundingClientRect(parent);
|
|
12
|
+
const scrollParent = getScrollParent(children);
|
|
13
|
+
const styles = getStyleComputedProperty(parent);
|
|
14
|
+
const borderTopWidth = parseFloat(styles.borderTopWidth);
|
|
15
|
+
const borderLeftWidth = parseFloat(styles.borderLeftWidth);
|
|
16
|
+
// In cases where the parent is fixed, we must ignore negative scroll in offset calc
|
|
17
|
+
if (fixedPosition && isHTML) {
|
|
18
|
+
parentRect.top = Math.max(parentRect.top, 0);
|
|
19
|
+
parentRect.left = Math.max(parentRect.left, 0);
|
|
20
|
+
}
|
|
21
|
+
let offsets = getClientRect({
|
|
22
|
+
top: childrenRect.top - parentRect.top - borderTopWidth,
|
|
23
|
+
left: childrenRect.left - parentRect.left - borderLeftWidth,
|
|
24
|
+
width: childrenRect.width,
|
|
25
|
+
height: childrenRect.height
|
|
26
|
+
});
|
|
27
|
+
offsets.marginTop = 0;
|
|
28
|
+
offsets.marginLeft = 0;
|
|
29
|
+
// Subtract margins of documentElement in case it's being used as parent
|
|
30
|
+
// we do this only on HTML because it's the only element that behaves
|
|
31
|
+
// differently when margins are applied to it. The margins are included in
|
|
32
|
+
// the box of the documentElement, in the other cases not.
|
|
33
|
+
if (!isIE10 && isHTML) {
|
|
34
|
+
const marginTop = parseFloat(styles.marginTop);
|
|
35
|
+
const marginLeft = parseFloat(styles.marginLeft);
|
|
36
|
+
offsets.top -= borderTopWidth - marginTop;
|
|
37
|
+
offsets.bottom -= borderTopWidth - marginTop;
|
|
38
|
+
offsets.left -= borderLeftWidth - marginLeft;
|
|
39
|
+
offsets.right -= borderLeftWidth - marginLeft;
|
|
40
|
+
// Attach marginTop and marginLeft because in some circumstances we may need them
|
|
41
|
+
offsets.marginTop = marginTop;
|
|
42
|
+
offsets.marginLeft = marginLeft;
|
|
43
|
+
}
|
|
44
|
+
if (isIE10 && !fixedPosition
|
|
45
|
+
? parent.contains(scrollParent)
|
|
46
|
+
: parent === scrollParent && scrollParent.nodeName !== 'BODY') {
|
|
47
|
+
offsets = includeScroll(offsets, parent);
|
|
48
|
+
}
|
|
49
|
+
return offsets;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0T2Zmc2V0UmVjdFJlbGF0aXZlVG9BcmJpdHJhcnlOb2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL3dpcy1jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2RhdGVwaWNrZXIvcG9zaXRpb25pbmcvdXRpbHMvZ2V0T2Zmc2V0UmVjdFJlbGF0aXZlVG9BcmJpdHJhcnlOb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxJQUFJLElBQUksT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBR3pDLE1BQU0sVUFBVSxvQ0FBb0MsQ0FDbEQsUUFBcUIsRUFDckIsTUFBbUIsRUFDbkIsYUFBYSxHQUFHLEtBQUs7SUFFckIsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzNCLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxRQUFRLEtBQUssTUFBTSxDQUFDO0lBQzFDLE1BQU0sWUFBWSxHQUFRLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFELE1BQU0sVUFBVSxHQUFRLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RELE1BQU0sWUFBWSxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUUvQyxNQUFNLE1BQU0sR0FBRyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoRCxNQUFNLGNBQWMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3pELE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7SUFFM0Qsb0ZBQW9GO0lBQ3BGLElBQUksYUFBYSxJQUFJLE1BQU0sRUFBRTtRQUMzQixVQUFVLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3QyxVQUFVLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztLQUNoRDtJQUVELElBQUksT0FBTyxHQUFZLGFBQWEsQ0FBQztRQUNuQyxHQUFHLEVBQUUsWUFBWSxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsR0FBRyxHQUFHLGNBQWM7UUFDdkQsSUFBSSxFQUFFLFlBQVksQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDLElBQUksR0FBRyxlQUFlO1FBQzNELEtBQUssRUFBRSxZQUFZLENBQUMsS0FBSztRQUN6QixNQUFNLEVBQUUsWUFBWSxDQUFDLE1BQU07S0FDNUIsQ0FBQyxDQUFDO0lBRUgsT0FBTyxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7SUFDdEIsT0FBTyxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFFdkIsd0VBQXdFO0lBQ3hFLHFFQUFxRTtJQUNyRSwwRUFBMEU7SUFDMUUsMERBQTBEO0lBQzFELElBQUksQ0FBQyxNQUFNLElBQUksTUFBTSxFQUFFO1FBQ3JCLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0MsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVqRCxPQUFPLENBQUMsR0FBRyxJQUFJLGNBQWMsR0FBRyxTQUFTLENBQUM7UUFDMUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxjQUFjLEdBQUcsU0FBUyxDQUFDO1FBQzdDLE9BQU8sQ0FBQyxJQUFJLElBQUksZUFBZSxHQUFHLFVBQVUsQ0FBQztRQUM3QyxPQUFPLENBQUMsS0FBSyxJQUFJLGVBQWUsR0FBRyxVQUFVLENBQUM7UUFFOUMsaUZBQWlGO1FBQ2pGLE9BQU8sQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzlCLE9BQU8sQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0tBQ2pDO0lBRUQsSUFDRSxNQUFNLElBQUksQ0FBQyxhQUFhO1FBQ3RCLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQztRQUMvQixDQUFDLENBQUMsTUFBTSxLQUFLLFlBQVksSUFBSSxZQUFZLENBQUMsUUFBUSxLQUFLLE1BQU0sRUFDL0Q7UUFDQSxPQUFPLEdBQUcsYUFBYSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztLQUMxQztJQUVELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRCb3VuZGluZ0NsaWVudFJlY3QgfSBmcm9tICcuL2dldEJvdW5kaW5nQ2xpZW50UmVjdCc7XG5pbXBvcnQgeyBnZXRDbGllbnRSZWN0IH0gZnJvbSAnLi9nZXRDbGllbnRSZWN0JztcbmltcG9ydCB7IGdldFNjcm9sbFBhcmVudCB9IGZyb20gJy4vZ2V0U2Nyb2xsUGFyZW50JztcbmltcG9ydCB7IGdldFN0eWxlQ29tcHV0ZWRQcm9wZXJ0eSB9IGZyb20gJy4vZ2V0U3R5bGVDb21wdXRlZFByb3BlcnR5JztcbmltcG9ydCB7IGluY2x1ZGVTY3JvbGwgfSBmcm9tICcuL2luY2x1ZGVTY3JvbGwnO1xuaW1wb3J0IHsgaXNJRSBhcyBydW5Jc0lFIH0gZnJvbSAnLi9pc0lFJztcbmltcG9ydCB7IE9mZnNldHMgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0T2Zmc2V0UmVjdFJlbGF0aXZlVG9BcmJpdHJhcnlOb2RlKFxuICBjaGlsZHJlbjogSFRNTEVsZW1lbnQsXG4gIHBhcmVudDogSFRNTEVsZW1lbnQsXG4gIGZpeGVkUG9zaXRpb24gPSBmYWxzZVxuKTogT2Zmc2V0cyB7XG4gIGNvbnN0IGlzSUUxMCA9IHJ1bklzSUUoMTApO1xuICBjb25zdCBpc0hUTUwgPSBwYXJlbnQubm9kZU5hbWUgPT09ICdIVE1MJztcbiAgY29uc3QgY2hpbGRyZW5SZWN0OiBhbnkgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3QoY2hpbGRyZW4pO1xuICBjb25zdCBwYXJlbnRSZWN0OiBhbnkgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3QocGFyZW50KTtcbiAgY29uc3Qgc2Nyb2xsUGFyZW50ID0gZ2V0U2Nyb2xsUGFyZW50KGNoaWxkcmVuKTtcblxuICBjb25zdCBzdHlsZXMgPSBnZXRTdHlsZUNvbXB1dGVkUHJvcGVydHkocGFyZW50KTtcbiAgY29uc3QgYm9yZGVyVG9wV2lkdGggPSBwYXJzZUZsb2F0KHN0eWxlcy5ib3JkZXJUb3BXaWR0aCk7XG4gIGNvbnN0IGJvcmRlckxlZnRXaWR0aCA9IHBhcnNlRmxvYXQoc3R5bGVzLmJvcmRlckxlZnRXaWR0aCk7XG5cbiAgLy8gSW4gY2FzZXMgd2hlcmUgdGhlIHBhcmVudCBpcyBmaXhlZCwgd2UgbXVzdCBpZ25vcmUgbmVnYXRpdmUgc2Nyb2xsIGluIG9mZnNldCBjYWxjXG4gIGlmIChmaXhlZFBvc2l0aW9uICYmIGlzSFRNTCkge1xuICAgIHBhcmVudFJlY3QudG9wID0gTWF0aC5tYXgocGFyZW50UmVjdC50b3AsIDApO1xuICAgIHBhcmVudFJlY3QubGVmdCA9IE1hdGgubWF4KHBhcmVudFJlY3QubGVmdCwgMCk7XG4gIH1cblxuICBsZXQgb2Zmc2V0czogT2Zmc2V0cyA9IGdldENsaWVudFJlY3Qoe1xuICAgIHRvcDogY2hpbGRyZW5SZWN0LnRvcCAtIHBhcmVudFJlY3QudG9wIC0gYm9yZGVyVG9wV2lkdGgsXG4gICAgbGVmdDogY2hpbGRyZW5SZWN0LmxlZnQgLSBwYXJlbnRSZWN0LmxlZnQgLSBib3JkZXJMZWZ0V2lkdGgsXG4gICAgd2lkdGg6IGNoaWxkcmVuUmVjdC53aWR0aCxcbiAgICBoZWlnaHQ6IGNoaWxkcmVuUmVjdC5oZWlnaHRcbiAgfSk7XG5cbiAgb2Zmc2V0cy5tYXJnaW5Ub3AgPSAwO1xuICBvZmZzZXRzLm1hcmdpbkxlZnQgPSAwO1xuXG4gIC8vIFN1YnRyYWN0IG1hcmdpbnMgb2YgZG9jdW1lbnRFbGVtZW50IGluIGNhc2UgaXQncyBiZWluZyB1c2VkIGFzIHBhcmVudFxuICAvLyB3ZSBkbyB0aGlzIG9ubHkgb24gSFRNTCBiZWNhdXNlIGl0J3MgdGhlIG9ubHkgZWxlbWVudCB0aGF0IGJlaGF2ZXNcbiAgLy8gZGlmZmVyZW50bHkgd2hlbiBtYXJnaW5zIGFyZSBhcHBsaWVkIHRvIGl0LiBUaGUgbWFyZ2lucyBhcmUgaW5jbHVkZWQgaW5cbiAgLy8gdGhlIGJveCBvZiB0aGUgZG9jdW1lbnRFbGVtZW50LCBpbiB0aGUgb3RoZXIgY2FzZXMgbm90LlxuICBpZiAoIWlzSUUxMCAmJiBpc0hUTUwpIHtcbiAgICBjb25zdCBtYXJnaW5Ub3AgPSBwYXJzZUZsb2F0KHN0eWxlcy5tYXJnaW5Ub3ApO1xuICAgIGNvbnN0IG1hcmdpbkxlZnQgPSBwYXJzZUZsb2F0KHN0eWxlcy5tYXJnaW5MZWZ0KTtcblxuICAgIG9mZnNldHMudG9wIC09IGJvcmRlclRvcFdpZHRoIC0gbWFyZ2luVG9wO1xuICAgIG9mZnNldHMuYm90dG9tIC09IGJvcmRlclRvcFdpZHRoIC0gbWFyZ2luVG9wO1xuICAgIG9mZnNldHMubGVmdCAtPSBib3JkZXJMZWZ0V2lkdGggLSBtYXJnaW5MZWZ0O1xuICAgIG9mZnNldHMucmlnaHQgLT0gYm9yZGVyTGVmdFdpZHRoIC0gbWFyZ2luTGVmdDtcblxuICAgIC8vIEF0dGFjaCBtYXJnaW5Ub3AgYW5kIG1hcmdpbkxlZnQgYmVjYXVzZSBpbiBzb21lIGNpcmN1bXN0YW5jZXMgd2UgbWF5IG5lZWQgdGhlbVxuICAgIG9mZnNldHMubWFyZ2luVG9wID0gbWFyZ2luVG9wO1xuICAgIG9mZnNldHMubWFyZ2luTGVmdCA9IG1hcmdpbkxlZnQ7XG4gIH1cblxuICBpZiAoXG4gICAgaXNJRTEwICYmICFmaXhlZFBvc2l0aW9uXG4gICAgICA/IHBhcmVudC5jb250YWlucyhzY3JvbGxQYXJlbnQpXG4gICAgICA6IHBhcmVudCA9PT0gc2Nyb2xsUGFyZW50ICYmIHNjcm9sbFBhcmVudC5ub2RlTmFtZSAhPT0gJ0JPRFknXG4gICkge1xuICAgIG9mZnNldHMgPSBpbmNsdWRlU2Nyb2xsKG9mZnNldHMsIHBhcmVudCk7XG4gIH1cblxuICByZXR1cm4gb2Zmc2V0cztcbn1cbiJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export function getOffsets(data) {
|
|
2
|
+
return {
|
|
3
|
+
width: data.offsets.target.width,
|
|
4
|
+
height: data.offsets.target.height,
|
|
5
|
+
left: Math.floor(data.offsets.target.left),
|
|
6
|
+
top: Math.round(data.offsets.target.top),
|
|
7
|
+
bottom: Math.round(data.offsets.target.bottom),
|
|
8
|
+
right: Math.floor(data.offsets.target.right)
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0T2Zmc2V0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy93aXMtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9kYXRlcGlja2VyL3Bvc2l0aW9uaW5nL3V0aWxzL2dldE9mZnNldHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLFVBQVUsQ0FBQyxJQUFVO0lBQ25DLE9BQU87UUFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSztRQUNoQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTTtRQUNsQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDMUMsR0FBRyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM5QyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7S0FDN0MsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhLCBPZmZzZXRzIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldE9mZnNldHMoZGF0YTogRGF0YSk6IE9mZnNldHMge1xuICByZXR1cm4ge1xuICAgIHdpZHRoOiBkYXRhLm9mZnNldHMudGFyZ2V0LndpZHRoLFxuICAgIGhlaWdodDogZGF0YS5vZmZzZXRzLnRhcmdldC5oZWlnaHQsXG4gICAgbGVmdDogTWF0aC5mbG9vcihkYXRhLm9mZnNldHMudGFyZ2V0LmxlZnQpLFxuICAgIHRvcDogTWF0aC5yb3VuZChkYXRhLm9mZnNldHMudGFyZ2V0LnRvcCksXG4gICAgYm90dG9tOiBNYXRoLnJvdW5kKGRhdGEub2Zmc2V0cy50YXJnZXQuYm90dG9tKSxcbiAgICByaWdodDogTWF0aC5mbG9vcihkYXRhLm9mZnNldHMudGFyZ2V0LnJpZ2h0KVxuICB9O1xufVxuIl19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the opposite placement of the given one
|
|
3
|
+
*/
|
|
4
|
+
export function getOppositePlacement(placement) {
|
|
5
|
+
const hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };
|
|
6
|
+
return placement.replace(/left|right|bottom|top/g, matched => hash[matched]);
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0T3Bwb3NpdGVQbGFjZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvd2lzLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvZGF0ZXBpY2tlci9wb3NpdGlvbmluZy91dGlscy9nZXRPcHBvc2l0ZVBsYWNlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxTQUFpQjtJQUNwRCxNQUFNLElBQUksR0FBRyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsQ0FBQztJQUU1RSxPQUFPLFNBQVMsQ0FBQyxPQUFPLENBQUMsd0JBQXdCLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBRSxJQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztBQUN4RixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZXQgdGhlIG9wcG9zaXRlIHBsYWNlbWVudCBvZiB0aGUgZ2l2ZW4gb25lXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHBvc2l0ZVBsYWNlbWVudChwbGFjZW1lbnQ6IHN0cmluZykge1xuICBjb25zdCBoYXNoID0geyBsZWZ0OiAncmlnaHQnLCByaWdodDogJ2xlZnQnLCBib3R0b206ICd0b3AnLCB0b3A6ICdib3R0b20nIH07XG5cbiAgcmV0dXJuIHBsYWNlbWVudC5yZXBsYWNlKC9sZWZ0fHJpZ2h0fGJvdHRvbXx0b3AvZywgbWF0Y2hlZCA9PiAoaGFzaCBhcyBhbnkpW21hdGNoZWRdKTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the opposite placement variation of the given one
|
|
3
|
+
*/
|
|
4
|
+
export function getOppositeVariation(variation) {
|
|
5
|
+
if (variation === 'right') {
|
|
6
|
+
return 'left';
|
|
7
|
+
}
|
|
8
|
+
else if (variation === 'left') {
|
|
9
|
+
return 'right';
|
|
10
|
+
}
|
|
11
|
+
return variation;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0T3Bwb3NpdGVWYXJpYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvd2lzLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvZGF0ZXBpY2tlci9wb3NpdGlvbmluZy91dGlscy9nZXRPcHBvc2l0ZVZhcmlhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxTQUFpQjtJQUNwRCxJQUFJLFNBQVMsS0FBSyxPQUFPLEVBQUU7UUFDekIsT0FBTyxNQUFNLENBQUM7S0FDZjtTQUFNLElBQUksU0FBUyxLQUFLLE1BQU0sRUFBRTtRQUMvQixPQUFPLE9BQU8sQ0FBQztLQUNoQjtJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdldCB0aGUgb3Bwb3NpdGUgcGxhY2VtZW50IHZhcmlhdGlvbiBvZiB0aGUgZ2l2ZW4gb25lXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHBvc2l0ZVZhcmlhdGlvbih2YXJpYXRpb246IHN0cmluZykge1xuICBpZiAodmFyaWF0aW9uID09PSAncmlnaHQnKSB7XG4gICAgcmV0dXJuICdsZWZ0JztcbiAgfSBlbHNlIGlmICh2YXJpYXRpb24gPT09ICdsZWZ0Jykge1xuICAgIHJldHVybiAncmlnaHQnO1xuICB9XG5cbiAgcmV0dXJuIHZhcmlhdGlvbjtcbn1cbiJdfQ==
|