@kopexa/table 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-CSL5I4TN.mjs → chunk-DE7P7UPE.mjs} +73 -3
- package/dist/{chunk-QXAVSODK.mjs → chunk-Q2IBTYJF.mjs} +3 -1
- package/dist/index.js +70 -0
- package/dist/index.mjs +2 -2
- package/dist/namespace.d.mts +3 -3
- package/dist/namespace.d.ts +3 -3
- package/dist/namespace.js +71 -0
- package/dist/namespace.mjs +4 -2
- package/dist/table.d.mts +17 -1
- package/dist/table.d.ts +17 -1
- package/dist/table.js +71 -0
- package/dist/table.mjs +3 -1
- package/package.json +6 -3
|
@@ -6,14 +6,17 @@ var __export = (target, all) => {
|
|
|
6
6
|
};
|
|
7
7
|
|
|
8
8
|
// src/table.tsx
|
|
9
|
+
import { Avatar } from "@kopexa/avatar";
|
|
10
|
+
import { Button } from "@kopexa/button";
|
|
11
|
+
import { ChevronRightIcon, PlusIcon } from "@kopexa/icons";
|
|
9
12
|
import { createContext, mergeRefs } from "@kopexa/react-utils";
|
|
10
13
|
import { callAllHandlers, cn, dataAttr } from "@kopexa/shared-utils";
|
|
11
14
|
import {
|
|
12
15
|
table
|
|
13
16
|
} from "@kopexa/theme";
|
|
14
17
|
import { useHover } from "@kopexa/use-hover";
|
|
15
|
-
import { useRef } from "react";
|
|
16
|
-
import { jsx } from "react/jsx-runtime";
|
|
18
|
+
import { useMemo, useRef } from "react";
|
|
19
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
17
20
|
var [Provider, useTableContext] = createContext(
|
|
18
21
|
{}
|
|
19
22
|
);
|
|
@@ -142,6 +145,72 @@ function TableCell(props) {
|
|
|
142
145
|
}
|
|
143
146
|
);
|
|
144
147
|
}
|
|
148
|
+
var defaultOwnerTranslations = {
|
|
149
|
+
unassigned: "Unassigned",
|
|
150
|
+
assignNow: "Assign now"
|
|
151
|
+
};
|
|
152
|
+
function TableOwnerCellValue({
|
|
153
|
+
className,
|
|
154
|
+
owner,
|
|
155
|
+
description,
|
|
156
|
+
onClick,
|
|
157
|
+
translations,
|
|
158
|
+
...rest
|
|
159
|
+
}) {
|
|
160
|
+
const { styles } = useTableContext();
|
|
161
|
+
const ownerName = useMemo(() => {
|
|
162
|
+
if (owner == null ? void 0 : owner.name) {
|
|
163
|
+
return owner.name;
|
|
164
|
+
}
|
|
165
|
+
if ((owner == null ? void 0 : owner.firstName) && (owner == null ? void 0 : owner.lastName)) {
|
|
166
|
+
return `${owner.firstName} ${owner.lastName}`;
|
|
167
|
+
}
|
|
168
|
+
return "";
|
|
169
|
+
}, [owner]);
|
|
170
|
+
const i18n = useMemo(() => {
|
|
171
|
+
return {
|
|
172
|
+
...defaultOwnerTranslations,
|
|
173
|
+
...translations
|
|
174
|
+
};
|
|
175
|
+
}, [translations]);
|
|
176
|
+
const hasOwner = useMemo(() => {
|
|
177
|
+
return !!owner;
|
|
178
|
+
}, [owner]);
|
|
179
|
+
return /* @__PURE__ */ jsx(
|
|
180
|
+
"div",
|
|
181
|
+
{
|
|
182
|
+
"data-slot": "table-owner-cell",
|
|
183
|
+
className: styles.ownerCell({ className }),
|
|
184
|
+
...rest,
|
|
185
|
+
children: hasOwner ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
186
|
+
/* @__PURE__ */ jsx(
|
|
187
|
+
Avatar,
|
|
188
|
+
{
|
|
189
|
+
src: owner == null ? void 0 : owner.avatar,
|
|
190
|
+
alt: owner == null ? void 0 : owner.name,
|
|
191
|
+
name: ownerName,
|
|
192
|
+
size: "sm",
|
|
193
|
+
className: styles.ownerCellAvatar()
|
|
194
|
+
}
|
|
195
|
+
),
|
|
196
|
+
/* @__PURE__ */ jsxs("div", { className: styles.ownerCelltextWrapper(), children: [
|
|
197
|
+
/* @__PURE__ */ jsx("span", { className: styles.ownerCellName(), children: ownerName }),
|
|
198
|
+
/* @__PURE__ */ jsx("span", { className: styles.ownerCellDescription(), children: description != null ? description : owner == null ? void 0 : owner.email })
|
|
199
|
+
] })
|
|
200
|
+
] }) : onClick ? /* @__PURE__ */ jsx(
|
|
201
|
+
Button,
|
|
202
|
+
{
|
|
203
|
+
onClick,
|
|
204
|
+
variant: "ghost",
|
|
205
|
+
size: "sm",
|
|
206
|
+
startContent: /* @__PURE__ */ jsx(PlusIcon, {}),
|
|
207
|
+
endContent: /* @__PURE__ */ jsx(ChevronRightIcon, {}),
|
|
208
|
+
children: i18n.assignNow
|
|
209
|
+
}
|
|
210
|
+
) : /* @__PURE__ */ jsx("span", { className: styles.ownerCellUnassigned(), children: i18n.unassigned })
|
|
211
|
+
}
|
|
212
|
+
);
|
|
213
|
+
}
|
|
145
214
|
|
|
146
215
|
export {
|
|
147
216
|
__export,
|
|
@@ -150,5 +219,6 @@ export {
|
|
|
150
219
|
TableBody,
|
|
151
220
|
TableRow,
|
|
152
221
|
TableHeaderCell,
|
|
153
|
-
TableCell
|
|
222
|
+
TableCell,
|
|
223
|
+
TableOwnerCellValue
|
|
154
224
|
};
|
|
@@ -4,10 +4,11 @@ import {
|
|
|
4
4
|
TableCell,
|
|
5
5
|
TableHead,
|
|
6
6
|
TableHeaderCell,
|
|
7
|
+
TableOwnerCellValue,
|
|
7
8
|
TableRoot,
|
|
8
9
|
TableRow,
|
|
9
10
|
__export
|
|
10
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-DE7P7UPE.mjs";
|
|
11
12
|
|
|
12
13
|
// src/namespace.ts
|
|
13
14
|
var namespace_exports = {};
|
|
@@ -16,6 +17,7 @@ __export(namespace_exports, {
|
|
|
16
17
|
Cell: () => TableCell,
|
|
17
18
|
Head: () => TableHead,
|
|
18
19
|
HeaderCell: () => TableHeaderCell,
|
|
20
|
+
OwnerCellValue: () => TableOwnerCellValue,
|
|
19
21
|
Root: () => TableRoot,
|
|
20
22
|
Row: () => TableRow
|
|
21
23
|
});
|
package/dist/index.js
CHANGED
|
@@ -32,11 +32,15 @@ __export(namespace_exports, {
|
|
|
32
32
|
Cell: () => TableCell,
|
|
33
33
|
Head: () => TableHead,
|
|
34
34
|
HeaderCell: () => TableHeaderCell,
|
|
35
|
+
OwnerCellValue: () => TableOwnerCellValue,
|
|
35
36
|
Root: () => TableRoot,
|
|
36
37
|
Row: () => TableRow
|
|
37
38
|
});
|
|
38
39
|
|
|
39
40
|
// src/table.tsx
|
|
41
|
+
var import_avatar = require("@kopexa/avatar");
|
|
42
|
+
var import_button = require("@kopexa/button");
|
|
43
|
+
var import_icons = require("@kopexa/icons");
|
|
40
44
|
var import_react_utils = require("@kopexa/react-utils");
|
|
41
45
|
var import_shared_utils = require("@kopexa/shared-utils");
|
|
42
46
|
var import_theme = require("@kopexa/theme");
|
|
@@ -171,6 +175,72 @@ function TableCell(props) {
|
|
|
171
175
|
}
|
|
172
176
|
);
|
|
173
177
|
}
|
|
178
|
+
var defaultOwnerTranslations = {
|
|
179
|
+
unassigned: "Unassigned",
|
|
180
|
+
assignNow: "Assign now"
|
|
181
|
+
};
|
|
182
|
+
function TableOwnerCellValue({
|
|
183
|
+
className,
|
|
184
|
+
owner,
|
|
185
|
+
description,
|
|
186
|
+
onClick,
|
|
187
|
+
translations,
|
|
188
|
+
...rest
|
|
189
|
+
}) {
|
|
190
|
+
const { styles } = useTableContext();
|
|
191
|
+
const ownerName = (0, import_react.useMemo)(() => {
|
|
192
|
+
if (owner == null ? void 0 : owner.name) {
|
|
193
|
+
return owner.name;
|
|
194
|
+
}
|
|
195
|
+
if ((owner == null ? void 0 : owner.firstName) && (owner == null ? void 0 : owner.lastName)) {
|
|
196
|
+
return `${owner.firstName} ${owner.lastName}`;
|
|
197
|
+
}
|
|
198
|
+
return "";
|
|
199
|
+
}, [owner]);
|
|
200
|
+
const i18n = (0, import_react.useMemo)(() => {
|
|
201
|
+
return {
|
|
202
|
+
...defaultOwnerTranslations,
|
|
203
|
+
...translations
|
|
204
|
+
};
|
|
205
|
+
}, [translations]);
|
|
206
|
+
const hasOwner = (0, import_react.useMemo)(() => {
|
|
207
|
+
return !!owner;
|
|
208
|
+
}, [owner]);
|
|
209
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
210
|
+
"div",
|
|
211
|
+
{
|
|
212
|
+
"data-slot": "table-owner-cell",
|
|
213
|
+
className: styles.ownerCell({ className }),
|
|
214
|
+
...rest,
|
|
215
|
+
children: hasOwner ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
216
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
217
|
+
import_avatar.Avatar,
|
|
218
|
+
{
|
|
219
|
+
src: owner == null ? void 0 : owner.avatar,
|
|
220
|
+
alt: owner == null ? void 0 : owner.name,
|
|
221
|
+
name: ownerName,
|
|
222
|
+
size: "sm",
|
|
223
|
+
className: styles.ownerCellAvatar()
|
|
224
|
+
}
|
|
225
|
+
),
|
|
226
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: styles.ownerCelltextWrapper(), children: [
|
|
227
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: styles.ownerCellName(), children: ownerName }),
|
|
228
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: styles.ownerCellDescription(), children: description != null ? description : owner == null ? void 0 : owner.email })
|
|
229
|
+
] })
|
|
230
|
+
] }) : onClick ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
231
|
+
import_button.Button,
|
|
232
|
+
{
|
|
233
|
+
onClick,
|
|
234
|
+
variant: "ghost",
|
|
235
|
+
size: "sm",
|
|
236
|
+
startContent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons.PlusIcon, {}),
|
|
237
|
+
endContent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons.ChevronRightIcon, {}),
|
|
238
|
+
children: i18n.assignNow
|
|
239
|
+
}
|
|
240
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: styles.ownerCellUnassigned(), children: i18n.unassigned })
|
|
241
|
+
}
|
|
242
|
+
);
|
|
243
|
+
}
|
|
174
244
|
// Annotate the CommonJS export names for ESM import in node:
|
|
175
245
|
0 && (module.exports = {
|
|
176
246
|
Table
|
package/dist/index.mjs
CHANGED
package/dist/namespace.d.mts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { TableBody, TableBodyProps, TableCell, TableCellProps, TableHead, TableHeadProps, TableHeaderCell, TableHeaderCellProps, TableRoot, TableRootProps, TableRow, TableRowProps } from './table.mjs';
|
|
1
|
+
import { TableBody, TableBodyProps, TableCell, TableCellProps, TableHead, TableHeadProps, TableHeaderCell, TableHeaderCellProps, TableOwnerCellValue, TableOwnerCellValueProps, TableRoot, TableRootProps, TableRow, TableRowProps } from './table.mjs';
|
|
2
2
|
import 'react/jsx-runtime';
|
|
3
3
|
import '@kopexa/theme';
|
|
4
4
|
import 'react';
|
|
5
5
|
|
|
6
6
|
declare namespace namespace {
|
|
7
|
-
export { TableBody as Body, TableBodyProps as BodyProps, TableCell as Cell, TableCellProps as CellProps, TableHead as Head, TableHeadProps as HeadProps, TableHeaderCell as HeaderCell, TableHeaderCellProps as HeaderCellProps, TableRoot as Root, TableRootProps as RootProps, TableRow as Row, TableRowProps as RowProps };
|
|
7
|
+
export { TableBody as Body, TableBodyProps as BodyProps, TableCell as Cell, TableCellProps as CellProps, TableHead as Head, TableHeadProps as HeadProps, TableHeaderCell as HeaderCell, TableHeaderCellProps as HeaderCellProps, TableOwnerCellValue as OwnerCellValue, TableOwnerCellValueProps as OwnerCellValueProps, TableRoot as Root, TableRootProps as RootProps, TableRow as Row, TableRowProps as RowProps };
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
export { TableBody as Body, TableBodyProps as BodyProps, TableCell as Cell, TableCellProps as CellProps, TableHead as Head, TableHeadProps as HeadProps, TableHeaderCell as HeaderCell, TableHeaderCellProps as HeaderCellProps, TableRoot as Root, TableRootProps as RootProps, TableRow as Row, TableRowProps as RowProps, namespace as n };
|
|
10
|
+
export { TableBody as Body, TableBodyProps as BodyProps, TableCell as Cell, TableCellProps as CellProps, TableHead as Head, TableHeadProps as HeadProps, TableHeaderCell as HeaderCell, TableHeaderCellProps as HeaderCellProps, TableOwnerCellValue as OwnerCellValue, TableOwnerCellValueProps as OwnerCellValueProps, TableRoot as Root, TableRootProps as RootProps, TableRow as Row, TableRowProps as RowProps, namespace as n };
|
package/dist/namespace.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { TableBody, TableBodyProps, TableCell, TableCellProps, TableHead, TableHeadProps, TableHeaderCell, TableHeaderCellProps, TableRoot, TableRootProps, TableRow, TableRowProps } from './table.js';
|
|
1
|
+
import { TableBody, TableBodyProps, TableCell, TableCellProps, TableHead, TableHeadProps, TableHeaderCell, TableHeaderCellProps, TableOwnerCellValue, TableOwnerCellValueProps, TableRoot, TableRootProps, TableRow, TableRowProps } from './table.js';
|
|
2
2
|
import 'react/jsx-runtime';
|
|
3
3
|
import '@kopexa/theme';
|
|
4
4
|
import 'react';
|
|
5
5
|
|
|
6
6
|
declare namespace namespace {
|
|
7
|
-
export { TableBody as Body, TableBodyProps as BodyProps, TableCell as Cell, TableCellProps as CellProps, TableHead as Head, TableHeadProps as HeadProps, TableHeaderCell as HeaderCell, TableHeaderCellProps as HeaderCellProps, TableRoot as Root, TableRootProps as RootProps, TableRow as Row, TableRowProps as RowProps };
|
|
7
|
+
export { TableBody as Body, TableBodyProps as BodyProps, TableCell as Cell, TableCellProps as CellProps, TableHead as Head, TableHeadProps as HeadProps, TableHeaderCell as HeaderCell, TableHeaderCellProps as HeaderCellProps, TableOwnerCellValue as OwnerCellValue, TableOwnerCellValueProps as OwnerCellValueProps, TableRoot as Root, TableRootProps as RootProps, TableRow as Row, TableRowProps as RowProps };
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
export { TableBody as Body, TableBodyProps as BodyProps, TableCell as Cell, TableCellProps as CellProps, TableHead as Head, TableHeadProps as HeadProps, TableHeaderCell as HeaderCell, TableHeaderCellProps as HeaderCellProps, TableRoot as Root, TableRootProps as RootProps, TableRow as Row, TableRowProps as RowProps, namespace as n };
|
|
10
|
+
export { TableBody as Body, TableBodyProps as BodyProps, TableCell as Cell, TableCellProps as CellProps, TableHead as Head, TableHeadProps as HeadProps, TableHeaderCell as HeaderCell, TableHeaderCellProps as HeaderCellProps, TableOwnerCellValue as OwnerCellValue, TableOwnerCellValueProps as OwnerCellValueProps, TableRoot as Root, TableRootProps as RootProps, TableRow as Row, TableRowProps as RowProps, namespace as n };
|
package/dist/namespace.js
CHANGED
|
@@ -25,12 +25,16 @@ __export(namespace_exports, {
|
|
|
25
25
|
Cell: () => TableCell,
|
|
26
26
|
Head: () => TableHead,
|
|
27
27
|
HeaderCell: () => TableHeaderCell,
|
|
28
|
+
OwnerCellValue: () => TableOwnerCellValue,
|
|
28
29
|
Root: () => TableRoot,
|
|
29
30
|
Row: () => TableRow
|
|
30
31
|
});
|
|
31
32
|
module.exports = __toCommonJS(namespace_exports);
|
|
32
33
|
|
|
33
34
|
// src/table.tsx
|
|
35
|
+
var import_avatar = require("@kopexa/avatar");
|
|
36
|
+
var import_button = require("@kopexa/button");
|
|
37
|
+
var import_icons = require("@kopexa/icons");
|
|
34
38
|
var import_react_utils = require("@kopexa/react-utils");
|
|
35
39
|
var import_shared_utils = require("@kopexa/shared-utils");
|
|
36
40
|
var import_theme = require("@kopexa/theme");
|
|
@@ -165,12 +169,79 @@ function TableCell(props) {
|
|
|
165
169
|
}
|
|
166
170
|
);
|
|
167
171
|
}
|
|
172
|
+
var defaultOwnerTranslations = {
|
|
173
|
+
unassigned: "Unassigned",
|
|
174
|
+
assignNow: "Assign now"
|
|
175
|
+
};
|
|
176
|
+
function TableOwnerCellValue({
|
|
177
|
+
className,
|
|
178
|
+
owner,
|
|
179
|
+
description,
|
|
180
|
+
onClick,
|
|
181
|
+
translations,
|
|
182
|
+
...rest
|
|
183
|
+
}) {
|
|
184
|
+
const { styles } = useTableContext();
|
|
185
|
+
const ownerName = (0, import_react.useMemo)(() => {
|
|
186
|
+
if (owner == null ? void 0 : owner.name) {
|
|
187
|
+
return owner.name;
|
|
188
|
+
}
|
|
189
|
+
if ((owner == null ? void 0 : owner.firstName) && (owner == null ? void 0 : owner.lastName)) {
|
|
190
|
+
return `${owner.firstName} ${owner.lastName}`;
|
|
191
|
+
}
|
|
192
|
+
return "";
|
|
193
|
+
}, [owner]);
|
|
194
|
+
const i18n = (0, import_react.useMemo)(() => {
|
|
195
|
+
return {
|
|
196
|
+
...defaultOwnerTranslations,
|
|
197
|
+
...translations
|
|
198
|
+
};
|
|
199
|
+
}, [translations]);
|
|
200
|
+
const hasOwner = (0, import_react.useMemo)(() => {
|
|
201
|
+
return !!owner;
|
|
202
|
+
}, [owner]);
|
|
203
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
204
|
+
"div",
|
|
205
|
+
{
|
|
206
|
+
"data-slot": "table-owner-cell",
|
|
207
|
+
className: styles.ownerCell({ className }),
|
|
208
|
+
...rest,
|
|
209
|
+
children: hasOwner ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
210
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
211
|
+
import_avatar.Avatar,
|
|
212
|
+
{
|
|
213
|
+
src: owner == null ? void 0 : owner.avatar,
|
|
214
|
+
alt: owner == null ? void 0 : owner.name,
|
|
215
|
+
name: ownerName,
|
|
216
|
+
size: "sm",
|
|
217
|
+
className: styles.ownerCellAvatar()
|
|
218
|
+
}
|
|
219
|
+
),
|
|
220
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: styles.ownerCelltextWrapper(), children: [
|
|
221
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: styles.ownerCellName(), children: ownerName }),
|
|
222
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: styles.ownerCellDescription(), children: description != null ? description : owner == null ? void 0 : owner.email })
|
|
223
|
+
] })
|
|
224
|
+
] }) : onClick ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
225
|
+
import_button.Button,
|
|
226
|
+
{
|
|
227
|
+
onClick,
|
|
228
|
+
variant: "ghost",
|
|
229
|
+
size: "sm",
|
|
230
|
+
startContent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons.PlusIcon, {}),
|
|
231
|
+
endContent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons.ChevronRightIcon, {}),
|
|
232
|
+
children: i18n.assignNow
|
|
233
|
+
}
|
|
234
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: styles.ownerCellUnassigned(), children: i18n.unassigned })
|
|
235
|
+
}
|
|
236
|
+
);
|
|
237
|
+
}
|
|
168
238
|
// Annotate the CommonJS export names for ESM import in node:
|
|
169
239
|
0 && (module.exports = {
|
|
170
240
|
Body,
|
|
171
241
|
Cell,
|
|
172
242
|
Head,
|
|
173
243
|
HeaderCell,
|
|
244
|
+
OwnerCellValue,
|
|
174
245
|
Root,
|
|
175
246
|
Row
|
|
176
247
|
});
|
package/dist/namespace.mjs
CHANGED
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import "./chunk-
|
|
2
|
+
import "./chunk-Q2IBTYJF.mjs";
|
|
3
3
|
import {
|
|
4
4
|
TableBody,
|
|
5
5
|
TableCell,
|
|
6
6
|
TableHead,
|
|
7
7
|
TableHeaderCell,
|
|
8
|
+
TableOwnerCellValue,
|
|
8
9
|
TableRoot,
|
|
9
10
|
TableRow
|
|
10
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-DE7P7UPE.mjs";
|
|
11
12
|
export {
|
|
12
13
|
TableBody as Body,
|
|
13
14
|
TableCell as Cell,
|
|
14
15
|
TableHead as Head,
|
|
15
16
|
TableHeaderCell as HeaderCell,
|
|
17
|
+
TableOwnerCellValue as OwnerCellValue,
|
|
16
18
|
TableRoot as Root,
|
|
17
19
|
TableRow as Row
|
|
18
20
|
};
|
package/dist/table.d.mts
CHANGED
|
@@ -39,5 +39,21 @@ type TableCellProps = ComponentProps<"td"> & {
|
|
|
39
39
|
isStickyCell?: boolean;
|
|
40
40
|
};
|
|
41
41
|
declare function TableCell(props: TableCellProps): react_jsx_runtime.JSX.Element;
|
|
42
|
+
type TableOwnerCellValueProps = Omit<ComponentProps<"div">, "children" | "onClick"> & {
|
|
43
|
+
owner?: {
|
|
44
|
+
firstName?: string;
|
|
45
|
+
lastName?: string;
|
|
46
|
+
name?: string;
|
|
47
|
+
email?: string;
|
|
48
|
+
avatar?: string;
|
|
49
|
+
} | null;
|
|
50
|
+
description?: string;
|
|
51
|
+
translations?: {
|
|
52
|
+
unassigned?: string;
|
|
53
|
+
assignNow?: string;
|
|
54
|
+
};
|
|
55
|
+
onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
56
|
+
};
|
|
57
|
+
declare function TableOwnerCellValue({ className, owner, description, onClick, translations, ...rest }: TableOwnerCellValueProps): react_jsx_runtime.JSX.Element;
|
|
42
58
|
|
|
43
|
-
export { TableBody, type TableBodyProps, TableCell, type TableCellProps, TableHead, type TableHeadProps, TableHeaderCell, type TableHeaderCellProps, TableRoot, type TableRootProps, TableRow, type TableRowProps };
|
|
59
|
+
export { TableBody, type TableBodyProps, TableCell, type TableCellProps, TableHead, type TableHeadProps, TableHeaderCell, type TableHeaderCellProps, TableOwnerCellValue, type TableOwnerCellValueProps, TableRoot, type TableRootProps, TableRow, type TableRowProps };
|
package/dist/table.d.ts
CHANGED
|
@@ -39,5 +39,21 @@ type TableCellProps = ComponentProps<"td"> & {
|
|
|
39
39
|
isStickyCell?: boolean;
|
|
40
40
|
};
|
|
41
41
|
declare function TableCell(props: TableCellProps): react_jsx_runtime.JSX.Element;
|
|
42
|
+
type TableOwnerCellValueProps = Omit<ComponentProps<"div">, "children" | "onClick"> & {
|
|
43
|
+
owner?: {
|
|
44
|
+
firstName?: string;
|
|
45
|
+
lastName?: string;
|
|
46
|
+
name?: string;
|
|
47
|
+
email?: string;
|
|
48
|
+
avatar?: string;
|
|
49
|
+
} | null;
|
|
50
|
+
description?: string;
|
|
51
|
+
translations?: {
|
|
52
|
+
unassigned?: string;
|
|
53
|
+
assignNow?: string;
|
|
54
|
+
};
|
|
55
|
+
onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
56
|
+
};
|
|
57
|
+
declare function TableOwnerCellValue({ className, owner, description, onClick, translations, ...rest }: TableOwnerCellValueProps): react_jsx_runtime.JSX.Element;
|
|
42
58
|
|
|
43
|
-
export { TableBody, type TableBodyProps, TableCell, type TableCellProps, TableHead, type TableHeadProps, TableHeaderCell, type TableHeaderCellProps, TableRoot, type TableRootProps, TableRow, type TableRowProps };
|
|
59
|
+
export { TableBody, type TableBodyProps, TableCell, type TableCellProps, TableHead, type TableHeadProps, TableHeaderCell, type TableHeaderCellProps, TableOwnerCellValue, type TableOwnerCellValueProps, TableRoot, type TableRootProps, TableRow, type TableRowProps };
|
package/dist/table.js
CHANGED
|
@@ -25,10 +25,14 @@ __export(table_exports, {
|
|
|
25
25
|
TableCell: () => TableCell,
|
|
26
26
|
TableHead: () => TableHead,
|
|
27
27
|
TableHeaderCell: () => TableHeaderCell,
|
|
28
|
+
TableOwnerCellValue: () => TableOwnerCellValue,
|
|
28
29
|
TableRoot: () => TableRoot,
|
|
29
30
|
TableRow: () => TableRow
|
|
30
31
|
});
|
|
31
32
|
module.exports = __toCommonJS(table_exports);
|
|
33
|
+
var import_avatar = require("@kopexa/avatar");
|
|
34
|
+
var import_button = require("@kopexa/button");
|
|
35
|
+
var import_icons = require("@kopexa/icons");
|
|
32
36
|
var import_react_utils = require("@kopexa/react-utils");
|
|
33
37
|
var import_shared_utils = require("@kopexa/shared-utils");
|
|
34
38
|
var import_theme = require("@kopexa/theme");
|
|
@@ -163,12 +167,79 @@ function TableCell(props) {
|
|
|
163
167
|
}
|
|
164
168
|
);
|
|
165
169
|
}
|
|
170
|
+
var defaultOwnerTranslations = {
|
|
171
|
+
unassigned: "Unassigned",
|
|
172
|
+
assignNow: "Assign now"
|
|
173
|
+
};
|
|
174
|
+
function TableOwnerCellValue({
|
|
175
|
+
className,
|
|
176
|
+
owner,
|
|
177
|
+
description,
|
|
178
|
+
onClick,
|
|
179
|
+
translations,
|
|
180
|
+
...rest
|
|
181
|
+
}) {
|
|
182
|
+
const { styles } = useTableContext();
|
|
183
|
+
const ownerName = (0, import_react.useMemo)(() => {
|
|
184
|
+
if (owner == null ? void 0 : owner.name) {
|
|
185
|
+
return owner.name;
|
|
186
|
+
}
|
|
187
|
+
if ((owner == null ? void 0 : owner.firstName) && (owner == null ? void 0 : owner.lastName)) {
|
|
188
|
+
return `${owner.firstName} ${owner.lastName}`;
|
|
189
|
+
}
|
|
190
|
+
return "";
|
|
191
|
+
}, [owner]);
|
|
192
|
+
const i18n = (0, import_react.useMemo)(() => {
|
|
193
|
+
return {
|
|
194
|
+
...defaultOwnerTranslations,
|
|
195
|
+
...translations
|
|
196
|
+
};
|
|
197
|
+
}, [translations]);
|
|
198
|
+
const hasOwner = (0, import_react.useMemo)(() => {
|
|
199
|
+
return !!owner;
|
|
200
|
+
}, [owner]);
|
|
201
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
202
|
+
"div",
|
|
203
|
+
{
|
|
204
|
+
"data-slot": "table-owner-cell",
|
|
205
|
+
className: styles.ownerCell({ className }),
|
|
206
|
+
...rest,
|
|
207
|
+
children: hasOwner ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
208
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
209
|
+
import_avatar.Avatar,
|
|
210
|
+
{
|
|
211
|
+
src: owner == null ? void 0 : owner.avatar,
|
|
212
|
+
alt: owner == null ? void 0 : owner.name,
|
|
213
|
+
name: ownerName,
|
|
214
|
+
size: "sm",
|
|
215
|
+
className: styles.ownerCellAvatar()
|
|
216
|
+
}
|
|
217
|
+
),
|
|
218
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: styles.ownerCelltextWrapper(), children: [
|
|
219
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: styles.ownerCellName(), children: ownerName }),
|
|
220
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: styles.ownerCellDescription(), children: description != null ? description : owner == null ? void 0 : owner.email })
|
|
221
|
+
] })
|
|
222
|
+
] }) : onClick ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
223
|
+
import_button.Button,
|
|
224
|
+
{
|
|
225
|
+
onClick,
|
|
226
|
+
variant: "ghost",
|
|
227
|
+
size: "sm",
|
|
228
|
+
startContent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons.PlusIcon, {}),
|
|
229
|
+
endContent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons.ChevronRightIcon, {}),
|
|
230
|
+
children: i18n.assignNow
|
|
231
|
+
}
|
|
232
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: styles.ownerCellUnassigned(), children: i18n.unassigned })
|
|
233
|
+
}
|
|
234
|
+
);
|
|
235
|
+
}
|
|
166
236
|
// Annotate the CommonJS export names for ESM import in node:
|
|
167
237
|
0 && (module.exports = {
|
|
168
238
|
TableBody,
|
|
169
239
|
TableCell,
|
|
170
240
|
TableHead,
|
|
171
241
|
TableHeaderCell,
|
|
242
|
+
TableOwnerCellValue,
|
|
172
243
|
TableRoot,
|
|
173
244
|
TableRow
|
|
174
245
|
});
|
package/dist/table.mjs
CHANGED
|
@@ -4,14 +4,16 @@ import {
|
|
|
4
4
|
TableCell,
|
|
5
5
|
TableHead,
|
|
6
6
|
TableHeaderCell,
|
|
7
|
+
TableOwnerCellValue,
|
|
7
8
|
TableRoot,
|
|
8
9
|
TableRow
|
|
9
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-DE7P7UPE.mjs";
|
|
10
11
|
export {
|
|
11
12
|
TableBody,
|
|
12
13
|
TableCell,
|
|
13
14
|
TableHead,
|
|
14
15
|
TableHeaderCell,
|
|
16
|
+
TableOwnerCellValue,
|
|
15
17
|
TableRoot,
|
|
16
18
|
TableRow
|
|
17
19
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kopexa/table",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "ables are used to display tabular data using rows and columns. ",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"table"
|
|
@@ -28,12 +28,15 @@
|
|
|
28
28
|
"react": ">=19.0.0-rc.0",
|
|
29
29
|
"react-dom": ">=19.0.0-rc.0",
|
|
30
30
|
"motion": ">=12.23.6",
|
|
31
|
-
"@kopexa/theme": "1.6.
|
|
31
|
+
"@kopexa/theme": "1.6.2"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"@kopexa/shared-utils": "1.1.5",
|
|
35
35
|
"@kopexa/react-utils": "2.0.6",
|
|
36
|
-
"@kopexa/use-hover": "0.0.1"
|
|
36
|
+
"@kopexa/use-hover": "0.0.1",
|
|
37
|
+
"@kopexa/button": "7.0.2",
|
|
38
|
+
"@kopexa/avatar": "2.0.2",
|
|
39
|
+
"@kopexa/icons": "9.0.2"
|
|
37
40
|
},
|
|
38
41
|
"clean-package": "../../../clean-package.config.json",
|
|
39
42
|
"module": "dist/index.mjs",
|