@arthurzakharov/ui-kit 1.0.3 → 1.0.6

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 (141) hide show
  1. package/dist/assets/box-b_yPaNPs.css +1 -0
  2. package/dist/assets/button-XGvsKGqH.css +1 -0
  3. package/dist/assets/certifications-tJ3i72S_.css +1 -0
  4. package/dist/assets/choice-BEXd0fh0.css +1 -0
  5. package/dist/assets/hidden-input-DHJQHUKd.css +1 -0
  6. package/dist/assets/index-CqamBlbE.css +1 -0
  7. package/dist/assets/input-DTN-3ZET.css +1 -0
  8. package/dist/assets/label-DF2VBeUr.css +1 -0
  9. package/dist/assets/main-C0tWHTEq.css +1 -0
  10. package/dist/assets/radio-label-Bd5UiESO.css +1 -0
  11. package/dist/assets/radio-text-DAsITkgm.css +1 -0
  12. package/dist/components/certifications/certifications.component.d.ts +1 -5
  13. package/dist/components/certifications/certifications.component.js +7 -8
  14. package/dist/components/certifications/certifications.types.d.ts +5 -0
  15. package/dist/components/certifications/certifications.types.js +1 -0
  16. package/dist/components/certifications/index.d.ts +1 -0
  17. package/dist/components/certifications/index.js +4 -0
  18. package/dist/components/control/components/box/box.component.d.ts +2 -0
  19. package/dist/components/control/components/box/box.component.js +32 -0
  20. package/dist/components/control/components/box/box.types.d.ts +9 -0
  21. package/dist/components/control/components/box/box.types.js +1 -0
  22. package/dist/components/control/components/box/index.d.ts +1 -0
  23. package/dist/components/control/components/box/index.js +4 -0
  24. package/dist/components/control/components/button/button.component.d.ts +2 -0
  25. package/dist/components/control/components/button/button.component.js +53 -0
  26. package/dist/components/control/components/button/button.types.d.ts +16 -0
  27. package/dist/components/control/components/button/button.types.js +1 -0
  28. package/dist/components/control/components/button/index.d.ts +1 -0
  29. package/dist/components/control/components/button/index.js +4 -0
  30. package/dist/components/control/components/card-image/card-image.component.d.ts +2 -0
  31. package/dist/components/control/components/card-image/card-image.component.js +7 -0
  32. package/dist/components/control/components/card-image/card-image.types.d.ts +6 -0
  33. package/dist/components/control/components/card-image/card-image.types.js +1 -0
  34. package/dist/components/control/components/card-image/index.d.ts +1 -0
  35. package/dist/components/control/components/card-image/index.js +4 -0
  36. package/dist/components/control/components/card-text/card-text.component.d.ts +2 -0
  37. package/dist/components/control/components/card-text/card-text.component.js +7 -0
  38. package/dist/components/control/components/card-text/card-text.types.d.ts +5 -0
  39. package/dist/components/control/components/card-text/card-text.types.js +1 -0
  40. package/dist/components/control/components/card-text/index.d.ts +1 -0
  41. package/dist/components/control/components/card-text/index.js +4 -0
  42. package/dist/components/control/components/checkbox/checkbox.component.d.ts +2 -0
  43. package/dist/components/control/components/checkbox/checkbox.component.js +7 -0
  44. package/dist/components/control/components/checkbox/checkbox.types.d.ts +5 -0
  45. package/dist/components/control/components/checkbox/checkbox.types.js +1 -0
  46. package/dist/components/control/components/checkbox/index.d.ts +1 -0
  47. package/dist/components/control/components/checkbox/index.js +4 -0
  48. package/dist/components/control/components/choice/choice.component.d.ts +2 -0
  49. package/dist/components/control/components/choice/choice.component.js +42 -0
  50. package/dist/components/control/components/choice/choice.types.d.ts +8 -0
  51. package/dist/components/control/components/choice/choice.types.js +1 -0
  52. package/dist/components/control/components/choice/index.d.ts +1 -0
  53. package/dist/components/control/components/choice/index.js +4 -0
  54. package/dist/components/control/components/dropdown/dropdown.component.d.ts +2 -0
  55. package/dist/components/control/components/dropdown/dropdown.component.js +11 -0
  56. package/dist/components/control/components/dropdown/dropdown.types.d.ts +14 -0
  57. package/dist/components/control/components/dropdown/dropdown.types.js +1 -0
  58. package/dist/components/control/components/dropdown/index.d.ts +1 -0
  59. package/dist/components/control/components/dropdown/index.js +4 -0
  60. package/dist/components/control/components/hidden-input/hidden-input.component.d.ts +2 -0
  61. package/dist/components/control/components/hidden-input/hidden-input.component.js +26 -0
  62. package/dist/components/control/components/hidden-input/hidden-input.types.d.ts +11 -0
  63. package/dist/components/control/components/hidden-input/hidden-input.types.js +1 -0
  64. package/dist/components/control/components/hidden-input/index.d.ts +1 -0
  65. package/dist/components/control/components/hidden-input/index.js +4 -0
  66. package/dist/components/control/components/input/index.d.ts +1 -0
  67. package/dist/components/control/components/input/index.js +4 -0
  68. package/dist/components/control/components/input/input.component.d.ts +2 -0
  69. package/dist/components/control/components/input/input.component.js +36 -0
  70. package/dist/components/control/components/input/input.types.d.ts +7 -0
  71. package/dist/components/control/components/input/input.types.js +1 -0
  72. package/dist/components/control/components/label/index.d.ts +1 -0
  73. package/dist/components/control/components/label/index.js +4 -0
  74. package/dist/components/control/components/label/label.component.d.ts +2 -0
  75. package/dist/components/control/components/label/label.component.js +28 -0
  76. package/dist/components/control/components/label/label.types.d.ts +8 -0
  77. package/dist/components/control/components/label/label.types.js +1 -0
  78. package/dist/components/control/components/radio/index.d.ts +1 -0
  79. package/dist/components/control/components/radio/index.js +4 -0
  80. package/dist/components/control/components/radio/radio.component.d.ts +2 -0
  81. package/dist/components/control/components/radio/radio.component.js +7 -0
  82. package/dist/components/control/components/radio/radio.types.d.ts +6 -0
  83. package/dist/components/control/components/radio/radio.types.js +1 -0
  84. package/dist/components/control/components/radio-label/index.d.ts +1 -0
  85. package/dist/components/control/components/radio-label/index.js +4 -0
  86. package/dist/components/control/components/radio-label/radio-label.component.d.ts +3 -0
  87. package/dist/components/control/components/radio-label/radio-label.component.js +37 -0
  88. package/dist/components/control/components/radio-label/radio-label.types.d.ts +17 -0
  89. package/dist/components/control/components/radio-label/radio-label.types.js +1 -0
  90. package/dist/components/control/components/radio-text/index.d.ts +1 -0
  91. package/dist/components/control/components/radio-text/index.js +4 -0
  92. package/dist/components/control/components/radio-text/radio-text.component.d.ts +2 -0
  93. package/dist/components/control/components/radio-text/radio-text.component.js +33 -0
  94. package/dist/components/control/components/radio-text/radio-text.types.d.ts +6 -0
  95. package/dist/components/control/components/radio-text/radio-text.types.js +1 -0
  96. package/dist/components/control/components/text/index.d.ts +1 -0
  97. package/dist/components/control/components/text/index.js +4 -0
  98. package/dist/components/control/components/text/text.component.d.ts +2 -0
  99. package/dist/components/control/components/text/text.component.js +7 -0
  100. package/dist/components/control/components/text/text.types.d.ts +6 -0
  101. package/dist/components/control/components/text/text.types.js +1 -0
  102. package/dist/components/control/components/textarea/index.d.ts +1 -0
  103. package/dist/components/control/components/textarea/index.js +4 -0
  104. package/dist/components/control/components/textarea/textarea.component.d.ts +2 -0
  105. package/dist/components/control/components/textarea/textarea.component.js +6 -0
  106. package/dist/components/control/components/textarea/textarea.types.d.ts +8 -0
  107. package/dist/components/control/components/textarea/textarea.types.js +1 -0
  108. package/dist/components/control/hooks/index.d.ts +1 -0
  109. package/dist/components/control/hooks/index.js +4 -0
  110. package/dist/components/control/hooks/useChoice/index.d.ts +1 -0
  111. package/dist/components/control/hooks/useChoice/index.js +4 -0
  112. package/dist/components/control/hooks/useChoice/useChoice.hook.d.ts +5 -0
  113. package/dist/components/control/hooks/useChoice/useChoice.hook.js +9 -0
  114. package/dist/components/control/index.d.ts +17 -0
  115. package/dist/components/control/index.js +12 -0
  116. package/dist/components/control/types.d.ts +35 -0
  117. package/dist/components/control/types.js +1 -0
  118. package/dist/components/control/utils/index.d.ts +1 -0
  119. package/dist/components/control/utils/index.js +6 -0
  120. package/dist/components/control/utils/utils.d.ts +4 -0
  121. package/dist/components/control/utils/utils.js +6 -0
  122. package/dist/enums.d.ts +14 -0
  123. package/dist/enums.js +4 -0
  124. package/dist/index-DtupH5zG.js +405 -0
  125. package/dist/main.d.ts +2 -1
  126. package/dist/main.js +5 -4
  127. package/dist/types.d.ts +3 -0
  128. package/dist/types.js +1 -0
  129. package/dist/utils/converter/converter.d.ts +37 -0
  130. package/dist/utils/converter/converter.js +139 -0
  131. package/dist/utils/converter/index.d.ts +1 -0
  132. package/dist/utils/converter/index.js +4 -0
  133. package/dist/utils/index.d.ts +2 -0
  134. package/dist/utils/index.js +6 -0
  135. package/dist/utils/time/index.d.ts +1 -0
  136. package/dist/utils/time/index.js +4 -0
  137. package/dist/utils/time/time.d.ts +7 -0
  138. package/dist/utils/time/time.js +33 -0
  139. package/package.json +16 -27
  140. package/dist/assets/certifications-CHPUtPfO.css +0 -1
  141. package/dist/assets/main-CkMkgeLf.css +0 -1
@@ -0,0 +1,14 @@
1
+ import { QuestionChoice } from '../../types';
2
+ export interface DropdownProps {
3
+ choices: QuestionChoice[];
4
+ value: QuestionChoice[];
5
+ label?: string;
6
+ placeholder?: string;
7
+ noResult?: string;
8
+ isSearchHidden?: boolean;
9
+ multiple?: boolean;
10
+ closeButton?: string;
11
+ onChange: (values: QuestionChoice[]) => void;
12
+ onOpen?: (height: number, width: number) => void;
13
+ onClose?: () => void;
14
+ }
@@ -0,0 +1 @@
1
+ export { Dropdown } from './dropdown.component';
@@ -0,0 +1,4 @@
1
+ import { D as p } from "../../../../index-DtupH5zG.js";
2
+ export {
3
+ p as Dropdown
4
+ };
@@ -0,0 +1,2 @@
1
+ import { HiddenInputProps } from './hidden-input.types';
2
+ export declare const HiddenInput: (props: HiddenInputProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,26 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import '../../../../assets/hidden-input-DHJQHUKd.css';const c = "_HiddenInput_bej3d_1", l = {
3
+ HiddenInput: c
4
+ }, f = (a) => {
5
+ const { type: i, id: u, name: p, value: r, disabled: n = !1, checked: s, onChange: t } = a;
6
+ return /* @__PURE__ */ o(
7
+ "input",
8
+ {
9
+ "data-testid": "hidden-input",
10
+ type: i,
11
+ id: u,
12
+ name: p,
13
+ value: r,
14
+ checked: s,
15
+ disabled: n,
16
+ className: l.HiddenInput,
17
+ onChange: (e) => {
18
+ var d;
19
+ n || (e.preventDefault(), (d = e.nativeEvent) != null && d.pageX || e.nativeEvent.pageY ? (e.currentTarget.blur(), t(e, "mouse")) : t(e, "keyboard"));
20
+ }
21
+ }
22
+ );
23
+ };
24
+ export {
25
+ f as HiddenInput
26
+ };
@@ -0,0 +1,11 @@
1
+ import { ChangeEvent } from 'react';
2
+ import { InputChangeSource } from '../../types';
3
+ export interface HiddenInputProps {
4
+ id: string;
5
+ value: string;
6
+ name: string;
7
+ type: 'radio' | 'checkbox';
8
+ checked: boolean;
9
+ disabled?: boolean;
10
+ onChange: (e: ChangeEvent<HTMLInputElement>, source?: InputChangeSource) => void;
11
+ }
@@ -0,0 +1 @@
1
+ export { HiddenInput } from './hidden-input.component';
@@ -0,0 +1,4 @@
1
+ import { HiddenInput as n } from "./hidden-input.component.js";
2
+ export {
3
+ n as HiddenInput
4
+ };
@@ -0,0 +1 @@
1
+ export { Input } from './input.component';
@@ -0,0 +1,4 @@
1
+ import { Input as r } from "./input.component.js";
2
+ export {
3
+ r as Input
4
+ };
@@ -0,0 +1,2 @@
1
+ import { InputProps } from './input.types';
2
+ export declare const Input: ({ id, value, disabled, type, onAutofill, onAutofillCancel, onChange, onFocus, onBlur, }: InputProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,36 @@
1
+ import { jsx as I } from "react/jsx-runtime";
2
+ import '../../../../assets/input-DTN-3ZET.css';const i = "_Input_1vr20_1", p = {
3
+ Input: i,
4
+ "autofill-start": "_autofill-start_1vr20_1",
5
+ "autofill-cancel": "_autofill-cancel_1vr20_1"
6
+ }, v = ({
7
+ id: a,
8
+ value: r,
9
+ disabled: _ = !1,
10
+ type: c = "text",
11
+ onAutofill: l,
12
+ onAutofillCancel: e,
13
+ onChange: s,
14
+ onFocus: n,
15
+ onBlur: m
16
+ }) => /* @__PURE__ */ I(
17
+ "input",
18
+ {
19
+ "data-testid": "input",
20
+ disabled: _,
21
+ type: c,
22
+ id: a,
23
+ name: a,
24
+ value: r,
25
+ className: p.Input,
26
+ onChange: (t) => s(t.target.value, a, "keyboard"),
27
+ onAnimationStart: (t) => {
28
+ t.animationName === p["autofill-start"] && (l == null || l.call(null, a)), t.animationName === p["autofill-cancel"] && (e == null || e.call(null, a));
29
+ },
30
+ onFocus: () => n == null ? void 0 : n.call(null, a),
31
+ onBlur: () => m == null ? void 0 : m.call(null, a)
32
+ }
33
+ );
34
+ export {
35
+ v as Input
36
+ };
@@ -0,0 +1,7 @@
1
+ import { HTMLInputTypeAttribute } from 'react';
2
+ import { Interactive } from '../../types';
3
+ export interface InputProps extends Interactive<string> {
4
+ type?: HTMLInputTypeAttribute;
5
+ onAutofill?: (id: string) => void;
6
+ onAutofillCancel?: (id: string) => void;
7
+ }
@@ -0,0 +1 @@
1
+ export { Label } from './label.component';
@@ -0,0 +1,4 @@
1
+ import { Label as r } from "./label.component.js";
2
+ export {
3
+ r as Label
4
+ };
@@ -0,0 +1,2 @@
1
+ import { LabelProps } from './label.types';
2
+ export declare const Label: (props: LabelProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,28 @@
1
+ import { jsx as i } from "react/jsx-runtime";
2
+ import s from "clsx";
3
+ import '../../../../assets/label-DF2VBeUr.css';const c = "_Label_3yaik_1", b = "_LabelPositionIdle_3yaik_6", L = "_LabelPositionActive_3yaik_11", r = "_LabelStateIdle_3yaik_16", n = "_LabelStateError_3yaik_20", _ = "_LabelStateSuccess_3yaik_24", e = {
4
+ Label: c,
5
+ LabelPositionIdle: b,
6
+ LabelPositionActive: L,
7
+ LabelStateIdle: r,
8
+ LabelStateError: n,
9
+ LabelStateSuccess: _
10
+ }, I = (l) => {
11
+ const { children: o, position: a = "idle", state: t = "idle" } = l;
12
+ return /* @__PURE__ */ i(
13
+ "span",
14
+ {
15
+ className: s(e.Label, {
16
+ [e.LabelPositionIdle]: a === "idle",
17
+ [e.LabelPositionActive]: a === "active",
18
+ [e.LabelStateIdle]: t === "idle",
19
+ [e.LabelStateError]: t === "error",
20
+ [e.LabelStateSuccess]: t === "success"
21
+ }),
22
+ children: o
23
+ }
24
+ );
25
+ };
26
+ export {
27
+ I as Label
28
+ };
@@ -0,0 +1,8 @@
1
+ import { PropsWithChildren } from 'react';
2
+ import { State } from '../../types';
3
+ type LabelPosition = 'idle' | 'active';
4
+ export interface LabelProps extends PropsWithChildren {
5
+ state?: State;
6
+ position?: LabelPosition;
7
+ }
8
+ export {};
@@ -0,0 +1 @@
1
+ export { Radio } from './radio.component';
@@ -0,0 +1,4 @@
1
+ import { R as r } from "../../../../index-DtupH5zG.js";
2
+ export {
3
+ r as Radio
4
+ };
@@ -0,0 +1,2 @@
1
+ import { RadioProps } from './radio.types';
2
+ export declare const Radio: (props: RadioProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ import "react/jsx-runtime";
2
+ import "clsx";
3
+ import { R as t } from "../../../../index-DtupH5zG.js";
4
+ import "../../utils/utils.js";
5
+ export {
6
+ t as Radio
7
+ };
@@ -0,0 +1,6 @@
1
+ import { Interactive, RadioChoice, State } from '../../types';
2
+ export interface RadioProps extends Interactive<string> {
3
+ orientation: 'horizontal' | 'vertical';
4
+ choices: RadioChoice[];
5
+ state?: State;
6
+ }
@@ -0,0 +1 @@
1
+ export { RadioLabel } from './radio-label.component';
@@ -0,0 +1,4 @@
1
+ import { RadioLabel as e } from "./radio-label.component.js";
2
+ export {
3
+ e as RadioLabel
4
+ };
@@ -0,0 +1,3 @@
1
+ import { ChoiceValue } from '../../types';
2
+ import { RadioLabelProps } from './radio-label.types';
3
+ export declare const RadioLabel: <T extends ChoiceValue>(props: RadioLabelProps<T>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,37 @@
1
+ import { jsx as h } from "react/jsx-runtime";
2
+ import { useToggle as l } from "usehooks-ts";
3
+ import '../../../../assets/radio-label-Bd5UiESO.css';const v = "_RadioLabel_1xgor_1", b = {
4
+ RadioLabel: v
5
+ }, L = (a) => {
6
+ const { children: t, id: c, value: e, choice: o, choices: i = [], state: d = "idle" } = a, [n, r] = l(!1), [u, s] = l(!1);
7
+ return /* @__PURE__ */ h(
8
+ "label",
9
+ {
10
+ "data-testid": "radio-label",
11
+ htmlFor: c,
12
+ className: b.RadioLabel,
13
+ onFocus: () => r(),
14
+ onBlur: () => r(),
15
+ onMouseEnter: () => s(),
16
+ onMouseLeave: () => s(),
17
+ children: t({
18
+ focused: n,
19
+ hovered: u,
20
+ checked: typeof e == "string" ? e === o.value : e.includes(o.value),
21
+ state: (() => {
22
+ switch (d) {
23
+ case "success":
24
+ return "idle";
25
+ case "error":
26
+ return i.some((g) => g.value === e) ? e === o.value ? "error" : "idle" : "error";
27
+ case "idle":
28
+ return "idle";
29
+ }
30
+ })()
31
+ })
32
+ }
33
+ );
34
+ };
35
+ export {
36
+ L as RadioLabel
37
+ };
@@ -0,0 +1,17 @@
1
+ import { ReactNode } from 'react';
2
+ import { RadioChoice, ChoiceValue, State } from '../../types';
3
+ interface RadioLabelChild {
4
+ focused: boolean;
5
+ hovered: boolean;
6
+ checked: boolean;
7
+ state?: State;
8
+ }
9
+ export interface RadioLabelProps<T extends ChoiceValue> {
10
+ id: string;
11
+ value: T;
12
+ choice: RadioChoice;
13
+ choices?: RadioChoice[];
14
+ state?: State;
15
+ children: (props: RadioLabelChild) => ReactNode;
16
+ }
17
+ export {};
@@ -0,0 +1 @@
1
+ export { RadioText } from './radio-text.component';
@@ -0,0 +1,4 @@
1
+ import { RadioText as r } from "./radio-text.component.js";
2
+ export {
3
+ r as RadioText
4
+ };
@@ -0,0 +1,2 @@
1
+ import { RadioTextProps } from './radio-text.types';
2
+ export declare const RadioText: (props: RadioTextProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,33 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import x from "clsx";
3
+ import '../../../../assets/radio-text-DAsITkgm.css';const T = "_RadioText_8gt23_1", R = "_RadioTextSizeMd_8gt23_8", c = "_RadioTextSizeLg_8gt23_13", s = "_RadioTextOneLine_8gt23_18", _ = "_RadioTextContent_8gt23_19", e = {
4
+ RadioText: T,
5
+ RadioTextSizeMd: R,
6
+ RadioTextSizeLg: c,
7
+ RadioTextOneLine: s,
8
+ RadioTextContent: _
9
+ }, L = (d) => {
10
+ const { children: t, size: i, checked: n, oneLine: a = !1 } = d;
11
+ return /* @__PURE__ */ o(
12
+ "div",
13
+ {
14
+ className: x(e.RadioText, {
15
+ [e.RadioTextSizeMd]: i === "md",
16
+ [e.RadioTextSizeLg]: i === "lg",
17
+ [e.RadioTextOneLine]: a
18
+ }),
19
+ children: /* @__PURE__ */ o(
20
+ "span",
21
+ {
22
+ "data-text": t,
23
+ "data-checked": n,
24
+ className: e.RadioTextContent,
25
+ dangerouslySetInnerHTML: { __html: t }
26
+ }
27
+ )
28
+ }
29
+ );
30
+ };
31
+ export {
32
+ L as RadioText
33
+ };
@@ -0,0 +1,6 @@
1
+ export interface RadioTextProps {
2
+ children: string;
3
+ size: 'md' | 'lg';
4
+ checked: boolean;
5
+ oneLine?: boolean;
6
+ }
@@ -0,0 +1 @@
1
+ export { Text } from './text.component';
@@ -0,0 +1,4 @@
1
+ import { a as o } from "../../../../index-DtupH5zG.js";
2
+ export {
3
+ o as Text
4
+ };
@@ -0,0 +1,2 @@
1
+ import { TextProps } from './text.types';
2
+ export declare const Text: (props: TextProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ import "react/jsx-runtime";
2
+ import "clsx";
3
+ import "usehooks-ts";
4
+ import { a as i } from "../../../../index-DtupH5zG.js";
5
+ export {
6
+ i as Text
7
+ };
@@ -0,0 +1,6 @@
1
+ import { InputProps } from '../input/input.types';
2
+ import { State } from '../../types';
3
+ export interface TextProps extends InputProps {
4
+ label: string;
5
+ state?: State;
6
+ }
@@ -0,0 +1 @@
1
+ export { Textarea } from './textarea.component';
@@ -0,0 +1,4 @@
1
+ import { T as r } from "../../../../index-DtupH5zG.js";
2
+ export {
3
+ r as Textarea
4
+ };
@@ -0,0 +1,2 @@
1
+ import { TextareaProps } from './textarea.types';
2
+ export declare const Textarea: (props: TextareaProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import "react/jsx-runtime";
2
+ import "usehooks-ts";
3
+ import { T as e } from "../../../../index-DtupH5zG.js";
4
+ export {
5
+ e as Textarea
6
+ };
@@ -0,0 +1,8 @@
1
+ import { Interactive, State } from '../../types';
2
+ export interface TextareaProps extends Interactive<string> {
3
+ state?: State;
4
+ placeholder?: string;
5
+ rows?: number;
6
+ onAutofill?: (id: string) => void;
7
+ onAutofillCancel?: (id: string) => void;
8
+ }
@@ -0,0 +1 @@
1
+ export { useChoice } from './useChoice';
@@ -0,0 +1,4 @@
1
+ import { useChoice as r } from "./useChoice/useChoice.hook.js";
2
+ export {
3
+ r as useChoice
4
+ };
@@ -0,0 +1 @@
1
+ export { useChoice } from './useChoice.hook';
@@ -0,0 +1,4 @@
1
+ import { useChoice as r } from "./useChoice.hook.js";
2
+ export {
3
+ r as useChoice
4
+ };
@@ -0,0 +1,5 @@
1
+ import { ChoiceType, ChoiceValue, InputChangeSource, Interactive } from '../../types';
2
+ export declare const useChoice: (value: ChoiceValue, id: string, cb: Interactive<ChoiceValue>["onChange"]) => {
3
+ type: ChoiceType;
4
+ onChoiceChange: (newValue: string, source?: InputChangeSource) => void;
5
+ };
@@ -0,0 +1,9 @@
1
+ const s = (o, i, e) => ({
2
+ type: typeof o == "string" ? "radio" : "checkbox",
3
+ onChoiceChange: (t, r) => {
4
+ e(typeof o == "string" ? t : o.includes(t) ? o.filter((n) => n !== t).filter(Boolean) : [...o, t].filter(Boolean), i, r);
5
+ }
6
+ });
7
+ export {
8
+ s as useChoice
9
+ };
@@ -0,0 +1,17 @@
1
+ export declare const Control: {
2
+ Box: import('react').ForwardRefExoticComponent<import('./components/box/box.types').BoxProps & import('react').RefAttributes<HTMLDivElement>>;
3
+ Button: (props: import('./components/button/button.types').ButtonProps) => import("react/jsx-runtime").JSX.Element;
4
+ CardImage: (props: import('./components/card-image/card-image.types').CardImageProps) => import("react/jsx-runtime").JSX.Element;
5
+ CardText: (props: import('./components/card-text/card-text.types').CardTextProps) => import("react/jsx-runtime").JSX.Element;
6
+ Checkbox: (props: import('./components/checkbox/checkbox.types').CheckboxProps) => import("react/jsx-runtime").JSX.Element;
7
+ Choice: (props: import('./components/choice/choice.types').ChoiceProps) => import("react/jsx-runtime").JSX.Element;
8
+ Dropdown: (props: import('./components/dropdown/dropdown.types').DropdownProps) => import("react/jsx-runtime").JSX.Element;
9
+ HiddenInput: (props: import('./components/hidden-input/hidden-input.types').HiddenInputProps) => import("react/jsx-runtime").JSX.Element;
10
+ Input: ({ id, value, disabled, type, onAutofill, onAutofillCancel, onChange, onFocus, onBlur, }: import('./components/input/input.types').InputProps) => import("react/jsx-runtime").JSX.Element;
11
+ Label: (props: import('./components/label/label.types').LabelProps) => import("react/jsx-runtime").JSX.Element;
12
+ Radio: (props: import('./components/radio/radio.types').RadioProps) => import("react/jsx-runtime").JSX.Element;
13
+ RadioLabel: <T extends import('./types').ChoiceValue>(props: import('./components/radio-label/radio-label.types').RadioLabelProps<T>) => import("react/jsx-runtime").JSX.Element;
14
+ RadioText: (props: import('./components/radio-text/radio-text.types').RadioTextProps) => import("react/jsx-runtime").JSX.Element;
15
+ Text: (props: import('./components/text/text.types').TextProps) => import("react/jsx-runtime").JSX.Element;
16
+ Textarea: (props: import('./components/textarea/textarea.types').TextareaProps) => import("react/jsx-runtime").JSX.Element;
17
+ };
@@ -0,0 +1,12 @@
1
+ import "./components/box/box.component.js";
2
+ import "./components/button/button.component.js";
3
+ import { d as l } from "../../index-DtupH5zG.js";
4
+ import "./components/choice/choice.component.js";
5
+ import "./components/hidden-input/hidden-input.component.js";
6
+ import "./components/input/input.component.js";
7
+ import "./components/label/label.component.js";
8
+ import "./components/radio-label/radio-label.component.js";
9
+ import "./components/radio-text/radio-text.component.js";
10
+ export {
11
+ l as Control
12
+ };
@@ -0,0 +1,35 @@
1
+ export type InputChangeSource = 'mouse' | 'keyboard';
2
+ export interface Interactive<V> {
3
+ id: string;
4
+ value: V;
5
+ disabled?: boolean;
6
+ onChange: (value: V, id: string, source?: InputChangeSource) => void;
7
+ onFocus?: (id: string) => void;
8
+ onBlur?: (id: string) => void;
9
+ }
10
+ export type RadioChoice = {
11
+ label: string;
12
+ value: string;
13
+ icon?: string;
14
+ };
15
+ export type ChoiceType = 'radio' | 'checkbox';
16
+ export type ChoiceValue = string | string[];
17
+ export type State = 'idle' | 'error' | 'success';
18
+ export type QuestionPath = string[];
19
+ export type QuestionChoice = {
20
+ value: string;
21
+ label: string;
22
+ icon?: string;
23
+ /**
24
+ * - string[] - array of question keys, that defines future path;
25
+ * - string - valid url that would be used for redirect;
26
+ */
27
+ path?: QuestionPath | string;
28
+ info?: string;
29
+ isPreselected?: boolean;
30
+ isDefault?: boolean;
31
+ };
32
+ export type Size = {
33
+ width: number;
34
+ height: number;
35
+ };
@@ -0,0 +1 @@
1
+
@@ -0,0 +1 @@
1
+ export { getChoiceId, containsHtml, clickHasNode } from './utils';
@@ -0,0 +1,6 @@
1
+ import { clickHasNode as e, containsHtml as t, getChoiceId as i } from "./utils.js";
2
+ export {
3
+ e as clickHasNode,
4
+ t as containsHtml,
5
+ i as getChoiceId
6
+ };
@@ -0,0 +1,4 @@
1
+ import { RefObject } from 'react';
2
+ export declare const getChoiceId: (id: string, value: string, index: number) => string;
3
+ export declare const containsHtml: (str?: string) => boolean;
4
+ export declare const clickHasNode: (event: MouseEvent | TouchEvent | FocusEvent, element: RefObject<HTMLElement>) => boolean;
@@ -0,0 +1,6 @@
1
+ const c = (t, n, r) => [t, r, n.replace(/\s+/g, "-")].join("-"), e = (t) => /<([a-z][a-z0-9]*)\b[^>]*>(.*?)<\/\1>|<([a-z][a-z0-9]*)\b[^>]*\/?>/i.test(t || ""), o = (t, n) => !!(n.current && n.current.contains(t.target));
2
+ export {
3
+ o as clickHasNode,
4
+ e as containsHtml,
5
+ c as getChoiceId
6
+ };
@@ -0,0 +1,14 @@
1
+ export declare enum MONTH {
2
+ JANUARY = 0,
3
+ FEBRUARY = 1,
4
+ MARCH = 2,
5
+ APRIL = 3,
6
+ MAY = 4,
7
+ JUNE = 5,
8
+ JULY = 6,
9
+ AUGUST = 7,
10
+ SEPTEMBER = 8,
11
+ OCTOBER = 9,
12
+ NOVEMBER = 10,
13
+ DECEMBER = 11
14
+ }
package/dist/enums.js ADDED
@@ -0,0 +1,4 @@
1
+ var R = /* @__PURE__ */ ((E) => (E[E.JANUARY = 0] = "JANUARY", E[E.FEBRUARY = 1] = "FEBRUARY", E[E.MARCH = 2] = "MARCH", E[E.APRIL = 3] = "APRIL", E[E.MAY = 4] = "MAY", E[E.JUNE = 5] = "JUNE", E[E.JULY = 6] = "JULY", E[E.AUGUST = 7] = "AUGUST", E[E.SEPTEMBER = 8] = "SEPTEMBER", E[E.OCTOBER = 9] = "OCTOBER", E[E.NOVEMBER = 10] = "NOVEMBER", E[E.DECEMBER = 11] = "DECEMBER", E))(R || {});
2
+ export {
3
+ R as MONTH
4
+ };