@react-spectrum/provider 3.10.0 → 3.10.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.
@@ -52,7 +52,7 @@ const $96cabdf5b0aed55b$var$DEFAULT_BREAKPOINTS = {
52
52
  XL: 1280,
53
53
  XXL: 1536
54
54
  };
55
- function $96cabdf5b0aed55b$var$Provider(props, ref) {
55
+ const $96cabdf5b0aed55b$export$2881499e37b75b9a = /*#__PURE__*/ (0, ($parcel$interopDefault($dbjUM$react))).forwardRef(function Provider(props, ref) {
56
56
  let prevContext = (0, $dbjUM$react.useContext)((0, $a5b4f4e252b5a021$exports.Context));
57
57
  let prevColorScheme = prevContext && prevContext.colorScheme;
58
58
  let prevBreakpoints = prevContext && prevContext.breakpoints;
@@ -107,12 +107,7 @@ function $96cabdf5b0aed55b$var$Provider(props, ref) {
107
107
  }, /*#__PURE__*/ (0, ($parcel$interopDefault($dbjUM$react))).createElement((0, $dbjUM$reactspectrumutils.BreakpointProvider), {
108
108
  matchedBreakpoints: matchedBreakpoints
109
109
  }, /*#__PURE__*/ (0, ($parcel$interopDefault($dbjUM$react))).createElement((0, $dbjUM$reactariaoverlays.ModalProvider), null, contents))));
110
- }
111
- /**
112
- * Provider is the container for all React Spectrum applications.
113
- * It defines the theme, locale, and other application level settings,
114
- * and can also be used to provide common properties to a group of components.
115
- */ let $96cabdf5b0aed55b$export$2881499e37b75b9a = /*#__PURE__*/ (0, ($parcel$interopDefault($dbjUM$react))).forwardRef($96cabdf5b0aed55b$var$Provider);
110
+ });
116
111
  const $96cabdf5b0aed55b$var$ProviderWrapper = /*#__PURE__*/ (0, ($parcel$interopDefault($dbjUM$react))).forwardRef(function ProviderWrapper(props, ref) {
117
112
  let { children: children, ...otherProps } = props;
118
113
  let { locale: locale, direction: direction } = (0, $dbjUM$reactariai18n.useLocale)();
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-spectrum/provider/src/Provider.tsx"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n BreakpointProvider,\n shouldKeepSpectrumClassNames,\n useDOMRef,\n useMatchedBreakpoints,\n useStyleProps\n} from '@react-spectrum/utils';\nimport clsx from 'clsx';\nimport {Context} from './context';\nimport {DOMRef} from '@react-types/shared';\nimport {filterDOMProps, RouterProvider} from '@react-aria/utils';\nimport {I18nProvider, useLocale} from '@react-aria/i18n';\nimport {ModalProvider, useModalProvider} from '@react-aria/overlays';\nimport {ProviderContext, ProviderProps} from '@react-types/provider';\nimport React, {useContext, useEffect, useRef} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/page/vars.css';\nimport typographyStyles from '@adobe/spectrum-css-temp/components/typography/index.css';\nimport {useColorScheme, useScale} from './mediaQueries';\n// @ts-ignore\nimport {version} from '../package.json';\n\nconst DEFAULT_BREAKPOINTS = {S: 640, M: 768, L: 1024, XL: 1280, XXL: 1536};\n\nfunction Provider(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {\n let prevContext = useContext(Context);\n let prevColorScheme = prevContext && prevContext.colorScheme;\n let prevBreakpoints = prevContext && prevContext.breakpoints;\n let {\n theme = prevContext && prevContext.theme,\n defaultColorScheme\n } = props;\n if (!theme) {\n throw new Error('theme not found, the parent provider must have a theme provided');\n }\n // Hooks must always be called.\n let autoColorScheme = useColorScheme(theme, defaultColorScheme || 'light');\n let autoScale = useScale(theme);\n let {locale: prevLocale} = useLocale();\n // if the new theme doesn't support the prevColorScheme, we must resort to the auto\n let usePrevColorScheme = prevColorScheme ? !!theme[prevColorScheme] : false;\n\n // importance of color scheme props > parent > auto:(OS > default > omitted)\n let {\n colorScheme = usePrevColorScheme ? prevColorScheme : autoColorScheme,\n scale = prevContext ? prevContext.scale : autoScale,\n locale = prevContext ? prevLocale : undefined,\n breakpoints = prevContext ? prevBreakpoints : DEFAULT_BREAKPOINTS,\n children,\n isQuiet,\n isEmphasized,\n isDisabled,\n isRequired,\n isReadOnly,\n validationState,\n router,\n ...otherProps\n } = props;\n\n // select only the props with values so undefined props don't overwrite prevContext values\n let currentProps = {\n version,\n theme,\n breakpoints,\n colorScheme,\n scale,\n isQuiet,\n isEmphasized,\n isDisabled,\n isRequired,\n isReadOnly,\n validationState\n };\n\n let matchedBreakpoints = useMatchedBreakpoints(breakpoints!);\n let filteredProps = {};\n Object.entries(currentProps).forEach(([key, value]) => value !== undefined && (filteredProps[key] = value));\n\n // Merge options with parent provider\n let context = Object.assign({}, prevContext, filteredProps);\n\n // Only wrap in a DOM node if the theme, colorScheme, or scale changed\n let contents = children;\n let domProps = filterDOMProps(otherProps);\n let {styleProps} = useStyleProps(otherProps, undefined, {matchedBreakpoints});\n if (!prevContext || props.locale || theme !== prevContext.theme || colorScheme !== prevContext.colorScheme || scale !== prevContext.scale || Object.keys(domProps).length > 0 || otherProps.UNSAFE_className || (styleProps.style && Object.keys(styleProps.style).length > 0)) {\n contents = (\n <ProviderWrapper {...props} UNSAFE_style={{isolation: !prevContext ? 'isolate' : undefined, ...styleProps.style}} ref={ref}>\n {contents}\n </ProviderWrapper>\n );\n }\n\n if (router) {\n contents = <RouterProvider {...router}>{contents}</RouterProvider>;\n }\n\n return (\n <Context.Provider value={context}>\n <I18nProvider locale={locale}>\n <BreakpointProvider matchedBreakpoints={matchedBreakpoints}>\n <ModalProvider>\n {contents}\n </ModalProvider>\n </BreakpointProvider>\n </I18nProvider>\n </Context.Provider>\n );\n}\n\n/**\n * Provider is the container for all React Spectrum applications.\n * It defines the theme, locale, and other application level settings,\n * and can also be used to provide common properties to a group of components.\n */\nlet _Provider = React.forwardRef(Provider);\nexport {_Provider as Provider};\n\nconst ProviderWrapper = React.forwardRef(function ProviderWrapper(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {\n let {\n children,\n ...otherProps\n } = props;\n let {locale, direction} = useLocale();\n let {theme, colorScheme, scale} = useProvider();\n let {modalProviderProps} = useModalProvider();\n let {styleProps} = useStyleProps(otherProps);\n let domRef = useDOMRef(ref);\n\n let themeKey = Object.keys(theme[colorScheme]!)[0];\n let scaleKey = Object.keys(theme[scale]!)[0];\n\n let className = clsx(\n styleProps.className,\n styles['spectrum'],\n typographyStyles['spectrum'],\n Object.values(theme[colorScheme]!),\n Object.values(theme[scale]!),\n theme.global ? Object.values(theme.global) : null,\n {\n 'react-spectrum-provider': shouldKeepSpectrumClassNames,\n spectrum: shouldKeepSpectrumClassNames,\n [themeKey]: shouldKeepSpectrumClassNames,\n [scaleKey]: shouldKeepSpectrumClassNames\n }\n );\n\n let style = {\n ...styleProps.style,\n // This ensures that browser native UI like scrollbars are rendered in the right color scheme.\n // See https://web.dev/color-scheme/.\n colorScheme: props.colorScheme ?? colorScheme ?? Object.keys(theme).filter(k => k === 'light' || k === 'dark').join(' ')\n };\n\n let hasWarned = useRef(false);\n useEffect(() => {\n if (direction && domRef.current) {\n let closestDir = domRef.current?.parentElement?.closest('[dir]');\n let dir = closestDir && closestDir.getAttribute('dir');\n if (dir && dir !== direction && !hasWarned.current) {\n console.warn(`Language directions cannot be nested. ${direction} inside ${dir}.`);\n hasWarned.current = true;\n }\n }\n }, [direction, domRef, hasWarned]);\n\n\n return (\n <div\n {...filterDOMProps(otherProps)}\n {...styleProps}\n {...modalProviderProps}\n className={className}\n style={style}\n lang={locale}\n dir={direction}\n ref={domRef}>\n {children}\n </div>\n );\n});\n\n/**\n * Returns the various settings and styles applied by the nearest parent Provider.\n * Properties explicitly set by the nearest parent Provider override those provided by preceeding Providers.\n */\nexport function useProvider(): ProviderContext {\n let context = useContext(Context);\n if (!context) {\n throw new Error(\n 'No root provider found, please make sure your app is wrapped within a <Provider>. ' +\n 'Alternatively, this issue may be caused by duplicate packages, see https://github.com/adobe/react-spectrum/wiki/Frequently-Asked-Questions-(FAQs)#why-are-there-errors-after-upgrading-a-react-spectrum-package for more information.'\n );\n }\n return context;\n}\n\nexport function useProviderProps<T>(props: T) : T {\n let context = useContext(Context);\n if (!context) {\n return props;\n }\n return Object.assign({}, {\n isQuiet: context.isQuiet,\n isEmphasized: context.isEmphasized,\n isDisabled: context.isDisabled,\n isRequired: context.isRequired,\n isReadOnly: context.isReadOnly,\n validationState: context.validationState\n }, props);\n}\n"],"names":[],"version":3,"file":"Provider.main.js.map"}
1
+ {"mappings":"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","sources":["packages/@react-spectrum/provider/src/Provider.tsx"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n BreakpointProvider,\n shouldKeepSpectrumClassNames,\n useDOMRef,\n useMatchedBreakpoints,\n useStyleProps\n} from '@react-spectrum/utils';\nimport clsx from 'clsx';\nimport {Context} from './context';\nimport {DOMRef} from '@react-types/shared';\nimport {filterDOMProps, RouterProvider} from '@react-aria/utils';\nimport {I18nProvider, useLocale} from '@react-aria/i18n';\nimport {ModalProvider, useModalProvider} from '@react-aria/overlays';\nimport {ProviderContext, ProviderProps} from '@react-types/provider';\nimport React, {useContext, useEffect, useRef} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/page/vars.css';\nimport typographyStyles from '@adobe/spectrum-css-temp/components/typography/index.css';\nimport {useColorScheme, useScale} from './mediaQueries';\n// @ts-ignore\nimport {version} from '../package.json';\n\nconst DEFAULT_BREAKPOINTS = {S: 640, M: 768, L: 1024, XL: 1280, XXL: 1536};\n\n/**\n * Provider is the container for all React Spectrum applications.\n * It defines the theme, locale, and other application level settings,\n * and can also be used to provide common properties to a group of components.\n */\nexport const Provider = React.forwardRef(function Provider(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {\n let prevContext = useContext(Context);\n let prevColorScheme = prevContext && prevContext.colorScheme;\n let prevBreakpoints = prevContext && prevContext.breakpoints;\n let {\n theme = prevContext && prevContext.theme,\n defaultColorScheme\n } = props;\n if (!theme) {\n throw new Error('theme not found, the parent provider must have a theme provided');\n }\n // Hooks must always be called.\n let autoColorScheme = useColorScheme(theme, defaultColorScheme || 'light');\n let autoScale = useScale(theme);\n let {locale: prevLocale} = useLocale();\n // if the new theme doesn't support the prevColorScheme, we must resort to the auto\n let usePrevColorScheme = prevColorScheme ? !!theme[prevColorScheme] : false;\n\n // importance of color scheme props > parent > auto:(OS > default > omitted)\n let {\n colorScheme = usePrevColorScheme ? prevColorScheme : autoColorScheme,\n scale = prevContext ? prevContext.scale : autoScale,\n locale = prevContext ? prevLocale : undefined,\n breakpoints = prevContext ? prevBreakpoints : DEFAULT_BREAKPOINTS,\n children,\n isQuiet,\n isEmphasized,\n isDisabled,\n isRequired,\n isReadOnly,\n validationState,\n router,\n ...otherProps\n } = props;\n\n // select only the props with values so undefined props don't overwrite prevContext values\n let currentProps = {\n version,\n theme,\n breakpoints,\n colorScheme,\n scale,\n isQuiet,\n isEmphasized,\n isDisabled,\n isRequired,\n isReadOnly,\n validationState\n };\n\n let matchedBreakpoints = useMatchedBreakpoints(breakpoints!);\n let filteredProps = {};\n Object.entries(currentProps).forEach(([key, value]) => value !== undefined && (filteredProps[key] = value));\n\n // Merge options with parent provider\n let context = Object.assign({}, prevContext, filteredProps);\n\n // Only wrap in a DOM node if the theme, colorScheme, or scale changed\n let contents = children;\n let domProps = filterDOMProps(otherProps);\n let {styleProps} = useStyleProps(otherProps, undefined, {matchedBreakpoints});\n if (!prevContext || props.locale || theme !== prevContext.theme || colorScheme !== prevContext.colorScheme || scale !== prevContext.scale || Object.keys(domProps).length > 0 || otherProps.UNSAFE_className || (styleProps.style && Object.keys(styleProps.style).length > 0)) {\n contents = (\n <ProviderWrapper {...props} UNSAFE_style={{isolation: !prevContext ? 'isolate' : undefined, ...styleProps.style}} ref={ref}>\n {contents}\n </ProviderWrapper>\n );\n }\n\n if (router) {\n contents = <RouterProvider {...router}>{contents}</RouterProvider>;\n }\n\n return (\n <Context.Provider value={context}>\n <I18nProvider locale={locale}>\n <BreakpointProvider matchedBreakpoints={matchedBreakpoints}>\n <ModalProvider>\n {contents}\n </ModalProvider>\n </BreakpointProvider>\n </I18nProvider>\n </Context.Provider>\n );\n});\n\nconst ProviderWrapper = React.forwardRef(function ProviderWrapper(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {\n let {\n children,\n ...otherProps\n } = props;\n let {locale, direction} = useLocale();\n let {theme, colorScheme, scale} = useProvider();\n let {modalProviderProps} = useModalProvider();\n let {styleProps} = useStyleProps(otherProps);\n let domRef = useDOMRef(ref);\n\n let themeKey = Object.keys(theme[colorScheme]!)[0];\n let scaleKey = Object.keys(theme[scale]!)[0];\n\n let className = clsx(\n styleProps.className,\n styles['spectrum'],\n typographyStyles['spectrum'],\n Object.values(theme[colorScheme]!),\n Object.values(theme[scale]!),\n theme.global ? Object.values(theme.global) : null,\n {\n 'react-spectrum-provider': shouldKeepSpectrumClassNames,\n spectrum: shouldKeepSpectrumClassNames,\n [themeKey]: shouldKeepSpectrumClassNames,\n [scaleKey]: shouldKeepSpectrumClassNames\n }\n );\n\n let style = {\n ...styleProps.style,\n // This ensures that browser native UI like scrollbars are rendered in the right color scheme.\n // See https://web.dev/color-scheme/.\n colorScheme: props.colorScheme ?? colorScheme ?? Object.keys(theme).filter(k => k === 'light' || k === 'dark').join(' ')\n };\n\n let hasWarned = useRef(false);\n useEffect(() => {\n if (direction && domRef.current) {\n let closestDir = domRef.current?.parentElement?.closest('[dir]');\n let dir = closestDir && closestDir.getAttribute('dir');\n if (dir && dir !== direction && !hasWarned.current) {\n console.warn(`Language directions cannot be nested. ${direction} inside ${dir}.`);\n hasWarned.current = true;\n }\n }\n }, [direction, domRef, hasWarned]);\n\n\n return (\n <div\n {...filterDOMProps(otherProps)}\n {...styleProps}\n {...modalProviderProps}\n className={className}\n style={style}\n lang={locale}\n dir={direction}\n ref={domRef}>\n {children}\n </div>\n );\n});\n\n/**\n * Returns the various settings and styles applied by the nearest parent Provider.\n * Properties explicitly set by the nearest parent Provider override those provided by preceeding Providers.\n */\nexport function useProvider(): ProviderContext {\n let context = useContext(Context);\n if (!context) {\n throw new Error(\n 'No root provider found, please make sure your app is wrapped within a <Provider>. ' +\n 'Alternatively, this issue may be caused by duplicate packages, see https://github.com/adobe/react-spectrum/wiki/Frequently-Asked-Questions-(FAQs)#why-are-there-errors-after-upgrading-a-react-spectrum-package for more information.'\n );\n }\n return context;\n}\n\nexport function useProviderProps<T>(props: T) : T {\n let context = useContext(Context);\n if (!context) {\n return props;\n }\n return Object.assign({}, {\n isQuiet: context.isQuiet,\n isEmphasized: context.isEmphasized,\n isDisabled: context.isDisabled,\n isRequired: context.isRequired,\n isReadOnly: context.isReadOnly,\n validationState: context.validationState\n }, props);\n}\n"],"names":[],"version":3,"file":"Provider.main.js.map"}
package/dist/Provider.mjs CHANGED
@@ -44,7 +44,7 @@ const $7167f8da3cce35e4$var$DEFAULT_BREAKPOINTS = {
44
44
  XL: 1280,
45
45
  XXL: 1536
46
46
  };
47
- function $7167f8da3cce35e4$var$Provider(props, ref) {
47
+ const $7167f8da3cce35e4$export$2881499e37b75b9a = /*#__PURE__*/ (0, $dyW1v$react).forwardRef(function Provider(props, ref) {
48
48
  let prevContext = (0, $dyW1v$useContext)((0, $a8430f637b4ccbce$export$841858b892ce1f4c));
49
49
  let prevColorScheme = prevContext && prevContext.colorScheme;
50
50
  let prevBreakpoints = prevContext && prevContext.breakpoints;
@@ -99,12 +99,7 @@ function $7167f8da3cce35e4$var$Provider(props, ref) {
99
99
  }, /*#__PURE__*/ (0, $dyW1v$react).createElement((0, $dyW1v$BreakpointProvider), {
100
100
  matchedBreakpoints: matchedBreakpoints
101
101
  }, /*#__PURE__*/ (0, $dyW1v$react).createElement((0, $dyW1v$ModalProvider), null, contents))));
102
- }
103
- /**
104
- * Provider is the container for all React Spectrum applications.
105
- * It defines the theme, locale, and other application level settings,
106
- * and can also be used to provide common properties to a group of components.
107
- */ let $7167f8da3cce35e4$export$2881499e37b75b9a = /*#__PURE__*/ (0, $dyW1v$react).forwardRef($7167f8da3cce35e4$var$Provider);
102
+ });
108
103
  const $7167f8da3cce35e4$var$ProviderWrapper = /*#__PURE__*/ (0, $dyW1v$react).forwardRef(function ProviderWrapper(props, ref) {
109
104
  let { children: children, ...otherProps } = props;
110
105
  let { locale: locale, direction: direction } = (0, $dyW1v$useLocale)();
@@ -44,7 +44,7 @@ const $7167f8da3cce35e4$var$DEFAULT_BREAKPOINTS = {
44
44
  XL: 1280,
45
45
  XXL: 1536
46
46
  };
47
- function $7167f8da3cce35e4$var$Provider(props, ref) {
47
+ const $7167f8da3cce35e4$export$2881499e37b75b9a = /*#__PURE__*/ (0, $dyW1v$react).forwardRef(function Provider(props, ref) {
48
48
  let prevContext = (0, $dyW1v$useContext)((0, $a8430f637b4ccbce$export$841858b892ce1f4c));
49
49
  let prevColorScheme = prevContext && prevContext.colorScheme;
50
50
  let prevBreakpoints = prevContext && prevContext.breakpoints;
@@ -99,12 +99,7 @@ function $7167f8da3cce35e4$var$Provider(props, ref) {
99
99
  }, /*#__PURE__*/ (0, $dyW1v$react).createElement((0, $dyW1v$BreakpointProvider), {
100
100
  matchedBreakpoints: matchedBreakpoints
101
101
  }, /*#__PURE__*/ (0, $dyW1v$react).createElement((0, $dyW1v$ModalProvider), null, contents))));
102
- }
103
- /**
104
- * Provider is the container for all React Spectrum applications.
105
- * It defines the theme, locale, and other application level settings,
106
- * and can also be used to provide common properties to a group of components.
107
- */ let $7167f8da3cce35e4$export$2881499e37b75b9a = /*#__PURE__*/ (0, $dyW1v$react).forwardRef($7167f8da3cce35e4$var$Provider);
102
+ });
108
103
  const $7167f8da3cce35e4$var$ProviderWrapper = /*#__PURE__*/ (0, $dyW1v$react).forwardRef(function ProviderWrapper(props, ref) {
109
104
  let { children: children, ...otherProps } = props;
110
105
  let { locale: locale, direction: direction } = (0, $dyW1v$useLocale)();
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-spectrum/provider/src/Provider.tsx"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n BreakpointProvider,\n shouldKeepSpectrumClassNames,\n useDOMRef,\n useMatchedBreakpoints,\n useStyleProps\n} from '@react-spectrum/utils';\nimport clsx from 'clsx';\nimport {Context} from './context';\nimport {DOMRef} from '@react-types/shared';\nimport {filterDOMProps, RouterProvider} from '@react-aria/utils';\nimport {I18nProvider, useLocale} from '@react-aria/i18n';\nimport {ModalProvider, useModalProvider} from '@react-aria/overlays';\nimport {ProviderContext, ProviderProps} from '@react-types/provider';\nimport React, {useContext, useEffect, useRef} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/page/vars.css';\nimport typographyStyles from '@adobe/spectrum-css-temp/components/typography/index.css';\nimport {useColorScheme, useScale} from './mediaQueries';\n// @ts-ignore\nimport {version} from '../package.json';\n\nconst DEFAULT_BREAKPOINTS = {S: 640, M: 768, L: 1024, XL: 1280, XXL: 1536};\n\nfunction Provider(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {\n let prevContext = useContext(Context);\n let prevColorScheme = prevContext && prevContext.colorScheme;\n let prevBreakpoints = prevContext && prevContext.breakpoints;\n let {\n theme = prevContext && prevContext.theme,\n defaultColorScheme\n } = props;\n if (!theme) {\n throw new Error('theme not found, the parent provider must have a theme provided');\n }\n // Hooks must always be called.\n let autoColorScheme = useColorScheme(theme, defaultColorScheme || 'light');\n let autoScale = useScale(theme);\n let {locale: prevLocale} = useLocale();\n // if the new theme doesn't support the prevColorScheme, we must resort to the auto\n let usePrevColorScheme = prevColorScheme ? !!theme[prevColorScheme] : false;\n\n // importance of color scheme props > parent > auto:(OS > default > omitted)\n let {\n colorScheme = usePrevColorScheme ? prevColorScheme : autoColorScheme,\n scale = prevContext ? prevContext.scale : autoScale,\n locale = prevContext ? prevLocale : undefined,\n breakpoints = prevContext ? prevBreakpoints : DEFAULT_BREAKPOINTS,\n children,\n isQuiet,\n isEmphasized,\n isDisabled,\n isRequired,\n isReadOnly,\n validationState,\n router,\n ...otherProps\n } = props;\n\n // select only the props with values so undefined props don't overwrite prevContext values\n let currentProps = {\n version,\n theme,\n breakpoints,\n colorScheme,\n scale,\n isQuiet,\n isEmphasized,\n isDisabled,\n isRequired,\n isReadOnly,\n validationState\n };\n\n let matchedBreakpoints = useMatchedBreakpoints(breakpoints!);\n let filteredProps = {};\n Object.entries(currentProps).forEach(([key, value]) => value !== undefined && (filteredProps[key] = value));\n\n // Merge options with parent provider\n let context = Object.assign({}, prevContext, filteredProps);\n\n // Only wrap in a DOM node if the theme, colorScheme, or scale changed\n let contents = children;\n let domProps = filterDOMProps(otherProps);\n let {styleProps} = useStyleProps(otherProps, undefined, {matchedBreakpoints});\n if (!prevContext || props.locale || theme !== prevContext.theme || colorScheme !== prevContext.colorScheme || scale !== prevContext.scale || Object.keys(domProps).length > 0 || otherProps.UNSAFE_className || (styleProps.style && Object.keys(styleProps.style).length > 0)) {\n contents = (\n <ProviderWrapper {...props} UNSAFE_style={{isolation: !prevContext ? 'isolate' : undefined, ...styleProps.style}} ref={ref}>\n {contents}\n </ProviderWrapper>\n );\n }\n\n if (router) {\n contents = <RouterProvider {...router}>{contents}</RouterProvider>;\n }\n\n return (\n <Context.Provider value={context}>\n <I18nProvider locale={locale}>\n <BreakpointProvider matchedBreakpoints={matchedBreakpoints}>\n <ModalProvider>\n {contents}\n </ModalProvider>\n </BreakpointProvider>\n </I18nProvider>\n </Context.Provider>\n );\n}\n\n/**\n * Provider is the container for all React Spectrum applications.\n * It defines the theme, locale, and other application level settings,\n * and can also be used to provide common properties to a group of components.\n */\nlet _Provider = React.forwardRef(Provider);\nexport {_Provider as Provider};\n\nconst ProviderWrapper = React.forwardRef(function ProviderWrapper(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {\n let {\n children,\n ...otherProps\n } = props;\n let {locale, direction} = useLocale();\n let {theme, colorScheme, scale} = useProvider();\n let {modalProviderProps} = useModalProvider();\n let {styleProps} = useStyleProps(otherProps);\n let domRef = useDOMRef(ref);\n\n let themeKey = Object.keys(theme[colorScheme]!)[0];\n let scaleKey = Object.keys(theme[scale]!)[0];\n\n let className = clsx(\n styleProps.className,\n styles['spectrum'],\n typographyStyles['spectrum'],\n Object.values(theme[colorScheme]!),\n Object.values(theme[scale]!),\n theme.global ? Object.values(theme.global) : null,\n {\n 'react-spectrum-provider': shouldKeepSpectrumClassNames,\n spectrum: shouldKeepSpectrumClassNames,\n [themeKey]: shouldKeepSpectrumClassNames,\n [scaleKey]: shouldKeepSpectrumClassNames\n }\n );\n\n let style = {\n ...styleProps.style,\n // This ensures that browser native UI like scrollbars are rendered in the right color scheme.\n // See https://web.dev/color-scheme/.\n colorScheme: props.colorScheme ?? colorScheme ?? Object.keys(theme).filter(k => k === 'light' || k === 'dark').join(' ')\n };\n\n let hasWarned = useRef(false);\n useEffect(() => {\n if (direction && domRef.current) {\n let closestDir = domRef.current?.parentElement?.closest('[dir]');\n let dir = closestDir && closestDir.getAttribute('dir');\n if (dir && dir !== direction && !hasWarned.current) {\n console.warn(`Language directions cannot be nested. ${direction} inside ${dir}.`);\n hasWarned.current = true;\n }\n }\n }, [direction, domRef, hasWarned]);\n\n\n return (\n <div\n {...filterDOMProps(otherProps)}\n {...styleProps}\n {...modalProviderProps}\n className={className}\n style={style}\n lang={locale}\n dir={direction}\n ref={domRef}>\n {children}\n </div>\n );\n});\n\n/**\n * Returns the various settings and styles applied by the nearest parent Provider.\n * Properties explicitly set by the nearest parent Provider override those provided by preceeding Providers.\n */\nexport function useProvider(): ProviderContext {\n let context = useContext(Context);\n if (!context) {\n throw new Error(\n 'No root provider found, please make sure your app is wrapped within a <Provider>. ' +\n 'Alternatively, this issue may be caused by duplicate packages, see https://github.com/adobe/react-spectrum/wiki/Frequently-Asked-Questions-(FAQs)#why-are-there-errors-after-upgrading-a-react-spectrum-package for more information.'\n );\n }\n return context;\n}\n\nexport function useProviderProps<T>(props: T) : T {\n let context = useContext(Context);\n if (!context) {\n return props;\n }\n return Object.assign({}, {\n isQuiet: context.isQuiet,\n isEmphasized: context.isEmphasized,\n isDisabled: context.isDisabled,\n isRequired: context.isRequired,\n isReadOnly: context.isReadOnly,\n validationState: context.validationState\n }, props);\n}\n"],"names":[],"version":3,"file":"Provider.module.js.map"}
1
+ {"mappings":"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","sources":["packages/@react-spectrum/provider/src/Provider.tsx"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n BreakpointProvider,\n shouldKeepSpectrumClassNames,\n useDOMRef,\n useMatchedBreakpoints,\n useStyleProps\n} from '@react-spectrum/utils';\nimport clsx from 'clsx';\nimport {Context} from './context';\nimport {DOMRef} from '@react-types/shared';\nimport {filterDOMProps, RouterProvider} from '@react-aria/utils';\nimport {I18nProvider, useLocale} from '@react-aria/i18n';\nimport {ModalProvider, useModalProvider} from '@react-aria/overlays';\nimport {ProviderContext, ProviderProps} from '@react-types/provider';\nimport React, {useContext, useEffect, useRef} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/page/vars.css';\nimport typographyStyles from '@adobe/spectrum-css-temp/components/typography/index.css';\nimport {useColorScheme, useScale} from './mediaQueries';\n// @ts-ignore\nimport {version} from '../package.json';\n\nconst DEFAULT_BREAKPOINTS = {S: 640, M: 768, L: 1024, XL: 1280, XXL: 1536};\n\n/**\n * Provider is the container for all React Spectrum applications.\n * It defines the theme, locale, and other application level settings,\n * and can also be used to provide common properties to a group of components.\n */\nexport const Provider = React.forwardRef(function Provider(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {\n let prevContext = useContext(Context);\n let prevColorScheme = prevContext && prevContext.colorScheme;\n let prevBreakpoints = prevContext && prevContext.breakpoints;\n let {\n theme = prevContext && prevContext.theme,\n defaultColorScheme\n } = props;\n if (!theme) {\n throw new Error('theme not found, the parent provider must have a theme provided');\n }\n // Hooks must always be called.\n let autoColorScheme = useColorScheme(theme, defaultColorScheme || 'light');\n let autoScale = useScale(theme);\n let {locale: prevLocale} = useLocale();\n // if the new theme doesn't support the prevColorScheme, we must resort to the auto\n let usePrevColorScheme = prevColorScheme ? !!theme[prevColorScheme] : false;\n\n // importance of color scheme props > parent > auto:(OS > default > omitted)\n let {\n colorScheme = usePrevColorScheme ? prevColorScheme : autoColorScheme,\n scale = prevContext ? prevContext.scale : autoScale,\n locale = prevContext ? prevLocale : undefined,\n breakpoints = prevContext ? prevBreakpoints : DEFAULT_BREAKPOINTS,\n children,\n isQuiet,\n isEmphasized,\n isDisabled,\n isRequired,\n isReadOnly,\n validationState,\n router,\n ...otherProps\n } = props;\n\n // select only the props with values so undefined props don't overwrite prevContext values\n let currentProps = {\n version,\n theme,\n breakpoints,\n colorScheme,\n scale,\n isQuiet,\n isEmphasized,\n isDisabled,\n isRequired,\n isReadOnly,\n validationState\n };\n\n let matchedBreakpoints = useMatchedBreakpoints(breakpoints!);\n let filteredProps = {};\n Object.entries(currentProps).forEach(([key, value]) => value !== undefined && (filteredProps[key] = value));\n\n // Merge options with parent provider\n let context = Object.assign({}, prevContext, filteredProps);\n\n // Only wrap in a DOM node if the theme, colorScheme, or scale changed\n let contents = children;\n let domProps = filterDOMProps(otherProps);\n let {styleProps} = useStyleProps(otherProps, undefined, {matchedBreakpoints});\n if (!prevContext || props.locale || theme !== prevContext.theme || colorScheme !== prevContext.colorScheme || scale !== prevContext.scale || Object.keys(domProps).length > 0 || otherProps.UNSAFE_className || (styleProps.style && Object.keys(styleProps.style).length > 0)) {\n contents = (\n <ProviderWrapper {...props} UNSAFE_style={{isolation: !prevContext ? 'isolate' : undefined, ...styleProps.style}} ref={ref}>\n {contents}\n </ProviderWrapper>\n );\n }\n\n if (router) {\n contents = <RouterProvider {...router}>{contents}</RouterProvider>;\n }\n\n return (\n <Context.Provider value={context}>\n <I18nProvider locale={locale}>\n <BreakpointProvider matchedBreakpoints={matchedBreakpoints}>\n <ModalProvider>\n {contents}\n </ModalProvider>\n </BreakpointProvider>\n </I18nProvider>\n </Context.Provider>\n );\n});\n\nconst ProviderWrapper = React.forwardRef(function ProviderWrapper(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {\n let {\n children,\n ...otherProps\n } = props;\n let {locale, direction} = useLocale();\n let {theme, colorScheme, scale} = useProvider();\n let {modalProviderProps} = useModalProvider();\n let {styleProps} = useStyleProps(otherProps);\n let domRef = useDOMRef(ref);\n\n let themeKey = Object.keys(theme[colorScheme]!)[0];\n let scaleKey = Object.keys(theme[scale]!)[0];\n\n let className = clsx(\n styleProps.className,\n styles['spectrum'],\n typographyStyles['spectrum'],\n Object.values(theme[colorScheme]!),\n Object.values(theme[scale]!),\n theme.global ? Object.values(theme.global) : null,\n {\n 'react-spectrum-provider': shouldKeepSpectrumClassNames,\n spectrum: shouldKeepSpectrumClassNames,\n [themeKey]: shouldKeepSpectrumClassNames,\n [scaleKey]: shouldKeepSpectrumClassNames\n }\n );\n\n let style = {\n ...styleProps.style,\n // This ensures that browser native UI like scrollbars are rendered in the right color scheme.\n // See https://web.dev/color-scheme/.\n colorScheme: props.colorScheme ?? colorScheme ?? Object.keys(theme).filter(k => k === 'light' || k === 'dark').join(' ')\n };\n\n let hasWarned = useRef(false);\n useEffect(() => {\n if (direction && domRef.current) {\n let closestDir = domRef.current?.parentElement?.closest('[dir]');\n let dir = closestDir && closestDir.getAttribute('dir');\n if (dir && dir !== direction && !hasWarned.current) {\n console.warn(`Language directions cannot be nested. ${direction} inside ${dir}.`);\n hasWarned.current = true;\n }\n }\n }, [direction, domRef, hasWarned]);\n\n\n return (\n <div\n {...filterDOMProps(otherProps)}\n {...styleProps}\n {...modalProviderProps}\n className={className}\n style={style}\n lang={locale}\n dir={direction}\n ref={domRef}>\n {children}\n </div>\n );\n});\n\n/**\n * Returns the various settings and styles applied by the nearest parent Provider.\n * Properties explicitly set by the nearest parent Provider override those provided by preceeding Providers.\n */\nexport function useProvider(): ProviderContext {\n let context = useContext(Context);\n if (!context) {\n throw new Error(\n 'No root provider found, please make sure your app is wrapped within a <Provider>. ' +\n 'Alternatively, this issue may be caused by duplicate packages, see https://github.com/adobe/react-spectrum/wiki/Frequently-Asked-Questions-(FAQs)#why-are-there-errors-after-upgrading-a-react-spectrum-package for more information.'\n );\n }\n return context;\n}\n\nexport function useProviderProps<T>(props: T) : T {\n let context = useContext(Context);\n if (!context) {\n return props;\n }\n return Object.assign({}, {\n isQuiet: context.isQuiet,\n isEmphasized: context.isEmphasized,\n isDisabled: context.isDisabled,\n isRequired: context.isRequired,\n isReadOnly: context.isReadOnly,\n validationState: context.validationState\n }, props);\n}\n"],"names":[],"version":3,"file":"Provider.module.js.map"}
@@ -1,4 +1,4 @@
1
- module.exports = JSON.parse("{\"name\":\"@react-spectrum/provider\",\"version\":\"3.10.0\",\"description\":\"Spectrum UI components in React\",\"license\":\"Apache-2.0\",\"main\":\"dist/main.js\",\"module\":\"dist/module.js\",\"exports\":{\"types\":\"./dist/types.d.ts\",\"import\":\"./dist/import.mjs\",\"require\":\"./dist/main.js\"},\"types\":\"dist/types.d.ts\",\"source\":\"src/index.ts\",\"files\":[\"dist\",\"src\"],\"sideEffects\":[\"*.css\"],\"targets\":{\"main\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]},\"module\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]}},\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/adobe/react-spectrum\"},\"dependencies\":{\"@react-aria/i18n\":\"^3.12.4\",\"@react-aria/overlays\":\"^3.24.0\",\"@react-aria/utils\":\"^3.26.0\",\"@react-spectrum/utils\":\"^3.12.0\",\"@react-types/provider\":\"^3.8.5\",\"@react-types/shared\":\"^3.26.0\",\"@swc/helpers\":\"^0.5.0\",\"clsx\":\"^2.0.0\"},\"devDependencies\":{\"@adobe/spectrum-css-temp\":\"3.0.0-alpha.1\"},\"peerDependencies\":{\"react\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\",\"react-dom\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\"},\"publishConfig\":{\"access\":\"public\"}}");
1
+ module.exports = JSON.parse("{\"name\":\"@react-spectrum/provider\",\"version\":\"3.10.1\",\"description\":\"Spectrum UI components in React\",\"license\":\"Apache-2.0\",\"main\":\"dist/main.js\",\"module\":\"dist/module.js\",\"exports\":{\"types\":\"./dist/types.d.ts\",\"import\":\"./dist/import.mjs\",\"require\":\"./dist/main.js\"},\"types\":\"dist/types.d.ts\",\"source\":\"src/index.ts\",\"files\":[\"dist\",\"src\"],\"sideEffects\":[\"*.css\"],\"targets\":{\"main\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]},\"module\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]}},\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/adobe/react-spectrum\"},\"dependencies\":{\"@react-aria/i18n\":\"^3.12.5\",\"@react-aria/overlays\":\"^3.25.0\",\"@react-aria/utils\":\"^3.27.0\",\"@react-spectrum/utils\":\"^3.12.1\",\"@react-types/provider\":\"^3.8.6\",\"@react-types/shared\":\"^3.27.0\",\"@swc/helpers\":\"^0.5.0\",\"clsx\":\"^2.0.0\"},\"devDependencies\":{\"@adobe/spectrum-css-temp\":\"3.0.0-alpha.1\"},\"peerDependencies\":{\"react\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\",\"react-dom\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\"},\"publishConfig\":{\"access\":\"public\"}}");
2
2
 
3
3
 
4
4
  //# sourceMappingURL=package.main.js.map
@@ -1 +1 @@
1
- {"mappings":"AAAA,iBAAiB,KAAK,KAAK,CAAC","sources":["packages/@react-spectrum/provider/package.json"],"sourcesContent":["{\n \"name\": \"@react-spectrum/provider\",\n \"version\": \"3.10.0\",\n \"description\": \"Spectrum UI components in React\",\n \"license\": \"Apache-2.0\",\n \"main\": \"dist/main.js\",\n \"module\": \"dist/module.js\",\n \"exports\": {\n \"types\": \"./dist/types.d.ts\",\n \"import\": \"./dist/import.mjs\",\n \"require\": \"./dist/main.js\"\n },\n \"types\": \"dist/types.d.ts\",\n \"source\": \"src/index.ts\",\n \"files\": [\n \"dist\",\n \"src\"\n ],\n \"sideEffects\": [\n \"*.css\"\n ],\n \"targets\": {\n \"main\": {\n \"includeNodeModules\": [\n \"@adobe/spectrum-css-temp\"\n ]\n },\n \"module\": {\n \"includeNodeModules\": [\n \"@adobe/spectrum-css-temp\"\n ]\n }\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/adobe/react-spectrum\"\n },\n \"dependencies\": {\n \"@react-aria/i18n\": \"^3.12.4\",\n \"@react-aria/overlays\": \"^3.24.0\",\n \"@react-aria/utils\": \"^3.26.0\",\n \"@react-spectrum/utils\": \"^3.12.0\",\n \"@react-types/provider\": \"^3.8.5\",\n \"@react-types/shared\": \"^3.26.0\",\n \"@swc/helpers\": \"^0.5.0\",\n \"clsx\": \"^2.0.0\"\n },\n \"devDependencies\": {\n \"@adobe/spectrum-css-temp\": \"3.0.0-alpha.1\"\n },\n \"peerDependencies\": {\n \"react\": \"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\",\n \"react-dom\": \"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\"\n },\n \"publishConfig\": {\n \"access\": \"public\"\n }\n}\n"],"names":[],"version":3,"file":"package.main.js.map"}
1
+ {"mappings":"AAAA,iBAAiB,KAAK,KAAK,CAAC","sources":["packages/@react-spectrum/provider/package.json"],"sourcesContent":["{\n \"name\": \"@react-spectrum/provider\",\n \"version\": \"3.10.1\",\n \"description\": \"Spectrum UI components in React\",\n \"license\": \"Apache-2.0\",\n \"main\": \"dist/main.js\",\n \"module\": \"dist/module.js\",\n \"exports\": {\n \"types\": \"./dist/types.d.ts\",\n \"import\": \"./dist/import.mjs\",\n \"require\": \"./dist/main.js\"\n },\n \"types\": \"dist/types.d.ts\",\n \"source\": \"src/index.ts\",\n \"files\": [\n \"dist\",\n \"src\"\n ],\n \"sideEffects\": [\n \"*.css\"\n ],\n \"targets\": {\n \"main\": {\n \"includeNodeModules\": [\n \"@adobe/spectrum-css-temp\"\n ]\n },\n \"module\": {\n \"includeNodeModules\": [\n \"@adobe/spectrum-css-temp\"\n ]\n }\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/adobe/react-spectrum\"\n },\n \"dependencies\": {\n \"@react-aria/i18n\": \"^3.12.5\",\n \"@react-aria/overlays\": \"^3.25.0\",\n \"@react-aria/utils\": \"^3.27.0\",\n \"@react-spectrum/utils\": \"^3.12.1\",\n \"@react-types/provider\": \"^3.8.6\",\n \"@react-types/shared\": \"^3.27.0\",\n \"@swc/helpers\": \"^0.5.0\",\n \"clsx\": \"^2.0.0\"\n },\n \"devDependencies\": {\n \"@adobe/spectrum-css-temp\": \"3.0.0-alpha.1\"\n },\n \"peerDependencies\": {\n \"react\": \"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\",\n \"react-dom\": \"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\"\n },\n \"publishConfig\": {\n \"access\": \"public\"\n }\n}\n"],"names":[],"version":3,"file":"package.main.js.map"}
package/dist/package.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  var $7b22e09dddddd7da$exports = {};
2
- $7b22e09dddddd7da$exports = JSON.parse("{\"name\":\"@react-spectrum/provider\",\"version\":\"3.10.0\",\"description\":\"Spectrum UI components in React\",\"license\":\"Apache-2.0\",\"main\":\"dist/main.js\",\"module\":\"dist/module.js\",\"exports\":{\"types\":\"./dist/types.d.ts\",\"import\":\"./dist/import.mjs\",\"require\":\"./dist/main.js\"},\"types\":\"dist/types.d.ts\",\"source\":\"src/index.ts\",\"files\":[\"dist\",\"src\"],\"sideEffects\":[\"*.css\"],\"targets\":{\"main\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]},\"module\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]}},\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/adobe/react-spectrum\"},\"dependencies\":{\"@react-aria/i18n\":\"^3.12.4\",\"@react-aria/overlays\":\"^3.24.0\",\"@react-aria/utils\":\"^3.26.0\",\"@react-spectrum/utils\":\"^3.12.0\",\"@react-types/provider\":\"^3.8.5\",\"@react-types/shared\":\"^3.26.0\",\"@swc/helpers\":\"^0.5.0\",\"clsx\":\"^2.0.0\"},\"devDependencies\":{\"@adobe/spectrum-css-temp\":\"3.0.0-alpha.1\"},\"peerDependencies\":{\"react\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\",\"react-dom\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\"},\"publishConfig\":{\"access\":\"public\"}}");
2
+ $7b22e09dddddd7da$exports = JSON.parse("{\"name\":\"@react-spectrum/provider\",\"version\":\"3.10.1\",\"description\":\"Spectrum UI components in React\",\"license\":\"Apache-2.0\",\"main\":\"dist/main.js\",\"module\":\"dist/module.js\",\"exports\":{\"types\":\"./dist/types.d.ts\",\"import\":\"./dist/import.mjs\",\"require\":\"./dist/main.js\"},\"types\":\"dist/types.d.ts\",\"source\":\"src/index.ts\",\"files\":[\"dist\",\"src\"],\"sideEffects\":[\"*.css\"],\"targets\":{\"main\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]},\"module\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]}},\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/adobe/react-spectrum\"},\"dependencies\":{\"@react-aria/i18n\":\"^3.12.5\",\"@react-aria/overlays\":\"^3.25.0\",\"@react-aria/utils\":\"^3.27.0\",\"@react-spectrum/utils\":\"^3.12.1\",\"@react-types/provider\":\"^3.8.6\",\"@react-types/shared\":\"^3.27.0\",\"@swc/helpers\":\"^0.5.0\",\"clsx\":\"^2.0.0\"},\"devDependencies\":{\"@adobe/spectrum-css-temp\":\"3.0.0-alpha.1\"},\"peerDependencies\":{\"react\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\",\"react-dom\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\"},\"publishConfig\":{\"access\":\"public\"}}");
3
3
 
4
4
 
5
5
  export {$7b22e09dddddd7da$exports as default};
@@ -1,5 +1,5 @@
1
1
  var $7b22e09dddddd7da$exports = {};
2
- $7b22e09dddddd7da$exports = JSON.parse("{\"name\":\"@react-spectrum/provider\",\"version\":\"3.10.0\",\"description\":\"Spectrum UI components in React\",\"license\":\"Apache-2.0\",\"main\":\"dist/main.js\",\"module\":\"dist/module.js\",\"exports\":{\"types\":\"./dist/types.d.ts\",\"import\":\"./dist/import.mjs\",\"require\":\"./dist/main.js\"},\"types\":\"dist/types.d.ts\",\"source\":\"src/index.ts\",\"files\":[\"dist\",\"src\"],\"sideEffects\":[\"*.css\"],\"targets\":{\"main\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]},\"module\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]}},\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/adobe/react-spectrum\"},\"dependencies\":{\"@react-aria/i18n\":\"^3.12.4\",\"@react-aria/overlays\":\"^3.24.0\",\"@react-aria/utils\":\"^3.26.0\",\"@react-spectrum/utils\":\"^3.12.0\",\"@react-types/provider\":\"^3.8.5\",\"@react-types/shared\":\"^3.26.0\",\"@swc/helpers\":\"^0.5.0\",\"clsx\":\"^2.0.0\"},\"devDependencies\":{\"@adobe/spectrum-css-temp\":\"3.0.0-alpha.1\"},\"peerDependencies\":{\"react\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\",\"react-dom\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\"},\"publishConfig\":{\"access\":\"public\"}}");
2
+ $7b22e09dddddd7da$exports = JSON.parse("{\"name\":\"@react-spectrum/provider\",\"version\":\"3.10.1\",\"description\":\"Spectrum UI components in React\",\"license\":\"Apache-2.0\",\"main\":\"dist/main.js\",\"module\":\"dist/module.js\",\"exports\":{\"types\":\"./dist/types.d.ts\",\"import\":\"./dist/import.mjs\",\"require\":\"./dist/main.js\"},\"types\":\"dist/types.d.ts\",\"source\":\"src/index.ts\",\"files\":[\"dist\",\"src\"],\"sideEffects\":[\"*.css\"],\"targets\":{\"main\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]},\"module\":{\"includeNodeModules\":[\"@adobe/spectrum-css-temp\"]}},\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/adobe/react-spectrum\"},\"dependencies\":{\"@react-aria/i18n\":\"^3.12.5\",\"@react-aria/overlays\":\"^3.25.0\",\"@react-aria/utils\":\"^3.27.0\",\"@react-spectrum/utils\":\"^3.12.1\",\"@react-types/provider\":\"^3.8.6\",\"@react-types/shared\":\"^3.27.0\",\"@swc/helpers\":\"^0.5.0\",\"clsx\":\"^2.0.0\"},\"devDependencies\":{\"@adobe/spectrum-css-temp\":\"3.0.0-alpha.1\"},\"peerDependencies\":{\"react\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\",\"react-dom\":\"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\"},\"publishConfig\":{\"access\":\"public\"}}");
3
3
 
4
4
 
5
5
  export {$7b22e09dddddd7da$exports as default};
@@ -1 +1 @@
1
- {"mappings":";AAAA,4BAAiB,KAAK,KAAK,CAAC","sources":["packages/@react-spectrum/provider/package.json"],"sourcesContent":["{\n \"name\": \"@react-spectrum/provider\",\n \"version\": \"3.10.0\",\n \"description\": \"Spectrum UI components in React\",\n \"license\": \"Apache-2.0\",\n \"main\": \"dist/main.js\",\n \"module\": \"dist/module.js\",\n \"exports\": {\n \"types\": \"./dist/types.d.ts\",\n \"import\": \"./dist/import.mjs\",\n \"require\": \"./dist/main.js\"\n },\n \"types\": \"dist/types.d.ts\",\n \"source\": \"src/index.ts\",\n \"files\": [\n \"dist\",\n \"src\"\n ],\n \"sideEffects\": [\n \"*.css\"\n ],\n \"targets\": {\n \"main\": {\n \"includeNodeModules\": [\n \"@adobe/spectrum-css-temp\"\n ]\n },\n \"module\": {\n \"includeNodeModules\": [\n \"@adobe/spectrum-css-temp\"\n ]\n }\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/adobe/react-spectrum\"\n },\n \"dependencies\": {\n \"@react-aria/i18n\": \"^3.12.4\",\n \"@react-aria/overlays\": \"^3.24.0\",\n \"@react-aria/utils\": \"^3.26.0\",\n \"@react-spectrum/utils\": \"^3.12.0\",\n \"@react-types/provider\": \"^3.8.5\",\n \"@react-types/shared\": \"^3.26.0\",\n \"@swc/helpers\": \"^0.5.0\",\n \"clsx\": \"^2.0.0\"\n },\n \"devDependencies\": {\n \"@adobe/spectrum-css-temp\": \"3.0.0-alpha.1\"\n },\n \"peerDependencies\": {\n \"react\": \"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\",\n \"react-dom\": \"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\"\n },\n \"publishConfig\": {\n \"access\": \"public\"\n }\n}\n"],"names":[],"version":3,"file":"package.module.js.map"}
1
+ {"mappings":";AAAA,4BAAiB,KAAK,KAAK,CAAC","sources":["packages/@react-spectrum/provider/package.json"],"sourcesContent":["{\n \"name\": \"@react-spectrum/provider\",\n \"version\": \"3.10.1\",\n \"description\": \"Spectrum UI components in React\",\n \"license\": \"Apache-2.0\",\n \"main\": \"dist/main.js\",\n \"module\": \"dist/module.js\",\n \"exports\": {\n \"types\": \"./dist/types.d.ts\",\n \"import\": \"./dist/import.mjs\",\n \"require\": \"./dist/main.js\"\n },\n \"types\": \"dist/types.d.ts\",\n \"source\": \"src/index.ts\",\n \"files\": [\n \"dist\",\n \"src\"\n ],\n \"sideEffects\": [\n \"*.css\"\n ],\n \"targets\": {\n \"main\": {\n \"includeNodeModules\": [\n \"@adobe/spectrum-css-temp\"\n ]\n },\n \"module\": {\n \"includeNodeModules\": [\n \"@adobe/spectrum-css-temp\"\n ]\n }\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/adobe/react-spectrum\"\n },\n \"dependencies\": {\n \"@react-aria/i18n\": \"^3.12.5\",\n \"@react-aria/overlays\": \"^3.25.0\",\n \"@react-aria/utils\": \"^3.27.0\",\n \"@react-spectrum/utils\": \"^3.12.1\",\n \"@react-types/provider\": \"^3.8.6\",\n \"@react-types/shared\": \"^3.27.0\",\n \"@swc/helpers\": \"^0.5.0\",\n \"clsx\": \"^2.0.0\"\n },\n \"devDependencies\": {\n \"@adobe/spectrum-css-temp\": \"3.0.0-alpha.1\"\n },\n \"peerDependencies\": {\n \"react\": \"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\",\n \"react-dom\": \"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1\"\n },\n \"publishConfig\": {\n \"access\": \"public\"\n }\n}\n"],"names":[],"version":3,"file":"package.module.js.map"}
package/dist/types.d.ts CHANGED
@@ -6,7 +6,7 @@ import { DOMRefValue } from "@react-types/shared";
6
6
  * It defines the theme, locale, and other application level settings,
7
7
  * and can also be used to provide common properties to a group of components.
8
8
  */
9
- export let Provider: React.ForwardRefExoticComponent<ProviderProps & React.RefAttributes<DOMRefValue<HTMLDivElement>>>;
9
+ export const Provider: React.ForwardRefExoticComponent<ProviderProps & React.RefAttributes<DOMRefValue<HTMLDivElement>>>;
10
10
  /**
11
11
  * Returns the various settings and styles applied by the nearest parent Provider.
12
12
  * Properties explicitly set by the nearest parent Provider override those provided by preceeding Providers.
@@ -1 +1 @@
1
- {"mappings":";;;AEyHA;;;;GAIG;AACH,OAAA,IAAI,2GAAsC,CAAC;AAmE3C;;;GAGG;AACH,+BAA+B,eAAe,CAS7C;AAED,iCAAiC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAI,CAAC,CAahD;AC9MD,YAAY,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAC;AAC3D,YAAY,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC","sources":["packages/@react-spectrum/provider/src/packages/@react-spectrum/provider/src/context.ts","packages/@react-spectrum/provider/src/packages/@react-spectrum/provider/src/mediaQueries.ts","packages/@react-spectrum/provider/src/packages/@react-spectrum/provider/src/Provider.tsx","packages/@react-spectrum/provider/src/packages/@react-spectrum/provider/src/index.ts","packages/@react-spectrum/provider/src/index.ts"],"sourcesContent":[null,null,null,null,"/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n/// <reference types=\"css-module-types\" />\n\nexport {Provider, useProvider, useProviderProps} from './Provider';\nexport type {ProviderContext} from '@react-types/provider';\nexport type {ProviderProps} from '@react-types/provider';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
1
+ {"mappings":";;;AEmCA;;;;GAIG;AACH,OAAO,MAAM,2GAoFX,CAAC;AAkEH;;;GAGG;AACH,+BAA+B,eAAe,CAS7C;AAED,iCAAiC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAI,CAAC,CAahD;AC3MD,YAAY,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAC;AAC3D,YAAY,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC","sources":["packages/@react-spectrum/provider/src/packages/@react-spectrum/provider/src/context.ts","packages/@react-spectrum/provider/src/packages/@react-spectrum/provider/src/mediaQueries.ts","packages/@react-spectrum/provider/src/packages/@react-spectrum/provider/src/Provider.tsx","packages/@react-spectrum/provider/src/packages/@react-spectrum/provider/src/index.ts","packages/@react-spectrum/provider/src/index.ts"],"sourcesContent":[null,null,null,null,"/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n/// <reference types=\"css-module-types\" />\n\nexport {Provider, useProvider, useProviderProps} from './Provider';\nexport type {ProviderContext} from '@react-types/provider';\nexport type {ProviderProps} from '@react-types/provider';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-spectrum/provider",
3
- "version": "3.10.0",
3
+ "version": "3.10.1",
4
4
  "description": "Spectrum UI components in React",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/main.js",
@@ -36,12 +36,12 @@
36
36
  "url": "https://github.com/adobe/react-spectrum"
37
37
  },
38
38
  "dependencies": {
39
- "@react-aria/i18n": "^3.12.4",
40
- "@react-aria/overlays": "^3.24.0",
41
- "@react-aria/utils": "^3.26.0",
42
- "@react-spectrum/utils": "^3.12.0",
43
- "@react-types/provider": "^3.8.5",
44
- "@react-types/shared": "^3.26.0",
39
+ "@react-aria/i18n": "^3.12.5",
40
+ "@react-aria/overlays": "^3.25.0",
41
+ "@react-aria/utils": "^3.27.0",
42
+ "@react-spectrum/utils": "^3.12.1",
43
+ "@react-types/provider": "^3.8.6",
44
+ "@react-types/shared": "^3.27.0",
45
45
  "@swc/helpers": "^0.5.0",
46
46
  "clsx": "^2.0.0"
47
47
  },
@@ -55,5 +55,5 @@
55
55
  "publishConfig": {
56
56
  "access": "public"
57
57
  },
58
- "gitHead": "71f0ef23053f9e03ee7e97df736e8b083e006849"
58
+ "gitHead": "09e7f44bebdc9d89122926b2b439a0a38a2814ea"
59
59
  }
package/src/Provider.tsx CHANGED
@@ -33,7 +33,12 @@ import {version} from '../package.json';
33
33
 
34
34
  const DEFAULT_BREAKPOINTS = {S: 640, M: 768, L: 1024, XL: 1280, XXL: 1536};
35
35
 
36
- function Provider(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {
36
+ /**
37
+ * Provider is the container for all React Spectrum applications.
38
+ * It defines the theme, locale, and other application level settings,
39
+ * and can also be used to provide common properties to a group of components.
40
+ */
41
+ export const Provider = React.forwardRef(function Provider(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {
37
42
  let prevContext = useContext(Context);
38
43
  let prevColorScheme = prevContext && prevContext.colorScheme;
39
44
  let prevBreakpoints = prevContext && prevContext.breakpoints;
@@ -117,15 +122,7 @@ function Provider(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {
117
122
  </I18nProvider>
118
123
  </Context.Provider>
119
124
  );
120
- }
121
-
122
- /**
123
- * Provider is the container for all React Spectrum applications.
124
- * It defines the theme, locale, and other application level settings,
125
- * and can also be used to provide common properties to a group of components.
126
- */
127
- let _Provider = React.forwardRef(Provider);
128
- export {_Provider as Provider};
125
+ });
129
126
 
130
127
  const ProviderWrapper = React.forwardRef(function ProviderWrapper(props: ProviderProps, ref: DOMRef<HTMLDivElement>) {
131
128
  let {