@alfalab/core-components-picker-button 7.6.2 → 7.6.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/Component.d.ts +1 -1
  3. package/dist/Component.js +2 -2
  4. package/dist/cssm/Component.d.ts +1 -1
  5. package/dist/cssm/field/Component.d.ts +1 -1
  6. package/dist/cssm/option/Component.d.ts +2 -2
  7. package/dist/cssm/{typings-a22d6eaf.d.ts → typings-f60445d7.d.ts} +28 -0
  8. package/dist/esm/Component.d.ts +1 -1
  9. package/dist/esm/Component.js +2 -2
  10. package/dist/esm/field/Component.d.ts +1 -1
  11. package/dist/esm/field/Component.js +2 -2
  12. package/dist/esm/field/index.css +3 -3
  13. package/dist/esm/field/index.js +1 -1
  14. package/dist/esm/index.css +6 -6
  15. package/dist/esm/index.js +1 -1
  16. package/dist/esm/option/Component.d.ts +2 -2
  17. package/dist/esm/option/Component.js +2 -2
  18. package/dist/esm/option/index.css +4 -4
  19. package/dist/esm/option/index.js +1 -1
  20. package/dist/esm/{tslib.es6-5aaed0d7.d.ts → tslib.es6-f0c1ad6a.d.ts} +0 -0
  21. package/dist/esm/{tslib.es6-5aaed0d7.js → tslib.es6-f0c1ad6a.js} +0 -0
  22. package/dist/{modern/typings-a22d6eaf.d.ts → esm/typings-f60445d7.d.ts} +28 -0
  23. package/dist/field/Component.d.ts +1 -1
  24. package/dist/field/Component.js +2 -2
  25. package/dist/field/index.css +3 -3
  26. package/dist/field/index.js +1 -1
  27. package/dist/index.css +6 -6
  28. package/dist/index.js +1 -1
  29. package/dist/modern/Component.d.ts +1 -1
  30. package/dist/modern/Component.js +1 -1
  31. package/dist/modern/field/Component.d.ts +1 -1
  32. package/dist/modern/field/Component.js +1 -1
  33. package/dist/modern/field/index.css +3 -3
  34. package/dist/modern/index.css +6 -6
  35. package/dist/modern/option/Component.d.ts +2 -2
  36. package/dist/modern/option/Component.js +1 -1
  37. package/dist/modern/option/index.css +4 -4
  38. package/dist/{typings-a22d6eaf.d.ts → modern/typings-f60445d7.d.ts} +28 -0
  39. package/dist/option/Component.d.ts +2 -2
  40. package/dist/option/Component.js +2 -2
  41. package/dist/option/index.css +4 -4
  42. package/dist/option/index.js +1 -1
  43. package/dist/{tslib.es6-62e46619.d.ts → tslib.es6-5504c85c.d.ts} +0 -0
  44. package/dist/{tslib.es6-62e46619.js → tslib.es6-5504c85c.js} +0 -0
  45. package/dist/{esm/typings-a22d6eaf.d.ts → typings-f60445d7.d.ts} +28 -0
  46. package/package.json +5 -5
package/CHANGELOG.md CHANGED
@@ -3,6 +3,22 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [7.6.4](https://github.com/alfa-laboratory/core-components/compare/@alfalab/core-components-picker-button@7.6.3...@alfalab/core-components-picker-button@7.6.4) (2022-03-29)
7
+
8
+ **Note:** Version bump only for package @alfalab/core-components-picker-button
9
+
10
+
11
+
12
+
13
+
14
+ ## [7.6.3](https://github.com/alfa-laboratory/core-components/compare/@alfalab/core-components-picker-button@7.6.2...@alfalab/core-components-picker-button@7.6.3) (2022-03-24)
15
+
16
+ **Note:** Version bump only for package @alfalab/core-components-picker-button
17
+
18
+
19
+
20
+
21
+
6
22
  ## [7.6.2](https://github.com/alfa-laboratory/core-components/compare/@alfalab/core-components-picker-button@7.6.1...@alfalab/core-components-picker-button@7.6.2) (2022-03-04)
7
23
 
8
24
  **Note:** Version bump only for package @alfalab/core-components-picker-button
@@ -21,7 +21,7 @@ type PickerButtonProps = Omit<BaseSelectProps, 'Field' | 'placeholder' | 'Arrow'
21
21
  */
22
22
  variant?: PickerButtonVariant;
23
23
  };
24
- declare const PickerButton: React.ForwardRefExoticComponent<Pick<BaseSelectProps, "className" | "dataTestId" | "label" | "block" | "id" | "onBlur" | "onChange" | "onScroll" | "disabled" | "name" | "fieldClassName" | "error" | "preventFlip" | "popperClassName" | "open" | "valueRenderer" | "Optgroup" | "visibleOptions" | "Option" | "optionsListClassName" | "optionClassName" | "circularNavigation" | "nativeSelect" | "defaultOpen" | "popoverPosition" | "optionsListWidth" | "optionsSize" | "optionsListProps" | "optionProps" | "onOpen" | "OptionsList" | "updatePopover" | "zIndexPopover" | "showEmptyOptionsList"> & Pick<Partial<import("@alfalab/core-components-button").ComponentProps & React.AnchorHTMLAttributes<HTMLAnchorElement>> | Partial<import("@alfalab/core-components-button").ComponentProps & React.ButtonHTMLAttributes<HTMLButtonElement>>, "view" | "leftAddons" | "rightAddons" | "loading"> & {
24
+ declare const PickerButton: React.ForwardRefExoticComponent<Pick<BaseSelectProps, "className" | "dataTestId" | "label" | "block" | "id" | "onBlur" | "onChange" | "onScroll" | "disabled" | "name" | "fieldClassName" | "error" | "preventFlip" | "popperClassName" | "open" | "valueRenderer" | "Optgroup" | "visibleOptions" | "optionGroupClassName" | "Option" | "optionsListClassName" | "optionClassName" | "circularNavigation" | "nativeSelect" | "defaultOpen" | "popoverPosition" | "optionsListWidth" | "optionsSize" | "optionsListProps" | "optionProps" | "onOpen" | "OptionsList" | "updatePopover" | "zIndexPopover" | "showEmptyOptionsList"> & Pick<Partial<import("@alfalab/core-components-button").ComponentProps & React.AnchorHTMLAttributes<HTMLAnchorElement>> | Partial<import("@alfalab/core-components-button").ComponentProps & React.ButtonHTMLAttributes<HTMLButtonElement>>, "view" | "leftAddons" | "rightAddons" | "loading"> & {
25
25
  options: (OptionShape & {
26
26
  /**
27
27
  * Иконка, отображающаяся слева от текстового представления пункта
package/dist/Component.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib_es6 = require('./tslib.es6-62e46619.js');
5
+ var tslib_es6 = require('./tslib.es6-5504c85c.js');
6
6
  var React = require('react');
7
7
  var cn = require('classnames');
8
8
  var coreComponentsSelect = require('@alfalab/core-components-select');
@@ -20,7 +20,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
20
20
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
21
21
  var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
22
22
 
23
- var styles = {"container":"picker-button__container_1htj9","optionsPopover":"picker-button__optionsPopover_1htj9","sideGap":"picker-button__sideGap_1htj9","optionsListContainer":"picker-button__optionsListContainer_1htj9","option":"picker-button__option_1htj9"};
23
+ var styles = {"container":"picker-button__container_11py0","optionsPopover":"picker-button__optionsPopover_11py0","sideGap":"picker-button__sideGap_11py0","optionsListContainer":"picker-button__optionsListContainer_11py0","option":"picker-button__option_11py0"};
24
24
  require('./index.css')
25
25
 
26
26
  var SIDE_POSITIONS = ['right', 'right-start', 'right-end', 'left', 'left-start', 'left-end'];
@@ -21,7 +21,7 @@ type PickerButtonProps = Omit<BaseSelectProps, 'Field' | 'placeholder' | 'Arrow'
21
21
  */
22
22
  variant?: PickerButtonVariant;
23
23
  };
24
- declare const PickerButton: React.ForwardRefExoticComponent<Pick<BaseSelectProps, "className" | "dataTestId" | "label" | "block" | "id" | "onBlur" | "onChange" | "onScroll" | "disabled" | "name" | "fieldClassName" | "error" | "preventFlip" | "popperClassName" | "open" | "valueRenderer" | "Optgroup" | "visibleOptions" | "Option" | "optionsListClassName" | "optionClassName" | "circularNavigation" | "nativeSelect" | "defaultOpen" | "popoverPosition" | "optionsListWidth" | "optionsSize" | "optionsListProps" | "optionProps" | "onOpen" | "OptionsList" | "updatePopover" | "zIndexPopover" | "showEmptyOptionsList"> & Pick<Partial<import("@alfalab/core-components-button").ComponentProps & React.AnchorHTMLAttributes<HTMLAnchorElement>> | Partial<import("@alfalab/core-components-button").ComponentProps & React.ButtonHTMLAttributes<HTMLButtonElement>>, "view" | "leftAddons" | "rightAddons" | "loading"> & {
24
+ declare const PickerButton: React.ForwardRefExoticComponent<Pick<BaseSelectProps, "className" | "dataTestId" | "label" | "block" | "id" | "onBlur" | "onChange" | "onScroll" | "disabled" | "name" | "fieldClassName" | "error" | "preventFlip" | "popperClassName" | "open" | "valueRenderer" | "Optgroup" | "visibleOptions" | "optionGroupClassName" | "Option" | "optionsListClassName" | "optionClassName" | "circularNavigation" | "nativeSelect" | "defaultOpen" | "popoverPosition" | "optionsListWidth" | "optionsSize" | "optionsListProps" | "optionProps" | "onOpen" | "OptionsList" | "updatePopover" | "zIndexPopover" | "showEmptyOptionsList"> & Pick<Partial<import("@alfalab/core-components-button").ComponentProps & React.AnchorHTMLAttributes<HTMLAnchorElement>> | Partial<import("@alfalab/core-components-button").ComponentProps & React.ButtonHTMLAttributes<HTMLButtonElement>>, "view" | "leftAddons" | "rightAddons" | "loading"> & {
25
25
  options: (OptionShape & {
26
26
  /**
27
27
  * Иконка, отображающаяся слева от текстового представления пункта
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { ButtonProps } from "@alfalab/core-components-button";
3
- import { FieldProps as BaseFieldProps } from "../typings-a22d6eaf";
3
+ import { FieldProps as BaseFieldProps } from "../typings-f60445d7";
4
4
  import { PickerButtonSize, PickerButtonVariant } from "../Component";
5
5
  type FieldProps = Omit<BaseFieldProps, 'size' | 'hint' | 'success' | 'error' | 'placeholder'> & ButtonProps & {
6
6
  buttonSize?: PickerButtonSize;
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { FC, SVGProps } from 'react';
3
- import { OptionShape } from "../typings-a22d6eaf";
4
- import { OptionProps as BaseOptionProps } from "../typings-a22d6eaf";
3
+ import { OptionShape } from "../typings-f60445d7";
4
+ import { OptionProps as BaseOptionProps } from "../typings-f60445d7";
5
5
  type OptionProps = Omit<BaseOptionProps, 'option'> & {
6
6
  option: OptionShape & {
7
7
  icon?: FC<SVGProps<SVGSVGElement>>;
@@ -426,6 +426,10 @@ type BaseSelectProps = {
426
426
  * Дополнительный класс для пункта меню
427
427
  */
428
428
  optionClassName?: string;
429
+ /**
430
+ * Дополнительный класс для компонента группы пунктов
431
+ */
432
+ optionGroupClassName?: string;
429
433
  /**
430
434
  * Дополнительный класс для поповера
431
435
  */
@@ -703,6 +707,10 @@ type OptionsListProps = {
703
707
  * Дополнительный класс
704
708
  */
705
709
  className?: string;
710
+ /**
711
+ * Дополнительный класс для компонента группы пунктов
712
+ */
713
+ optionGroupClassName?: string;
706
714
  /**
707
715
  * Размер компонента
708
716
  */
@@ -775,8 +783,24 @@ type OptionsListProps = {
775
783
  * Дополнительные пропсы для Input'a, находящегося внутри кастомного OptionsList
776
784
  */
777
785
  inputProps?: InputProps;
786
+ /**
787
+ * Нужно ли показывать футер
788
+ */
789
+ showFooter?: boolean;
790
+ /**
791
+ * Обработчик подтверждения изменений
792
+ */
793
+ onApply?: () => void;
794
+ /**
795
+ * Обработчик отмены изменений
796
+ */
797
+ onClear?: () => void;
778
798
  };
779
799
  type OptgroupProps = {
800
+ /**
801
+ * Дополнительный класс для компонента группы пунктов
802
+ */
803
+ className?: string;
780
804
  /**
781
805
  * Размер компонента
782
806
  */
@@ -863,5 +887,9 @@ type CheckmarkProps = {
863
887
  * Расположение отметки
864
888
  */
865
889
  position?: 'before' | 'after';
890
+ /**
891
+ * Иконка выбранного пункта
892
+ */
893
+ icon?: React.FC<React.SVGProps<SVGSVGElement>>;
866
894
  };
867
895
  export { Position, PopoverProps, Popover, InputProps, Input, stackingOrder, StackingContext, StackProps, Stack, PortalProps, Portal, PORTAL_CONTAINER_ATTRIBUTE, getDefaultPortalContainer, setRef, FormControlProps, FormControl, OptionShape, GroupShape, BaseSelectProps, FieldProps, ArrowProps, OptionsListProps, OptgroupProps, OptionProps, CheckmarkProps };
@@ -21,7 +21,7 @@ type PickerButtonProps = Omit<BaseSelectProps, 'Field' | 'placeholder' | 'Arrow'
21
21
  */
22
22
  variant?: PickerButtonVariant;
23
23
  };
24
- declare const PickerButton: React.ForwardRefExoticComponent<Pick<BaseSelectProps, "className" | "dataTestId" | "label" | "block" | "id" | "onBlur" | "onChange" | "onScroll" | "disabled" | "name" | "fieldClassName" | "error" | "preventFlip" | "popperClassName" | "open" | "valueRenderer" | "Optgroup" | "visibleOptions" | "Option" | "optionsListClassName" | "optionClassName" | "circularNavigation" | "nativeSelect" | "defaultOpen" | "popoverPosition" | "optionsListWidth" | "optionsSize" | "optionsListProps" | "optionProps" | "onOpen" | "OptionsList" | "updatePopover" | "zIndexPopover" | "showEmptyOptionsList"> & Pick<Partial<import("@alfalab/core-components-button").ComponentProps & React.AnchorHTMLAttributes<HTMLAnchorElement>> | Partial<import("@alfalab/core-components-button").ComponentProps & React.ButtonHTMLAttributes<HTMLButtonElement>>, "view" | "leftAddons" | "rightAddons" | "loading"> & {
24
+ declare const PickerButton: React.ForwardRefExoticComponent<Pick<BaseSelectProps, "className" | "dataTestId" | "label" | "block" | "id" | "onBlur" | "onChange" | "onScroll" | "disabled" | "name" | "fieldClassName" | "error" | "preventFlip" | "popperClassName" | "open" | "valueRenderer" | "Optgroup" | "visibleOptions" | "optionGroupClassName" | "Option" | "optionsListClassName" | "optionClassName" | "circularNavigation" | "nativeSelect" | "defaultOpen" | "popoverPosition" | "optionsListWidth" | "optionsSize" | "optionsListProps" | "optionProps" | "onOpen" | "OptionsList" | "updatePopover" | "zIndexPopover" | "showEmptyOptionsList"> & Pick<Partial<import("@alfalab/core-components-button").ComponentProps & React.AnchorHTMLAttributes<HTMLAnchorElement>> | Partial<import("@alfalab/core-components-button").ComponentProps & React.ButtonHTMLAttributes<HTMLButtonElement>>, "view" | "leftAddons" | "rightAddons" | "loading"> & {
25
25
  options: (OptionShape & {
26
26
  /**
27
27
  * Иконка, отображающаяся слева от текстового представления пункта
@@ -1,4 +1,4 @@
1
- import { _ as __rest, a as __assign } from './tslib.es6-5aaed0d7.js';
1
+ import { _ as __rest, a as __assign } from './tslib.es6-f0c1ad6a.js';
2
2
  import React, { forwardRef } from 'react';
3
3
  import cn from 'classnames';
4
4
  import { BaseSelect, OptionsList, Optgroup } from '@alfalab/core-components-select/dist/esm';
@@ -11,7 +11,7 @@ import './utils/index.js';
11
11
  import { Field } from './field/Component.js';
12
12
  import { Option } from './option/Component.js';
13
13
 
14
- var styles = {"container":"picker-button__container_1htj9","optionsPopover":"picker-button__optionsPopover_1htj9","sideGap":"picker-button__sideGap_1htj9","optionsListContainer":"picker-button__optionsListContainer_1htj9","option":"picker-button__option_1htj9"};
14
+ var styles = {"container":"picker-button__container_11py0","optionsPopover":"picker-button__optionsPopover_11py0","sideGap":"picker-button__sideGap_11py0","optionsListContainer":"picker-button__optionsListContainer_11py0","option":"picker-button__option_11py0"};
15
15
  require('./index.css')
16
16
 
17
17
  var SIDE_POSITIONS = ['right', 'right-start', 'right-end', 'left', 'left-start', 'left-end'];
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { ButtonProps } from "@alfalab/core-components-button";
3
- import { FieldProps as BaseFieldProps } from "../typings-a22d6eaf";
3
+ import { FieldProps as BaseFieldProps } from "../typings-f60445d7";
4
4
  import { PickerButtonSize, PickerButtonVariant } from "../Component";
5
5
  type FieldProps = Omit<BaseFieldProps, 'size' | 'hint' | 'success' | 'error' | 'placeholder'> & ButtonProps & {
6
6
  buttonSize?: PickerButtonSize;
@@ -1,4 +1,4 @@
1
- import { _ as __rest, a as __assign } from '../tslib.es6-5aaed0d7.js';
1
+ import { _ as __rest, a as __assign } from '../tslib.es6-f0c1ad6a.js';
2
2
  import React from 'react';
3
3
  import cn from 'classnames';
4
4
  import { Button } from '@alfalab/core-components-button/dist/esm';
@@ -8,7 +8,7 @@ import '@alfalab/icons-glyph/MoreMIcon';
8
8
  import '@alfalab/icons-glyph/MoreSIcon';
9
9
  import { getIcon } from '../utils/index.js';
10
10
 
11
- var styles = {"iconContainer":"picker-button__iconContainer_1wpjw","open":"picker-button__open_1wpjw"};
11
+ var styles = {"iconContainer":"picker-button__iconContainer_1e7oc","open":"picker-button__open_1e7oc"};
12
12
  require('./index.css')
13
13
 
14
14
  var Field = function (_a) {
@@ -1,4 +1,4 @@
1
- /* hash: egan7 */
1
+ /* hash: zynib */
2
2
  :root {
3
3
 
4
4
  /* Hard */
@@ -10,10 +10,10 @@
10
10
  :root {
11
11
  --arrow-transform: rotate(180deg);
12
12
  }
13
- .picker-button__iconContainer_1wpjw {
13
+ .picker-button__iconContainer_1e7oc {
14
14
  display: flex;
15
15
  transition: transform 0.15s ease-in-out;
16
16
  }
17
- .picker-button__open_1wpjw {
17
+ .picker-button__open_1e7oc {
18
18
  transform: var(--arrow-transform);
19
19
  }
@@ -1,4 +1,4 @@
1
- import '../tslib.es6-5aaed0d7.js';
1
+ import '../tslib.es6-f0c1ad6a.js';
2
2
  import 'react';
3
3
  import 'classnames';
4
4
  import '@alfalab/core-components-button/dist/esm';
@@ -1,4 +1,4 @@
1
- /* hash: 1nswe */
1
+ /* hash: 12ajj */
2
2
  :root {
3
3
 
4
4
  /* Hard */
@@ -14,18 +14,18 @@
14
14
  :root {
15
15
  --border-radius-s: 4px;
16
16
  }
17
- .picker-button__container_1htj9 {
17
+ .picker-button__container_11py0 {
18
18
  min-width: auto;
19
19
  }
20
- .picker-button__optionsPopover_1htj9 {
20
+ .picker-button__optionsPopover_11py0 {
21
21
  padding: var(--gap-xs) 0
22
22
  }
23
- .picker-button__optionsPopover_1htj9.picker-button__sideGap_1htj9 {
23
+ .picker-button__optionsPopover_11py0.picker-button__sideGap_11py0 {
24
24
  padding: 0 var(--gap-xs);
25
25
  }
26
- .picker-button__optionsListContainer_1htj9 {
26
+ .picker-button__optionsListContainer_11py0 {
27
27
  border-radius: var(--border-radius-s);
28
28
  }
29
- .picker-button__option_1htj9 {
29
+ .picker-button__option_11py0 {
30
30
  padding: 0 var(--gap-m);
31
31
  }
package/dist/esm/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import './tslib.es6-5aaed0d7.js';
1
+ import './tslib.es6-f0c1ad6a.js';
2
2
  import 'react';
3
3
  import 'classnames';
4
4
  import '@alfalab/core-components-select/dist/esm';
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { FC, SVGProps } from 'react';
3
- import { OptionShape } from "../typings-a22d6eaf";
4
- import { OptionProps as BaseOptionProps } from "../typings-a22d6eaf";
3
+ import { OptionShape } from "../typings-f60445d7";
4
+ import { OptionProps as BaseOptionProps } from "../typings-f60445d7";
5
5
  type OptionProps = Omit<BaseOptionProps, 'option'> & {
6
6
  option: OptionShape & {
7
7
  icon?: FC<SVGProps<SVGSVGElement>>;
@@ -1,8 +1,8 @@
1
- import { _ as __rest, a as __assign } from '../tslib.es6-5aaed0d7.js';
1
+ import { _ as __rest, a as __assign } from '../tslib.es6-f0c1ad6a.js';
2
2
  import React from 'react';
3
3
  import { Option as Option$1 } from '@alfalab/core-components-select/dist/esm';
4
4
 
5
- var styles = {"container":"picker-button__container_u543a","icon":"picker-button__icon_u543a","content":"picker-button__content_u543a"};
5
+ var styles = {"container":"picker-button__container_1tdm7","icon":"picker-button__icon_1tdm7","content":"picker-button__content_1tdm7"};
6
6
  require('./index.css')
7
7
 
8
8
  var Option = function (_a) {
@@ -1,4 +1,4 @@
1
- /* hash: 1l3o6 */
1
+ /* hash: 7kwz5 */
2
2
  :root {
3
3
 
4
4
  /* Hard */
@@ -10,15 +10,15 @@
10
10
  :root {
11
11
  --gap-s: 12px;
12
12
  }
13
- .picker-button__container_u543a {
13
+ .picker-button__container_1tdm7 {
14
14
  display: flex;
15
15
  align-items: center;
16
16
  }
17
- .picker-button__icon_u543a {
17
+ .picker-button__icon_1tdm7 {
18
18
  display: flex;
19
19
  margin-right: var(--gap-s);
20
20
  }
21
- .picker-button__content_u543a {
21
+ .picker-button__content_1tdm7 {
22
22
  overflow: hidden;
23
23
  flex: 1;
24
24
  text-overflow: ellipsis;
@@ -1,4 +1,4 @@
1
- import '../tslib.es6-5aaed0d7.js';
1
+ import '../tslib.es6-f0c1ad6a.js';
2
2
  import 'react';
3
3
  import '@alfalab/core-components-select/dist/esm';
4
4
  export { Option } from './Component.js';
@@ -426,6 +426,10 @@ type BaseSelectProps = {
426
426
  * Дополнительный класс для пункта меню
427
427
  */
428
428
  optionClassName?: string;
429
+ /**
430
+ * Дополнительный класс для компонента группы пунктов
431
+ */
432
+ optionGroupClassName?: string;
429
433
  /**
430
434
  * Дополнительный класс для поповера
431
435
  */
@@ -703,6 +707,10 @@ type OptionsListProps = {
703
707
  * Дополнительный класс
704
708
  */
705
709
  className?: string;
710
+ /**
711
+ * Дополнительный класс для компонента группы пунктов
712
+ */
713
+ optionGroupClassName?: string;
706
714
  /**
707
715
  * Размер компонента
708
716
  */
@@ -775,8 +783,24 @@ type OptionsListProps = {
775
783
  * Дополнительные пропсы для Input'a, находящегося внутри кастомного OptionsList
776
784
  */
777
785
  inputProps?: InputProps;
786
+ /**
787
+ * Нужно ли показывать футер
788
+ */
789
+ showFooter?: boolean;
790
+ /**
791
+ * Обработчик подтверждения изменений
792
+ */
793
+ onApply?: () => void;
794
+ /**
795
+ * Обработчик отмены изменений
796
+ */
797
+ onClear?: () => void;
778
798
  };
779
799
  type OptgroupProps = {
800
+ /**
801
+ * Дополнительный класс для компонента группы пунктов
802
+ */
803
+ className?: string;
780
804
  /**
781
805
  * Размер компонента
782
806
  */
@@ -863,5 +887,9 @@ type CheckmarkProps = {
863
887
  * Расположение отметки
864
888
  */
865
889
  position?: 'before' | 'after';
890
+ /**
891
+ * Иконка выбранного пункта
892
+ */
893
+ icon?: React.FC<React.SVGProps<SVGSVGElement>>;
866
894
  };
867
895
  export { Position, PopoverProps, Popover, InputProps, Input, stackingOrder, StackingContext, StackProps, Stack, PortalProps, Portal, PORTAL_CONTAINER_ATTRIBUTE, getDefaultPortalContainer, setRef, FormControlProps, FormControl, OptionShape, GroupShape, BaseSelectProps, FieldProps, ArrowProps, OptionsListProps, OptgroupProps, OptionProps, CheckmarkProps };
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { ButtonProps } from "@alfalab/core-components-button";
3
- import { FieldProps as BaseFieldProps } from "../typings-a22d6eaf";
3
+ import { FieldProps as BaseFieldProps } from "../typings-f60445d7";
4
4
  import { PickerButtonSize, PickerButtonVariant } from "../Component";
5
5
  type FieldProps = Omit<BaseFieldProps, 'size' | 'hint' | 'success' | 'error' | 'placeholder'> & ButtonProps & {
6
6
  buttonSize?: PickerButtonSize;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib_es6 = require('../tslib.es6-62e46619.js');
5
+ var tslib_es6 = require('../tslib.es6-5504c85c.js');
6
6
  var React = require('react');
7
7
  var cn = require('classnames');
8
8
  var coreComponentsButton = require('@alfalab/core-components-button');
@@ -17,7 +17,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
17
17
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
18
18
  var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
19
19
 
20
- var styles = {"iconContainer":"picker-button__iconContainer_1wpjw","open":"picker-button__open_1wpjw"};
20
+ var styles = {"iconContainer":"picker-button__iconContainer_1e7oc","open":"picker-button__open_1e7oc"};
21
21
  require('./index.css')
22
22
 
23
23
  var Field = function (_a) {
@@ -1,4 +1,4 @@
1
- /* hash: egan7 */
1
+ /* hash: zynib */
2
2
  :root {
3
3
 
4
4
  /* Hard */
@@ -10,10 +10,10 @@
10
10
  :root {
11
11
  --arrow-transform: rotate(180deg);
12
12
  }
13
- .picker-button__iconContainer_1wpjw {
13
+ .picker-button__iconContainer_1e7oc {
14
14
  display: flex;
15
15
  transition: transform 0.15s ease-in-out;
16
16
  }
17
- .picker-button__open_1wpjw {
17
+ .picker-button__open_1e7oc {
18
18
  transform: var(--arrow-transform);
19
19
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../tslib.es6-62e46619.js');
5
+ require('../tslib.es6-5504c85c.js');
6
6
  require('react');
7
7
  require('classnames');
8
8
  require('@alfalab/core-components-button');
package/dist/index.css CHANGED
@@ -1,4 +1,4 @@
1
- /* hash: 1nswe */
1
+ /* hash: 12ajj */
2
2
  :root {
3
3
 
4
4
  /* Hard */
@@ -14,18 +14,18 @@
14
14
  :root {
15
15
  --border-radius-s: 4px;
16
16
  }
17
- .picker-button__container_1htj9 {
17
+ .picker-button__container_11py0 {
18
18
  min-width: auto;
19
19
  }
20
- .picker-button__optionsPopover_1htj9 {
20
+ .picker-button__optionsPopover_11py0 {
21
21
  padding: var(--gap-xs) 0
22
22
  }
23
- .picker-button__optionsPopover_1htj9.picker-button__sideGap_1htj9 {
23
+ .picker-button__optionsPopover_11py0.picker-button__sideGap_11py0 {
24
24
  padding: 0 var(--gap-xs);
25
25
  }
26
- .picker-button__optionsListContainer_1htj9 {
26
+ .picker-button__optionsListContainer_11py0 {
27
27
  border-radius: var(--border-radius-s);
28
28
  }
29
- .picker-button__option_1htj9 {
29
+ .picker-button__option_11py0 {
30
30
  padding: 0 var(--gap-m);
31
31
  }
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('./tslib.es6-62e46619.js');
5
+ require('./tslib.es6-5504c85c.js');
6
6
  require('react');
7
7
  require('classnames');
8
8
  require('@alfalab/core-components-select');
@@ -21,7 +21,7 @@ type PickerButtonProps = Omit<BaseSelectProps, 'Field' | 'placeholder' | 'Arrow'
21
21
  */
22
22
  variant?: PickerButtonVariant;
23
23
  };
24
- declare const PickerButton: React.ForwardRefExoticComponent<Pick<BaseSelectProps, "className" | "dataTestId" | "label" | "block" | "id" | "onBlur" | "onChange" | "onScroll" | "disabled" | "name" | "fieldClassName" | "error" | "preventFlip" | "popperClassName" | "open" | "valueRenderer" | "Optgroup" | "visibleOptions" | "Option" | "optionsListClassName" | "optionClassName" | "circularNavigation" | "nativeSelect" | "defaultOpen" | "popoverPosition" | "optionsListWidth" | "optionsSize" | "optionsListProps" | "optionProps" | "onOpen" | "OptionsList" | "updatePopover" | "zIndexPopover" | "showEmptyOptionsList"> & Pick<Partial<import("@alfalab/core-components-button").ComponentProps & React.AnchorHTMLAttributes<HTMLAnchorElement>> | Partial<import("@alfalab/core-components-button").ComponentProps & React.ButtonHTMLAttributes<HTMLButtonElement>>, "view" | "leftAddons" | "rightAddons" | "loading"> & {
24
+ declare const PickerButton: React.ForwardRefExoticComponent<Pick<BaseSelectProps, "className" | "dataTestId" | "label" | "block" | "id" | "onBlur" | "onChange" | "onScroll" | "disabled" | "name" | "fieldClassName" | "error" | "preventFlip" | "popperClassName" | "open" | "valueRenderer" | "Optgroup" | "visibleOptions" | "optionGroupClassName" | "Option" | "optionsListClassName" | "optionClassName" | "circularNavigation" | "nativeSelect" | "defaultOpen" | "popoverPosition" | "optionsListWidth" | "optionsSize" | "optionsListProps" | "optionProps" | "onOpen" | "OptionsList" | "updatePopover" | "zIndexPopover" | "showEmptyOptionsList"> & Pick<Partial<import("@alfalab/core-components-button").ComponentProps & React.AnchorHTMLAttributes<HTMLAnchorElement>> | Partial<import("@alfalab/core-components-button").ComponentProps & React.ButtonHTMLAttributes<HTMLButtonElement>>, "view" | "leftAddons" | "rightAddons" | "loading"> & {
25
25
  options: (OptionShape & {
26
26
  /**
27
27
  * Иконка, отображающаяся слева от текстового представления пункта
@@ -10,7 +10,7 @@ import './utils/index.js';
10
10
  import { Field } from './field/Component.js';
11
11
  import { Option } from './option/Component.js';
12
12
 
13
- var styles = {"container":"picker-button__container_1htj9","optionsPopover":"picker-button__optionsPopover_1htj9","sideGap":"picker-button__sideGap_1htj9","optionsListContainer":"picker-button__optionsListContainer_1htj9","option":"picker-button__option_1htj9"};
13
+ var styles = {"container":"picker-button__container_11py0","optionsPopover":"picker-button__optionsPopover_11py0","sideGap":"picker-button__sideGap_11py0","optionsListContainer":"picker-button__optionsListContainer_11py0","option":"picker-button__option_11py0"};
14
14
  require('./index.css')
15
15
 
16
16
  const SIDE_POSITIONS = ['right', 'right-start', 'right-end', 'left', 'left-start', 'left-end'];
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { ButtonProps } from "@alfalab/core-components-button";
3
- import { FieldProps as BaseFieldProps } from "../typings-a22d6eaf";
3
+ import { FieldProps as BaseFieldProps } from "../typings-f60445d7";
4
4
  import { PickerButtonSize, PickerButtonVariant } from "../Component";
5
5
  type FieldProps = Omit<BaseFieldProps, 'size' | 'hint' | 'success' | 'error' | 'placeholder'> & ButtonProps & {
6
6
  buttonSize?: PickerButtonSize;
@@ -7,7 +7,7 @@ import '@alfalab/icons-glyph/MoreMIcon';
7
7
  import '@alfalab/icons-glyph/MoreSIcon';
8
8
  import { getIcon } from '../utils/index.js';
9
9
 
10
- var styles = {"iconContainer":"picker-button__iconContainer_1wpjw","open":"picker-button__open_1wpjw"};
10
+ var styles = {"iconContainer":"picker-button__iconContainer_1e7oc","open":"picker-button__open_1e7oc"};
11
11
  require('./index.css')
12
12
 
13
13
  const Field = ({ buttonSize = 'm', buttonVariant = 'default', view, label, open, multiple, rightAddons, Arrow, innerProps, className, selected, selectedMultiple, valueRenderer, ...restProps }) => {
@@ -1,4 +1,4 @@
1
- /* hash: egan7 */
1
+ /* hash: zynib */
2
2
  :root {
3
3
 
4
4
  /* Hard */
@@ -10,10 +10,10 @@
10
10
  :root {
11
11
  --arrow-transform: rotate(180deg);
12
12
  }
13
- .picker-button__iconContainer_1wpjw {
13
+ .picker-button__iconContainer_1e7oc {
14
14
  display: flex;
15
15
  transition: transform 0.15s ease-in-out;
16
16
  }
17
- .picker-button__open_1wpjw {
17
+ .picker-button__open_1e7oc {
18
18
  transform: var(--arrow-transform);
19
19
  }
@@ -1,4 +1,4 @@
1
- /* hash: 1nswe */
1
+ /* hash: 12ajj */
2
2
  :root {
3
3
 
4
4
  /* Hard */
@@ -14,18 +14,18 @@
14
14
  :root {
15
15
  --border-radius-s: 4px;
16
16
  }
17
- .picker-button__container_1htj9 {
17
+ .picker-button__container_11py0 {
18
18
  min-width: auto;
19
19
  }
20
- .picker-button__optionsPopover_1htj9 {
20
+ .picker-button__optionsPopover_11py0 {
21
21
  padding: var(--gap-xs) 0
22
22
  }
23
- .picker-button__optionsPopover_1htj9.picker-button__sideGap_1htj9 {
23
+ .picker-button__optionsPopover_11py0.picker-button__sideGap_11py0 {
24
24
  padding: 0 var(--gap-xs);
25
25
  }
26
- .picker-button__optionsListContainer_1htj9 {
26
+ .picker-button__optionsListContainer_11py0 {
27
27
  border-radius: var(--border-radius-s);
28
28
  }
29
- .picker-button__option_1htj9 {
29
+ .picker-button__option_11py0 {
30
30
  padding: 0 var(--gap-m);
31
31
  }
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { FC, SVGProps } from 'react';
3
- import { OptionShape } from "../typings-a22d6eaf";
4
- import { OptionProps as BaseOptionProps } from "../typings-a22d6eaf";
3
+ import { OptionShape } from "../typings-f60445d7";
4
+ import { OptionProps as BaseOptionProps } from "../typings-f60445d7";
5
5
  type OptionProps = Omit<BaseOptionProps, 'option'> & {
6
6
  option: OptionShape & {
7
7
  icon?: FC<SVGProps<SVGSVGElement>>;
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { Option as Option$1 } from '@alfalab/core-components-select/dist/modern';
3
3
 
4
- var styles = {"container":"picker-button__container_u543a","icon":"picker-button__icon_u543a","content":"picker-button__content_u543a"};
4
+ var styles = {"container":"picker-button__container_1tdm7","icon":"picker-button__icon_1tdm7","content":"picker-button__content_1tdm7"};
5
5
  require('./index.css')
6
6
 
7
7
  const Option = ({ option, children, ...restProps }) => {
@@ -1,4 +1,4 @@
1
- /* hash: 1l3o6 */
1
+ /* hash: 7kwz5 */
2
2
  :root {
3
3
 
4
4
  /* Hard */
@@ -10,15 +10,15 @@
10
10
  :root {
11
11
  --gap-s: 12px;
12
12
  }
13
- .picker-button__container_u543a {
13
+ .picker-button__container_1tdm7 {
14
14
  display: flex;
15
15
  align-items: center;
16
16
  }
17
- .picker-button__icon_u543a {
17
+ .picker-button__icon_1tdm7 {
18
18
  display: flex;
19
19
  margin-right: var(--gap-s);
20
20
  }
21
- .picker-button__content_u543a {
21
+ .picker-button__content_1tdm7 {
22
22
  overflow: hidden;
23
23
  flex: 1;
24
24
  text-overflow: ellipsis;
@@ -426,6 +426,10 @@ type BaseSelectProps = {
426
426
  * Дополнительный класс для пункта меню
427
427
  */
428
428
  optionClassName?: string;
429
+ /**
430
+ * Дополнительный класс для компонента группы пунктов
431
+ */
432
+ optionGroupClassName?: string;
429
433
  /**
430
434
  * Дополнительный класс для поповера
431
435
  */
@@ -703,6 +707,10 @@ type OptionsListProps = {
703
707
  * Дополнительный класс
704
708
  */
705
709
  className?: string;
710
+ /**
711
+ * Дополнительный класс для компонента группы пунктов
712
+ */
713
+ optionGroupClassName?: string;
706
714
  /**
707
715
  * Размер компонента
708
716
  */
@@ -775,8 +783,24 @@ type OptionsListProps = {
775
783
  * Дополнительные пропсы для Input'a, находящегося внутри кастомного OptionsList
776
784
  */
777
785
  inputProps?: InputProps;
786
+ /**
787
+ * Нужно ли показывать футер
788
+ */
789
+ showFooter?: boolean;
790
+ /**
791
+ * Обработчик подтверждения изменений
792
+ */
793
+ onApply?: () => void;
794
+ /**
795
+ * Обработчик отмены изменений
796
+ */
797
+ onClear?: () => void;
778
798
  };
779
799
  type OptgroupProps = {
800
+ /**
801
+ * Дополнительный класс для компонента группы пунктов
802
+ */
803
+ className?: string;
780
804
  /**
781
805
  * Размер компонента
782
806
  */
@@ -863,5 +887,9 @@ type CheckmarkProps = {
863
887
  * Расположение отметки
864
888
  */
865
889
  position?: 'before' | 'after';
890
+ /**
891
+ * Иконка выбранного пункта
892
+ */
893
+ icon?: React.FC<React.SVGProps<SVGSVGElement>>;
866
894
  };
867
895
  export { Position, PopoverProps, Popover, InputProps, Input, stackingOrder, StackingContext, StackProps, Stack, PortalProps, Portal, PORTAL_CONTAINER_ATTRIBUTE, getDefaultPortalContainer, setRef, FormControlProps, FormControl, OptionShape, GroupShape, BaseSelectProps, FieldProps, ArrowProps, OptionsListProps, OptgroupProps, OptionProps, CheckmarkProps };
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { FC, SVGProps } from 'react';
3
- import { OptionShape } from "../typings-a22d6eaf";
4
- import { OptionProps as BaseOptionProps } from "../typings-a22d6eaf";
3
+ import { OptionShape } from "../typings-f60445d7";
4
+ import { OptionProps as BaseOptionProps } from "../typings-f60445d7";
5
5
  type OptionProps = Omit<BaseOptionProps, 'option'> & {
6
6
  option: OptionShape & {
7
7
  icon?: FC<SVGProps<SVGSVGElement>>;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib_es6 = require('../tslib.es6-62e46619.js');
5
+ var tslib_es6 = require('../tslib.es6-5504c85c.js');
6
6
  var React = require('react');
7
7
  var coreComponentsSelect = require('@alfalab/core-components-select');
8
8
 
@@ -10,7 +10,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
10
10
 
11
11
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
12
12
 
13
- var styles = {"container":"picker-button__container_u543a","icon":"picker-button__icon_u543a","content":"picker-button__content_u543a"};
13
+ var styles = {"container":"picker-button__container_1tdm7","icon":"picker-button__icon_1tdm7","content":"picker-button__content_1tdm7"};
14
14
  require('./index.css')
15
15
 
16
16
  var Option = function (_a) {
@@ -1,4 +1,4 @@
1
- /* hash: 1l3o6 */
1
+ /* hash: 7kwz5 */
2
2
  :root {
3
3
 
4
4
  /* Hard */
@@ -10,15 +10,15 @@
10
10
  :root {
11
11
  --gap-s: 12px;
12
12
  }
13
- .picker-button__container_u543a {
13
+ .picker-button__container_1tdm7 {
14
14
  display: flex;
15
15
  align-items: center;
16
16
  }
17
- .picker-button__icon_u543a {
17
+ .picker-button__icon_1tdm7 {
18
18
  display: flex;
19
19
  margin-right: var(--gap-s);
20
20
  }
21
- .picker-button__content_u543a {
21
+ .picker-button__content_1tdm7 {
22
22
  overflow: hidden;
23
23
  flex: 1;
24
24
  text-overflow: ellipsis;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../tslib.es6-62e46619.js');
5
+ require('../tslib.es6-5504c85c.js');
6
6
  require('react');
7
7
  require('@alfalab/core-components-select');
8
8
  var option_Component = require('./Component.js');
@@ -426,6 +426,10 @@ type BaseSelectProps = {
426
426
  * Дополнительный класс для пункта меню
427
427
  */
428
428
  optionClassName?: string;
429
+ /**
430
+ * Дополнительный класс для компонента группы пунктов
431
+ */
432
+ optionGroupClassName?: string;
429
433
  /**
430
434
  * Дополнительный класс для поповера
431
435
  */
@@ -703,6 +707,10 @@ type OptionsListProps = {
703
707
  * Дополнительный класс
704
708
  */
705
709
  className?: string;
710
+ /**
711
+ * Дополнительный класс для компонента группы пунктов
712
+ */
713
+ optionGroupClassName?: string;
706
714
  /**
707
715
  * Размер компонента
708
716
  */
@@ -775,8 +783,24 @@ type OptionsListProps = {
775
783
  * Дополнительные пропсы для Input'a, находящегося внутри кастомного OptionsList
776
784
  */
777
785
  inputProps?: InputProps;
786
+ /**
787
+ * Нужно ли показывать футер
788
+ */
789
+ showFooter?: boolean;
790
+ /**
791
+ * Обработчик подтверждения изменений
792
+ */
793
+ onApply?: () => void;
794
+ /**
795
+ * Обработчик отмены изменений
796
+ */
797
+ onClear?: () => void;
778
798
  };
779
799
  type OptgroupProps = {
800
+ /**
801
+ * Дополнительный класс для компонента группы пунктов
802
+ */
803
+ className?: string;
780
804
  /**
781
805
  * Размер компонента
782
806
  */
@@ -863,5 +887,9 @@ type CheckmarkProps = {
863
887
  * Расположение отметки
864
888
  */
865
889
  position?: 'before' | 'after';
890
+ /**
891
+ * Иконка выбранного пункта
892
+ */
893
+ icon?: React.FC<React.SVGProps<SVGSVGElement>>;
866
894
  };
867
895
  export { Position, PopoverProps, Popover, InputProps, Input, stackingOrder, StackingContext, StackProps, Stack, PortalProps, Portal, PORTAL_CONTAINER_ATTRIBUTE, getDefaultPortalContainer, setRef, FormControlProps, FormControl, OptionShape, GroupShape, BaseSelectProps, FieldProps, ArrowProps, OptionsListProps, OptgroupProps, OptionProps, CheckmarkProps };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alfalab/core-components-picker-button",
3
- "version": "7.6.2",
3
+ "version": "7.6.5",
4
4
  "description": "Picker button component",
5
5
  "keywords": [],
6
6
  "license": "MIT",
@@ -19,11 +19,11 @@
19
19
  "react-dom": "^16.9.0 || ^17.0.1"
20
20
  },
21
21
  "dependencies": {
22
- "@alfalab/core-components-button": "^5.1.1",
23
- "@alfalab/core-components-select": "^10.6.2",
22
+ "@alfalab/core-components-button": "^5.1.2",
23
+ "@alfalab/core-components-select": "^10.6.5",
24
24
  "@alfalab/icons-classic": "^1.76.0",
25
25
  "@alfalab/icons-glyph": "^2.16.0",
26
- "classnames": "^2.2.6"
26
+ "classnames": "2.2.6"
27
27
  },
28
- "gitHead": "fb24ec97b3b95a51c188198788a73928d22b9b5f"
28
+ "gitHead": "0363f194b7d8e6d2949795b8f0570262d7028aff"
29
29
  }