@sima-land/ui-nucleons 45.0.0-alpha.2 → 45.0.0-alpha.21
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 +138 -0
- package/_internal/custom-scrollbar/custom-scrollbar.d.ts +13 -0
- package/_internal/custom-scrollbar/custom-scrollbar.js +86 -0
- package/_internal/custom-scrollbar/custom-scrollbar.js.map +1 -0
- package/_internal/custom-scrollbar/custom-scrollbar.m.scss +49 -0
- package/_internal/custom-scrollbar/index.d.ts +2 -42
- package/_internal/custom-scrollbar/index.js +4 -51
- package/_internal/custom-scrollbar/index.js.map +1 -0
- package/_internal/custom-scrollbar/types.d.ts +18 -0
- package/{hooks/breakpoint → _internal/custom-scrollbar}/types.js +1 -0
- package/_internal/custom-scrollbar/types.js.map +1 -0
- package/_internal/lifecycle/index.d.ts +11 -0
- package/_internal/lifecycle/index.js +22 -0
- package/_internal/lifecycle/index.js.map +1 -0
- package/_internal/page-scroll-lock/adapters/body-scroll-lock.d.ts +7 -4
- package/_internal/page-scroll-lock/adapters/body-scroll-lock.js +11 -4
- package/_internal/page-scroll-lock/adapters/body-scroll-lock.js.map +1 -0
- package/_internal/page-scroll-lock/adapters/ui-nucleons.d.ts +30 -5
- package/_internal/page-scroll-lock/adapters/ui-nucleons.js +11 -7
- package/_internal/page-scroll-lock/adapters/ui-nucleons.js.map +1 -0
- package/_internal/page-scroll-lock/context.d.ts +2 -13
- package/_internal/page-scroll-lock/context.js +6 -51
- package/_internal/page-scroll-lock/context.js.map +1 -0
- package/_internal/page-scroll-lock/hook.d.ts +1 -1
- package/_internal/page-scroll-lock/hook.js +9 -7
- package/_internal/page-scroll-lock/hook.js.map +1 -0
- package/_internal/page-scroll-lock/index.d.ts +4 -3
- package/_internal/page-scroll-lock/index.js +8 -4
- package/_internal/page-scroll-lock/index.js.map +1 -0
- package/_internal/page-scroll-lock/types.js +1 -0
- package/_internal/page-scroll-lock/types.js.map +1 -0
- package/alert/alert-body.d.ts +7 -0
- package/alert/alert-body.js +24 -0
- package/alert/alert-body.js.map +1 -0
- package/alert/alert-body.m.scss +3 -0
- package/alert/alert.d.ts +8 -0
- package/alert/alert.js +33 -0
- package/alert/alert.js.map +1 -0
- package/alert/index.d.ts +3 -21
- package/alert/index.js +5 -68
- package/alert/index.js.map +1 -0
- package/alert/types.d.ts +10 -0
- package/alert/types.js +3 -0
- package/alert/types.js.map +1 -0
- package/arrow-button/arrow-button.d.ts +7 -0
- package/arrow-button/arrow-button.js +42 -0
- package/arrow-button/arrow-button.js.map +1 -0
- package/arrow-button/{arrow-button.module.scss → arrow-button.m.scss} +8 -5
- package/arrow-button/index.d.ts +2 -17
- package/arrow-button/index.js +3 -52
- package/arrow-button/index.js.map +1 -0
- package/arrow-button/types.d.ts +10 -0
- package/arrow-button/types.js +3 -0
- package/arrow-button/types.js.map +1 -0
- package/autocomplete/autocomplete.d.ts +1 -2
- package/autocomplete/autocomplete.js +116 -112
- package/autocomplete/autocomplete.js.map +1 -0
- package/autocomplete/index.js +1 -0
- package/autocomplete/index.js.map +1 -0
- package/autocomplete/menu.d.ts +8 -0
- package/autocomplete/menu.js +20 -0
- package/autocomplete/menu.js.map +1 -0
- package/autocomplete/types.d.ts +15 -6
- package/autocomplete/types.js +1 -0
- package/autocomplete/types.js.map +1 -0
- package/autocomplete/utils.d.ts +36 -0
- package/autocomplete/utils.js +65 -0
- package/autocomplete/utils.js.map +1 -0
- package/avatar/avatar.d.ts +7 -0
- package/avatar/avatar.js +25 -0
- package/avatar/avatar.js.map +1 -0
- package/avatar/avatar.m.scss +52 -0
- package/avatar/index.d.ts +3 -30
- package/avatar/index.js +9 -63
- package/avatar/index.js.map +1 -0
- package/avatar/types.d.ts +19 -0
- package/avatar/types.js +3 -0
- package/avatar/types.js.map +1 -0
- package/avatar/utils.d.ts +28 -4
- package/avatar/utils.js +79 -15
- package/avatar/utils.js.map +1 -0
- package/avatar/utils.m.scss +10 -0
- package/base-input/base-input.d.ts +2 -3
- package/base-input/base-input.js +15 -55
- package/base-input/base-input.js.map +1 -0
- package/base-input/{base-input.module.scss → base-input.m.scss} +18 -6
- package/base-input/index.js +1 -0
- package/base-input/index.js.map +1 -0
- package/base-input/types.d.ts +7 -6
- package/base-input/types.js +1 -0
- package/base-input/types.js.map +1 -0
- package/base-input/utils.js +3 -3
- package/base-input/utils.js.map +1 -0
- package/bottom-bar/bottom-bar.d.ts +2 -3
- package/bottom-bar/bottom-bar.js +11 -24
- package/bottom-bar/bottom-bar.js.map +1 -0
- package/bottom-bar/{bottom-bar.module.scss → bottom-bar.m.scss} +12 -1
- package/bottom-bar/index.d.ts +1 -1
- package/bottom-bar/index.js +1 -0
- package/bottom-bar/index.js.map +1 -0
- package/bottom-bar/types.d.ts +10 -4
- package/bottom-bar/types.js +1 -0
- package/bottom-bar/types.js.map +1 -0
- package/box/box.d.ts +8 -0
- package/box/box.js +159 -0
- package/box/box.js.map +1 -0
- package/box/index.d.ts +2 -66
- package/box/index.js +3 -154
- package/box/index.js.map +1 -0
- package/box/types.d.ts +60 -0
- package/box/types.js +3 -0
- package/box/types.js.map +1 -0
- package/breakpoints.scss +6 -2
- package/button/button-util.scss +55 -0
- package/button/button.d.ts +7 -0
- package/button/button.js +54 -0
- package/button/button.js.map +1 -0
- package/button/{button.module.scss → button.m.scss} +23 -26
- package/button/index.d.ts +2 -40
- package/button/index.js +3 -69
- package/button/index.js.map +1 -0
- package/button/types.d.ts +43 -0
- package/button/types.js +3 -0
- package/button/types.js.map +1 -0
- package/carousel/carousel.d.ts +262 -0
- package/carousel/carousel.js +628 -0
- package/carousel/carousel.js.map +1 -0
- package/carousel/{carousel.module.scss → carousel.m.scss} +1 -0
- package/carousel/draggable.d.ts +8 -11
- package/carousel/draggable.js +36 -52
- package/carousel/draggable.js.map +1 -0
- package/carousel/helpers/draggable-event.d.ts +1 -4
- package/carousel/helpers/draggable-event.js +4 -4
- package/carousel/helpers/draggable-event.js.map +1 -0
- package/carousel/index.d.ts +2 -311
- package/carousel/index.js +3 -628
- package/carousel/index.js.map +1 -0
- package/carousel/types.d.ts +51 -0
- package/carousel/types.js +3 -0
- package/carousel/types.js.map +1 -0
- package/checkbox/checkbox.d.ts +4 -0
- package/checkbox/checkbox.js +19 -0
- package/checkbox/checkbox.js.map +1 -0
- package/checkbox/index.d.ts +2 -7
- package/checkbox/index.js +3 -55
- package/checkbox/index.js.map +1 -0
- package/checkbox/types.d.ts +2 -0
- package/checkbox/types.js +3 -0
- package/checkbox/types.js.map +1 -0
- package/chip/chip-util.scss +53 -0
- package/chip/chip.d.ts +14 -0
- package/chip/chip.js +38 -0
- package/chip/chip.js.map +1 -0
- package/chip/chip.m.scss +154 -0
- package/chip/index.d.ts +3 -0
- package/chip/index.js +9 -0
- package/chip/index.js.map +1 -0
- package/chip/types.d.ts +53 -0
- package/chip/types.js +3 -0
- package/chip/types.js.map +1 -0
- package/chip/utils.d.ts +9 -0
- package/chip/utils.js +22 -0
- package/chip/utils.js.map +1 -0
- package/clean-buttons/clean-button.d.ts +7 -0
- package/clean-buttons/clean-button.js +24 -0
- package/clean-buttons/clean-button.js.map +1 -0
- package/clean-buttons/{clean-buttons.module.scss → clean-button.m.scss} +0 -16
- package/clean-buttons/clean-group.d.ts +8 -0
- package/clean-buttons/clean-group.js +25 -0
- package/clean-buttons/clean-group.js.map +1 -0
- package/clean-buttons/clean-group.m.scss +16 -0
- package/clean-buttons/index.d.ts +3 -33
- package/clean-buttons/index.js +6 -72
- package/clean-buttons/index.js.map +1 -0
- package/clean-buttons/types.d.ts +13 -0
- package/clean-buttons/types.js +1 -0
- package/clean-buttons/types.js.map +1 -0
- package/clean-buttons/utils.d.ts +2 -3
- package/clean-buttons/utils.js +3 -2
- package/clean-buttons/utils.js.map +1 -0
- package/colors/index.d.ts +8 -4
- package/colors/index.js +9 -3
- package/colors/index.js.map +1 -0
- package/colors.scss +50 -0
- package/context/index.d.ts +9 -0
- package/context/index.js +26 -0
- package/context/index.js.map +1 -0
- package/context/viewport.js +1 -0
- package/context/viewport.js.map +1 -0
- package/dot-nav/dot-nav.d.ts +7 -0
- package/dot-nav/dot-nav.js +61 -0
- package/dot-nav/dot-nav.js.map +1 -0
- package/dot-nav/{dot-nav.module.scss → dot-nav.m.scss} +3 -1
- package/dot-nav/index.d.ts +2 -18
- package/dot-nav/index.js +3 -79
- package/dot-nav/index.js.map +1 -0
- package/dot-nav/types.d.ts +11 -0
- package/dot-nav/types.js +3 -0
- package/dot-nav/types.js.map +1 -0
- package/dropdown/dropdown-loading.d.ts +7 -0
- package/dropdown/dropdown-loading.js +20 -0
- package/dropdown/dropdown-loading.js.map +1 -0
- package/dropdown/dropdown.d.ts +7 -0
- package/dropdown/dropdown.js +20 -0
- package/dropdown/dropdown.js.map +1 -0
- package/dropdown/{dropdown.module.scss → dropdown.m.scss} +6 -2
- package/dropdown/index.d.ts +4 -18
- package/dropdown/index.js +10 -53
- package/dropdown/index.js.map +1 -0
- package/dropdown/types.d.ts +16 -0
- package/dropdown/types.js +3 -0
- package/dropdown/types.js.map +1 -0
- package/dropdown/utils.d.ts +16 -5
- package/dropdown/utils.js +66 -19
- package/dropdown/utils.js.map +1 -0
- package/dropdown-item/dropdown-item.d.ts +8 -0
- package/dropdown-item/dropdown-item.js +23 -0
- package/dropdown-item/dropdown-item.js.map +1 -0
- package/dropdown-item/index.d.ts +2 -34
- package/dropdown-item/index.js +3 -36
- package/dropdown-item/index.js.map +1 -0
- package/dropdown-item/types.d.ts +28 -3
- package/dropdown-item/types.js +1 -0
- package/dropdown-item/types.js.map +1 -0
- package/dropdown-item/utils.d.ts +1 -2
- package/dropdown-item/utils.js +5 -2
- package/dropdown-item/utils.js.map +1 -0
- package/expandable/expandable-group.d.ts +12 -0
- package/expandable/expandable-group.js +114 -0
- package/expandable/expandable-group.js.map +1 -0
- package/expandable/{expandable-group.module.scss → expandable-group.m.scss} +1 -5
- package/expandable/index.d.ts +2 -42
- package/expandable/index.js +6 -83
- package/expandable/index.js.map +1 -0
- package/expandable/types.d.ts +39 -0
- package/expandable/types.js +3 -0
- package/expandable/types.js.map +1 -0
- package/expandable/utils.d.ts +22 -23
- package/expandable/utils.js +75 -79
- package/expandable/utils.js.map +1 -0
- package/field-block/field-block.d.ts +11 -0
- package/field-block/field-block.js +37 -0
- package/field-block/field-block.js.map +1 -0
- package/field-block/{field-block.module.scss → field-block.m.scss} +6 -1
- package/field-block/index.d.ts +2 -63
- package/field-block/index.js +6 -41
- package/field-block/index.js.map +1 -0
- package/field-block/types.d.ts +52 -0
- package/field-block/types.js +3 -0
- package/field-block/types.js.map +1 -0
- package/file-icon/file-icon.d.ts +7 -0
- package/file-icon/file-icon.js +35 -0
- package/file-icon/file-icon.js.map +1 -0
- package/file-icon/file-icon.m.scss +62 -0
- package/file-icon/index.d.ts +2 -11
- package/file-icon/index.js +3 -40
- package/file-icon/index.js.map +1 -0
- package/file-icon/types.d.ts +12 -0
- package/file-icon/types.js +3 -0
- package/file-icon/types.js.map +1 -0
- package/gradients/index.d.ts +13 -0
- package/gradients/index.js +18 -0
- package/gradients/index.js.map +1 -0
- package/gradients.scss +23 -0
- package/group-overflow/group-overflow.d.ts +7 -0
- package/group-overflow/group-overflow.js +27 -0
- package/group-overflow/group-overflow.js.map +1 -0
- package/group-overflow/group-overflow.m.scss +24 -0
- package/group-overflow/index.d.ts +2 -0
- package/group-overflow/index.js +6 -0
- package/group-overflow/index.js.map +1 -0
- package/group-overflow/types.d.ts +10 -0
- package/group-overflow/types.js +3 -0
- package/group-overflow/types.js.map +1 -0
- package/group-overflow/utils.d.ts +20 -0
- package/group-overflow/utils.js +74 -0
- package/group-overflow/utils.js.map +1 -0
- package/helpers/bounds-of.d.ts +0 -4
- package/helpers/bounds-of.js +2 -6
- package/helpers/bounds-of.js.map +1 -0
- package/helpers/center-of.d.ts +0 -4
- package/helpers/center-of.js +4 -11
- package/helpers/center-of.js.map +1 -0
- package/helpers/create-container.d.ts +1 -4
- package/helpers/create-container.js +3 -7
- package/helpers/create-container.js.map +1 -0
- package/helpers/define-slots.d.ts +4 -4
- package/helpers/define-slots.js +2 -2
- package/helpers/define-slots.js.map +1 -0
- package/helpers/events.d.ts +3 -3
- package/helpers/events.js +9 -10
- package/helpers/events.js.map +1 -0
- package/helpers/{find-child-element.d.ts → find-child-index.d.ts} +0 -4
- package/helpers/{find-child-element.js → find-child-index.js} +2 -6
- package/helpers/find-child-index.js.map +1 -0
- package/helpers/find-offset-parent.js +2 -2
- package/helpers/find-offset-parent.js.map +1 -0
- package/helpers/find-sibling-index.d.ts +3 -7
- package/helpers/find-sibling-index.js +7 -12
- package/helpers/find-sibling-index.js.map +1 -0
- package/helpers/fit-element-height.js +2 -2
- package/helpers/fit-element-height.js.map +1 -0
- package/helpers/format-date.d.ts +2 -7
- package/helpers/format-date.js +14 -17
- package/helpers/format-date.js.map +1 -0
- package/helpers/get-date-interval-data.d.ts +0 -4
- package/helpers/get-date-interval-data.js +18 -25
- package/helpers/get-date-interval-data.js.map +1 -0
- package/helpers/get-declination.d.ts +0 -4
- package/helpers/get-declination.js +2 -6
- package/helpers/get-declination.js.map +1 -0
- package/helpers/get-fraction-depth.js +2 -2
- package/helpers/get-fraction-depth.js.map +1 -0
- package/helpers/get-positioned-parent-offset.d.ts +15 -0
- package/helpers/get-positioned-parent-offset.js +40 -0
- package/helpers/get-positioned-parent-offset.js.map +1 -0
- package/helpers/get-relative-pos.d.ts +0 -4
- package/helpers/get-relative-pos.js +5 -9
- package/helpers/get-relative-pos.js.map +1 -0
- package/helpers/get-scroll-parent.js +2 -2
- package/helpers/get-scroll-parent.js.map +1 -0
- package/helpers/index.d.ts +14 -0
- package/helpers/index.js +35 -0
- package/helpers/index.js.map +1 -0
- package/helpers/is-browser.d.ts +0 -4
- package/helpers/is-browser.js +2 -6
- package/helpers/is-browser.js.map +1 -0
- package/helpers/is-fully-scrolled.js +2 -2
- package/helpers/is-fully-scrolled.js.map +1 -0
- package/helpers/is-touch-device.js +2 -2
- package/helpers/is-touch-device.js.map +1 -0
- package/helpers/layer.d.ts +0 -1
- package/helpers/layer.js +3 -2
- package/helpers/layer.js.map +1 -0
- package/helpers/max-index-of.d.ts +0 -4
- package/helpers/max-index-of.js +2 -6
- package/helpers/max-index-of.js.map +1 -0
- package/helpers/media-query-list.js +2 -2
- package/helpers/media-query-list.js.map +1 -0
- package/helpers/merge-refs.d.ts +8 -0
- package/helpers/merge-refs.js +22 -0
- package/helpers/merge-refs.js.map +1 -0
- package/helpers/on.d.ts +2 -6
- package/helpers/on.js +8 -10
- package/helpers/on.js.map +1 -0
- package/helpers/point.d.ts +0 -4
- package/helpers/point.js +3 -6
- package/helpers/point.js.map +1 -0
- package/helpers/scroll-to-child.js +4 -8
- package/helpers/scroll-to-child.js.map +1 -0
- package/helpers/styles.d.ts +2 -6
- package/helpers/styles.js +5 -14
- package/helpers/styles.js.map +1 -0
- package/hint/hint-view.d.ts +2 -2
- package/hint/hint-view.js +10 -22
- package/hint/hint-view.js.map +1 -0
- package/hint/hint.d.ts +1 -1
- package/hint/hint.js +10 -25
- package/hint/hint.js.map +1 -0
- package/hint/index.js +1 -0
- package/hint/index.js.map +1 -0
- package/hint/utils.d.ts +11 -15
- package/hint/utils.js +49 -27
- package/hint/utils.js.map +1 -0
- package/hooks/index.d.ts +9 -29
- package/hooks/index.js +21 -76
- package/hooks/index.js.map +1 -0
- package/hooks/{breakpoint → use-breakpoint}/index.d.ts +1 -1
- package/hooks/{breakpoint → use-breakpoint}/index.js +12 -34
- package/hooks/use-breakpoint/index.js.map +1 -0
- package/hooks/use-breakpoint/types.js +3 -0
- package/hooks/use-breakpoint/types.js.map +1 -0
- package/hooks/{breakpoint → use-breakpoint}/utils.d.ts +3 -1
- package/hooks/{breakpoint → use-breakpoint}/utils.js +8 -8
- package/hooks/use-breakpoint/utils.js.map +1 -0
- package/hooks/{identity.d.ts → use-identity-ref/index.d.ts} +1 -2
- package/hooks/{identity.js → use-identity-ref/index.js} +4 -4
- package/hooks/use-identity-ref/index.js.map +1 -0
- package/hooks/use-infinite-scroll/index.d.ts +13 -0
- package/hooks/use-infinite-scroll/index.js +29 -0
- package/hooks/use-infinite-scroll/index.js.map +1 -0
- package/hooks/{intersection/readme.md → use-intersection/README.md} +5 -5
- package/hooks/{intersection → use-intersection}/index.js +9 -8
- package/hooks/use-intersection/index.js.map +1 -0
- package/hooks/{intersection → use-intersection}/test-utils.d.ts +6 -0
- package/hooks/{intersection → use-intersection}/test-utils.js +22 -9
- package/hooks/use-intersection/test-utils.js.map +1 -0
- package/hooks/use-is-touch-device/index.d.ts +5 -0
- package/hooks/use-is-touch-device/index.js +17 -0
- package/hooks/use-is-touch-device/index.js.map +1 -0
- package/hooks/use-isomorphic-layout-effect/index.d.ts +6 -0
- package/hooks/use-isomorphic-layout-effect/index.js +10 -0
- package/hooks/use-isomorphic-layout-effect/index.js.map +1 -0
- package/hooks/{keydown.js → use-keydown/index.js} +6 -6
- package/hooks/use-keydown/index.js.map +1 -0
- package/hooks/{media.d.ts → use-media/index.d.ts} +1 -1
- package/hooks/{media.js → use-media/index.js} +11 -8
- package/hooks/use-media/index.js.map +1 -0
- package/hooks/use-outside-click/index.d.ts +7 -0
- package/hooks/use-outside-click/index.js +35 -0
- package/hooks/use-outside-click/index.js.map +1 -0
- package/info-text/index.d.ts +2 -23
- package/info-text/index.js +3 -57
- package/info-text/index.js.map +1 -0
- package/info-text/info-text.d.ts +8 -0
- package/info-text/info-text.js +33 -0
- package/info-text/info-text.js.map +1 -0
- package/info-text/{info-text.module.scss → info-text.m.scss} +3 -0
- package/info-text/types.d.ts +16 -0
- package/info-text/types.js +3 -0
- package/info-text/types.js.map +1 -0
- package/input/index.d.ts +2 -32
- package/input/index.js +3 -93
- package/input/index.js.map +1 -0
- package/input/input.d.ts +7 -0
- package/input/input.js +72 -0
- package/input/input.js.map +1 -0
- package/input/input.m.scss +27 -0
- package/input/types.d.ts +26 -0
- package/input/types.js +3 -0
- package/input/types.js.map +1 -0
- package/input/utils.js +7 -8
- package/input/utils.js.map +1 -0
- package/layout/index.js +1 -0
- package/layout/index.js.map +1 -0
- package/layout/layout.d.ts +2 -5
- package/layout/layout.js +8 -20
- package/layout/layout.js.map +1 -0
- package/layout/layout.m.scss +87 -0
- package/layout/legacy.d.ts +6 -7
- package/layout/legacy.js +6 -41
- package/layout/legacy.js.map +1 -0
- package/layout/types.d.ts +4 -2
- package/layout/types.js +1 -0
- package/layout/types.js.map +1 -0
- package/link/index.d.ts +2 -24
- package/link/index.js +3 -65
- package/link/index.js.map +1 -0
- package/link/link.d.ts +8 -0
- package/link/link.js +27 -0
- package/link/link.js.map +1 -0
- package/link/types.d.ts +14 -0
- package/link/types.js +3 -0
- package/link/types.js.map +1 -0
- package/masked-input/index.d.ts +3 -5
- package/masked-input/index.js +4 -3
- package/masked-input/index.js.map +1 -0
- package/masked-input/masked-input.d.ts +1 -2
- package/masked-input/masked-input.js +42 -53
- package/masked-input/masked-input.js.map +1 -0
- package/masked-input/types.d.ts +7 -6
- package/masked-input/types.js +1 -0
- package/masked-input/types.js.map +1 -0
- package/masked-input/use-input-mask.d.ts +9 -0
- package/masked-input/use-input-mask.js +64 -0
- package/masked-input/use-input-mask.js.map +1 -0
- package/masked-input/utils.d.ts +1 -1
- package/masked-input/utils.js +29 -25
- package/masked-input/utils.js.map +1 -0
- package/modal/index.d.ts +4 -30
- package/modal/index.js +10 -52
- package/modal/index.js.map +1 -0
- package/modal/modal-util.scss +45 -0
- package/modal/modal.d.ts +7 -0
- package/modal/modal.js +30 -0
- package/modal/modal.js.map +1 -0
- package/modal/modal.m.scss +79 -0
- package/modal/slots.d.ts +8 -25
- package/modal/slots.js +21 -75
- package/modal/slots.js.map +1 -0
- package/modal/types.d.ts +37 -0
- package/modal/types.js +3 -0
- package/modal/types.js.map +1 -0
- package/modal/utils.d.ts +9 -8
- package/modal/utils.js +27 -3
- package/modal/utils.js.map +1 -0
- package/modal/utils.m.scss +45 -0
- package/modal-overlay/index.d.ts +3 -13
- package/modal-overlay/index.js +7 -58
- package/modal-overlay/index.js.map +1 -0
- package/modal-overlay/modal-overlay.d.ts +7 -0
- package/modal-overlay/modal-overlay.js +29 -0
- package/modal-overlay/modal-overlay.js.map +1 -0
- package/modal-overlay/types.d.ts +7 -0
- package/modal-overlay/types.js +3 -0
- package/modal-overlay/types.js.map +1 -0
- package/modal-overlay/utils.d.ts +11 -3
- package/modal-overlay/utils.js +52 -6
- package/modal-overlay/utils.js.map +1 -0
- package/no-index/index.d.ts +4 -11
- package/no-index/index.js +9 -16
- package/no-index/index.js.map +1 -0
- package/no-index/no-index-mark.d.ts +7 -0
- package/no-index/no-index-mark.js +15 -0
- package/no-index/no-index-mark.js.map +1 -0
- package/no-index/no-index.d.ts +7 -0
- package/no-index/no-index.js +14 -0
- package/no-index/no-index.js.map +1 -0
- package/no-index/types.d.ts +9 -0
- package/no-index/types.js +3 -0
- package/no-index/types.js.map +1 -0
- package/no-index/utils.d.ts +13 -0
- package/no-index/utils.js +28 -0
- package/no-index/utils.js.map +1 -0
- package/package.json +33 -64
- package/pagination/index.d.ts +4 -20
- package/pagination/index.js +10 -15
- package/pagination/index.js.map +1 -0
- package/pagination/pagination-item.d.ts +7 -0
- package/pagination/pagination-item.js +19 -0
- package/pagination/pagination-item.js.map +1 -0
- package/pagination/pagination-item.m.scss +49 -0
- package/pagination/pagination.d.ts +7 -0
- package/pagination/pagination.js +96 -0
- package/pagination/pagination.js.map +1 -0
- package/pagination/pagination.m.scss +21 -0
- package/pagination/types.d.ts +28 -0
- package/pagination/types.js +3 -0
- package/pagination/types.js.map +1 -0
- package/pagination/utils.d.ts +25 -41
- package/pagination/utils.js +50 -85
- package/pagination/utils.js.map +1 -0
- package/panel/index.d.ts +2 -38
- package/panel/index.js +6 -56
- package/panel/index.js.map +1 -0
- package/panel/panel.d.ts +20 -0
- package/panel/panel.js +57 -0
- package/panel/panel.js.map +1 -0
- package/panel/types.d.ts +17 -0
- package/panel/types.js +3 -0
- package/panel/types.js.map +1 -0
- package/phone-input/images/armenia.d.ts +2 -0
- package/phone-input/images/armenia.js +5 -0
- package/phone-input/images/armenia.js.map +1 -0
- package/phone-input/images/armenia.png +0 -0
- package/phone-input/images/azerbaijan.d.ts +2 -0
- package/phone-input/images/azerbaijan.js +5 -0
- package/phone-input/images/azerbaijan.js.map +1 -0
- package/phone-input/images/azerbaijan.png +0 -0
- package/phone-input/images/belarus.d.ts +2 -0
- package/phone-input/images/belarus.js +5 -0
- package/phone-input/images/belarus.js.map +1 -0
- package/phone-input/images/belarus.png +0 -0
- package/phone-input/images/georgia.d.ts +2 -0
- package/phone-input/images/georgia.js +5 -0
- package/phone-input/images/georgia.js.map +1 -0
- package/phone-input/images/georgia.png +0 -0
- package/phone-input/images/kazakhstan.d.ts +2 -0
- package/phone-input/images/kazakhstan.js +5 -0
- package/phone-input/images/kazakhstan.js.map +1 -0
- package/phone-input/images/kazakhstan.png +0 -0
- package/phone-input/images/kyrgyzstan.d.ts +2 -0
- package/phone-input/images/kyrgyzstan.js +5 -0
- package/phone-input/images/kyrgyzstan.js.map +1 -0
- package/phone-input/images/kyrgyzstan.png +0 -0
- package/phone-input/images/moldova.d.ts +2 -0
- package/phone-input/images/moldova.js +5 -0
- package/phone-input/images/moldova.js.map +1 -0
- package/phone-input/images/moldova.png +0 -0
- package/phone-input/images/other.d.ts +2 -0
- package/phone-input/images/other.js +5 -0
- package/phone-input/images/other.js.map +1 -0
- package/phone-input/images/other.png +0 -0
- package/phone-input/images/russia.d.ts +2 -0
- package/phone-input/images/russia.js +5 -0
- package/phone-input/images/russia.js.map +1 -0
- package/phone-input/images/russia.png +0 -0
- package/phone-input/images/tajikistan.d.ts +2 -0
- package/phone-input/images/tajikistan.js +5 -0
- package/phone-input/images/tajikistan.js.map +1 -0
- package/phone-input/images/tajikistan.png +0 -0
- package/phone-input/images/turkmenistan.d.ts +2 -0
- package/phone-input/images/turkmenistan.js +5 -0
- package/phone-input/images/turkmenistan.js.map +1 -0
- package/phone-input/images/turkmenistan.png +0 -0
- package/phone-input/images/ukraine.d.ts +2 -0
- package/phone-input/images/ukraine.js +5 -0
- package/phone-input/images/ukraine.js.map +1 -0
- package/phone-input/images/ukraine.png +0 -0
- package/phone-input/images/uzbekistan.d.ts +2 -0
- package/phone-input/images/uzbekistan.js +5 -0
- package/phone-input/images/uzbekistan.js.map +1 -0
- package/phone-input/images/uzbekistan.png +0 -0
- package/phone-input/index.d.ts +2 -4
- package/phone-input/index.js +2 -1
- package/phone-input/index.js.map +1 -0
- package/phone-input/menu-opener.d.ts +14 -0
- package/phone-input/menu-opener.js +22 -0
- package/phone-input/menu-opener.js.map +1 -0
- package/phone-input/{phone-input.module.scss → menu-opener.m.scss} +4 -3
- package/phone-input/phone-input.d.ts +2 -3
- package/phone-input/phone-input.js +106 -104
- package/phone-input/phone-input.js.map +1 -0
- package/phone-input/phone-input.m.scss +9 -0
- package/phone-input/preset/defaults-import-png.d.ts +2 -0
- package/phone-input/preset/defaults-import-png.js +113 -0
- package/phone-input/preset/defaults-import-png.js.map +1 -0
- package/phone-input/preset/defaults.d.ts +5 -0
- package/phone-input/preset/defaults.js +116 -0
- package/phone-input/preset/defaults.js.map +1 -0
- package/phone-input/types.d.ts +29 -3
- package/phone-input/types.js +1 -0
- package/phone-input/types.js.map +1 -0
- package/phone-input/utils.d.ts +14 -9
- package/phone-input/utils.js +21 -17
- package/phone-input/utils.js.map +1 -0
- package/plate/index.d.ts +2 -15
- package/plate/index.js +3 -50
- package/plate/index.js.map +1 -0
- package/plate/plate.d.ts +6 -0
- package/plate/plate.js +21 -0
- package/plate/plate.js.map +1 -0
- package/plate/types.d.ts +9 -0
- package/plate/types.js +3 -0
- package/plate/types.js.map +1 -0
- package/popup/index.d.ts +4 -5
- package/popup/index.js +4 -3
- package/popup/index.js.map +1 -0
- package/popup/popup-view.d.ts +3 -10
- package/popup/popup-view.js +9 -24
- package/popup/popup-view.js.map +1 -0
- package/popup/{popup-view.module.scss → popup-view.m.scss} +12 -6
- package/popup/popup.d.ts +2 -12
- package/popup/popup.js +17 -46
- package/popup/popup.js.map +1 -0
- package/popup/types.d.ts +34 -0
- package/popup/types.js +3 -0
- package/popup/types.js.map +1 -0
- package/popup/utils.d.ts +8 -8
- package/popup/utils.js +28 -24
- package/popup/utils.js.map +1 -0
- package/portal/index.d.ts +2 -13
- package/portal/index.js +3 -23
- package/portal/index.js.map +1 -0
- package/portal/portal.d.ts +7 -0
- package/portal/portal.js +33 -0
- package/portal/portal.js.map +1 -0
- package/portal/types.d.ts +9 -0
- package/portal/types.js +3 -0
- package/portal/types.js.map +1 -0
- package/price/index.d.ts +3 -21
- package/price/index.js +6 -21
- package/price/index.js.map +1 -0
- package/price/price.d.ts +7 -0
- package/price/price.js +24 -0
- package/price/price.js.map +1 -0
- package/price/types.d.ts +13 -0
- package/price/types.js +3 -0
- package/price/types.js.map +1 -0
- package/price/utils.js +15 -13
- package/price/utils.js.map +1 -0
- package/radio-button/index.d.ts +2 -10
- package/radio-button/index.js +3 -30
- package/radio-button/index.js.map +1 -0
- package/radio-button/radio-button.d.ts +7 -0
- package/radio-button/radio-button.js +19 -0
- package/radio-button/radio-button.js.map +1 -0
- package/radio-button/types.d.ts +4 -0
- package/radio-button/types.js +3 -0
- package/radio-button/types.js.map +1 -0
- package/range/index.d.ts +2 -108
- package/range/index.js +3 -284
- package/range/index.js.map +1 -0
- package/range/range.d.ts +84 -0
- package/range/range.js +270 -0
- package/range/range.js.map +1 -0
- package/range/types.d.ts +26 -0
- package/range/types.js +3 -0
- package/range/types.js.map +1 -0
- package/rating/index.d.ts +2 -16
- package/rating/index.js +3 -41
- package/rating/index.js.map +1 -0
- package/rating/rating.d.ts +7 -0
- package/rating/rating.js +26 -0
- package/rating/rating.js.map +1 -0
- package/rating/types.d.ts +9 -0
- package/rating/types.js +1 -0
- package/rating/types.js.map +1 -0
- package/rating/utils.js +1 -0
- package/rating/utils.js.map +1 -0
- package/select/index.d.ts +2 -0
- package/select/index.js +6 -1
- package/select/index.js.map +1 -0
- package/select/parts/field-block.d.ts +7 -0
- package/select/parts/field-block.js +70 -0
- package/select/parts/field-block.js.map +1 -0
- package/select/parts/menu.d.ts +2 -3
- package/select/parts/menu.js +138 -85
- package/select/parts/menu.js.map +1 -0
- package/select/parts/text-button.d.ts +7 -0
- package/select/parts/text-button.js +48 -0
- package/select/parts/text-button.js.map +1 -0
- package/select/select.d.ts +1 -8
- package/select/select.js +48 -127
- package/select/select.js.map +1 -0
- package/select/types.d.ts +22 -23
- package/select/types.js +1 -0
- package/select/types.js.map +1 -0
- package/select/utils.d.ts +3 -3
- package/select/utils.js +17 -10
- package/select/utils.js.map +1 -0
- package/shadows.scss +40 -4
- package/side-page/index.d.ts +3 -39
- package/side-page/index.js +8 -89
- package/side-page/index.js.map +1 -0
- package/side-page/side-page.d.ts +13 -0
- package/side-page/side-page.js +57 -0
- package/side-page/side-page.js.map +1 -0
- package/side-page/slots.d.ts +3 -3
- package/side-page/slots.js +11 -24
- package/side-page/slots.js.map +1 -0
- package/side-page/types.d.ts +27 -0
- package/side-page/types.js +3 -0
- package/side-page/types.js.map +1 -0
- package/skeleton/index.d.ts +2 -0
- package/skeleton/index.js +6 -0
- package/skeleton/index.js.map +1 -0
- package/skeleton/skeleton.d.ts +7 -0
- package/skeleton/skeleton.js +19 -0
- package/skeleton/skeleton.js.map +1 -0
- package/skeleton/skeleton.m.scss +75 -0
- package/skeleton/types.d.ts +17 -0
- package/skeleton/types.js +3 -0
- package/skeleton/types.js.map +1 -0
- package/spinner/index.d.ts +2 -34
- package/spinner/index.js +6 -45
- package/spinner/index.js.map +1 -0
- package/spinner/spinner.d.ts +15 -0
- package/spinner/spinner.js +41 -0
- package/spinner/spinner.js.map +1 -0
- package/spinner/{spinner.module.scss → spinner.m.scss} +15 -5
- package/spinner/types.d.ts +15 -0
- package/spinner/types.js +3 -0
- package/spinner/types.js.map +1 -0
- package/stepper/index.d.ts +2 -38
- package/stepper/index.js +3 -73
- package/stepper/index.js.map +1 -0
- package/stepper/stepper.d.ts +7 -0
- package/stepper/stepper.js +37 -0
- package/stepper/stepper.js.map +1 -0
- package/stepper/types.d.ts +31 -0
- package/stepper/types.js +3 -0
- package/stepper/types.js.map +1 -0
- package/stroked-svg/index.d.ts +2 -17
- package/stroked-svg/index.js +3 -53
- package/stroked-svg/index.js.map +1 -0
- package/stroked-svg/stroked-svg.d.ts +7 -0
- package/stroked-svg/stroked-svg.js +19 -0
- package/stroked-svg/stroked-svg.js.map +1 -0
- package/stroked-svg/types.d.ts +12 -0
- package/stroked-svg/types.js +3 -0
- package/stroked-svg/types.js.map +1 -0
- package/styling/borders.d.ts +1 -0
- package/styling/borders.js +4 -2
- package/styling/borders.js.map +1 -0
- package/styling/{borders.module.scss → borders.m.scss} +3 -1
- package/styling/colors.d.ts +10 -5
- package/styling/colors.js +12 -6
- package/styling/colors.js.map +1 -0
- package/styling/fonts.d.ts +3 -0
- package/styling/fonts.js +8 -4
- package/styling/fonts.js.map +1 -0
- package/styling/index.d.ts +6 -0
- package/styling/index.js +31 -0
- package/styling/index.js.map +1 -0
- package/styling/shadows.d.ts +1 -0
- package/styling/shadows.js +8 -6
- package/styling/shadows.js.map +1 -0
- package/styling/shadows.m.scss +27 -0
- package/styling/shapes.d.ts +2 -0
- package/styling/shapes.js +22 -19
- package/styling/shapes.js.map +1 -0
- package/styling/sizes.d.ts +10 -0
- package/styling/sizes.js +20 -9
- package/styling/sizes.js.map +1 -0
- package/styling/{sizes.module.scss → sizes.m.scss} +3 -1
- package/styling/utils.d.ts +2 -1
- package/styling/utils.js +3 -1
- package/styling/utils.js.map +1 -0
- package/super-ellipse-clip-path/index.d.ts +2 -11
- package/super-ellipse-clip-path/index.js +3 -14
- package/super-ellipse-clip-path/index.js.map +1 -0
- package/super-ellipse-clip-path/super-ellipse-clip-path.d.ts +7 -0
- package/super-ellipse-clip-path/super-ellipse-clip-path.js +13 -0
- package/super-ellipse-clip-path/super-ellipse-clip-path.js.map +1 -0
- package/super-ellipse-clip-path/types.d.ts +4 -0
- package/super-ellipse-clip-path/types.js +3 -0
- package/super-ellipse-clip-path/types.js.map +1 -0
- package/switcher-row/index.d.ts +2 -42
- package/switcher-row/index.js +3 -57
- package/switcher-row/index.js.map +1 -0
- package/switcher-row/switcher-row.d.ts +29 -0
- package/switcher-row/switcher-row.js +54 -0
- package/switcher-row/switcher-row.js.map +1 -0
- package/switcher-row/types.d.ts +14 -0
- package/switcher-row/types.js +3 -0
- package/switcher-row/types.js.map +1 -0
- package/tabs/index.d.ts +2 -36
- package/tabs/index.js +5 -45
- package/tabs/index.js.map +1 -0
- package/tabs/tabs.d.ts +16 -0
- package/tabs/tabs.js +30 -0
- package/tabs/tabs.js.map +1 -0
- package/tabs/{tabs.module.scss → tabs.m.scss} +1 -0
- package/tabs/types.d.ts +35 -0
- package/tabs/types.js +3 -0
- package/tabs/types.js.map +1 -0
- package/test-utils/dom-rect-read-only-mock.d.ts +23 -0
- package/test-utils/dom-rect-read-only-mock.js +49 -0
- package/test-utils/dom-rect-read-only-mock.js.map +1 -0
- package/test-utils/index.d.ts +4 -0
- package/test-utils/index.js +12 -0
- package/test-utils/index.js.map +1 -0
- package/test-utils/intersection-observer-mock.d.ts +74 -0
- package/test-utils/intersection-observer-mock.js +152 -0
- package/test-utils/intersection-observer-mock.js.map +1 -0
- package/test-utils/match-media-mock.d.ts +90 -0
- package/test-utils/match-media-mock.js +128 -0
- package/test-utils/match-media-mock.js.map +1 -0
- package/test-utils/resize-observer-mock.d.ts +56 -0
- package/test-utils/resize-observer-mock.js +114 -0
- package/test-utils/resize-observer-mock.js.map +1 -0
- package/text/index.d.ts +2 -37
- package/text/index.js +6 -68
- package/text/index.js.map +1 -0
- package/text/text.d.ts +11 -0
- package/text/text.js +50 -0
- package/text/text.js.map +1 -0
- package/text/types.d.ts +28 -0
- package/text/types.js +3 -0
- package/text/types.js.map +1 -0
- package/text-button/index.d.ts +2 -42
- package/text-button/index.js +3 -43
- package/text-button/index.js.map +1 -0
- package/text-button/text-button.d.ts +8 -0
- package/text-button/text-button.js +37 -0
- package/text-button/text-button.js.map +1 -0
- package/text-button/{text-button.module.scss → text-button.m.scss} +4 -1
- package/text-button/types.d.ts +40 -0
- package/text-button/types.js +3 -0
- package/text-button/types.js.map +1 -0
- package/textarea/index.d.ts +2 -21
- package/textarea/index.js +3 -82
- package/textarea/index.js.map +1 -0
- package/textarea/textarea.d.ts +7 -0
- package/textarea/textarea.js +60 -0
- package/textarea/textarea.js.map +1 -0
- package/textarea/types.d.ts +15 -0
- package/textarea/types.js +3 -0
- package/textarea/types.js.map +1 -0
- package/timer/index.d.ts +2 -16
- package/timer/index.js +3 -42
- package/timer/index.js.map +1 -0
- package/timer/timer.d.ts +7 -0
- package/timer/timer.js +23 -0
- package/timer/timer.js.map +1 -0
- package/timer/types.d.ts +10 -1
- package/timer/types.js +1 -0
- package/timer/types.js.map +1 -0
- package/timer/utils.d.ts +3 -3
- package/timer/utils.js +15 -16
- package/timer/utils.js.map +1 -0
- package/toggle/index.d.ts +2 -7
- package/toggle/index.js +3 -53
- package/toggle/index.js.map +1 -0
- package/toggle/toggle.d.ts +4 -0
- package/toggle/toggle.js +21 -0
- package/toggle/toggle.js.map +1 -0
- package/toggle/{toggle.module.scss → toggle.m.scss} +4 -4
- package/toggle/types.d.ts +2 -0
- package/toggle/types.js +3 -0
- package/toggle/types.js.map +1 -0
- package/top-bar/index.d.ts +1 -1
- package/top-bar/index.js +4 -1
- package/top-bar/index.js.map +1 -0
- package/top-bar/top-bar.d.ts +2 -3
- package/top-bar/top-bar.js +20 -67
- package/top-bar/top-bar.js.map +1 -0
- package/top-bar/{top-bar.module.scss → top-bar.m.scss} +25 -11
- package/top-bar/types.d.ts +21 -10
- package/top-bar/types.js +1 -0
- package/top-bar/types.js.map +1 -0
- package/top-bar/utils.d.ts +2 -3
- package/top-bar/utils.js +24 -41
- package/top-bar/utils.js.map +1 -0
- package/touch-slider/index.d.ts +2 -13
- package/touch-slider/index.js +3 -18
- package/touch-slider/index.js.map +1 -0
- package/touch-slider/touch-slider.d.ts +9 -0
- package/touch-slider/touch-slider.js +21 -0
- package/touch-slider/touch-slider.js.map +1 -0
- package/touch-slider/types.d.ts +5 -0
- package/touch-slider/types.js +3 -0
- package/touch-slider/types.js.map +1 -0
- package/types.d.ts +1 -1
- package/types.js +1 -0
- package/types.js.map +1 -0
- package/unknown-content/index.d.ts +2 -13
- package/unknown-content/index.js +3 -43
- package/unknown-content/index.js.map +1 -0
- package/unknown-content/types.d.ts +7 -0
- package/unknown-content/types.js +3 -0
- package/unknown-content/types.js.map +1 -0
- package/unknown-content/unknown-content.d.ts +8 -0
- package/unknown-content/unknown-content.js +25 -0
- package/unknown-content/unknown-content.js.map +1 -0
- package/unknown-content/utils.js +3 -2
- package/unknown-content/utils.js.map +1 -0
- package/upload-area/index.d.ts +2 -1
- package/upload-area/index.js +4 -1
- package/upload-area/index.js.map +1 -0
- package/upload-area/types.d.ts +12 -11
- package/upload-area/types.js +1 -0
- package/upload-area/types.js.map +1 -0
- package/upload-area/upload-area-util.scss +2 -0
- package/upload-area/upload-area.d.ts +1 -2
- package/upload-area/upload-area.js +23 -70
- package/upload-area/upload-area.js.map +1 -0
- package/upload-area/{upload-area.module.scss → upload-area.m.scss} +4 -1
- package/upload-area/utils.d.ts +7 -0
- package/upload-area/utils.js +23 -4
- package/upload-area/utils.js.map +1 -0
- package/utils.scss +8 -1
- package/_internal/custom-scrollbar/custom-scrollbar.module.scss +0 -54
- package/_internal/dropdown-loading/index.d.ts +0 -9
- package/_internal/dropdown-loading/index.js +0 -19
- package/_internal/utils/dropdown.d.ts +0 -12
- package/_internal/utils/dropdown.js +0 -16
- package/autocomplete-deprecated/autocomplete.module.scss +0 -20
- package/autocomplete-deprecated/index.d.ts +0 -28
- package/autocomplete-deprecated/index.js +0 -130
- package/avatar/avatar.module.scss +0 -72
- package/avatar/user.d.ts +0 -10
- package/avatar/user.js +0 -61
- package/base-input-deprecated/base-input.module.scss +0 -66
- package/base-input-deprecated/index.d.ts +0 -24
- package/base-input-deprecated/index.js +0 -80
- package/bordered-layout/bordered-layout.module.scss +0 -7
- package/bordered-layout/index.d.ts +0 -16
- package/bordered-layout/index.js +0 -33
- package/card/card.module.scss +0 -8
- package/card/index.d.ts +0 -17
- package/card/index.js +0 -63
- package/card/slots.d.ts +0 -41
- package/card/slots.js +0 -86
- package/card/utils.d.ts +0 -3
- package/card/utils.js +0 -5
- package/checkbox-field/checkbox-field.module.scss +0 -56
- package/checkbox-field/index.d.ts +0 -19
- package/checkbox-field/index.js +0 -62
- package/chips/chips.module.scss +0 -75
- package/chips/index.d.ts +0 -16
- package/chips/index.js +0 -56
- package/chips/item.d.ts +0 -15
- package/chips/item.js +0 -20
- package/field-grid/field-grid.module.scss +0 -30
- package/field-grid/index.d.ts +0 -59
- package/field-grid/index.js +0 -138
- package/file-icon/unknown.svg +0 -9
- package/helpers/format-number.d.ts +0 -7
- package/helpers/format-number.js +0 -29
- package/helpers/get-no-index.d.ts +0 -8
- package/helpers/get-no-index.js +0 -12
- package/helpers/rename.d.ts +0 -13
- package/helpers/rename.js +0 -14
- package/helpers/with-prevent.d.ts +0 -11
- package/helpers/with-prevent.js +0 -20
- package/hint-deprecated/hint.module.scss +0 -61
- package/hint-deprecated/index.d.ts +0 -11
- package/hint-deprecated/index.js +0 -53
- package/hooks/styles.d.ts +0 -6
- package/hooks/styles.js +0 -26
- package/input/input.module.scss +0 -20
- package/layout/layout.module.scss +0 -56
- package/loading-overlay/index.d.ts +0 -19
- package/loading-overlay/index.js +0 -20
- package/loading-overlay/loading-overlay.module.scss +0 -14
- package/masked-field/index.d.ts +0 -23
- package/masked-field/index.js +0 -71
- package/masked-input/hook.d.ts +0 -8
- package/masked-input/hook.js +0 -72
- package/modal/modal.module.scss +0 -134
- package/no-index-mark/index.d.ts +0 -11
- package/no-index-mark/index.js +0 -14
- package/pagination/base-pagination.d.ts +0 -51
- package/pagination/base-pagination.js +0 -105
- package/pagination/page-button.d.ts +0 -15
- package/pagination/page-button.js +0 -32
- package/pagination/pagination.module.scss +0 -76
- package/phone-input/presets.d.ts +0 -25
- package/phone-input/presets.js +0 -118
- package/phone-input-deprecated/index.d.ts +0 -29
- package/phone-input-deprecated/index.js +0 -124
- package/phone-input-deprecated/phone-input.module.scss +0 -41
- package/rating/star.svg +0 -3
- package/readme.md +0 -183
- package/screen/index.d.ts +0 -25
- package/screen/index.js +0 -74
- package/screen/screen.module.scss +0 -31
- package/screen/slots.d.ts +0 -26
- package/screen/slots.js +0 -101
- package/screen/utils.d.ts +0 -14
- package/screen/utils.js +0 -5
- package/select/parts/block.d.ts +0 -8
- package/select/parts/block.js +0 -70
- package/select/parts/button.d.ts +0 -8
- package/select/parts/button.js +0 -69
- package/select/parts/menu.module.scss +0 -4
- package/select-deprecated/index.d.ts +0 -34
- package/select-deprecated/index.js +0 -112
- package/select-deprecated/select.module.scss +0 -26
- package/styling/shadows.module.scss +0 -19
- package/text-field/index.d.ts +0 -69
- package/text-field/index.js +0 -108
- package/text-field/text-field.module.scss +0 -205
- package/tooltip/index.d.ts +0 -18
- package/tooltip/index.js +0 -43
- package/tooltip/tooltip.module.scss +0 -49
- package/upload-area/upload.svg +0 -6
- package/with-hint/index.d.ts +0 -31
- package/with-hint/index.js +0 -73
- package/with-hint/positioning-hint.d.ts +0 -12
- package/with-hint/positioning-hint.js +0 -53
- package/with-hint/positioning-hint.module.scss +0 -10
- package/with-hint/utils.d.ts +0 -17
- package/with-hint/utils.js +0 -50
- package/with-tooltip/index.d.ts +0 -18
- package/with-tooltip/index.js +0 -48
- package/with-tooltip/positioning-tooltip.d.ts +0 -15
- package/with-tooltip/positioning-tooltip.js +0 -80
- package/with-tooltip/utils.d.ts +0 -38
- package/with-tooltip/utils.js +0 -162
- /package/_internal/{readme.md → README.md} +0 -0
- /package/alert/{alert.module.scss → alert.m.scss} +0 -0
- /package/autocomplete/{autocomplete.module.scss → autocomplete.m.scss} +0 -0
- /package/box/{box.module.scss → box.m.scss} +0 -0
- /package/carousel/{draggable.module.scss → draggable.m.scss} +0 -0
- /package/checkbox/{checkbox.module.scss → checkbox.m.scss} +0 -0
- /package/{_internal/dropdown-loading/index.module.scss → dropdown/dropdown-loading.m.scss} +0 -0
- /package/dropdown-item/{dropdown-item.module.scss → dropdown-item.m.scss} +0 -0
- /package/hint/{hint-view.module.scss → hint-view.m.scss} +0 -0
- /package/hooks/{breakpoint → use-breakpoint}/types.d.ts +0 -0
- /package/hooks/{intersection → use-intersection}/index.d.ts +0 -0
- /package/hooks/{keydown.d.ts → use-keydown/index.d.ts} +0 -0
- /package/layout/{legacy.module.scss → legacy.m.scss} +0 -0
- /package/link/{link.module.scss → link.m.scss} +0 -0
- /package/modal-overlay/{modal-overlay.module.scss → modal-overlay.m.scss} +0 -0
- /package/panel/{panel.module.scss → panel.m.scss} +0 -0
- /package/plate/{plate.module.scss → plate.m.scss} +0 -0
- /package/price/{price.module.scss → price.m.scss} +0 -0
- /package/radio-button/{radio-button.module.scss → radio-button.m.scss} +0 -0
- /package/range/{range.module.scss → range.m.scss} +0 -0
- /package/rating/{rating.module.scss → rating.m.scss} +0 -0
- /package/select/parts/{block.module.scss → field-block.m.scss} +0 -0
- /package/side-page/{side-page.module.scss → side-page.m.scss} +0 -0
- /package/stepper/{stepper.module.scss → stepper.m.scss} +0 -0
- /package/stroked-svg/{index.module.scss → stroked-svg.m.scss} +0 -0
- /package/styling/{colors.module.scss → colors.m.scss} +0 -0
- /package/styling/{fonts.module.scss → fonts.m.scss} +0 -0
- /package/styling/{shapes.module.scss → shapes.m.scss} +0 -0
- /package/switcher-row/{switcher-row.module.scss → switcher-row.m.scss} +0 -0
- /package/text/{text.module.scss → text.m.scss} +0 -0
- /package/textarea/{textarea.module.scss → textarea.m.scss} +0 -0
- /package/timer/{timer.module.scss → timer.m.scss} +0 -0
- /package/touch-slider/{touch-slider.module.scss → touch-slider.m.scss} +0 -0
- /package/unknown-content/{unknown-content.module.scss → unknown-content.m.scss} +0 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.Expandable = exports.ExpandableItem = void 0;
|
|
7
|
+
exports.ExpandableGroup = ExpandableGroup;
|
|
8
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
9
|
+
const react_1 = require("react");
|
|
10
|
+
const hooks_1 = require("../hooks");
|
|
11
|
+
const utils_1 = require("./utils");
|
|
12
|
+
const bind_1 = __importDefault(require("classnames/bind"));
|
|
13
|
+
const expandable_group_m_scss_1 = __importDefault(require("./expandable-group.m.scss"));
|
|
14
|
+
const cx = bind_1.default.bind(expandable_group_m_scss_1.default);
|
|
15
|
+
const ItemContext = (0, react_1.createContext)({});
|
|
16
|
+
const initialState = {
|
|
17
|
+
status: 'initial',
|
|
18
|
+
lastVisibleIndex: -1,
|
|
19
|
+
};
|
|
20
|
+
const expandedState = {
|
|
21
|
+
status: 'expanded',
|
|
22
|
+
lastVisibleIndex: -1,
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Группа элементов с ограничением на число выводимых строк и возможностью показать все.
|
|
26
|
+
* @param props Свойства.
|
|
27
|
+
* @return Элемент.
|
|
28
|
+
*/
|
|
29
|
+
function ExpandableGroup(props) {
|
|
30
|
+
const time = (0, react_1.useRef)(1);
|
|
31
|
+
// @todo зациклить если каким-то невероятным образом уйдет за границу number
|
|
32
|
+
time.current = time.current + 1;
|
|
33
|
+
// ВАЖНО: рендер вызванный родительским компонентом должен приводить к пересчету, поэтому передаем уникальный time
|
|
34
|
+
return (0, jsx_runtime_1.jsx)(ExpandableGroupInner, { ...props, time: time.current });
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Внутренний компонент, необходимый для корректной обработки повторных render'ов.
|
|
38
|
+
* @param props Свойства.
|
|
39
|
+
* @return Элемент.
|
|
40
|
+
*/
|
|
41
|
+
function ExpandableGroupInner({ gap = 8, itemHeight = 32, lineLimit = 2, defaultExpanded = false, children, opener: renderOpener = data => (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: ["\u0415\u0449\u0451 ", data.hiddenCount] }), className, style, expanded: expandedProp, onExpand, openerWidth = 72, time, }) {
|
|
42
|
+
const outerRef = (0, react_1.useRef)(null);
|
|
43
|
+
const innerRef = (0, react_1.useRef)(null);
|
|
44
|
+
const openerRef = (0, react_1.useRef)(null);
|
|
45
|
+
const [mounted, setMounted] = (0, react_1.useState)(false);
|
|
46
|
+
const [state, setState] = (0, react_1.useState)(() => (defaultExpanded ? expandedState : initialState));
|
|
47
|
+
(0, react_1.useEffect)(() => {
|
|
48
|
+
setMounted(true);
|
|
49
|
+
}, []);
|
|
50
|
+
// даем возможность управлять состоянием с помощью пропса "expanded"
|
|
51
|
+
(0, react_1.useEffect)(() => {
|
|
52
|
+
if (typeof expandedProp === 'boolean') {
|
|
53
|
+
// ВАЖНО: передаем именно копию состояний чтобы гарантированно вызвать рендер
|
|
54
|
+
setState(expandedProp ? { ...expandedState } : { ...initialState });
|
|
55
|
+
}
|
|
56
|
+
}, [expandedProp]);
|
|
57
|
+
// если "time" обновился - это сигнал о том что надо пересчитать состояние
|
|
58
|
+
(0, react_1.useEffect)(() => {
|
|
59
|
+
// ВАЖНО: передаем именно копию состояний чтобы гарантированно вызвать рендер
|
|
60
|
+
setState(current => (current.status === 'expanded' ? current : { ...initialState }));
|
|
61
|
+
}, [time]);
|
|
62
|
+
// следим за изменением ширины чтобы запустить перерасчет
|
|
63
|
+
(0, utils_1.useObserveWidth)(outerRef, () => {
|
|
64
|
+
// ВАЖНО: передаем именно копию состояний чтобы гарантированно вызвать рендер
|
|
65
|
+
setState(current => (current.status === 'expanded' ? current : { ...initialState }));
|
|
66
|
+
});
|
|
67
|
+
// выполняем расчет
|
|
68
|
+
(0, hooks_1.useIsomorphicLayoutEffect)(() => {
|
|
69
|
+
if (state.status === 'initial') {
|
|
70
|
+
const outer = outerRef.current;
|
|
71
|
+
const inner = innerRef.current;
|
|
72
|
+
const opener = openerRef.current;
|
|
73
|
+
if (outer && inner && opener) {
|
|
74
|
+
const { lastVisibleIndex } = (0, utils_1.defineLastVisible)({ outer, inner, gap, opener, openerWidth });
|
|
75
|
+
setState({
|
|
76
|
+
status: lastVisibleIndex !== -1 ? 'some-hidden' : 'all-visible',
|
|
77
|
+
lastVisibleIndex,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}, [state, mounted]);
|
|
82
|
+
const rootStyle = {
|
|
83
|
+
...style,
|
|
84
|
+
maxHeight: state.status === 'expanded'
|
|
85
|
+
? undefined
|
|
86
|
+
: `${itemHeight * lineLimit + gap * (lineLimit - 1)}px`,
|
|
87
|
+
'--expandable-gap': `${gap}px`,
|
|
88
|
+
'--expandable-item-height': `${itemHeight}px`,
|
|
89
|
+
'--expandable-opener-width': `${openerWidth}px`,
|
|
90
|
+
};
|
|
91
|
+
const handleExpand = (0, react_1.useCallback)(() => {
|
|
92
|
+
setState(expandedState);
|
|
93
|
+
onExpand?.();
|
|
94
|
+
}, [onExpand]);
|
|
95
|
+
const items = react_1.Children.toArray(children).reduce((result, child, index) => {
|
|
96
|
+
if ((0, react_1.isValidElement)(child) && child.type === exports.ExpandableItem) {
|
|
97
|
+
result.push((0, jsx_runtime_1.jsx)(ItemContext.Provider, { value: {
|
|
98
|
+
hidden: state.status === 'some-hidden' && index > state.lastVisibleIndex,
|
|
99
|
+
}, children: child }, child.key));
|
|
100
|
+
}
|
|
101
|
+
return result;
|
|
102
|
+
}, []);
|
|
103
|
+
// ВАЖНО: root нужен для того чтобы формировать ограничение по высоте
|
|
104
|
+
return ((0, jsx_runtime_1.jsx)("div", { ref: outerRef, className: cx('root', className), style: rootStyle, children: (0, jsx_runtime_1.jsxs)("ul", { ref: innerRef, className: cx('inner'), children: [items, mounted && state.status !== 'expanded' && ((0, jsx_runtime_1.jsx)(ItemContext.Provider, { value: { hidden: state.status !== 'some-hidden' }, children: (0, jsx_runtime_1.jsx)(exports.ExpandableItem, { ref: openerRef, onClick: handleExpand, "data-testid": 'expandable:opener', children: renderOpener({ hiddenCount: items.length - state.lastVisibleIndex - 1 }) }) }))] }) }));
|
|
105
|
+
}
|
|
106
|
+
exports.ExpandableItem = (0, react_1.forwardRef)(({ children, onClick, 'data-testid': testId = 'expandable:item' }, ref) => {
|
|
107
|
+
const { hidden } = (0, react_1.useContext)(ItemContext);
|
|
108
|
+
return ((0, jsx_runtime_1.jsx)("li", { ref: ref, className: cx('item', { hidden }), "data-testid": testId, onClick: onClick, children: children }));
|
|
109
|
+
});
|
|
110
|
+
exports.Expandable = {
|
|
111
|
+
Group: ExpandableGroup,
|
|
112
|
+
Item: exports.ExpandableItem,
|
|
113
|
+
};
|
|
114
|
+
//# sourceMappingURL=expandable-group.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expandable-group.js","sourceRoot":"","sources":["../../src/expandable/expandable-group.tsx"],"names":[],"mappings":"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"}
|
|
@@ -12,16 +12,12 @@
|
|
|
12
12
|
.item {
|
|
13
13
|
display: block;
|
|
14
14
|
padding: 0;
|
|
15
|
-
max-width: 100
|
|
15
|
+
max-width: calc(100% - var(--expandable-gap, 0));
|
|
16
16
|
height: var(--expandable-item-height);
|
|
17
17
|
margin: 0 (var(--expandable-gap)) var(--expandable-gap) 0;
|
|
18
18
|
&.hidden {
|
|
19
19
|
display: none;
|
|
20
20
|
}
|
|
21
|
-
&.invisible {
|
|
22
|
-
opacity: 0;
|
|
23
|
-
pointer-events: none;
|
|
24
|
-
}
|
|
25
21
|
&.opener {
|
|
26
22
|
width: var(--expandable-opener-width);
|
|
27
23
|
}
|
package/expandable/index.d.ts
CHANGED
|
@@ -1,42 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
export
|
|
3
|
-
/** Расстояние между элементами группы в пикселях. */
|
|
4
|
-
gap?: number;
|
|
5
|
-
/** Высота каждого элемента группы в пикселях. */
|
|
6
|
-
itemHeight?: number;
|
|
7
|
-
/** Развернут ли список по умолчанию. */
|
|
8
|
-
defaultExpanded?: boolean;
|
|
9
|
-
/** Количество строк в свернутом состоянии группы. */
|
|
10
|
-
lineLimit?: number;
|
|
11
|
-
/** Содержимое. */
|
|
12
|
-
children?: ReactNode;
|
|
13
|
-
/** Функция, возвращающая содержимое кнопки разворачивания списка. */
|
|
14
|
-
opener?: (data: {
|
|
15
|
-
hiddenCount: number;
|
|
16
|
-
}) => ReactNode;
|
|
17
|
-
/** Сработает при разворачивании списка. */
|
|
18
|
-
onExpand?: () => void;
|
|
19
|
-
/** CSS-класс корневого элемента. */
|
|
20
|
-
className?: string;
|
|
21
|
-
/** Стили корневого элемента. */
|
|
22
|
-
style?: CSSProperties;
|
|
23
|
-
/** Нужно ли выводить список развернутым. */
|
|
24
|
-
expanded?: boolean;
|
|
25
|
-
/** Ширина открывающего элемента. */
|
|
26
|
-
openerWidth?: number;
|
|
27
|
-
}
|
|
28
|
-
export interface GroupItemProps {
|
|
29
|
-
children?: ReactNode;
|
|
30
|
-
onClick?: MouseEventHandler;
|
|
31
|
-
'data-testid'?: string;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Группа элементов с ограничением на число выводимых строк и возможностью показать все.
|
|
35
|
-
* @param props Свойства.
|
|
36
|
-
* @return Элемент.
|
|
37
|
-
*/
|
|
38
|
-
export declare function ExpandableGroup({ gap, itemHeight, lineLimit, defaultExpanded, children, onExpand, opener, className, style, expanded: expandedProp, openerWidth, }: ExpandableGroupProps): JSX.Element;
|
|
39
|
-
export declare const Expandable: {
|
|
40
|
-
readonly Group: typeof ExpandableGroup;
|
|
41
|
-
readonly Item: React.ForwardRefExoticComponent<GroupItemProps & React.RefAttributes<HTMLLIElement>>;
|
|
42
|
-
};
|
|
1
|
+
export type { ExpandableGroupProps, ExpandableGroupItemProps } from './types';
|
|
2
|
+
export { Expandable, ExpandableGroup, ExpandableItem } from './expandable-group';
|
package/expandable/index.js
CHANGED
|
@@ -1,85 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
const ItemContext = (0, react_1.createContext)({});
|
|
36
|
-
/**
|
|
37
|
-
* Группа элементов с ограничением на число выводимых строк и возможностью показать все.
|
|
38
|
-
* @param props Свойства.
|
|
39
|
-
* @return Элемент.
|
|
40
|
-
*/
|
|
41
|
-
function ExpandableGroup({ gap = 8, itemHeight = 32, lineLimit = 2, defaultExpanded = false, children, onExpand, opener = data => react_1.default.createElement(react_1.default.Fragment, null,
|
|
42
|
-
"\u0415\u0449\u0451 ",
|
|
43
|
-
data.hiddenCount), className, style, expanded: expandedProp, openerWidth = 72, }) {
|
|
44
|
-
const wrapperRef = (0, react_1.useRef)(null);
|
|
45
|
-
const containerRef = (0, react_1.useRef)(null);
|
|
46
|
-
const openerRef = (0, react_1.useRef)(null);
|
|
47
|
-
const [mounted, setMounted] = (0, react_1.useState)(false);
|
|
48
|
-
const [expanded, setExpanded] = (0, react_1.useState)(defaultExpanded);
|
|
49
|
-
const items = react_1.Children.toArray(children).reduce((result, child) => {
|
|
50
|
-
if ((0, react_1.isValidElement)(child) && child.type === ExpandableItem) {
|
|
51
|
-
result.push(child);
|
|
52
|
-
}
|
|
53
|
-
return result;
|
|
54
|
-
}, []);
|
|
55
|
-
(0, react_1.useEffect)(() => {
|
|
56
|
-
setMounted(true);
|
|
57
|
-
}, []);
|
|
58
|
-
(0, react_1.useEffect)(() => {
|
|
59
|
-
expandedProp !== undefined && setExpanded(expandedProp);
|
|
60
|
-
}, [expandedProp]);
|
|
61
|
-
const { hiddenCount } = (0, utils_1.useExpandable)({
|
|
62
|
-
expanded,
|
|
63
|
-
wrapperRef,
|
|
64
|
-
containerRef,
|
|
65
|
-
openerRef,
|
|
66
|
-
gap,
|
|
67
|
-
});
|
|
68
|
-
return (react_1.default.createElement("div", { ref: wrapperRef, className: cx('root', className), style: Object.assign(Object.assign({}, style), { maxHeight: expanded ? undefined : `${itemHeight * lineLimit + gap * (lineLimit - 1)}px`, '--expandable-item-height': `${itemHeight}px`, '--expandable-opener-width': `${openerWidth}px`, '--expandable-gap': `${gap}px` }) },
|
|
69
|
-
react_1.default.createElement("ul", { ref: containerRef, className: expandable_group_module_scss_1.default.inner },
|
|
70
|
-
items,
|
|
71
|
-
mounted && !expanded && (react_1.default.createElement(ItemContext.Provider, { value: { invisible: hiddenCount === 0, opener: true } },
|
|
72
|
-
react_1.default.createElement(ExpandableItem, { ref: openerRef, onClick: () => {
|
|
73
|
-
setExpanded(true);
|
|
74
|
-
onExpand === null || onExpand === void 0 ? void 0 : onExpand();
|
|
75
|
-
}, "data-testid": 'expandable:opener' }, opener({ hiddenCount })))))));
|
|
76
|
-
}
|
|
77
|
-
exports.ExpandableGroup = ExpandableGroup;
|
|
78
|
-
const ExpandableItem = (0, react_1.forwardRef)(({ children, onClick, 'data-testid': testId = 'expandable:item' }, ref) => {
|
|
79
|
-
const context = (0, react_1.useContext)(ItemContext);
|
|
80
|
-
return (react_1.default.createElement("li", { ref: ref, className: cx('item', context), "data-testid": testId, onClick: onClick }, children));
|
|
81
|
-
});
|
|
82
|
-
exports.Expandable = {
|
|
83
|
-
Group: ExpandableGroup,
|
|
84
|
-
Item: ExpandableItem,
|
|
85
|
-
};
|
|
3
|
+
exports.ExpandableItem = exports.ExpandableGroup = exports.Expandable = void 0;
|
|
4
|
+
var expandable_group_1 = require("./expandable-group");
|
|
5
|
+
Object.defineProperty(exports, "Expandable", { enumerable: true, get: function () { return expandable_group_1.Expandable; } });
|
|
6
|
+
Object.defineProperty(exports, "ExpandableGroup", { enumerable: true, get: function () { return expandable_group_1.ExpandableGroup; } });
|
|
7
|
+
Object.defineProperty(exports, "ExpandableItem", { enumerable: true, get: function () { return expandable_group_1.ExpandableItem; } });
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/expandable/index.ts"],"names":[],"mappings":";;;AACA,uDAAiF;AAAxE,8GAAA,UAAU,OAAA;AAAE,mHAAA,eAAe,OAAA;AAAE,kHAAA,cAAc,OAAA"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { CSSProperties, MouseEventHandler, ReactNode } from 'react';
|
|
2
|
+
import type { WithTestId } from '../types';
|
|
3
|
+
export interface ExpandableGroupInnerStyle extends CSSProperties {
|
|
4
|
+
'--expandable-item-height'?: string;
|
|
5
|
+
'--expandable-opener-width'?: string;
|
|
6
|
+
'--expandable-gap'?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface ExpandableGroupProps {
|
|
9
|
+
/** Расстояние между элементами группы в пикселях. */
|
|
10
|
+
gap?: number;
|
|
11
|
+
/** Высота каждого элемента группы в пикселях. */
|
|
12
|
+
itemHeight?: number;
|
|
13
|
+
/** Развернут ли список по умолчанию. */
|
|
14
|
+
defaultExpanded?: boolean;
|
|
15
|
+
/** Количество строк в свернутом состоянии группы. */
|
|
16
|
+
lineLimit?: number;
|
|
17
|
+
/** Содержимое. */
|
|
18
|
+
children?: ReactNode;
|
|
19
|
+
/** Функция, возвращающая содержимое кнопки разворачивания списка. */
|
|
20
|
+
opener?: (data: {
|
|
21
|
+
hiddenCount: number;
|
|
22
|
+
}) => ReactNode;
|
|
23
|
+
/** Сработает при разворачивании списка. */
|
|
24
|
+
onExpand?: () => void;
|
|
25
|
+
/** CSS-класс корневого элемента. */
|
|
26
|
+
className?: string;
|
|
27
|
+
/** Стили корневого элемента. */
|
|
28
|
+
style?: CSSProperties;
|
|
29
|
+
/** Нужно ли выводить список развернутым. */
|
|
30
|
+
expanded?: boolean;
|
|
31
|
+
/** Ширина открывающего элемента. */
|
|
32
|
+
openerWidth?: number;
|
|
33
|
+
}
|
|
34
|
+
export interface ExpandableGroupItemProps extends WithTestId {
|
|
35
|
+
/** Содержимое. */
|
|
36
|
+
children?: ReactNode;
|
|
37
|
+
/** Сработает при клике. */
|
|
38
|
+
onClick?: MouseEventHandler;
|
|
39
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/expandable/types.ts"],"names":[],"mappings":""}
|
package/expandable/utils.d.ts
CHANGED
|
@@ -1,31 +1,30 @@
|
|
|
1
1
|
import { RefObject } from 'react';
|
|
2
|
-
export interface ViewState {
|
|
3
|
-
lastVisibleIndex: number;
|
|
4
|
-
}
|
|
5
2
|
/**
|
|
6
|
-
*
|
|
7
|
-
* @param
|
|
8
|
-
* @
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* @param options.gap Расстояние между элементами списка.
|
|
12
|
-
* @return Рассчитанные данные: кол-во скрытых элементов.
|
|
3
|
+
* Определяет последний дочерний элемент который должен быть виден чтобы влезла "открывашка".
|
|
4
|
+
* @param payload Данные.
|
|
5
|
+
* @return Результат.
|
|
6
|
+
*
|
|
7
|
+
* ВАЖНО: lastVisibleIndex: -1 означает что все элементы видны и "открывашка" не нужна.
|
|
13
8
|
*/
|
|
14
|
-
export declare function
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
containerRef: RefObject<HTMLElement>;
|
|
18
|
-
openerRef: RefObject<HTMLElement>;
|
|
9
|
+
export declare function defineLastVisible({ outer, inner, gap, opener, openerWidth, }: {
|
|
10
|
+
outer: Element;
|
|
11
|
+
inner: Element;
|
|
19
12
|
gap: number;
|
|
13
|
+
opener: Element;
|
|
14
|
+
openerWidth: number;
|
|
20
15
|
}): {
|
|
21
|
-
|
|
16
|
+
lastVisibleIndex: number;
|
|
22
17
|
};
|
|
23
18
|
/**
|
|
24
|
-
*
|
|
25
|
-
* @param
|
|
26
|
-
* @param
|
|
27
|
-
* @
|
|
28
|
-
|
|
29
|
-
|
|
19
|
+
* Регистрирует обработчик изменения ширины элемента.
|
|
20
|
+
* @param element Элемент.
|
|
21
|
+
* @param callback Callback.
|
|
22
|
+
* @return Функция отписки.
|
|
23
|
+
*/
|
|
24
|
+
export declare function observeWidth(element: Element, callback: (width: number) => void): () => void;
|
|
25
|
+
/**
|
|
26
|
+
* Хук для регистрации обработчика изменения ширины элемента.
|
|
27
|
+
* @param ref Ref элемента.
|
|
28
|
+
* @param callback Callback.
|
|
30
29
|
*/
|
|
31
|
-
export declare function
|
|
30
|
+
export declare function useObserveWidth(ref: RefObject<Element | null>, callback: VoidFunction): void;
|
package/expandable/utils.js
CHANGED
|
@@ -1,91 +1,87 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
3
|
+
exports.defineLastVisible = defineLastVisible;
|
|
4
|
+
exports.observeWidth = observeWidth;
|
|
5
|
+
exports.useObserveWidth = useObserveWidth;
|
|
7
6
|
const react_1 = require("react");
|
|
8
|
-
const hooks_1 = require("../hooks");
|
|
9
|
-
const on_1 = require("../helpers/on");
|
|
10
|
-
const expandable_group_module_scss_1 = __importDefault(require("./expandable-group.module.scss"));
|
|
11
7
|
/**
|
|
12
|
-
*
|
|
13
|
-
* @param
|
|
14
|
-
* @
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* @param options.gap Расстояние между элементами списка.
|
|
18
|
-
* @return Рассчитанные данные: кол-во скрытых элементов.
|
|
8
|
+
* Определяет последний дочерний элемент который должен быть виден чтобы влезла "открывашка".
|
|
9
|
+
* @param payload Данные.
|
|
10
|
+
* @return Результат.
|
|
11
|
+
*
|
|
12
|
+
* ВАЖНО: lastVisibleIndex: -1 означает что все элементы видны и "открывашка" не нужна.
|
|
19
13
|
*/
|
|
20
|
-
function
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
14
|
+
function defineLastVisible({ outer, inner, gap, opener, openerWidth, }) {
|
|
15
|
+
const items = [...inner.children].filter(el => el !== opener);
|
|
16
|
+
// если список пуст или состоит из одного элемента - видны все, открывашка не нужна
|
|
17
|
+
if (items.length <= 1) {
|
|
18
|
+
return { lastVisibleIndex: -1 };
|
|
19
|
+
}
|
|
20
|
+
const bounds = outer.getBoundingClientRect();
|
|
21
|
+
// индекс последнего элемента который должен быть виден
|
|
22
|
+
let lastVisibleIndex = items.length - 1;
|
|
23
|
+
while (items[lastVisibleIndex] &&
|
|
24
|
+
items[lastVisibleIndex].getBoundingClientRect().bottom > bounds.bottom) {
|
|
25
|
+
lastVisibleIndex--;
|
|
26
|
+
}
|
|
27
|
+
const last = items[items.length - 1];
|
|
28
|
+
// если последний видимый является последним в списке - видны все, открывашка не нужна
|
|
29
|
+
if (last === items[lastVisibleIndex]) {
|
|
30
|
+
return { lastVisibleIndex: -1 };
|
|
31
|
+
}
|
|
32
|
+
while (lastVisibleIndex >= 1 &&
|
|
33
|
+
items[lastVisibleIndex] &&
|
|
34
|
+
bounds.right - items[lastVisibleIndex].getBoundingClientRect().right < openerWidth + gap) {
|
|
35
|
+
lastVisibleIndex--;
|
|
36
|
+
}
|
|
37
|
+
// @todo он не должен быть первым на строке
|
|
38
|
+
return { lastVisibleIndex };
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Регистрирует обработчик изменения ширины элемента.
|
|
42
|
+
* @param element Элемент.
|
|
43
|
+
* @param callback Callback.
|
|
44
|
+
* @return Функция отписки.
|
|
45
|
+
*/
|
|
46
|
+
function observeWidth(element, callback) {
|
|
47
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
48
|
+
const getWidth = () => element.getBoundingClientRect().width;
|
|
49
|
+
let lastWidth = getWidth();
|
|
50
|
+
// ВАЖНО: поскольку ниже используется requestAnimationFrame проверяем активность через флаг
|
|
51
|
+
// в противном случае в React setState может быть вызван после размонтирования
|
|
52
|
+
let enabled = true;
|
|
53
|
+
// @todo использовать контекст
|
|
54
|
+
const observer = new ResizeObserver(() => {
|
|
55
|
+
requestAnimationFrame(() => {
|
|
56
|
+
if (!enabled) {
|
|
57
|
+
return;
|
|
31
58
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
// делаем все элементы списка видимыми чтобы правильно считать размеры
|
|
37
|
-
for (const item of items) {
|
|
38
|
-
item.classList.remove(expandable_group_module_scss_1.default.hidden);
|
|
39
|
-
}
|
|
40
|
-
// определяем какие элементы не влезли в ограничение по высоте
|
|
41
|
-
const state = defineViewState(wrapperEl, items, openerEl, gap);
|
|
42
|
-
if (state.lastVisibleIndex !== -1) {
|
|
43
|
-
// делаем невидимыми элементы списка которые не влезли
|
|
44
|
-
for (const [index, item] of items.entries()) {
|
|
45
|
-
if (item !== openerEl && index >= state.lastVisibleIndex) {
|
|
46
|
-
item.classList.add(expandable_group_module_scss_1.default.hidden);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
setHiddenCount(state.lastVisibleIndex !== -1 ? items.length - state.lastVisibleIndex : 0);
|
|
59
|
+
const actualWidth = getWidth();
|
|
60
|
+
if (lastWidth !== actualWidth) {
|
|
61
|
+
lastWidth = actualWidth;
|
|
62
|
+
callback(lastWidth);
|
|
51
63
|
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
observer.observe(element);
|
|
67
|
+
return () => {
|
|
68
|
+
enabled = false;
|
|
69
|
+
observer.disconnect();
|
|
70
|
+
};
|
|
59
71
|
}
|
|
60
|
-
exports.useExpandable = useExpandable;
|
|
61
72
|
/**
|
|
62
|
-
*
|
|
63
|
-
* @param
|
|
64
|
-
* @param
|
|
65
|
-
* @param opener Элемент "закрывашки".
|
|
66
|
-
* @param gap Расстояние между элементами списка.
|
|
67
|
-
* @return Состояние.
|
|
73
|
+
* Хук для регистрации обработчика изменения ширины элемента.
|
|
74
|
+
* @param ref Ref элемента.
|
|
75
|
+
* @param callback Callback.
|
|
68
76
|
*/
|
|
69
|
-
function
|
|
70
|
-
const
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
});
|
|
76
|
-
if (firstHiddenNodeIndex !== -1) {
|
|
77
|
-
const lastVisibleIndex = firstHiddenNodeIndex - 1;
|
|
78
|
-
const lastVisible = items[lastVisibleIndex];
|
|
79
|
-
if (lastVisible) {
|
|
80
|
-
const rightBound = lastVisible.getBoundingClientRect().right;
|
|
81
|
-
const rightContainerBound = wrapper.getBoundingClientRect().right;
|
|
82
|
-
// хватает ли кнопке места после последнего видимого дочернего элемента с учетом отступа между элементами
|
|
83
|
-
const isOpenerFit = rightContainerBound - rightBound - gap >= opener.clientWidth;
|
|
84
|
-
// если хватает места - ставим кнопку после последнего, иначе - вместо
|
|
85
|
-
// @todo возможна ситуация когда нужно будет удалить N элементов чтобы влезла кнопка
|
|
86
|
-
state.lastVisibleIndex = lastVisibleIndex + Number(isOpenerFit);
|
|
77
|
+
function useObserveWidth(ref, callback) {
|
|
78
|
+
const callbackRef = (0, react_1.useRef)(callback);
|
|
79
|
+
callbackRef.current = callback;
|
|
80
|
+
(0, react_1.useEffect)(() => {
|
|
81
|
+
if (!ref.current) {
|
|
82
|
+
return;
|
|
87
83
|
}
|
|
88
|
-
|
|
89
|
-
|
|
84
|
+
return observeWidth(ref.current, () => callbackRef.current());
|
|
85
|
+
}, [ref]);
|
|
90
86
|
}
|
|
91
|
-
|
|
87
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/expandable/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { FieldBlockProps, FieldBlockSize } from './types';
|
|
2
|
+
export declare const FIELD_BLOCK_HEIGHT: Record<FieldBlockSize, number>;
|
|
3
|
+
export declare const FIELD_BLOCK_DEFAULTS: {
|
|
4
|
+
readonly size: "l";
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Блок поля по дизайн-гайдам.
|
|
8
|
+
* @param props Свойства.
|
|
9
|
+
* @return Элемент.
|
|
10
|
+
*/
|
|
11
|
+
export declare function FieldBlock({ size, main, mainProps, disabled, failed, focused, label, labelProps, labelAsPlaceholder, fixedHeight, caption, rootRef, rootProps, blockRef, blockProps, adornmentStart, adornmentEnd, 'data-testid': testId, }: FieldBlockProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.FIELD_BLOCK_DEFAULTS = exports.FIELD_BLOCK_HEIGHT = void 0;
|
|
7
|
+
exports.FieldBlock = FieldBlock;
|
|
8
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
9
|
+
const bind_1 = __importDefault(require("classnames/bind"));
|
|
10
|
+
const field_block_m_scss_1 = __importDefault(require("./field-block.m.scss"));
|
|
11
|
+
const cx = bind_1.default.bind(field_block_m_scss_1.default);
|
|
12
|
+
exports.FIELD_BLOCK_HEIGHT = {
|
|
13
|
+
s: 32,
|
|
14
|
+
m: 40,
|
|
15
|
+
l: 56,
|
|
16
|
+
};
|
|
17
|
+
exports.FIELD_BLOCK_DEFAULTS = {
|
|
18
|
+
size: 'l',
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Блок поля по дизайн-гайдам.
|
|
22
|
+
* @param props Свойства.
|
|
23
|
+
* @return Элемент.
|
|
24
|
+
*/
|
|
25
|
+
function FieldBlock({ size = exports.FIELD_BLOCK_DEFAULTS.size, main, mainProps, disabled, failed, focused, label, labelProps, labelAsPlaceholder, fixedHeight = true, caption, rootRef, rootProps, blockRef, blockProps, adornmentStart, adornmentEnd, 'data-testid': testId = 'field-block', }) {
|
|
26
|
+
const needLabel = Boolean(label) && (size === 'l' || labelAsPlaceholder);
|
|
27
|
+
const rootClassName = cx('root', `size-${size}`, {
|
|
28
|
+
disabled,
|
|
29
|
+
focused,
|
|
30
|
+
failed,
|
|
31
|
+
'label-as-placeholder': needLabel && labelAsPlaceholder,
|
|
32
|
+
'no-label': !needLabel,
|
|
33
|
+
}, rootProps?.className);
|
|
34
|
+
const blockClassName = cx('block', fixedHeight && 'fixed-height', blockProps?.className);
|
|
35
|
+
return ((0, jsx_runtime_1.jsxs)("div", { ...rootProps, ref: rootRef, className: rootClassName, "data-testid": testId, children: [(0, jsx_runtime_1.jsxs)("div", { ...blockProps, ref: blockRef, className: blockClassName, "data-testid": 'field-block:block', children: [adornmentStart && ((0, jsx_runtime_1.jsx)("div", { className: cx('col', 'adornment-col', 'start'), "data-testid": 'field-block:adornment-start', children: adornmentStart })), (0, jsx_runtime_1.jsxs)("div", { className: cx('col', 'main-col'), children: [needLabel && ((0, jsx_runtime_1.jsx)("label", { ...labelProps, className: cx('label', labelProps?.className), "data-testid": 'field-block:label', children: label })), (0, jsx_runtime_1.jsx)("div", { ...mainProps, className: cx('main', mainProps?.className), "data-testid": 'field-block:main', children: main })] }), adornmentEnd && ((0, jsx_runtime_1.jsx)("div", { className: cx('col', 'adornment-col', 'end'), "data-testid": 'field-block:adornment-end', children: adornmentEnd }))] }), caption && ((0, jsx_runtime_1.jsx)("div", { className: cx('caption'), "data-testid": 'field-block:caption', children: caption }))] }));
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=field-block.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field-block.js","sourceRoot":"","sources":["../../src/field-block/field-block.tsx"],"names":[],"mappings":";;;;;;AAqBA,gCA6FC;;AAjHD,2DAAyC;AACzC,8EAA0C;AAE1C,MAAM,EAAE,GAAG,cAAU,CAAC,IAAI,CAAC,4BAAM,CAAC,CAAC;AAEtB,QAAA,kBAAkB,GAAmC;IAChE,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;IACL,CAAC,EAAE,EAAE;CACG,CAAC;AAEE,QAAA,oBAAoB,GAAG;IAClC,IAAI,EAAE,GAAG;CACD,CAAC;AAEX;;;;GAIG;AACH,SAAgB,UAAU,CAAC,EACzB,IAAI,GAAG,4BAAoB,CAAC,IAAI,EAChC,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,MAAM,EACN,OAAO,EACP,KAAK,EACL,UAAU,EACV,kBAAkB,EAClB,WAAW,GAAG,IAAI,EAClB,OAAO,EACP,OAAO,EACP,SAAS,EACT,QAAQ,EACR,UAAU,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EAAE,MAAM,GAAG,aAAa,GACrB;IAChB,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,kBAAkB,CAAC,CAAC;IAEzE,MAAM,aAAa,GAAG,EAAE,CACtB,MAAM,EACN,QAAQ,IAAI,EAAE,EACd;QACE,QAAQ;QACR,OAAO;QACP,MAAM;QACN,sBAAsB,EAAE,SAAS,IAAI,kBAAkB;QACvD,UAAU,EAAE,CAAC,SAAS;KACvB,EACD,SAAS,EAAE,SAAS,CACrB,CAAC;IAEF,MAAM,cAAc,GAAG,EAAE,CAAC,OAAO,EAAE,WAAW,IAAI,cAAc,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IAEzF,OAAO,CACL,oCAAS,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,iBAAe,MAAM,aAE7E,oCACM,UAAU,EACd,GAAG,EAAE,QAAQ,EACb,SAAS,EAAE,cAAc,iBACb,mBAAmB,aAE9B,cAAc,IAAI,CACjB,gCACE,SAAS,EAAE,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,CAAC,iBAClC,6BAA6B,YAExC,cAAc,GACX,CACP,EAED,iCAAK,SAAS,EAAE,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,aAClC,SAAS,IAAI,CACZ,qCACM,UAAU,EACd,SAAS,EAAE,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,iBACjC,mBAAmB,YAE9B,KAAK,GACA,CACT,EAGD,mCACM,SAAS,EACb,SAAS,EAAE,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,iBAC/B,kBAAkB,YAE7B,IAAI,GACD,IACF,EAEL,YAAY,IAAI,CACf,gCACE,SAAS,EAAE,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,iBAChC,2BAA2B,YAEtC,YAAY,GACT,CACP,IACG,EAEL,OAAO,IAAI,CACV,gCAAK,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,iBAAc,qBAAqB,YAC7D,OAAO,GACJ,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
|