@react-spectrum/icon 3.4.0 → 3.6.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/dist/main.js CHANGED
@@ -4,31 +4,16 @@ var $khAmQ$reactariautils = require("@react-aria/utils");
4
4
  var $khAmQ$react = require("react");
5
5
  var $khAmQ$reactspectrumprovider = require("@react-spectrum/provider");
6
6
 
7
- function $parcel$exportWildcard(dest, source) {
8
- Object.keys(source).forEach(function(key) {
9
- if (key === 'default' || key === '__esModule' || dest.hasOwnProperty(key)) {
10
- return;
11
- }
12
-
13
- Object.defineProperty(dest, key, {
14
- enumerable: true,
15
- get: function get() {
16
- return source[key];
17
- }
18
- });
19
- });
20
-
21
- return dest;
7
+ function $parcel$export(e, n, v, s) {
8
+ Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
22
9
  }
23
10
  function $parcel$interopDefault(a) {
24
11
  return a && a.__esModule ? a.default : a;
25
12
  }
26
- function $parcel$export(e, n, v, s) {
27
- Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
28
- }
29
- var $2f297c87d3047269$exports = {};
30
13
 
31
- $parcel$export($2f297c87d3047269$exports, "Icon", () => $2f297c87d3047269$export$f04a61298a47a40f);
14
+ $parcel$export(module.exports, "Icon", () => $2f297c87d3047269$export$f04a61298a47a40f);
15
+ $parcel$export(module.exports, "UIIcon", () => $722df481e3c1f593$export$906cc5990ff10700);
16
+ $parcel$export(module.exports, "Illustration", () => $ebfd4d66f1999633$export$d43c2e2ca9b2c105);
32
17
 
33
18
 
34
19
 
@@ -213,9 +198,6 @@ function $2f297c87d3047269$export$f04a61298a47a40f(props) {
213
198
  }
214
199
 
215
200
 
216
- var $722df481e3c1f593$exports = {};
217
-
218
- $parcel$export($722df481e3c1f593$exports, "UIIcon", () => $722df481e3c1f593$export$906cc5990ff10700);
219
201
 
220
202
 
221
203
 
@@ -244,8 +226,27 @@ function $722df481e3c1f593$export$906cc5990ff10700(props) {
244
226
  }
245
227
 
246
228
 
247
- $parcel$exportWildcard(module.exports, $2f297c87d3047269$exports);
248
- $parcel$exportWildcard(module.exports, $722df481e3c1f593$exports);
229
+
230
+
231
+
232
+ function $ebfd4d66f1999633$export$d43c2e2ca9b2c105(props) {
233
+ props = $khAmQ$reactspectrumutils.useSlotProps(props, 'illustration');
234
+ let { children: children , 'aria-label': ariaLabel , 'aria-labelledby': ariaLabelledby , 'aria-hidden': ariaHidden , ...otherProps } = props;
235
+ let { styleProps: styleProps } = $khAmQ$reactspectrumutils.useStyleProps(otherProps);
236
+ let hasLabel = ariaLabel || ariaLabelledby;
237
+ if (!ariaHidden) ariaHidden = undefined;
238
+ return(/*#__PURE__*/ ($parcel$interopDefault($khAmQ$react)).cloneElement(children, {
239
+ ...$khAmQ$reactariautils.filterDOMProps(otherProps),
240
+ ...styleProps,
241
+ focusable: 'false',
242
+ 'aria-label': ariaLabel,
243
+ 'aria-labelledby': ariaLabelledby,
244
+ 'aria-hidden': ariaHidden,
245
+ role: hasLabel ? 'img' : undefined
246
+ }));
247
+ }
248
+
249
+
249
250
 
250
251
 
251
252
  //# sourceMappingURL=main.js.map
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-spectrum/icon/src/index.ts","packages/@react-spectrum/icon/src/Icon.tsx","packages/@adobe/spectrum-css-temp/components/icon/vars.css","packages/@react-spectrum/icon/src/UIIcon.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\n/// <reference types=\"css-module-types\" />\n\nexport * from './Icon';\nexport * from './UIIcon';\n","/*\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 {AriaLabelingProps, DOMProps, IconColorValue, StyleProps} from '@react-types/shared';\nimport {baseStyleProps, classNames, StyleHandlers, useSlotProps, useStyleProps} from '@react-spectrum/utils';\nimport {filterDOMProps} from '@react-aria/utils';\nimport React, {ReactElement} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/icon/vars.css';\nimport {useProvider} from '@react-spectrum/provider';\n\ninterface IconProps extends DOMProps, AriaLabelingProps, StyleProps {\n /**\n * A screen reader only label for the Icon.\n */\n 'aria-label'?: string,\n /**\n * The content to display. Should be an SVG.\n */\n children: ReactElement,\n /**\n * Size of Icon (changes based on scale).\n */\n size?: 'XXS' | 'XS' | 'S' | 'M' | 'L' |'XL' | 'XXL',\n /**\n * A slot to place the icon in.\n * @default 'icon'\n */\n slot?: string,\n /**\n * Indicates whether the element is exposed to an accessibility API.\n */\n 'aria-hidden'?: boolean | 'false' | 'true',\n /**\n * Color of the Icon.\n */\n color?: IconColorValue\n}\n\nexport type IconPropsWithoutChildren = Omit<IconProps, 'children'>;\n\nfunction iconColorValue(value: IconColorValue) {\n return `var(--spectrum-semantic-${value}-color-icon)`;\n}\n\nconst iconStyleProps: StyleHandlers = {\n ...baseStyleProps,\n color: ['color', iconColorValue]\n};\n\n/**\n * Spectrum icons are clear, minimal, and consistent across platforms. They follow the focused and rational principles of the design system in both metaphor and style.\n */\nexport function Icon(props: IconProps) {\n props = useSlotProps(props, 'icon');\n let {\n children,\n size,\n 'aria-label': ariaLabel,\n 'aria-hidden': ariaHidden,\n ...otherProps\n } = props;\n let {styleProps} = useStyleProps(otherProps, iconStyleProps);\n\n let provider = useProvider();\n let scale = 'M';\n if (provider !== null) {\n scale = provider.scale === 'large' ? 'L' : 'M';\n }\n if (!ariaHidden) {\n ariaHidden = undefined;\n }\n\n // Use user specified size, falling back to provider scale if size is undef\n let iconSize = size ? size : scale;\n\n return React.cloneElement(children, {\n ...filterDOMProps(otherProps),\n ...styleProps,\n focusable: 'false',\n 'aria-label': ariaLabel,\n 'aria-hidden': (ariaLabel ? (ariaHidden || undefined) : true),\n role: 'img',\n className: classNames(\n styles,\n children.props.className,\n 'spectrum-Icon',\n `spectrum-Icon--size${iconSize}`,\n styleProps.className)\n });\n}\n","/*\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@import './index.css';\n","/*\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 {AriaLabelingProps, DOMProps, StyleProps} from '@react-types/shared';\nimport {classNames, useSlotProps, useStyleProps} from '@react-spectrum/utils';\nimport {filterDOMProps} from '@react-aria/utils';\nimport React, {ReactElement} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/icon/vars.css';\nimport {useProvider} from '@react-spectrum/provider';\n\ninterface IconProps extends DOMProps, AriaLabelingProps, StyleProps {\n children: ReactElement,\n slot?: string,\n /**\n * Indicates whether the element is exposed to an accessibility API.\n */\n 'aria-hidden'?: boolean | 'false' | 'true'\n}\n\nexport type UIIconPropsWithoutChildren = Omit<IconProps, 'children'>;\n\nexport function UIIcon(props: IconProps) {\n props = useSlotProps(props, 'icon');\n let {\n children,\n 'aria-label': ariaLabel,\n 'aria-hidden': ariaHidden,\n ...otherProps\n } = props;\n\n let {styleProps} = useStyleProps(otherProps);\n let provider = useProvider();\n let scale = 'M';\n if (provider !== null) {\n scale = provider.scale === 'large' ? 'L' : 'M';\n }\n\n if (!ariaHidden) {\n ariaHidden = undefined;\n }\n\n return React.cloneElement(children, {\n ...filterDOMProps(otherProps),\n ...styleProps,\n scale,\n focusable: 'false',\n 'aria-label': ariaLabel,\n 'aria-hidden': (ariaLabel ? (ariaHidden || undefined) : true),\n role: 'img',\n className: classNames(\n styles,\n children.props.className,\n 'spectrum-Icon',\n {\n [`spectrum-UIIcon-${children.type['displayName']}`]: children.type['displayName']\n },\n styleProps.className)\n });\n}\n"],"names":[],"version":3,"file":"main.js.map"}
1
+ {"mappings":"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","sources":["packages/@react-spectrum/icon/src/index.ts","packages/@react-spectrum/icon/src/Icon.tsx","packages/@adobe/spectrum-css-temp/components/icon/vars.css","packages/@react-spectrum/icon/src/UIIcon.tsx","packages/@react-spectrum/icon/src/Illustration.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\n/// <reference types=\"css-module-types\" />\n\nexport {Icon} from './Icon';\nexport {UIIcon} from './UIIcon';\nexport {Illustration} from './Illustration';\n\nexport type {IconProps, IconPropsWithoutChildren} from './Icon';\nexport type {IllustrationProps, IllustrationPropsWithoutChildren} from './Illustration';\nexport type {UIIconProps, UIIconPropsWithoutChildren} from './UIIcon';\n","/*\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 {AriaLabelingProps, DOMProps, IconColorValue, StyleProps} from '@react-types/shared';\nimport {baseStyleProps, classNames, StyleHandlers, useSlotProps, useStyleProps} from '@react-spectrum/utils';\nimport {filterDOMProps} from '@react-aria/utils';\nimport React, {ReactElement} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/icon/vars.css';\nimport {useProvider} from '@react-spectrum/provider';\n\nexport interface IconProps extends DOMProps, AriaLabelingProps, StyleProps {\n /**\n * A screen reader only label for the Icon.\n */\n 'aria-label'?: string,\n /**\n * The content to display. Should be an SVG.\n */\n children: ReactElement,\n /**\n * Size of Icon (changes based on scale).\n */\n size?: 'XXS' | 'XS' | 'S' | 'M' | 'L' |'XL' | 'XXL',\n /**\n * A slot to place the icon in.\n * @default 'icon'\n */\n slot?: string,\n /**\n * Indicates whether the element is exposed to an accessibility API.\n */\n 'aria-hidden'?: boolean | 'false' | 'true',\n /**\n * Color of the Icon.\n */\n color?: IconColorValue\n}\n\nexport type IconPropsWithoutChildren = Omit<IconProps, 'children'>;\n\nfunction iconColorValue(value: IconColorValue) {\n return `var(--spectrum-semantic-${value}-color-icon)`;\n}\n\nconst iconStyleProps: StyleHandlers = {\n ...baseStyleProps,\n color: ['color', iconColorValue]\n};\n\n/**\n * Spectrum icons are clear, minimal, and consistent across platforms. They follow the focused and rational principles of the design system in both metaphor and style.\n */\nexport function Icon(props: IconProps) {\n props = useSlotProps(props, 'icon');\n let {\n children,\n size,\n 'aria-label': ariaLabel,\n 'aria-hidden': ariaHidden,\n ...otherProps\n } = props;\n let {styleProps} = useStyleProps(otherProps, iconStyleProps);\n\n let provider = useProvider();\n let scale = 'M';\n if (provider !== null) {\n scale = provider.scale === 'large' ? 'L' : 'M';\n }\n if (!ariaHidden) {\n ariaHidden = undefined;\n }\n\n // Use user specified size, falling back to provider scale if size is undef\n let iconSize = size ? size : scale;\n\n return React.cloneElement(children, {\n ...filterDOMProps(otherProps),\n ...styleProps,\n focusable: 'false',\n 'aria-label': ariaLabel,\n 'aria-hidden': (ariaLabel ? (ariaHidden || undefined) : true),\n role: 'img',\n className: classNames(\n styles,\n children.props.className,\n 'spectrum-Icon',\n `spectrum-Icon--size${iconSize}`,\n styleProps.className)\n });\n}\n","/*\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@import './index.css';\n","/*\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 {AriaLabelingProps, DOMProps, StyleProps} from '@react-types/shared';\nimport {classNames, useSlotProps, useStyleProps} from '@react-spectrum/utils';\nimport {filterDOMProps} from '@react-aria/utils';\nimport React, {ReactElement} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/icon/vars.css';\nimport {useProvider} from '@react-spectrum/provider';\n\nexport interface UIIconProps extends DOMProps, AriaLabelingProps, StyleProps {\n children: ReactElement,\n slot?: string,\n /**\n * Indicates whether the element is exposed to an accessibility API.\n */\n 'aria-hidden'?: boolean | 'false' | 'true'\n}\n\nexport type UIIconPropsWithoutChildren = Omit<UIIconProps, 'children'>;\n\nexport function UIIcon(props: UIIconProps) {\n props = useSlotProps(props, 'icon');\n let {\n children,\n 'aria-label': ariaLabel,\n 'aria-hidden': ariaHidden,\n ...otherProps\n } = props;\n\n let {styleProps} = useStyleProps(otherProps);\n let provider = useProvider();\n let scale = 'M';\n if (provider !== null) {\n scale = provider.scale === 'large' ? 'L' : 'M';\n }\n\n if (!ariaHidden) {\n ariaHidden = undefined;\n }\n\n return React.cloneElement(children, {\n ...filterDOMProps(otherProps),\n ...styleProps,\n scale,\n focusable: 'false',\n 'aria-label': ariaLabel,\n 'aria-hidden': (ariaLabel ? (ariaHidden || undefined) : true),\n role: 'img',\n className: classNames(\n styles,\n children.props.className,\n 'spectrum-Icon',\n {\n [`spectrum-UIIcon-${children.type['displayName']}`]: children.type['displayName']\n },\n styleProps.className)\n });\n}\n","/*\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 {AriaLabelingProps, DOMProps, StyleProps} from '@react-types/shared';\nimport {filterDOMProps} from '@react-aria/utils';\nimport React, {ReactElement} from 'react';\nimport {useSlotProps, useStyleProps} from '@react-spectrum/utils';\n\nexport interface IllustrationProps extends DOMProps, AriaLabelingProps, StyleProps {\n /**\n * A screen reader only label for the Illustration.\n */\n 'aria-label'?: string,\n /**\n * The content to display. Should be an SVG.\n */\n children: ReactElement,\n /**\n * A slot to place the illustration in.\n * @default 'illustration'\n */\n slot?: string,\n /**\n * Indicates whether the element is exposed to an accessibility API.\n */\n 'aria-hidden'?: boolean | 'false' | 'true'\n}\n\nexport type IllustrationPropsWithoutChildren = Omit<IllustrationProps, 'children'>;\n\n/**\n * Wrapper component for illustrations. Use this to wrap your svg element for a custom illustration.\n */\nexport function Illustration(props: IllustrationProps) {\n props = useSlotProps(props, 'illustration');\n let {\n children,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n 'aria-hidden': ariaHidden,\n ...otherProps\n } = props;\n let {styleProps} = useStyleProps(otherProps);\n\n let hasLabel = ariaLabel || ariaLabelledby;\n\n if (!ariaHidden) {\n ariaHidden = undefined;\n }\n\n return React.cloneElement(children, {\n ...filterDOMProps(otherProps),\n ...styleProps,\n focusable: 'false',\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n 'aria-hidden': ariaHidden,\n role: hasLabel ? 'img' : undefined\n });\n}\n"],"names":[],"version":3,"file":"main.js.map"}
package/dist/module.js CHANGED
@@ -10,9 +10,6 @@ function $parcel$interopDefault(a) {
10
10
  function $parcel$export(e, n, v, s) {
11
11
  Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
12
12
  }
13
- var $6bfb67578ee6effd$exports = {};
14
-
15
- $parcel$export($6bfb67578ee6effd$exports, "Icon", () => $6bfb67578ee6effd$export$f04a61298a47a40f);
16
13
 
17
14
 
18
15
 
@@ -197,9 +194,6 @@ function $6bfb67578ee6effd$export$f04a61298a47a40f(props) {
197
194
  }
198
195
 
199
196
 
200
- var $9ba43a63383852e3$exports = {};
201
-
202
- $parcel$export($9ba43a63383852e3$exports, "UIIcon", () => $9ba43a63383852e3$export$906cc5990ff10700);
203
197
 
204
198
 
205
199
 
@@ -230,5 +224,26 @@ function $9ba43a63383852e3$export$906cc5990ff10700(props) {
230
224
 
231
225
 
232
226
 
233
- export {$6bfb67578ee6effd$export$f04a61298a47a40f as Icon, $9ba43a63383852e3$export$906cc5990ff10700 as UIIcon};
227
+
228
+ function $88bb85359d3a4aed$export$d43c2e2ca9b2c105(props) {
229
+ props = $1Thsl$useSlotProps(props, 'illustration');
230
+ let { children: children , 'aria-label': ariaLabel , 'aria-labelledby': ariaLabelledby , 'aria-hidden': ariaHidden , ...otherProps } = props;
231
+ let { styleProps: styleProps } = $1Thsl$useStyleProps(otherProps);
232
+ let hasLabel = ariaLabel || ariaLabelledby;
233
+ if (!ariaHidden) ariaHidden = undefined;
234
+ return(/*#__PURE__*/ $1Thsl$react.cloneElement(children, {
235
+ ...$1Thsl$filterDOMProps(otherProps),
236
+ ...styleProps,
237
+ focusable: 'false',
238
+ 'aria-label': ariaLabel,
239
+ 'aria-labelledby': ariaLabelledby,
240
+ 'aria-hidden': ariaHidden,
241
+ role: hasLabel ? 'img' : undefined
242
+ }));
243
+ }
244
+
245
+
246
+
247
+
248
+ export {$6bfb67578ee6effd$export$f04a61298a47a40f as Icon, $9ba43a63383852e3$export$906cc5990ff10700 as UIIcon, $88bb85359d3a4aed$export$d43c2e2ca9b2c105 as Illustration};
234
249
  //# sourceMappingURL=module.js.map
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-spectrum/icon/src/index.ts","packages/@react-spectrum/icon/src/Icon.tsx","packages/@adobe/spectrum-css-temp/components/icon/vars.css","packages/@react-spectrum/icon/src/UIIcon.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\n/// <reference types=\"css-module-types\" />\n\nexport * from './Icon';\nexport * from './UIIcon';\n","/*\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 {AriaLabelingProps, DOMProps, IconColorValue, StyleProps} from '@react-types/shared';\nimport {baseStyleProps, classNames, StyleHandlers, useSlotProps, useStyleProps} from '@react-spectrum/utils';\nimport {filterDOMProps} from '@react-aria/utils';\nimport React, {ReactElement} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/icon/vars.css';\nimport {useProvider} from '@react-spectrum/provider';\n\ninterface IconProps extends DOMProps, AriaLabelingProps, StyleProps {\n /**\n * A screen reader only label for the Icon.\n */\n 'aria-label'?: string,\n /**\n * The content to display. Should be an SVG.\n */\n children: ReactElement,\n /**\n * Size of Icon (changes based on scale).\n */\n size?: 'XXS' | 'XS' | 'S' | 'M' | 'L' |'XL' | 'XXL',\n /**\n * A slot to place the icon in.\n * @default 'icon'\n */\n slot?: string,\n /**\n * Indicates whether the element is exposed to an accessibility API.\n */\n 'aria-hidden'?: boolean | 'false' | 'true',\n /**\n * Color of the Icon.\n */\n color?: IconColorValue\n}\n\nexport type IconPropsWithoutChildren = Omit<IconProps, 'children'>;\n\nfunction iconColorValue(value: IconColorValue) {\n return `var(--spectrum-semantic-${value}-color-icon)`;\n}\n\nconst iconStyleProps: StyleHandlers = {\n ...baseStyleProps,\n color: ['color', iconColorValue]\n};\n\n/**\n * Spectrum icons are clear, minimal, and consistent across platforms. They follow the focused and rational principles of the design system in both metaphor and style.\n */\nexport function Icon(props: IconProps) {\n props = useSlotProps(props, 'icon');\n let {\n children,\n size,\n 'aria-label': ariaLabel,\n 'aria-hidden': ariaHidden,\n ...otherProps\n } = props;\n let {styleProps} = useStyleProps(otherProps, iconStyleProps);\n\n let provider = useProvider();\n let scale = 'M';\n if (provider !== null) {\n scale = provider.scale === 'large' ? 'L' : 'M';\n }\n if (!ariaHidden) {\n ariaHidden = undefined;\n }\n\n // Use user specified size, falling back to provider scale if size is undef\n let iconSize = size ? size : scale;\n\n return React.cloneElement(children, {\n ...filterDOMProps(otherProps),\n ...styleProps,\n focusable: 'false',\n 'aria-label': ariaLabel,\n 'aria-hidden': (ariaLabel ? (ariaHidden || undefined) : true),\n role: 'img',\n className: classNames(\n styles,\n children.props.className,\n 'spectrum-Icon',\n `spectrum-Icon--size${iconSize}`,\n styleProps.className)\n });\n}\n","/*\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@import './index.css';\n","/*\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 {AriaLabelingProps, DOMProps, StyleProps} from '@react-types/shared';\nimport {classNames, useSlotProps, useStyleProps} from '@react-spectrum/utils';\nimport {filterDOMProps} from '@react-aria/utils';\nimport React, {ReactElement} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/icon/vars.css';\nimport {useProvider} from '@react-spectrum/provider';\n\ninterface IconProps extends DOMProps, AriaLabelingProps, StyleProps {\n children: ReactElement,\n slot?: string,\n /**\n * Indicates whether the element is exposed to an accessibility API.\n */\n 'aria-hidden'?: boolean | 'false' | 'true'\n}\n\nexport type UIIconPropsWithoutChildren = Omit<IconProps, 'children'>;\n\nexport function UIIcon(props: IconProps) {\n props = useSlotProps(props, 'icon');\n let {\n children,\n 'aria-label': ariaLabel,\n 'aria-hidden': ariaHidden,\n ...otherProps\n } = props;\n\n let {styleProps} = useStyleProps(otherProps);\n let provider = useProvider();\n let scale = 'M';\n if (provider !== null) {\n scale = provider.scale === 'large' ? 'L' : 'M';\n }\n\n if (!ariaHidden) {\n ariaHidden = undefined;\n }\n\n return React.cloneElement(children, {\n ...filterDOMProps(otherProps),\n ...styleProps,\n scale,\n focusable: 'false',\n 'aria-label': ariaLabel,\n 'aria-hidden': (ariaLabel ? (ariaHidden || undefined) : true),\n role: 'img',\n className: classNames(\n styles,\n children.props.className,\n 'spectrum-Icon',\n {\n [`spectrum-UIIcon-${children.type['displayName']}`]: children.type['displayName']\n },\n styleProps.className)\n });\n}\n"],"names":[],"version":3,"file":"module.js.map"}
1
+ {"mappings":"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","sources":["packages/@react-spectrum/icon/src/index.ts","packages/@react-spectrum/icon/src/Icon.tsx","packages/@adobe/spectrum-css-temp/components/icon/vars.css","packages/@react-spectrum/icon/src/UIIcon.tsx","packages/@react-spectrum/icon/src/Illustration.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\n/// <reference types=\"css-module-types\" />\n\nexport {Icon} from './Icon';\nexport {UIIcon} from './UIIcon';\nexport {Illustration} from './Illustration';\n\nexport type {IconProps, IconPropsWithoutChildren} from './Icon';\nexport type {IllustrationProps, IllustrationPropsWithoutChildren} from './Illustration';\nexport type {UIIconProps, UIIconPropsWithoutChildren} from './UIIcon';\n","/*\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 {AriaLabelingProps, DOMProps, IconColorValue, StyleProps} from '@react-types/shared';\nimport {baseStyleProps, classNames, StyleHandlers, useSlotProps, useStyleProps} from '@react-spectrum/utils';\nimport {filterDOMProps} from '@react-aria/utils';\nimport React, {ReactElement} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/icon/vars.css';\nimport {useProvider} from '@react-spectrum/provider';\n\nexport interface IconProps extends DOMProps, AriaLabelingProps, StyleProps {\n /**\n * A screen reader only label for the Icon.\n */\n 'aria-label'?: string,\n /**\n * The content to display. Should be an SVG.\n */\n children: ReactElement,\n /**\n * Size of Icon (changes based on scale).\n */\n size?: 'XXS' | 'XS' | 'S' | 'M' | 'L' |'XL' | 'XXL',\n /**\n * A slot to place the icon in.\n * @default 'icon'\n */\n slot?: string,\n /**\n * Indicates whether the element is exposed to an accessibility API.\n */\n 'aria-hidden'?: boolean | 'false' | 'true',\n /**\n * Color of the Icon.\n */\n color?: IconColorValue\n}\n\nexport type IconPropsWithoutChildren = Omit<IconProps, 'children'>;\n\nfunction iconColorValue(value: IconColorValue) {\n return `var(--spectrum-semantic-${value}-color-icon)`;\n}\n\nconst iconStyleProps: StyleHandlers = {\n ...baseStyleProps,\n color: ['color', iconColorValue]\n};\n\n/**\n * Spectrum icons are clear, minimal, and consistent across platforms. They follow the focused and rational principles of the design system in both metaphor and style.\n */\nexport function Icon(props: IconProps) {\n props = useSlotProps(props, 'icon');\n let {\n children,\n size,\n 'aria-label': ariaLabel,\n 'aria-hidden': ariaHidden,\n ...otherProps\n } = props;\n let {styleProps} = useStyleProps(otherProps, iconStyleProps);\n\n let provider = useProvider();\n let scale = 'M';\n if (provider !== null) {\n scale = provider.scale === 'large' ? 'L' : 'M';\n }\n if (!ariaHidden) {\n ariaHidden = undefined;\n }\n\n // Use user specified size, falling back to provider scale if size is undef\n let iconSize = size ? size : scale;\n\n return React.cloneElement(children, {\n ...filterDOMProps(otherProps),\n ...styleProps,\n focusable: 'false',\n 'aria-label': ariaLabel,\n 'aria-hidden': (ariaLabel ? (ariaHidden || undefined) : true),\n role: 'img',\n className: classNames(\n styles,\n children.props.className,\n 'spectrum-Icon',\n `spectrum-Icon--size${iconSize}`,\n styleProps.className)\n });\n}\n","/*\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@import './index.css';\n","/*\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 {AriaLabelingProps, DOMProps, StyleProps} from '@react-types/shared';\nimport {classNames, useSlotProps, useStyleProps} from '@react-spectrum/utils';\nimport {filterDOMProps} from '@react-aria/utils';\nimport React, {ReactElement} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/icon/vars.css';\nimport {useProvider} from '@react-spectrum/provider';\n\nexport interface UIIconProps extends DOMProps, AriaLabelingProps, StyleProps {\n children: ReactElement,\n slot?: string,\n /**\n * Indicates whether the element is exposed to an accessibility API.\n */\n 'aria-hidden'?: boolean | 'false' | 'true'\n}\n\nexport type UIIconPropsWithoutChildren = Omit<UIIconProps, 'children'>;\n\nexport function UIIcon(props: UIIconProps) {\n props = useSlotProps(props, 'icon');\n let {\n children,\n 'aria-label': ariaLabel,\n 'aria-hidden': ariaHidden,\n ...otherProps\n } = props;\n\n let {styleProps} = useStyleProps(otherProps);\n let provider = useProvider();\n let scale = 'M';\n if (provider !== null) {\n scale = provider.scale === 'large' ? 'L' : 'M';\n }\n\n if (!ariaHidden) {\n ariaHidden = undefined;\n }\n\n return React.cloneElement(children, {\n ...filterDOMProps(otherProps),\n ...styleProps,\n scale,\n focusable: 'false',\n 'aria-label': ariaLabel,\n 'aria-hidden': (ariaLabel ? (ariaHidden || undefined) : true),\n role: 'img',\n className: classNames(\n styles,\n children.props.className,\n 'spectrum-Icon',\n {\n [`spectrum-UIIcon-${children.type['displayName']}`]: children.type['displayName']\n },\n styleProps.className)\n });\n}\n","/*\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 {AriaLabelingProps, DOMProps, StyleProps} from '@react-types/shared';\nimport {filterDOMProps} from '@react-aria/utils';\nimport React, {ReactElement} from 'react';\nimport {useSlotProps, useStyleProps} from '@react-spectrum/utils';\n\nexport interface IllustrationProps extends DOMProps, AriaLabelingProps, StyleProps {\n /**\n * A screen reader only label for the Illustration.\n */\n 'aria-label'?: string,\n /**\n * The content to display. Should be an SVG.\n */\n children: ReactElement,\n /**\n * A slot to place the illustration in.\n * @default 'illustration'\n */\n slot?: string,\n /**\n * Indicates whether the element is exposed to an accessibility API.\n */\n 'aria-hidden'?: boolean | 'false' | 'true'\n}\n\nexport type IllustrationPropsWithoutChildren = Omit<IllustrationProps, 'children'>;\n\n/**\n * Wrapper component for illustrations. Use this to wrap your svg element for a custom illustration.\n */\nexport function Illustration(props: IllustrationProps) {\n props = useSlotProps(props, 'illustration');\n let {\n children,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n 'aria-hidden': ariaHidden,\n ...otherProps\n } = props;\n let {styleProps} = useStyleProps(otherProps);\n\n let hasLabel = ariaLabel || ariaLabelledby;\n\n if (!ariaHidden) {\n ariaHidden = undefined;\n }\n\n return React.cloneElement(children, {\n ...filterDOMProps(otherProps),\n ...styleProps,\n focusable: 'false',\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n 'aria-hidden': ariaHidden,\n role: hasLabel ? 'img' : undefined\n });\n}\n"],"names":[],"version":3,"file":"module.js.map"}
package/dist/types.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { AriaLabelingProps, DOMProps, IconColorValue, StyleProps } from "@react-types/shared";
2
2
  import React, { ReactElement } from "react";
3
- interface IconProps extends DOMProps, AriaLabelingProps, StyleProps {
3
+ export interface IconProps extends DOMProps, AriaLabelingProps, StyleProps {
4
4
  /**
5
5
  * A screen reader only label for the Icon.
6
6
  */
@@ -32,7 +32,7 @@ export type IconPropsWithoutChildren = Omit<IconProps, 'children'>;
32
32
  * Spectrum icons are clear, minimal, and consistent across platforms. They follow the focused and rational principles of the design system in both metaphor and style.
33
33
  */
34
34
  export function Icon(props: IconProps): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
35
- interface _IconProps1 extends DOMProps, AriaLabelingProps, StyleProps {
35
+ export interface UIIconProps extends DOMProps, AriaLabelingProps, StyleProps {
36
36
  children: ReactElement;
37
37
  slot?: string;
38
38
  /**
@@ -40,7 +40,31 @@ interface _IconProps1 extends DOMProps, AriaLabelingProps, StyleProps {
40
40
  */
41
41
  'aria-hidden'?: boolean | 'false' | 'true';
42
42
  }
43
- export type UIIconPropsWithoutChildren = Omit<_IconProps1, 'children'>;
44
- export function UIIcon(props: _IconProps1): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
43
+ export type UIIconPropsWithoutChildren = Omit<UIIconProps, 'children'>;
44
+ export function UIIcon(props: UIIconProps): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
45
+ export interface IllustrationProps extends DOMProps, AriaLabelingProps, StyleProps {
46
+ /**
47
+ * A screen reader only label for the Illustration.
48
+ */
49
+ 'aria-label'?: string;
50
+ /**
51
+ * The content to display. Should be an SVG.
52
+ */
53
+ children: ReactElement;
54
+ /**
55
+ * A slot to place the illustration in.
56
+ * @default 'illustration'
57
+ */
58
+ slot?: string;
59
+ /**
60
+ * Indicates whether the element is exposed to an accessibility API.
61
+ */
62
+ 'aria-hidden'?: boolean | 'false' | 'true';
63
+ }
64
+ export type IllustrationPropsWithoutChildren = Omit<IllustrationProps, 'children'>;
65
+ /**
66
+ * Wrapper component for illustrations. Use this to wrap your svg element for a custom illustration.
67
+ */
68
+ export function Illustration(props: IllustrationProps): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
45
69
 
46
70
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"mappings":";;AAmBA,mBAAoB,SAAQ,QAAQ,EAAE,iBAAiB,EAAE,UAAU;IACjE;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC;IACvB;;OAEG;IACH,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAE,IAAI,GAAG,KAAK,CAAC;IACpD;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;IAC3C;;OAEG;IACH,KAAK,CAAC,EAAE,cAAc,CAAA;CACvB;AAED,uCAAuC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AAWnE;;GAEG;AACH,qBAAqB,KAAK,EAAE,SAAS,sEAqCpC;AC/ED,qBAAoB,SAAQ,QAAQ,EAAE,iBAAiB,EAAE,UAAU;IACjE,QAAQ,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAA;CAC3C;AAED,yCAAyC,IAAI,CAAC,WAAS,EAAE,UAAU,CAAC,CAAC;AAErE,uBAAuB,KAAK,EAAE,WAAS,sEAqCtC","sources":["packages/@react-spectrum/icon/src/packages/@react-spectrum/icon/src/Icon.tsx","packages/@react-spectrum/icon/src/packages/@react-spectrum/icon/src/UIIcon.tsx","packages/@react-spectrum/icon/src/packages/@react-spectrum/icon/src/index.ts","packages/@react-spectrum/icon/src/index.ts"],"sourcesContent":[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 * from './Icon';\nexport * from './UIIcon';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
1
+ {"mappings":";;AAmBA,0BAA2B,SAAQ,QAAQ,EAAE,iBAAiB,EAAE,UAAU;IACxE;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC;IACvB;;OAEG;IACH,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAE,IAAI,GAAG,KAAK,CAAC;IACpD;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;IAC3C;;OAEG;IACH,KAAK,CAAC,EAAE,cAAc,CAAA;CACvB;AAED,uCAAuC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AAWnE;;GAEG;AACH,qBAAqB,KAAK,EAAE,SAAS,sEAqCpC;AC/ED,4BAA6B,SAAQ,QAAQ,EAAE,iBAAiB,EAAE,UAAU;IAC1E,QAAQ,EAAE,YAAY,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAA;CAC3C;AAED,yCAAyC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;AAEvE,uBAAuB,KAAK,EAAE,WAAW,sEAqCxC;AClDD,kCAAmC,SAAQ,QAAQ,EAAE,iBAAiB,EAAE,UAAU;IAChF;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC;IACvB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAA;CAC3C;AAED,+CAA+C,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;AAEnF;;GAEG;AACH,6BAA6B,KAAK,EAAE,iBAAiB,sEA0BpD","sources":["packages/@react-spectrum/icon/src/packages/@react-spectrum/icon/src/Icon.tsx","packages/@react-spectrum/icon/src/packages/@react-spectrum/icon/src/UIIcon.tsx","packages/@react-spectrum/icon/src/packages/@react-spectrum/icon/src/Illustration.tsx","packages/@react-spectrum/icon/src/packages/@react-spectrum/icon/src/index.ts","packages/@react-spectrum/icon/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 {Icon} from './Icon';\nexport {UIIcon} from './UIIcon';\nexport {Illustration} from './Illustration';\n\nexport type {IconProps, IconPropsWithoutChildren} from './Icon';\nexport type {IllustrationProps, IllustrationPropsWithoutChildren} from './Illustration';\nexport type {UIIconProps, UIIconPropsWithoutChildren} from './UIIcon';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-spectrum/icon",
3
- "version": "3.4.0",
3
+ "version": "3.6.0",
4
4
  "description": "Spectrum UI components in React",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/main.js",
@@ -32,9 +32,9 @@
32
32
  },
33
33
  "dependencies": {
34
34
  "@babel/runtime": "^7.6.2",
35
- "@react-aria/utils": "^3.13.0",
36
- "@react-spectrum/utils": "^3.7.0",
37
- "@react-types/shared": "^3.13.0"
35
+ "@react-aria/utils": "^3.13.3",
36
+ "@react-spectrum/utils": "^3.7.3",
37
+ "@react-types/shared": "^3.14.1"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@adobe/spectrum-css-temp": "3.0.0-alpha.1"
@@ -46,5 +46,5 @@
46
46
  "publishConfig": {
47
47
  "access": "public"
48
48
  },
49
- "gitHead": "8f921ec5094e7c2b3c301bcb6133372e35a2052b"
49
+ "gitHead": "b03ef51e6317547dd0a840f151e59d039b1e1fd3"
50
50
  }
package/src/Icon.tsx CHANGED
@@ -17,7 +17,7 @@ import React, {ReactElement} from 'react';
17
17
  import styles from '@adobe/spectrum-css-temp/components/icon/vars.css';
18
18
  import {useProvider} from '@react-spectrum/provider';
19
19
 
20
- interface IconProps extends DOMProps, AriaLabelingProps, StyleProps {
20
+ export interface IconProps extends DOMProps, AriaLabelingProps, StyleProps {
21
21
  /**
22
22
  * A screen reader only label for the Icon.
23
23
  */
@@ -0,0 +1,69 @@
1
+ /*
2
+ * Copyright 2020 Adobe. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+ import {AriaLabelingProps, DOMProps, StyleProps} from '@react-types/shared';
14
+ import {filterDOMProps} from '@react-aria/utils';
15
+ import React, {ReactElement} from 'react';
16
+ import {useSlotProps, useStyleProps} from '@react-spectrum/utils';
17
+
18
+ export interface IllustrationProps extends DOMProps, AriaLabelingProps, StyleProps {
19
+ /**
20
+ * A screen reader only label for the Illustration.
21
+ */
22
+ 'aria-label'?: string,
23
+ /**
24
+ * The content to display. Should be an SVG.
25
+ */
26
+ children: ReactElement,
27
+ /**
28
+ * A slot to place the illustration in.
29
+ * @default 'illustration'
30
+ */
31
+ slot?: string,
32
+ /**
33
+ * Indicates whether the element is exposed to an accessibility API.
34
+ */
35
+ 'aria-hidden'?: boolean | 'false' | 'true'
36
+ }
37
+
38
+ export type IllustrationPropsWithoutChildren = Omit<IllustrationProps, 'children'>;
39
+
40
+ /**
41
+ * Wrapper component for illustrations. Use this to wrap your svg element for a custom illustration.
42
+ */
43
+ export function Illustration(props: IllustrationProps) {
44
+ props = useSlotProps(props, 'illustration');
45
+ let {
46
+ children,
47
+ 'aria-label': ariaLabel,
48
+ 'aria-labelledby': ariaLabelledby,
49
+ 'aria-hidden': ariaHidden,
50
+ ...otherProps
51
+ } = props;
52
+ let {styleProps} = useStyleProps(otherProps);
53
+
54
+ let hasLabel = ariaLabel || ariaLabelledby;
55
+
56
+ if (!ariaHidden) {
57
+ ariaHidden = undefined;
58
+ }
59
+
60
+ return React.cloneElement(children, {
61
+ ...filterDOMProps(otherProps),
62
+ ...styleProps,
63
+ focusable: 'false',
64
+ 'aria-label': ariaLabel,
65
+ 'aria-labelledby': ariaLabelledby,
66
+ 'aria-hidden': ariaHidden,
67
+ role: hasLabel ? 'img' : undefined
68
+ });
69
+ }
package/src/UIIcon.tsx CHANGED
@@ -17,7 +17,7 @@ import React, {ReactElement} from 'react';
17
17
  import styles from '@adobe/spectrum-css-temp/components/icon/vars.css';
18
18
  import {useProvider} from '@react-spectrum/provider';
19
19
 
20
- interface IconProps extends DOMProps, AriaLabelingProps, StyleProps {
20
+ export interface UIIconProps extends DOMProps, AriaLabelingProps, StyleProps {
21
21
  children: ReactElement,
22
22
  slot?: string,
23
23
  /**
@@ -26,9 +26,9 @@ interface IconProps extends DOMProps, AriaLabelingProps, StyleProps {
26
26
  'aria-hidden'?: boolean | 'false' | 'true'
27
27
  }
28
28
 
29
- export type UIIconPropsWithoutChildren = Omit<IconProps, 'children'>;
29
+ export type UIIconPropsWithoutChildren = Omit<UIIconProps, 'children'>;
30
30
 
31
- export function UIIcon(props: IconProps) {
31
+ export function UIIcon(props: UIIconProps) {
32
32
  props = useSlotProps(props, 'icon');
33
33
  let {
34
34
  children,
package/src/index.ts CHANGED
@@ -12,5 +12,10 @@
12
12
 
13
13
  /// <reference types="css-module-types" />
14
14
 
15
- export * from './Icon';
16
- export * from './UIIcon';
15
+ export {Icon} from './Icon';
16
+ export {UIIcon} from './UIIcon';
17
+ export {Illustration} from './Illustration';
18
+
19
+ export type {IconProps, IconPropsWithoutChildren} from './Icon';
20
+ export type {IllustrationProps, IllustrationPropsWithoutChildren} from './Illustration';
21
+ export type {UIIconProps, UIIconPropsWithoutChildren} from './UIIcon';