@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.
Files changed (73) hide show
  1. package/dist/Maintenance/MaintenancePage.js +1 -0
  2. package/dist/index.js +3 -1
  3. package/dist/v2/components/ActionMenu/ActionMenu.d.ts.map +1 -1
  4. package/dist/v2/components/ActionMenu/ActionMenu.js +60 -8
  5. package/dist/v2/components/ActionMenu/ActionMenu.scss.js +1 -1
  6. package/dist/v2/components/Badge/Badge.d.ts.map +1 -1
  7. package/dist/v2/components/Badge/Badge.js +1 -1
  8. package/dist/v2/components/Badge/Badge.scss.js +1 -1
  9. package/dist/v2/components/Button/Button.d.ts +1 -1
  10. package/dist/v2/components/Button/Button.d.ts.map +1 -1
  11. package/dist/v2/components/Button/Button.js +1 -0
  12. package/dist/v2/components/Button/GhostButton.scss.js +1 -1
  13. package/dist/v2/components/Button/index.d.ts +2 -0
  14. package/dist/v2/components/Button/index.d.ts.map +1 -1
  15. package/dist/v2/components/FormField/FormField.d.ts.map +1 -1
  16. package/dist/v2/components/Modal/DeleteModal.d.ts.map +1 -1
  17. package/dist/v2/components/Modal/DeleteModal.js +4 -0
  18. package/dist/v2/components/NPSScore/NPSScore.js +1 -0
  19. package/dist/v2/components/NewInput/NewInput.d.ts.map +1 -1
  20. package/dist/v2/components/NewInput/NewInput.js +8 -0
  21. package/dist/v2/components/NewPageHeader/NewPageHeader.d.ts +2 -1
  22. package/dist/v2/components/NewPageHeader/NewPageHeader.d.ts.map +1 -1
  23. package/dist/v2/components/NewPageHeader/NewPageHeader.js +3 -2
  24. package/dist/v2/components/NewPageHeader/NewPageHeader.scss.js +1 -1
  25. package/dist/v2/components/NewTable/NewTable.d.ts.map +1 -1
  26. package/dist/v2/components/NewTable/NewTable.js +1 -0
  27. package/dist/v2/components/NewTable/NewTable.scss.js +1 -1
  28. package/dist/v2/components/Pagination/Pagination.js +1 -4
  29. package/dist/v2/components/Pagination/Pagination.scss.js +1 -1
  30. package/dist/v2/components/QuickFilter/QuickFilter.d.ts.map +1 -1
  31. package/dist/v2/components/QuickFilter/QuickFilter.js +5 -2
  32. package/dist/v2/components/QuickFilter/QuickFilter.scss.js +1 -1
  33. package/dist/v2/components/SectionHeader/SectionHeader.d.ts.map +1 -1
  34. package/dist/v2/components/TableSortIcon/TableSortIcon.d.ts +9 -0
  35. package/dist/v2/components/TableSortIcon/TableSortIcon.d.ts.map +1 -0
  36. package/dist/v2/components/TableSortIcon/TableSortIcon.js +14 -0
  37. package/dist/v2/components/TableSortIcon/index.d.ts +2 -0
  38. package/dist/v2/components/TableSortIcon/index.d.ts.map +1 -0
  39. package/dist/v2/components/WYSIWYGEditor/Icons.js +2 -2
  40. package/dist/v2/components/index.d.ts +5 -3
  41. package/dist/v2/components/index.d.ts.map +1 -1
  42. package/dist/v2/icons/index.d.ts +10 -0
  43. package/dist/v2/icons/index.d.ts.map +1 -1
  44. package/dist/v2/icons/index.js +61 -1
  45. package/dist/v2/pages/Settings/components/SidebarCustomisation.js +2 -3
  46. package/dist/v2/pages/Settings/components/SidebarNavItem.js +2 -2
  47. package/package.json +1 -1
  48. package/src/v2/components/ActionMenu/ActionMenu.scss +22 -5
  49. package/src/v2/components/ActionMenu/ActionMenu.tsx +53 -5
  50. package/src/v2/components/Badge/Badge.scss +13 -0
  51. package/src/v2/components/Badge/Badge.tsx +10 -8
  52. package/src/v2/components/Button/Button.tsx +13 -2
  53. package/src/v2/components/Button/GhostButton.scss +11 -1
  54. package/src/v2/components/Button/index.ts +2 -0
  55. package/src/v2/components/Customer/CustomersList.scss +72 -115
  56. package/src/v2/components/FormField/FormField.tsx +19 -21
  57. package/src/v2/components/Modal/DeleteModal.tsx +4 -2
  58. package/src/v2/components/NewInput/NewInput.tsx +13 -1
  59. package/src/v2/components/NewPageHeader/NewPageHeader.scss +8 -5
  60. package/src/v2/components/NewPageHeader/NewPageHeader.tsx +21 -21
  61. package/src/v2/components/NewTable/NewTable.scss +17 -1
  62. package/src/v2/components/NewTable/NewTable.tsx +1 -0
  63. package/src/v2/components/Pagination/Pagination.scss +18 -18
  64. package/src/v2/components/Pagination/Pagination.tsx +1 -1
  65. package/src/v2/components/QuickFilter/QuickFilter.scss +17 -34
  66. package/src/v2/components/QuickFilter/QuickFilter.tsx +7 -5
  67. package/src/v2/components/SectionHeader/SectionHeader.tsx +5 -7
  68. package/src/v2/components/TableSortIcon/TableSortIcon.tsx +20 -0
  69. package/src/v2/components/TableSortIcon/index.ts +1 -0
  70. package/src/v2/components/WYSIWYGEditor/Icons.tsx +2 -2
  71. package/src/v2/components/index.ts +8 -3
  72. package/src/v2/icons/index.tsx +14 -0
  73. package/src/v2/pages/Settings/components/SidebarCustomisation.tsx +1 -1
@@ -150,14 +150,14 @@ var DividerIcon = function() {
150
150
  cy: "12",
151
151
  r: "0.75",
152
152
  fill: "#626A90",
153
- "fill-opacity": "0.5"
153
+ fillOpacity: "0.5"
154
154
  }),
155
155
  /*#__PURE__*/ jsx("circle", {
156
156
  cx: "2.25",
157
157
  cy: "12",
158
158
  r: "0.75",
159
159
  fill: "#626A90",
160
- "fill-opacity": "0.5"
160
+ fillOpacity: "0.5"
161
161
  })
162
162
  ]
163
163
  });
@@ -4,6 +4,8 @@ export { QuickFilter } from './QuickFilter';
4
4
  export type { QuickFilterProps, QuickFilterOption } from './QuickFilter';
5
5
  export { NewTable } from './NewTable';
6
6
  export type { NewTableProps, NewTableColumn } from './NewTable';
7
+ export { TableSortIcon } from './TableSortIcon';
8
+ export type { TableSortIconProps } from './TableSortIcon';
7
9
  export { ActionMenu } from './ActionMenu';
8
10
  export type { ActionMenuProps, ActionMenuItem } from './ActionMenu';
9
11
  export { DeleteModal } from './Modal';
@@ -20,8 +22,8 @@ export { NewPageHeader } from './NewPageHeader';
20
22
  export type { NewPageHeaderProps } from './NewPageHeader';
21
23
  export { SectionHeader } from './SectionHeader';
22
24
  export type { SectionHeaderProps } from './SectionHeader';
23
- export { Button, ButtonText } from './Button';
24
- export type { ButtonProps, ButtonTextProps } from './Button';
25
+ export { Button, ButtonText, GhostButton } from './Button';
26
+ export type { ButtonProps, ButtonTextProps, GhostButtonProps } from './Button';
25
27
  export { Select } from './Select';
26
28
  export { Tooltip } from './Tooltip';
27
29
  export { UserAvatar } from './UserAvatar';
@@ -31,5 +33,5 @@ export { Alert } from './Alert';
31
33
  export { NPSScore } from './NPSScore';
32
34
  export { Pagination } from './Pagination';
33
35
  export type { PaginationProps } from './Pagination';
34
- export { InfoIcon, ArrowUpIcon, ArrowDownIcon, EditIcon, ArrowLeftIcon, ArrowRightIcon, SearchIcon, RefreshIcon, SendIcon, ExternalLinkIcon, ExportIcon, ClearIcon, CloseIcon } from '../icons';
36
+ export { InfoIcon, ArrowUpIcon, ArrowDownIcon, EditIcon, ArrowLeftIcon, ArrowRightIcon, SearchIcon, RefreshIcon, SendIcon, ExternalLinkIcon, ExportIcon, ClearIcon, CloseIcon, EllipsisIcon, CircleIcon } from '../icons';
35
37
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v2/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAG/D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrC,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAG/C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAGzD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC7C,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE5D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAG7C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAE/B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAGnD,OAAO,EACL,QAAQ,EACR,WAAW,EACX,aAAa,EACb,QAAQ,EACR,aAAa,EACb,cAAc,EACd,UAAU,EACV,WAAW,EACX,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,SAAS,EACV,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v2/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAGzD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrC,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAG/C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAGzD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC1D,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAE9E,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAG7C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAE/B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAGnD,OAAO,EACL,QAAQ,EACR,WAAW,EACX,aAAa,EACb,QAAQ,EACR,aAAa,EACb,cAAc,EACd,UAAU,EACV,WAAW,EACX,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,SAAS,EACT,YAAY,EACZ,UAAU,EACX,MAAM,UAAU,CAAA"}
@@ -51,4 +51,14 @@ export declare const CloseIcon: ({ width, height, ...props }: React.SVGProps<SVG
51
51
  width?: number;
52
52
  height?: number;
53
53
  }) => import("react/jsx-runtime").JSX.Element;
54
+ export declare const EllipsisIcon: ({ width, height, fill, ...props }?: React.SVGProps<SVGSVGElement> & {
55
+ width?: number;
56
+ height?: number;
57
+ fill?: string;
58
+ }) => import("react/jsx-runtime").JSX.Element;
59
+ export declare const CircleIcon: ({ width, height, fill, className, ...props }?: React.SVGProps<SVGSVGElement> & {
60
+ width?: number;
61
+ height?: number;
62
+ fill?: string;
63
+ }) => import("react/jsx-runtime").JSX.Element;
54
64
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v2/icons/index.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,+CAOzB,CAAA;AAED,eAAO,MAAM,WAAW,+CAIvB,CAAA;AAED,eAAO,MAAM,SAAS,+CAKrB,CAAA;AAED,eAAO,MAAM,aAAa,+CAIzB,CAAA;AAED,eAAO,MAAM,SAAS,+CAIrB,CAAA;AAED,eAAO,MAAM,WAAW,+CAIvB,CAAA;AAED,eAAO,MAAM,aAAa,+CAIzB,CAAA;AAED,eAAO,MAAM,WAAW,+CAIvB,CAAA;AAED,eAAO,MAAM,aAAa,+CAIzB,CAAA;AAED,eAAO,MAAM,YAAY,+CAIxB,CAAA;AAED,eAAO,MAAM,YAAY,+CAIxB,CAAA;AAED,eAAO,MAAM,WAAW,+CAIvB,CAAA;AAED,eAAO,MAAM,WAAW,+CAIvB,CAAA;AAED,eAAO,MAAM,YAAY,+CAIxB,CAAA;AAED,eAAO,MAAM,YAAY,+CAIxB,CAAA;AAED,eAAO,MAAM,gBAAgB,+CAI5B,CAAA;AAED,eAAO,MAAM,QAAQ,+CAMpB,CAAA;AAED,eAAO,MAAM,iBAAiB,+CAI7B,CAAA;AAED,eAAO,MAAM,UAAU,+CAItB,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,oBAA6B,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,4CAIhI,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,oBAA6B,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,4CAI7H,CAAA;AAED,eAAO,MAAM,gBAAgB,+CAI5B,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,oBAA6B,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,4CAI/H,CAAA;AAED,eAAO,MAAM,SAAS,+CAKrB,CAAA;AAED,eAAO,MAAM,eAAe,+CAK3B,CAAA;AAED,eAAO,MAAM,gBAAgB,+CAK5B,CAAA;AAED,eAAO,MAAM,cAAc,GAAM,oBAA6B;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,4CAIrG,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,oBAA6B;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,4CAIlG,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,oBAA6B;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,4CAI7F,CAAA;AAED,eAAO,MAAM,WAAW,+CAIvB,CAAA;AAED,eAAO,MAAM,aAAa,+CAIzB,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,6BACvB,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,4CAWrE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v2/icons/index.tsx"],"names":[],"mappings":"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"}
@@ -403,5 +403,65 @@ var CloseIcon = function(_param) {
403
403
  ]
404
404
  }));
405
405
  };
406
+ var EllipsisIcon = function() {
407
+ var _param = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
408
+ var _param_width = _param.width, width = _param_width === void 0 ? 32 : _param_width, _param_height = _param.height, height = _param_height === void 0 ? 32 : _param_height, _param_fill = _param.fill, fill = _param_fill === void 0 ? 'black' : _param_fill, props = _object_without_properties(_param, [
409
+ "width",
410
+ "height",
411
+ "fill"
412
+ ]);
413
+ return /*#__PURE__*/ jsxs("svg", _object_spread_props(_object_spread({
414
+ width: width,
415
+ height: height,
416
+ viewBox: "0 0 32 32",
417
+ fill: "none",
418
+ xmlns: "http://www.w3.org/2000/svg"
419
+ }, props), {
420
+ children: [
421
+ /*#__PURE__*/ jsx("circle", {
422
+ cx: "8",
423
+ cy: "16",
424
+ r: "3",
425
+ fill: fill
426
+ }),
427
+ /*#__PURE__*/ jsx("circle", {
428
+ cx: "16",
429
+ cy: "16",
430
+ r: "3",
431
+ fill: fill
432
+ }),
433
+ /*#__PURE__*/ jsx("circle", {
434
+ cx: "24",
435
+ cy: "16",
436
+ r: "3",
437
+ fill: fill
438
+ })
439
+ ]
440
+ }));
441
+ };
442
+ var CircleIcon = function() {
443
+ var _param = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
444
+ var _param_width = _param.width, width = _param_width === void 0 ? 32 : _param_width, _param_height = _param.height, height = _param_height === void 0 ? 32 : _param_height, _param_fill = _param.fill, fill = _param_fill === void 0 ? 'var(--surface-action-soft)' : _param_fill, _param_className = _param.className, className = _param_className === void 0 ? '' : _param_className, props = _object_without_properties(_param, [
445
+ "width",
446
+ "height",
447
+ "fill",
448
+ "className"
449
+ ]);
450
+ return /*#__PURE__*/ jsx("svg", _object_spread_props(_object_spread({
451
+ width: width,
452
+ height: height,
453
+ viewBox: "0 0 32 32",
454
+ fill: "none",
455
+ className: className,
456
+ xmlns: "http://www.w3.org/2000/svg"
457
+ }, props), {
458
+ children: /*#__PURE__*/ jsx("circle", {
459
+ cx: "16",
460
+ cy: "16",
461
+ r: "16",
462
+ fill: fill
463
+ })
464
+ }));
465
+ };
406
466
 
407
- export { ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpIcon, BookingTypesIcon, BookingsIcon, CalendarIcon, ClearIcon, CloseIcon, CustomersIcon, EditIcon, ExportIcon, ExternalLinkIcon, InfoIcon, LoyaltyIcon, MarketingIcon, RefreshIcon, SearchIcon, SendIcon, SettingsIcon, WaiversIcon };
467
+ export { ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpIcon, BookingTypesIcon, BookingsIcon, CalendarIcon, CircleIcon, ClearIcon, CloseIcon, CustomersIcon, EditIcon, EllipsisIcon, ExportIcon, ExternalLinkIcon, InfoIcon, LoyaltyIcon, MarketingIcon, RefreshIcon, SearchIcon, SendIcon, SettingsIcon, WaiversIcon };
@@ -4,16 +4,16 @@ import { SidebarNavItem } from './SidebarNavItem.js';
4
4
  import './SidebarCustomisation.scss.js';
5
5
  import { CalendarIcon, BookingsIcon, BookingTypesIcon, LoyaltyIcon, CustomersIcon, MarketingIcon, WaiversIcon, SettingsIcon, EditIcon } from '../../../icons/index.js';
6
6
  import '../../../components/Badge/Badge.scss.js';
7
+ import { Button } from '../../../components/Button/Button.js';
8
+ import { GhostButton } from '../../../components/Button/GhostButton.js';
7
9
  import '../../../components/QuickFilter/QuickFilter.scss.js';
8
10
  import '../../../components/NewTable/NewTable.scss.js';
9
- import 'react-icons/fa';
10
11
  import '../../../components/ActionMenu/ActionMenu.scss.js';
11
12
  import '../../../components/Modal/DeleteModal.scss.js';
12
13
  import '../../../components/NewInput/NewInput.js';
13
14
  import '../../../components/FormField/FormField.js';
14
15
  import '../../../components/Checkbox/Checkbox.js';
15
16
  import '../../../components/WYSIWYGEditor/WYSIWYGEditor.scss.js';
16
- import { Button } from '../../../components/Button/Button.js';
17
17
  import '../../../components/NewPageHeader/NewPageHeader.scss.js';
18
18
  import '../../../components/SectionHeader/SectionHeader.scss.js';
19
19
  import '../../../components/Select/Select.scss.js';
@@ -24,7 +24,6 @@ import '../../../components/EntityHeader/EntityHeader.scss.js';
24
24
  import '../../../components/Alert/Alert.scss.js';
25
25
  import '../../../components/NPSScore/NPSScore.scss.js';
26
26
  import '../../../components/Pagination/Pagination.scss.js';
27
- import { GhostButton } from '../../../components/Button/GhostButton.js';
28
27
 
29
28
  function _array_like_to_array(arr, len) {
30
29
  if (len == null || len > arr.length) len = arr.length;
@@ -1,16 +1,16 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import 'react';
3
3
  import '../../../components/Badge/Badge.scss.js';
4
+ import '../../../components/Button/Button.scss.js';
5
+ import '../../../components/Button/GhostButton.scss.js';
4
6
  import '../../../components/QuickFilter/QuickFilter.scss.js';
5
7
  import '../../../components/NewTable/NewTable.scss.js';
6
- import 'react-icons/fa';
7
8
  import '../../../components/ActionMenu/ActionMenu.scss.js';
8
9
  import '../../../components/Modal/DeleteModal.scss.js';
9
10
  import '../../../components/NewInput/NewInput.js';
10
11
  import { FormField } from '../../../components/FormField/FormField.js';
11
12
  import '../../../components/Checkbox/Checkbox.js';
12
13
  import '../../../components/WYSIWYGEditor/WYSIWYGEditor.scss.js';
13
- import '../../../components/Button/Button.scss.js';
14
14
  import '../../../components/NewPageHeader/NewPageHeader.scss.js';
15
15
  import '../../../components/SectionHeader/SectionHeader.scss.js';
16
16
  import '../../../components/Select/Select.scss.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@licklist/design",
3
- "version": "0.78.5-dev.58",
3
+ "version": "0.78.5-dev.59",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+ssh://git@bitbucket.org/bookedit-licklist/licklist_design.git"
@@ -7,8 +7,8 @@
7
7
 
8
8
  &__trigger {
9
9
  display: flex;
10
- width: 32px;
11
- height: 32px;
10
+ width: 40px;
11
+ height: 40px;
12
12
  padding: 8px;
13
13
  justify-content: center;
14
14
  align-items: center;
@@ -34,14 +34,23 @@
34
34
  }
35
35
 
36
36
  svg {
37
- width: 16px;
38
- height: 16px;
37
+ width: 28px;
38
+ height: 28px;
39
+ }
40
+
41
+ .action-menu__circle {
42
+ position: absolute;
43
+ top: 50%;
44
+ left: 50%;
45
+ transform: translate(-50%, -50%);
46
+ width: 32px;
47
+ height: 32px;
48
+ z-index: -1;
39
49
  }
40
50
  }
41
51
 
42
52
  &__dropdown {
43
53
  position: absolute;
44
- bottom: calc(100% + 4px);
45
54
  right: 0;
46
55
  z-index: 1000;
47
56
  display: flex;
@@ -53,6 +62,14 @@
53
62
  box-shadow: 0 4px 20px 0 rgba(18, 30, 82, 0.15);
54
63
  overflow: hidden;
55
64
  border: 1px solid var(--border-primary, #E8E9EF);
65
+
66
+ &--bottom {
67
+ top: calc(100% + 4px);
68
+ }
69
+
70
+ &--top {
71
+ bottom: calc(100% + 4px);
72
+ }
56
73
  }
57
74
 
58
75
 
@@ -1,6 +1,5 @@
1
- import React, { useState, useRef, useEffect } from 'react'
2
- import { FaEllipsisH } from 'react-icons/fa'
3
- import { CloseIcon } from '../../icons'
1
+ import React, { useState, useRef, useEffect, useLayoutEffect } from 'react'
2
+ import { CloseIcon, EllipsisIcon, CircleIcon } from '../../icons'
4
3
  import './ActionMenu.scss'
5
4
 
6
5
  export interface ActionMenuItem {
@@ -17,7 +16,44 @@ export interface ActionMenuProps {
17
16
 
18
17
  export const ActionMenu: React.FC<ActionMenuProps> = ({ items, className = '', iconColour = '' }) => {
19
18
  const [isOpen, setIsOpen] = useState(false)
19
+ const [placement, setPlacement] = useState<'top' | 'bottom'>('bottom')
20
20
  const menuRef = useRef<HTMLDivElement>(null)
21
+ const dropdownRef = useRef<HTMLDivElement>(null)
22
+
23
+ useLayoutEffect(() => {
24
+ if (isOpen && menuRef.current && dropdownRef.current) {
25
+ const menuRect = menuRef.current.getBoundingClientRect()
26
+ const dropdownRect = dropdownRef.current.getBoundingClientRect()
27
+ const viewportHeight = window.innerHeight
28
+
29
+ const spaceBelow = viewportHeight - menuRect.bottom
30
+ const spaceAbove = menuRect.top
31
+
32
+ if (spaceBelow < dropdownRect.height && spaceAbove > spaceBelow) {
33
+ setPlacement('top')
34
+ } else {
35
+ setPlacement('bottom')
36
+ }
37
+ }
38
+ }, [isOpen])
39
+
40
+ useEffect(() => {
41
+ const parentRow = menuRef.current?.closest('tr')
42
+ const tableWrapper = menuRef.current?.closest('.new-table-wrapper')
43
+
44
+ if (isOpen) {
45
+ parentRow?.classList.add('action-menu-open')
46
+ tableWrapper?.classList.add('action-menu-open')
47
+ } else {
48
+ parentRow?.classList.remove('action-menu-open')
49
+ tableWrapper?.classList.remove('action-menu-open')
50
+ }
51
+
52
+ return () => {
53
+ parentRow?.classList.remove('action-menu-open')
54
+ tableWrapper?.classList.remove('action-menu-open')
55
+ }
56
+ }, [isOpen])
21
57
 
22
58
  useEffect(() => {
23
59
  const handleClickOutside = (event: MouseEvent) => {
@@ -38,19 +74,31 @@ export const ActionMenu: React.FC<ActionMenuProps> = ({ items, className = '', i
38
74
  return (
39
75
  <div className={`action-menu ${className}`} ref={menuRef}>
40
76
  <button
77
+ type="button"
41
78
  className={`action-menu__trigger ${isOpen ? 'action-menu__trigger--close' : ''}`}
42
79
  onClick={() => setIsOpen(!isOpen)}
43
80
  aria-expanded={isOpen}
44
81
  style={{ color: iconColour }}
45
82
  >
46
- {isOpen ? <CloseIcon width={16} height={16} /> : <FaEllipsisH />}
83
+ {isOpen ? (
84
+ <CloseIcon width={18} height={18} />
85
+ ) : (
86
+ <>
87
+ <CircleIcon width={32} height={32} className="action-menu__circle" fill="var(--surface-action-soft)" />
88
+ <EllipsisIcon width={18} height={18} fill="var(--fill-action)" />
89
+ </>
90
+ )}
47
91
  </button>
48
92
 
49
93
  {isOpen && (
50
- <div className="action-menu__dropdown">
94
+ <div
95
+ ref={dropdownRef}
96
+ className={`action-menu__dropdown action-menu__dropdown--${placement}`}
97
+ >
51
98
  {items.map((item, index) => (
52
99
  <button
53
100
  key={index}
101
+ type="button"
54
102
  className={`action-menu__item action-menu__item--${item.variant || 'default'}`}
55
103
  onClick={() => {
56
104
  item.onClick()
@@ -4,6 +4,11 @@
4
4
  justify-content: center;
5
5
  padding: 2px 12px;
6
6
  border-radius: 100px;
7
+
8
+ &--with-icon {
9
+ padding-left: 8px;
10
+ }
11
+ font-family: var(--font-family-mono, 'Geist Mono', monospace);
7
12
  font-size: var(--text-small-size, 13px);
8
13
  font-weight: 500;
9
14
  line-height: 1.2;
@@ -57,6 +62,10 @@
57
62
  .new-badge {
58
63
  padding: 1px 10px;
59
64
  font-size: 12px;
65
+
66
+ &--with-icon {
67
+ padding-left: 6px;
68
+ }
60
69
  }
61
70
  }
62
71
 
@@ -64,6 +73,10 @@
64
73
  .new-badge {
65
74
  padding: 1px 8px;
66
75
  font-size: 11px;
76
+
77
+ &--with-icon {
78
+ padding-left: 4px;
79
+ }
67
80
  }
68
81
  }
69
82
 
@@ -13,11 +13,13 @@ export const Badge: React.FC<BadgeProps> = ({
13
13
  variant = 'neutral',
14
14
  className = '',
15
15
  icon,
16
- }) => {
17
- return (
18
- <span className={`new-badge new-badge--${variant} ${className}`}>
19
- {icon && <span className="new-badge__icon">{icon}</span>}
20
- {children}
21
- </span>
22
- )
23
- }
16
+ }) => (
17
+ <span
18
+ className={`new-badge new-badge--${variant} ${
19
+ icon ? 'new-badge--with-icon' : ''
20
+ } ${className}`}
21
+ >
22
+ {icon && <span className="new-badge__icon">{icon}</span>}
23
+ {children}
24
+ </span>
25
+ )
@@ -2,14 +2,24 @@ import { ButtonHTMLAttributes } from 'react'
2
2
  import './Button.scss'
3
3
 
4
4
  export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
5
- variant?: 'primary' | 'primary-soft' | 'secondary-soft' | 'tertiary-soft' | 'primary-outline' | 'secondary' | 'destructive-soft' | 'destructive-strong' | 'info' | 'disabled'
5
+ variant?:
6
+ | 'primary'
7
+ | 'primary-soft'
8
+ | 'secondary-soft'
9
+ | 'tertiary-soft'
10
+ | 'primary-outline'
11
+ | 'secondary'
12
+ | 'destructive-soft'
13
+ | 'destructive-strong'
14
+ | 'info'
15
+ | 'disabled'
6
16
  size?: 'sm' | 'md' | 'lg'
7
17
  isLoading?: boolean
8
18
  }
9
19
 
10
20
  export function Button({
11
21
  variant = 'primary',
12
- size = 'md',
22
+ size: _size = 'md',
13
23
  disabled = false,
14
24
  isLoading = false,
15
25
  className = '',
@@ -29,6 +39,7 @@ export function Button({
29
39
 
30
40
  return (
31
41
  <button
42
+ type="button"
32
43
  className={classes}
33
44
  disabled={disabled || isLoading}
34
45
  {...props}
@@ -13,7 +13,7 @@
13
13
  cursor: pointer;
14
14
  transition: background-color 0.2s ease;
15
15
 
16
- &:hover:not(:disabled) {
16
+ &:not(.active):hover:not(:disabled) {
17
17
  background-color: var(--surfaces-main-background-tertiary, #E8E9EF);
18
18
  }
19
19
 
@@ -27,6 +27,16 @@
27
27
  outline-offset: 2px;
28
28
  }
29
29
 
30
+ &.active {
31
+ background-color: var(--fill-primary, #6200EE);
32
+ border-color: var(--border-selected, #121E52);
33
+ color: var(--neutral-white, #FFFFFF);
34
+
35
+ .ghost-button__text {
36
+ color: var(--neutral-white, #FFFFFF);
37
+ }
38
+ }
39
+
30
40
  &--sm {
31
41
  height: 28px;
32
42
  padding: 0 8px 0 8px;
@@ -1,3 +1,5 @@
1
1
  export { Button, ButtonText } from './Button'
2
2
  export type { ButtonProps, ButtonTextProps } from './Button'
3
+ export { GhostButton } from './GhostButton'
4
+ export type { GhostButtonProps } from './GhostButton'
3
5