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

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 (77) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/dist/Component.d.ts +26 -4
  3. package/dist/Component.js +13 -7
  4. package/dist/cssm/Component.d.ts +26 -4
  5. package/dist/cssm/Component.js +13 -6
  6. package/dist/cssm/field/Component.d.ts +10 -0
  7. package/dist/cssm/field/Component.js +25 -8
  8. package/dist/cssm/field/index.d.ts +1 -1
  9. package/dist/cssm/field/index.js +7 -3
  10. package/dist/cssm/index.js +9 -3
  11. package/dist/cssm/index.module.css +4 -0
  12. package/dist/cssm/option/Component.d.ts +11 -0
  13. package/dist/cssm/option/Component.js +25 -0
  14. package/dist/cssm/option/index.d.ts +1 -0
  15. package/dist/cssm/option/index.js +13 -0
  16. package/dist/cssm/option/index.module.css +24 -0
  17. package/dist/cssm/tslib.es6-ce870b46.d.ts +32 -0
  18. package/dist/cssm/tslib.es6-ce870b46.js +42 -0
  19. package/dist/{Component-4c462f50.d.ts → cssm/typings-a22d6eaf.d.ts} +180 -187
  20. package/dist/cssm/utils/index.d.ts +4 -0
  21. package/dist/cssm/utils/index.js +17 -0
  22. package/dist/esm/Component.d.ts +26 -4
  23. package/dist/esm/Component.js +14 -8
  24. package/dist/esm/field/Component.d.ts +10 -0
  25. package/dist/esm/field/Component.js +24 -6
  26. package/dist/esm/field/index.css +3 -3
  27. package/dist/esm/field/index.d.ts +1 -1
  28. package/dist/esm/field/index.js +7 -3
  29. package/dist/esm/index.css +9 -5
  30. package/dist/esm/index.js +8 -3
  31. package/dist/esm/option/Component.d.ts +11 -0
  32. package/dist/esm/option/Component.js +18 -0
  33. package/dist/esm/option/index.css +25 -0
  34. package/dist/esm/option/index.d.ts +1 -0
  35. package/dist/esm/option/index.js +4 -0
  36. package/dist/esm/tslib.es6-5aaed0d7.d.ts +32 -0
  37. package/dist/esm/tslib.es6-5aaed0d7.js +40 -0
  38. package/dist/esm/{Component-d9d92ac3.d.ts → typings-a22d6eaf.d.ts} +180 -187
  39. package/dist/esm/utils/index.d.ts +4 -0
  40. package/dist/esm/utils/index.js +13 -0
  41. package/dist/field/Component.d.ts +10 -0
  42. package/dist/field/Component.js +26 -7
  43. package/dist/field/index.css +3 -3
  44. package/dist/field/index.d.ts +1 -1
  45. package/dist/field/index.js +7 -3
  46. package/dist/index.css +9 -5
  47. package/dist/index.js +8 -3
  48. package/dist/modern/Component.d.ts +26 -4
  49. package/dist/modern/Component.js +12 -7
  50. package/dist/modern/field/Component.d.ts +5 -707
  51. package/dist/modern/field/Component.js +10 -7
  52. package/dist/modern/field/index.css +3 -3
  53. package/dist/modern/field/index.js +5 -2
  54. package/dist/modern/index.css +9 -5
  55. package/dist/modern/index.js +6 -2
  56. package/dist/modern/option/Component.d.ts +11 -0
  57. package/dist/modern/option/Component.js +16 -0
  58. package/dist/modern/option/index.css +25 -0
  59. package/dist/modern/option/index.d.ts +1 -0
  60. package/dist/modern/option/index.js +3 -0
  61. package/dist/{cssm/Component-aeb02c1b.d.ts → modern/typings-a22d6eaf.d.ts} +180 -187
  62. package/dist/modern/utils/index.d.ts +4 -0
  63. package/dist/modern/utils/index.js +13 -0
  64. package/dist/option/Component.d.ts +11 -0
  65. package/dist/option/Component.js +26 -0
  66. package/dist/option/index.css +25 -0
  67. package/dist/option/index.d.ts +1 -0
  68. package/dist/option/index.js +12 -0
  69. package/dist/tslib.es6-62e46619.d.ts +32 -0
  70. package/dist/tslib.es6-62e46619.js +42 -0
  71. package/dist/typings-a22d6eaf.d.ts +867 -0
  72. package/dist/utils/index.d.ts +4 -0
  73. package/dist/utils/index.js +17 -0
  74. package/package.json +4 -4
  75. package/dist/Component-4c462f50.js +0 -67
  76. package/dist/cssm/Component-aeb02c1b.js +0 -66
  77. package/dist/esm/Component-d9d92ac3.js +0 -59
package/dist/index.js CHANGED
@@ -2,13 +2,18 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('./Component-4c462f50.js');
5
+ require('./tslib.es6-62e46619.js');
6
6
  require('react');
7
7
  require('classnames');
8
8
  require('@alfalab/core-components-select');
9
9
  require('@alfalab/core-components-button');
10
- require('@alfalab/icons-classic/ArrowDownMIcon');
11
- require('@alfalab/icons-classic/ArrowDownSIcon');
10
+ require('@alfalab/icons-glyph/ChevronDownMIcon');
11
+ require('@alfalab/icons-glyph/ChevronDownCompactSIcon');
12
+ require('@alfalab/icons-glyph/MoreMIcon');
13
+ require('@alfalab/icons-glyph/MoreSIcon');
14
+ require('./utils/index.js');
15
+ require('./field/Component.js');
16
+ require('./option/Component.js');
12
17
  var Component = require('./Component.js');
13
18
 
14
19
 
@@ -1,18 +1,40 @@
1
1
  /// <reference types="react" />
2
2
  import React from 'react';
3
+ import { FC, SVGProps } from "react";
3
4
  import { ButtonProps } from "@alfalab/core-components-button";
4
- import { BaseSelectProps } from "@alfalab/core-components-select";
5
+ import { BaseSelectProps, OptionShape } from "@alfalab/core-components-select";
5
6
  type PickerButtonSize = 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl';
6
- type PickerButtonProps = Omit<BaseSelectProps, 'Field' | 'placeholder' | 'Arrow' | 'autocomplete' | 'size' | 'onFocus' | 'selected' | 'closeOnSelect' | 'multiple' | 'fieldProps' | 'hint' | 'allowUnselect'> & Pick<ButtonProps, 'view' | 'loading' | 'leftAddons' | 'rightAddons'> & {
7
+ type PickerButtonVariant = 'default' | 'compact';
8
+ type PickerButtonProps = Omit<BaseSelectProps, 'Field' | 'placeholder' | 'Arrow' | 'autocomplete' | 'size' | 'onFocus' | 'selected' | 'closeOnSelect' | 'multiple' | 'fieldProps' | 'hint' | 'allowUnselect' | 'options'> & Pick<ButtonProps, 'view' | 'loading' | 'leftAddons' | 'rightAddons'> & {
9
+ options: Array<OptionShape & {
10
+ /**
11
+ * Иконка, отображающаяся слева от текстового представления пункта
12
+ */
13
+ icon?: FC<SVGProps<SVGSVGElement>>;
14
+ }>;
7
15
  /**
8
16
  * Размер кнопки
9
17
  */
10
18
  size?: PickerButtonSize;
19
+ /**
20
+ * Тип кнопки
21
+ */
22
+ variant?: PickerButtonVariant;
11
23
  };
12
- declare const PickerButton: React.ForwardRefExoticComponent<Pick<BaseSelectProps, "className" | "dataTestId" | "label" | "block" | "id" | "onBlur" | "onChange" | "onScroll" | "disabled" | "name" | "fieldClassName" | "error" | "preventFlip" | "popperClassName" | "open" | "options" | "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" | "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
+ options: (OptionShape & {
26
+ /**
27
+ * Иконка, отображающаяся слева от текстового представления пункта
28
+ */
29
+ icon?: React.FC<React.SVGProps<SVGSVGElement>> | undefined;
30
+ })[];
13
31
  /**
14
32
  * Размер кнопки
15
33
  */
16
34
  size?: "s" | "xxs" | "xs" | "m" | "l" | "xl" | undefined;
35
+ /**
36
+ * Тип кнопки
37
+ */
38
+ variant?: "default" | "compact" | undefined;
17
39
  } & React.RefAttributes<HTMLInputElement>>;
18
- export { PickerButtonSize, PickerButtonProps, PickerButton };
40
+ export { PickerButtonSize, PickerButtonVariant, PickerButtonProps, PickerButton };
@@ -1,27 +1,32 @@
1
1
  import React, { forwardRef } from 'react';
2
2
  import cn from 'classnames';
3
- import { OptionsList, Optgroup, Option, BaseSelect } from '@alfalab/core-components-select/dist/modern';
3
+ import { OptionsList, Optgroup, BaseSelect } from '@alfalab/core-components-select/dist/modern';
4
4
  import '@alfalab/core-components-button/dist/modern';
5
- import '@alfalab/icons-classic/ArrowDownMIcon';
6
- import '@alfalab/icons-classic/ArrowDownSIcon';
5
+ import '@alfalab/icons-glyph/ChevronDownMIcon';
6
+ import '@alfalab/icons-glyph/ChevronDownCompactSIcon';
7
+ import '@alfalab/icons-glyph/MoreMIcon';
8
+ import '@alfalab/icons-glyph/MoreSIcon';
9
+ import './utils/index.js';
7
10
  import { Field } from './field/Component.js';
11
+ import { Option } from './option/Component.js';
8
12
 
9
- var styles = {"container":"picker-button__container_12ijs","optionsPopover":"picker-button__optionsPopover_12ijs","sideGap":"picker-button__sideGap_12ijs","optionsListContainer":"picker-button__optionsListContainer_12ijs"};
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"};
10
14
  require('./index.css')
11
15
 
12
16
  const SIDE_POSITIONS = ['right', 'right-start', 'right-end', 'left', 'left-start', 'left-end'];
13
- const PickerButton = forwardRef(({ OptionsList: OptionsList$1 = OptionsList, Optgroup: Optgroup$1 = Optgroup, Option: Option$1 = Option, view, loading, size = 'm', className, leftAddons, rightAddons, popperClassName, optionsListClassName, ...restProps }, ref) => {
17
+ const PickerButton = forwardRef(({ OptionsList: OptionsList$1 = OptionsList, Optgroup: Optgroup$1 = Optgroup, Option: Option$1 = Option, view, loading, size = 'm', variant = 'default', className, leftAddons, rightAddons, popperClassName, optionsListClassName, optionClassName, ...restProps }, ref) => {
14
18
  const isSideGap = !!restProps.popoverPosition && SIDE_POSITIONS.includes(restProps.popoverPosition);
15
- return (React.createElement(BaseSelect, Object.assign({}, restProps, { ref: ref, Option: Option$1, Field: Field, size: size === 'm' ? 'm' : 's', fieldProps: {
19
+ return (React.createElement(BaseSelect, Object.assign({}, restProps, { optionProps: { Checkmark: null }, ref: ref, Option: Option$1, Field: Field, size: size === 'm' ? 'm' : 's', fieldProps: {
16
20
  view,
17
21
  loading,
18
22
  /** size у select, button несовместимы */
19
23
  buttonSize: size,
24
+ buttonVariant: variant,
20
25
  leftAddons,
21
26
  rightAddons,
22
27
  }, Optgroup: Optgroup$1, OptionsList: OptionsList$1, className: cn(styles.container, className), popperClassName: cn(styles.optionsPopover, popperClassName, {
23
28
  [styles.sideGap]: isSideGap,
24
- }), optionsListClassName: cn(styles.optionsListContainer, optionsListClassName), selected: [], closeOnSelect: true })));
29
+ }), optionsListClassName: cn(styles.optionsListContainer, optionsListClassName), optionClassName: cn(styles.option, optionClassName), selected: [], closeOnSelect: true })));
25
30
  });
26
31
 
27
32
  export { PickerButton };