@bundle-stats/ui 4.13.0-beta.8 → 4.13.0-beta.9

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 (63) hide show
  1. package/lib/components/bundle-modules/bundle-modules.js +2 -1
  2. package/lib/components/bundle-modules/bundle-modules.js.map +1 -1
  3. package/lib/components/metrics-display-selector/metrics-display-selector.js +2 -2
  4. package/lib/components/metrics-display-selector/metrics-display-selector.js.map +1 -1
  5. package/lib/components/metrics-table-header/metrics-table-header.js +7 -7
  6. package/lib/components/metrics-table-header/metrics-table-header.js.map +1 -1
  7. package/lib/components/metrics-table-header/metrics-table-header.module.css +11 -4
  8. package/lib/components/metrics-table-options/metrics-table-options.js +2 -2
  9. package/lib/components/metrics-table-options/metrics-table-options.js.map +1 -1
  10. package/lib/components/metrics-table-title/metrics-table-title.js +1 -1
  11. package/lib/components/metrics-table-title/metrics-table-title.js.map +1 -1
  12. package/lib/components/metrics-table-title/metrics-table-title.module.css +1 -0
  13. package/lib/components/metrics-treemap/metrics-treemap.js +4 -4
  14. package/lib/components/metrics-treemap/metrics-treemap.js.map +1 -1
  15. package/lib/components/metrics-treemap/metrics-treemap.module.css +1 -1
  16. package/lib/ui/dropdown/dropdown.js +9 -39
  17. package/lib/ui/dropdown/dropdown.js.map +1 -1
  18. package/lib/ui/dropdown/index.js.map +1 -1
  19. package/lib/ui/filters/filters.js +32 -34
  20. package/lib/ui/filters/filters.js.map +1 -1
  21. package/lib/ui/filters/filters.module.css +48 -67
  22. package/lib-esm/components/bundle-modules/bundle-modules.js +2 -1
  23. package/lib-esm/components/bundle-modules/bundle-modules.js.map +1 -1
  24. package/lib-esm/components/metrics-display-selector/metrics-display-selector.js +2 -2
  25. package/lib-esm/components/metrics-display-selector/metrics-display-selector.js.map +1 -1
  26. package/lib-esm/components/metrics-table-header/metrics-table-header.js +7 -7
  27. package/lib-esm/components/metrics-table-header/metrics-table-header.js.map +1 -1
  28. package/lib-esm/components/metrics-table-header/metrics-table-header.module.css +11 -4
  29. package/lib-esm/components/metrics-table-options/metrics-table-options.js +3 -3
  30. package/lib-esm/components/metrics-table-options/metrics-table-options.js.map +1 -1
  31. package/lib-esm/components/metrics-table-title/metrics-table-title.js +1 -1
  32. package/lib-esm/components/metrics-table-title/metrics-table-title.js.map +1 -1
  33. package/lib-esm/components/metrics-table-title/metrics-table-title.module.css +1 -0
  34. package/lib-esm/components/metrics-treemap/metrics-treemap.js +4 -4
  35. package/lib-esm/components/metrics-treemap/metrics-treemap.js.map +1 -1
  36. package/lib-esm/components/metrics-treemap/metrics-treemap.module.css +1 -1
  37. package/lib-esm/ui/dropdown/dropdown.js +7 -38
  38. package/lib-esm/ui/dropdown/dropdown.js.map +1 -1
  39. package/lib-esm/ui/dropdown/index.js.map +1 -1
  40. package/lib-esm/ui/filters/filters.js +33 -35
  41. package/lib-esm/ui/filters/filters.js.map +1 -1
  42. package/lib-esm/ui/filters/filters.module.css +48 -67
  43. package/package.json +5 -5
  44. package/src/components/bundle-modules/bundle-modules.tsx +3 -2
  45. package/src/components/metrics-display-selector/metrics-display-selector.tsx +4 -4
  46. package/src/components/metrics-table-header/metrics-table-header.module.css +11 -4
  47. package/src/components/metrics-table-header/metrics-table-header.tsx +7 -7
  48. package/src/components/metrics-table-options/metrics-table-options.jsx +4 -10
  49. package/src/components/metrics-table-title/metrics-table-title.jsx +1 -1
  50. package/src/components/metrics-table-title/metrics-table-title.module.css +1 -0
  51. package/src/components/metrics-treemap/metrics-treemap.module.css +1 -1
  52. package/src/components/metrics-treemap/metrics-treemap.tsx +4 -3
  53. package/src/ui/dropdown/dropdown.stories.tsx +25 -0
  54. package/src/ui/dropdown/dropdown.tsx +67 -0
  55. package/src/ui/filters/filters.module.css +48 -67
  56. package/src/ui/filters/filters.stories.tsx +109 -0
  57. package/src/ui/filters/filters.tsx +128 -166
  58. package/types/components/metrics-display-selector/metrics-display-selector.d.ts +2 -2
  59. package/types/ui/dropdown/dropdown.d.ts +13 -47
  60. package/types/ui/dropdown/index.d.ts +1 -1
  61. package/types/ui/filters/filters.d.ts +2 -7
  62. package/src/ui/dropdown/dropdown.jsx +0 -88
  63. /package/src/ui/dropdown/{index.js → index.ts} +0 -0
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import { MetricsDisplayType } from '../../constants';
3
- import { FlexStack } from '../../layout/flex-stack';
3
+ import { ControlGroup } from '../../ui/control-group';
4
4
  interface MetricsDisplaySelectorProps {
5
5
  value: MetricsDisplayType;
6
6
  onSelect: (newValue: MetricsDisplayType) => void;
7
7
  }
8
- export declare const MetricsDisplaySelector: (props: MetricsDisplaySelectorProps & Omit<React.ComponentProps<typeof FlexStack>, 'onSelect' | 'value'>) => React.JSX.Element;
8
+ export declare const MetricsDisplaySelector: (props: MetricsDisplaySelectorProps & Omit<React.ComponentProps<typeof ControlGroup>, 'onSelect' | 'value'>) => React.JSX.Element;
9
9
  export {};
@@ -1,50 +1,16 @@
1
- export function Dropdown(props: any): React.JSX.Element;
2
- export namespace Dropdown {
3
- export namespace defaultProps {
4
- let className: string;
5
- let buttonClassName: string;
6
- let label: null;
7
- let ariaLabel: string;
8
- let glyph: null;
9
- let disabled: boolean;
10
- }
11
- export namespace propTypes {
12
- let className_1: PropTypes.Requireable<string>;
13
- export { className_1 as className };
14
- let buttonClassName_1: PropTypes.Requireable<string>;
15
- export { buttonClassName_1 as buttonClassName };
16
- let label_1: PropTypes.Requireable<PropTypes.ReactNodeLike>;
17
- export { label_1 as label };
18
- let ariaLabel_1: PropTypes.Requireable<string>;
19
- export { ariaLabel_1 as ariaLabel };
20
- let glyph_1: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
21
- export { glyph_1 as glyph };
22
- let disabled_1: PropTypes.Requireable<boolean>;
23
- export { disabled_1 as disabled };
24
- export let children: PropTypes.Validator<NonNullable<NonNullable<string | PropTypes.ReactElementLike | ((...args: any[]) => any) | null | undefined>>>;
25
- }
26
- export { Item };
27
- }
28
1
  import React from 'react';
29
- import PropTypes from 'prop-types';
30
- declare function Item({ className, isActive, ...restProps }: {
31
- [x: string]: any;
32
- className?: string | undefined;
33
- isActive?: boolean | undefined;
34
- }): React.JSX.Element;
35
- declare namespace Item {
36
- export namespace propTypes_1 {
37
- let className_2: PropTypes.Requireable<string>;
38
- export { className_2 as className };
39
- export let isActive: PropTypes.Requireable<boolean>;
40
- }
41
- export { propTypes_1 as propTypes };
42
- export namespace defaultProps_1 {
43
- let className_3: string;
44
- export { className_3 as className };
45
- let isActive_1: boolean;
46
- export { isActive_1 as isActive };
47
- }
48
- export { defaultProps_1 as defaultProps };
2
+ import { MenuItem } from 'ariakit/menu';
3
+ interface DropdownItemProps {
4
+ isActive?: boolean;
5
+ }
6
+ export declare const DropdownItem: (props: DropdownItemProps & React.ComponentProps<typeof MenuItem>) => React.JSX.Element;
7
+ interface DropdownProps {
8
+ buttonClassName?: string;
9
+ dropdownClassName?: string;
10
+ label?: React.ReactNode;
11
+ ariaLabel?: string;
12
+ glyph?: string;
13
+ disabled?: boolean;
49
14
  }
15
+ export declare const Dropdown: (props: DropdownProps & React.ComponentProps<'div'>) => React.JSX.Element;
50
16
  export {};
@@ -1 +1 @@
1
- export * from "./dropdown";
1
+ export * from './dropdown';
@@ -1,18 +1,13 @@
1
1
  import React from 'react';
2
2
  import type { FilterFieldsData, FilterGroupFieldData } from '../../types';
3
- interface FilterProps extends React.ComponentProps<'input'> {
4
- as?: React.ElementType;
5
- buttonClassName?: string;
3
+ interface FilterBooleanProps extends React.ComponentProps<'input'> {
6
4
  label: string;
7
- name: string;
8
- getOnOnlyClick?: (name: string) => () => void;
9
5
  }
10
6
  interface FilterGroupProps extends React.ComponentProps<'div'> {
11
- buttonClassName?: string;
12
7
  groupKey: string;
13
8
  data: FilterGroupFieldData;
14
9
  values: Record<string, boolean>;
15
- onCheckboxChange: FilterProps['onChange'];
10
+ onCheckboxChange: FilterBooleanProps['onChange'];
16
11
  toggleFilters: (newFilters: Record<string, boolean>) => void;
17
12
  }
18
13
  interface FiltersProps extends React.ComponentProps<'div'> {
@@ -1,88 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import cx from 'classnames';
4
- import { Menu, MenuButton, MenuItem, useMenuState } from 'ariakit/menu';
5
-
6
- import { Button, BUTTON_SIZE } from '../button';
7
- import css from './dropdown.module.css';
8
-
9
- const Item = ({ className = '', isActive = false, ...restProps }) => (
10
- <MenuItem className={cx(css.item, className, isActive && css.itemActive)} {...restProps} />
11
- );
12
-
13
- Item.propTypes = {
14
- className: PropTypes.string,
15
- isActive: PropTypes.bool,
16
- };
17
-
18
- Item.defaultProps = {
19
- className: '',
20
- isActive: false,
21
- };
22
-
23
- export const Dropdown = (props) => {
24
- const { className, buttonClassName, label, ariaLabel, glyph, disabled, children } = props;
25
- const rootClassName = cx(css.root, className);
26
- const menuState = useMenuState();
27
-
28
- return (
29
- <div className={rootClassName}>
30
- <MenuButton
31
- as={Button}
32
- outline
33
- size={BUTTON_SIZE.SMALL}
34
- glyph={glyph}
35
- disabled={disabled}
36
- state={menuState}
37
- tabIndex={null}
38
- className={cx(css.button, buttonClassName)}
39
- >
40
- {label}
41
- </MenuButton>
42
- <Menu state={menuState} aria-label={ariaLabel || label} className={css.dropdown}>
43
- {typeof children === 'function'
44
- ? children({
45
- MenuItem: Item,
46
- menu: menuState,
47
- menuItemClassName: css.item,
48
- menuItemActiveClassName: css.itemActive,
49
- })
50
- : children}
51
- </Menu>
52
- </div>
53
- );
54
- };
55
-
56
- Dropdown.defaultProps = {
57
- className: '',
58
- buttonClassName: '',
59
- label: null,
60
- ariaLabel: '',
61
- glyph: null,
62
- disabled: false,
63
- };
64
-
65
- Dropdown.propTypes = {
66
- /** Adopted child class name */
67
- className: PropTypes.string,
68
-
69
- /** Button adopted child class name */
70
- buttonClassName: PropTypes.string,
71
-
72
- /** Button label */
73
- label: PropTypes.node,
74
-
75
- /** Aria label */
76
- ariaLabel: PropTypes.string,
77
-
78
- /** Icon glyph */
79
- glyph: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
80
-
81
- /** Dropdown button disabled attribute */
82
- disabled: PropTypes.bool,
83
-
84
- /** Content */
85
- children: PropTypes.oneOfType([PropTypes.string, PropTypes.element, PropTypes.func]).isRequired,
86
- };
87
-
88
- Dropdown.Item = Item;
File without changes