@licklist/design 0.78.5-dev.58 → 0.78.5-dev.59
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/Maintenance/MaintenancePage.js +1 -0
- package/dist/index.js +3 -1
- package/dist/v2/components/ActionMenu/ActionMenu.d.ts.map +1 -1
- package/dist/v2/components/ActionMenu/ActionMenu.js +60 -8
- package/dist/v2/components/ActionMenu/ActionMenu.scss.js +1 -1
- package/dist/v2/components/Badge/Badge.d.ts.map +1 -1
- package/dist/v2/components/Badge/Badge.js +1 -1
- package/dist/v2/components/Badge/Badge.scss.js +1 -1
- package/dist/v2/components/Button/Button.d.ts +1 -1
- package/dist/v2/components/Button/Button.d.ts.map +1 -1
- package/dist/v2/components/Button/Button.js +1 -0
- package/dist/v2/components/Button/GhostButton.scss.js +1 -1
- package/dist/v2/components/Button/index.d.ts +2 -0
- package/dist/v2/components/Button/index.d.ts.map +1 -1
- package/dist/v2/components/FormField/FormField.d.ts.map +1 -1
- package/dist/v2/components/Modal/DeleteModal.d.ts.map +1 -1
- package/dist/v2/components/Modal/DeleteModal.js +4 -0
- package/dist/v2/components/NPSScore/NPSScore.js +1 -0
- package/dist/v2/components/NewInput/NewInput.d.ts.map +1 -1
- package/dist/v2/components/NewInput/NewInput.js +8 -0
- package/dist/v2/components/NewPageHeader/NewPageHeader.d.ts +2 -1
- package/dist/v2/components/NewPageHeader/NewPageHeader.d.ts.map +1 -1
- package/dist/v2/components/NewPageHeader/NewPageHeader.js +3 -2
- package/dist/v2/components/NewPageHeader/NewPageHeader.scss.js +1 -1
- package/dist/v2/components/NewTable/NewTable.d.ts.map +1 -1
- package/dist/v2/components/NewTable/NewTable.js +1 -0
- package/dist/v2/components/NewTable/NewTable.scss.js +1 -1
- package/dist/v2/components/Pagination/Pagination.js +1 -4
- package/dist/v2/components/Pagination/Pagination.scss.js +1 -1
- package/dist/v2/components/QuickFilter/QuickFilter.d.ts.map +1 -1
- package/dist/v2/components/QuickFilter/QuickFilter.js +5 -2
- package/dist/v2/components/QuickFilter/QuickFilter.scss.js +1 -1
- package/dist/v2/components/SectionHeader/SectionHeader.d.ts.map +1 -1
- package/dist/v2/components/TableSortIcon/TableSortIcon.d.ts +9 -0
- package/dist/v2/components/TableSortIcon/TableSortIcon.d.ts.map +1 -0
- package/dist/v2/components/TableSortIcon/TableSortIcon.js +14 -0
- package/dist/v2/components/TableSortIcon/index.d.ts +2 -0
- package/dist/v2/components/TableSortIcon/index.d.ts.map +1 -0
- package/dist/v2/components/WYSIWYGEditor/Icons.js +2 -2
- package/dist/v2/components/index.d.ts +5 -3
- package/dist/v2/components/index.d.ts.map +1 -1
- package/dist/v2/icons/index.d.ts +10 -0
- package/dist/v2/icons/index.d.ts.map +1 -1
- package/dist/v2/icons/index.js +61 -1
- package/dist/v2/pages/Settings/components/SidebarCustomisation.js +2 -3
- package/dist/v2/pages/Settings/components/SidebarNavItem.js +2 -2
- package/package.json +1 -1
- package/src/v2/components/ActionMenu/ActionMenu.scss +22 -5
- package/src/v2/components/ActionMenu/ActionMenu.tsx +53 -5
- package/src/v2/components/Badge/Badge.scss +13 -0
- package/src/v2/components/Badge/Badge.tsx +10 -8
- package/src/v2/components/Button/Button.tsx +13 -2
- package/src/v2/components/Button/GhostButton.scss +11 -1
- package/src/v2/components/Button/index.ts +2 -0
- package/src/v2/components/Customer/CustomersList.scss +72 -115
- package/src/v2/components/FormField/FormField.tsx +19 -21
- package/src/v2/components/Modal/DeleteModal.tsx +4 -2
- package/src/v2/components/NewInput/NewInput.tsx +13 -1
- package/src/v2/components/NewPageHeader/NewPageHeader.scss +8 -5
- package/src/v2/components/NewPageHeader/NewPageHeader.tsx +21 -21
- package/src/v2/components/NewTable/NewTable.scss +17 -1
- package/src/v2/components/NewTable/NewTable.tsx +1 -0
- package/src/v2/components/Pagination/Pagination.scss +18 -18
- package/src/v2/components/Pagination/Pagination.tsx +1 -1
- package/src/v2/components/QuickFilter/QuickFilter.scss +17 -34
- package/src/v2/components/QuickFilter/QuickFilter.tsx +7 -5
- package/src/v2/components/SectionHeader/SectionHeader.tsx +5 -7
- package/src/v2/components/TableSortIcon/TableSortIcon.tsx +20 -0
- package/src/v2/components/TableSortIcon/index.ts +1 -0
- package/src/v2/components/WYSIWYGEditor/Icons.tsx +2 -2
- package/src/v2/components/index.ts +8 -3
- package/src/v2/icons/index.tsx +14 -0
- package/src/v2/pages/Settings/components/SidebarCustomisation.tsx +1 -1
|
@@ -14,28 +14,9 @@
|
|
|
14
14
|
display: flex;
|
|
15
15
|
flex-wrap: wrap;
|
|
16
16
|
gap: 8px;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
&__option {
|
|
20
|
-
padding: 4px 16px;
|
|
21
|
-
border-radius: 100px;
|
|
22
|
-
border: 1px solid var(--border-primary, #E8E9EF);
|
|
23
|
-
background-color: var(--neutral-white, #FFFFFF);
|
|
24
|
-
font-size: var(--text-small-size, 13px);
|
|
25
|
-
font-weight: 500;
|
|
26
|
-
color: var(--label-primary, #121E52);
|
|
27
|
-
cursor: pointer;
|
|
28
|
-
transition: all 0.2s ease;
|
|
29
17
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
&--active {
|
|
35
|
-
background-color: var(--fill-primary);
|
|
36
|
-
border-color: var(--border-selected, #121E52);
|
|
37
|
-
color: var(--neutral-white, #FFFFFF);
|
|
38
|
-
font-weight: 600;
|
|
18
|
+
.ghost-button {
|
|
19
|
+
border-radius: 100px;
|
|
39
20
|
}
|
|
40
21
|
}
|
|
41
22
|
}
|
|
@@ -43,29 +24,36 @@
|
|
|
43
24
|
// Mobile styles
|
|
44
25
|
@media (max-width: 768px) {
|
|
45
26
|
.quick-filter {
|
|
46
|
-
|
|
27
|
+
display: flex;
|
|
28
|
+
flex-direction: row;
|
|
47
29
|
align-items: flex-start;
|
|
48
|
-
gap:
|
|
30
|
+
gap: 12px;
|
|
31
|
+
width: 100%;
|
|
49
32
|
|
|
50
33
|
&__label {
|
|
51
34
|
font-size: 12px;
|
|
52
35
|
}
|
|
53
36
|
|
|
54
37
|
&__options {
|
|
55
|
-
|
|
38
|
+
flex: 1;
|
|
39
|
+
display: flex;
|
|
40
|
+
flex-wrap: wrap;
|
|
56
41
|
gap: 6px;
|
|
57
|
-
|
|
42
|
+
padding: 0;
|
|
43
|
+
margin: 0;
|
|
44
|
+
min-width: 0;
|
|
58
45
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
46
|
+
.ghost-button {
|
|
47
|
+
flex-shrink: 0;
|
|
48
|
+
border-radius: 100px;
|
|
49
|
+
}
|
|
62
50
|
}
|
|
63
51
|
}
|
|
64
52
|
}
|
|
65
53
|
|
|
66
54
|
@media (max-width: 480px) {
|
|
67
55
|
.quick-filter {
|
|
68
|
-
gap:
|
|
56
|
+
gap: 8px;
|
|
69
57
|
|
|
70
58
|
&__label {
|
|
71
59
|
font-size: 11px;
|
|
@@ -74,11 +62,6 @@
|
|
|
74
62
|
&__options {
|
|
75
63
|
gap: 4px;
|
|
76
64
|
}
|
|
77
|
-
|
|
78
|
-
&__option {
|
|
79
|
-
padding: 2px 10px;
|
|
80
|
-
font-size: 11px;
|
|
81
|
-
}
|
|
82
65
|
}
|
|
83
66
|
}
|
|
84
67
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
|
+
import { GhostButton } from '../Button'
|
|
2
3
|
import './QuickFilter.scss'
|
|
3
4
|
|
|
4
5
|
export interface QuickFilterOption {
|
|
@@ -32,16 +33,17 @@ export const QuickFilter: React.FC<QuickFilterProps> = ({
|
|
|
32
33
|
{label && <span className="quick-filter__label">{label}</span>}
|
|
33
34
|
<div className="quick-filter__options">
|
|
34
35
|
{options.map((option) => (
|
|
35
|
-
<
|
|
36
|
+
<GhostButton
|
|
36
37
|
key={option.value}
|
|
37
38
|
type="button"
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
size="sm"
|
|
40
|
+
className={
|
|
41
|
+
selectedValues?.includes(option.value) ? 'active' : ''
|
|
42
|
+
}
|
|
41
43
|
onClick={() => toggleOption(option.value)}
|
|
42
44
|
>
|
|
43
45
|
{option.label}
|
|
44
|
-
</
|
|
46
|
+
</GhostButton>
|
|
45
47
|
))}
|
|
46
48
|
</div>
|
|
47
49
|
</div>
|
|
@@ -6,10 +6,8 @@ export interface SectionHeaderProps {
|
|
|
6
6
|
className?: string;
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
-
export const SectionHeader: React.FC<SectionHeaderProps> = ({ title, className = '' }) =>
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
);
|
|
15
|
-
};
|
|
9
|
+
export const SectionHeader: React.FC<SectionHeaderProps> = ({ title, className = '' }) => (
|
|
10
|
+
<span className={`section-header ${className}`}>
|
|
11
|
+
{title}
|
|
12
|
+
</span>
|
|
13
|
+
);
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { ArrowUpIcon, ArrowDownIcon } from '../../icons'
|
|
3
|
+
|
|
4
|
+
export type SortDirection = 'asc' | 'desc' | null
|
|
5
|
+
|
|
6
|
+
export interface TableSortIconProps {
|
|
7
|
+
active?: boolean
|
|
8
|
+
direction: SortDirection
|
|
9
|
+
className?: string
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export const TableSortIcon: React.FC<TableSortIconProps> = ({ active = false, direction, className = '' }) => {
|
|
13
|
+
if (!active || !direction) return null
|
|
14
|
+
|
|
15
|
+
return (
|
|
16
|
+
<span className={className}>
|
|
17
|
+
{direction === 'asc' ? <ArrowUpIcon /> : <ArrowDownIcon />}
|
|
18
|
+
</span>
|
|
19
|
+
)
|
|
20
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './TableSortIcon'
|
|
@@ -62,8 +62,8 @@ export const QuoteAltIcon = () => (
|
|
|
62
62
|
export const DividerIcon = () => (
|
|
63
63
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
|
|
64
64
|
<rect x="5.25" y="11.25" width="13.5" height="1.5" fill="#626A90"/>
|
|
65
|
-
<circle cx="21.75" cy="12" r="0.75" fill="#626A90"
|
|
66
|
-
<circle cx="2.25" cy="12" r="0.75" fill="#626A90"
|
|
65
|
+
<circle cx="21.75" cy="12" r="0.75" fill="#626A90" fillOpacity="0.5"/>
|
|
66
|
+
<circle cx="2.25" cy="12" r="0.75" fill="#626A90" fillOpacity="0.5"/>
|
|
67
67
|
</svg>
|
|
68
68
|
);
|
|
69
69
|
|
|
@@ -7,6 +7,9 @@ export type { QuickFilterProps, QuickFilterOption } from './QuickFilter'
|
|
|
7
7
|
export { NewTable } from './NewTable'
|
|
8
8
|
export type { NewTableProps, NewTableColumn } from './NewTable'
|
|
9
9
|
|
|
10
|
+
export { TableSortIcon } from './TableSortIcon'
|
|
11
|
+
export type { TableSortIconProps } from './TableSortIcon'
|
|
12
|
+
|
|
10
13
|
|
|
11
14
|
export { ActionMenu } from './ActionMenu'
|
|
12
15
|
export type { ActionMenuProps, ActionMenuItem } from './ActionMenu'
|
|
@@ -34,8 +37,8 @@ export { SectionHeader } from './SectionHeader'
|
|
|
34
37
|
export type { SectionHeaderProps } from './SectionHeader'
|
|
35
38
|
|
|
36
39
|
// Existing Components
|
|
37
|
-
export { Button, ButtonText } from './Button'
|
|
38
|
-
export type { ButtonProps, ButtonTextProps } from './Button'
|
|
40
|
+
export { Button, ButtonText, GhostButton } from './Button'
|
|
41
|
+
export type { ButtonProps, ButtonTextProps, GhostButtonProps } from './Button'
|
|
39
42
|
|
|
40
43
|
export { Select } from './Select'
|
|
41
44
|
|
|
@@ -69,6 +72,8 @@ export {
|
|
|
69
72
|
ExternalLinkIcon,
|
|
70
73
|
ExportIcon,
|
|
71
74
|
ClearIcon,
|
|
72
|
-
CloseIcon
|
|
75
|
+
CloseIcon,
|
|
76
|
+
EllipsisIcon,
|
|
77
|
+
CircleIcon
|
|
73
78
|
} from '../icons'
|
|
74
79
|
|
package/src/v2/icons/index.tsx
CHANGED
|
@@ -207,5 +207,19 @@ export const CloseIcon = ({width = 24, height = 24, ...props
|
|
|
207
207
|
</svg>
|
|
208
208
|
)
|
|
209
209
|
|
|
210
|
+
export const EllipsisIcon = ({ width = 32, height = 32, fill = 'black', ...props }: React.SVGProps<SVGSVGElement> & { width?: number; height?: number; fill?: string } = {}) => (
|
|
211
|
+
<svg width={width} height={height} viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg" {...props}>
|
|
212
|
+
<circle cx="8" cy="16" r="3" fill={fill} />
|
|
213
|
+
<circle cx="16" cy="16" r="3" fill={fill} />
|
|
214
|
+
<circle cx="24" cy="16" r="3" fill={fill} />
|
|
215
|
+
</svg>
|
|
216
|
+
)
|
|
217
|
+
|
|
218
|
+
export const CircleIcon = ({ width = 32, height = 32, fill = 'var(--surface-action-soft)', className = '', ...props }: React.SVGProps<SVGSVGElement> & { width?: number; height?: number; fill?: string } = {}) => (
|
|
219
|
+
<svg width={width} height={height} viewBox="0 0 32 32" fill="none" className={className} xmlns="http://www.w3.org/2000/svg" {...props}>
|
|
220
|
+
<circle cx="16" cy="16" r="16" fill={fill} />
|
|
221
|
+
</svg>
|
|
222
|
+
)
|
|
223
|
+
|
|
210
224
|
|
|
211
225
|
|