@edgeandnode/eds-react 1.0.1 → 1.1.0
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/README.md +50 -8
- package/dist/EDSContext.d.ts +4 -1
- package/dist/EDSContext.d.ts.map +1 -1
- package/dist/EDSContext.js +7 -0
- package/dist/EDSContext.js.map +1 -1
- package/dist/EDSProvider.d.ts +13 -6
- package/dist/EDSProvider.d.ts.map +1 -1
- package/dist/EDSProvider.js +60 -68
- package/dist/EDSProvider.js.map +1 -1
- package/dist/components/Address.d.ts +3 -3
- package/dist/components/Address.d.ts.map +1 -1
- package/dist/components/Address.js.map +1 -1
- package/dist/components/Avatar.d.ts +3 -3
- package/dist/components/Avatar.d.ts.map +1 -1
- package/dist/components/Avatar.js +3 -2
- package/dist/components/Avatar.js.map +1 -1
- package/dist/components/Breadcrumbs.parts.d.ts +7 -6
- package/dist/components/Breadcrumbs.parts.d.ts.map +1 -1
- package/dist/components/Breadcrumbs.parts.js +15 -14
- package/dist/components/Breadcrumbs.parts.js.map +1 -1
- package/dist/components/Button.d.ts.map +1 -1
- package/dist/components/Button.js +3 -2
- package/dist/components/Button.js.map +1 -1
- package/dist/components/Card.d.ts +8 -4
- package/dist/components/Card.d.ts.map +1 -1
- package/dist/components/Card.js +2 -1
- package/dist/components/Card.js.map +1 -1
- package/dist/components/Cluster.d.ts +3 -3
- package/dist/components/Cluster.d.ts.map +1 -1
- package/dist/components/Cluster.js.map +1 -1
- package/dist/components/CodeBlock.parts.d.ts.map +1 -1
- package/dist/components/CodeBlock.parts.js +16 -20
- package/dist/components/CodeBlock.parts.js.map +1 -1
- package/dist/components/CopyButton.d.ts.map +1 -1
- package/dist/components/CopyButton.js +3 -2
- package/dist/components/CopyButton.js.map +1 -1
- package/dist/components/Icon.d.ts.map +1 -1
- package/dist/components/Icon.js +3 -3
- package/dist/components/Icon.js.map +1 -1
- package/dist/components/Keyboard.js +1 -1
- package/dist/components/LocalTheme.d.ts +29 -0
- package/dist/components/LocalTheme.d.ts.map +1 -0
- package/dist/components/LocalTheme.js +28 -0
- package/dist/components/LocalTheme.js.map +1 -0
- package/dist/components/Menu.parts.d.ts +43 -9
- package/dist/components/Menu.parts.d.ts.map +1 -1
- package/dist/components/Menu.parts.js +121 -115
- package/dist/components/Menu.parts.js.map +1 -1
- package/dist/components/Modal.parts.d.ts +1 -1
- package/dist/components/Modal.parts.d.ts.map +1 -1
- package/dist/components/Modal.parts.js +22 -11
- package/dist/components/Modal.parts.js.map +1 -1
- package/dist/components/Pane.parts.d.ts +23 -22
- package/dist/components/Pane.parts.d.ts.map +1 -1
- package/dist/components/Pane.parts.js +3 -3
- package/dist/components/Pane.parts.js.map +1 -1
- package/dist/components/Prose.d.ts +1 -1
- package/dist/components/Prose.d.ts.map +1 -1
- package/dist/components/Prose.js +3 -3
- package/dist/components/Prose.js.map +1 -1
- package/dist/components/Prose.meta.d.ts +5 -0
- package/dist/components/Prose.meta.d.ts.map +1 -1
- package/dist/components/Prose.meta.js +10 -0
- package/dist/components/Prose.meta.js.map +1 -1
- package/dist/components/SegmentedControl.parts.d.ts.map +1 -1
- package/dist/components/SegmentedControl.parts.js +3 -2
- package/dist/components/SegmentedControl.parts.js.map +1 -1
- package/dist/components/Select.parts.d.ts +12 -7
- package/dist/components/Select.parts.d.ts.map +1 -1
- package/dist/components/Select.parts.js +28 -18
- package/dist/components/Select.parts.js.map +1 -1
- package/dist/components/TabSet.parts.d.ts.map +1 -1
- package/dist/components/TabSet.parts.js +3 -2
- package/dist/components/TabSet.parts.js.map +1 -1
- package/dist/components/Table.parts.d.ts.map +1 -1
- package/dist/components/Table.parts.js +3 -4
- package/dist/components/Table.parts.js.map +1 -1
- package/dist/components/ThemeSwitcher.d.ts +5 -5
- package/dist/components/ThemeSwitcher.d.ts.map +1 -1
- package/dist/components/ThemeSwitcher.js +6 -5
- package/dist/components/ThemeSwitcher.js.map +1 -1
- package/dist/components/Tooltip.parts.js +2 -2
- package/dist/components/Tooltip.parts.js.map +1 -1
- package/dist/components/base/Addon.d.ts.map +1 -1
- package/dist/components/base/Addon.js +2 -4
- package/dist/components/base/Addon.js.map +1 -1
- package/dist/components/base/ButtonOrLink.parts.d.ts.map +1 -1
- package/dist/components/base/ButtonOrLink.parts.js +2 -1
- package/dist/components/base/ButtonOrLink.parts.js.map +1 -1
- package/dist/components/base/MaybeButtonOrLink.d.ts +7 -5
- package/dist/components/base/MaybeButtonOrLink.d.ts.map +1 -1
- package/dist/components/base/MaybeButtonOrLink.js +7 -2
- package/dist/components/base/MaybeButtonOrLink.js.map +1 -1
- package/dist/components/base/Render.d.ts +25 -6
- package/dist/components/base/Render.d.ts.map +1 -1
- package/dist/components/base/Render.js +4 -3
- package/dist/components/base/Render.js.map +1 -1
- package/dist/components/base/index.d.ts +1 -1
- package/dist/components/base/index.d.ts.map +1 -1
- package/dist/components/base/index.js.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +1 -0
- package/dist/components/index.js.map +1 -1
- package/dist/hooks/useCSSProp.js +1 -1
- package/dist/hooks/useCSSProp.js.map +1 -1
- package/dist/hooks/useEDS.d.ts +24 -1
- package/dist/hooks/useEDS.d.ts.map +1 -1
- package/dist/hooks/useEDS.js +26 -2
- package/dist/hooks/useEDS.js.map +1 -1
- package/dist/hooks/useStyleObserver.d.ts.map +1 -1
- package/dist/hooks/useStyleObserver.js +2 -1
- package/dist/hooks/useStyleObserver.js.map +1 -1
- package/dist/icons/CalendarDynamicIcon.d.ts.map +1 -1
- package/dist/icons/CalendarDynamicIcon.js +3 -1
- package/dist/icons/CalendarDynamicIcon.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/theme-persistence.d.ts +18 -0
- package/dist/theme-persistence.d.ts.map +1 -0
- package/dist/theme-persistence.js +25 -0
- package/dist/theme-persistence.js.map +1 -0
- package/dist/utils/getReactNodeKey.d.ts.map +1 -1
- package/dist/utils/getReactNodeKey.js +31 -13
- package/dist/utils/getReactNodeKey.js.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/internal/getTooltipProps.d.ts +9 -0
- package/dist/utils/internal/getTooltipProps.d.ts.map +1 -0
- package/dist/utils/internal/getTooltipProps.js +18 -0
- package/dist/utils/internal/getTooltipProps.js.map +1 -0
- package/dist/utils/internal/index.d.ts +4 -0
- package/dist/utils/internal/index.d.ts.map +1 -0
- package/dist/utils/internal/index.js +4 -0
- package/dist/utils/internal/index.js.map +1 -0
- package/dist/utils/internal/resolveLazy.d.ts +29 -0
- package/dist/utils/internal/resolveLazy.d.ts.map +1 -0
- package/dist/utils/internal/resolveLazy.js +40 -0
- package/dist/utils/internal/resolveLazy.js.map +1 -0
- package/dist/utils/internal/styleScheduler.d.ts.map +1 -0
- package/dist/utils/internal/styleScheduler.js.map +1 -0
- package/dist/utils/isComponentType.d.ts +9 -0
- package/dist/utils/isComponentType.d.ts.map +1 -0
- package/dist/utils/isComponentType.js +22 -0
- package/dist/utils/isComponentType.js.map +1 -0
- package/dist/utils/isReactNode.d.ts +7 -0
- package/dist/utils/isReactNode.d.ts.map +1 -1
- package/dist/utils/isReactNode.js +11 -0
- package/dist/utils/isReactNode.js.map +1 -1
- package/dist/utils/reactNodeToString.d.ts +3 -0
- package/dist/utils/reactNodeToString.d.ts.map +1 -1
- package/dist/utils/reactNodeToString.js +6 -0
- package/dist/utils/reactNodeToString.js.map +1 -1
- package/dist/utils/styleObserver.js +1 -1
- package/dist/utils/trimReactNode.d.ts +3 -0
- package/dist/utils/trimReactNode.d.ts.map +1 -1
- package/dist/utils/trimReactNode.js +6 -0
- package/dist/utils/trimReactNode.js.map +1 -1
- package/package.json +24 -23
- package/scripts/update-skill.cjs +18 -5
- package/skill/SKILL.md +95 -57
- package/skill/references/tokens.md +2 -8
- package/src/EDSContext.ts +10 -1
- package/src/EDSProvider.tsx +111 -80
- package/src/components/Address.tsx +4 -3
- package/src/components/Avatar.tsx +10 -5
- package/src/components/Breadcrumbs.parts.tsx +35 -18
- package/src/components/Button.tsx +7 -2
- package/src/components/Card.tsx +14 -8
- package/src/components/Cluster.tsx +5 -3
- package/src/components/CodeBlock.parts.tsx +20 -24
- package/src/components/CopyButton.tsx +3 -2
- package/src/components/Icon.tsx +3 -9
- package/src/components/Keyboard.tsx +1 -1
- package/src/components/LocalTheme.tsx +47 -0
- package/src/components/Menu.parts.tsx +368 -245
- package/src/components/Modal.parts.tsx +28 -11
- package/src/components/Pane.parts.tsx +31 -26
- package/src/components/Prose.meta.ts +10 -0
- package/src/components/Prose.tsx +4 -3
- package/src/components/SegmentedControl.parts.tsx +3 -8
- package/src/components/Select.parts.tsx +43 -34
- package/src/components/TabSet.parts.tsx +3 -5
- package/src/components/Table.parts.tsx +3 -3
- package/src/components/ThemeSwitcher.tsx +13 -15
- package/src/components/Tooltip.parts.tsx +2 -2
- package/src/components/base/Addon.tsx +3 -4
- package/src/components/base/ButtonOrLink.parts.tsx +2 -1
- package/src/components/base/MaybeButtonOrLink.tsx +11 -6
- package/src/components/base/Render.tsx +28 -4
- package/src/components/base/index.ts +2 -0
- package/src/components/index.ts +8 -0
- package/src/hooks/useCSSProp.ts +1 -1
- package/src/hooks/useEDS.ts +26 -2
- package/src/hooks/useStyleObserver.ts +2 -1
- package/src/icons/CalendarDynamicIcon.tsx +1 -0
- package/src/index.ts +2 -1
- package/src/theme-persistence.ts +31 -0
- package/src/utils/getReactNodeKey.ts +30 -14
- package/src/utils/index.ts +1 -1
- package/src/utils/internal/getTooltipProps.ts +25 -0
- package/src/utils/internal/index.ts +3 -0
- package/src/utils/internal/resolveLazy.ts +44 -0
- package/src/utils/isComponentType.ts +27 -0
- package/src/utils/isReactNode.ts +11 -0
- package/src/utils/reactNodeToString.ts +7 -0
- package/src/utils/styleObserver.ts +1 -1
- package/src/utils/trimReactNode.tsx +7 -0
- package/dist/utils/styleScheduler.d.ts.map +0 -1
- package/dist/utils/styleScheduler.js.map +0 -1
- package/src/__snapshots__/compiled.css +0 -22499
- package/styles/tailwind.storybook.css +0 -19
- /package/dist/utils/{styleScheduler.d.ts → internal/styleScheduler.d.ts} +0 -0
- /package/dist/utils/{styleScheduler.js → internal/styleScheduler.js} +0 -0
- /package/src/utils/{styleScheduler.ts → internal/styleScheduler.ts} +0 -0
package/README.md
CHANGED
|
@@ -38,7 +38,22 @@ pnpm add react react-dom react-is tailwindcss
|
|
|
38
38
|
|
|
39
39
|
`@edgeandnode/eds-react` disables Tailwind's default content scanning as an optimization measure, so you must explicitly register your source paths using `@source` directives. Make sure to include all paths where Tailwind classes are used.
|
|
40
40
|
|
|
41
|
-
4.
|
|
41
|
+
4. Target browsers that support `light-dark()` natively (Chrome 123, Safari 17.5, and Firefox 120 or newer). EDS's color tokens rely on it, and build tools transpile it for older targets (e.g. Lightning CSS, which Vite and Next.js use), which breaks `Dark`, `Light`, and `LocalTheme`. `EDSProvider` warns in the console when that happens (with Vite, only in production builds, e.g. with `vite preview`).
|
|
42
|
+
- Next.js: add a [`browserslist`](https://github.com/browserslist/browserslist#config-file) entry to your `package.json`:
|
|
43
|
+
|
|
44
|
+
```json
|
|
45
|
+
"browserslist": ["chrome >= 123", "edge >= 123", "firefox >= 120", "safari >= 17.5", "ios_saf >= 17.5"]
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
- Vite: set [`build.target`](https://vite.dev/config/build-options#build-target), which Vite also uses for CSS (a Vite-based Storybook only picks up `build.target`, not `build.cssTarget`). If you use `css.transformer: 'lightningcss'`, set `css.lightningcss.targets` too:
|
|
49
|
+
|
|
50
|
+
```ts
|
|
51
|
+
build: {
|
|
52
|
+
target: ['chrome123', 'edge123', 'firefox120', 'safari17.5', 'ios17.5'],
|
|
53
|
+
},
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
5. Wrap your app with `EDSProvider`:
|
|
42
57
|
|
|
43
58
|
```tsx
|
|
44
59
|
import { EDSProvider } from '@edgeandnode/eds-react'
|
|
@@ -54,31 +69,58 @@ pnpm add react react-dom react-is tailwindcss
|
|
|
54
69
|
- `onThemeChange` - called whenever the theme changes via `setTheme()` (e.g. from `<ThemeSwitcher />`).
|
|
55
70
|
- `persistTheme` - opt-in persistence so the user's theme selection survives reloads. Omit (default) for no persistence. Accepts:
|
|
56
71
|
- `'localStorage'` — reads/writes `localStorage['eds-active-theme']`. Inline pre-hydration script restores the value before first paint (no SSR flash).
|
|
57
|
-
- `'cookie'` — reads/writes a `eds-active-theme` cookie (`path=/; max-age=31536000; samesite=lax`). Same no-flash SSR
|
|
58
|
-
- `{ get, set }` — custom adapter (different key, encryption, remote storage, etc.).
|
|
72
|
+
- `'cookie'` — reads/writes a `eds-active-theme` cookie (`path=/; max-age=31536000; samesite=lax`). Same no-flash SSR, and the server can read it too (see below).
|
|
73
|
+
- `{ get, set }` — custom adapter (different key, encryption, remote storage, etc.). In uncontrolled mode, no pre-hydration script is emitted; for zero-flash SSR, inject your own inline script in your HTML head.
|
|
59
74
|
|
|
60
75
|
The two string presets share the key `'eds-active-theme'` — use a custom adapter for per-app isolation on the same origin.
|
|
61
76
|
|
|
77
|
+
- `nonce` - nonce for the inline scripts and styles `EDSProvider` adds, if your Content Security Policy requires one.
|
|
62
78
|
- `direction` - `'ltr'` (default) or `'rtl'`
|
|
63
79
|
- `language` - defaults to `'en'` as long as `direction` is `'ltr'`
|
|
64
80
|
|
|
65
81
|
To read or change the theme from anywhere in the app, use the `useEDS()` hook:
|
|
66
82
|
|
|
67
83
|
```tsx
|
|
68
|
-
import { useEDS } from '@edgeandnode/eds-react'
|
|
84
|
+
import { useEDS } from '@edgeandnode/eds-react/hooks'
|
|
69
85
|
|
|
70
|
-
const { theme,
|
|
86
|
+
const { theme, setTheme, activeTheme } = useEDS()
|
|
71
87
|
```
|
|
72
88
|
|
|
73
|
-
`theme` is `'dark' | 'light' | 'system'
|
|
89
|
+
`theme` is the page's theme, `'dark' | 'light' | 'system'`, and `setTheme` changes it. `activeTheme` is the theme content is rendered in, `'dark'` or `'light'`: the theme of the `Dark`, `Light`, or `LocalTheme` it's in, or else the page's, with `'system'` resolved to the OS preference (`systemTheme`).
|
|
74
90
|
|
|
75
|
-
|
|
91
|
+
To render part of the page in another theme, wrap it in `Dark` or `Light` (e.g. `<Dark as="section">`), or in `LocalTheme` if the theme changes (e.g. `<LocalTheme theme={theme}>`), which doesn't remount its content. Components inside get that theme from `useEDS().activeTheme` (`useEDS().localTheme` is the same, but `undefined` outside of them). `useEDS().localThemeClass` is its class, to add to content you render elsewhere in the DOM (e.g. with `createPortal`) so it keeps that theme.
|
|
92
|
+
|
|
93
|
+
**Server-side rendering (Next.js App Router):** add `suppressHydrationWarning` to your `<html>` tag in `app/layout.tsx`. `EDSProvider` applies the theme class to `<html>` before React hydrates (this is what prevents a flash of wrong theme), which would otherwise trigger a hydration warning since React owns `<html>` in App Router. For a light or system theme, it also renders a style that applies it in case that script can't run (e.g. when a Content Security Policy only blocks inline scripts).
|
|
76
94
|
|
|
77
95
|
```tsx
|
|
78
96
|
<html lang="en" suppressHydrationWarning>
|
|
79
97
|
```
|
|
80
98
|
|
|
81
|
-
|
|
99
|
+
**Saved theme on the server:** with `persistTheme="cookie"`, pass the saved theme to `defaultTheme` so the server renders it too, instead of switching to it after hydration (e.g. the selected option of a `ThemeSwitcher`). A saved `'system'` theme still resolves after hydration, since the server can't know the OS preference. `getThemeFromCookies()` reads it from the request's headers:
|
|
100
|
+
|
|
101
|
+
```tsx
|
|
102
|
+
// app/layout.tsx
|
|
103
|
+
import type { ReactNode } from 'react'
|
|
104
|
+
import { headers } from 'next/headers'
|
|
105
|
+
|
|
106
|
+
import { EDSProvider, getThemeFromCookies } from '@edgeandnode/eds-react'
|
|
107
|
+
|
|
108
|
+
export default async function RootLayout({ children }: { children: ReactNode }) {
|
|
109
|
+
return (
|
|
110
|
+
<html lang="en" suppressHydrationWarning>
|
|
111
|
+
<body>
|
|
112
|
+
<EDSProvider persistTheme="cookie" defaultTheme={getThemeFromCookies(await headers())}>
|
|
113
|
+
{children}
|
|
114
|
+
</EDSProvider>
|
|
115
|
+
</body>
|
|
116
|
+
</html>
|
|
117
|
+
)
|
|
118
|
+
}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
It returns `undefined` if there's no saved theme, so add a fallback for a default other than `'dark'` (e.g. `getThemeFromCookies(await headers()) ?? 'system'`). Reading headers makes Next.js render routes on each request instead of statically. If `EDSProvider` is in a client component (e.g. to pass `buttonOrLinkConfig`), pass the saved theme to it through a prop (the `Theme` type is exported).
|
|
122
|
+
|
|
123
|
+
6. Optional recommended steps:
|
|
82
124
|
- If you use VS Code (or a fork like Cursor), install the [Tailwind CSS IntelliSense extension](https://marketplace.visualstudio.com/items?itemName=bradlc.vscode-tailwindcss).
|
|
83
125
|
- If it doesn't automatically recognize EDS-specific classes like `text-16`, it is likely because it cannot find the CSS file that registers EDS's Tailwind theme and plugin (which can happen in monorepos or projects with unusual/complex directory structures). Add the following to `.vscode/settings.json` and customize the paths to match your project:
|
|
84
126
|
|
package/dist/EDSContext.d.ts
CHANGED
|
@@ -2,16 +2,19 @@ import { type ComponentProps } from 'react';
|
|
|
2
2
|
import type { DirectionProvider } from '@base-ui/react/direction-provider';
|
|
3
3
|
export type Theme = 'dark' | 'light' | 'system';
|
|
4
4
|
export type ResolvedTheme = Exclude<Theme, 'system'>;
|
|
5
|
+
export declare const THEME_CLASSES: Record<Theme, string>;
|
|
5
6
|
export type ThemePersistence = 'localStorage' | 'cookie' | {
|
|
6
7
|
get: () => string | null | undefined;
|
|
7
8
|
set: (value: string) => void;
|
|
8
9
|
};
|
|
9
10
|
export interface EDSContextValue {
|
|
10
11
|
theme: Theme;
|
|
11
|
-
activeTheme: ResolvedTheme;
|
|
12
12
|
setTheme: (theme: Theme) => void;
|
|
13
|
+
systemTheme: ResolvedTheme;
|
|
13
14
|
direction: NonNullable<ComponentProps<typeof DirectionProvider>['direction']>;
|
|
14
15
|
language: string;
|
|
15
16
|
}
|
|
16
17
|
export declare const EDSContext: import("react").Context<EDSContextValue | null>;
|
|
18
|
+
/** The theme of the nearest `Dark`, `Light`, or `LocalTheme` ancestor, if any. */
|
|
19
|
+
export declare const LocalThemeContext: import("react").Context<ResolvedTheme | undefined>;
|
|
17
20
|
//# sourceMappingURL=EDSContext.d.ts.map
|
package/dist/EDSContext.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EDSContext.d.ts","sourceRoot":"","sources":["../src/EDSContext.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,OAAO,CAAA;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AAE1E,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;AAC/C,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;AAEpD,MAAM,MAAM,gBAAgB,GACxB,cAAc,GACd,QAAQ,GACR;IACE,GAAG,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IACpC,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAC7B,CAAA;AAEL,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,KAAK,CAAA;IACZ,
|
|
1
|
+
{"version":3,"file":"EDSContext.d.ts","sourceRoot":"","sources":["../src/EDSContext.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,OAAO,CAAA;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AAE1E,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;AAC/C,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;AAEpD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAI/C,CAAA;AAED,MAAM,MAAM,gBAAgB,GACxB,cAAc,GACd,QAAQ,GACR;IACE,GAAG,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IACpC,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAC7B,CAAA;AAEL,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,KAAK,CAAA;IACZ,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,WAAW,EAAE,aAAa,CAAA;IAC1B,SAAS,EAAE,WAAW,CAAC,cAAc,CAAC,OAAO,iBAAiB,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;IAC7E,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,eAAO,MAAM,UAAU,iDAA8C,CAAA;AAErE,kFAAkF;AAClF,eAAO,MAAM,iBAAiB,oDAAsD,CAAA"}
|
package/dist/EDSContext.js
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { createContext } from 'react';
|
|
3
|
+
export const THEME_CLASSES = {
|
|
4
|
+
dark: 'eds-dark',
|
|
5
|
+
light: 'eds-light',
|
|
6
|
+
system: 'eds-system',
|
|
7
|
+
};
|
|
3
8
|
export const EDSContext = createContext(null);
|
|
9
|
+
/** The theme of the nearest `Dark`, `Light`, or `LocalTheme` ancestor, if any. */
|
|
10
|
+
export const LocalThemeContext = createContext(undefined);
|
|
4
11
|
//# sourceMappingURL=EDSContext.js.map
|
package/dist/EDSContext.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EDSContext.js","sourceRoot":"","sources":["../src/EDSContext.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,aAAa,EAAuB,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"EDSContext.js","sourceRoot":"","sources":["../src/EDSContext.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,aAAa,EAAuB,MAAM,OAAO,CAAA;AAM1D,MAAM,CAAC,MAAM,aAAa,GAA0B;IAClD,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,YAAY;CACrB,CAAA;AAkBD,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAAyB,IAAI,CAAC,CAAA;AAErE,kFAAkF;AAClF,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAA4B,SAAS,CAAC,CAAA"}
|
package/dist/EDSProvider.d.ts
CHANGED
|
@@ -25,16 +25,22 @@ export interface EDSProviderProps extends Omit<ComponentProps<'div'>, 'dir'> {
|
|
|
25
25
|
* - `'localStorage'`: reads/writes `localStorage['eds-active-theme']`. Inline pre-hydration script
|
|
26
26
|
* reads the value before first paint — no SSR flash.
|
|
27
27
|
* - `'cookie'`: reads/writes a `eds-active-theme` cookie (`path=/; max-age=31536000;
|
|
28
|
-
* samesite=lax`). Same no-flash SSR;
|
|
28
|
+
* samesite=lax`). Same no-flash SSR; pass `getThemeFromCookies()` to `defaultTheme` on the
|
|
29
|
+
* server so it renders the saved theme too.
|
|
29
30
|
* - `{ get, set }`: custom adapter (different key, encryption, remote storage, etc.). Invalid
|
|
30
|
-
* values from `get()` fall back to `defaultTheme`.
|
|
31
|
-
* zero-flash SSR, inject your own inline script that adds the matching
|
|
32
|
-
* `<html>` before paint.
|
|
31
|
+
* values from `get()` fall back to `defaultTheme`. In uncontrolled mode, no pre-hydration
|
|
32
|
+
* script is emitted; for zero-flash SSR, inject your own inline script that adds the matching
|
|
33
|
+
* `eds-*` class to `<html>` before paint.
|
|
33
34
|
*
|
|
34
35
|
* The two string presets share the key `'eds-active-theme'` — use a custom adapter for per-app
|
|
35
36
|
* isolation on the same origin.
|
|
36
37
|
*/
|
|
37
38
|
persistTheme?: ThemePersistence | undefined;
|
|
39
|
+
/**
|
|
40
|
+
* Nonce for the inline scripts and styles `EDSProvider` adds, if your Content Security Policy
|
|
41
|
+
* requires one.
|
|
42
|
+
*/
|
|
43
|
+
nonce?: string | undefined;
|
|
38
44
|
/** @default 'ltr' */
|
|
39
45
|
direction?: ComponentProps<typeof DirectionProvider>['direction'] | undefined;
|
|
40
46
|
/** @default 'en' // or for `direction="rtl"`, 'ar' */
|
|
@@ -46,7 +52,8 @@ export type { EDSContextValue, ResolvedTheme, Theme, ThemePersistence } from './
|
|
|
46
52
|
* Provides global configuration and enhancements for EDS components.
|
|
47
53
|
*
|
|
48
54
|
* Note: Only one EDSProvider should be used per app, typically at the root. If you need different
|
|
49
|
-
* themes for different parts of the app, use the `
|
|
55
|
+
* themes for different parts of the app, use the `Dark`, `Light`, and `LocalTheme` components
|
|
56
|
+
* instead.
|
|
50
57
|
*
|
|
51
58
|
* **Next.js App Router:** add `suppressHydrationWarning` to your `<html>` tag in `app/layout.tsx`.
|
|
52
59
|
* The pre-hydration script applies the theme class to `<html>` before React hydrates (preventing a
|
|
@@ -80,5 +87,5 @@ export type { EDSContextValue, ResolvedTheme, Theme, ThemePersistence } from './
|
|
|
80
87
|
* </EDSProvider>
|
|
81
88
|
* ````
|
|
82
89
|
*/
|
|
83
|
-
export declare function EDSProvider({ theme: controlledTheme, defaultTheme, onThemeChange, persistTheme, direction, language, buttonOrLinkConfig, children, ...props }: EDSProviderProps): import("react").JSX.Element;
|
|
90
|
+
export declare function EDSProvider({ theme: controlledTheme, defaultTheme, onThemeChange, persistTheme, nonce, direction, language, buttonOrLinkConfig, children, ...props }: EDSProviderProps): import("react").JSX.Element;
|
|
84
91
|
//# sourceMappingURL=EDSProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EDSProvider.d.ts","sourceRoot":"","sources":["../src/EDSProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"EDSProvider.d.ts","sourceRoot":"","sources":["../src/EDSProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAOL,KAAK,cAAc,EACpB,MAAM,OAAO,CAAA;AAEd,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AAGrE,OAAO,EAAgB,KAAK,uBAAuB,EAAE,MAAM,oCAAoC,CAAA;AAE/F,OAAO,EAIL,KAAK,KAAK,EACV,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAA;AA0FxB,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IAC1E;;;;OAIG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IACzB,sBAAsB;IACtB,YAAY,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAChC;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IACpD;;;;;;;;;;;;;;;;;OAiBG;IACH,YAAY,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAA;IAC3C;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,qBAAqB;IACrB,SAAS,CAAC,EAAE,cAAc,CAAC,OAAO,iBAAiB,CAAC,CAAC,WAAW,CAAC,GAAG,SAAS,CAAA;IAC7E,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,kBAAkB,CAAC,EAAE,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC,GAAG,SAAS,CAAA;CAC3E;AAED,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAE9F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EAAE,eAAe,EACtB,YAAqB,EACrB,aAAa,EACb,YAAY,EACZ,KAAK,EACL,SAAiB,EACjB,QAA4C,EAC5C,kBAAkB,EAClB,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,gBAAgB,+BA6NlB"}
|
package/dist/EDSProvider.js
CHANGED
|
@@ -1,26 +1,16 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { useCallback, useLayoutEffect, useMemo, useRef,
|
|
2
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useCallback, useEffect, useLayoutEffect, useMemo, useRef, useSyncExternalStore, } from 'react';
|
|
4
4
|
import { mergeProps } from '@base-ui/react';
|
|
5
5
|
import { DirectionProvider } from '@base-ui/react/direction-provider';
|
|
6
6
|
import { Tooltip } from '@base-ui/react/tooltip';
|
|
7
7
|
import { ButtonOrLink } from './components/base/ButtonOrLink.js';
|
|
8
8
|
import { Pane } from './components/Pane.js';
|
|
9
|
-
import { EDSContext } from './EDSContext.js';
|
|
9
|
+
import { EDSContext, THEME_CLASSES, } from './EDSContext.js';
|
|
10
10
|
import { useControlled } from './hooks/useControlled.js';
|
|
11
11
|
import { useIsHydrated } from './hooks/useIsHydrated.js';
|
|
12
|
+
import { COOKIE_REGEX, isValidTheme, parseThemeCookie, PERSISTENCE_KEY, VALID_THEMES, } from './theme-persistence.js';
|
|
12
13
|
import { cn } from './utils/index.js';
|
|
13
|
-
const PERSISTENCE_KEY = 'eds-active-theme';
|
|
14
|
-
const COOKIE_REGEX = new RegExp(`(?:^|; )${PERSISTENCE_KEY}=([^;]+)`);
|
|
15
|
-
const THEME_CLASSES = {
|
|
16
|
-
dark: 'eds-dark',
|
|
17
|
-
light: 'eds-light',
|
|
18
|
-
system: 'eds-system',
|
|
19
|
-
};
|
|
20
|
-
const VALID_THEMES = ['dark', 'light', 'system'];
|
|
21
|
-
function isValidTheme(value) {
|
|
22
|
-
return typeof value === 'string' && VALID_THEMES.includes(value);
|
|
23
|
-
}
|
|
24
14
|
function resolvePersistence(persistTheme) {
|
|
25
15
|
if (persistTheme === undefined)
|
|
26
16
|
return null;
|
|
@@ -49,11 +39,7 @@ function resolvePersistence(persistTheme) {
|
|
|
49
39
|
return {
|
|
50
40
|
get: () => {
|
|
51
41
|
try {
|
|
52
|
-
|
|
53
|
-
if (match === null)
|
|
54
|
-
return null;
|
|
55
|
-
const value = decodeURIComponent(match[1]);
|
|
56
|
-
return isValidTheme(value) ? value : null;
|
|
42
|
+
return parseThemeCookie(document.cookie) ?? null;
|
|
57
43
|
}
|
|
58
44
|
catch {
|
|
59
45
|
return null;
|
|
@@ -61,7 +47,7 @@ function resolvePersistence(persistTheme) {
|
|
|
61
47
|
},
|
|
62
48
|
set: (value) => {
|
|
63
49
|
try {
|
|
64
|
-
document.cookie = `${PERSISTENCE_KEY}=${
|
|
50
|
+
document.cookie = `${PERSISTENCE_KEY}=${value}; path=/; max-age=31536000; samesite=lax`;
|
|
65
51
|
}
|
|
66
52
|
catch {
|
|
67
53
|
// ignore restrictive environments
|
|
@@ -90,19 +76,19 @@ function resolvePersistence(persistTheme) {
|
|
|
90
76
|
};
|
|
91
77
|
}
|
|
92
78
|
const prefersDarkMediaQuery = typeof window !== 'undefined' ? window.matchMedia('(prefers-color-scheme: dark)') : null;
|
|
93
|
-
function
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
return theme;
|
|
79
|
+
function subscribeToSystemTheme(onChange) {
|
|
80
|
+
prefersDarkMediaQuery?.addEventListener('change', onChange);
|
|
81
|
+
return () => prefersDarkMediaQuery?.removeEventListener('change', onChange);
|
|
82
|
+
}
|
|
83
|
+
function getSystemTheme() {
|
|
84
|
+
return prefersDarkMediaQuery?.matches === false ? 'light' : 'dark';
|
|
100
85
|
}
|
|
101
86
|
/**
|
|
102
87
|
* Provides global configuration and enhancements for EDS components.
|
|
103
88
|
*
|
|
104
89
|
* Note: Only one EDSProvider should be used per app, typically at the root. If you need different
|
|
105
|
-
* themes for different parts of the app, use the `
|
|
90
|
+
* themes for different parts of the app, use the `Dark`, `Light`, and `LocalTheme` components
|
|
91
|
+
* instead.
|
|
106
92
|
*
|
|
107
93
|
* **Next.js App Router:** add `suppressHydrationWarning` to your `<html>` tag in `app/layout.tsx`.
|
|
108
94
|
* The pre-hydration script applies the theme class to `<html>` before React hydrates (preventing a
|
|
@@ -136,7 +122,7 @@ function resolveTheme(theme, systemFallback = 'dark') {
|
|
|
136
122
|
* </EDSProvider>
|
|
137
123
|
* ````
|
|
138
124
|
*/
|
|
139
|
-
export function EDSProvider({ theme: controlledTheme, defaultTheme = 'dark', onThemeChange, persistTheme, direction = 'ltr', language = direction === 'rtl' ? 'ar' : 'en', buttonOrLinkConfig, children, ...props }) {
|
|
125
|
+
export function EDSProvider({ theme: controlledTheme, defaultTheme = 'dark', onThemeChange, persistTheme, nonce, direction = 'ltr', language = direction === 'rtl' ? 'ar' : 'en', buttonOrLinkConfig, children, ...props }) {
|
|
140
126
|
/**
|
|
141
127
|
* Check for duplicate `EDSProvider` instances. We do the detection in an effect (after all
|
|
142
128
|
* providers have rendered), but throw in the next render so error boundaries can catch it.
|
|
@@ -204,6 +190,8 @@ export function EDSProvider({ theme: controlledTheme, defaultTheme = 'dark', onT
|
|
|
204
190
|
return removeClasses;
|
|
205
191
|
}
|
|
206
192
|
const style = document.createElement('style');
|
|
193
|
+
if (nonce !== undefined)
|
|
194
|
+
style.nonce = nonce;
|
|
207
195
|
style.textContent = '*:not(.eds-segmented-control *) { transition: none !important; }';
|
|
208
196
|
document.head.appendChild(style);
|
|
209
197
|
removeClasses();
|
|
@@ -216,22 +204,9 @@ export function EDSProvider({ theme: controlledTheme, defaultTheme = 'dark', onT
|
|
|
216
204
|
style.remove();
|
|
217
205
|
removeClasses();
|
|
218
206
|
};
|
|
219
|
-
}, [theme]);
|
|
220
|
-
//
|
|
221
|
-
|
|
222
|
-
// pre-paint.
|
|
223
|
-
const systemFallback = defaultTheme === 'system' ? 'dark' : defaultTheme;
|
|
224
|
-
const [activeTheme, setActiveTheme] = useState(() => theme === 'system' ? systemFallback : theme);
|
|
225
|
-
useLayoutEffect(() => {
|
|
226
|
-
setActiveTheme(resolveTheme(theme, systemFallback));
|
|
227
|
-
if (theme !== 'system')
|
|
228
|
-
return;
|
|
229
|
-
const handleChange = (event) => {
|
|
230
|
-
setActiveTheme(event.matches ? 'dark' : 'light');
|
|
231
|
-
};
|
|
232
|
-
prefersDarkMediaQuery?.addEventListener('change', handleChange);
|
|
233
|
-
return () => prefersDarkMediaQuery?.removeEventListener('change', handleChange);
|
|
234
|
-
}, [theme, systemFallback]);
|
|
207
|
+
}, [theme, nonce]);
|
|
208
|
+
// The server can't know the OS preference, so it renders `'dark'`, `:root`'s default
|
|
209
|
+
const systemTheme = useSyncExternalStore(subscribeToSystemTheme, getSystemTheme, () => 'dark');
|
|
235
210
|
/**
|
|
236
211
|
* Add the `data-eds-active` attribute to the `html` element when the Space key is pressed to
|
|
237
212
|
* improve Tailwind's `active` state.
|
|
@@ -281,40 +256,57 @@ export function EDSProvider({ theme: controlledTheme, defaultTheme = 'dark', onT
|
|
|
281
256
|
document.removeEventListener('visibilitychange', onVisibilityChange);
|
|
282
257
|
};
|
|
283
258
|
}, []);
|
|
259
|
+
/**
|
|
260
|
+
* Warn if build tools transpiled `light-dark()` (e.g. Lightning CSS with older browser targets).
|
|
261
|
+
* Its fallback resolves tokens on `:root`, so components inside `Dark` and `Light` would get the
|
|
262
|
+
* page's colors.
|
|
263
|
+
*/
|
|
264
|
+
useEffect(() => {
|
|
265
|
+
const lightDarkTest = getComputedStyle(document.documentElement).getPropertyValue('--eds-light-dark-test');
|
|
266
|
+
if (lightDarkTest !== '' && !lightDarkTest.includes('light-dark')) {
|
|
267
|
+
// oxlint-disable-next-line no-console
|
|
268
|
+
console.warn("[EDSProvider] `light-dark()` was transpiled by your build tools, so components inside `Dark`, `Light`, and `LocalTheme` will use the page's colors. Target Chrome 123, Safari 17.5, and Firefox 120 or newer (see the `@edgeandnode/eds-react` README).");
|
|
269
|
+
}
|
|
270
|
+
}, []);
|
|
271
|
+
const isHydrated = useIsHydrated();
|
|
284
272
|
const edsContextValue = useMemo(() => ({
|
|
285
273
|
theme,
|
|
286
|
-
activeTheme,
|
|
287
274
|
setTheme,
|
|
275
|
+
systemTheme,
|
|
288
276
|
direction,
|
|
289
277
|
language,
|
|
290
|
-
}), [theme,
|
|
291
|
-
return (_jsx(EDSContext.Provider, { value: edsContextValue, children: _jsx(DirectionProvider, { direction: direction, children: _jsx(Pane.Provider, { children: _jsx(Tooltip.Provider, { timeout: 300, children: _jsxs(ButtonOrLink.Config, { ...buttonOrLinkConfig, children: [
|
|
278
|
+
}), [theme, setTheme, systemTheme, direction, language]);
|
|
279
|
+
return (_jsx(EDSContext.Provider, { value: edsContextValue, children: _jsx(DirectionProvider, { direction: direction, children: _jsx(Pane.Provider, { children: _jsx(Tooltip.Provider, { timeout: 300, children: _jsxs(ButtonOrLink.Config, { ...buttonOrLinkConfig, children: [isHydrated ? null : (_jsxs(_Fragment, { children: [renderThemeScript(controlledTheme, defaultTheme, persistTheme, nonce), renderThemeStyle(controlledTheme ?? defaultTheme, nonce)] })), _jsx("div", { dir: direction, lang: language, ...mergeProps({ className: cn('eds-provider isolate') }, props), children: children })] }) }) }) }) }));
|
|
292
280
|
}
|
|
293
|
-
function
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
return `document.documentElement.classList.add('eds-${controlledTheme}')`;
|
|
298
|
-
}
|
|
299
|
-
if (persistTheme !== 'localStorage' && persistTheme !== 'cookie') {
|
|
300
|
-
return `document.documentElement.classList.add('eds-${defaultTheme}')`;
|
|
281
|
+
function renderThemeScript(controlledTheme, defaultTheme, persistTheme, nonce) {
|
|
282
|
+
if (controlledTheme !== undefined || persistTheme === undefined) {
|
|
283
|
+
const script = `document.documentElement.classList.add('eds-${controlledTheme ?? defaultTheme}')`;
|
|
284
|
+
return _jsx("script", { nonce: nonce, children: script });
|
|
301
285
|
}
|
|
302
|
-
|
|
286
|
+
// Custom adapters need the app's own script (see `persistTheme`), which this would conflict with
|
|
287
|
+
if (persistTheme !== 'localStorage' && persistTheme !== 'cookie')
|
|
288
|
+
return null;
|
|
289
|
+
const invalidCheck = VALID_THEMES.map((theme) => `t!=='${theme}'`).join('&&');
|
|
303
290
|
const readExpression = persistTheme === 'localStorage'
|
|
304
291
|
? `localStorage.getItem('${PERSISTENCE_KEY}')`
|
|
305
|
-
: `
|
|
306
|
-
|
|
292
|
+
: `(document.cookie.match(${COOKIE_REGEX})||[])[1]`;
|
|
293
|
+
const script = `(function(){try{var t=${readExpression};if(${invalidCheck})t='${defaultTheme}';document.documentElement.classList.add('eds-'+t)}catch(e){document.documentElement.classList.add('eds-${defaultTheme}')}})()`;
|
|
294
|
+
return _jsx("script", { nonce: nonce, children: script });
|
|
307
295
|
}
|
|
296
|
+
const ROOT_WITHOUT_THEME_CLASS = `:root:not(${Object.values(THEME_CLASSES)
|
|
297
|
+
.map((themeClass) => `.${themeClass}`)
|
|
298
|
+
.join(', ')})`;
|
|
308
299
|
/**
|
|
309
|
-
*
|
|
310
|
-
*
|
|
311
|
-
* Outputs its tag during SSR and during the client's initial render (ensuring the markup matches),
|
|
312
|
-
* and removes itself after hydration to keep the DOM clean. The browser executes the inline script
|
|
313
|
-
* as it parses the HTML, before React hydrates and before any styled body content paints.
|
|
300
|
+
* `:root` is dark by default, so other themes need a style until the theme class is set on
|
|
301
|
+
* `<html>`.
|
|
314
302
|
*/
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
303
|
+
const THEME_STYLES = {
|
|
304
|
+
dark: null,
|
|
305
|
+
light: `${ROOT_WITHOUT_THEME_CLASS}{color-scheme:only light;--eds-color-scheme:light}`,
|
|
306
|
+
system: `${ROOT_WITHOUT_THEME_CLASS}{color-scheme:light dark}@media (prefers-color-scheme:light){${ROOT_WITHOUT_THEME_CLASS}{--eds-color-scheme:light}}`,
|
|
307
|
+
};
|
|
308
|
+
function renderThemeStyle(theme, nonce) {
|
|
309
|
+
const style = THEME_STYLES[theme];
|
|
310
|
+
return style !== null ? _jsx("style", { nonce: nonce, children: style }) : null;
|
|
319
311
|
}
|
|
320
312
|
//# sourceMappingURL=EDSProvider.js.map
|
package/dist/EDSProvider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EDSProvider.js","sourceRoot":"","sources":["../src/EDSProvider.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,
|
|
1
|
+
{"version":3,"file":"EDSProvider.js","sourceRoot":"","sources":["../src/EDSProvider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -14,11 +14,11 @@ export declare namespace AddressProps {
|
|
|
14
14
|
}
|
|
15
15
|
interface CommonProps extends OwnProps, EDSComponentProps<typeof AddressMeta> {
|
|
16
16
|
}
|
|
17
|
-
interface ButtonProps extends CommonProps, MaybeButtonOrLinkProps.ButtonProps, MaybeButtonOrLinkProps.DisableableProps {
|
|
17
|
+
interface ButtonProps extends CommonProps, Omit<MaybeButtonOrLinkProps.ButtonProps, 'as'>, MaybeButtonOrLinkProps.DisableableProps {
|
|
18
18
|
}
|
|
19
|
-
interface LinkProps extends CommonProps, MaybeButtonOrLinkProps.LinkProps, MaybeButtonOrLinkProps.DisableableProps {
|
|
19
|
+
interface LinkProps extends CommonProps, Omit<MaybeButtonOrLinkProps.LinkProps, 'as'>, MaybeButtonOrLinkProps.DisableableProps {
|
|
20
20
|
}
|
|
21
|
-
interface OtherElementProps extends CommonProps, MaybeButtonOrLinkProps.OtherElementProps {
|
|
21
|
+
interface OtherElementProps extends CommonProps, Omit<MaybeButtonOrLinkProps.OtherElementProps, 'as'> {
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
export type AddressProps = AddressProps.ButtonProps | AddressProps.LinkProps | AddressProps.OtherElementProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Address.d.ts","sourceRoot":"","sources":["../../src/components/Address.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAK7D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,EAAqB,KAAK,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAG7F,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IACpC,UAAU,QAAQ;QAChB,2DAA2D;QAC3D,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;QAC3B;;;WAGG;QACH,MAAM,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,CAAA;KAC/C;IACD,UAAU,WAAY,SAAQ,QAAQ,EAAE,iBAAiB,CAAC,OAAO,WAAW,CAAC;KAAG;IAChF,UAAU,WACR,SACE,WAAW,EACX,sBAAsB,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"Address.d.ts","sourceRoot":"","sources":["../../src/components/Address.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAK7D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,EAAqB,KAAK,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAG7F,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IACpC,UAAU,QAAQ;QAChB,2DAA2D;QAC3D,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;QAC3B;;;WAGG;QACH,MAAM,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,CAAA;KAC/C;IACD,UAAU,WAAY,SAAQ,QAAQ,EAAE,iBAAiB,CAAC,OAAO,WAAW,CAAC;KAAG;IAChF,UAAU,WACR,SACE,WAAW,EACX,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC,EAC9C,sBAAsB,CAAC,gBAAgB;KAAG;IAC9C,UAAU,SACR,SACE,WAAW,EACX,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,IAAI,CAAC,EAC5C,sBAAsB,CAAC,gBAAgB;KAAG;IAC9C,UAAU,iBACR,SAAQ,WAAW,EAAE,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,EAAE,IAAI,CAAC;KAAG;CAC/E;AAED,MAAM,MAAM,YAAY,GACpB,YAAY,CAAC,WAAW,GACxB,YAAY,CAAC,SAAS,GACtB,YAAY,CAAC,iBAAiB,CAAA;AAElC,wBAAgB,OAAO,CAAC,EACtB,OAAO,EACP,IAAI,EACJ,OAAO,EAAE,aAAa,EACtB,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,YAAY,+BAmLd"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Address.js","sourceRoot":"","sources":["../../src/components/Address.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAG3C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErF,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC5E,OAAO,EAAE,EAAE,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAoB,MAAM,aAAc,CAAA;AACvD,OAAO,EAAE,iBAAiB,EAA+B,MAAM,6BAA8B,CAAA;AAC7F,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"Address.js","sourceRoot":"","sources":["../../src/components/Address.tsx"],"names":[],"mappings":"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"}
|
|
@@ -22,11 +22,11 @@ export declare namespace AvatarProps {
|
|
|
22
22
|
}
|
|
23
23
|
interface CommonProps extends OwnProps, EDSComponentProps<typeof AvatarMeta> {
|
|
24
24
|
}
|
|
25
|
-
interface ButtonProps extends CommonProps, Omit<MaybeButtonOrLinkProps.ButtonProps, 'children'> {
|
|
25
|
+
interface ButtonProps extends CommonProps, Omit<MaybeButtonOrLinkProps.ButtonProps, 'as' | 'children' | 'render'> {
|
|
26
26
|
}
|
|
27
|
-
interface LinkProps extends CommonProps, Omit<MaybeButtonOrLinkProps.LinkProps, 'children'> {
|
|
27
|
+
interface LinkProps extends CommonProps, Omit<MaybeButtonOrLinkProps.LinkProps, 'as' | 'children' | 'render'> {
|
|
28
28
|
}
|
|
29
|
-
interface OtherElementProps extends CommonProps, Omit<MaybeButtonOrLinkProps.OtherElementProps, 'children'> {
|
|
29
|
+
interface OtherElementProps extends CommonProps, Omit<MaybeButtonOrLinkProps.OtherElementProps, 'as' | 'children' | 'render'> {
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
export type AvatarProps = AvatarProps.ButtonProps | AvatarProps.LinkProps | AvatarProps.OtherElementProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../src/components/Avatar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAA;AAInD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../src/components/Avatar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAA;AAInD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAO7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAqB,KAAK,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAC7F,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,eAAe,CAAA;AAK1D,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,UAAU,QAAQ;QAChB;;;;WAIG;QACH,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,YAAY,GAAG,SAAS,CAAA;QACjD;;;;WAIG;QACH,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;QACvB,kFAAkF;QAClF,OAAO,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,GAAG,SAAS,CAAA;KAC/E;IACD,UAAU,WAAY,SAAQ,QAAQ,EAAE,iBAAiB,CAAC,OAAO,UAAU,CAAC;KAAG;IAC/E,UAAU,WACR,SAAQ,WAAW,EAAE,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,IAAI,GAAG,UAAU,GAAG,QAAQ,CAAC;KAAG;IAChG,UAAU,SACR,SAAQ,WAAW,EAAE,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,IAAI,GAAG,UAAU,GAAG,QAAQ,CAAC;KAAG;IAC9F,UAAU,iBACR,SACE,WAAW,EACX,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,EAAE,IAAI,GAAG,UAAU,GAAG,QAAQ,CAAC;KAAG;CACpF;AAED,MAAM,MAAM,WAAW,GACnB,WAAW,CAAC,WAAW,GACvB,WAAW,CAAC,SAAS,GACrB,WAAW,CAAC,iBAAiB,CAAA;AAEjC,wBAAgB,MAAM,CAAC,EACrB,GAAG,EAAE,SAAS,EACd,KAAK,EACL,IAAI,EACJ,GAAG,EAAE,SAAS,EACd,GAAG,EACH,OAAO,EACP,GAAG,KAAK,EACT,EAAE,WAAW,+BA2Fb"}
|
|
@@ -6,7 +6,8 @@ import { useDeepCompareEffect } from '@react-hookz/web';
|
|
|
6
6
|
import avatarPlaceholderRounded from '@edgeandnode/eds-react/assets/avatar-placeholder-rounded.png';
|
|
7
7
|
import { createIdenticon, PLACEHOLDER_ADDRESS } from '@edgeandnode/eds-utils';
|
|
8
8
|
import { useCSSPropsPolyfill, useEDS } from '../hooks/index.js';
|
|
9
|
-
import { cn, getAssetUrl, getCSSPropsAttributes
|
|
9
|
+
import { cn, getAssetUrl, getCSSPropsAttributes } from '../utils/index.js';
|
|
10
|
+
import { getTooltipProps } from '../utils/internal/index.js';
|
|
10
11
|
import { AvatarMeta } from './Avatar.meta.js';
|
|
11
12
|
import { MaybeButtonOrLink } from './base/MaybeButtonOrLink.js';
|
|
12
13
|
import { Tooltip } from './Tooltip.js';
|
|
@@ -29,7 +30,7 @@ export function Avatar({ ref: passedRef, shape, size, src: passedSrc, alt, toolt
|
|
|
29
30
|
return (_jsx(MaybeButtonOrLink, { ref: cssPropsPolyfillPassedRef, ...mergeProps({
|
|
30
31
|
className: cn('eds-avatar group/avatar peer/avatar root-flex u:shrink-0 u:outline-0 i:size-max'),
|
|
31
32
|
}, getCSSPropsAttributes(AvatarMeta, { shape, size }), cssPropsPolyfillAttributes, props), render: (renderProps, { Element, elementProps, category }) => {
|
|
32
|
-
return (_jsx(Tooltip, { content: category !== 'other' ? alt : undefined, ...(
|
|
33
|
+
return (_jsx(Tooltip, { content: category !== 'other' ? alt : undefined, ...getTooltipProps(tooltip), triggerProps: renderProps, children: _jsx(Element, { ...elementProps, children: _jsx("span", { className: "nested/avatar-paint pointer-events-none shrink-0", children: _jsxs("span", { className: "\n block overflow-clip bg-default\n group-clickable-focus-visible/avatar:outline\n @prop-size-xsmall/avatar:size-4\n @prop-size-small/avatar:size-5\n @prop-size-medium/avatar:size-6\n @prop-size-large/avatar:size-8\n @prop-size-xlarge/avatar:size-12\n @prop-shape-circle/avatar:rounded-full\n @prop-shape-rounded/avatar:rounded-4\n @prop-shape-rounded/avatar:@prop-size-xsmall/avatar:rounded-2\n @prop-shape-rounded/avatar:@prop-size-xlarge/avatar:rounded-8\n uu:*:absolute\n uu:*:inset-0\n uu:*:m-auto\n uu:*:size-full\n uu:*:object-cover\n i:@prop-size-xsmall/avatar:**:icon:default-size-2.5\n i:@prop-size-small/avatar:**:icon:default-size-3\n i:@prop-size-medium/avatar:**:icon:default-size-4\n i:@prop-size-large/avatar:**:icon:default-size-5\n i:@prop-size-xlarge/avatar:**:icon:default-size-8\n ", children: [src ? (typeof src === 'string' ? (_jsx("img", { src: src, alt: "", onError: () => setCurrentSourceIndex(currentSourceIndex + 1), className: "[[src^='data:image/bmp']]:[image-rendering:pixelated]" })) : (_jsx(Tooltip.Collector, { children: src }))) : null, alt ? _jsx("span", { className: "sr-only", children: alt }) : null] }) }) }) }));
|
|
33
34
|
} }));
|
|
34
35
|
}
|
|
35
36
|
//# sourceMappingURL=Avatar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../src/components/Avatar.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,QAAQ,EAAqB,MAAM,OAAO,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAGvD,OAAO,wBAAwB,MAAM,8DAA8D,CAAA;AACnG,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/D,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../src/components/Avatar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -14,22 +14,23 @@ export declare namespace BreadcrumbsItemProps {
|
|
|
14
14
|
addonBefore?: AddonValue | undefined;
|
|
15
15
|
/**
|
|
16
16
|
* Whether this breadcrumb item represents the current page. Defaults to `true` for the last
|
|
17
|
-
* `Breadcrumbs.Item` child of `Breadcrumbs
|
|
18
|
-
*
|
|
17
|
+
* `Breadcrumbs.Item` child of `Breadcrumbs` (or the item rendered by its last child, if items
|
|
18
|
+
* are wrapped in another component), and `false` for any other item. Set explicitly to override
|
|
19
|
+
* the default.
|
|
19
20
|
*/
|
|
20
21
|
current?: boolean | undefined;
|
|
21
22
|
}
|
|
22
23
|
interface CommonProps extends OwnProps, EDSComponentProps<typeof BreadcrumbsItemMeta> {
|
|
23
24
|
}
|
|
24
|
-
interface ButtonProps extends CommonProps, MaybeButtonOrLinkProps.ButtonProps {
|
|
25
|
+
interface ButtonProps extends CommonProps, Omit<MaybeButtonOrLinkProps.ButtonProps, 'as'> {
|
|
25
26
|
}
|
|
26
|
-
interface LinkProps extends CommonProps, MaybeButtonOrLinkProps.LinkProps {
|
|
27
|
+
interface LinkProps extends CommonProps, Omit<MaybeButtonOrLinkProps.LinkProps, 'as'> {
|
|
27
28
|
}
|
|
28
|
-
interface OtherElementProps extends CommonProps, MaybeButtonOrLinkProps.OtherElementProps {
|
|
29
|
+
interface OtherElementProps extends CommonProps, Omit<MaybeButtonOrLinkProps.OtherElementProps, 'as'> {
|
|
29
30
|
}
|
|
30
31
|
}
|
|
31
32
|
export type BreadcrumbsItemProps = BreadcrumbsItemProps.ButtonProps | BreadcrumbsItemProps.LinkProps | BreadcrumbsItemProps.OtherElementProps;
|
|
32
|
-
export declare function BreadcrumbsItem({ addonBefore, current, hideLabel, children, ...props }: BreadcrumbsItemProps): import("react").JSX.Element;
|
|
33
|
+
export declare function BreadcrumbsItem({ addonBefore, current: passedCurrent, hideLabel, children, ...props }: BreadcrumbsItemProps): import("react").JSX.Element;
|
|
33
34
|
export declare namespace BreadcrumbsItem {
|
|
34
35
|
var displayName: string;
|
|
35
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs.parts.d.ts","sourceRoot":"","sources":["../../src/components/Breadcrumbs.parts.tsx"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"Breadcrumbs.parts.d.ts","sourceRoot":"","sources":["../../src/components/Breadcrumbs.parts.tsx"],"names":[],"mappings":"AAEA,OAAO,EAQL,KAAK,cAAc,EAEpB,MAAM,OAAO,CAAA;AAMd,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAM7D,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC/D,OAAO,EAAqB,KAAK,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAC7F,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAW5E,MAAM,WAAW,gBACf,SAAQ,cAAc,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC,OAAO,eAAe,CAAC;CAAG;AAE7E,wBAAgB,eAAe,CAAC,EAC9B,GAAG,EAAE,SAAS,EACd,KAAK,EACL,YAAY,EAAE,eAAe,EAC7B,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,gBAAgB,+BAkNlB;yBAxNe,eAAe;;;AA2N/B,MAAM,CAAC,OAAO,WAAW,oBAAoB,CAAC;IAC5C,UAAU,QAAQ;QAChB,WAAW,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;QACpC;;;;;WAKG;QACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC9B;IACD,UAAU,WAAY,SAAQ,QAAQ,EAAE,iBAAiB,CAAC,OAAO,mBAAmB,CAAC;KAAG;IACxF,UAAU,WAAY,SAAQ,WAAW,EAAE,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC;KAAG;IAC5F,UAAU,SAAU,SAAQ,WAAW,EAAE,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,IAAI,CAAC;KAAG;IACxF,UAAU,iBACR,SAAQ,WAAW,EAAE,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,EAAE,IAAI,CAAC;KAAG;CAC/E;AAED,MAAM,MAAM,oBAAoB,GAC5B,oBAAoB,CAAC,WAAW,GAChC,oBAAoB,CAAC,SAAS,GAC9B,oBAAoB,CAAC,iBAAiB,CAAA;AAE1C,wBAAgB,eAAe,CAAC,EAC9B,WAAW,EACX,OAAO,EAAE,aAAa,EACtB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,oBAAoB,+BAqEtB;yBA3Ee,eAAe"}
|