@bundle-stats/ui 4.17.0-beta.2 → 4.17.0-beta.3

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.
@@ -177,7 +177,7 @@
177
177
  --color-outline-danger: var(--color-red-100);
178
178
 
179
179
  --color-backdrop: rgba(0, 0, 0, 0.05);
180
- --color-shadow: rgba(0, 0, 0, 0.2);
180
+ --color-shadow: rgba(0, 0, 0, 0.25);
181
181
 
182
182
  --transition-duration-in: 0.2s;
183
183
  --transition-duration-out: 0.17s;
@@ -61,7 +61,7 @@
61
61
 
62
62
  /** Width variation */
63
63
  .width--narrow {
64
- max-width: 360px;
64
+ max-width: 480px;
65
65
  }
66
66
 
67
67
  .width--medium {
@@ -69,7 +69,7 @@
69
69
  }
70
70
 
71
71
  .width--wide {
72
- max-width: 1024px;
72
+ max-width: 960px;
73
73
  }
74
74
 
75
75
  .width--extra-wide {
@@ -18,7 +18,7 @@
18
18
 
19
19
  .hoverCard {
20
20
  z-index: var(--layer-xxhigh);
21
- padding: var(--space-xsmall) var(--space-small);
21
+ padding: var(--space-small);
22
22
  border-radius: var(--radius-medium);
23
23
  width: calc(100vw - 2 * var(--space-small));
24
24
  max-width: 340px;
@@ -0,0 +1,8 @@
1
+ .customTooltip {
2
+ padding: var(--space-large);
3
+ color: var(--color-danger);
4
+ font-size: var(--size-large);
5
+ text-align: left;
6
+ width: 100vw;
7
+ max-width: 480px;
8
+ }
@@ -177,7 +177,7 @@
177
177
  --color-outline-danger: var(--color-red-100);
178
178
 
179
179
  --color-backdrop: rgba(0, 0, 0, 0.05);
180
- --color-shadow: rgba(0, 0, 0, 0.2);
180
+ --color-shadow: rgba(0, 0, 0, 0.25);
181
181
 
182
182
  --transition-duration-in: 0.2s;
183
183
  --transition-duration-out: 0.17s;
@@ -61,7 +61,7 @@
61
61
 
62
62
  /** Width variation */
63
63
  .width--narrow {
64
- max-width: 360px;
64
+ max-width: 480px;
65
65
  }
66
66
 
67
67
  .width--medium {
@@ -69,7 +69,7 @@
69
69
  }
70
70
 
71
71
  .width--wide {
72
- max-width: 1024px;
72
+ max-width: 960px;
73
73
  }
74
74
 
75
75
  .width--extra-wide {
@@ -18,7 +18,7 @@
18
18
 
19
19
  .hoverCard {
20
20
  z-index: var(--layer-xxhigh);
21
- padding: var(--space-xsmall) var(--space-small);
21
+ padding: var(--space-small);
22
22
  border-radius: var(--radius-medium);
23
23
  width: calc(100vw - 2 * var(--space-small));
24
24
  max-width: 340px;
@@ -0,0 +1,8 @@
1
+ .customTooltip {
2
+ padding: var(--space-large);
3
+ color: var(--color-danger);
4
+ font-size: var(--size-large);
5
+ text-align: left;
6
+ width: 100vw;
7
+ max-width: 480px;
8
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bundle-stats/ui",
3
- "version": "4.17.0-beta.2",
3
+ "version": "4.17.0-beta.3",
4
4
  "description": "UI components for BundleStats projects.",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-esm/index.js",
@@ -74,7 +74,7 @@
74
74
  "react-router-dom": "^5.0.0"
75
75
  },
76
76
  "dependencies": {
77
- "@bundle-stats/utils": "4.17.0-beta.2",
77
+ "@bundle-stats/utils": "4.17.0-beta.3",
78
78
  "ariakit": "2.0.0-next.44",
79
79
  "d3": "7.9.0",
80
80
  "modern-css-reset": "1.4.0",
@@ -82,5 +82,5 @@
82
82
  "snarkdown": "2.0.0",
83
83
  "use-query-params": "2.2.1"
84
84
  },
85
- "gitHead": "f81f1d37f9a616c43a9a4c779830b5fe46c0a72e"
85
+ "gitHead": "dd42ad7ca20c8489980b10c1d15a408121b4b98f"
86
86
  }
@@ -177,7 +177,7 @@
177
177
  --color-outline-danger: var(--color-red-100);
178
178
 
179
179
  --color-backdrop: rgba(0, 0, 0, 0.05);
180
- --color-shadow: rgba(0, 0, 0, 0.2);
180
+ --color-shadow: rgba(0, 0, 0, 0.25);
181
181
 
182
182
  --transition-duration-in: 0.2s;
183
183
  --transition-duration-out: 0.17s;
@@ -61,7 +61,7 @@
61
61
 
62
62
  /** Width variation */
63
63
  .width--narrow {
64
- max-width: 360px;
64
+ max-width: 480px;
65
65
  }
66
66
 
67
67
  .width--medium {
@@ -69,7 +69,7 @@
69
69
  }
70
70
 
71
71
  .width--wide {
72
- max-width: 1024px;
72
+ max-width: 960px;
73
73
  }
74
74
 
75
75
  .width--extra-wide {
@@ -8,60 +8,71 @@ import { Dialog, useDialogState } from '.';
8
8
  const meta: Meta<typeof Dialog> = {
9
9
  title: 'UI/Dialog',
10
10
  component: Dialog,
11
+ argTypes: {
12
+ width: {
13
+ control: {
14
+ type: 'select',
15
+ },
16
+ options: ['narrow', 'medium', 'wide', 'extra-wide'],
17
+ },
18
+ },
11
19
  };
12
20
 
13
21
  export default meta;
14
22
 
15
23
  type Story = StoryObj<typeof meta>;
16
24
 
17
- export const Default: Story = {
18
- render: function DefaultDialog() {
19
- const dialog = useDialogState();
25
+ const DialogComponent = (storyArgs: Story['args']) => {
26
+ const { width } = storyArgs;
27
+ const dialog = useDialogState();
20
28
 
21
- return (
22
- <>
23
- <Button type="button" onClick={dialog.toggle}>
24
- Open
25
- </Button>
26
- <Dialog title="Title" state={dialog}>
27
- <div style={{ maxWidth: 480 }}>
28
- <Dropdown label="Select option">
29
- <DropdownItem>Option 1</DropdownItem>
30
- <DropdownItem>Option 2</DropdownItem>
31
- <DropdownItem>Option 3</DropdownItem>
32
- </Dropdown>
33
- <br />
34
- <br />
35
- {[1, 2, 3].map((item) => (
36
- <Fragment key={item}>
37
- <p>
38
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec vulputate, lectus
39
- vitae tristique facilisis, quam ex vulputate risus, vitae mattis eros diam quis
40
- velit. Pellentesque habitant morbi tristique senectus et netus et malesuada fames
41
- ac turpis egestas. Sed et velit tortor. Suspendisse risus ipsum, convallis
42
- ultricies justo vel, auctor semper est. Sed viverra pulvinar odio eget pharetra.
43
- In eleifend felis nec odio convallis, eleifend rhoncus diam maximus. Cras diam
44
- libero, egestas blandit vestibulum nec, volutpat a mi. Etiam blandit turpis ac
45
- nulla molestie vehicula. Duis bibendum a nisl sollicitudin lobortis. Vestibulum
46
- lobortis eget justo ac elementum. Vestibulum vel lorem arcu. Etiam sagittis luctus
47
- justo eu interdum. Ut lobortis tempus turpis, vitae auctor elit congue id.
48
- </p>
49
- <br />
50
- <p>
51
- Nulla eu ullamcorper quam. Mauris rhoncus tristique dui in rutrum. Ut eget justo a
52
- lorem efficitur consequat. Nunc sed erat at ipsum convallis iaculis at ac lacus.
53
- Etiam pellentesque felis quis maximus ultrices. Vivamus non pretium quam. Aenean
54
- vel nunc fringilla, lacinia felis a, vehicula purus. Vestibulum in varius purus.
55
- Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos
56
- himenaeos. Quisque laoreet ultrices ligula eget iaculis. Vivamus lacinia ante
57
- mattis lorem ultricies consequat. Integer dui odio, semper ac neque vitae,
58
- elementum hendrerit ante. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
59
- </p>
60
- </Fragment>
61
- ))}
62
- </div>
63
- </Dialog>
64
- </>
65
- );
66
- },
29
+ return (
30
+ <>
31
+ <Button type="button" onClick={dialog.toggle}>
32
+ Open
33
+ </Button>
34
+ <Dialog title="Title" state={dialog} width={width}>
35
+ <div>
36
+ <Dropdown label="Select option">
37
+ <DropdownItem>Option 1</DropdownItem>
38
+ <DropdownItem>Option 2</DropdownItem>
39
+ <DropdownItem>Option 3</DropdownItem>
40
+ </Dropdown>
41
+ <br />
42
+ <br />
43
+ {[1, 2, 3].map((item) => (
44
+ <Fragment key={item}>
45
+ <p>
46
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec vulputate, lectus
47
+ vitae tristique facilisis, quam ex vulputate risus, vitae mattis eros diam quis
48
+ velit. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac
49
+ turpis egestas. Sed et velit tortor. Suspendisse risus ipsum, convallis ultricies
50
+ justo vel, auctor semper est. Sed viverra pulvinar odio eget pharetra. In eleifend
51
+ felis nec odio convallis, eleifend rhoncus diam maximus. Cras diam libero, egestas
52
+ blandit vestibulum nec, volutpat a mi. Etiam blandit turpis ac nulla molestie
53
+ vehicula. Duis bibendum a nisl sollicitudin lobortis. Vestibulum lobortis eget justo
54
+ ac elementum. Vestibulum vel lorem arcu. Etiam sagittis luctus justo eu interdum. Ut
55
+ lobortis tempus turpis, vitae auctor elit congue id.
56
+ </p>
57
+ <br />
58
+ <p>
59
+ Nulla eu ullamcorper quam. Mauris rhoncus tristique dui in rutrum. Ut eget justo a
60
+ lorem efficitur consequat. Nunc sed erat at ipsum convallis iaculis at ac lacus.
61
+ Etiam pellentesque felis quis maximus ultrices. Vivamus non pretium quam. Aenean vel
62
+ nunc fringilla, lacinia felis a, vehicula purus. Vestibulum in varius purus. Class
63
+ aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos
64
+ himenaeos. Quisque laoreet ultrices ligula eget iaculis. Vivamus lacinia ante mattis
65
+ lorem ultricies consequat. Integer dui odio, semper ac neque vitae, elementum
66
+ hendrerit ante. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
67
+ </p>
68
+ </Fragment>
69
+ ))}
70
+ </div>
71
+ </Dialog>
72
+ </>
73
+ );
74
+ };
75
+
76
+ export const Default: Story = {
77
+ render: (storyArgs) => <DialogComponent {...storyArgs} />,
67
78
  };
@@ -18,7 +18,7 @@
18
18
 
19
19
  .hoverCard {
20
20
  z-index: var(--layer-xxhigh);
21
- padding: var(--space-xsmall) var(--space-small);
21
+ padding: var(--space-small);
22
22
  border-radius: var(--radius-medium);
23
23
  width: calc(100vw - 2 * var(--space-small));
24
24
  max-width: 340px;
@@ -0,0 +1,8 @@
1
+ .customTooltip {
2
+ padding: var(--space-large);
3
+ color: var(--color-danger);
4
+ font-size: var(--size-large);
5
+ text-align: left;
6
+ width: 100vw;
7
+ max-width: 480px;
8
+ }
@@ -1,30 +1,41 @@
1
- import React from 'react';
2
- import { Story } from '@storybook/react'; // eslint-disable-line
1
+ import type { Meta, StoryObj } from '@storybook/react';
3
2
 
4
- import { getWrapperDecorator } from '../../stories';
5
3
  import { Tooltip } from '.';
4
+ import css from './tooltip.stories.module.css';
6
5
 
7
- export default {
6
+ const meta: Meta<typeof Tooltip> = {
8
7
  title: 'UI/Tooltip',
9
8
  component: Tooltip,
10
- decorators: [getWrapperDecorator({ padding: '100px', textAlign: 'center' })],
11
9
  args: {
12
10
  title: 'View job #123',
11
+ children: 'Trigger',
12
+ },
13
+ parameters: {
14
+ layout: 'centered',
13
15
  },
14
16
  };
15
17
 
16
- const Template = (props: any) => <Tooltip {...props}>Job #123</Tooltip>;
18
+ export default meta;
17
19
 
18
- export const Default: Story = Template.bind({});
20
+ type Story = StoryObj<typeof meta>;
19
21
 
20
- export const LongTooltip: Story = Template.bind({});
22
+ export const Default: Story = {};
21
23
 
22
- LongTooltip.args = {
23
- title: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam molestie neque id lectus mollis, et imperdiet libero porta.',
24
+ export const LongTitle: Story = {
25
+ args: {
26
+ title:
27
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam molestie neque id lectus mollis, et imperdiet libero porta.',
28
+ },
24
29
  };
25
30
 
26
- export const DarkModeFalse: Story = Template.bind({});
31
+ export const DarkModeFalse: Story = {
32
+ args: {
33
+ darkMode: false,
34
+ },
35
+ };
27
36
 
28
- DarkModeFalse.args = {
29
- darkMode: false,
37
+ export const CustomTooltip: Story = {
38
+ args: {
39
+ tooltipClassName: css.customTooltip,
40
+ },
30
41
  };