@synerise/ds-list 1.1.42 → 1.1.43
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/CHANGELOG.md +4 -0
- package/CLAUDE.md +15 -17
- package/README.md +5 -3
- package/dist/List.d.ts +8 -9
- package/dist/List.js +62 -45
- package/dist/List.styles.d.ts +8 -0
- package/dist/List.styles.js +25 -0
- package/dist/List.types.d.ts +30 -3
- package/package.json +5 -9
- package/dist/assets/style/index-tn0RQdqM.css +0 -0
- package/dist/style/index.css +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [1.1.43](https://github.com/Synerise/synerise-design/compare/@synerise/ds-list@1.1.42...@synerise/ds-list@1.1.43) (2026-07-24)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @synerise/ds-list
|
|
9
|
+
|
|
6
10
|
## [1.1.42](https://github.com/Synerise/synerise-design/compare/@synerise/ds-list@1.1.41...@synerise/ds-list@1.1.42) (2026-07-23)
|
|
7
11
|
|
|
8
12
|
**Note:** Version bump only for package @synerise/ds-list
|
package/CLAUDE.md
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
# List (`@synerise/ds-list`)
|
|
2
|
-
> A generic list component
|
|
2
|
+
> A generic **DS-native** list component (no antd), supporting nested/sectioned data sources, optional radio group wrapping, and styled sub-components for text items, item wrappers, and dividers. Reproduces antd `List`'s DOM + `.ant-list*` class hooks (`.ant-list`, `.ant-list-items`, `.ant-list-header`, `.ant-list-split`, `.ant-list-bordered`) side-by-side with `.ds-list*` hooks so existing consumer stylesheets keep working.
|
|
3
3
|
|
|
4
4
|
## Package structure
|
|
5
5
|
```
|
|
6
6
|
src/
|
|
7
|
-
List.tsx —
|
|
8
|
-
List.
|
|
7
|
+
List.tsx — functional component, renders flat or nested (sectioned) DS-native list
|
|
8
|
+
List.styles.ts — styled-components for the root/header/items(ul)/loading
|
|
9
|
+
List.types.ts — ListPropsType<T> type definition (hand-written, no antd)
|
|
9
10
|
index.ts — public entry point
|
|
10
11
|
modules.d.ts — CSS/Less module declarations
|
|
11
12
|
Elements/
|
|
@@ -19,9 +20,6 @@ src/
|
|
|
19
20
|
Divider/
|
|
20
21
|
Divider.tsx — thin wrapper around @synerise/ds-divider with horizontal padding
|
|
21
22
|
Divider.styles.ts — styled-components for Divider
|
|
22
|
-
style/
|
|
23
|
-
index.less — Less entry point (imported via side-effect in List.tsx)
|
|
24
|
-
list.mixin.less — Less mixins for list styles
|
|
25
23
|
__spec__/
|
|
26
24
|
List.spec.tsx — Vitest tests
|
|
27
25
|
```
|
|
@@ -29,7 +27,7 @@ src/
|
|
|
29
27
|
## Public exports
|
|
30
28
|
|
|
31
29
|
```ts
|
|
32
|
-
export { default } from './List'; // List
|
|
30
|
+
export { default } from './List'; // List functional component (default)
|
|
33
31
|
export type { ListPropsType } from './List.types';
|
|
34
32
|
export type { TextProps } from './Elements/Text/Text';
|
|
35
33
|
```
|
|
@@ -45,16 +43,16 @@ export type { TextProps } from './Elements/Text/Text';
|
|
|
45
43
|
|
|
46
44
|
### `List<T>` (default export)
|
|
47
45
|
|
|
48
|
-
|
|
46
|
+
Hand-written props (`ListPropsType<T>`, no antd). Core props:
|
|
49
47
|
|
|
50
48
|
| Prop | Type | Default | Description |
|
|
51
49
|
|------|------|---------|-------------|
|
|
52
|
-
| `dataSource` | `T[] \| T[][]` | — | Flat array OR nested array of arrays. A nested array renders multiple
|
|
50
|
+
| `dataSource` | `T[] \| T[][]` | — | Flat array OR nested array of arrays. A nested array renders multiple DS-native list sections separated by `ListDivider`. Only the first section renders the `header`. |
|
|
53
51
|
| `radio` | `boolean` | `undefined` | Wraps the entire rendered list in `Radio.Group` |
|
|
54
52
|
| `options` | `RadioGroupProps` | `undefined` | Props forwarded to the `Radio.Group` wrapper; only used when `radio` is `true` |
|
|
55
53
|
| `dashed` | `boolean` | `undefined` | Controls the dashed style of the auto-rendered `ListDivider` between sections. Note: `ListDivider` defaults `dashed` to `true` when not supplied |
|
|
56
54
|
|
|
57
|
-
|
|
55
|
+
Supported antd-`List`-parity props: `bordered`, `header`, `renderItem`, `split`, `loading` (DS `Loader`), `loadMore`, `rowKey`, `itemLayout`, `size`, `className`, `style`, `children`. **Dropped in the de-antd migration (0 real consumer usage):** `grid`, `pagination`, and `locale`/`emptyText` (the default "No data" empty state was removed — consumers render their own) — reintroduce natively if a need appears. `List.Item.Meta` is not implemented (unused).
|
|
58
56
|
|
|
59
57
|
---
|
|
60
58
|
|
|
@@ -133,19 +131,19 @@ import List from '@synerise/ds-list';
|
|
|
133
131
|
|
|
134
132
|
## Implementation notes
|
|
135
133
|
|
|
136
|
-
- `List` is a **
|
|
137
|
-
- **Nested detection:** `isNestedArray` (also a named export from `./List`) checks `array[0]
|
|
134
|
+
- `List` is a **functional component** (function declaration with statics attached). Items are keyed by `rowKey` (or the item index) — no `uuid`.
|
|
135
|
+
- **Nested detection:** `isNestedArray` (also a named export from `./List`) checks `Array.isArray(array[0])`. An array of arrays renders as multiple DS-native list sections separated by `ListDivider`; only the first section renders the `header`.
|
|
136
|
+
- **`renderItem` contract preserved:** it receives the flattened per-item value + index and may return any node (typically `List.Item`). When no `renderItem` is given, `children` render instead. There is no built-in empty state — when there are no items and no children, nothing is rendered (consumers supply their own).
|
|
138
137
|
- **`footer` is omitted** from `ListPropsType` — it cannot be passed to `List`.
|
|
139
|
-
- `List.Item` spreads all extra props onto the underlying `<li>` via `WithHTMLAttributes<HTMLLIElement, ..>`.
|
|
138
|
+
- `List.Item` spreads all extra props onto the underlying `<li>` via `WithHTMLAttributes<HTMLLIElement, ..>`. Items sit directly under `<ul class="ant-list-items">`, so `.ant-list-items > li` selectors keep working.
|
|
140
139
|
- The `ListDivider` wrapping `div` has `padding: 0 20px` to inset the rule; the `ItemWrapper` `div` has `padding: 8px 12px`.
|
|
141
|
-
- Tests use **
|
|
140
|
+
- Tests use **Vitest** (`pnpm --filter @synerise/ds-list test`).
|
|
142
141
|
|
|
143
142
|
## Key dependencies
|
|
144
143
|
|
|
145
144
|
| Package | Role |
|
|
146
145
|
|---------|------|
|
|
147
|
-
| `
|
|
148
|
-
| `@synerise/ds-radio` | `Radio.Group` wrapping when `radio` is `true` |
|
|
146
|
+
| `@synerise/ds-radio` | `Radio.Group` wrapping when `radio` is `true`; `RadioGroupProps` type |
|
|
149
147
|
| `@synerise/ds-divider` | Underlying divider in `ListDivider` |
|
|
148
|
+
| `@synerise/ds-loader` | Loading indicator for the `loading` prop |
|
|
150
149
|
| `@synerise/ds-utils` | `WithHTMLAttributes` utility type |
|
|
151
|
-
| `uuid` | Stable + per-render keys for `React.Fragment` nodes |
|
package/README.md
CHANGED
|
@@ -11,6 +11,11 @@ List UI Component
|
|
|
11
11
|
|
|
12
12
|
## API
|
|
13
13
|
|
|
14
|
+
> **Note:** As of the antd-removal migration, `@synerise/ds-list` is DS-native. The `grid`,
|
|
15
|
+
> `pagination`, and `locale` props are no longer supported (they had no consumer usage) — the
|
|
16
|
+
> default "No data" empty state was removed, so consumers now render their own empty state.
|
|
17
|
+
> `List.Item.Meta` is not implemented. All other props below are preserved.
|
|
18
|
+
|
|
14
19
|
### List
|
|
15
20
|
|
|
16
21
|
| Property | Description | Type | Default |
|
|
@@ -18,14 +23,11 @@ List UI Component
|
|
|
18
23
|
| bordered | Toggles rendering of the border around the list | boolean | `false` |
|
|
19
24
|
| dataSource | DataSource array or array of arrays for list | `T[] \| T[][]` | - |
|
|
20
25
|
| dashed | Define type of divider line | boolean | `true` |
|
|
21
|
-
| grid | The grid type of list. You can set grid to something like {gutter: 16, column: 4} | object | - |
|
|
22
26
|
| header | List header renderer | string | - |
|
|
23
27
|
| itemLayout | The layout of list, default is horizontal, If a vertical list is desired, set the itemLayout property to vertical | string | - |
|
|
24
28
|
| loading | Shows a loading indicator while the contents of the list are being fetched | boolean / object | `false` |
|
|
25
29
|
| loadMore | Shows a load more content | string / React.ReactNode | - |
|
|
26
|
-
| locale | i18n text including empty text | object | emptyText: 'No Data' |
|
|
27
30
|
| options | Options for radio group, if radio prop is provided | RadioGroupProps | - |
|
|
28
|
-
| pagination | Pagination config, hide it by setting it to`false` | boolean | object |
|
|
29
31
|
| split | Toggles rendering of the split under the list item | boolean | `true` |
|
|
30
32
|
| renderItem | Customize list item when using dataSource | item => ReactNode | - |
|
|
31
33
|
| rowKey | Item's unique key, could be a string or function that returns a string | string / (record) = > string | key |
|
package/dist/List.d.ts
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import { default as React } from 'react';
|
|
2
|
-
import { ItemWrapper, ListDivider, TextItem } from './Elements';
|
|
1
|
+
import { default as React, ReactElement } from 'react';
|
|
3
2
|
import { ListPropsType } from './List.types';
|
|
4
3
|
export declare const isNestedArray: <V>(array: V[] | V[][]) => boolean;
|
|
5
|
-
declare
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
4
|
+
declare function List<T>({ dataSource, radio, options, dashed, ...rest }: ListPropsType<T>): ReactElement;
|
|
5
|
+
declare namespace List {
|
|
6
|
+
var Item: ({ disabled, icon, onSelect, danger, actions, children, size, ...htmlAttributes }: import(".").TextProps) => React.JSX.Element;
|
|
7
|
+
var ItemWrapper: ({ children }: {
|
|
8
|
+
children?: React.ReactNode;
|
|
9
|
+
}) => React.JSX.Element;
|
|
10
|
+
var Divider: React.FC<import("./Elements/Divider/Divider").DividerProps>;
|
|
12
11
|
}
|
|
13
12
|
export default List;
|
package/dist/List.js
CHANGED
|
@@ -1,58 +1,75 @@
|
|
|
1
1
|
import { jsxs, jsx, Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { List as List$1 } from "antd";
|
|
3
2
|
import React from "react";
|
|
4
|
-
import
|
|
3
|
+
import Loader from "@synerise/ds-loader";
|
|
5
4
|
import Radio from "@synerise/ds-radio";
|
|
6
5
|
import Text from "./Elements/Text/Text.js";
|
|
7
6
|
import ItemWrapper from "./Elements/ItemWrapper/ItemWrapper.js";
|
|
8
7
|
import ListDivider from "./Elements/Divider/Divider.js";
|
|
9
|
-
import "./
|
|
10
|
-
const RadioGroupWrapper = ({
|
|
11
|
-
children,
|
|
12
|
-
options
|
|
13
|
-
}) => /* @__PURE__ */ jsx(Radio.Group, { ...options, children });
|
|
8
|
+
import { ListRoot, ListHeader, ListLoading, ListItems } from "./List.styles.js";
|
|
14
9
|
const isNestedArray = (array) => {
|
|
15
|
-
return !!array.length && array[0]
|
|
10
|
+
return !!array.length && Array.isArray(array[0]);
|
|
16
11
|
};
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
return
|
|
42
|
-
|
|
43
|
-
!isLastItem && /* @__PURE__ */ jsx(ListDivider, { dashed: !!dashed, "data-testid": "divider" })
|
|
44
|
-
] }, v4());
|
|
45
|
-
});
|
|
46
|
-
} else {
|
|
47
|
-
ReadyList = /* @__PURE__ */ jsx(React.Fragment, { children: /* @__PURE__ */ jsx(List$1, { ...rest, dataSource }) }, this.uuidKey || v4());
|
|
12
|
+
const buildRootClassName = (props) => ["ant-list", "ds-list", props.size === "small" && "ant-list-sm", props.size === "large" && "ant-list-lg", props.split !== false && "ant-list-split", props.bordered && "ant-list-bordered", props.loading && "ant-list-loading", props.itemLayout && `ant-list-${props.itemLayout}`, props.className].filter(Boolean).join(" ");
|
|
13
|
+
const SingleList = ({
|
|
14
|
+
items,
|
|
15
|
+
renderItem,
|
|
16
|
+
header,
|
|
17
|
+
bordered,
|
|
18
|
+
split,
|
|
19
|
+
loading,
|
|
20
|
+
size,
|
|
21
|
+
itemLayout,
|
|
22
|
+
loadMore,
|
|
23
|
+
rowKey,
|
|
24
|
+
className,
|
|
25
|
+
style,
|
|
26
|
+
children,
|
|
27
|
+
...htmlAttributes
|
|
28
|
+
}) => {
|
|
29
|
+
const resolveKey = (item, index) => {
|
|
30
|
+
if (typeof rowKey === "function") {
|
|
31
|
+
return rowKey(item);
|
|
32
|
+
}
|
|
33
|
+
if (rowKey && item && typeof item === "object") {
|
|
34
|
+
const value = item[rowKey];
|
|
35
|
+
if (typeof value === "string" || typeof value === "number") {
|
|
36
|
+
return value;
|
|
37
|
+
}
|
|
48
38
|
}
|
|
49
|
-
return
|
|
50
|
-
}
|
|
39
|
+
return index;
|
|
40
|
+
};
|
|
41
|
+
const hasItems = Boolean(renderItem) && items.length > 0;
|
|
42
|
+
return /* @__PURE__ */ jsxs(ListRoot, { ...htmlAttributes, className: buildRootClassName({
|
|
43
|
+
bordered,
|
|
44
|
+
split,
|
|
45
|
+
loading,
|
|
46
|
+
size,
|
|
47
|
+
itemLayout,
|
|
48
|
+
className
|
|
49
|
+
}), style, $bordered: bordered, children: [
|
|
50
|
+
header !== void 0 && header !== null && /* @__PURE__ */ jsx(ListHeader, { className: "ant-list-header ds-list-header", children: header }),
|
|
51
|
+
loading && /* @__PURE__ */ jsx(ListLoading, { className: "ant-list-loading ds-list-loading", children: /* @__PURE__ */ jsx(Loader, { size: "M" }) }),
|
|
52
|
+
!loading && hasItems && /* @__PURE__ */ jsx(ListItems, { className: "ant-list-items ds-list-items", children: items.map((item, index) => /* @__PURE__ */ jsx(React.Fragment, { children: renderItem?.(item, index) }, resolveKey(item, index))) }),
|
|
53
|
+
!loading && !hasItems && children,
|
|
54
|
+
loadMore
|
|
55
|
+
] });
|
|
51
56
|
};
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
57
|
+
function List({
|
|
58
|
+
dataSource,
|
|
59
|
+
radio,
|
|
60
|
+
options,
|
|
61
|
+
dashed,
|
|
62
|
+
...rest
|
|
63
|
+
}) {
|
|
64
|
+
const content = isNestedArray(dataSource) ? dataSource.map((group, index, groups) => /* @__PURE__ */ jsxs(React.Fragment, { children: [
|
|
65
|
+
/* @__PURE__ */ jsx(SingleList, { ...rest, items: group, header: index === 0 ? rest.header : void 0 }),
|
|
66
|
+
index !== groups.length - 1 && /* @__PURE__ */ jsx(ListDivider, { dashed: Boolean(dashed) })
|
|
67
|
+
] }, index)) : /* @__PURE__ */ jsx(SingleList, { ...rest, items: dataSource });
|
|
68
|
+
return radio ? /* @__PURE__ */ jsx(Radio.Group, { ...options, children: content }) : /* @__PURE__ */ jsx(Fragment, { children: content });
|
|
69
|
+
}
|
|
70
|
+
List.Item = Text;
|
|
71
|
+
List.ItemWrapper = ItemWrapper;
|
|
72
|
+
List.Divider = ListDivider;
|
|
56
73
|
export {
|
|
57
74
|
List as default,
|
|
58
75
|
isNestedArray
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const ListRoot: import('styled-components').StyledComponent<"div", any, {
|
|
2
|
+
$bordered?: boolean;
|
|
3
|
+
}, never>;
|
|
4
|
+
/** Reproduces the `.ant-list-header` styling the migration kept in `list.mixin.less`. */
|
|
5
|
+
export declare const ListHeader: import('styled-components').StyledComponent<"div", any, {}, never>;
|
|
6
|
+
/** The `<ul class="ant-list-items">` — reset so items sit flush (antd parity). */
|
|
7
|
+
export declare const ListItems: import('styled-components').StyledComponent<"ul", any, {}, never>;
|
|
8
|
+
export declare const ListLoading: import('styled-components').StyledComponent<"div", any, {}, never>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import styled, { css } from "styled-components";
|
|
2
|
+
const ListRoot = /* @__PURE__ */ styled.div.withConfig({
|
|
3
|
+
displayName: "Liststyles__ListRoot",
|
|
4
|
+
componentId: "sc-jdmigs-0"
|
|
5
|
+
})(["position:relative;", ""], (props) => props.$bordered && css(["border:1px solid ", ";border-radius:3px;"], props.theme.palette["grey-300"]));
|
|
6
|
+
const ListHeader = /* @__PURE__ */ styled.div.withConfig({
|
|
7
|
+
displayName: "Liststyles__ListHeader",
|
|
8
|
+
componentId: "sc-jdmigs-1"
|
|
9
|
+
})(["text-transform:uppercase;font-size:13px;color:", ";padding:8px 12px;border:0;"], ({
|
|
10
|
+
theme
|
|
11
|
+
}) => theme.palette["grey-700"]);
|
|
12
|
+
const ListItems = /* @__PURE__ */ styled.ul.withConfig({
|
|
13
|
+
displayName: "Liststyles__ListItems",
|
|
14
|
+
componentId: "sc-jdmigs-2"
|
|
15
|
+
})(["margin:0;padding:0;list-style:none;"]);
|
|
16
|
+
const ListLoading = /* @__PURE__ */ styled.div.withConfig({
|
|
17
|
+
displayName: "Liststyles__ListLoading",
|
|
18
|
+
componentId: "sc-jdmigs-3"
|
|
19
|
+
})(["display:flex;align-items:center;justify-content:center;padding:16px;"]);
|
|
20
|
+
export {
|
|
21
|
+
ListHeader,
|
|
22
|
+
ListItems,
|
|
23
|
+
ListLoading,
|
|
24
|
+
ListRoot
|
|
25
|
+
};
|
package/dist/List.types.d.ts
CHANGED
|
@@ -1,8 +1,35 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CSSProperties, Key, ReactNode } from 'react';
|
|
2
2
|
import { RadioGroupProps } from '@synerise/ds-radio';
|
|
3
|
-
|
|
3
|
+
import { WithHTMLAttributes } from '@synerise/ds-utils';
|
|
4
|
+
export type ListSize = 'small' | 'default' | 'large';
|
|
5
|
+
export type ListItemLayout = 'horizontal' | 'vertical';
|
|
6
|
+
export type ListPropsType<T> = WithHTMLAttributes<HTMLDivElement, {
|
|
7
|
+
/** Flat list, or an array of groups rendered as separate lists split by a divider. */
|
|
4
8
|
dataSource: T[] | T[][];
|
|
9
|
+
/** Render a single item. Receives the flattened per-item value and its index. */
|
|
10
|
+
renderItem?: (item: T, index: number) => ReactNode;
|
|
11
|
+
/** Rendered once, above the (first) list. */
|
|
12
|
+
header?: ReactNode;
|
|
13
|
+
/** Wrap the list in a border. */
|
|
14
|
+
bordered?: boolean;
|
|
15
|
+
/** Keep the `ant-list-split` hook (borders between items). Defaults to `true`. */
|
|
16
|
+
split?: boolean;
|
|
17
|
+
/** Show a centered loading indicator instead of the items. */
|
|
18
|
+
loading?: boolean;
|
|
19
|
+
itemLayout?: ListItemLayout;
|
|
20
|
+
size?: ListSize;
|
|
21
|
+
/** Node rendered after the items (e.g. a "load more" button). */
|
|
22
|
+
loadMore?: ReactNode;
|
|
23
|
+
/** Key extractor for items. Defaults to the item index. */
|
|
24
|
+
rowKey?: keyof T | ((item: T) => Key);
|
|
25
|
+
className?: string;
|
|
26
|
+
style?: CSSProperties;
|
|
27
|
+
/** Rendered in place of `dataSource`/`renderItem` when no `renderItem` is given. */
|
|
28
|
+
children?: ReactNode;
|
|
29
|
+
/** Wrap the list in a `Radio.Group` (single-select list). */
|
|
5
30
|
radio?: boolean;
|
|
31
|
+
/** Props forwarded to the wrapping `Radio.Group` when `radio` is set. */
|
|
6
32
|
options?: RadioGroupProps;
|
|
33
|
+
/** Dashed divider between groups (nested `dataSource`). */
|
|
7
34
|
dashed?: boolean;
|
|
8
|
-
}
|
|
35
|
+
}>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@synerise/ds-list",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.43",
|
|
4
4
|
"description": "List UI Component for the Synerise Design System",
|
|
5
5
|
"license": "ISC",
|
|
6
6
|
"repository": "Synerise/synerise-design",
|
|
@@ -36,23 +36,19 @@
|
|
|
36
36
|
"check:circular-dependencies": "madge --circular --extensions ts,tsx,js,jsx --ts-config tsconfig.json src/ --exclude '/dist/'",
|
|
37
37
|
"upgrade:ds": "ncu -f \"@synerise/ds-*\" -u"
|
|
38
38
|
},
|
|
39
|
-
"sideEffects":
|
|
40
|
-
"dist/style/*",
|
|
41
|
-
"*.less"
|
|
42
|
-
],
|
|
39
|
+
"sideEffects": false,
|
|
43
40
|
"types": "dist/index.d.ts",
|
|
44
41
|
"dependencies": {
|
|
45
42
|
"@synerise/ds-divider": "^1.3.16",
|
|
43
|
+
"@synerise/ds-loader": "^1.0.18",
|
|
46
44
|
"@synerise/ds-radio": "^1.1.18",
|
|
47
|
-
"@synerise/ds-utils": "^1.10.2"
|
|
48
|
-
"uuid": "^8.3.2"
|
|
45
|
+
"@synerise/ds-utils": "^1.10.2"
|
|
49
46
|
},
|
|
50
47
|
"peerDependencies": {
|
|
51
48
|
"@synerise/ds-core": "*",
|
|
52
|
-
"antd": "4.24.16",
|
|
53
49
|
"react": ">=16.9.0 <= 18.3.1",
|
|
54
50
|
"styled-components": "^5.3.3",
|
|
55
51
|
"vitest": "4"
|
|
56
52
|
},
|
|
57
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "018414e0d7ffd102a07f8aa35fa2e2d3d4ed19e2"
|
|
58
54
|
}
|
|
File without changes
|
package/dist/style/index.css
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.ant-list{box-sizing:border-box;margin:0;padding:0;color:#6a7580;font-size:13px;font-variant:tabular-nums;line-height:1.38;list-style:none;font-feature-settings:'tnum';position:relative}.ant-list *{outline:0}.ant-list-pagination{margin-top:24px;text-align:right}.ant-list-pagination .ant-pagination-options{text-align:left}.ant-list-more{margin-top:12px;text-align:center}.ant-list-more button{padding-right:32px;padding-left:32px}.ant-list-spin{min-height:40px;text-align:center}.ant-list-empty-text{padding:16px;color:#b5bdc3;font-size:13px;text-align:center}.ant-list-items{margin:0;padding:0;list-style:none}.ant-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0;color:#6a7580}.ant-list-item-meta{display:flex;flex:1;align-items:flex-start;max-width:100%}.ant-list-item-meta-avatar{margin-right:16px}.ant-list-item-meta-content{flex:1 0;width:0;color:#6a7580}.ant-list-item-meta-title{margin-bottom:4px;color:#6a7580;font-size:13px;line-height:1.38}.ant-list-item-meta-title>a{color:#6a7580;transition:all .3s}.ant-list-item-meta-title>a:hover{color:#0b68ff}.ant-list-item-meta-description{color:#232936;font-size:13px;line-height:1.38}.ant-list-item-action{flex:0 0 auto;margin-left:48px;padding:0;font-size:0;list-style:none}.ant-list-item-action>li{position:relative;display:inline-block;padding:0 8px;color:#232936;font-size:13px;line-height:1.38;text-align:center}.ant-list-item-action>li:first-child{padding-left:0}.ant-list-item-action-split{position:absolute;top:50%;right:0;width:1px;height:14px;margin-top:-7px;background-color:#e9edee}.ant-list-header{background:0 0}.ant-list-footer{background:0 0}.ant-list-footer,.ant-list-header{padding-top:12px;padding-bottom:12px}.ant-list-empty{padding:16px 0;color:#232936;font-size:12px;text-align:center}.ant-list-split .ant-list-item{border-bottom:1px solid #e9edee}.ant-list-split .ant-list-item:last-child{border-bottom:none}.ant-list-split .ant-list-header{border-bottom:1px solid #e9edee}.ant-list-split.ant-list-empty .ant-list-footer{border-top:1px solid #e9edee}.ant-list-loading .ant-list-spin-nested-loading{min-height:32px}.ant-list-split.ant-list-something-after-last-item .ant-spin-container>.ant-list-items>.ant-list-item:last-child{border-bottom:1px solid #e9edee}.ant-list-lg .ant-list-item{padding:16px 24px}.ant-list-sm .ant-list-item{padding:8px 16px}.ant-list-vertical .ant-list-item{align-items:initial}.ant-list-vertical .ant-list-item-main{display:block;flex:1}.ant-list-vertical .ant-list-item-extra{margin-left:40px}.ant-list-vertical .ant-list-item-meta{margin-bottom:16px}.ant-list-vertical .ant-list-item-meta-title{margin-bottom:12px;color:#384350;font-size:13px;line-height:24px}.ant-list-vertical .ant-list-item-action{margin-top:16px;margin-left:auto}.ant-list-vertical .ant-list-item-action>li{padding:0 16px}.ant-list-vertical .ant-list-item-action>li:first-child{padding-left:0}.ant-list-grid .ant-col>.ant-list-item{display:block;max-width:100%;margin-bottom:16px;padding-top:0;padding-bottom:0;border-bottom:none}.ant-list-item-no-flex{display:block}.ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:right}.ant-list-bordered{border:1px solid #dbe0e3;border-radius:3px}.ant-list-bordered .ant-list-header{padding-right:32px;padding-left:32px}.ant-list-bordered .ant-list-footer{padding-right:32px;padding-left:32px}.ant-list-bordered .ant-list-item{padding-right:32px;padding-left:32px}.ant-list-bordered .ant-list-pagination{margin:16px 24px}.ant-list-bordered.ant-list-sm .ant-list-item{padding:8px 16px}.ant-list-bordered.ant-list-sm .ant-list-footer,.ant-list-bordered.ant-list-sm .ant-list-header{padding:8px 16px}.ant-list-bordered.ant-list-lg .ant-list-item{padding:16px 24px}.ant-list-bordered.ant-list-lg .ant-list-footer,.ant-list-bordered.ant-list-lg .ant-list-header{padding:16px 24px}@media screen and (max-width:768px){.ant-list-item-action{margin-left:24px}.ant-list-vertical .ant-list-item-extra{margin-left:24px}}@media screen and (max-width:576px){.ant-list-item{flex-wrap:wrap}.ant-list-item-action{margin-left:12px}.ant-list-vertical .ant-list-item{flex-wrap:wrap-reverse}.ant-list-vertical .ant-list-item-main{min-width:220px}.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}.ant-list-rtl{direction:rtl;text-align:right}.ant-list-rtl .ReactVirtualized__List .ant-list-item{direction:rtl}.ant-list-rtl .ant-list-pagination{text-align:left}.ant-list-rtl .ant-list-item-meta-avatar{margin-right:0;margin-left:16px}.ant-list-rtl .ant-list-item-action{margin-right:48px;margin-left:0}.ant-list.ant-list-rtl .ant-list-item-action>li:first-child{padding-right:0;padding-left:16px}.ant-list-rtl .ant-list-item-action-split{right:auto;left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin-right:40px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-action{margin-right:auto}.ant-list-rtl .ant-list-vertical .ant-list-item-action>li:first-child{padding-right:0;padding-left:16px}.ant-list-rtl .ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:left}@media screen and (max-width:768px){.ant-list-rtl .ant-list-item-action{margin-right:24px;margin-left:0}.ant-list-rtl .ant-list-vertical .ant-list-item-extra{margin-right:24px;margin-left:0}}@media screen and (max-width:576px){.ant-list-rtl .ant-list-item-action{margin-right:22px;margin-left:0}.ant-list-rtl.ant-list-vertical .ant-list-item-extra{margin:auto auto 16px}}.ant-dropdown-menu-items{padding:8px;margin:0}.ant-list-header{text-transform:uppercase;font-size:13px;color:#57616d;padding:8px 12px}.ant-list-header.ant-list-header{border:0}
|