brd-ui-kit 0.1.89 → 0.1.90
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/transfer-list/transfer-list-card.d.ts +4 -2
- package/dist/components/ui/input/input.d.ts +1 -1
- package/dist/components-transfer-list-transfer-list-card.cjs +4 -4
- package/dist/components-transfer-list-transfer-list-card.cjs.map +1 -1
- package/dist/components-transfer-list-transfer-list-card.js +69 -59
- package/dist/components-transfer-list-transfer-list-card.js.map +1 -1
- package/dist/components-transfer-list-transfer-list.cjs +1 -1
- package/dist/components-transfer-list-transfer-list.cjs.map +1 -1
- package/dist/components-transfer-list-transfer-list.js +58 -52
- package/dist/components-transfer-list-transfer-list.js.map +1 -1
- package/dist/components-ui-input-input.cjs.map +1 -1
- package/dist/components-ui-input-input.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
import { TransferListItem } from './transfer-list';
|
|
2
1
|
import { IconTypes } from '../../types/types';
|
|
2
|
+
import { TransferListItem } from './transfer-list';
|
|
3
3
|
type Props = {
|
|
4
4
|
items: TransferListItem[];
|
|
5
5
|
selectedSet: Set<string>;
|
|
6
|
+
allCompleted?: boolean;
|
|
6
7
|
onSelectItem: (id: string) => void;
|
|
7
8
|
onMoveItem: (itemId: string) => void;
|
|
8
9
|
direction: "left" | "right";
|
|
10
|
+
emptyText: string;
|
|
9
11
|
headerIcon?: {
|
|
10
12
|
type: IconTypes;
|
|
11
13
|
className: string;
|
|
@@ -18,5 +20,5 @@ type Props = {
|
|
|
18
20
|
showHeaderTooltip?: boolean;
|
|
19
21
|
showFooterIcons?: boolean;
|
|
20
22
|
};
|
|
21
|
-
export declare const TransferListCard: ({ items, selectedSet, onSelectItem, onMoveItem, direction, headerIcon, headerButton, showHeaderTooltip, showFooterIcons, }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
export declare const TransferListCard: ({ items, selectedSet, emptyText, onSelectItem, onMoveItem, direction, allCompleted, headerIcon, headerButton, showHeaderTooltip, showFooterIcons, }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
22
24
|
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ComponentPropsWithRef } from 'react';
|
|
2
1
|
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import { ComponentPropsWithRef } from 'react';
|
|
3
3
|
import { inputVariants } from './input.styles';
|
|
4
4
|
type InputProps = ComponentPropsWithRef<"input"> & VariantProps<typeof inputVariants> & {
|
|
5
5
|
className?: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),
|
|
2
|
-
flex-col rounded-xl border`,children:[e.jsxs("div",{className:
|
|
3
|
-
overflow-y-auto border-t`,children:
|
|
4
|
-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),h=require("./lib-utils.cjs"),v=require("./components-basic-tooltip-basic-tooltip.cjs"),i=require("./components-ui-button-button.cjs");require("./components-ui-button-button.styles.cjs");const t=require("./components-ui-icon-icon.cjs");require("brd-phosphor-strokes-icons/icons");const l=require("./components-ui-typography-typography.cjs");require("./components-ui-typography-typography.styles.cjs");const _=({items:n,selectedSet:g,emptyText:u,onSelectItem:f,onMoveItem:x,direction:d,allCompleted:j,headerIcon:a,headerButton:s,showHeaderTooltip:N=!1,showFooterIcons:p=!1})=>{const r=d==="right",y=r?"caret-right":"caret-left",b=r?"x-circle":"check-circle",m=r?"text-error-text":"text-success-text";return e.jsxs("div",{className:`bg-secondary-bg border-delicate-border flex h-full min-h-0 w-97.5
|
|
2
|
+
flex-col rounded-xl border`,children:[e.jsxs("div",{className:h.cn("bg-primary-bg flex items-center rounded-t-xl px-7.5 py-4",d==="left"?"gap-6":"justify-between",j&&"bg-confidence-bg"),children:[e.jsxs("div",{className:"w-fit",children:[s&&!r&&e.jsx(i.Button,{variant:"circleGhost",onClick:s.onClick,disabled:s.disabled,children:e.jsx(t.Icon,{type:s.icon,className:"text-placeholder-text"})}),N&&e.jsx(v.BasicTooltip,{place:"left",arrow:!0,text:e.jsx(l.Typography,{variant:"body-xxs-regular",className:"w-fit",children:"Переносите пункты туда или обратно с помощью клика на них"}),children:e.jsx(t.Icon,{type:"info",className:"text-placeholder-text"})}),a&&e.jsx(t.Icon,{type:a.type,className:a.className})]}),e.jsx(l.Typography,{variant:"body-lg-semibold",className:"text-primary-text",children:r?"Нужно для расчета":"Уже есть для расчета"}),s&&r&&e.jsx(i.Button,{variant:"circleGhost",onClick:s.onClick,disabled:s.disabled,children:e.jsx(t.Icon,{type:s.icon,className:"text-placeholder-text"})})]}),e.jsx("div",{className:`border-delicate-border flex min-h-0 flex-1 flex-col gap-2
|
|
3
|
+
overflow-y-auto border-t`,children:n.length>0?n.map(c=>e.jsxs("div",{className:h.cn(`bg-primary-bg flex cursor-pointer items-center justify-between gap-4 px-8
|
|
4
|
+
py-4`,g.has(c.id)&&"bg-primary-hover-bg"),onClick:()=>f(c.id),children:[e.jsxs("div",{className:"flex items-center gap-4",children:[p?e.jsx(i.Button,{variant:"circleGhost",onClick:o=>{o.stopPropagation(),x(c.id)},children:e.jsx(t.Icon,{type:y,className:"text-placeholder-text"})}):e.jsx(t.Icon,{type:b,size:25,strokeWidth:1.5,className:m}),e.jsx(l.Typography,{variant:"body-md-regular",className:"text-primary-text",children:c.label})]}),p?e.jsx(t.Icon,{type:b,size:25,strokeWidth:1.5,className:m}):e.jsx(i.Button,{variant:"circleGhost",onClick:o=>{o.stopPropagation(),x(c.id)},children:e.jsx(t.Icon,{type:y,className:"text-placeholder-text"})})]},c.id)):e.jsx("div",{className:"flex h-full items-center justify-center",children:e.jsx(l.Typography,{variant:"body-lg-medium",className:"text-sub-label-text",children:u})})})]})};exports.TransferListCard=_;
|
|
5
5
|
//# sourceMappingURL=components-transfer-list-transfer-list-card.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-transfer-list-transfer-list-card.cjs","sources":["../src/components/transfer-list/transfer-list-card.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport { BasicTooltip } from \"../basic-tooltip\";\nimport { Button } from \"../ui/button\";\nimport { Icon } from \"../ui/icon\";\nimport { Typography } from \"../ui/typography\";\nimport type { TransferListItem } from \"./transfer-list\";\
|
|
1
|
+
{"version":3,"file":"components-transfer-list-transfer-list-card.cjs","sources":["../src/components/transfer-list/transfer-list-card.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport type { IconTypes } from \"@/types/types\";\nimport { BasicTooltip } from \"../basic-tooltip\";\nimport { Button } from \"../ui/button\";\nimport { Icon } from \"../ui/icon\";\nimport { Typography } from \"../ui/typography\";\nimport type { TransferListItem } from \"./transfer-list\";\n\ntype Props = {\n items: TransferListItem[];\n selectedSet: Set<string>;\n allCompleted?: boolean;\n onSelectItem: (id: string) => void;\n onMoveItem: (itemId: string) => void;\n direction: \"left\" | \"right\";\n emptyText: string;\n headerIcon?: {\n type: IconTypes;\n className: string;\n };\n headerButton?: {\n icon: IconTypes;\n onClick: () => void;\n disabled: boolean;\n };\n showHeaderTooltip?: boolean;\n showFooterIcons?: boolean;\n};\n\nexport const TransferListCard = ({\n items,\n selectedSet,\n emptyText,\n onSelectItem,\n onMoveItem,\n direction,\n allCompleted,\n headerIcon,\n headerButton,\n showHeaderTooltip = false,\n showFooterIcons = false,\n}: Props) => {\n const isMovingToRight = direction === \"right\";\n const moveIcon = isMovingToRight ? \"caret-right\" : \"caret-left\";\n const footerIcon = isMovingToRight ? \"x-circle\" : \"check-circle\";\n const footerIconClassName = isMovingToRight ? \"text-error-text\" : \"text-success-text\";\n\n return (\n <div\n className=\"bg-secondary-bg border-delicate-border flex h-full min-h-0 w-97.5\n flex-col rounded-xl border\"\n >\n <div\n className={cn(\n \"bg-primary-bg flex items-center rounded-t-xl px-7.5 py-4\",\n direction === \"left\" ? \"gap-6\" : \"justify-between\",\n allCompleted && \"bg-confidence-bg\",\n )}\n >\n <div className=\"w-fit\">\n {headerButton && !isMovingToRight && (\n <Button\n variant=\"circleGhost\"\n onClick={headerButton.onClick}\n disabled={headerButton.disabled}\n >\n <Icon\n type={headerButton.icon}\n className=\"text-placeholder-text\"\n />\n </Button>\n )}\n {showHeaderTooltip && (\n <BasicTooltip\n place=\"left\"\n arrow\n text={\n <Typography\n variant=\"body-xxs-regular\"\n className=\"w-fit\"\n >\n Переносите пункты туда или обратно с помощью клика на них\n </Typography>\n }\n >\n <Icon\n type=\"info\"\n className=\"text-placeholder-text\"\n />\n </BasicTooltip>\n )}\n {headerIcon && (\n <Icon\n type={headerIcon.type}\n className={headerIcon.className}\n />\n )}\n </div>\n\n <Typography\n variant=\"body-lg-semibold\"\n className=\"text-primary-text\"\n >\n {isMovingToRight ? \"Нужно для расчета\" : \"Уже есть для расчета\"}\n </Typography>\n\n {headerButton && isMovingToRight && (\n <Button\n variant=\"circleGhost\"\n onClick={headerButton.onClick}\n disabled={headerButton.disabled}\n >\n <Icon\n type={headerButton.icon}\n className=\"text-placeholder-text\"\n />\n </Button>\n )}\n </div>\n\n <div\n className=\"border-delicate-border flex min-h-0 flex-1 flex-col gap-2\n overflow-y-auto border-t\"\n >\n {items.length > 0 ? (\n items.map((item) => (\n <div\n key={item.id}\n className={cn(\n `bg-primary-bg flex cursor-pointer items-center justify-between gap-4 px-8\n py-4`,\n selectedSet.has(item.id) && \"bg-primary-hover-bg\",\n )}\n onClick={() => onSelectItem(item.id)}\n >\n <div className=\"flex items-center gap-4\">\n {showFooterIcons ? (\n <Button\n variant=\"circleGhost\"\n onClick={(e) => {\n e.stopPropagation();\n onMoveItem(item.id);\n }}\n >\n <Icon\n type={moveIcon}\n className=\"text-placeholder-text\"\n />\n </Button>\n ) : (\n <Icon\n type={footerIcon}\n size={25}\n strokeWidth={1.5}\n className={footerIconClassName}\n />\n )}\n\n <Typography\n variant=\"body-md-regular\"\n className=\"text-primary-text\"\n >\n {item.label}\n </Typography>\n </div>\n\n {!showFooterIcons ? (\n <Button\n variant=\"circleGhost\"\n onClick={(e) => {\n e.stopPropagation();\n onMoveItem(item.id);\n }}\n >\n <Icon\n type={moveIcon}\n className=\"text-placeholder-text\"\n />\n </Button>\n ) : (\n <Icon\n type={footerIcon}\n size={25}\n strokeWidth={1.5}\n className={footerIconClassName}\n />\n )}\n </div>\n ))\n ) : (\n <div className=\"flex h-full items-center justify-center\">\n <Typography\n variant=\"body-lg-medium\"\n className=\"text-sub-label-text\"\n >\n {emptyText}\n </Typography>\n </div>\n )}\n </div>\n </div>\n );\n};\n"],"names":["TransferListCard","items","selectedSet","emptyText","onSelectItem","onMoveItem","direction","allCompleted","headerIcon","headerButton","showHeaderTooltip","showFooterIcons","isMovingToRight","moveIcon","footerIcon","footerIconClassName","jsxs","cn","jsx","Button","Icon","BasicTooltip","Typography","item","e"],"mappings":"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"}
|
|
@@ -1,24 +1,26 @@
|
|
|
1
1
|
import { jsxs as a, jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import { cn as
|
|
3
|
-
import { BasicTooltip as
|
|
2
|
+
import { cn as y } from "./lib-utils.js";
|
|
3
|
+
import { BasicTooltip as C } from "./components-basic-tooltip-basic-tooltip.js";
|
|
4
4
|
import { Button as c } from "./components-ui-button-button.js";
|
|
5
5
|
import "./components-ui-button-button.styles.js";
|
|
6
|
-
import { Icon as
|
|
6
|
+
import { Icon as l } from "./components-ui-icon-icon.js";
|
|
7
7
|
import "brd-phosphor-strokes-icons/icons";
|
|
8
|
-
import { Typography as
|
|
8
|
+
import { Typography as s } from "./components-ui-typography-typography.js";
|
|
9
9
|
import "./components-ui-typography-typography.styles.js";
|
|
10
|
-
const
|
|
11
|
-
items:
|
|
10
|
+
const q = ({
|
|
11
|
+
items: d,
|
|
12
12
|
selectedSet: g,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
13
|
+
emptyText: N,
|
|
14
|
+
onSelectItem: v,
|
|
15
|
+
onMoveItem: p,
|
|
16
|
+
direction: m,
|
|
17
|
+
allCompleted: k,
|
|
18
|
+
headerIcon: o,
|
|
19
|
+
headerButton: t,
|
|
20
|
+
showHeaderTooltip: u = !1,
|
|
21
|
+
showFooterIcons: x = !1
|
|
20
22
|
}) => {
|
|
21
|
-
const
|
|
23
|
+
const r = m === "right", f = r ? "caret-right" : "caret-left", b = r ? "x-circle" : "check-circle", h = r ? "text-error-text" : "text-success-text";
|
|
22
24
|
return /* @__PURE__ */ a(
|
|
23
25
|
"div",
|
|
24
26
|
{
|
|
@@ -28,34 +30,35 @@ const L = ({
|
|
|
28
30
|
/* @__PURE__ */ a(
|
|
29
31
|
"div",
|
|
30
32
|
{
|
|
31
|
-
className:
|
|
33
|
+
className: y(
|
|
32
34
|
"bg-primary-bg flex items-center rounded-t-xl px-7.5 py-4",
|
|
33
|
-
|
|
35
|
+
m === "left" ? "gap-6" : "justify-between",
|
|
36
|
+
k && "bg-confidence-bg"
|
|
34
37
|
),
|
|
35
38
|
children: [
|
|
36
39
|
/* @__PURE__ */ a("div", { className: "w-fit", children: [
|
|
37
|
-
|
|
40
|
+
t && !r && /* @__PURE__ */ e(
|
|
38
41
|
c,
|
|
39
42
|
{
|
|
40
43
|
variant: "circleGhost",
|
|
41
|
-
onClick:
|
|
42
|
-
disabled:
|
|
44
|
+
onClick: t.onClick,
|
|
45
|
+
disabled: t.disabled,
|
|
43
46
|
children: /* @__PURE__ */ e(
|
|
44
|
-
|
|
47
|
+
l,
|
|
45
48
|
{
|
|
46
|
-
type:
|
|
49
|
+
type: t.icon,
|
|
47
50
|
className: "text-placeholder-text"
|
|
48
51
|
}
|
|
49
52
|
)
|
|
50
53
|
}
|
|
51
54
|
),
|
|
52
|
-
|
|
53
|
-
|
|
55
|
+
u && /* @__PURE__ */ e(
|
|
56
|
+
C,
|
|
54
57
|
{
|
|
55
58
|
place: "left",
|
|
56
59
|
arrow: !0,
|
|
57
60
|
text: /* @__PURE__ */ e(
|
|
58
|
-
|
|
61
|
+
s,
|
|
59
62
|
{
|
|
60
63
|
variant: "body-xxs-regular",
|
|
61
64
|
className: "w-fit",
|
|
@@ -63,7 +66,7 @@ const L = ({
|
|
|
63
66
|
}
|
|
64
67
|
),
|
|
65
68
|
children: /* @__PURE__ */ e(
|
|
66
|
-
|
|
69
|
+
l,
|
|
67
70
|
{
|
|
68
71
|
type: "info",
|
|
69
72
|
className: "text-placeholder-text"
|
|
@@ -71,32 +74,32 @@ const L = ({
|
|
|
71
74
|
)
|
|
72
75
|
}
|
|
73
76
|
),
|
|
74
|
-
|
|
75
|
-
|
|
77
|
+
o && /* @__PURE__ */ e(
|
|
78
|
+
l,
|
|
76
79
|
{
|
|
77
|
-
type:
|
|
78
|
-
className:
|
|
80
|
+
type: o.type,
|
|
81
|
+
className: o.className
|
|
79
82
|
}
|
|
80
83
|
)
|
|
81
84
|
] }),
|
|
82
85
|
/* @__PURE__ */ e(
|
|
83
|
-
|
|
86
|
+
s,
|
|
84
87
|
{
|
|
85
88
|
variant: "body-lg-semibold",
|
|
86
89
|
className: "text-primary-text",
|
|
87
|
-
children:
|
|
90
|
+
children: r ? "Нужно для расчета" : "Уже есть для расчета"
|
|
88
91
|
}
|
|
89
92
|
),
|
|
90
|
-
|
|
93
|
+
t && r && /* @__PURE__ */ e(
|
|
91
94
|
c,
|
|
92
95
|
{
|
|
93
96
|
variant: "circleGhost",
|
|
94
|
-
onClick:
|
|
95
|
-
disabled:
|
|
97
|
+
onClick: t.onClick,
|
|
98
|
+
disabled: t.disabled,
|
|
96
99
|
children: /* @__PURE__ */ e(
|
|
97
|
-
|
|
100
|
+
l,
|
|
98
101
|
{
|
|
99
|
-
type:
|
|
102
|
+
type: t.icon,
|
|
100
103
|
className: "text-placeholder-text"
|
|
101
104
|
}
|
|
102
105
|
)
|
|
@@ -110,43 +113,43 @@ const L = ({
|
|
|
110
113
|
{
|
|
111
114
|
className: `border-delicate-border flex min-h-0 flex-1 flex-col gap-2
|
|
112
115
|
overflow-y-auto border-t`,
|
|
113
|
-
children:
|
|
116
|
+
children: d.length > 0 ? d.map((i) => /* @__PURE__ */ a(
|
|
114
117
|
"div",
|
|
115
118
|
{
|
|
116
|
-
className:
|
|
119
|
+
className: y(
|
|
117
120
|
`bg-primary-bg flex cursor-pointer items-center justify-between gap-4 px-8
|
|
118
|
-
|
|
121
|
+
py-4`,
|
|
119
122
|
g.has(i.id) && "bg-primary-hover-bg"
|
|
120
123
|
),
|
|
121
|
-
onClick: () =>
|
|
124
|
+
onClick: () => v(i.id),
|
|
122
125
|
children: [
|
|
123
126
|
/* @__PURE__ */ a("div", { className: "flex items-center gap-4", children: [
|
|
124
|
-
|
|
127
|
+
x ? /* @__PURE__ */ e(
|
|
125
128
|
c,
|
|
126
129
|
{
|
|
127
130
|
variant: "circleGhost",
|
|
128
|
-
onClick: (
|
|
129
|
-
|
|
131
|
+
onClick: (n) => {
|
|
132
|
+
n.stopPropagation(), p(i.id);
|
|
130
133
|
},
|
|
131
134
|
children: /* @__PURE__ */ e(
|
|
132
|
-
|
|
135
|
+
l,
|
|
133
136
|
{
|
|
134
|
-
type:
|
|
137
|
+
type: f,
|
|
135
138
|
className: "text-placeholder-text"
|
|
136
139
|
}
|
|
137
140
|
)
|
|
138
141
|
}
|
|
139
142
|
) : /* @__PURE__ */ e(
|
|
140
|
-
|
|
143
|
+
l,
|
|
141
144
|
{
|
|
142
|
-
type:
|
|
145
|
+
type: b,
|
|
143
146
|
size: 25,
|
|
144
147
|
strokeWidth: 1.5,
|
|
145
|
-
className:
|
|
148
|
+
className: h
|
|
146
149
|
}
|
|
147
150
|
),
|
|
148
151
|
/* @__PURE__ */ e(
|
|
149
|
-
|
|
152
|
+
s,
|
|
150
153
|
{
|
|
151
154
|
variant: "body-md-regular",
|
|
152
155
|
className: "text-primary-text",
|
|
@@ -154,25 +157,25 @@ const L = ({
|
|
|
154
157
|
}
|
|
155
158
|
)
|
|
156
159
|
] }),
|
|
157
|
-
|
|
158
|
-
|
|
160
|
+
x ? /* @__PURE__ */ e(
|
|
161
|
+
l,
|
|
159
162
|
{
|
|
160
|
-
type:
|
|
163
|
+
type: b,
|
|
161
164
|
size: 25,
|
|
162
165
|
strokeWidth: 1.5,
|
|
163
|
-
className:
|
|
166
|
+
className: h
|
|
164
167
|
}
|
|
165
168
|
) : /* @__PURE__ */ e(
|
|
166
169
|
c,
|
|
167
170
|
{
|
|
168
171
|
variant: "circleGhost",
|
|
169
|
-
onClick: (
|
|
170
|
-
|
|
172
|
+
onClick: (n) => {
|
|
173
|
+
n.stopPropagation(), p(i.id);
|
|
171
174
|
},
|
|
172
175
|
children: /* @__PURE__ */ e(
|
|
173
|
-
|
|
176
|
+
l,
|
|
174
177
|
{
|
|
175
|
-
type:
|
|
178
|
+
type: f,
|
|
176
179
|
className: "text-placeholder-text"
|
|
177
180
|
}
|
|
178
181
|
)
|
|
@@ -181,7 +184,14 @@ const L = ({
|
|
|
181
184
|
]
|
|
182
185
|
},
|
|
183
186
|
i.id
|
|
184
|
-
))
|
|
187
|
+
)) : /* @__PURE__ */ e("div", { className: "flex h-full items-center justify-center", children: /* @__PURE__ */ e(
|
|
188
|
+
s,
|
|
189
|
+
{
|
|
190
|
+
variant: "body-lg-medium",
|
|
191
|
+
className: "text-sub-label-text",
|
|
192
|
+
children: N
|
|
193
|
+
}
|
|
194
|
+
) })
|
|
185
195
|
}
|
|
186
196
|
)
|
|
187
197
|
]
|
|
@@ -189,6 +199,6 @@ const L = ({
|
|
|
189
199
|
);
|
|
190
200
|
};
|
|
191
201
|
export {
|
|
192
|
-
|
|
202
|
+
q as TransferListCard
|
|
193
203
|
};
|
|
194
204
|
//# sourceMappingURL=components-transfer-list-transfer-list-card.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-transfer-list-transfer-list-card.js","sources":["../src/components/transfer-list/transfer-list-card.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport { BasicTooltip } from \"../basic-tooltip\";\nimport { Button } from \"../ui/button\";\nimport { Icon } from \"../ui/icon\";\nimport { Typography } from \"../ui/typography\";\nimport type { TransferListItem } from \"./transfer-list\";\
|
|
1
|
+
{"version":3,"file":"components-transfer-list-transfer-list-card.js","sources":["../src/components/transfer-list/transfer-list-card.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport type { IconTypes } from \"@/types/types\";\nimport { BasicTooltip } from \"../basic-tooltip\";\nimport { Button } from \"../ui/button\";\nimport { Icon } from \"../ui/icon\";\nimport { Typography } from \"../ui/typography\";\nimport type { TransferListItem } from \"./transfer-list\";\n\ntype Props = {\n items: TransferListItem[];\n selectedSet: Set<string>;\n allCompleted?: boolean;\n onSelectItem: (id: string) => void;\n onMoveItem: (itemId: string) => void;\n direction: \"left\" | \"right\";\n emptyText: string;\n headerIcon?: {\n type: IconTypes;\n className: string;\n };\n headerButton?: {\n icon: IconTypes;\n onClick: () => void;\n disabled: boolean;\n };\n showHeaderTooltip?: boolean;\n showFooterIcons?: boolean;\n};\n\nexport const TransferListCard = ({\n items,\n selectedSet,\n emptyText,\n onSelectItem,\n onMoveItem,\n direction,\n allCompleted,\n headerIcon,\n headerButton,\n showHeaderTooltip = false,\n showFooterIcons = false,\n}: Props) => {\n const isMovingToRight = direction === \"right\";\n const moveIcon = isMovingToRight ? \"caret-right\" : \"caret-left\";\n const footerIcon = isMovingToRight ? \"x-circle\" : \"check-circle\";\n const footerIconClassName = isMovingToRight ? \"text-error-text\" : \"text-success-text\";\n\n return (\n <div\n className=\"bg-secondary-bg border-delicate-border flex h-full min-h-0 w-97.5\n flex-col rounded-xl border\"\n >\n <div\n className={cn(\n \"bg-primary-bg flex items-center rounded-t-xl px-7.5 py-4\",\n direction === \"left\" ? \"gap-6\" : \"justify-between\",\n allCompleted && \"bg-confidence-bg\",\n )}\n >\n <div className=\"w-fit\">\n {headerButton && !isMovingToRight && (\n <Button\n variant=\"circleGhost\"\n onClick={headerButton.onClick}\n disabled={headerButton.disabled}\n >\n <Icon\n type={headerButton.icon}\n className=\"text-placeholder-text\"\n />\n </Button>\n )}\n {showHeaderTooltip && (\n <BasicTooltip\n place=\"left\"\n arrow\n text={\n <Typography\n variant=\"body-xxs-regular\"\n className=\"w-fit\"\n >\n Переносите пункты туда или обратно с помощью клика на них\n </Typography>\n }\n >\n <Icon\n type=\"info\"\n className=\"text-placeholder-text\"\n />\n </BasicTooltip>\n )}\n {headerIcon && (\n <Icon\n type={headerIcon.type}\n className={headerIcon.className}\n />\n )}\n </div>\n\n <Typography\n variant=\"body-lg-semibold\"\n className=\"text-primary-text\"\n >\n {isMovingToRight ? \"Нужно для расчета\" : \"Уже есть для расчета\"}\n </Typography>\n\n {headerButton && isMovingToRight && (\n <Button\n variant=\"circleGhost\"\n onClick={headerButton.onClick}\n disabled={headerButton.disabled}\n >\n <Icon\n type={headerButton.icon}\n className=\"text-placeholder-text\"\n />\n </Button>\n )}\n </div>\n\n <div\n className=\"border-delicate-border flex min-h-0 flex-1 flex-col gap-2\n overflow-y-auto border-t\"\n >\n {items.length > 0 ? (\n items.map((item) => (\n <div\n key={item.id}\n className={cn(\n `bg-primary-bg flex cursor-pointer items-center justify-between gap-4 px-8\n py-4`,\n selectedSet.has(item.id) && \"bg-primary-hover-bg\",\n )}\n onClick={() => onSelectItem(item.id)}\n >\n <div className=\"flex items-center gap-4\">\n {showFooterIcons ? (\n <Button\n variant=\"circleGhost\"\n onClick={(e) => {\n e.stopPropagation();\n onMoveItem(item.id);\n }}\n >\n <Icon\n type={moveIcon}\n className=\"text-placeholder-text\"\n />\n </Button>\n ) : (\n <Icon\n type={footerIcon}\n size={25}\n strokeWidth={1.5}\n className={footerIconClassName}\n />\n )}\n\n <Typography\n variant=\"body-md-regular\"\n className=\"text-primary-text\"\n >\n {item.label}\n </Typography>\n </div>\n\n {!showFooterIcons ? (\n <Button\n variant=\"circleGhost\"\n onClick={(e) => {\n e.stopPropagation();\n onMoveItem(item.id);\n }}\n >\n <Icon\n type={moveIcon}\n className=\"text-placeholder-text\"\n />\n </Button>\n ) : (\n <Icon\n type={footerIcon}\n size={25}\n strokeWidth={1.5}\n className={footerIconClassName}\n />\n )}\n </div>\n ))\n ) : (\n <div className=\"flex h-full items-center justify-center\">\n <Typography\n variant=\"body-lg-medium\"\n className=\"text-sub-label-text\"\n >\n {emptyText}\n </Typography>\n </div>\n )}\n </div>\n </div>\n );\n};\n"],"names":["TransferListCard","items","selectedSet","emptyText","onSelectItem","onMoveItem","direction","allCompleted","headerIcon","headerButton","showHeaderTooltip","showFooterIcons","isMovingToRight","moveIcon","footerIcon","footerIconClassName","jsxs","cn","jsx","Button","Icon","BasicTooltip","Typography","item","e"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react/jsx-runtime"),t=require("react"),M=require("./components-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react/jsx-runtime"),t=require("react"),M=require("./components-ui-button-button.cjs");require("./components-ui-button-button.styles.cjs");const S=require("./components-ui-icon-icon.cjs");require("brd-phosphor-strokes-icons/icons");const C=require("./components-transfer-list-transfer-list-card.cjs"),d=!1,h=!0,q=({list:s,onChange:m})=>{const a=t.useMemo(()=>s.filter(e=>!e.inTarget),[s]),l=t.useMemo(()=>s.filter(e=>e.inTarget),[s]),[o,f]=t.useState([]),g=t.useMemo(()=>new Set(o),[o]),T=t.useMemo(()=>new Set(a.map(e=>e.id)),[a]),x=t.useMemo(()=>new Set(l.map(e=>e.id)),[l]),b=t.useMemo(()=>o.filter(e=>T.has(e)).length,[o,T]),_=t.useMemo(()=>o.filter(e=>x.has(e)).length,[o,x]),j=t.useMemo(()=>s.length===l.length,[s.length,l.length]),I=t.useCallback(e=>{f(n=>n.includes(e)?n.filter(i=>i!==e):[...n,e])},[]),r=t.useCallback((e,n)=>{const i=n??o;if(i.length===0)return;const w=new Set(i),L=s.map(u=>!w.has(u.id)||u.inTarget===e?u:{...u,inTarget:e});m(L),f([])},[s,m,o]),p=t.useCallback(e=>{r(e,s.filter(n=>n.inTarget!==e).map(n=>n.id))},[s,r]),k=t.useCallback(e=>{r(h,[e])},[r]),v=t.useCallback(e=>{r(d,[e])},[r]);return c.jsxs("div",{className:"flex h-full min-h-0 w-fit gap-6",children:[c.jsx(C.TransferListCard,{items:a,selectedSet:g,onSelectItem:I,onMoveItem:k,direction:"right",showHeaderTooltip:!0,headerButton:{icon:"caret-right",onClick:()=>p(h),disabled:a.length===0},showFooterIcons:!1,emptyText:"Все пункты выполнены"}),c.jsxs("div",{className:"flex h-full flex-col justify-center gap-8",children:[c.jsx(M.Button,{variant:"circle",onClick:()=>r(h),disabled:b===0,children:c.jsx(S.Icon,{type:"caret-right",className:"text-placeholder-text"})}),c.jsx(M.Button,{variant:"circle",onClick:()=>r(d),disabled:_===0,children:c.jsx(S.Icon,{type:"caret-left",className:"text-placeholder-text"})})]}),c.jsx(C.TransferListCard,{items:l,selectedSet:g,allCompleted:j,onSelectItem:I,onMoveItem:v,direction:"left",headerButton:{icon:"caret-left",onClick:()=>p(d),disabled:l.length===0},showFooterIcons:!0,emptyText:"В ожидании заполнения"})]})};exports.TransferList=q;
|
|
2
2
|
//# sourceMappingURL=components-transfer-list-transfer-list.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-transfer-list-transfer-list.cjs","sources":["../src/components/transfer-list/transfer-list.tsx"],"sourcesContent":["import { useCallback, useMemo, useState } from \"react\";\nimport {
|
|
1
|
+
{"version":3,"file":"components-transfer-list-transfer-list.cjs","sources":["../src/components/transfer-list/transfer-list.tsx"],"sourcesContent":["import { useCallback, useMemo, useState } from \"react\";\nimport { Button } from \"../ui/button\";\nimport { Icon } from \"../ui/icon\";\nimport { TransferListCard } from \"./transfer-list-card\";\n\nexport type TransferListItem = {\n id: string;\n label: string;\n disabled?: boolean;\n inTarget: boolean;\n};\n\ntype Props = {\n list: TransferListItem[];\n onChange: (item: TransferListItem[]) => void;\n};\n\nconst MOVE_TO_LEFT = false;\nconst MOVE_TO_RIGHT = true;\n\nexport const TransferList = ({ list, onChange }: Props) => {\n const leftItems = useMemo(() => list.filter((i) => !i.inTarget), [list]);\n const rightItems = useMemo(() => list.filter((i) => i.inTarget), [list]);\n\n const [selectedIds, setSelectedIds] = useState<string[]>([]);\n\n const selectedSet = useMemo(() => new Set(selectedIds), [selectedIds]);\n const leftIdSet = useMemo(() => new Set(leftItems.map((item) => item.id)), [leftItems]);\n const rightIdSet = useMemo(\n () => new Set(rightItems.map((item) => item.id)),\n [rightItems],\n );\n\n const selectedLeftCount = useMemo(\n () => selectedIds.filter((id) => leftIdSet.has(id)).length,\n [selectedIds, leftIdSet],\n );\n const selectedRightCount = useMemo(\n () => selectedIds.filter((id) => rightIdSet.has(id)).length,\n [selectedIds, rightIdSet],\n );\n\n const allCompleted = useMemo(\n () => list.length === rightItems.length,\n [list.length, rightItems.length],\n );\n\n const onSelectItem = useCallback((id: string) => {\n setSelectedIds((prev) =>\n prev.includes(id) ? prev.filter((itemId) => itemId !== id) : [...prev, id],\n );\n }, []);\n\n const moveSelectedItems = useCallback(\n (move: boolean, ids?: string[]) => {\n const resolvedIds = ids ?? selectedIds;\n if (resolvedIds.length === 0) return;\n\n const idsToMoveSet = new Set(resolvedIds);\n\n const newData = list.map((item) => {\n if (!idsToMoveSet.has(item.id) || item.inTarget === move) {\n return item;\n }\n\n return {\n ...item,\n inTarget: move,\n };\n });\n\n onChange(newData);\n setSelectedIds([]);\n },\n [list, onChange, selectedIds],\n );\n\n const allMoveSelectedItems = useCallback(\n (move: boolean) => {\n moveSelectedItems(\n move,\n list.filter((item) => item.inTarget !== move).map((item) => item.id),\n );\n },\n [list, moveSelectedItems],\n );\n\n const moveToRight = useCallback(\n (itemId: string) => {\n moveSelectedItems(MOVE_TO_RIGHT, [itemId]);\n },\n [moveSelectedItems],\n );\n\n const moveToLeft = useCallback(\n (itemId: string) => {\n moveSelectedItems(MOVE_TO_LEFT, [itemId]);\n },\n [moveSelectedItems],\n );\n\n return (\n <div className=\"flex h-full min-h-0 w-fit gap-6\">\n <TransferListCard\n items={leftItems}\n selectedSet={selectedSet}\n onSelectItem={onSelectItem}\n onMoveItem={moveToRight}\n direction=\"right\"\n showHeaderTooltip={true}\n headerButton={{\n icon: \"caret-right\",\n onClick: () => allMoveSelectedItems(MOVE_TO_RIGHT),\n disabled: leftItems.length === 0,\n }}\n showFooterIcons={false}\n emptyText=\"Все пункты выполнены\"\n />\n\n <div className=\"flex h-full flex-col justify-center gap-8\">\n <Button\n variant=\"circle\"\n onClick={() => moveSelectedItems(MOVE_TO_RIGHT)}\n disabled={selectedLeftCount === 0}\n >\n <Icon\n type=\"caret-right\"\n className=\"text-placeholder-text\"\n />\n </Button>\n\n <Button\n variant=\"circle\"\n onClick={() => moveSelectedItems(MOVE_TO_LEFT)}\n disabled={selectedRightCount === 0}\n >\n <Icon\n type=\"caret-left\"\n className=\"text-placeholder-text\"\n />\n </Button>\n </div>\n\n <TransferListCard\n items={rightItems}\n selectedSet={selectedSet}\n allCompleted={allCompleted}\n onSelectItem={onSelectItem}\n onMoveItem={moveToLeft}\n direction=\"left\"\n headerButton={{\n icon: \"caret-left\",\n onClick: () => allMoveSelectedItems(MOVE_TO_LEFT),\n disabled: rightItems.length === 0,\n }}\n showFooterIcons\n emptyText=\"В ожидании заполнения\"\n />\n </div>\n );\n};\n"],"names":["MOVE_TO_LEFT","MOVE_TO_RIGHT","TransferList","list","onChange","leftItems","useMemo","i","rightItems","selectedIds","setSelectedIds","useState","selectedSet","leftIdSet","item","rightIdSet","selectedLeftCount","id","selectedRightCount","allCompleted","onSelectItem","useCallback","prev","itemId","moveSelectedItems","move","ids","resolvedIds","idsToMoveSet","newData","allMoveSelectedItems","moveToRight","moveToLeft","jsxs","jsx","TransferListCard","Button","Icon"],"mappings":"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"}
|
|
@@ -1,81 +1,85 @@
|
|
|
1
|
-
import { jsxs as w, jsx as
|
|
2
|
-
import { useMemo as
|
|
3
|
-
import {
|
|
4
|
-
import { Button as C } from "./components-ui-button-button.js";
|
|
1
|
+
import { jsxs as w, jsx as s } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo as c, useState as j, useCallback as i } from "react";
|
|
3
|
+
import { Button as v } from "./components-ui-button-button.js";
|
|
5
4
|
import "./components-ui-button-button.styles.js";
|
|
6
|
-
import { Icon as
|
|
5
|
+
import { Icon as C } from "./components-ui-icon-icon.js";
|
|
7
6
|
import "brd-phosphor-strokes-icons/icons";
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
[n, I]
|
|
15
|
-
), k = s(
|
|
7
|
+
import { TransferListCard as M } from "./components-transfer-list-transfer-list-card.js";
|
|
8
|
+
const m = !1, f = !0, G = ({ list: t, onChange: g }) => {
|
|
9
|
+
const a = c(() => t.filter((e) => !e.inTarget), [t]), l = c(() => t.filter((e) => e.inTarget), [t]), [n, p] = j([]), u = c(() => new Set(n), [n]), T = c(() => new Set(a.map((e) => e.id)), [a]), I = c(
|
|
10
|
+
() => new Set(l.map((e) => e.id)),
|
|
11
|
+
[l]
|
|
12
|
+
), b = c(
|
|
16
13
|
() => n.filter((e) => T.has(e)).length,
|
|
17
14
|
[n, T]
|
|
18
|
-
),
|
|
19
|
-
|
|
20
|
-
|
|
15
|
+
), k = c(
|
|
16
|
+
() => n.filter((e) => I.has(e)).length,
|
|
17
|
+
[n, I]
|
|
18
|
+
), y = c(
|
|
19
|
+
() => t.length === l.length,
|
|
20
|
+
[t.length, l.length]
|
|
21
|
+
), S = i((e) => {
|
|
22
|
+
p(
|
|
23
|
+
(o) => o.includes(e) ? o.filter((d) => d !== e) : [...o, e]
|
|
21
24
|
);
|
|
22
|
-
}, []), r =
|
|
23
|
-
(e,
|
|
24
|
-
const d =
|
|
25
|
+
}, []), r = i(
|
|
26
|
+
(e, o) => {
|
|
27
|
+
const d = o ?? n;
|
|
25
28
|
if (d.length === 0) return;
|
|
26
|
-
const O = new Set(d), _ =
|
|
27
|
-
...
|
|
29
|
+
const O = new Set(d), _ = t.map((h) => !O.has(h.id) || h.inTarget === e ? h : {
|
|
30
|
+
...h,
|
|
28
31
|
inTarget: e
|
|
29
32
|
});
|
|
30
|
-
|
|
33
|
+
g(_), p([]);
|
|
31
34
|
},
|
|
32
|
-
[
|
|
33
|
-
), x =
|
|
35
|
+
[t, g, n]
|
|
36
|
+
), x = i(
|
|
34
37
|
(e) => {
|
|
35
38
|
r(
|
|
36
39
|
e,
|
|
37
|
-
|
|
40
|
+
t.filter((o) => o.inTarget !== e).map((o) => o.id)
|
|
38
41
|
);
|
|
39
42
|
},
|
|
40
|
-
[
|
|
41
|
-
), L =
|
|
43
|
+
[t, r]
|
|
44
|
+
), L = i(
|
|
42
45
|
(e) => {
|
|
43
|
-
r(
|
|
46
|
+
r(f, [e]);
|
|
44
47
|
},
|
|
45
48
|
[r]
|
|
46
|
-
), N =
|
|
49
|
+
), N = i(
|
|
47
50
|
(e) => {
|
|
48
51
|
r(m, [e]);
|
|
49
52
|
},
|
|
50
53
|
[r]
|
|
51
54
|
);
|
|
52
55
|
return /* @__PURE__ */ w("div", { className: "flex h-full min-h-0 w-fit gap-6", children: [
|
|
53
|
-
/* @__PURE__ */
|
|
54
|
-
|
|
56
|
+
/* @__PURE__ */ s(
|
|
57
|
+
M,
|
|
55
58
|
{
|
|
56
|
-
items:
|
|
57
|
-
selectedSet:
|
|
59
|
+
items: a,
|
|
60
|
+
selectedSet: u,
|
|
58
61
|
onSelectItem: S,
|
|
59
62
|
onMoveItem: L,
|
|
60
63
|
direction: "right",
|
|
61
64
|
showHeaderTooltip: !0,
|
|
62
65
|
headerButton: {
|
|
63
66
|
icon: "caret-right",
|
|
64
|
-
onClick: () => x(
|
|
65
|
-
disabled:
|
|
67
|
+
onClick: () => x(f),
|
|
68
|
+
disabled: a.length === 0
|
|
66
69
|
},
|
|
67
|
-
showFooterIcons: !1
|
|
70
|
+
showFooterIcons: !1,
|
|
71
|
+
emptyText: "Все пункты выполнены"
|
|
68
72
|
}
|
|
69
73
|
),
|
|
70
74
|
/* @__PURE__ */ w("div", { className: "flex h-full flex-col justify-center gap-8", children: [
|
|
71
|
-
/* @__PURE__ */
|
|
72
|
-
|
|
75
|
+
/* @__PURE__ */ s(
|
|
76
|
+
v,
|
|
73
77
|
{
|
|
74
78
|
variant: "circle",
|
|
75
|
-
onClick: () => r(
|
|
79
|
+
onClick: () => r(f),
|
|
76
80
|
disabled: b === 0,
|
|
77
|
-
children: /* @__PURE__ */
|
|
78
|
-
|
|
81
|
+
children: /* @__PURE__ */ s(
|
|
82
|
+
C,
|
|
79
83
|
{
|
|
80
84
|
type: "caret-right",
|
|
81
85
|
className: "text-placeholder-text"
|
|
@@ -83,14 +87,14 @@ const m = !1, h = !0, D = ({ list: o, onChange: u }) => {
|
|
|
83
87
|
)
|
|
84
88
|
}
|
|
85
89
|
),
|
|
86
|
-
/* @__PURE__ */
|
|
87
|
-
|
|
90
|
+
/* @__PURE__ */ s(
|
|
91
|
+
v,
|
|
88
92
|
{
|
|
89
93
|
variant: "circle",
|
|
90
94
|
onClick: () => r(m),
|
|
91
95
|
disabled: k === 0,
|
|
92
|
-
children: /* @__PURE__ */
|
|
93
|
-
|
|
96
|
+
children: /* @__PURE__ */ s(
|
|
97
|
+
C,
|
|
94
98
|
{
|
|
95
99
|
type: "caret-left",
|
|
96
100
|
className: "text-placeholder-text"
|
|
@@ -99,25 +103,27 @@ const m = !1, h = !0, D = ({ list: o, onChange: u }) => {
|
|
|
99
103
|
}
|
|
100
104
|
)
|
|
101
105
|
] }),
|
|
102
|
-
/* @__PURE__ */
|
|
103
|
-
|
|
106
|
+
/* @__PURE__ */ s(
|
|
107
|
+
M,
|
|
104
108
|
{
|
|
105
|
-
items:
|
|
106
|
-
selectedSet:
|
|
109
|
+
items: l,
|
|
110
|
+
selectedSet: u,
|
|
111
|
+
allCompleted: y,
|
|
107
112
|
onSelectItem: S,
|
|
108
113
|
onMoveItem: N,
|
|
109
114
|
direction: "left",
|
|
110
115
|
headerButton: {
|
|
111
116
|
icon: "caret-left",
|
|
112
117
|
onClick: () => x(m),
|
|
113
|
-
disabled:
|
|
118
|
+
disabled: l.length === 0
|
|
114
119
|
},
|
|
115
|
-
showFooterIcons: !0
|
|
120
|
+
showFooterIcons: !0,
|
|
121
|
+
emptyText: "В ожидании заполнения"
|
|
116
122
|
}
|
|
117
123
|
)
|
|
118
124
|
] });
|
|
119
125
|
};
|
|
120
126
|
export {
|
|
121
|
-
|
|
127
|
+
G as TransferList
|
|
122
128
|
};
|
|
123
129
|
//# sourceMappingURL=components-transfer-list-transfer-list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-transfer-list-transfer-list.js","sources":["../src/components/transfer-list/transfer-list.tsx"],"sourcesContent":["import { useCallback, useMemo, useState } from \"react\";\nimport {
|
|
1
|
+
{"version":3,"file":"components-transfer-list-transfer-list.js","sources":["../src/components/transfer-list/transfer-list.tsx"],"sourcesContent":["import { useCallback, useMemo, useState } from \"react\";\nimport { Button } from \"../ui/button\";\nimport { Icon } from \"../ui/icon\";\nimport { TransferListCard } from \"./transfer-list-card\";\n\nexport type TransferListItem = {\n id: string;\n label: string;\n disabled?: boolean;\n inTarget: boolean;\n};\n\ntype Props = {\n list: TransferListItem[];\n onChange: (item: TransferListItem[]) => void;\n};\n\nconst MOVE_TO_LEFT = false;\nconst MOVE_TO_RIGHT = true;\n\nexport const TransferList = ({ list, onChange }: Props) => {\n const leftItems = useMemo(() => list.filter((i) => !i.inTarget), [list]);\n const rightItems = useMemo(() => list.filter((i) => i.inTarget), [list]);\n\n const [selectedIds, setSelectedIds] = useState<string[]>([]);\n\n const selectedSet = useMemo(() => new Set(selectedIds), [selectedIds]);\n const leftIdSet = useMemo(() => new Set(leftItems.map((item) => item.id)), [leftItems]);\n const rightIdSet = useMemo(\n () => new Set(rightItems.map((item) => item.id)),\n [rightItems],\n );\n\n const selectedLeftCount = useMemo(\n () => selectedIds.filter((id) => leftIdSet.has(id)).length,\n [selectedIds, leftIdSet],\n );\n const selectedRightCount = useMemo(\n () => selectedIds.filter((id) => rightIdSet.has(id)).length,\n [selectedIds, rightIdSet],\n );\n\n const allCompleted = useMemo(\n () => list.length === rightItems.length,\n [list.length, rightItems.length],\n );\n\n const onSelectItem = useCallback((id: string) => {\n setSelectedIds((prev) =>\n prev.includes(id) ? prev.filter((itemId) => itemId !== id) : [...prev, id],\n );\n }, []);\n\n const moveSelectedItems = useCallback(\n (move: boolean, ids?: string[]) => {\n const resolvedIds = ids ?? selectedIds;\n if (resolvedIds.length === 0) return;\n\n const idsToMoveSet = new Set(resolvedIds);\n\n const newData = list.map((item) => {\n if (!idsToMoveSet.has(item.id) || item.inTarget === move) {\n return item;\n }\n\n return {\n ...item,\n inTarget: move,\n };\n });\n\n onChange(newData);\n setSelectedIds([]);\n },\n [list, onChange, selectedIds],\n );\n\n const allMoveSelectedItems = useCallback(\n (move: boolean) => {\n moveSelectedItems(\n move,\n list.filter((item) => item.inTarget !== move).map((item) => item.id),\n );\n },\n [list, moveSelectedItems],\n );\n\n const moveToRight = useCallback(\n (itemId: string) => {\n moveSelectedItems(MOVE_TO_RIGHT, [itemId]);\n },\n [moveSelectedItems],\n );\n\n const moveToLeft = useCallback(\n (itemId: string) => {\n moveSelectedItems(MOVE_TO_LEFT, [itemId]);\n },\n [moveSelectedItems],\n );\n\n return (\n <div className=\"flex h-full min-h-0 w-fit gap-6\">\n <TransferListCard\n items={leftItems}\n selectedSet={selectedSet}\n onSelectItem={onSelectItem}\n onMoveItem={moveToRight}\n direction=\"right\"\n showHeaderTooltip={true}\n headerButton={{\n icon: \"caret-right\",\n onClick: () => allMoveSelectedItems(MOVE_TO_RIGHT),\n disabled: leftItems.length === 0,\n }}\n showFooterIcons={false}\n emptyText=\"Все пункты выполнены\"\n />\n\n <div className=\"flex h-full flex-col justify-center gap-8\">\n <Button\n variant=\"circle\"\n onClick={() => moveSelectedItems(MOVE_TO_RIGHT)}\n disabled={selectedLeftCount === 0}\n >\n <Icon\n type=\"caret-right\"\n className=\"text-placeholder-text\"\n />\n </Button>\n\n <Button\n variant=\"circle\"\n onClick={() => moveSelectedItems(MOVE_TO_LEFT)}\n disabled={selectedRightCount === 0}\n >\n <Icon\n type=\"caret-left\"\n className=\"text-placeholder-text\"\n />\n </Button>\n </div>\n\n <TransferListCard\n items={rightItems}\n selectedSet={selectedSet}\n allCompleted={allCompleted}\n onSelectItem={onSelectItem}\n onMoveItem={moveToLeft}\n direction=\"left\"\n headerButton={{\n icon: \"caret-left\",\n onClick: () => allMoveSelectedItems(MOVE_TO_LEFT),\n disabled: rightItems.length === 0,\n }}\n showFooterIcons\n emptyText=\"В ожидании заполнения\"\n />\n </div>\n );\n};\n"],"names":["MOVE_TO_LEFT","MOVE_TO_RIGHT","TransferList","list","onChange","leftItems","useMemo","i","rightItems","selectedIds","setSelectedIds","useState","selectedSet","leftIdSet","item","rightIdSet","selectedLeftCount","id","selectedRightCount","allCompleted","onSelectItem","useCallback","prev","itemId","moveSelectedItems","move","ids","resolvedIds","idsToMoveSet","newData","allMoveSelectedItems","moveToRight","moveToLeft","jsxs","jsx","TransferListCard","Button","Icon"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-ui-input-input.cjs","sources":["../src/components/ui/input/input.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"components-ui-input-input.cjs","sources":["../src/components/ui/input/input.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport { type VariantProps } from \"class-variance-authority\";\nimport type { ComponentPropsWithRef } from \"react\";\n\nimport { inputVariants } from \"./input.styles\";\n\ntype InputProps = ComponentPropsWithRef<\"input\"> &\n VariantProps<typeof inputVariants> & { className?: string };\n\nconst Input = ({ className, sizeInput, type, variant, ...props }: InputProps) => {\n return (\n <input\n data-slot=\"input\"\n type={type || \"text\"}\n className={cn(inputVariants({ variant, sizeInput }), className)}\n {...props}\n />\n );\n};\nexport { Input };\n"],"names":["Input","className","sizeInput","type","variant","props","jsx","cn","inputVariants"],"mappings":"gPASMA,EAAQ,CAAC,CAAE,UAAAC,EAAW,UAAAC,EAAW,KAAAC,EAAM,QAAAC,EAAS,GAAGC,KAErDC,EAAAA,IAAC,QAAA,CACC,YAAU,QACV,KAAMH,GAAQ,OACd,UAAWI,EAAAA,GAAGC,gBAAc,CAAE,QAAAJ,EAAS,UAAAF,CAAA,CAAW,EAAGD,CAAS,EAC7D,GAAGI,CAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-ui-input-input.js","sources":["../src/components/ui/input/input.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"components-ui-input-input.js","sources":["../src/components/ui/input/input.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport { type VariantProps } from \"class-variance-authority\";\nimport type { ComponentPropsWithRef } from \"react\";\n\nimport { inputVariants } from \"./input.styles\";\n\ntype InputProps = ComponentPropsWithRef<\"input\"> &\n VariantProps<typeof inputVariants> & { className?: string };\n\nconst Input = ({ className, sizeInput, type, variant, ...props }: InputProps) => {\n return (\n <input\n data-slot=\"input\"\n type={type || \"text\"}\n className={cn(inputVariants({ variant, sizeInput }), className)}\n {...props}\n />\n );\n};\nexport { Input };\n"],"names":["Input","className","sizeInput","type","variant","props","jsx","cn","inputVariants"],"mappings":";;;;AASA,MAAMA,IAAQ,CAAC,EAAE,WAAAC,GAAW,WAAAC,GAAW,MAAAC,GAAM,SAAAC,GAAS,GAAGC,QAErD,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,aAAU;AAAA,IACV,MAAMH,KAAQ;AAAA,IACd,WAAWI,EAAGC,EAAc,EAAE,SAAAJ,GAAS,WAAAF,EAAA,CAAW,GAAGD,CAAS;AAAA,IAC7D,GAAGI;AAAA,EAAA;AAAA;"}
|