paris 0.16.2 → 0.17.1
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 +12 -0
- package/README.md +1 -1
- package/package.json +16 -15
- package/src/stories/combobox/Combobox.tsx +2 -4
- package/src/stories/text/Text.tsx +2 -2
- package/src/stories/tilt/Tilt.stories.tsx +22 -18
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# paris
|
|
2
2
|
|
|
3
|
+
## 0.17.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 8a01d4b: chore: Upgrade @fortawesome/react-fontawesome from ^0.2.0 to ^0.2.2
|
|
8
|
+
|
|
9
|
+
## 0.17.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- 079d8b7: chore: [Breaking] Upgrade to React v19 & NextJS 15
|
|
14
|
+
|
|
3
15
|
## 0.16.2
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@ Paris is Slingshot's React design system, meant to work universally across serve
|
|
|
4
4
|
|
|
5
5
|
Currently, Paris is provided as a set of *unbundled* `.tsx` components styled with SCSS modules. This means that you can import only the components you need, and you can use your own bundler to optimize your bundle size. As a result, Paris works best with frameworks like Next.js that have built-in support for TypeScript and SCSS modules.
|
|
6
6
|
|
|
7
|
-
Paris 1.x styling is heavily inspired by Uber's [Base Web](https://baseweb.design), which we previously used in our production apps. We built Paris to move away from Styletron and CSS-in-JS, since we're now largely working with React
|
|
7
|
+
Paris 1.x styling is heavily inspired by Uber's [Base Web](https://baseweb.design), which we previously used in our production apps. We built Paris to move away from Styletron and CSS-in-JS, since we're now largely working with React 19, RSC, and the Next.js `app` directory.
|
|
8
8
|
|
|
9
9
|
<br />
|
|
10
10
|
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "paris",
|
|
3
3
|
"author": "Sanil Chawla <sanil@slingshot.fm> (https://sanil.co)",
|
|
4
4
|
"description": "Paris is Slingshot's React design system. It's a collection of reusable components, design tokens, and guidelines that help us build consistent, accessible, and performant user interfaces.",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.17.1",
|
|
6
6
|
"homepage": "https://paris.slingshot.fm",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"repository": {
|
|
@@ -62,26 +62,27 @@
|
|
|
62
62
|
"./utility": "./src/stories/utility/index.ts"
|
|
63
63
|
},
|
|
64
64
|
"dependencies": {
|
|
65
|
-
"@ariakit/react": "^0.
|
|
65
|
+
"@ariakit/react": "^0.4.20",
|
|
66
|
+
"@emotion/is-prop-valid": "^1.4.0",
|
|
66
67
|
"@fortawesome/fontawesome-svg-core": "^6.4.2",
|
|
67
68
|
"@fortawesome/free-regular-svg-icons": "^6.4.2",
|
|
68
69
|
"@fortawesome/free-solid-svg-icons": "^6.4.2",
|
|
69
|
-
"@fortawesome/react-fontawesome": "^0.2.
|
|
70
|
+
"@fortawesome/react-fontawesome": "^0.2.2",
|
|
70
71
|
"@headlessui/react": "^2.2.4",
|
|
71
|
-
"@radix-ui/react-checkbox": "^1.
|
|
72
|
-
"@radix-ui/react-tooltip": "^1.
|
|
72
|
+
"@radix-ui/react-checkbox": "^1.3.3",
|
|
73
|
+
"@radix-ui/react-tooltip": "^1.2.8",
|
|
73
74
|
"clsx": "^1.2.1",
|
|
74
75
|
"font-color-contrast": "^11.1.0",
|
|
75
|
-
"framer-motion": "^
|
|
76
|
+
"framer-motion": "^12.24.10",
|
|
76
77
|
"pte": "^0.5.0",
|
|
77
78
|
"react-hot-toast": "^2.4.1",
|
|
78
|
-
"react-parallax-tilt": "^1.7.
|
|
79
|
-
"react-tiny-popover": "^8.
|
|
79
|
+
"react-parallax-tilt": "^1.7.315",
|
|
80
|
+
"react-tiny-popover": "^8.1.6",
|
|
80
81
|
"ts-deepmerge": "^6.0.3"
|
|
81
82
|
},
|
|
82
83
|
"peerDependencies": {
|
|
83
|
-
"react": "^
|
|
84
|
-
"react-dom": "^
|
|
84
|
+
"react": "^19.x",
|
|
85
|
+
"react-dom": "^19.x",
|
|
85
86
|
"sass": "^1.x",
|
|
86
87
|
"typescript": "^5.0"
|
|
87
88
|
},
|
|
@@ -102,8 +103,8 @@
|
|
|
102
103
|
"@storybook/theming": "8.6.14",
|
|
103
104
|
"@stylistic/eslint-plugin": "^5.2.0",
|
|
104
105
|
"@types/node": "^22.0.0",
|
|
105
|
-
"@types/react": "^
|
|
106
|
-
"@types/react-dom": "^
|
|
106
|
+
"@types/react": "^19",
|
|
107
|
+
"@types/react-dom": "^19",
|
|
107
108
|
"@typescript-eslint/eslint-plugin": "^8.46.1",
|
|
108
109
|
"@typescript-eslint/parser": "^8.46.1",
|
|
109
110
|
"autoprefixer": "^10.4.14",
|
|
@@ -121,9 +122,9 @@
|
|
|
121
122
|
"husky": "^8.0.0",
|
|
122
123
|
"jss": "^10.10.0",
|
|
123
124
|
"jss-preset-default": "^10.10.0",
|
|
124
|
-
"next": "^
|
|
125
|
-
"react": "^
|
|
126
|
-
"react-dom": "^
|
|
125
|
+
"next": "^15.1.6",
|
|
126
|
+
"react": "^19.0.0",
|
|
127
|
+
"react-dom": "^19.0.0",
|
|
127
128
|
"sass": "^1.62.1",
|
|
128
129
|
"storybook": "8.6.14",
|
|
129
130
|
"storybook-dark-mode": "^4.0.2",
|
|
@@ -8,8 +8,6 @@ import {
|
|
|
8
8
|
Combobox as HCombobox, ComboboxInput, ComboboxOptions, ComboboxOption, Transition,
|
|
9
9
|
} from '@headlessui/react';
|
|
10
10
|
import { clsx } from 'clsx';
|
|
11
|
-
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
12
|
-
import { faClose } from '@fortawesome/free-solid-svg-icons';
|
|
13
11
|
import inputStyles from '../input/Input.module.scss';
|
|
14
12
|
import dropdownStyles from '../utility/Dropdown.module.scss';
|
|
15
13
|
import styles from '../select/Select.module.scss';
|
|
@@ -23,7 +21,7 @@ import { Field } from '../field';
|
|
|
23
21
|
import type { ButtonProps } from '../button';
|
|
24
22
|
import { Button } from '../button';
|
|
25
23
|
import { TextWhenString } from '../utility';
|
|
26
|
-
import { Check, Icon } from '../icon';
|
|
24
|
+
import { Check, Close, Icon } from '../icon';
|
|
27
25
|
|
|
28
26
|
export type Option<T extends Record<string, any> = Record<string, any>> = {
|
|
29
27
|
id: string,
|
|
@@ -264,7 +262,7 @@ export function Combobox<T extends Record<string, any> = Record<string, any>>({
|
|
|
264
262
|
<Button
|
|
265
263
|
size="xs"
|
|
266
264
|
shape="circle"
|
|
267
|
-
startEnhancer={<
|
|
265
|
+
startEnhancer={<Close size={10} />}
|
|
268
266
|
onClick={() => {
|
|
269
267
|
if (onChange) {
|
|
270
268
|
onChange(null);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
1
|
+
import type { ComponentPropsWithoutRef, ReactElement, ReactNode } from 'react';
|
|
2
2
|
import { createElement, memo } from 'react';
|
|
3
3
|
import { clsx } from 'clsx';
|
|
4
4
|
import type { CSSColor } from '@ssh/csstypes';
|
|
@@ -69,7 +69,7 @@ export const Text = memo(<T extends TextElement = TextElement>({
|
|
|
69
69
|
color,
|
|
70
70
|
children,
|
|
71
71
|
...props
|
|
72
|
-
}: TextProps<T>):
|
|
72
|
+
}: TextProps<T>): ReactElement => createElement(
|
|
73
73
|
as || 'span',
|
|
74
74
|
{
|
|
75
75
|
...props,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
|
-
import type {
|
|
2
|
+
import type { CSSProperties } from 'react';
|
|
3
3
|
import { Tilt } from './Tilt';
|
|
4
4
|
import { Text } from '../text';
|
|
5
5
|
import { pvar } from '../theme';
|
|
@@ -21,21 +21,25 @@ export const Default: Story = {
|
|
|
21
21
|
onLeave: undefined,
|
|
22
22
|
onMove: undefined,
|
|
23
23
|
},
|
|
24
|
-
render: ({ children, style, ...args }) =>
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
24
|
+
render: ({ children, style, ...args }) => {
|
|
25
|
+
const tiltStyle = {
|
|
26
|
+
width: 'max-content',
|
|
27
|
+
userSelect: pvar('utils.defaultUserSelect'),
|
|
28
|
+
backgroundColor: pvar('new.colors.surfacePrimary'),
|
|
29
|
+
boxShadow: pvar('new.lighting.shallowBelow'),
|
|
30
|
+
padding: '8px 16px',
|
|
31
|
+
// border: `1px solid ${pvar('new.borders.dropdown.color')}`,
|
|
32
|
+
borderRadius: pvar('borders.radius.rounded'),
|
|
33
|
+
...style,
|
|
34
|
+
} as CSSProperties;
|
|
35
|
+
|
|
36
|
+
return (
|
|
37
|
+
<Tilt
|
|
38
|
+
{...args}
|
|
39
|
+
style={tiltStyle}
|
|
40
|
+
>
|
|
41
|
+
{children}
|
|
42
|
+
</Tilt>
|
|
43
|
+
);
|
|
44
|
+
},
|
|
41
45
|
};
|