@fluentui/react-image 0.0.0-nightlyff78d1e27a20220217.1 → 0.0.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.
Files changed (41) hide show
  1. package/CHANGELOG.json +366 -10
  2. package/CHANGELOG.md +243 -122
  3. package/MIGRATION.md +29 -29
  4. package/README.md +17 -35
  5. package/Spec.md +5 -10
  6. package/dist/{react-image.d.ts → index.d.ts} +22 -14
  7. package/{lib → dist}/tsdoc-metadata.json +0 -0
  8. package/lib/components/Image/Image.js.map +1 -1
  9. package/lib/components/Image/Image.types.js.map +1 -1
  10. package/lib/components/Image/renderImage.js.map +1 -1
  11. package/lib/components/Image/useImage.js +4 -4
  12. package/lib/components/Image/useImage.js.map +1 -1
  13. package/lib/components/Image/useImageStyles.js +21 -17
  14. package/lib/components/Image/useImageStyles.js.map +1 -1
  15. package/lib/index.js +1 -1
  16. package/lib/index.js.map +1 -1
  17. package/lib-commonjs/components/Image/Image.js.map +1 -1
  18. package/lib-commonjs/components/Image/renderImage.js.map +1 -1
  19. package/lib-commonjs/components/Image/useImage.js +4 -4
  20. package/lib-commonjs/components/Image/useImage.js.map +1 -1
  21. package/lib-commonjs/components/Image/useImageStyles.js +22 -18
  22. package/lib-commonjs/components/Image/useImageStyles.js.map +1 -1
  23. package/lib-commonjs/index.js +32 -2
  24. package/lib-commonjs/index.js.map +1 -1
  25. package/package.json +17 -22
  26. package/lib/Image.d.ts +0 -1
  27. package/lib/components/Image/Image.d.ts +0 -6
  28. package/lib/components/Image/Image.types.d.ts +0 -30
  29. package/lib/components/Image/index.d.ts +0 -5
  30. package/lib/components/Image/renderImage.d.ts +0 -6
  31. package/lib/components/Image/useImage.d.ts +0 -6
  32. package/lib/components/Image/useImageStyles.d.ts +0 -3
  33. package/lib/index.d.ts +0 -1
  34. package/lib-commonjs/Image.d.ts +0 -1
  35. package/lib-commonjs/components/Image/Image.d.ts +0 -6
  36. package/lib-commonjs/components/Image/Image.types.d.ts +0 -30
  37. package/lib-commonjs/components/Image/index.d.ts +0 -5
  38. package/lib-commonjs/components/Image/renderImage.d.ts +0 -6
  39. package/lib-commonjs/components/Image/useImage.d.ts +0 -6
  40. package/lib-commonjs/components/Image/useImageStyles.d.ts +0 -3
  41. package/lib-commonjs/index.d.ts +0 -1
package/MIGRATION.md CHANGED
@@ -2,28 +2,28 @@
2
2
 
3
3
  ## Introduction
4
4
 
5
- This guide is a reference for upgrading the Image component from v8 (Fabric) or v0 (Northstar) to v9 (FluentUI vNext).
5
+ This guide is a reference for upgrading the `Image` component from v8 or v0 to v9 .
6
6
 
7
- ## Migration from v8 (Fabric)
7
+ ## Migration from v8
8
8
 
9
9
  ### Property mapping
10
10
 
11
- The table below presents a mapping of props between the v8 (FabricUI) and v9 (Fluent UI vNext) in order to clarify which properties require changes to achieve the same result.
11
+ The table below presents a mapping of props between the v8 and v9 `Image` components in order to clarify which properties require changes to achieve the same result.
12
12
 
13
13
  > ⚠️ Note - Properties not in this table are considered deprecated.
14
14
 
15
- | v7 / v8 | v9 | Good to go? |
16
- | ----------------------- | ------- | ----------- |
17
- | `className` | - | ✔️ |
18
- | `coverStyle` | `fit` | ⚠️ |
19
- | `imageFit` | `fit` | ✔️ |
20
- | `maximizeFrame` | `block` | ✔️ |
21
- | `loading` | - | ✔️ |
22
- | `onLoadingStateChanged` | - | ❌ |
23
- | `shouldFadeIn` | - | ❌ |
24
- | `shouldStartVisible` | - | ❌ |
25
- | `styles` | - | ❌ |
26
- | `theme` | - | |
15
+ | v7 / v8 | v9 | Good to go? |
16
+ | ----------------------- | --------------- | ----------- |
17
+ | `className` | `className` | ✔️ |
18
+ | `coverStyle` | `fit="cover"` | ⚠️ |
19
+ | `imageFit` | `fit="contain"` | ✔️ |
20
+ | `maximizeFrame` | `block` | ✔️ |
21
+ | `loading` | - | |
22
+ | `onLoadingStateChanged` | - | ❌ |
23
+ | `shouldFadeIn` | - | ❌ |
24
+ | `shouldStartVisible` | - | ❌ |
25
+ | `styles` | - | ❌ |
26
+ | `theme` | - | |
27
27
 
28
28
  ### className
29
29
 
@@ -55,7 +55,7 @@ This prop has been renamed to `block` which will result in the same behaviour as
55
55
 
56
56
  ### loading
57
57
 
58
- _This property has not changed and can be used as is._
58
+ For v9, this feature is no longer supported. The alternative is to use the global events such as: `onLoad`, `onError` to detect the image loading state.
59
59
 
60
60
  ### onLoadingStateChanged
61
61
 
@@ -127,27 +127,27 @@ export default function App() {
127
127
 
128
128
  ### styles
129
129
 
130
- _This property has not changed and can be used as is. However, we highly recommend that you migrate to a `make-styles` styling solution for performance reasons._
130
+ For v9, you should migrate to use `make-styles` and do style customizations through the `className` prop.
131
131
 
132
132
  ### theme
133
133
 
134
- _This property has not changed and can be used as is. However, we highly recommend that you migrate to a `make-styles` styling solution for performance reasons._
134
+ For v9, you should use `tokens` in conjunction with `make-styles` and `FluentProvider` to achieve theming correctly.
135
135
 
136
- ## Migration from v0 (Northstar)
136
+ ## Migration from v0
137
137
 
138
138
  ### Property mapping
139
139
 
140
- The table below presents a mapping of props between the v0 and v9 versions in order to make it clear which properties require changes to achieve the same result.
140
+ The table below presents a mapping of props between the v0 and v9 versions of `Image` in order to make it clear which properties require changes to achieve the same result.
141
141
 
142
142
  | v0 | v9 | Good to go? |
143
143
  | --------------- | ------------------ | ----------- |
144
144
  | `accessibility` | - | ❌ |
145
- | `alt` | - | ✔️ |
146
- | `aria-label` | - | ✔️ |
145
+ | `alt` | `alt` | ✔️ |
146
+ | `aria-label` | `aria-label` | ✔️ |
147
147
  | `as` | - | ❌ |
148
148
  | `avatar` | `shape="circular"` | ✔️ |
149
149
  | `circular` | `shape="circular"` | ✔️ |
150
- | `className` | - | ✔️ |
150
+ | `className` | `className` | ✔️ |
151
151
  | `fluid` | `block` | ✔️ |
152
152
  | `styles` | - | ❌ |
153
153
  | `variables` | - | ❌ |
@@ -156,8 +156,8 @@ The table below presents a mapping of props between the v0 and v9 versions in or
156
156
 
157
157
  For v9, this property is no longer supported. It is recommended to follow the best practices of a11y in order for Image to be accessible to assistive tools. Thus:
158
158
 
159
- - It is important for Image to have the `alt` description.
160
- - In case the Image is decorative only, have either `role="presentation"` or `aria-hidden`. Ensure the correct usage of these two attributes, based on your objectives.
159
+ - It is important for `Image` to have the `alt` description.
160
+ - In case the `Image` is decorative only, have either `role="presentation"` or `aria-hidden`. Ensure the correct usage of these two attributes, based on your objectives.
161
161
 
162
162
  ### alt
163
163
 
@@ -169,7 +169,7 @@ _This property has not changed and can be left as is._
169
169
 
170
170
  ### as
171
171
 
172
- For v9, this property is no longer supported. The Image prop will always be an `<img/>` element, it is not possible to show an image as any other element.
172
+ For v9, this property is no longer supported. The `Image` prop will always be an `<img/>` element, it is not possible to show an image as any other element.
173
173
 
174
174
  ### avatar
175
175
 
@@ -201,13 +201,13 @@ This prop has been renamed to `block` which will result into the same behaviour
201
201
 
202
202
  ### styles
203
203
 
204
- _This property has not changed and can be used as is. However, we highly recommend that you migrate to a `make-styles` styling solution for performance reasons._
204
+ For v9, you should migrate to use `make-styles` and do style customizations through the `className` prop.
205
205
 
206
206
  ### variables
207
207
 
208
208
  For v9, this feature is no longer supported. The alternative is to apply styles through `make-styles`. Below is an example of a migration:
209
209
 
210
- #### v0 (Northstar) implementation
210
+ #### v0 implementation
211
211
 
212
212
  ```jsx
213
213
  const MyComponent = () => {
@@ -215,7 +215,7 @@ const MyComponent = () => {
215
215
  };
216
216
  ```
217
217
 
218
- #### v9 (Fluent UI vNext) implementation
218
+ #### v9 implementation
219
219
 
220
220
  ```jsx
221
221
  import { Image } from '@fluentui/react-image';
package/README.md CHANGED
@@ -1,57 +1,39 @@
1
1
  # @fluentui/react-image
2
2
 
3
- **React Image component for [Fluent UI React](https://developer.microsoft.com/en-us/fluentui)**
4
-
5
- > WIP 🚧 - These are not production-ready components as we are still in a Beta phase.
3
+ **Image components for [Fluent UI React](https://aka.ms/fluentui-storybook)**
6
4
 
7
5
  Usage of Image component ensures consistent styling and behaviour of images in your application based on the Fluent UI Design System.
8
6
 
9
7
  ## Usage
10
8
 
11
- To use the Image component, it is required to install the main package of Fluent UI components:
12
-
13
- ```sh
14
- npm install @fluentui/react-components
15
- ```
9
+ To import Image:
16
10
 
17
11
  ```js
18
12
  import { Image } from '@fluentui/react-components';
19
-
20
- const App = () => {
21
- return <Image src="example_image.png" />;
22
- };
23
13
  ```
24
14
 
25
- Or, installing only the `react-image` package:
26
-
27
- ```sh
28
- npm install @fluentui/react-image
29
- npm install @fluentui/react-provider
30
- ```
15
+ ### Examples
31
16
 
32
- ```js
33
- import { Image } from '@fluentui/react-image';
34
- import { FluentProvider } from '@fluentui/react-provider';
35
-
36
- const App = () => (
37
- <FluentProvider>
38
- <Image src="example_image.png" alt="Example image" />;
39
- </FluentProvider>
40
- );
17
+ ```jsx
18
+ <Image src="example_image.png" />
19
+ <Image src="example_image.png" alt="Example image" />;
20
+ <Image src="example_image.png" bordered />;
21
+ <Image src="example_image.png" fit="contain" />;
22
+ <Image src="example_image.png" shadow />;
23
+ <Image src="example_image.png" shape="circular" />;
41
24
  ```
42
25
 
43
- The DOM structure will result into:
26
+ See [Fluent UI Storybook](https://aka.ms/fluentui-storybook) for more detailed usage examples.
44
27
 
45
- ```jsx
46
- <img src="example_image.png" alt="Example image" />
47
- ```
28
+ Alternatively, run Storybook locally with:
48
29
 
49
- ## API
30
+ 1. `yarn start`
31
+ 2. Select `react-image` from the list.
50
32
 
51
- Image component is build upon the `<img/>` tag, which does support all the native attributes. Additionaly, the following properties are available: `bordered`, `fit`, `block`, `shape` and `shadow`.
33
+ ### Specification
52
34
 
53
- For more information on the component, please refer to the [API documentation](https://aka.ms/fluentui-storybook).
35
+ See [SPEC.md](./SPEC.md).
54
36
 
55
37
  ## Migration
56
38
 
57
- For migrating from older versions of FluentUI, please check out the [migration guide](./MIGRATION.md)
39
+ If you're upgrading to Fluent UI v9 see [MIGRATION.md](./MIGRATION.md) for guidance on updating to the latest Image implementation.
package/Spec.md CHANGED
@@ -73,18 +73,16 @@ n/a
73
73
 
74
74
  ## API proposal
75
75
 
76
- See [react-image/Image.types.ts] for the API.
77
-
78
- [react-image/image.types.ts]: https://github.com/microsoft/fluentui/blob/master/packages/react-image/src/components/Image/Image.types.ts
76
+ See API at [Image.types.ts](./src/components/Image/Image.types.ts).
79
77
 
80
78
  Proposed component props:
81
79
 
82
80
  | Name | Type | Default value | Comments |
83
81
  | ---------- | --------- | ------------- | -------------------------------------------- |
84
82
  | `bordered` | `boolean` | `false` | |
85
- | `fit` | `string` | "`none`" | One of: `none`, `center`, `contain`, `cover` |
83
+ | `fit` | `string` | `"none"` | One of: `none`, `center`, `contain`, `cover` |
86
84
  | `block` | `boolean` | `false` | |
87
- | `shape ` | `string ` | `false` | One of: `square`, `circular` , `rounded` |
85
+ | `shape ` | `string ` | `"square"` | One of: `square`, `circular` , `rounded` |
88
86
  | `shadow` | `boolean` | `false` | |
89
87
 
90
88
  All native html attributes of the `<img />` will be available to be used as props of the Image component.
@@ -153,12 +151,9 @@ Sample code based on the proposed API:
153
151
  <img src="..." class="...">
154
152
  ```
155
153
 
156
- <!-- ## Migration -->
157
-
158
- <!-- _Describe what will need to be done to upgrade from the existing implementations:_
154
+ ## Migration
159
155
 
160
- - _Migration from v8_
161
- - _Migration from v0_ -->
156
+ See [MIGRATION.md](./MIGRATION.md).
162
157
 
163
158
  ## Accessibility
164
159
 
@@ -3,6 +3,7 @@ import type { ComponentState } from '@fluentui/react-utilities';
3
3
  import type { ForwardRefComponent } from '@fluentui/react-utilities';
4
4
  import * as React_2 from 'react';
5
5
  import type { Slot } from '@fluentui/react-utilities';
6
+ import type { SlotClassNames } from '@fluentui/react-utilities';
6
7
 
7
8
  /**
8
9
  * The Image component ensures the consistent styling of images.
@@ -10,39 +11,46 @@ import type { Slot } from '@fluentui/react-utilities';
10
11
  declare const Image_2: ForwardRefComponent<ImageProps>;
11
12
  export { Image_2 as Image }
12
13
 
13
- export declare const imageClassName = "fui-Image";
14
+ export declare const imageClassNames: SlotClassNames<ImageSlots>;
14
15
 
15
- declare type ImageCommons = {
16
+ export declare type ImageProps = ComponentProps<ImageSlots> & {
16
17
  /**
17
- * An image can appear with rectangular border.
18
+ * An image can take up the width of its container.
19
+ *
20
+ * @default false
21
+ */
22
+ block?: boolean;
23
+ /**
24
+ * An image can appear with a rectangular border.
25
+ *
26
+ * @default false
18
27
  */
19
28
  bordered?: boolean;
20
29
  /**
21
30
  * An image can set how it should be resized to fit its container.
31
+ *
32
+ * @default 'default'
22
33
  */
23
- fit?: 'none' | 'center' | 'contain' | 'cover';
34
+ fit?: 'none' | 'center' | 'contain' | 'cover' | 'default';
24
35
  /**
25
- * An image can take up the width of its container.
36
+ * An image can appear elevated with shadow.
37
+ *
38
+ * @default false
26
39
  */
27
- block?: boolean;
40
+ shadow?: boolean;
28
41
  /**
29
42
  * An image can appear square, circular, or rounded.
30
- * @defaultvalue square
43
+ *
44
+ * @default 'square'
31
45
  */
32
46
  shape?: 'square' | 'circular' | 'rounded';
33
- /**
34
- * An image can appear elevated with shadow.
35
- */
36
- shadow?: boolean;
37
47
  };
38
48
 
39
- export declare type ImageProps = ComponentProps<ImageSlots> & Partial<ImageCommons>;
40
-
41
49
  export declare type ImageSlots = {
42
50
  root: Slot<'img'>;
43
51
  };
44
52
 
45
- export declare type ImageState = ComponentState<ImageSlots> & ImageCommons;
53
+ export declare type ImageState = ComponentState<ImageSlots> & Required<Pick<ImageProps, 'block' | 'bordered' | 'fit' | 'shadow' | 'shape'>>;
46
54
 
47
55
  /**
48
56
  * Define the render function.
File without changes
@@ -1 +1 @@
1
- {"version":3,"sources":["components/Image/Image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,oBAAT,QAAqC,eAArC;AACA,SAAS,iBAAT,QAAkC,YAAlC;AACA,SAAS,uBAAT,QAAwC,kBAAxC;AAIA;;AAEG;;AACH,OAAO,MAAM,KAAK,gBAAoC,KAAK,CAAC,UAAN,CAAiB,CAAC,KAAD,EAAQ,GAAR,KAAe;AACpF,QAAM,KAAK,GAAG,iBAAiB,CAAC,KAAD,EAAQ,GAAR,CAA/B;AACA,EAAA,uBAAuB,CAAC,KAAD,CAAvB;AAEA,SAAO,oBAAoB,CAAC,KAAD,CAA3B;AACD,CALqD,CAA/C;AAOP,KAAK,CAAC,WAAN,GAAoB,OAApB","sourcesContent":["import * as React from 'react';\nimport { renderImage_unstable } from './renderImage';\nimport { useImage_unstable } from './useImage';\nimport { useImageStyles_unstable } from './useImageStyles';\nimport type { ImageProps } from './Image.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * The Image component ensures the consistent styling of images.\n */\nexport const Image: ForwardRefComponent<ImageProps> = React.forwardRef((props, ref) => {\n const state = useImage_unstable(props, ref);\n useImageStyles_unstable(state);\n\n return renderImage_unstable(state);\n});\n\nImage.displayName = 'Image';\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"sources":["components/Image/Image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,oBAAT,QAAqC,eAArC;AACA,SAAS,iBAAT,QAAkC,YAAlC;AACA,SAAS,uBAAT,QAAwC,kBAAxC;AAIA;;AAEG;;AACH,OAAO,MAAM,KAAK,gBAAoC,KAAK,CAAC,UAAN,CAAiB,CAAC,KAAD,EAAQ,GAAR,KAAe;EACpF,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAD,EAAQ,GAAR,CAA/B;EACA,uBAAuB,CAAC,KAAD,CAAvB;EAEA,OAAO,oBAAoB,CAAC,KAAD,CAA3B;AACD,CALqD,CAA/C;AAOP,KAAK,CAAC,WAAN,GAAoB,OAApB","sourcesContent":["import * as React from 'react';\nimport { renderImage_unstable } from './renderImage';\nimport { useImage_unstable } from './useImage';\nimport { useImageStyles_unstable } from './useImageStyles';\nimport type { ImageProps } from './Image.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * The Image component ensures the consistent styling of images.\n */\nexport const Image: ForwardRefComponent<ImageProps> = React.forwardRef((props, ref) => {\n const state = useImage_unstable(props, ref);\n useImageStyles_unstable(state);\n\n return renderImage_unstable(state);\n});\n\nImage.displayName = 'Image';\n"],"sourceRoot":"../src/"}
@@ -1 +1 @@
1
- {"version":3,"file":"Image.types.js","sourceRoot":"../src/","sources":["components/Image/Image.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ComponentState, ComponentProps, Slot } from '@fluentui/react-utilities';\n\nexport type ImageSlots = {\n root: Slot<'img'>;\n};\n\ntype ImageCommons = {\n /**\n * An image can appear with rectangular border.\n */\n bordered?: boolean;\n\n /**\n * An image can set how it should be resized to fit its container.\n */\n fit?: 'none' | 'center' | 'contain' | 'cover';\n\n /**\n * An image can take up the width of its container.\n */\n block?: boolean;\n\n /**\n * An image can appear square, circular, or rounded.\n * @defaultvalue square\n */\n shape?: 'square' | 'circular' | 'rounded';\n\n /**\n * An image can appear elevated with shadow.\n */\n shadow?: boolean;\n};\n\nexport type ImageProps = ComponentProps<ImageSlots> & Partial<ImageCommons>;\n\nexport type ImageState = ComponentState<ImageSlots> & ImageCommons;\n"]}
1
+ {"version":3,"file":"Image.types.js","sourceRoot":"../src/","sources":["components/Image/Image.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ComponentState, ComponentProps, Slot } from '@fluentui/react-utilities';\n\nexport type ImageSlots = {\n root: Slot<'img'>;\n};\n\nexport type ImageProps = ComponentProps<ImageSlots> & {\n /**\n * An image can take up the width of its container.\n *\n * @default false\n */\n block?: boolean;\n\n /**\n * An image can appear with a rectangular border.\n *\n * @default false\n */\n bordered?: boolean;\n\n /**\n * An image can set how it should be resized to fit its container.\n *\n * @default 'default'\n */\n fit?: 'none' | 'center' | 'contain' | 'cover' | 'default';\n\n /**\n * An image can appear elevated with shadow.\n *\n * @default false\n */\n shadow?: boolean;\n\n /**\n * An image can appear square, circular, or rounded.\n *\n * @default 'square'\n */\n shape?: 'square' | 'circular' | 'rounded';\n};\n\nexport type ImageState = ComponentState<ImageSlots> &\n Required<Pick<ImageProps, 'block' | 'bordered' | 'fit' | 'shadow' | 'shape'>>;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["components/Image/renderImage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,2BAAzB;AAGA;;;AAGG;;AACH,OAAO,MAAM,oBAAoB,GAAI,KAAD,IAAsB;AACxD,QAAM;AAAE,IAAA,KAAF;AAAS,IAAA;AAAT,MAAuB,QAAQ,CAAa,KAAb,CAArC;AAEA,sBAAO,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;AAAf,GAAX,CAAP;AACD,CAJM","sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport { ImageSlots, ImageState } from './Image.types';\n\n/**\n * Define the render function.\n * Given the state of an image, renders it.\n */\nexport const renderImage_unstable = (state: ImageState) => {\n const { slots, slotProps } = getSlots<ImageSlots>(state);\n\n return <slots.root {...slotProps.root} />;\n};\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"sources":["components/Image/renderImage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,2BAAzB;AAGA;;;AAGG;;AACH,OAAO,MAAM,oBAAoB,GAAI,KAAD,IAAsB;EACxD,MAAM;IAAE,KAAF;IAAS;EAAT,IAAuB,QAAQ,CAAa,KAAb,CAArC;EAEA,oBAAO,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;EAAf,CAAX,CAAP;AACD,CAJM","sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport { ImageSlots, ImageState } from './Image.types';\n\n/**\n * Define the render function.\n * Given the state of an image, renders it.\n */\nexport const renderImage_unstable = (state: ImageState) => {\n const { slots, slotProps } = getSlots<ImageSlots>(state);\n\n return <slots.root {...slotProps.root} />;\n};\n"],"sourceRoot":"../src/"}
@@ -5,11 +5,11 @@ import { getNativeElementProps } from '@fluentui/react-utilities';
5
5
 
6
6
  export const useImage_unstable = (props, ref) => {
7
7
  const {
8
- bordered,
9
- fit,
10
- block,
8
+ bordered = false,
9
+ fit = 'default',
10
+ block = false,
11
11
  shape = 'square',
12
- shadow
12
+ shadow = false
13
13
  } = props;
14
14
  const state = {
15
15
  bordered,
@@ -1 +1 @@
1
- {"version":3,"sources":["components/Image/useImage.ts"],"names":[],"mappings":"AACA,SAAS,qBAAT,QAAsC,2BAAtC;AAGA;;AAEG;;AACH,OAAO,MAAM,iBAAiB,GAAG,CAAC,KAAD,EAAoB,GAApB,KAAoE;AACnG,QAAM;AAAE,IAAA,QAAF;AAAY,IAAA,GAAZ;AAAiB,IAAA,KAAjB;AAAwB,IAAA,KAAK,GAAG,QAAhC;AAA0C,IAAA;AAA1C,MAAqD,KAA3D;AAEA,QAAM,KAAK,GAAe;AACxB,IAAA,QADwB;AAExB,IAAA,GAFwB;AAGxB,IAAA,KAHwB;AAIxB,IAAA,KAJwB;AAKxB,IAAA,MALwB;AAMxB,IAAA,UAAU,EAAE;AACV,MAAA,IAAI,EAAE;AADI,KANY;AASxB,IAAA,IAAI,EAAE,qBAAqB,CAAC,KAAD,EAAQ;AACjC,MAAA,GADiC;AAEjC,SAAG;AAF8B,KAAR;AATH,GAA1B;AAeA,SAAO,KAAP;AACD,CAnBM","sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps } from '@fluentui/react-utilities';\nimport type { ImageProps, ImageState } from './Image.types';\n\n/**\n * Given user props, returns state and render function for an Image.\n */\nexport const useImage_unstable = (props: ImageProps, ref: React.Ref<HTMLImageElement>): ImageState => {\n const { bordered, fit, block, shape = 'square', shadow } = props;\n\n const state: ImageState = {\n bordered,\n fit,\n block,\n shape,\n shadow,\n components: {\n root: 'img',\n },\n root: getNativeElementProps('img', {\n ref,\n ...props,\n }),\n };\n\n return state;\n};\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"sources":["components/Image/useImage.ts"],"names":[],"mappings":"AACA,SAAS,qBAAT,QAAsC,2BAAtC;AAGA;;AAEG;;AACH,OAAO,MAAM,iBAAiB,GAAG,CAAC,KAAD,EAAoB,GAApB,KAAoE;EACnG,MAAM;IAAE,QAAQ,GAAG,KAAb;IAAoB,GAAG,GAAG,SAA1B;IAAqC,KAAK,GAAG,KAA7C;IAAoD,KAAK,GAAG,QAA5D;IAAsE,MAAM,GAAG;EAA/E,IAAyF,KAA/F;EAEA,MAAM,KAAK,GAAe;IACxB,QADwB;IAExB,GAFwB;IAGxB,KAHwB;IAIxB,KAJwB;IAKxB,MALwB;IAMxB,UAAU,EAAE;MACV,IAAI,EAAE;IADI,CANY;IASxB,IAAI,EAAE,qBAAqB,CAAC,KAAD,EAAQ;MACjC,GADiC;MAEjC,GAAG;IAF8B,CAAR;EATH,CAA1B;EAeA,OAAO,KAAP;AACD,CAnBM","sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps } from '@fluentui/react-utilities';\nimport type { ImageProps, ImageState } from './Image.types';\n\n/**\n * Given user props, returns state and render function for an Image.\n */\nexport const useImage_unstable = (props: ImageProps, ref: React.Ref<HTMLImageElement>): ImageState => {\n const { bordered = false, fit = 'default', block = false, shape = 'square', shadow = false } = props;\n\n const state: ImageState = {\n bordered,\n fit,\n block,\n shape,\n shadow,\n components: {\n root: 'img',\n },\n root: getNativeElementProps('img', {\n ref,\n ...props,\n }),\n };\n\n return state;\n};\n"],"sourceRoot":"../src/"}
@@ -1,9 +1,11 @@
1
1
  import { shorthands, mergeClasses, __styles } from '@griffel/react';
2
2
  import { tokens } from '@fluentui/react-theme';
3
- export const imageClassName = 'fui-Image';
3
+ export const imageClassNames = {
4
+ root: 'fui-Image'
5
+ };
4
6
 
5
7
  const useStyles = /*#__PURE__*/__styles({
6
- "root": {
8
+ "base": {
7
9
  "g2u3we": "fj3muxo",
8
10
  "h3c5rm": ["f1akhkt", "f1lxtadh"],
9
11
  "B9xav0g": "f1aperda",
@@ -15,7 +17,7 @@ const useStyles = /*#__PURE__*/__styles({
15
17
  "B7ck84d": "f1ewtqcl",
16
18
  "mc9l5x": "f14t3ns0"
17
19
  },
18
- "rootBordered": {
20
+ "bordered": {
19
21
  "icvyot": "fzkkow9",
20
22
  "vrafjx": ["fcdblym", "fjik90z"],
21
23
  "oivjwe": "fg706s2",
@@ -25,54 +27,56 @@ const useStyles = /*#__PURE__*/__styles({
25
27
  "Bn0qgzm": "f1vxd6vx",
26
28
  "ibv6hh": ["f1ojsxk5", "f5tn483"]
27
29
  },
28
- "rootCircular": {
30
+ "circular": {
29
31
  "Bbmb7ep": ["f8fbkgy", "f1nfllo7"],
30
32
  "Beyfa6y": ["f1nfllo7", "f8fbkgy"],
31
33
  "B7oj6ja": ["f1djnp8u", "f1s8kh49"],
32
34
  "Btl43ni": ["f1s8kh49", "f1djnp8u"]
33
35
  },
34
- "rootRounded": {
36
+ "rounded": {
35
37
  "Bbmb7ep": ["f1aa9q02", "f16jpd5f"],
36
38
  "Beyfa6y": ["f16jpd5f", "f1aa9q02"],
37
39
  "B7oj6ja": ["f1jar5jt", "fyu767a"],
38
40
  "Btl43ni": ["fyu767a", "f1jar5jt"]
39
41
  },
40
- "rootShadow": {
42
+ "square": {},
43
+ "shadow": {
41
44
  "E5pizo": "f1whvlc6"
42
45
  },
43
- "rootFitNone": {
46
+ "center": {
44
47
  "st4lth": "f1plgu50",
45
- "Ermj5k": ["f13uwng7", "fjmyj0p"],
48
+ "Ermj5k": "f14xojzb",
46
49
  "Bqenvij": "f1l02sjl",
47
50
  "a9b677": "fly5x3f"
48
51
  },
49
- "rootFitCenter": {
50
- "st4lth": "f1plgu50",
52
+ "contain": {
53
+ "st4lth": "f1kle4es",
51
54
  "Ermj5k": "f14xojzb",
52
55
  "Bqenvij": "f1l02sjl",
53
56
  "a9b677": "fly5x3f"
54
57
  },
55
- "rootFitCover": {
58
+ "default": {},
59
+ "cover": {
56
60
  "st4lth": "f1ps3kmd",
57
61
  "Ermj5k": "f14xojzb",
58
62
  "Bqenvij": "f1l02sjl",
59
63
  "a9b677": "fly5x3f"
60
64
  },
61
- "rootFitContain": {
62
- "st4lth": "f1kle4es",
63
- "Ermj5k": "f14xojzb",
65
+ "none": {
66
+ "st4lth": "f1plgu50",
67
+ "Ermj5k": ["f13uwng7", "fjmyj0p"],
64
68
  "Bqenvij": "f1l02sjl",
65
69
  "a9b677": "fly5x3f"
66
70
  },
67
- "rootBlock": {
71
+ "block": {
68
72
  "a9b677": "fly5x3f"
69
73
  }
70
74
  }, {
71
- "d": [".fj3muxo{border-top-color:var(--colorNeutralStroke1);}", ".f1akhkt{border-right-color:var(--colorNeutralStroke1);}", ".f1lxtadh{border-left-color:var(--colorNeutralStroke1);}", ".f1aperda{border-bottom-color:var(--colorNeutralStroke1);}", ".fzi6hpg{border-bottom-right-radius:var(--borderRadiusNone);}", ".fyowgf4{border-bottom-left-radius:var(--borderRadiusNone);}", ".f3fg2lr{border-top-right-radius:var(--borderRadiusNone);}", ".f13av6d4{border-top-left-radius:var(--borderRadiusNone);}", ".f1ewtqcl{box-sizing:border-box;}", ".f14t3ns0{display:inline-block;}", ".fzkkow9{border-top-style:solid;}", ".fcdblym{border-right-style:solid;}", ".fjik90z{border-left-style:solid;}", ".fg706s2{border-bottom-style:solid;}", ".f192inf7{border-top-width:var(--strokeWidthThin);}", ".f5tn483{border-right-width:var(--strokeWidthThin);}", ".f1ojsxk5{border-left-width:var(--strokeWidthThin);}", ".f1vxd6vx{border-bottom-width:var(--strokeWidthThin);}", ".f8fbkgy{border-bottom-right-radius:var(--borderRadiusCircular);}", ".f1nfllo7{border-bottom-left-radius:var(--borderRadiusCircular);}", ".f1djnp8u{border-top-right-radius:var(--borderRadiusCircular);}", ".f1s8kh49{border-top-left-radius:var(--borderRadiusCircular);}", ".f1aa9q02{border-bottom-right-radius:var(--borderRadiusMedium);}", ".f16jpd5f{border-bottom-left-radius:var(--borderRadiusMedium);}", ".f1jar5jt{border-top-right-radius:var(--borderRadiusMedium);}", ".fyu767a{border-top-left-radius:var(--borderRadiusMedium);}", ".f1whvlc6{box-shadow:var(--shadow4);}", ".f1plgu50{object-fit:none;}", ".f13uwng7{object-position:left top;}", ".fjmyj0p{object-position:right top;}", ".f1l02sjl{height:100%;}", ".fly5x3f{width:100%;}", ".f14xojzb{object-position:center;}", ".f1ps3kmd{object-fit:cover;}", ".f1kle4es{object-fit:contain;}"]
75
+ "d": [".fj3muxo{border-top-color:var(--colorNeutralStroke1);}", ".f1akhkt{border-right-color:var(--colorNeutralStroke1);}", ".f1lxtadh{border-left-color:var(--colorNeutralStroke1);}", ".f1aperda{border-bottom-color:var(--colorNeutralStroke1);}", ".fzi6hpg{border-bottom-right-radius:var(--borderRadiusNone);}", ".fyowgf4{border-bottom-left-radius:var(--borderRadiusNone);}", ".f3fg2lr{border-top-right-radius:var(--borderRadiusNone);}", ".f13av6d4{border-top-left-radius:var(--borderRadiusNone);}", ".f1ewtqcl{box-sizing:border-box;}", ".f14t3ns0{display:inline-block;}", ".fzkkow9{border-top-style:solid;}", ".fcdblym{border-right-style:solid;}", ".fjik90z{border-left-style:solid;}", ".fg706s2{border-bottom-style:solid;}", ".f192inf7{border-top-width:var(--strokeWidthThin);}", ".f5tn483{border-right-width:var(--strokeWidthThin);}", ".f1ojsxk5{border-left-width:var(--strokeWidthThin);}", ".f1vxd6vx{border-bottom-width:var(--strokeWidthThin);}", ".f8fbkgy{border-bottom-right-radius:var(--borderRadiusCircular);}", ".f1nfllo7{border-bottom-left-radius:var(--borderRadiusCircular);}", ".f1djnp8u{border-top-right-radius:var(--borderRadiusCircular);}", ".f1s8kh49{border-top-left-radius:var(--borderRadiusCircular);}", ".f1aa9q02{border-bottom-right-radius:var(--borderRadiusMedium);}", ".f16jpd5f{border-bottom-left-radius:var(--borderRadiusMedium);}", ".f1jar5jt{border-top-right-radius:var(--borderRadiusMedium);}", ".fyu767a{border-top-left-radius:var(--borderRadiusMedium);}", ".f1whvlc6{box-shadow:var(--shadow4);}", ".f1plgu50{object-fit:none;}", ".f14xojzb{object-position:center;}", ".f1l02sjl{height:100%;}", ".fly5x3f{width:100%;}", ".f1kle4es{object-fit:contain;}", ".f1ps3kmd{object-fit:cover;}", ".f13uwng7{object-position:left top;}", ".fjmyj0p{object-position:right top;}"]
72
76
  });
73
77
 
74
78
  export const useImageStyles_unstable = state => {
75
79
  const styles = useStyles();
76
- state.root.className = mergeClasses(imageClassName, styles.root, state.bordered && styles.rootBordered, state.shape === 'circular' && styles.rootCircular, state.shape === 'rounded' && styles.rootRounded, state.shadow && styles.rootShadow, state.fit === 'none' && styles.rootFitNone, state.fit === 'center' && styles.rootFitCenter, state.fit === 'cover' && styles.rootFitCover, state.fit === 'contain' && styles.rootFitContain, state.block && styles.rootBlock, state.root.className);
80
+ state.root.className = mergeClasses(imageClassNames.root, styles.base, state.block && styles.block, state.bordered && styles.bordered, state.shadow && styles.shadow, styles[state.fit], styles[state.shape], state.root.className);
77
81
  };
78
82
  //# sourceMappingURL=useImageStyles.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["components/Image/useImageStyles.ts"],"names":[],"mappings":"AAAA,SAAS,UAAT,EAAqB,YAArB,kBAAqD,gBAArD;AACA,SAAS,MAAT,QAAuB,uBAAvB;AAGA,OAAO,MAAM,cAAc,GAAG,WAAvB;;AAEP,MAAM,SAAS,gBAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAlB;;AAkDA,OAAO,MAAM,uBAAuB,GAAI,KAAD,IAAsB;AAC3D,QAAM,MAAM,GAAG,SAAS,EAAxB;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,YAAY,CACjC,cADiC,EAEjC,MAAM,CAAC,IAF0B,EAGjC,KAAK,CAAC,QAAN,IAAkB,MAAM,CAAC,YAHQ,EAIjC,KAAK,CAAC,KAAN,KAAgB,UAAhB,IAA8B,MAAM,CAAC,YAJJ,EAKjC,KAAK,CAAC,KAAN,KAAgB,SAAhB,IAA6B,MAAM,CAAC,WALH,EAMjC,KAAK,CAAC,MAAN,IAAgB,MAAM,CAAC,UANU,EAOjC,KAAK,CAAC,GAAN,KAAc,MAAd,IAAwB,MAAM,CAAC,WAPE,EAQjC,KAAK,CAAC,GAAN,KAAc,QAAd,IAA0B,MAAM,CAAC,aARA,EASjC,KAAK,CAAC,GAAN,KAAc,OAAd,IAAyB,MAAM,CAAC,YATC,EAUjC,KAAK,CAAC,GAAN,KAAc,SAAd,IAA2B,MAAM,CAAC,cAVD,EAWjC,KAAK,CAAC,KAAN,IAAe,MAAM,CAAC,SAXW,EAYjC,KAAK,CAAC,IAAN,CAAW,SAZsB,CAAnC;AAcD,CAhBM","sourcesContent":["import { shorthands, mergeClasses, makeStyles } from '@griffel/react';\nimport { tokens } from '@fluentui/react-theme';\nimport type { ImageState } from './Image.types';\n\nexport const imageClassName = 'fui-Image';\n\nconst useStyles = makeStyles({\n root: {\n ...shorthands.borderColor(tokens.colorNeutralStroke1),\n ...shorthands.borderRadius(tokens.borderRadiusNone),\n\n boxSizing: 'border-box',\n display: 'inline-block',\n },\n rootBordered: {\n ...shorthands.borderStyle('solid'),\n ...shorthands.borderWidth(tokens.strokeWidthThin),\n },\n rootCircular: {\n ...shorthands.borderRadius(tokens.borderRadiusCircular),\n },\n rootRounded: {\n ...shorthands.borderRadius(tokens.borderRadiusMedium),\n },\n rootShadow: {\n boxShadow: tokens.shadow4,\n },\n rootFitNone: {\n objectFit: 'none',\n objectPosition: 'left top',\n height: '100%',\n width: '100%',\n },\n rootFitCenter: {\n objectFit: 'none',\n objectPosition: 'center',\n height: '100%',\n width: '100%',\n },\n rootFitCover: {\n objectFit: 'cover',\n objectPosition: 'center',\n height: '100%',\n width: '100%',\n },\n rootFitContain: {\n objectFit: 'contain',\n objectPosition: 'center',\n height: '100%',\n width: '100%',\n },\n rootBlock: {\n width: '100%',\n },\n});\n\nexport const useImageStyles_unstable = (state: ImageState) => {\n const styles = useStyles();\n state.root.className = mergeClasses(\n imageClassName,\n styles.root,\n state.bordered && styles.rootBordered,\n state.shape === 'circular' && styles.rootCircular,\n state.shape === 'rounded' && styles.rootRounded,\n state.shadow && styles.rootShadow,\n state.fit === 'none' && styles.rootFitNone,\n state.fit === 'center' && styles.rootFitCenter,\n state.fit === 'cover' && styles.rootFitCover,\n state.fit === 'contain' && styles.rootFitContain,\n state.block && styles.rootBlock,\n state.root.className,\n );\n};\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"sources":["components/Image/useImageStyles.ts"],"names":[],"mappings":"AAAA,SAAS,UAAT,EAAqB,YAArB,kBAAqD,gBAArD;AACA,SAAS,MAAT,QAAuB,uBAAvB;AAIA,OAAO,MAAM,eAAe,GAA+B;EACzD,IAAI,EAAE;AADmD,CAApD;;AAIP,MAAM,SAAS,gBAAG;EAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;EAAA;IAAA;EAAA;EAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;EAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;EAAA;AAAA;EAAA;AAAA,EAAlB;;AAmEA,OAAO,MAAM,uBAAuB,GAAI,KAAD,IAAsB;EAC3D,MAAM,MAAM,GAAG,SAAS,EAAxB;EACA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,YAAY,CACjC,eAAe,CAAC,IADiB,EAEjC,MAAM,CAAC,IAF0B,EAGjC,KAAK,CAAC,KAAN,IAAe,MAAM,CAAC,KAHW,EAIjC,KAAK,CAAC,QAAN,IAAkB,MAAM,CAAC,QAJQ,EAKjC,KAAK,CAAC,MAAN,IAAgB,MAAM,CAAC,MALU,EAMjC,MAAM,CAAC,KAAK,CAAC,GAAP,CAN2B,EAOjC,MAAM,CAAC,KAAK,CAAC,KAAP,CAP2B,EAQjC,KAAK,CAAC,IAAN,CAAW,SARsB,CAAnC;AAUD,CAZM","sourcesContent":["import { shorthands, mergeClasses, makeStyles } from '@griffel/react';\nimport { tokens } from '@fluentui/react-theme';\nimport type { ImageSlots, ImageState } from './Image.types';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\n\nexport const imageClassNames: SlotClassNames<ImageSlots> = {\n root: 'fui-Image',\n};\n\nconst useStyles = makeStyles({\n // Base styles\n base: {\n ...shorthands.borderColor(tokens.colorNeutralStroke1),\n ...shorthands.borderRadius(tokens.borderRadiusNone),\n\n boxSizing: 'border-box',\n display: 'inline-block',\n },\n\n // Bordered styles\n bordered: {\n ...shorthands.borderStyle('solid'),\n ...shorthands.borderWidth(tokens.strokeWidthThin),\n },\n\n // Shape variations\n circular: {\n ...shorthands.borderRadius(tokens.borderRadiusCircular),\n },\n rounded: {\n ...shorthands.borderRadius(tokens.borderRadiusMedium),\n },\n square: {\n /* The square styles are exactly the same as the base styles. */\n },\n\n // Shadow styles\n shadow: {\n boxShadow: tokens.shadow4,\n },\n\n // Fit variations\n center: {\n objectFit: 'none',\n objectPosition: 'center',\n height: '100%',\n width: '100%',\n },\n contain: {\n objectFit: 'contain',\n objectPosition: 'center',\n height: '100%',\n width: '100%',\n },\n default: {\n /* The default styles are exactly the same as the base styles. */\n },\n cover: {\n objectFit: 'cover',\n objectPosition: 'center',\n height: '100%',\n width: '100%',\n },\n none: {\n objectFit: 'none',\n objectPosition: 'left top',\n height: '100%',\n width: '100%',\n },\n\n // Block styles\n block: {\n width: '100%',\n },\n});\n\nexport const useImageStyles_unstable = (state: ImageState) => {\n const styles = useStyles();\n state.root.className = mergeClasses(\n imageClassNames.root,\n styles.base,\n state.block && styles.block,\n state.bordered && styles.bordered,\n state.shadow && styles.shadow,\n styles[state.fit],\n styles[state.shape],\n state.root.className,\n );\n};\n"],"sourceRoot":"../src/"}
package/lib/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export * from './Image';
1
+ export { Image, imageClassNames, renderImage_unstable, useImageStyles_unstable, useImage_unstable } from './Image';
2
2
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC","sourcesContent":["export * from './Image';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC","sourcesContent":["export { Image, imageClassNames, renderImage_unstable, useImageStyles_unstable, useImage_unstable } from './Image';\nexport type { ImageProps, ImageSlots, ImageState } from './Image';\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["components/Image/Image.tsx"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,MAAA,aAAA,gBAAA,OAAA,CAAA,eAAA,CAAA;;AACA,MAAA,UAAA,gBAAA,OAAA,CAAA,YAAA,CAAA;;AACA,MAAA,gBAAA,gBAAA,OAAA,CAAA,kBAAA,CAAA;AAIA;;AAEG;;;AACU,OAAA,CAAA,KAAA,gBAAyC,KAAK,CAAC,UAAN,CAAiB,CAAC,KAAD,EAAQ,GAAR,KAAe;AACpF,QAAM,KAAK,GAAG,UAAA,CAAA,iBAAA,CAAkB,KAAlB,EAAyB,GAAzB,CAAd;AACA,EAAA,gBAAA,CAAA,uBAAA,CAAwB,KAAxB;AAEA,SAAO,aAAA,CAAA,oBAAA,CAAqB,KAArB,CAAP;AACD,CALqD,CAAzC;AAOb,OAAA,CAAA,KAAA,CAAM,WAAN,GAAoB,OAApB","sourcesContent":["import * as React from 'react';\nimport { renderImage_unstable } from './renderImage';\nimport { useImage_unstable } from './useImage';\nimport { useImageStyles_unstable } from './useImageStyles';\nimport type { ImageProps } from './Image.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * The Image component ensures the consistent styling of images.\n */\nexport const Image: ForwardRefComponent<ImageProps> = React.forwardRef((props, ref) => {\n const state = useImage_unstable(props, ref);\n useImageStyles_unstable(state);\n\n return renderImage_unstable(state);\n});\n\nImage.displayName = 'Image';\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"sources":["components/Image/Image.tsx"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,MAAA,aAAA,gBAAA,OAAA,CAAA,eAAA,CAAA;;AACA,MAAA,UAAA,gBAAA,OAAA,CAAA,YAAA,CAAA;;AACA,MAAA,gBAAA,gBAAA,OAAA,CAAA,kBAAA,CAAA;AAIA;;AAEG;;;AACU,OAAA,CAAA,KAAA,gBAAyC,KAAK,CAAC,UAAN,CAAiB,CAAC,KAAD,EAAQ,GAAR,KAAe;EACpF,MAAM,KAAK,GAAG,UAAA,CAAA,iBAAA,CAAkB,KAAlB,EAAyB,GAAzB,CAAd;EACA,gBAAA,CAAA,uBAAA,CAAwB,KAAxB;EAEA,OAAO,aAAA,CAAA,oBAAA,CAAqB,KAArB,CAAP;AACD,CALqD,CAAzC;AAOb,OAAA,CAAA,KAAA,CAAM,WAAN,GAAoB,OAApB","sourcesContent":["import * as React from 'react';\nimport { renderImage_unstable } from './renderImage';\nimport { useImage_unstable } from './useImage';\nimport { useImageStyles_unstable } from './useImageStyles';\nimport type { ImageProps } from './Image.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * The Image component ensures the consistent styling of images.\n */\nexport const Image: ForwardRefComponent<ImageProps> = React.forwardRef((props, ref) => {\n const state = useImage_unstable(props, ref);\n useImageStyles_unstable(state);\n\n return renderImage_unstable(state);\n});\n\nImage.displayName = 'Image';\n"],"sourceRoot":"../src/"}
@@ -1 +1 @@
1
- {"version":3,"sources":["components/Image/renderImage.tsx"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,MAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;AAGA;;;AAGG;;;AACI,MAAM,oBAAoB,GAAI,KAAD,IAAsB;AACxD,QAAM;AAAE,IAAA,KAAF;AAAS,IAAA;AAAT,MAAuB,iBAAA,CAAA,QAAA,CAAqB,KAArB,CAA7B;AAEA,SAAO,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;AAAf,GAAX,CAAP;AACD,CAJM;;AAAM,OAAA,CAAA,oBAAA,GAAoB,oBAApB","sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport { ImageSlots, ImageState } from './Image.types';\n\n/**\n * Define the render function.\n * Given the state of an image, renders it.\n */\nexport const renderImage_unstable = (state: ImageState) => {\n const { slots, slotProps } = getSlots<ImageSlots>(state);\n\n return <slots.root {...slotProps.root} />;\n};\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"sources":["components/Image/renderImage.tsx"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,MAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;AAGA;;;AAGG;;;AACI,MAAM,oBAAoB,GAAI,KAAD,IAAsB;EACxD,MAAM;IAAE,KAAF;IAAS;EAAT,IAAuB,iBAAA,CAAA,QAAA,CAAqB,KAArB,CAA7B;EAEA,OAAO,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;EAAf,CAAX,CAAP;AACD,CAJM;;AAAM,OAAA,CAAA,oBAAA,GAAoB,oBAApB","sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport { ImageSlots, ImageState } from './Image.types';\n\n/**\n * Define the render function.\n * Given the state of an image, renders it.\n */\nexport const renderImage_unstable = (state: ImageState) => {\n const { slots, slotProps } = getSlots<ImageSlots>(state);\n\n return <slots.root {...slotProps.root} />;\n};\n"],"sourceRoot":"../src/"}
@@ -13,11 +13,11 @@ const react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
13
13
 
14
14
  const useImage_unstable = (props, ref) => {
15
15
  const {
16
- bordered,
17
- fit,
18
- block,
16
+ bordered = false,
17
+ fit = 'default',
18
+ block = false,
19
19
  shape = 'square',
20
- shadow
20
+ shadow = false
21
21
  } = props;
22
22
  const state = {
23
23
  bordered,
@@ -1 +1 @@
1
- {"version":3,"sources":["components/Image/useImage.ts"],"names":[],"mappings":";;;;;;;AACA,MAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;AAGA;;AAEG;;;AACI,MAAM,iBAAiB,GAAG,CAAC,KAAD,EAAoB,GAApB,KAAoE;AACnG,QAAM;AAAE,IAAA,QAAF;AAAY,IAAA,GAAZ;AAAiB,IAAA,KAAjB;AAAwB,IAAA,KAAK,GAAG,QAAhC;AAA0C,IAAA;AAA1C,MAAqD,KAA3D;AAEA,QAAM,KAAK,GAAe;AACxB,IAAA,QADwB;AAExB,IAAA,GAFwB;AAGxB,IAAA,KAHwB;AAIxB,IAAA,KAJwB;AAKxB,IAAA,MALwB;AAMxB,IAAA,UAAU,EAAE;AACV,MAAA,IAAI,EAAE;AADI,KANY;AASxB,IAAA,IAAI,EAAE,iBAAA,CAAA,qBAAA,CAAsB,KAAtB,EAA6B;AACjC,MAAA,GADiC;AAEjC,SAAG;AAF8B,KAA7B;AATkB,GAA1B;AAeA,SAAO,KAAP;AACD,CAnBM;;AAAM,OAAA,CAAA,iBAAA,GAAiB,iBAAjB","sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps } from '@fluentui/react-utilities';\nimport type { ImageProps, ImageState } from './Image.types';\n\n/**\n * Given user props, returns state and render function for an Image.\n */\nexport const useImage_unstable = (props: ImageProps, ref: React.Ref<HTMLImageElement>): ImageState => {\n const { bordered, fit, block, shape = 'square', shadow } = props;\n\n const state: ImageState = {\n bordered,\n fit,\n block,\n shape,\n shadow,\n components: {\n root: 'img',\n },\n root: getNativeElementProps('img', {\n ref,\n ...props,\n }),\n };\n\n return state;\n};\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"sources":["components/Image/useImage.ts"],"names":[],"mappings":";;;;;;;AACA,MAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;AAGA;;AAEG;;;AACI,MAAM,iBAAiB,GAAG,CAAC,KAAD,EAAoB,GAApB,KAAoE;EACnG,MAAM;IAAE,QAAQ,GAAG,KAAb;IAAoB,GAAG,GAAG,SAA1B;IAAqC,KAAK,GAAG,KAA7C;IAAoD,KAAK,GAAG,QAA5D;IAAsE,MAAM,GAAG;EAA/E,IAAyF,KAA/F;EAEA,MAAM,KAAK,GAAe;IACxB,QADwB;IAExB,GAFwB;IAGxB,KAHwB;IAIxB,KAJwB;IAKxB,MALwB;IAMxB,UAAU,EAAE;MACV,IAAI,EAAE;IADI,CANY;IASxB,IAAI,EAAE,iBAAA,CAAA,qBAAA,CAAsB,KAAtB,EAA6B;MACjC,GADiC;MAEjC,GAAG;IAF8B,CAA7B;EATkB,CAA1B;EAeA,OAAO,KAAP;AACD,CAnBM;;AAAM,OAAA,CAAA,iBAAA,GAAiB,iBAAjB","sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps } from '@fluentui/react-utilities';\nimport type { ImageProps, ImageState } from './Image.types';\n\n/**\n * Given user props, returns state and render function for an Image.\n */\nexport const useImage_unstable = (props: ImageProps, ref: React.Ref<HTMLImageElement>): ImageState => {\n const { bordered = false, fit = 'default', block = false, shape = 'square', shadow = false } = props;\n\n const state: ImageState = {\n bordered,\n fit,\n block,\n shape,\n shadow,\n components: {\n root: 'img',\n },\n root: getNativeElementProps('img', {\n ref,\n ...props,\n }),\n };\n\n return state;\n};\n"],"sourceRoot":"../src/"}