@alfalab/core-components-custom-picker-button 1.0.0

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 (210) hide show
  1. package/Component-2aef4eba.d.ts +50 -0
  2. package/Component-3885b0d7.d.ts +71 -0
  3. package/Component-3e68f8db.d.ts +11 -0
  4. package/Component-3ebe4754.d.ts +176 -0
  5. package/Component-5e1b8383.d.ts +4 -0
  6. package/Component-bdb4c6b9.d.ts +12 -0
  7. package/Component-ebda875c.d.ts +142 -0
  8. package/Component.desktop.d.ts +6 -0
  9. package/Component.desktop.js +28 -0
  10. package/Component.mobile-ae13210f.d.ts +7 -0
  11. package/Component.mobile-b2c0420d.d.ts +35 -0
  12. package/Component.mobile.d.ts +6 -0
  13. package/Component.mobile.js +28 -0
  14. package/Component.responsive-2aef4eba.d.ts +28 -0
  15. package/Component.responsive.d.ts +22 -0
  16. package/Component.responsive.js +28 -0
  17. package/Context-bdb4c6b9.d.ts +4 -0
  18. package/ResponsiveContext-baf4875b.d.ts +5 -0
  19. package/component-3885b0d7.d.ts +43 -0
  20. package/consts-f777ba1a.d.ts +2 -0
  21. package/cssm/Component-2aef4eba.d.ts +50 -0
  22. package/cssm/Component-3885b0d7.d.ts +71 -0
  23. package/cssm/Component-3e68f8db.d.ts +11 -0
  24. package/cssm/Component-3ebe4754.d.ts +176 -0
  25. package/cssm/Component-5e1b8383.d.ts +4 -0
  26. package/cssm/Component-bdb4c6b9.d.ts +12 -0
  27. package/cssm/Component-ebda875c.d.ts +142 -0
  28. package/cssm/Component.desktop.d.ts +6 -0
  29. package/cssm/Component.desktop.js +29 -0
  30. package/cssm/Component.mobile-ae13210f.d.ts +7 -0
  31. package/cssm/Component.mobile-b2c0420d.d.ts +35 -0
  32. package/cssm/Component.mobile.d.ts +6 -0
  33. package/cssm/Component.mobile.js +29 -0
  34. package/cssm/Component.responsive-2aef4eba.d.ts +28 -0
  35. package/cssm/Component.responsive.d.ts +22 -0
  36. package/cssm/Component.responsive.js +29 -0
  37. package/cssm/Context-bdb4c6b9.d.ts +4 -0
  38. package/cssm/ResponsiveContext-baf4875b.d.ts +5 -0
  39. package/cssm/component-3885b0d7.d.ts +43 -0
  40. package/cssm/consts-f777ba1a.d.ts +2 -0
  41. package/cssm/desktop.d.ts +2 -0
  42. package/cssm/desktop.js +17 -0
  43. package/cssm/field/Component.d.ts +11 -0
  44. package/cssm/field/Component.js +31 -0
  45. package/cssm/field/index.d.ts +1 -0
  46. package/cssm/field/index.js +15 -0
  47. package/cssm/field/index.module.css +27 -0
  48. package/cssm/hook-3e68f8db.d.ts +62 -0
  49. package/cssm/index-136acbb1.d.ts +28 -0
  50. package/cssm/index-2aef4eba.d.ts +5 -0
  51. package/cssm/index-3885b0d7.d.ts +3 -0
  52. package/cssm/index-3e68f8db.d.ts +100 -0
  53. package/cssm/index-3ebe4754.d.ts +1 -0
  54. package/cssm/index-425c8522.d.ts +6 -0
  55. package/cssm/index-701e77da.d.ts +4 -0
  56. package/cssm/index-bdb4c6b9.d.ts +2 -0
  57. package/cssm/index-e81c389f.d.ts +3 -0
  58. package/cssm/index-ebda875c.d.ts +37 -0
  59. package/cssm/index-f12ee135.d.ts +3 -0
  60. package/cssm/index.d.ts +2 -0
  61. package/cssm/index.js +21 -0
  62. package/cssm/mobile.d.ts +2 -0
  63. package/cssm/mobile.js +17 -0
  64. package/cssm/responsive.d.ts +2 -0
  65. package/cssm/responsive.js +21 -0
  66. package/cssm/types-5e678ff2.d.ts +219 -0
  67. package/cssm/types-ebda875c.d.ts +113 -0
  68. package/cssm/typings-5e1b8383.d.ts +549 -0
  69. package/cssm/typings-bdb4c6b9.d.ts +52 -0
  70. package/cssm/utils-1574ad8b.d.ts +29 -0
  71. package/cssm/utils-5e1b8383.d.ts +38 -0
  72. package/cssm/utils-b64479aa.d.ts +8 -0
  73. package/desktop.d.ts +2 -0
  74. package/desktop.js +16 -0
  75. package/esm/Component-2aef4eba.d.ts +50 -0
  76. package/esm/Component-3885b0d7.d.ts +71 -0
  77. package/esm/Component-3e68f8db.d.ts +11 -0
  78. package/esm/Component-3ebe4754.d.ts +176 -0
  79. package/esm/Component-5e1b8383.d.ts +4 -0
  80. package/esm/Component-bdb4c6b9.d.ts +12 -0
  81. package/esm/Component-ebda875c.d.ts +142 -0
  82. package/esm/Component.desktop.d.ts +6 -0
  83. package/esm/Component.desktop.js +20 -0
  84. package/esm/Component.mobile-ae13210f.d.ts +7 -0
  85. package/esm/Component.mobile-b2c0420d.d.ts +35 -0
  86. package/esm/Component.mobile.d.ts +6 -0
  87. package/esm/Component.mobile.js +20 -0
  88. package/esm/Component.responsive-2aef4eba.d.ts +28 -0
  89. package/esm/Component.responsive.d.ts +22 -0
  90. package/esm/Component.responsive.js +20 -0
  91. package/esm/Context-bdb4c6b9.d.ts +4 -0
  92. package/esm/ResponsiveContext-baf4875b.d.ts +5 -0
  93. package/esm/component-3885b0d7.d.ts +43 -0
  94. package/esm/consts-f777ba1a.d.ts +2 -0
  95. package/esm/desktop.d.ts +2 -0
  96. package/esm/desktop.js +8 -0
  97. package/esm/field/Component.d.ts +11 -0
  98. package/esm/field/Component.js +23 -0
  99. package/esm/field/index.css +28 -0
  100. package/esm/field/index.d.ts +1 -0
  101. package/esm/field/index.js +6 -0
  102. package/esm/hook-3e68f8db.d.ts +62 -0
  103. package/esm/index-136acbb1.d.ts +28 -0
  104. package/esm/index-2aef4eba.d.ts +5 -0
  105. package/esm/index-3885b0d7.d.ts +3 -0
  106. package/esm/index-3e68f8db.d.ts +100 -0
  107. package/esm/index-3ebe4754.d.ts +1 -0
  108. package/esm/index-425c8522.d.ts +6 -0
  109. package/esm/index-701e77da.d.ts +4 -0
  110. package/esm/index-bdb4c6b9.d.ts +2 -0
  111. package/esm/index-e81c389f.d.ts +3 -0
  112. package/esm/index-ebda875c.d.ts +37 -0
  113. package/esm/index-f12ee135.d.ts +3 -0
  114. package/esm/index.d.ts +2 -0
  115. package/esm/index.js +12 -0
  116. package/esm/mobile.d.ts +2 -0
  117. package/esm/mobile.js +8 -0
  118. package/esm/responsive.d.ts +2 -0
  119. package/esm/responsive.js +12 -0
  120. package/esm/types-5e678ff2.d.ts +219 -0
  121. package/esm/types-ebda875c.d.ts +113 -0
  122. package/esm/typings-5e1b8383.d.ts +549 -0
  123. package/esm/typings-bdb4c6b9.d.ts +52 -0
  124. package/esm/utils-1574ad8b.d.ts +29 -0
  125. package/esm/utils-5e1b8383.d.ts +38 -0
  126. package/esm/utils-b64479aa.d.ts +8 -0
  127. package/field/Component.d.ts +11 -0
  128. package/field/Component.js +32 -0
  129. package/field/index.css +28 -0
  130. package/field/index.d.ts +1 -0
  131. package/field/index.js +14 -0
  132. package/hook-3e68f8db.d.ts +62 -0
  133. package/index-136acbb1.d.ts +28 -0
  134. package/index-2aef4eba.d.ts +5 -0
  135. package/index-3885b0d7.d.ts +3 -0
  136. package/index-3e68f8db.d.ts +100 -0
  137. package/index-3ebe4754.d.ts +1 -0
  138. package/index-425c8522.d.ts +6 -0
  139. package/index-701e77da.d.ts +4 -0
  140. package/index-bdb4c6b9.d.ts +2 -0
  141. package/index-e81c389f.d.ts +3 -0
  142. package/index-ebda875c.d.ts +37 -0
  143. package/index-f12ee135.d.ts +3 -0
  144. package/index.d.ts +2 -0
  145. package/index.js +20 -0
  146. package/mobile.d.ts +2 -0
  147. package/mobile.js +16 -0
  148. package/modern/Component-2aef4eba.d.ts +50 -0
  149. package/modern/Component-3885b0d7.d.ts +71 -0
  150. package/modern/Component-3e68f8db.d.ts +11 -0
  151. package/modern/Component-3ebe4754.d.ts +176 -0
  152. package/modern/Component-5e1b8383.d.ts +4 -0
  153. package/modern/Component-bdb4c6b9.d.ts +12 -0
  154. package/modern/Component-ebda875c.d.ts +142 -0
  155. package/modern/Component.desktop.d.ts +6 -0
  156. package/modern/Component.desktop.js +16 -0
  157. package/modern/Component.mobile-ae13210f.d.ts +7 -0
  158. package/modern/Component.mobile-b2c0420d.d.ts +35 -0
  159. package/modern/Component.mobile.d.ts +6 -0
  160. package/modern/Component.mobile.js +16 -0
  161. package/modern/Component.responsive-2aef4eba.d.ts +28 -0
  162. package/modern/Component.responsive.d.ts +22 -0
  163. package/modern/Component.responsive.js +18 -0
  164. package/modern/Context-bdb4c6b9.d.ts +4 -0
  165. package/modern/ResponsiveContext-baf4875b.d.ts +5 -0
  166. package/modern/component-3885b0d7.d.ts +43 -0
  167. package/modern/consts-f777ba1a.d.ts +2 -0
  168. package/modern/desktop.d.ts +2 -0
  169. package/modern/desktop.js +7 -0
  170. package/modern/field/Component.d.ts +11 -0
  171. package/modern/field/Component.js +23 -0
  172. package/modern/field/index.css +28 -0
  173. package/modern/field/index.d.ts +1 -0
  174. package/modern/field/index.js +5 -0
  175. package/modern/hook-3e68f8db.d.ts +62 -0
  176. package/modern/index-136acbb1.d.ts +28 -0
  177. package/modern/index-2aef4eba.d.ts +5 -0
  178. package/modern/index-3885b0d7.d.ts +3 -0
  179. package/modern/index-3e68f8db.d.ts +100 -0
  180. package/modern/index-3ebe4754.d.ts +1 -0
  181. package/modern/index-425c8522.d.ts +6 -0
  182. package/modern/index-701e77da.d.ts +4 -0
  183. package/modern/index-bdb4c6b9.d.ts +2 -0
  184. package/modern/index-e81c389f.d.ts +3 -0
  185. package/modern/index-ebda875c.d.ts +37 -0
  186. package/modern/index-f12ee135.d.ts +3 -0
  187. package/modern/index.d.ts +2 -0
  188. package/modern/index.js +11 -0
  189. package/modern/mobile.d.ts +2 -0
  190. package/modern/mobile.js +7 -0
  191. package/modern/responsive.d.ts +2 -0
  192. package/modern/responsive.js +11 -0
  193. package/modern/types-5e678ff2.d.ts +219 -0
  194. package/modern/types-ebda875c.d.ts +113 -0
  195. package/modern/typings-5e1b8383.d.ts +549 -0
  196. package/modern/typings-bdb4c6b9.d.ts +52 -0
  197. package/modern/utils-1574ad8b.d.ts +29 -0
  198. package/modern/utils-5e1b8383.d.ts +38 -0
  199. package/modern/utils-b64479aa.d.ts +8 -0
  200. package/package.json +27 -0
  201. package/responsive.d.ts +2 -0
  202. package/responsive.js +20 -0
  203. package/send-stats.js +82 -0
  204. package/types-5e678ff2.d.ts +219 -0
  205. package/types-ebda875c.d.ts +113 -0
  206. package/typings-5e1b8383.d.ts +549 -0
  207. package/typings-bdb4c6b9.d.ts +52 -0
  208. package/utils-1574ad8b.d.ts +29 -0
  209. package/utils-5e1b8383.d.ts +38 -0
  210. package/utils-b64479aa.d.ts +8 -0
@@ -0,0 +1,29 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib = require('tslib');
6
+ var React = require('react');
7
+ var mobile = require('@alfalab/core-components-picker-button/cssm/mobile');
8
+ var field_Component = require('./field/Component.js');
9
+ require('classnames');
10
+ require('@alfalab/core-components-custom-button/cssm');
11
+ require('@alfalab/core-components-picker-button/cssm');
12
+ require('./field/index.module.css');
13
+
14
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
15
+
16
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
17
+
18
+ var DEFAULT_BUTTON_COLOR = '#FF45C3';
19
+ var DEFAULT_CONTENT_COLOR = 'white';
20
+ var CustomPickerButtonMobile = React.forwardRef(function (_a, ref) {
21
+ var _b = _a.backgroundColor, backgroundColor = _b === void 0 ? DEFAULT_BUTTON_COLOR : _b, _c = _a.contentColor, contentColor = _c === void 0 ? DEFAULT_CONTENT_COLOR : _c, _d = _a.stateType, stateType = _d === void 0 ? 'darkening' : _d, restProps = tslib.__rest(_a, ["backgroundColor", "contentColor", "stateType"]);
22
+ return (React__default.default.createElement(mobile.PickerButtonMobile, tslib.__assign({}, restProps, { fieldProps: {
23
+ backgroundColor: backgroundColor,
24
+ contentColor: contentColor,
25
+ stateType: stateType,
26
+ }, Field: field_Component.Field, ref: ref })));
27
+ });
28
+
29
+ exports.CustomPickerButtonMobile = CustomPickerButtonMobile;
@@ -0,0 +1,28 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { ButtonProps } from "./index-ebda875c";
4
+ import { AdditionalMobileProps } from "./index-3e68f8db";
5
+ import { PickerButtonDesktopProps } from "./Component-2aef4eba";
6
+ type PickerButtonMatchMedia = 'desktop' | 'mobile';
7
+ type PickerButtonResponsiveProps = PickerButtonDesktopProps & AdditionalMobileProps & {
8
+ /**
9
+ * Контрольная точка, с нее начинается desktop версия
10
+ * @default 1024
11
+ */
12
+ breakpoint?: number;
13
+ };
14
+ declare const PickerButtonResponsive: React.ForwardRefExoticComponent<Omit<import("./index-3e68f8db").BaseSelectProps, "size" | "placeholder" | "onFocus" | "selected" | "multiple" | "hint" | "options" | "autocomplete" | "allowUnselect" | "closeOnSelect" | "Arrow"> & Pick<ButtonProps, "view" | "leftAddons" | "rightAddons" | "loading"> & {
15
+ options: ((import("./index-3e68f8db").OptionShape | import("./index-3e68f8db").GroupShape) & {
16
+ icon?: React.FC<React.SVGProps<SVGSVGElement>> | undefined;
17
+ })[];
18
+ size?: import("./Component-2aef4eba").PickerButtonSize | undefined;
19
+ variant?: import("./Component-2aef4eba").PickerButtonVariant | undefined;
20
+ showArrow?: boolean | undefined;
21
+ } & AdditionalMobileProps & {
22
+ /**
23
+ * Контрольная точка, с нее начинается desktop версия
24
+ * @default 1024
25
+ */
26
+ breakpoint?: number | undefined;
27
+ } & React.RefAttributes<HTMLInputElement>>;
28
+ export { PickerButtonMatchMedia, PickerButtonResponsiveProps, PickerButtonResponsive };
@@ -0,0 +1,22 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { CustomButtonProps } from "@alfalab/core-components-custom-button";
4
+ import { PickerButtonDesktopProps } from "./index-2aef4eba";
5
+ import { AdditionalMobileProps } from "./index-3e68f8db";
6
+ import { CustomPickerButtonDesktopProps } from "./Component.desktop";
7
+ type PickerButtonMatchMedia = 'desktop' | 'mobile';
8
+ type CustomPickerButtonResponsiveProps = CustomPickerButtonDesktopProps & AdditionalMobileProps & {
9
+ /**
10
+ * Контрольная точка, с нее начинается desktop версия
11
+ * @default 1024
12
+ */
13
+ breakpoint?: number;
14
+ };
15
+ declare const CustomPickerButtonResponsive: React.ForwardRefExoticComponent<Omit<PickerButtonDesktopProps, "colors" | "view"> & Pick<CustomButtonProps, "backgroundColor" | "contentColor" | "stateType"> & AdditionalMobileProps & {
16
+ /**
17
+ * Контрольная точка, с нее начинается desktop версия
18
+ * @default 1024
19
+ */
20
+ breakpoint?: number | undefined;
21
+ } & React.RefAttributes<HTMLInputElement>>;
22
+ export { PickerButtonMatchMedia, CustomPickerButtonResponsiveProps, CustomPickerButtonResponsive };
@@ -0,0 +1,29 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib = require('tslib');
6
+ var React = require('react');
7
+ var coreComponentsMq = require('@alfalab/core-components-mq/cssm');
8
+ var Component_desktop = require('./Component.desktop.js');
9
+ var Component_mobile = require('./Component.mobile.js');
10
+ require('@alfalab/core-components-picker-button/cssm/desktop');
11
+ require('./field/Component.js');
12
+ require('classnames');
13
+ require('@alfalab/core-components-custom-button/cssm');
14
+ require('@alfalab/core-components-picker-button/cssm');
15
+ require('./field/index.module.css');
16
+ require('@alfalab/core-components-picker-button/cssm/mobile');
17
+
18
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
19
+
20
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
21
+
22
+ var CustomPickerButtonResponsive = React.forwardRef(function (_a, ref) {
23
+ var OptionsList = _a.OptionsList, onScroll = _a.onScroll, footer = _a.footer, swipeable = _a.swipeable, bottomSheetProps = _a.bottomSheetProps, _b = _a.breakpoint, breakpoint = _b === void 0 ? 1024 : _b, restProps = tslib.__rest(_a, ["OptionsList", "onScroll", "footer", "swipeable", "bottomSheetProps", "breakpoint"]);
24
+ var query = "(min-width: ".concat(breakpoint, "px)");
25
+ var isDesktop = coreComponentsMq.useMatchMedia(query)[0];
26
+ return isDesktop ? (React__default.default.createElement(Component_desktop.CustomPickerButtonDesktop, tslib.__assign({ ref: ref, OptionsList: OptionsList, onScroll: onScroll }, restProps))) : (React__default.default.createElement(Component_mobile.CustomPickerButtonMobile, tslib.__assign({ ref: ref, footer: footer, swipeable: swipeable, bottomSheetProps: bottomSheetProps }, restProps)));
27
+ });
28
+
29
+ exports.CustomPickerButtonResponsive = CustomPickerButtonResponsive;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { BaseModalContext } from "./index-bdb4c6b9";
3
+ declare const ModalContext: import("react").Context<BaseModalContext>;
4
+ export { ModalContext };
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { TResponsiveModalContext } from "./typings-bdb4c6b9";
4
+ declare const ResponsiveContext: React.Context<TResponsiveModalContext>;
5
+ export { ResponsiveContext };
@@ -0,0 +1,43 @@
1
+ /// <reference types="react" />
2
+ import React from "react";
3
+ import { FC, RefObject, ReactNode } from "react";
4
+ import { NavigationBarProps } from "./index-e81c389f";
5
+ import { SwipeableHandlers } from "react-swipeable";
6
+ import { BackdropProps } from "./index-ebda875c";
7
+ import { BottomSheetProps } from "./types-5e678ff2";
8
+ type HeaderProps = Omit<NavigationBarProps, "view" | "size"> & {
9
+ headerRef: RefObject<HTMLDivElement>;
10
+ };
11
+ declare const Header: FC<HeaderProps>;
12
+ type FooterProps = {
13
+ /**
14
+ * Контент футера
15
+ */
16
+ children?: ReactNode;
17
+ /**
18
+ * Фиксирует футер
19
+ */
20
+ sticky?: boolean;
21
+ /**
22
+ * Дополнительный класс
23
+ */
24
+ className?: string;
25
+ };
26
+ declare const Footer: FC<FooterProps>;
27
+ type SwipeableBackdropProps = BackdropProps & {
28
+ /**
29
+ * Прозрачность бэкдропа
30
+ */
31
+ opacity?: number;
32
+ /**
33
+ * Обработчики свайпа
34
+ */
35
+ handlers?: SwipeableHandlers;
36
+ /**
37
+ * Время анимации opacity
38
+ */
39
+ opacityTimeout?: number;
40
+ };
41
+ declare const SwipeableBackdrop: FC<SwipeableBackdropProps>;
42
+ declare const BottomSheet: React.ForwardRefExoticComponent<BottomSheetProps & React.RefAttributes<HTMLDivElement>>;
43
+ export { HeaderProps, Header, FooterProps, Footer, SwipeableBackdropProps, SwipeableBackdrop, BottomSheet };
@@ -0,0 +1,2 @@
1
+ declare const DEFAULT_VISIBLE_OPTIONS = 5;
2
+ export { DEFAULT_VISIBLE_OPTIONS };
@@ -0,0 +1,2 @@
1
+ export * from "./Component.desktop";
2
+ export {};
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var Component_desktop = require('./Component.desktop.js');
6
+ require('tslib');
7
+ require('react');
8
+ require('@alfalab/core-components-picker-button/cssm/desktop');
9
+ require('./field/Component.js');
10
+ require('classnames');
11
+ require('@alfalab/core-components-custom-button/cssm');
12
+ require('@alfalab/core-components-picker-button/cssm');
13
+ require('./field/index.module.css');
14
+
15
+
16
+
17
+ exports.CustomPickerButtonDesktop = Component_desktop.CustomPickerButtonDesktop;
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ import { CustomButtonProps } from "@alfalab/core-components-custom-button";
3
+ import { PickerButtonSize, PickerButtonVariant } from "../index-2aef4eba";
4
+ import { FieldProps as BaseFieldProps } from "../typings-5e1b8383";
5
+ type FieldProps = Pick<BaseFieldProps, 'open' | 'label' | 'innerProps'> & CustomButtonProps & {
6
+ buttonSize?: PickerButtonSize;
7
+ buttonVariant?: PickerButtonVariant;
8
+ showArrow?: boolean;
9
+ };
10
+ declare const Field: ({ buttonSize, buttonVariant, backgroundColor, contentColor, stateType, label, open, rightAddons, innerProps, className, showArrow, ...restProps }: FieldProps) => JSX.Element;
11
+ export { Field };
@@ -0,0 +1,31 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib = require('tslib');
6
+ var React = require('react');
7
+ var cn = require('classnames');
8
+ var coreComponentsCustomButton = require('@alfalab/core-components-custom-button/cssm');
9
+ var coreComponentsPickerButton = require('@alfalab/core-components-picker-button/cssm');
10
+ var styles = require('./index.module.css');
11
+
12
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
13
+
14
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
15
+ var cn__default = /*#__PURE__*/_interopDefaultCompat(cn);
16
+ var styles__default = /*#__PURE__*/_interopDefaultCompat(styles);
17
+
18
+ var Field = function (_a) {
19
+ var _b;
20
+ var _c = _a.buttonSize, buttonSize = _c === void 0 ? 'm' : _c, _d = _a.buttonVariant, buttonVariant = _d === void 0 ? 'default' : _d, backgroundColor = _a.backgroundColor, contentColor = _a.contentColor, stateType = _a.stateType, label = _a.label, open = _a.open, rightAddons = _a.rightAddons, innerProps = _a.innerProps, className = _a.className, _e = _a.showArrow, showArrow = _e === void 0 ? true : _e, restProps = tslib.__rest(_a, ["buttonSize", "buttonVariant", "backgroundColor", "contentColor", "stateType", "label", "open", "rightAddons", "innerProps", "className", "showArrow"]);
21
+ var Icon = coreComponentsPickerButton.getIcon(buttonVariant, buttonSize);
22
+ var buttonProps = tslib.__assign(tslib.__assign({}, restProps), innerProps);
23
+ return (React__default.default.createElement(coreComponentsCustomButton.CustomButton, tslib.__assign({}, buttonProps, { rightAddons: React__default.default.createElement(React.Fragment, null,
24
+ rightAddons && (React__default.default.createElement("span", { className: cn__default.default(styles__default.default.addonsContainer, (_b = {},
25
+ _b[styles__default.default.showControlIcon] = showArrow || buttonVariant === 'compact',
26
+ _b)) }, rightAddons)),
27
+ (showArrow || buttonVariant === 'compact') && (React__default.default.createElement("span", { className: cn__default.default(styles__default.default.iconContainer, buttonVariant !== 'compact' && open && styles__default.default.open) },
28
+ React__default.default.createElement(Icon, { "data-test-id": 'custom-picker-button-icon' })))), block: true, size: buttonSize, backgroundColor: backgroundColor, contentColor: contentColor, stateType: stateType, className: className }), buttonVariant !== 'compact' && label));
29
+ };
30
+
31
+ exports.Field = Field;
@@ -0,0 +1 @@
1
+ export * from "./Component";
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var field_Component = require('./Component.js');
6
+ require('tslib');
7
+ require('react');
8
+ require('classnames');
9
+ require('@alfalab/core-components-custom-button/cssm');
10
+ require('@alfalab/core-components-picker-button/cssm');
11
+ require('./index.module.css');
12
+
13
+
14
+
15
+ exports.Field = field_Component.Field;
@@ -0,0 +1,27 @@
1
+ :root {
2
+ } /* deprecated */ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
3
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
4
+ } :root {
5
+ } :root {
6
+
7
+ /* Hard */
8
+
9
+ /* Up */
10
+
11
+ /* Hard up */
12
+ } :root {
13
+ } :root {
14
+ --gap-2xs: 4px;
15
+ } :root {
16
+ } :root {
17
+ --arrow-transform: rotate(180deg);
18
+ } .iconContainer {
19
+ display: flex;
20
+ transition: transform 0.15s ease-in-out;
21
+ } .addonsContainer {
22
+ display: flex
23
+ } .addonsContainer.showControlIcon {
24
+ margin-right: var(--gap-2xs);
25
+ } .open {
26
+ transform: var(--arrow-transform);
27
+ }
@@ -0,0 +1,62 @@
1
+ /// <reference types="react" />
2
+ import { BaseSelectProps, OptionShape } from "./index-3e68f8db";
3
+ type UseSelectWithApplyProps = {
4
+ /**
5
+ * Список выбранных пунктов
6
+ */
7
+ selected: BaseSelectProps['selected'];
8
+ /**
9
+ * Список вариантов выбора
10
+ */
11
+ options: BaseSelectProps['options'];
12
+ /**
13
+ * Обработчик выбора
14
+ */
15
+ onChange: BaseSelectProps['onChange'];
16
+ /**
17
+ * Компонент выпадающего меню
18
+ */
19
+ OptionsList?: BaseSelectProps['OptionsList'];
20
+ /**
21
+ * Пропсы, которые будут прокинуты в компонент списка
22
+ */
23
+ optionsListProps?: BaseSelectProps['optionsListProps'];
24
+ /**
25
+ * Показывать кнопку очистки
26
+ */
27
+ showClear?: boolean;
28
+ /**
29
+ * Показывать пункт "Выбрать все"
30
+ */
31
+ showSelectAll?: boolean;
32
+ };
33
+ declare const SELECT_ALL_KEY = "select_all";
34
+ declare function useSelectWithApply({ options, selected, onChange, OptionsList, optionsListProps, showClear, showSelectAll, }: UseSelectWithApplyProps): {
35
+ OptionsList: import("react").ForwardRefExoticComponent<import("./index-3e68f8db").OptionsListProps & {
36
+ showClear?: boolean | undefined;
37
+ onClose?: (() => void) | undefined;
38
+ selectedDraft?: OptionShape[] | undefined;
39
+ OptionsList?: import("react").FC<import("./index-3e68f8db").OptionsListProps & import("react").RefAttributes<HTMLDivElement>> | undefined; /**
40
+ * Пропсы, которые будут прокинуты в компонент списка
41
+ */
42
+ Footer?: import("react").FC<import("./Component-ebda875c").FooterProps> | undefined;
43
+ } & import("react").RefAttributes<HTMLDivElement>>;
44
+ optionsListProps: {
45
+ OptionsList: import("react").FC<import("./index-3e68f8db").OptionsListProps & import("react").RefAttributes<HTMLDivElement>> | undefined;
46
+ showClear: boolean;
47
+ onClear: () => void;
48
+ onApply: () => void;
49
+ onClose: () => void;
50
+ selectedDraft: OptionShape[];
51
+ };
52
+ allowUnselect: boolean;
53
+ multiple: boolean;
54
+ options: (OptionShape | import("./index-3e68f8db").GroupShape | {
55
+ key: string;
56
+ content: string;
57
+ })[];
58
+ onChange: (payload: import("./index-3e68f8db").BaseSelectChangePayload) => void;
59
+ selected: string | OptionShape | (string | OptionShape)[] | null | undefined;
60
+ };
61
+ export * from "./Component-5e1b8383";
62
+ export { UseSelectWithApplyProps, SELECT_ALL_KEY, useSelectWithApply };
@@ -0,0 +1,28 @@
1
+ /// <reference types="react" />
2
+ import { FC, ReactNode } from "react";
3
+ /**
4
+ * Набор констант для z-index соответствующих классов компонентов.
5
+ * Значения выбраны по приоритету.
6
+ */
7
+ declare const stackingOrder: {
8
+ FOCUSED: number;
9
+ DEFAULT: number;
10
+ POPOVER: number;
11
+ MODAL: number;
12
+ TOAST: number;
13
+ };
14
+ declare const StackingContext: import("react").Context<number>;
15
+ type StackProps = {
16
+ /**
17
+ * Render prop, в который передается функция.
18
+ * Функция принимает аргумент со значением z-index из текущего контекста.
19
+ */
20
+ children: (value: number) => ReactNode;
21
+ /**
22
+ * Исходное значение для z-index.
23
+ * @default 5
24
+ */
25
+ value?: number;
26
+ };
27
+ declare const Stack: FC<StackProps>;
28
+ export { stackingOrder, StackingContext, StackProps, Stack };
@@ -0,0 +1,5 @@
1
+ export * from "./Component.responsive-2aef4eba";
2
+ export { PickerButtonResponsive as PickerButton };
3
+ export type { PickerButtonResponsiveProps as PickerButtonProps };
4
+ export type { PickerButtonDesktopProps, PickerButtonSize, PickerButtonVariant } from "./Component-2aef4eba";
5
+ export { getIcon } from "./index-701e77da";
@@ -0,0 +1,3 @@
1
+ declare const getDataTestId: (dataTestId?: string, element?: string) => string | undefined;
2
+ declare const isClient: () => boolean;
3
+ export { getDataTestId, isClient };
@@ -0,0 +1,100 @@
1
+ /// <reference types="react" />
2
+ import React from "react";
3
+ import { ReactNode } from "react";
4
+ import { FormControlProps } from "./Component-3ebe4754";
5
+ import { BaseSelectProps, OptionProps, OptionShape } from "./typings-5e1b8383";
6
+ type SelectFieldProps = Omit<FormControlProps, "size"> & Record<string, unknown>;
7
+ type SelectProps = Omit<BaseSelectProps, "fieldProps"> & {
8
+ /**
9
+ * Пропсы, которые будут прокинуты в компонент поля
10
+ */
11
+ fieldProps?: SelectFieldProps;
12
+ };
13
+ declare const Select: React.ForwardRefExoticComponent<Omit<BaseSelectProps, "fieldProps"> & {
14
+ fieldProps?: SelectFieldProps | undefined;
15
+ } & React.RefAttributes<HTMLDivElement>>;
16
+ // eslint-disable-next-line @typescript-eslint/naming-convention
17
+ type useSelectWithLoadingProps = {
18
+ loading?: boolean;
19
+ visibleOptions?: BaseSelectProps["visibleOptions"];
20
+ Option?: React.FC<OptionProps>;
21
+ };
22
+ declare function useSelectWithLoading({ loading, visibleOptions, Option }: useSelectWithLoadingProps): {
23
+ Option: (props: OptionProps) => JSX.Element;
24
+ options: OptionShape[];
25
+ } | null;
26
+ type OptionsFetcherResponse = {
27
+ options: OptionShape[];
28
+ hasMore: boolean;
29
+ };
30
+ // eslint-disable-next-line @typescript-eslint/naming-convention
31
+ type useLazyLoadingProps = {
32
+ /** Количество элементов на "странице" */
33
+ limit?: number;
34
+ /** Начальный номер "страницы" */
35
+ initialOffset?: number;
36
+ /** Скелетон загружаемых элементов */
37
+ skeleton?: React.ReactNode;
38
+ /** Компонент пункта меню */
39
+ Option?: React.FC<OptionProps>;
40
+ /**
41
+ * Функция-загрузчик опций.
42
+ * @param offset - текущая страница
43
+ * @param limit - количество элементов на странице
44
+ * @param queryString - строчные данные, пробрасываемые для поиска из кастомного инпута, расположенного в заголовке OptionsList
45
+ * @returns Promise<{
46
+ * options - список опций следующей "страницы". Они аппендятся к предыдущим
47
+ * hasMore - указывает, есть ли еще незагруженные элементы (в случае false перестает загружать "следующую страницу")
48
+ * }>
49
+ */
50
+ optionsFetcher(offset: number, limit: number, queryString?: string): Promise<OptionsFetcherResponse>;
51
+ };
52
+ declare function useLazyLoading({ limit, initialOffset, optionsFetcher, skeleton, Option }: useLazyLoadingProps): {
53
+ optionsProps: {
54
+ Option: (props: OptionProps) => JSX.Element;
55
+ options: OptionShape[];
56
+ optionsListProps: {
57
+ ref: React.RefObject<HTMLDivElement>;
58
+ inputProps: {
59
+ onChange: (event: React.ChangeEvent<HTMLInputElement>, payload: {
60
+ value: string;
61
+ }) => void;
62
+ value: string;
63
+ };
64
+ };
65
+ onOpen: (payload: {
66
+ open?: boolean;
67
+ }) => void;
68
+ };
69
+ reset: () => void;
70
+ };
71
+ type SkeletonProps = {
72
+ /**
73
+ * Флаг, явно задающий состояние, при котором контент закрывается прелоадером
74
+ */
75
+ visible?: boolean;
76
+ /**
77
+ * Флаг явного включения анимации скелета
78
+ */
79
+ animate?: boolean;
80
+ /**
81
+ * Дополнительный класс
82
+ */
83
+ className?: string;
84
+ /**
85
+ * Идентификатор для систем автоматизированного тестирования
86
+ */
87
+ dataTestId?: string;
88
+ /**
89
+ * Дочерние элементы.
90
+ */
91
+ children?: ReactNode;
92
+ };
93
+ declare const Skeleton: React.FC<SkeletonProps>;
94
+ export { SelectFieldProps, SelectProps, Select, useSelectWithLoading, useLazyLoading, SkeletonProps, Skeleton };
95
+ export * from "./index-ebda875c";
96
+ export * from "./Component-3885b0d7";
97
+ export * from "./Component-5e1b8383";
98
+ export * from "./hook-3e68f8db";
99
+ export * from "./typings-5e1b8383";
100
+ export * from "./utils-5e1b8383";
@@ -0,0 +1 @@
1
+ export * from "./Component-3ebe4754";
@@ -0,0 +1,6 @@
1
+ type BackgroundColorType = 'accent' | 'info' | 'attention-muted' | 'positive-muted' | 'negative-muted' | 'primary' | 'primary-inverted' | 'secondary' | 'secondary-inverted' | 'tertiary' | 'tertiary-inverted' | 'quaternary' | 'quaternary-inverted' | 'specialbg-component' | 'specialbg-component-inverted' | 'specialbg-primary-grouped' | 'specialbg-secondary-grouped' | 'specialbg-tertiary-grouped' | 'specialbg-secondary-transparent' | 'specialbg-secondary-transparent-inverted' | 'specialbg-tertiary-transparent' | 'specialbg-tertiary-transparent-inverted';
2
+ type BorderColorType = 'accent' | 'key' | 'key-inverted' | 'link' | 'primary' | 'primary-inverted' | 'secondary' | 'secondary-inverted' | 'tertiary' | 'tertiary-inverted' | 'underline' | 'underline-inverted' | 'graphic-attention' | 'graphic-link' | 'graphic-negative' | 'graphic-positive' | 'specialbg-secondary-transparent' | 'specialbg-secondary-transparent-inverted' | 'specialbg-tertiary-transparent' | 'specialbg-tertiary-transparent-inverted';
3
+ type GraphicColorType = 'accent' | 'link' | 'attention' | 'positive' | 'negative' | 'primary' | 'primary-inverted' | 'secondary' | 'secondary-inverted' | 'tertiary' | 'tertiary-inverted' | 'quaternary' | 'quaternary-inverted' | 'static-light' | 'static-accent' | 'static-dark';
4
+ type ShadowType = 'shadow-xs' | 'shadow-s' | 'shadow-m' | 'shadow-l' | 'shadow-xl' | 'shadow-xs-hard' | 'shadow-s-hard' | 'shadow-m-hard' | 'shadow-l-hard' | 'shadow-xl-hard' | 'shadow-xs-up' | 'shadow-s-up' | 'shadow-m-up' | 'shadow-l-up' | 'shadow-xl-up' | 'shadow-xs-hard-up' | 'shadow-s-hard-up' | 'shadow-m-hard-up' | 'shadow-l-hard-up' | 'shadow-xl-hard-up';
5
+ type GapType = '3xs' | '2xs' | 'xs' | 's' | 'm' | 'l' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl' | '7xl' | '8xl';
6
+ export { BackgroundColorType, BorderColorType, GraphicColorType, ShadowType, GapType };
@@ -0,0 +1,4 @@
1
+ import { FC, SVGProps } from 'react';
2
+ import { PickerButtonSize, PickerButtonVariant } from "./index-2aef4eba";
3
+ declare const getIcon: (variant: PickerButtonVariant, size: PickerButtonSize) => FC<SVGProps<SVGSVGElement>>;
4
+ export { getIcon };
@@ -0,0 +1,2 @@
1
+ export * from "./Component-ebda875c";
2
+ export * from "./utils-1574ad8b";
@@ -0,0 +1,3 @@
1
+ export * from "./Component-3885b0d7";
2
+ export * from "./index-ebda875c";
3
+ export type { NavigationBarProps } from "./types-ebda875c";
@@ -0,0 +1,37 @@
1
+ /// <reference types="react" />
2
+ /// <reference types="react-transition-group" />
3
+ import React from "react";
4
+ import { ButtonHTMLAttributes, ElementType, FC } from "react";
5
+ interface CloserProps extends ButtonHTMLAttributes<HTMLButtonElement> {
6
+ /**
7
+ * Вид компонента
8
+ */
9
+ view: "desktop" | "mobile";
10
+ /**
11
+ * Дополнительный класс
12
+ */
13
+ className?: string;
14
+ /**
15
+ * Позиция крестика
16
+ */
17
+ align?: "left" | "right";
18
+ /**
19
+ * Фиксирует крестик
20
+ */
21
+ sticky?: boolean;
22
+ /**
23
+ * Иконка
24
+ */
25
+ icon?: ElementType;
26
+ /**
27
+ * Идентификатор для систем автоматизированного тестирования
28
+ */
29
+ dataTestId?: string;
30
+ /**
31
+ * Коллбэк закрытия.
32
+ */
33
+ onClose?: (event: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>, reason?: "backdropClick" | "escapeKeyDown" | "closerClick") => void;
34
+ }
35
+ declare const Closer: FC<CloserProps>;
36
+ export { CloserProps, Closer };
37
+ export * from "./Component-ebda875c";
@@ -0,0 +1,3 @@
1
+ export * from "./component-3885b0d7";
2
+ export type { BottomSheetProps, BottomSheetTitleAlign } from "./types-5e678ff2";
3
+ export { CLOSE_OFFSET, HEADER_OFFSET } from "./utils-b64479aa";
@@ -0,0 +1,2 @@
1
+ export { CustomPickerButtonResponsive as CustomPickerButton } from "./responsive";
2
+ export type { CustomPickerButtonResponsiveProps as CustomPickerButtonProps } from "./responsive";
package/cssm/index.js ADDED
@@ -0,0 +1,21 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var Component_responsive = require('./Component.responsive.js');
6
+ require('tslib');
7
+ require('react');
8
+ require('@alfalab/core-components-mq/cssm');
9
+ require('./Component.desktop.js');
10
+ require('@alfalab/core-components-picker-button/cssm/desktop');
11
+ require('./field/Component.js');
12
+ require('classnames');
13
+ require('@alfalab/core-components-custom-button/cssm');
14
+ require('@alfalab/core-components-picker-button/cssm');
15
+ require('./field/index.module.css');
16
+ require('./Component.mobile.js');
17
+ require('@alfalab/core-components-picker-button/cssm/mobile');
18
+
19
+
20
+
21
+ exports.CustomPickerButton = Component_responsive.CustomPickerButtonResponsive;
@@ -0,0 +1,2 @@
1
+ export * from "./Component.mobile";
2
+ export {};
package/cssm/mobile.js ADDED
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var Component_mobile = require('./Component.mobile.js');
6
+ require('tslib');
7
+ require('react');
8
+ require('@alfalab/core-components-picker-button/cssm/mobile');
9
+ require('./field/Component.js');
10
+ require('classnames');
11
+ require('@alfalab/core-components-custom-button/cssm');
12
+ require('@alfalab/core-components-picker-button/cssm');
13
+ require('./field/index.module.css');
14
+
15
+
16
+
17
+ exports.CustomPickerButtonMobile = Component_mobile.CustomPickerButtonMobile;
@@ -0,0 +1,2 @@
1
+ export * from "./Component.responsive";
2
+ export {};