@fluentui/react-breadcrumb 9.3.17 → 9.4.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/CHANGELOG.md +13 -2
- package/dist/index.d.ts +75 -0
- package/lib/Breadcrumb.js +1 -1
- package/lib/Breadcrumb.js.map +1 -1
- package/lib/BreadcrumbButton.js +1 -1
- package/lib/BreadcrumbButton.js.map +1 -1
- package/lib/BreadcrumbDivider.js +1 -1
- package/lib/BreadcrumbDivider.js.map +1 -1
- package/lib/BreadcrumbItem.js +1 -1
- package/lib/BreadcrumbItem.js.map +1 -1
- package/lib/components/Breadcrumb/Breadcrumb.types.js +1 -3
- package/lib/components/Breadcrumb/Breadcrumb.types.js.map +1 -1
- package/lib/components/Breadcrumb/index.js +1 -1
- package/lib/components/Breadcrumb/index.js.map +1 -1
- package/lib/components/Breadcrumb/useBreadcrumb.js +37 -8
- package/lib/components/Breadcrumb/useBreadcrumb.js.map +1 -1
- package/lib/components/BreadcrumbButton/BreadcrumbButton.types.js +1 -3
- package/lib/components/BreadcrumbButton/BreadcrumbButton.types.js.map +1 -1
- package/lib/components/BreadcrumbButton/index.js +1 -1
- package/lib/components/BreadcrumbButton/index.js.map +1 -1
- package/lib/components/BreadcrumbButton/useBreadcrumbButton.js +24 -12
- package/lib/components/BreadcrumbButton/useBreadcrumbButton.js.map +1 -1
- package/lib/components/BreadcrumbDivider/BreadcrumbDivider.types.js +1 -1
- package/lib/components/BreadcrumbDivider/BreadcrumbDivider.types.js.map +1 -1
- package/lib/components/BreadcrumbDivider/index.js +1 -1
- package/lib/components/BreadcrumbDivider/index.js.map +1 -1
- package/lib/components/BreadcrumbDivider/useBreadcrumbDivider.js +18 -4
- package/lib/components/BreadcrumbDivider/useBreadcrumbDivider.js.map +1 -1
- package/lib/components/BreadcrumbItem/BreadcrumbItem.types.js +1 -1
- package/lib/components/BreadcrumbItem/BreadcrumbItem.types.js.map +1 -1
- package/lib/components/BreadcrumbItem/index.js +1 -1
- package/lib/components/BreadcrumbItem/index.js.map +1 -1
- package/lib/components/BreadcrumbItem/useBreadcrumbItem.js +14 -2
- package/lib/components/BreadcrumbItem/useBreadcrumbItem.js.map +1 -1
- package/lib/index.js +4 -4
- package/lib/index.js.map +1 -1
- package/lib-commonjs/Breadcrumb.js +6 -0
- package/lib-commonjs/Breadcrumb.js.map +1 -1
- package/lib-commonjs/BreadcrumbButton.js +3 -0
- package/lib-commonjs/BreadcrumbButton.js.map +1 -1
- package/lib-commonjs/BreadcrumbDivider.js +3 -0
- package/lib-commonjs/BreadcrumbDivider.js.map +1 -1
- package/lib-commonjs/BreadcrumbItem.js +3 -0
- package/lib-commonjs/BreadcrumbItem.js.map +1 -1
- package/lib-commonjs/components/Breadcrumb/Breadcrumb.types.js +1 -3
- package/lib-commonjs/components/Breadcrumb/Breadcrumb.types.js.map +1 -1
- package/lib-commonjs/components/Breadcrumb/index.js +6 -0
- package/lib-commonjs/components/Breadcrumb/index.js.map +1 -1
- package/lib-commonjs/components/Breadcrumb/useBreadcrumb.js +38 -11
- package/lib-commonjs/components/Breadcrumb/useBreadcrumb.js.map +1 -1
- package/lib-commonjs/components/BreadcrumbButton/BreadcrumbButton.types.js +1 -3
- package/lib-commonjs/components/BreadcrumbButton/BreadcrumbButton.types.js.map +1 -1
- package/lib-commonjs/components/BreadcrumbButton/index.js +3 -0
- package/lib-commonjs/components/BreadcrumbButton/index.js.map +1 -1
- package/lib-commonjs/components/BreadcrumbButton/useBreadcrumbButton.js +29 -15
- package/lib-commonjs/components/BreadcrumbButton/useBreadcrumbButton.js.map +1 -1
- package/lib-commonjs/components/BreadcrumbDivider/BreadcrumbDivider.types.js +1 -1
- package/lib-commonjs/components/BreadcrumbDivider/BreadcrumbDivider.types.js.map +1 -1
- package/lib-commonjs/components/BreadcrumbDivider/index.js +3 -0
- package/lib-commonjs/components/BreadcrumbDivider/index.js.map +1 -1
- package/lib-commonjs/components/BreadcrumbDivider/useBreadcrumbDivider.js +23 -7
- package/lib-commonjs/components/BreadcrumbDivider/useBreadcrumbDivider.js.map +1 -1
- package/lib-commonjs/components/BreadcrumbItem/BreadcrumbItem.types.js +1 -1
- package/lib-commonjs/components/BreadcrumbItem/BreadcrumbItem.types.js.map +1 -1
- package/lib-commonjs/components/BreadcrumbItem/index.js +3 -0
- package/lib-commonjs/components/BreadcrumbItem/index.js.map +1 -1
- package/lib-commonjs/components/BreadcrumbItem/useBreadcrumbItem.js +19 -5
- package/lib-commonjs/components/BreadcrumbItem/useBreadcrumbItem.js.map +1 -1
- package/lib-commonjs/index.js +15 -0
- package/lib-commonjs/index.js.map +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,23 @@
|
|
|
1
1
|
# Change Log - @fluentui/react-breadcrumb
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Thu, 26 Mar 2026 08:10:38 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## [9.4.0](https://github.com/microsoft/fluentui/tree/@fluentui/react-breadcrumb_v9.4.0)
|
|
8
|
+
|
|
9
|
+
Thu, 26 Mar 2026 08:10:38 GMT
|
|
10
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-breadcrumb_v9.3.17..@fluentui/react-breadcrumb_v9.4.0)
|
|
11
|
+
|
|
12
|
+
### Minor changes
|
|
13
|
+
|
|
14
|
+
- feat: add base hooks for Breadcrumb ([PR #35819](https://github.com/microsoft/fluentui/pull/35819) by dmytrokirpa@microsoft.com)
|
|
15
|
+
- Bump @fluentui/react-button to v9.9.0 ([PR #35824](https://github.com/microsoft/fluentui/pull/35824) by beachball)
|
|
16
|
+
- Bump @fluentui/react-link to v9.8.0 ([PR #35824](https://github.com/microsoft/fluentui/pull/35824) by beachball)
|
|
17
|
+
|
|
7
18
|
## [9.3.17](https://github.com/microsoft/fluentui/tree/@fluentui/react-breadcrumb_v9.3.17)
|
|
8
19
|
|
|
9
|
-
Wed, 25 Feb 2026 13:28
|
|
20
|
+
Wed, 25 Feb 2026 13:32:28 GMT
|
|
10
21
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-breadcrumb_v9.3.16..@fluentui/react-breadcrumb_v9.3.17)
|
|
11
22
|
|
|
12
23
|
### Patches
|
package/dist/index.d.ts
CHANGED
|
@@ -8,17 +8,26 @@ import type { JSXElement } from '@fluentui/react-utilities';
|
|
|
8
8
|
import * as React_2 from 'react';
|
|
9
9
|
import type { Slot } from '@fluentui/react-utilities';
|
|
10
10
|
import type { SlotClassNames } from '@fluentui/react-utilities';
|
|
11
|
+
import { TabsterDOMAttribute } from '@fluentui/react-tabster';
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
14
|
* Breadcrumb component - TODO: add more docs
|
|
14
15
|
*/
|
|
15
16
|
export declare const Breadcrumb: ForwardRefComponent<BreadcrumbProps>;
|
|
16
17
|
|
|
18
|
+
export declare type BreadcrumbBaseProps = Omit<BreadcrumbProps, 'size'>;
|
|
19
|
+
|
|
20
|
+
export declare type BreadcrumbBaseState = Omit<BreadcrumbState, 'size'>;
|
|
21
|
+
|
|
17
22
|
/**
|
|
18
23
|
* A button component which is used inside the Breadcrumb.
|
|
19
24
|
*/
|
|
20
25
|
export declare const BreadcrumbButton: ForwardRefComponent<BreadcrumbButtonProps>;
|
|
21
26
|
|
|
27
|
+
export declare type BreadcrumbButtonBaseProps = Omit<BreadcrumbButtonProps, 'size'>;
|
|
28
|
+
|
|
29
|
+
export declare type BreadcrumbButtonBaseState = Omit<BreadcrumbButtonState, 'size'>;
|
|
30
|
+
|
|
22
31
|
/**
|
|
23
32
|
* Static CSS class names used internally for the component slots.
|
|
24
33
|
*/
|
|
@@ -55,6 +64,16 @@ export declare type BreadcrumbContextValues = Required<Pick<BreadcrumbProps, 'si
|
|
|
55
64
|
*/
|
|
56
65
|
export declare const BreadcrumbDivider: ForwardRefComponent<BreadcrumbDividerProps>;
|
|
57
66
|
|
|
67
|
+
/**
|
|
68
|
+
* BreadcrumbDivider base props (same as BreadcrumbDividerProps since BreadcrumbDivider has no design props of its own)
|
|
69
|
+
*/
|
|
70
|
+
export declare type BreadcrumbDividerBaseProps = BreadcrumbDividerProps;
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* BreadcrumbDivider base state (excludes size, which is a design prop injected from context)
|
|
74
|
+
*/
|
|
75
|
+
export declare type BreadcrumbDividerBaseState = Omit<BreadcrumbDividerState, 'size'>;
|
|
76
|
+
|
|
58
77
|
export declare const breadcrumbDividerClassNames: SlotClassNames<BreadcrumbDividerSlots>;
|
|
59
78
|
|
|
60
79
|
/**
|
|
@@ -77,6 +96,16 @@ export declare type BreadcrumbDividerState = ComponentState<BreadcrumbDividerSlo
|
|
|
77
96
|
*/
|
|
78
97
|
export declare const BreadcrumbItem: ForwardRefComponent<BreadcrumbItemProps>;
|
|
79
98
|
|
|
99
|
+
/**
|
|
100
|
+
* BreadcrumbItem base props (same as BreadcrumbItemProps since size is passed through context, not as a design prop)
|
|
101
|
+
*/
|
|
102
|
+
export declare type BreadcrumbItemBaseProps = Omit<BreadcrumbItemProps, 'size'>;
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* BreadcrumbItem base state (excludes size, which is a design prop injected from context)
|
|
106
|
+
*/
|
|
107
|
+
export declare type BreadcrumbItemBaseState = Omit<BreadcrumbItemState, 'size'>;
|
|
108
|
+
|
|
80
109
|
export declare const breadcrumbItemClassNames: SlotClassNames<BreadcrumbItemSlots>;
|
|
81
110
|
|
|
82
111
|
/**
|
|
@@ -197,6 +226,25 @@ export declare const truncateBreadcrumLongTooltip: (content: string, maxLength?:
|
|
|
197
226
|
*/
|
|
198
227
|
export declare const useBreadcrumb_unstable: (props: BreadcrumbProps, ref: React_2.Ref<HTMLElement>) => BreadcrumbState;
|
|
199
228
|
|
|
229
|
+
/**
|
|
230
|
+
* Hook to get accessibility attributes for Breadcrumb component, such as roving tab index.
|
|
231
|
+
* Based on Tabster's useArrowNavigationGroup.
|
|
232
|
+
*
|
|
233
|
+
* @param focusMode - whether the Breadcrumb uses arrow key navigation or tab key navigation
|
|
234
|
+
* @returns Tabster DOM attributes
|
|
235
|
+
*/
|
|
236
|
+
export declare const useBreadcrumbA11yBehavior_unstable: ({ focusMode, }: Pick<BreadcrumbBaseProps, "focusMode">) => Partial<TabsterDOMAttribute>;
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* Base hook for Breadcrumb component, which manages state related to slots structure and ARIA attributes.
|
|
240
|
+
*
|
|
241
|
+
* Note: keyboard navigation behavior is not handled in this hook, but in useBreadcrumbA11yBehavior_unstable.
|
|
242
|
+
*
|
|
243
|
+
* @param props - props from this instance of Breadcrumb
|
|
244
|
+
* @param ref - reference to root HTMLElement of Breadcrumb
|
|
245
|
+
*/
|
|
246
|
+
export declare const useBreadcrumbBase_unstable: (props: BreadcrumbBaseProps, ref: React_2.Ref<HTMLElement>) => BreadcrumbBaseState;
|
|
247
|
+
|
|
200
248
|
/**
|
|
201
249
|
* Create the state required to render BreadcrumbButton.
|
|
202
250
|
*
|
|
@@ -208,6 +256,15 @@ export declare const useBreadcrumb_unstable: (props: BreadcrumbProps, ref: React
|
|
|
208
256
|
*/
|
|
209
257
|
export declare const useBreadcrumbButton_unstable: (props: BreadcrumbButtonProps, ref: React_2.Ref<HTMLButtonElement | HTMLAnchorElement>) => BreadcrumbButtonState;
|
|
210
258
|
|
|
259
|
+
/**
|
|
260
|
+
* Base hook for BreadcrumbButton component, which manages state related to button behavior,
|
|
261
|
+
* ARIA attributes (aria-current, aria-disabled), and slot structure without design props.
|
|
262
|
+
*
|
|
263
|
+
* @param props - props from this instance of BreadcrumbButton
|
|
264
|
+
* @param ref - reference to root HTMLElement of BreadcrumbButton
|
|
265
|
+
*/
|
|
266
|
+
export declare const useBreadcrumbButtonBase_unstable: (props: BreadcrumbButtonBaseProps, ref: React_2.Ref<HTMLButtonElement | HTMLAnchorElement>) => BreadcrumbButtonBaseState;
|
|
267
|
+
|
|
211
268
|
/**
|
|
212
269
|
* Apply styling to the BreadcrumbButton slots based on the state
|
|
213
270
|
*/
|
|
@@ -229,6 +286,15 @@ export declare const useBreadcrumbContext_unstable: () => BreadcrumbContextValue
|
|
|
229
286
|
*/
|
|
230
287
|
export declare const useBreadcrumbDivider_unstable: (props: BreadcrumbDividerProps, ref: React_2.Ref<HTMLLIElement>) => BreadcrumbDividerState;
|
|
231
288
|
|
|
289
|
+
/**
|
|
290
|
+
* Base hook for BreadcrumbDivider component, which manages state related to slots structure and ARIA attributes
|
|
291
|
+
* without design props. Note: size is provided via BreadcrumbContext in the full hook.
|
|
292
|
+
*
|
|
293
|
+
* @param props - props from this instance of BreadcrumbDivider
|
|
294
|
+
* @param ref - reference to root HTMLElement of BreadcrumbDivider
|
|
295
|
+
*/
|
|
296
|
+
export declare const useBreadcrumbDividerBase_unstable: (props: BreadcrumbDividerBaseProps, ref: React_2.Ref<HTMLLIElement>) => BreadcrumbDividerBaseState;
|
|
297
|
+
|
|
232
298
|
/**
|
|
233
299
|
* Apply styling to the BreadcrumbDivider slots based on the state
|
|
234
300
|
*/
|
|
@@ -245,6 +311,15 @@ export declare const useBreadcrumbDividerStyles_unstable: (state: BreadcrumbDivi
|
|
|
245
311
|
*/
|
|
246
312
|
export declare const useBreadcrumbItem_unstable: (props: BreadcrumbItemProps, ref: React_2.Ref<HTMLLIElement>) => BreadcrumbItemState;
|
|
247
313
|
|
|
314
|
+
/**
|
|
315
|
+
* Base hook for BreadcrumbItem component, which manages state related to slots structure
|
|
316
|
+
* without design props. Note: size is provided via BreadcrumbContext in the full hook.
|
|
317
|
+
*
|
|
318
|
+
* @param props - props from this instance of BreadcrumbItem
|
|
319
|
+
* @param ref - reference to root HTMLElement of BreadcrumbItem
|
|
320
|
+
*/
|
|
321
|
+
export declare const useBreadcrumbItemBase_unstable: (props: BreadcrumbItemBaseProps, ref: React_2.Ref<HTMLLIElement>) => BreadcrumbItemBaseState;
|
|
322
|
+
|
|
248
323
|
/**
|
|
249
324
|
* Apply styling to the BreadcrumbItem slots based on the state
|
|
250
325
|
*/
|
package/lib/Breadcrumb.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { Breadcrumb, BreadcrumbProvider, breadcrumbClassNames, breadcrumbDefaultValue, renderBreadcrumb_unstable, useBreadcrumbContext_unstable, useBreadcrumbStyles_unstable, useBreadcrumb_unstable } from './components/Breadcrumb/index';
|
|
1
|
+
export { Breadcrumb, BreadcrumbProvider, breadcrumbClassNames, breadcrumbDefaultValue, renderBreadcrumb_unstable, useBreadcrumbContext_unstable, useBreadcrumbStyles_unstable, useBreadcrumb_unstable, useBreadcrumbBase_unstable, useBreadcrumbA11yBehavior_unstable } from './components/Breadcrumb/index';
|
package/lib/Breadcrumb.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Breadcrumb.ts"],"sourcesContent":["export type {\n BreadcrumbContextValues,\n BreadcrumbProps,\n BreadcrumbSlots,\n BreadcrumbState,\n} from './components/Breadcrumb/index';\nexport {\n Breadcrumb,\n BreadcrumbProvider,\n breadcrumbClassNames,\n breadcrumbDefaultValue,\n renderBreadcrumb_unstable,\n useBreadcrumbContext_unstable,\n useBreadcrumbStyles_unstable,\n useBreadcrumb_unstable,\n} from './components/Breadcrumb/index';\n"],"names":["Breadcrumb","BreadcrumbProvider","breadcrumbClassNames","breadcrumbDefaultValue","renderBreadcrumb_unstable","useBreadcrumbContext_unstable","useBreadcrumbStyles_unstable","useBreadcrumb_unstable"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/Breadcrumb.ts"],"sourcesContent":["export type {\n BreadcrumbContextValues,\n BreadcrumbProps,\n BreadcrumbSlots,\n BreadcrumbState,\n BreadcrumbBaseProps,\n BreadcrumbBaseState,\n} from './components/Breadcrumb/index';\nexport {\n Breadcrumb,\n BreadcrumbProvider,\n breadcrumbClassNames,\n breadcrumbDefaultValue,\n renderBreadcrumb_unstable,\n useBreadcrumbContext_unstable,\n useBreadcrumbStyles_unstable,\n useBreadcrumb_unstable,\n useBreadcrumbBase_unstable,\n useBreadcrumbA11yBehavior_unstable,\n} from './components/Breadcrumb/index';\n"],"names":["Breadcrumb","BreadcrumbProvider","breadcrumbClassNames","breadcrumbDefaultValue","renderBreadcrumb_unstable","useBreadcrumbContext_unstable","useBreadcrumbStyles_unstable","useBreadcrumb_unstable","useBreadcrumbBase_unstable","useBreadcrumbA11yBehavior_unstable"],"mappings":"AAQA,SACEA,UAAU,EACVC,kBAAkB,EAClBC,oBAAoB,EACpBC,sBAAsB,EACtBC,yBAAyB,EACzBC,6BAA6B,EAC7BC,4BAA4B,EAC5BC,sBAAsB,EACtBC,0BAA0B,EAC1BC,kCAAkC,QAC7B,gCAAgC"}
|
package/lib/BreadcrumbButton.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { BreadcrumbButton, breadcrumbButtonClassNames, renderBreadcrumbButton_unstable, useBreadcrumbButtonStyles_unstable, useBreadcrumbButton_unstable } from './components/BreadcrumbButton/index';
|
|
1
|
+
export { BreadcrumbButton, breadcrumbButtonClassNames, renderBreadcrumbButton_unstable, useBreadcrumbButtonStyles_unstable, useBreadcrumbButton_unstable, useBreadcrumbButtonBase_unstable } from './components/BreadcrumbButton/index';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/BreadcrumbButton.ts"],"sourcesContent":["export type {\n BreadcrumbButtonProps,\n BreadcrumbButtonSlots,\n BreadcrumbButtonState,\n} from './components/BreadcrumbButton/index';\nexport {\n BreadcrumbButton,\n breadcrumbButtonClassNames,\n renderBreadcrumbButton_unstable,\n useBreadcrumbButtonStyles_unstable,\n useBreadcrumbButton_unstable,\n} from './components/BreadcrumbButton/index';\n"],"names":["BreadcrumbButton","breadcrumbButtonClassNames","renderBreadcrumbButton_unstable","useBreadcrumbButtonStyles_unstable","useBreadcrumbButton_unstable"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/BreadcrumbButton.ts"],"sourcesContent":["export type {\n BreadcrumbButtonProps,\n BreadcrumbButtonSlots,\n BreadcrumbButtonState,\n BreadcrumbButtonBaseProps,\n BreadcrumbButtonBaseState,\n} from './components/BreadcrumbButton/index';\nexport {\n BreadcrumbButton,\n breadcrumbButtonClassNames,\n renderBreadcrumbButton_unstable,\n useBreadcrumbButtonStyles_unstable,\n useBreadcrumbButton_unstable,\n useBreadcrumbButtonBase_unstable,\n} from './components/BreadcrumbButton/index';\n"],"names":["BreadcrumbButton","breadcrumbButtonClassNames","renderBreadcrumbButton_unstable","useBreadcrumbButtonStyles_unstable","useBreadcrumbButton_unstable","useBreadcrumbButtonBase_unstable"],"mappings":"AAOA,SACEA,gBAAgB,EAChBC,0BAA0B,EAC1BC,+BAA+B,EAC/BC,kCAAkC,EAClCC,4BAA4B,EAC5BC,gCAAgC,QAC3B,sCAAsC"}
|
package/lib/BreadcrumbDivider.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { BreadcrumbDivider, breadcrumbDividerClassNames, renderBreadcrumbDivider_unstable, useBreadcrumbDividerStyles_unstable, useBreadcrumbDivider_unstable } from './components/BreadcrumbDivider/index';
|
|
1
|
+
export { BreadcrumbDivider, breadcrumbDividerClassNames, renderBreadcrumbDivider_unstable, useBreadcrumbDividerStyles_unstable, useBreadcrumbDivider_unstable, useBreadcrumbDividerBase_unstable } from './components/BreadcrumbDivider/index';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/BreadcrumbDivider.ts"],"sourcesContent":["export type {\n BreadcrumbDividerProps,\n BreadcrumbDividerSlots,\n BreadcrumbDividerState,\n} from './components/BreadcrumbDivider/index';\nexport {\n BreadcrumbDivider,\n breadcrumbDividerClassNames,\n renderBreadcrumbDivider_unstable,\n useBreadcrumbDividerStyles_unstable,\n useBreadcrumbDivider_unstable,\n} from './components/BreadcrumbDivider/index';\n"],"names":["BreadcrumbDivider","breadcrumbDividerClassNames","renderBreadcrumbDivider_unstable","useBreadcrumbDividerStyles_unstable","useBreadcrumbDivider_unstable"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/BreadcrumbDivider.ts"],"sourcesContent":["export type {\n BreadcrumbDividerProps,\n BreadcrumbDividerSlots,\n BreadcrumbDividerState,\n BreadcrumbDividerBaseProps,\n BreadcrumbDividerBaseState,\n} from './components/BreadcrumbDivider/index';\nexport {\n BreadcrumbDivider,\n breadcrumbDividerClassNames,\n renderBreadcrumbDivider_unstable,\n useBreadcrumbDividerStyles_unstable,\n useBreadcrumbDivider_unstable,\n useBreadcrumbDividerBase_unstable,\n} from './components/BreadcrumbDivider/index';\n"],"names":["BreadcrumbDivider","breadcrumbDividerClassNames","renderBreadcrumbDivider_unstable","useBreadcrumbDividerStyles_unstable","useBreadcrumbDivider_unstable","useBreadcrumbDividerBase_unstable"],"mappings":"AAOA,SACEA,iBAAiB,EACjBC,2BAA2B,EAC3BC,gCAAgC,EAChCC,mCAAmC,EACnCC,6BAA6B,EAC7BC,iCAAiC,QAC5B,uCAAuC"}
|
package/lib/BreadcrumbItem.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { BreadcrumbItem, breadcrumbItemClassNames, renderBreadcrumbItem_unstable, useBreadcrumbItemStyles_unstable, useBreadcrumbItem_unstable } from './components/BreadcrumbItem/index';
|
|
1
|
+
export { BreadcrumbItem, breadcrumbItemClassNames, renderBreadcrumbItem_unstable, useBreadcrumbItemStyles_unstable, useBreadcrumbItem_unstable, useBreadcrumbItemBase_unstable } from './components/BreadcrumbItem/index';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/BreadcrumbItem.ts"],"sourcesContent":["export type {
|
|
1
|
+
{"version":3,"sources":["../src/BreadcrumbItem.ts"],"sourcesContent":["export type {\n BreadcrumbItemProps,\n BreadcrumbItemSlots,\n BreadcrumbItemState,\n BreadcrumbItemBaseProps,\n BreadcrumbItemBaseState,\n} from './components/BreadcrumbItem/index';\nexport {\n BreadcrumbItem,\n breadcrumbItemClassNames,\n renderBreadcrumbItem_unstable,\n useBreadcrumbItemStyles_unstable,\n useBreadcrumbItem_unstable,\n useBreadcrumbItemBase_unstable,\n} from './components/BreadcrumbItem/index';\n"],"names":["BreadcrumbItem","breadcrumbItemClassNames","renderBreadcrumbItem_unstable","useBreadcrumbItemStyles_unstable","useBreadcrumbItem_unstable","useBreadcrumbItemBase_unstable"],"mappings":"AAOA,SACEA,cAAc,EACdC,wBAAwB,EACxBC,6BAA6B,EAC7BC,gCAAgC,EAChCC,0BAA0B,EAC1BC,8BAA8B,QACzB,oCAAoC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Breadcrumb/Breadcrumb.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\n\n/**\n * Data shared between breadcrumb components\n */\nexport type BreadcrumbContextValues = Required<Pick<BreadcrumbProps, 'size'>>;\n\nexport type BreadcrumbSlots = {\n /**\n * Root element of the component.\n */\n root: Slot<'nav'>;\n /**\n * Ordered list which contains items.\n */\n list?: Slot<'ol'>;\n};\n\n/**\n * Breadcrumb Props\n */\nexport type BreadcrumbProps = ComponentProps<BreadcrumbSlots> & {\n /**\n * Sets the focus behavior for the Breadcrumb.\n *\n * `tab`\n * This behaviour will cycle through all elements inside of the Breadcrumb when pressing the Tab key and then release focus\n * after the last inner element.\n *\n * `arrow`\n * This behaviour will cycle through all elements inside of the Breadcrumb when pressing the Arrow key.\n *\n * @default 'tab'\n */\n focusMode?: 'arrow' | 'tab';\n\n /**\n * Controls size of Breadcrumb items and dividers.\n *\n * @default 'medium'\n */\n size?: 'small' | 'medium' | 'large';\n};\n\n/**\n * State used in rendering Breadcrumb\n */\nexport type BreadcrumbState = ComponentState<BreadcrumbSlots> & Required<Pick<BreadcrumbProps, 'size'>>;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/components/Breadcrumb/Breadcrumb.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\n\n/**\n * Data shared between breadcrumb components\n */\nexport type BreadcrumbContextValues = Required<Pick<BreadcrumbProps, 'size'>>;\n\nexport type BreadcrumbSlots = {\n /**\n * Root element of the component.\n */\n root: Slot<'nav'>;\n /**\n * Ordered list which contains items.\n */\n list?: Slot<'ol'>;\n};\n\n/**\n * Breadcrumb Props\n */\nexport type BreadcrumbProps = ComponentProps<BreadcrumbSlots> & {\n /**\n * Sets the focus behavior for the Breadcrumb.\n *\n * `tab`\n * This behaviour will cycle through all elements inside of the Breadcrumb when pressing the Tab key and then release focus\n * after the last inner element.\n *\n * `arrow`\n * This behaviour will cycle through all elements inside of the Breadcrumb when pressing the Arrow key.\n *\n * @default 'tab'\n */\n focusMode?: 'arrow' | 'tab';\n\n /**\n * Controls size of Breadcrumb items and dividers.\n *\n * @default 'medium'\n */\n size?: 'small' | 'medium' | 'large';\n};\n\n/**\n * State used in rendering Breadcrumb\n */\nexport type BreadcrumbState = ComponentState<BreadcrumbSlots> & Required<Pick<BreadcrumbProps, 'size'>>;\n\nexport type BreadcrumbBaseProps = Omit<BreadcrumbProps, 'size'>;\n\nexport type BreadcrumbBaseState = Omit<BreadcrumbState, 'size'>;\n"],"names":[],"mappings":"AAmDA,WAAgE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { Breadcrumb } from './Breadcrumb';
|
|
2
2
|
export { BreadcrumbProvider, breadcrumbDefaultValue, useBreadcrumbContext_unstable } from './BreadcrumbContext';
|
|
3
3
|
export { renderBreadcrumb_unstable } from './renderBreadcrumb';
|
|
4
|
-
export { useBreadcrumb_unstable } from './useBreadcrumb';
|
|
4
|
+
export { useBreadcrumb_unstable, useBreadcrumbBase_unstable, useBreadcrumbA11yBehavior_unstable } from './useBreadcrumb';
|
|
5
5
|
export { breadcrumbClassNames, useBreadcrumbStyles_unstable } from './useBreadcrumbStyles.styles';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Breadcrumb/index.ts"],"sourcesContent":["export { Breadcrumb } from './Breadcrumb';\nexport type {
|
|
1
|
+
{"version":3,"sources":["../src/components/Breadcrumb/index.ts"],"sourcesContent":["export { Breadcrumb } from './Breadcrumb';\nexport type {\n BreadcrumbBaseProps,\n BreadcrumbBaseState,\n BreadcrumbContextValues,\n BreadcrumbProps,\n BreadcrumbSlots,\n BreadcrumbState,\n} from './Breadcrumb.types';\nexport { BreadcrumbProvider, breadcrumbDefaultValue, useBreadcrumbContext_unstable } from './BreadcrumbContext';\nexport { renderBreadcrumb_unstable } from './renderBreadcrumb';\nexport {\n useBreadcrumb_unstable,\n useBreadcrumbBase_unstable,\n useBreadcrumbA11yBehavior_unstable,\n} from './useBreadcrumb';\nexport { breadcrumbClassNames, useBreadcrumbStyles_unstable } from './useBreadcrumbStyles.styles';\n"],"names":["Breadcrumb","BreadcrumbProvider","breadcrumbDefaultValue","useBreadcrumbContext_unstable","renderBreadcrumb_unstable","useBreadcrumb_unstable","useBreadcrumbBase_unstable","useBreadcrumbA11yBehavior_unstable","breadcrumbClassNames","useBreadcrumbStyles_unstable"],"mappings":"AAAA,SAASA,UAAU,QAAQ,eAAe;AAS1C,SAASC,kBAAkB,EAAEC,sBAAsB,EAAEC,6BAA6B,QAAQ,sBAAsB;AAChH,SAASC,yBAAyB,QAAQ,qBAAqB;AAC/D,SACEC,sBAAsB,EACtBC,0BAA0B,EAC1BC,kCAAkC,QAC7B,kBAAkB;AACzB,SAASC,oBAAoB,EAAEC,4BAA4B,QAAQ,+BAA+B"}
|
|
@@ -11,12 +11,29 @@ import { useArrowNavigationGroup } from '@fluentui/react-tabster';
|
|
|
11
11
|
* @param props - props from this instance of Breadcrumb
|
|
12
12
|
* @param ref - reference to root HTMLElement of Breadcrumb
|
|
13
13
|
*/ export const useBreadcrumb_unstable = (props, ref)=>{
|
|
14
|
-
const { focusMode = 'tab', size = 'medium',
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
memorizeCurrent: true
|
|
14
|
+
const { focusMode = 'tab', size = 'medium', ...breadcrumbProps } = props;
|
|
15
|
+
const state = useBreadcrumbBase_unstable(breadcrumbProps, ref);
|
|
16
|
+
const focusAttributes = useBreadcrumbA11yBehavior_unstable({
|
|
17
|
+
focusMode
|
|
19
18
|
});
|
|
19
|
+
return {
|
|
20
|
+
...state,
|
|
21
|
+
root: {
|
|
22
|
+
...focusAttributes,
|
|
23
|
+
...state.root
|
|
24
|
+
},
|
|
25
|
+
size
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Base hook for Breadcrumb component, which manages state related to slots structure and ARIA attributes.
|
|
30
|
+
*
|
|
31
|
+
* Note: keyboard navigation behavior is not handled in this hook, but in useBreadcrumbA11yBehavior_unstable.
|
|
32
|
+
*
|
|
33
|
+
* @param props - props from this instance of Breadcrumb
|
|
34
|
+
* @param ref - reference to root HTMLElement of Breadcrumb
|
|
35
|
+
*/ export const useBreadcrumbBase_unstable = (props, ref)=>{
|
|
36
|
+
const { focusMode = 'tab', list, ...rest } = props;
|
|
20
37
|
var _props_arialabel;
|
|
21
38
|
return {
|
|
22
39
|
components: {
|
|
@@ -26,7 +43,6 @@ import { useArrowNavigationGroup } from '@fluentui/react-tabster';
|
|
|
26
43
|
root: slot.always(getIntrinsicElementProps('nav', {
|
|
27
44
|
ref,
|
|
28
45
|
'aria-label': (_props_arialabel = props['aria-label']) !== null && _props_arialabel !== void 0 ? _props_arialabel : 'breadcrumb',
|
|
29
|
-
...focusMode === 'arrow' ? focusAttributes : {},
|
|
30
46
|
...rest
|
|
31
47
|
}), {
|
|
32
48
|
elementType: 'nav'
|
|
@@ -37,7 +53,20 @@ import { useArrowNavigationGroup } from '@fluentui/react-tabster';
|
|
|
37
53
|
role: 'list'
|
|
38
54
|
},
|
|
39
55
|
elementType: 'ol'
|
|
40
|
-
})
|
|
41
|
-
size
|
|
56
|
+
})
|
|
42
57
|
};
|
|
43
58
|
};
|
|
59
|
+
/**
|
|
60
|
+
* Hook to get accessibility attributes for Breadcrumb component, such as roving tab index.
|
|
61
|
+
* Based on Tabster's useArrowNavigationGroup.
|
|
62
|
+
*
|
|
63
|
+
* @param focusMode - whether the Breadcrumb uses arrow key navigation or tab key navigation
|
|
64
|
+
* @returns Tabster DOM attributes
|
|
65
|
+
*/ export const useBreadcrumbA11yBehavior_unstable = ({ focusMode })=>{
|
|
66
|
+
const focusAttributes = useArrowNavigationGroup({
|
|
67
|
+
circular: true,
|
|
68
|
+
axis: 'horizontal',
|
|
69
|
+
memorizeCurrent: true
|
|
70
|
+
});
|
|
71
|
+
return focusMode === 'arrow' ? focusAttributes : {};
|
|
72
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Breadcrumb/useBreadcrumb.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { getIntrinsicElementProps, slot } from '@fluentui/react-utilities';\nimport type { BreadcrumbProps, BreadcrumbState } from './Breadcrumb.types';\nimport { useArrowNavigationGroup } from '@fluentui/react-tabster';\n\n/**\n * Create the state required to render Breadcrumb.\n *\n * The returned state can be modified with hooks such as useBreadcrumbStyles_unstable,\n * before being passed to renderBreadcrumb_unstable.\n *\n * @param props - props from this instance of Breadcrumb\n * @param ref - reference to root HTMLElement of Breadcrumb\n */\nexport const useBreadcrumb_unstable = (props: BreadcrumbProps, ref: React.Ref<HTMLElement>): BreadcrumbState => {\n const { focusMode = 'tab', size = 'medium',
|
|
1
|
+
{"version":3,"sources":["../src/components/Breadcrumb/useBreadcrumb.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { getIntrinsicElementProps, slot } from '@fluentui/react-utilities';\nimport type { BreadcrumbBaseProps, BreadcrumbBaseState, BreadcrumbProps, BreadcrumbState } from './Breadcrumb.types';\nimport { TabsterDOMAttribute, useArrowNavigationGroup } from '@fluentui/react-tabster';\n\n/**\n * Create the state required to render Breadcrumb.\n *\n * The returned state can be modified with hooks such as useBreadcrumbStyles_unstable,\n * before being passed to renderBreadcrumb_unstable.\n *\n * @param props - props from this instance of Breadcrumb\n * @param ref - reference to root HTMLElement of Breadcrumb\n */\nexport const useBreadcrumb_unstable = (props: BreadcrumbProps, ref: React.Ref<HTMLElement>): BreadcrumbState => {\n const { focusMode = 'tab', size = 'medium', ...breadcrumbProps } = props;\n const state = useBreadcrumbBase_unstable(breadcrumbProps, ref);\n const focusAttributes = useBreadcrumbA11yBehavior_unstable({ focusMode });\n\n return {\n ...state,\n root: {\n ...focusAttributes,\n ...state.root,\n },\n size,\n };\n};\n\n/**\n * Base hook for Breadcrumb component, which manages state related to slots structure and ARIA attributes.\n *\n * Note: keyboard navigation behavior is not handled in this hook, but in useBreadcrumbA11yBehavior_unstable.\n *\n * @param props - props from this instance of Breadcrumb\n * @param ref - reference to root HTMLElement of Breadcrumb\n */\nexport const useBreadcrumbBase_unstable = (\n props: BreadcrumbBaseProps,\n ref: React.Ref<HTMLElement>,\n): BreadcrumbBaseState => {\n const { focusMode = 'tab', list, ...rest } = props;\n\n return {\n components: {\n root: 'nav',\n list: 'ol',\n },\n root: slot.always(\n getIntrinsicElementProps('nav', {\n ref,\n 'aria-label': props['aria-label'] ?? 'breadcrumb',\n ...rest,\n }),\n { elementType: 'nav' },\n ),\n list: slot.optional(list, { renderByDefault: true, defaultProps: { role: 'list' }, elementType: 'ol' }),\n };\n};\n\n/**\n * Hook to get accessibility attributes for Breadcrumb component, such as roving tab index.\n * Based on Tabster's useArrowNavigationGroup.\n *\n * @param focusMode - whether the Breadcrumb uses arrow key navigation or tab key navigation\n * @returns Tabster DOM attributes\n */\nexport const useBreadcrumbA11yBehavior_unstable = ({\n focusMode,\n}: Pick<BreadcrumbBaseProps, 'focusMode'>): Partial<TabsterDOMAttribute> => {\n const focusAttributes = useArrowNavigationGroup({\n circular: true,\n axis: 'horizontal',\n memorizeCurrent: true,\n });\n\n return focusMode === 'arrow' ? focusAttributes : {};\n};\n"],"names":["React","getIntrinsicElementProps","slot","useArrowNavigationGroup","useBreadcrumb_unstable","props","ref","focusMode","size","breadcrumbProps","state","useBreadcrumbBase_unstable","focusAttributes","useBreadcrumbA11yBehavior_unstable","root","list","rest","components","always","elementType","optional","renderByDefault","defaultProps","role","circular","axis","memorizeCurrent"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,wBAAwB,EAAEC,IAAI,QAAQ,4BAA4B;AAE3E,SAA8BC,uBAAuB,QAAQ,0BAA0B;AAEvF;;;;;;;;CAQC,GACD,OAAO,MAAMC,yBAAyB,CAACC,OAAwBC;IAC7D,MAAM,EAAEC,YAAY,KAAK,EAAEC,OAAO,QAAQ,EAAE,GAAGC,iBAAiB,GAAGJ;IACnE,MAAMK,QAAQC,2BAA2BF,iBAAiBH;IAC1D,MAAMM,kBAAkBC,mCAAmC;QAAEN;IAAU;IAEvE,OAAO;QACL,GAAGG,KAAK;QACRI,MAAM;YACJ,GAAGF,eAAe;YAClB,GAAGF,MAAMI,IAAI;QACf;QACAN;IACF;AACF,EAAE;AAEF;;;;;;;CAOC,GACD,OAAO,MAAMG,6BAA6B,CACxCN,OACAC;IAEA,MAAM,EAAEC,YAAY,KAAK,EAAEQ,IAAI,EAAE,GAAGC,MAAM,GAAGX;QAUzBA;IARpB,OAAO;QACLY,YAAY;YACVH,MAAM;YACNC,MAAM;QACR;QACAD,MAAMZ,KAAKgB,MAAM,CACfjB,yBAAyB,OAAO;YAC9BK;YACA,cAAcD,CAAAA,mBAAAA,KAAK,CAAC,aAAa,cAAnBA,8BAAAA,mBAAuB;YACrC,GAAGW,IAAI;QACT,IACA;YAAEG,aAAa;QAAM;QAEvBJ,MAAMb,KAAKkB,QAAQ,CAACL,MAAM;YAAEM,iBAAiB;YAAMC,cAAc;gBAAEC,MAAM;YAAO;YAAGJ,aAAa;QAAK;IACvG;AACF,EAAE;AAEF;;;;;;CAMC,GACD,OAAO,MAAMN,qCAAqC,CAAC,EACjDN,SAAS,EAC8B;IACvC,MAAMK,kBAAkBT,wBAAwB;QAC9CqB,UAAU;QACVC,MAAM;QACNC,iBAAiB;IACnB;IAEA,OAAOnB,cAAc,UAAUK,kBAAkB,CAAC;AACpD,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/BreadcrumbButton/BreadcrumbButton.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState } from '@fluentui/react-utilities';\nimport { ButtonProps, ButtonSlots, ButtonState } from '@fluentui/react-button';\nimport { BreadcrumbProps } from '../Breadcrumb/Breadcrumb.types';\n\nexport type BreadcrumbButtonSlots = ButtonSlots;\n\n/**\n * BreadcrumbButton Props\n */\nexport type BreadcrumbButtonProps = ComponentProps<BreadcrumbButtonSlots> &\n Pick<BreadcrumbProps, 'size'> &\n Pick<ButtonProps, 'disabled' | 'disabledFocusable'> & {\n /**\n * Defines current sate of BreadcrumbButton.\n *\n * @default false\n */\n current?: boolean;\n };\n\n/**\n * State used in rendering BreadcrumbButton\n */\nexport type BreadcrumbButtonState = ComponentState<BreadcrumbButtonSlots> &\n Omit<ButtonState, keyof ButtonSlots | 'components'> &\n Required<Pick<BreadcrumbButtonProps, 'current' | 'size'>>;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/components/BreadcrumbButton/BreadcrumbButton.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState } from '@fluentui/react-utilities';\nimport { ButtonProps, ButtonSlots, ButtonState } from '@fluentui/react-button';\nimport { BreadcrumbProps } from '../Breadcrumb/Breadcrumb.types';\n\nexport type BreadcrumbButtonSlots = ButtonSlots;\n\n/**\n * BreadcrumbButton Props\n */\nexport type BreadcrumbButtonProps = ComponentProps<BreadcrumbButtonSlots> &\n Pick<BreadcrumbProps, 'size'> &\n Pick<ButtonProps, 'disabled' | 'disabledFocusable'> & {\n /**\n * Defines current sate of BreadcrumbButton.\n *\n * @default false\n */\n current?: boolean;\n };\n\n/**\n * State used in rendering BreadcrumbButton\n */\nexport type BreadcrumbButtonState = ComponentState<BreadcrumbButtonSlots> &\n Omit<ButtonState, keyof ButtonSlots | 'components'> &\n Required<Pick<BreadcrumbButtonProps, 'current' | 'size'>>;\n\nexport type BreadcrumbButtonBaseProps = Omit<BreadcrumbButtonProps, 'size'>;\n\nexport type BreadcrumbButtonBaseState = Omit<BreadcrumbButtonState, 'size'>;\n"],"names":[],"mappings":"AA6BA,WAA4E"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { BreadcrumbButton } from './BreadcrumbButton';
|
|
2
2
|
export { renderBreadcrumbButton_unstable } from './renderBreadcrumbButton';
|
|
3
|
-
export { useBreadcrumbButton_unstable } from './useBreadcrumbButton';
|
|
3
|
+
export { useBreadcrumbButton_unstable, useBreadcrumbButtonBase_unstable } from './useBreadcrumbButton';
|
|
4
4
|
export { breadcrumbButtonClassNames, useBreadcrumbButtonStyles_unstable } from './useBreadcrumbButtonStyles.styles';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/BreadcrumbButton/index.ts"],"sourcesContent":["export { BreadcrumbButton } from './BreadcrumbButton';\nexport type {
|
|
1
|
+
{"version":3,"sources":["../src/components/BreadcrumbButton/index.ts"],"sourcesContent":["export { BreadcrumbButton } from './BreadcrumbButton';\nexport type {\n BreadcrumbButtonBaseProps,\n BreadcrumbButtonBaseState,\n BreadcrumbButtonProps,\n BreadcrumbButtonSlots,\n BreadcrumbButtonState,\n} from './BreadcrumbButton.types';\nexport { renderBreadcrumbButton_unstable } from './renderBreadcrumbButton';\nexport { useBreadcrumbButton_unstable, useBreadcrumbButtonBase_unstable } from './useBreadcrumbButton';\nexport { breadcrumbButtonClassNames, useBreadcrumbButtonStyles_unstable } from './useBreadcrumbButtonStyles.styles';\n"],"names":["BreadcrumbButton","renderBreadcrumbButton_unstable","useBreadcrumbButton_unstable","useBreadcrumbButtonBase_unstable","breadcrumbButtonClassNames","useBreadcrumbButtonStyles_unstable"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,qBAAqB;AAQtD,SAASC,+BAA+B,QAAQ,2BAA2B;AAC3E,SAASC,4BAA4B,EAAEC,gCAAgC,QAAQ,wBAAwB;AACvG,SAASC,0BAA0B,EAAEC,kCAAkC,QAAQ,qCAAqC"}
|
|
@@ -12,21 +12,33 @@ import { useBreadcrumbContext_unstable } from '../Breadcrumb/BreadcrumbContext';
|
|
|
12
12
|
* @param ref - reference to root HTMLElement of BreadcrumbButton
|
|
13
13
|
*/ export const useBreadcrumbButton_unstable = (props, ref)=>{
|
|
14
14
|
const { size } = useBreadcrumbContext_unstable();
|
|
15
|
+
const state = useBreadcrumbButtonBase_unstable(props, ref);
|
|
16
|
+
return {
|
|
17
|
+
...state,
|
|
18
|
+
size
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Base hook for BreadcrumbButton component, which manages state related to button behavior,
|
|
23
|
+
* ARIA attributes (aria-current, aria-disabled), and slot structure without design props.
|
|
24
|
+
*
|
|
25
|
+
* @param props - props from this instance of BreadcrumbButton
|
|
26
|
+
* @param ref - reference to root HTMLElement of BreadcrumbButton
|
|
27
|
+
*/ export const useBreadcrumbButtonBase_unstable = (props, ref)=>{
|
|
15
28
|
const { current = false, as, ...rest } = props;
|
|
16
29
|
const controlType = (as !== null && as !== void 0 ? as : props.href) ? 'a' : 'button';
|
|
17
30
|
var _props_ariacurrent, _props_ariadisabled;
|
|
31
|
+
const { size: _size, ...buttonState } = useButton_unstable({
|
|
32
|
+
role: undefined,
|
|
33
|
+
type: undefined,
|
|
34
|
+
as: controlType,
|
|
35
|
+
iconPosition: 'before',
|
|
36
|
+
'aria-current': current ? (_props_ariacurrent = props['aria-current']) !== null && _props_ariacurrent !== void 0 ? _props_ariacurrent : 'page' : undefined,
|
|
37
|
+
'aria-disabled': current ? (_props_ariadisabled = props['aria-disabled']) !== null && _props_ariadisabled !== void 0 ? _props_ariadisabled : true : undefined,
|
|
38
|
+
...rest
|
|
39
|
+
}, ref);
|
|
18
40
|
return {
|
|
19
|
-
...
|
|
20
|
-
|
|
21
|
-
role: undefined,
|
|
22
|
-
type: undefined,
|
|
23
|
-
as: controlType,
|
|
24
|
-
iconPosition: 'before',
|
|
25
|
-
'aria-current': current ? (_props_ariacurrent = props['aria-current']) !== null && _props_ariacurrent !== void 0 ? _props_ariacurrent : 'page' : undefined,
|
|
26
|
-
'aria-disabled': current ? (_props_ariadisabled = props['aria-disabled']) !== null && _props_ariadisabled !== void 0 ? _props_ariadisabled : true : undefined,
|
|
27
|
-
...rest
|
|
28
|
-
}, ref),
|
|
29
|
-
current,
|
|
30
|
-
size
|
|
41
|
+
...buttonState,
|
|
42
|
+
current
|
|
31
43
|
};
|
|
32
44
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/BreadcrumbButton/useBreadcrumbButton.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport type { ARIAButtonProps } from '@fluentui/react-aria';\nimport { useButton_unstable } from '@fluentui/react-button';\nimport type { ButtonProps } from '@fluentui/react-button';\nimport { useBreadcrumbContext_unstable } from '../Breadcrumb/BreadcrumbContext';\nimport type {
|
|
1
|
+
{"version":3,"sources":["../src/components/BreadcrumbButton/useBreadcrumbButton.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport type { ARIAButtonProps } from '@fluentui/react-aria';\nimport { useButton_unstable } from '@fluentui/react-button';\nimport type { ButtonProps } from '@fluentui/react-button';\nimport { useBreadcrumbContext_unstable } from '../Breadcrumb/BreadcrumbContext';\nimport type {\n BreadcrumbButtonBaseProps,\n BreadcrumbButtonBaseState,\n BreadcrumbButtonProps,\n BreadcrumbButtonState,\n} from './BreadcrumbButton.types';\n\n/**\n * Create the state required to render BreadcrumbButton.\n *\n * The returned state can be modified with hooks such as useBreadcrumbButtonStyles_unstable,\n * before being passed to renderBreadcrumbButton_unstable.\n *\n * @param props - props from this instance of BreadcrumbButton\n * @param ref - reference to root HTMLElement of BreadcrumbButton\n */\nexport const useBreadcrumbButton_unstable = (\n props: BreadcrumbButtonProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>,\n): BreadcrumbButtonState => {\n const { size } = useBreadcrumbContext_unstable();\n const state = useBreadcrumbButtonBase_unstable(props, ref);\n\n return {\n ...state,\n size,\n };\n};\n\n/**\n * Base hook for BreadcrumbButton component, which manages state related to button behavior,\n * ARIA attributes (aria-current, aria-disabled), and slot structure without design props.\n *\n * @param props - props from this instance of BreadcrumbButton\n * @param ref - reference to root HTMLElement of BreadcrumbButton\n */\nexport const useBreadcrumbButtonBase_unstable = (\n props: BreadcrumbButtonBaseProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>,\n): BreadcrumbButtonBaseState => {\n const { current = false, as, ...rest } = props;\n\n const controlType = as ?? (props as ARIAButtonProps<'a'>).href ? 'a' : 'button';\n\n const { size: _size, ...buttonState } = useButton_unstable(\n {\n role: undefined,\n type: undefined,\n as: controlType,\n iconPosition: 'before',\n 'aria-current': current ? props['aria-current'] ?? 'page' : undefined,\n 'aria-disabled': current ? props['aria-disabled'] ?? true : undefined,\n ...rest,\n } as ButtonProps,\n ref,\n );\n\n return {\n ...buttonState,\n current,\n };\n};\n"],"names":["React","useButton_unstable","useBreadcrumbContext_unstable","useBreadcrumbButton_unstable","props","ref","size","state","useBreadcrumbButtonBase_unstable","current","as","rest","controlType","href","_size","buttonState","role","undefined","type","iconPosition"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAE/B,SAASC,kBAAkB,QAAQ,yBAAyB;AAE5D,SAASC,6BAA6B,QAAQ,kCAAkC;AAQhF;;;;;;;;CAQC,GACD,OAAO,MAAMC,+BAA+B,CAC1CC,OACAC;IAEA,MAAM,EAAEC,IAAI,EAAE,GAAGJ;IACjB,MAAMK,QAAQC,iCAAiCJ,OAAOC;IAEtD,OAAO;QACL,GAAGE,KAAK;QACRD;IACF;AACF,EAAE;AAEF;;;;;;CAMC,GACD,OAAO,MAAME,mCAAmC,CAC9CJ,OACAC;IAEA,MAAM,EAAEI,UAAU,KAAK,EAAEC,EAAE,EAAE,GAAGC,MAAM,GAAGP;IAEzC,MAAMQ,cAAcF,CAAAA,eAAAA,gBAAAA,KAAM,AAACN,MAA+BS,IAAI,AAAD,IAAI,MAAM;QAQzCT,oBACCA;IAP/B,MAAM,EAAEE,MAAMQ,KAAK,EAAE,GAAGC,aAAa,GAAGd,mBACtC;QACEe,MAAMC;QACNC,MAAMD;QACNP,IAAIE;QACJO,cAAc;QACd,gBAAgBV,UAAUL,CAAAA,qBAAAA,KAAK,CAAC,eAAe,cAArBA,gCAAAA,qBAAyB,SAASa;QAC5D,iBAAiBR,UAAUL,CAAAA,sBAAAA,KAAK,CAAC,gBAAgB,cAAtBA,iCAAAA,sBAA0B,OAAOa;QAC5D,GAAGN,IAAI;IACT,GACAN;IAGF,OAAO;QACL,GAAGU,WAAW;QACdN;IACF;AACF,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/BreadcrumbDivider/BreadcrumbDivider.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { BreadcrumbProps } from '../Breadcrumb/Breadcrumb.types';\n\nexport type BreadcrumbDividerSlots = {\n root: Slot<'li'>;\n};\n\n/**\n * BreadcrumbDivider Props\n */\nexport type BreadcrumbDividerProps = ComponentProps<BreadcrumbDividerSlots> & {};\n\n/**\n * State used in rendering BreadcrumbDivider\n */\nexport type BreadcrumbDividerState = ComponentState<BreadcrumbDividerSlots> & Pick<BreadcrumbProps, 'size'>;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/components/BreadcrumbDivider/BreadcrumbDivider.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { BreadcrumbProps } from '../Breadcrumb/Breadcrumb.types';\n\nexport type BreadcrumbDividerSlots = {\n root: Slot<'li'>;\n};\n\n/**\n * BreadcrumbDivider Props\n */\nexport type BreadcrumbDividerProps = ComponentProps<BreadcrumbDividerSlots> & {};\n\n/**\n * State used in rendering BreadcrumbDivider\n */\nexport type BreadcrumbDividerState = ComponentState<BreadcrumbDividerSlots> & Pick<BreadcrumbProps, 'size'>;\n\n/**\n * BreadcrumbDivider base props (same as BreadcrumbDividerProps since BreadcrumbDivider has no design props of its own)\n */\nexport type BreadcrumbDividerBaseProps = BreadcrumbDividerProps;\n\n/**\n * BreadcrumbDivider base state (excludes size, which is a design prop injected from context)\n */\nexport type BreadcrumbDividerBaseState = Omit<BreadcrumbDividerState, 'size'>;\n"],"names":[],"mappings":"AAsBA;;CAEC,GACD,WAA8E"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { BreadcrumbDivider } from './BreadcrumbDivider';
|
|
2
2
|
export { renderBreadcrumbDivider_unstable } from './renderBreadcrumbDivider';
|
|
3
|
-
export { useBreadcrumbDivider_unstable } from './useBreadcrumbDivider';
|
|
3
|
+
export { useBreadcrumbDivider_unstable, useBreadcrumbDividerBase_unstable } from './useBreadcrumbDivider';
|
|
4
4
|
export { breadcrumbDividerClassNames, useBreadcrumbDividerStyles_unstable } from './useBreadcrumbDividerStyles.styles';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/BreadcrumbDivider/index.ts"],"sourcesContent":["export { BreadcrumbDivider } from './BreadcrumbDivider';\nexport type {
|
|
1
|
+
{"version":3,"sources":["../src/components/BreadcrumbDivider/index.ts"],"sourcesContent":["export { BreadcrumbDivider } from './BreadcrumbDivider';\nexport type {\n BreadcrumbDividerBaseProps,\n BreadcrumbDividerBaseState,\n BreadcrumbDividerProps,\n BreadcrumbDividerSlots,\n BreadcrumbDividerState,\n} from './BreadcrumbDivider.types';\nexport { renderBreadcrumbDivider_unstable } from './renderBreadcrumbDivider';\nexport { useBreadcrumbDivider_unstable, useBreadcrumbDividerBase_unstable } from './useBreadcrumbDivider';\nexport { breadcrumbDividerClassNames, useBreadcrumbDividerStyles_unstable } from './useBreadcrumbDividerStyles.styles';\n"],"names":["BreadcrumbDivider","renderBreadcrumbDivider_unstable","useBreadcrumbDivider_unstable","useBreadcrumbDividerBase_unstable","breadcrumbDividerClassNames","useBreadcrumbDividerStyles_unstable"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,sBAAsB;AAQxD,SAASC,gCAAgC,QAAQ,4BAA4B;AAC7E,SAASC,6BAA6B,EAAEC,iCAAiC,QAAQ,yBAAyB;AAC1G,SAASC,2BAA2B,EAAEC,mCAAmC,QAAQ,sCAAsC"}
|
|
@@ -14,8 +14,24 @@ import { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts
|
|
|
14
14
|
* @param ref - reference to root HTMLElement of BreadcrumbDivider
|
|
15
15
|
*/ export const useBreadcrumbDivider_unstable = (props, ref)=>{
|
|
16
16
|
const { size } = useBreadcrumbContext_unstable();
|
|
17
|
+
const state = useBreadcrumbDividerBase_unstable(props, ref);
|
|
17
18
|
const { dir } = useFluent();
|
|
18
|
-
|
|
19
|
+
return {
|
|
20
|
+
...state,
|
|
21
|
+
root: {
|
|
22
|
+
...state.root,
|
|
23
|
+
children: getDividerIcon(dir)
|
|
24
|
+
},
|
|
25
|
+
size
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Base hook for BreadcrumbDivider component, which manages state related to slots structure and ARIA attributes
|
|
30
|
+
* without design props. Note: size is provided via BreadcrumbContext in the full hook.
|
|
31
|
+
*
|
|
32
|
+
* @param props - props from this instance of BreadcrumbDivider
|
|
33
|
+
* @param ref - reference to root HTMLElement of BreadcrumbDivider
|
|
34
|
+
*/ export const useBreadcrumbDividerBase_unstable = (props, ref)=>{
|
|
19
35
|
return {
|
|
20
36
|
components: {
|
|
21
37
|
root: 'li'
|
|
@@ -23,12 +39,10 @@ import { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts
|
|
|
23
39
|
root: slot.always(getIntrinsicElementProps('li', {
|
|
24
40
|
ref,
|
|
25
41
|
'aria-hidden': true,
|
|
26
|
-
children: icon,
|
|
27
42
|
...props
|
|
28
43
|
}), {
|
|
29
44
|
elementType: 'li'
|
|
30
|
-
})
|
|
31
|
-
size
|
|
45
|
+
})
|
|
32
46
|
};
|
|
33
47
|
};
|
|
34
48
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/BreadcrumbDivider/useBreadcrumbDivider.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { getIntrinsicElementProps, slot } from '@fluentui/react-utilities';\nimport type {
|
|
1
|
+
{"version":3,"sources":["../src/components/BreadcrumbDivider/useBreadcrumbDivider.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { getIntrinsicElementProps, slot } from '@fluentui/react-utilities';\nimport type {\n BreadcrumbDividerBaseProps,\n BreadcrumbDividerBaseState,\n BreadcrumbDividerProps,\n BreadcrumbDividerState,\n} from './BreadcrumbDivider.types';\nimport { ChevronRightRegular, ChevronLeftRegular } from '@fluentui/react-icons';\nimport { useBreadcrumbContext_unstable } from '../Breadcrumb/BreadcrumbContext';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\n\n/**\n * Create the state required to render BreadcrumbDivider.\n *\n * The returned state can be modified with hooks such as useBreadcrumbDividerStyles_unstable,\n * before being passed to renderBreadcrumbDivider_unstable.\n *\n * @param props - props from this instance of BreadcrumbDivider\n * @param ref - reference to root HTMLElement of BreadcrumbDivider\n */\nexport const useBreadcrumbDivider_unstable = (\n props: BreadcrumbDividerProps,\n ref: React.Ref<HTMLLIElement>,\n): BreadcrumbDividerState => {\n const { size } = useBreadcrumbContext_unstable();\n const state = useBreadcrumbDividerBase_unstable(props, ref);\n const { dir } = useFluent();\n\n return {\n ...state,\n root: {\n ...state.root,\n children: getDividerIcon(dir),\n },\n size,\n };\n};\n\n/**\n * Base hook for BreadcrumbDivider component, which manages state related to slots structure and ARIA attributes\n * without design props. Note: size is provided via BreadcrumbContext in the full hook.\n *\n * @param props - props from this instance of BreadcrumbDivider\n * @param ref - reference to root HTMLElement of BreadcrumbDivider\n */\nexport const useBreadcrumbDividerBase_unstable = (\n props: BreadcrumbDividerBaseProps,\n ref: React.Ref<HTMLLIElement>,\n): BreadcrumbDividerBaseState => {\n return {\n components: {\n root: 'li',\n },\n root: slot.always(\n getIntrinsicElementProps('li', {\n ref,\n 'aria-hidden': true,\n ...props,\n }),\n { elementType: 'li' },\n ),\n };\n};\n\n/**\n * Get icon of the divider\n *\n * @param dir - RTL or LTR\n */\nfunction getDividerIcon(dir: string) {\n return dir === 'rtl' ? <ChevronLeftRegular /> : <ChevronRightRegular />;\n}\n"],"names":["React","getIntrinsicElementProps","slot","ChevronRightRegular","ChevronLeftRegular","useBreadcrumbContext_unstable","useFluent_unstable","useFluent","useBreadcrumbDivider_unstable","props","ref","size","state","useBreadcrumbDividerBase_unstable","dir","root","children","getDividerIcon","components","always","elementType"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,wBAAwB,EAAEC,IAAI,QAAQ,4BAA4B;AAO3E,SAASC,mBAAmB,EAAEC,kBAAkB,QAAQ,wBAAwB;AAChF,SAASC,6BAA6B,QAAQ,kCAAkC;AAChF,SAASC,sBAAsBC,SAAS,QAAQ,kCAAkC;AAElF;;;;;;;;CAQC,GACD,OAAO,MAAMC,gCAAgC,CAC3CC,OACAC;IAEA,MAAM,EAAEC,IAAI,EAAE,GAAGN;IACjB,MAAMO,QAAQC,kCAAkCJ,OAAOC;IACvD,MAAM,EAAEI,GAAG,EAAE,GAAGP;IAEhB,OAAO;QACL,GAAGK,KAAK;QACRG,MAAM;YACJ,GAAGH,MAAMG,IAAI;YACbC,UAAUC,eAAeH;QAC3B;QACAH;IACF;AACF,EAAE;AAEF;;;;;;CAMC,GACD,OAAO,MAAME,oCAAoC,CAC/CJ,OACAC;IAEA,OAAO;QACLQ,YAAY;YACVH,MAAM;QACR;QACAA,MAAMb,KAAKiB,MAAM,CACflB,yBAAyB,MAAM;YAC7BS;YACA,eAAe;YACf,GAAGD,KAAK;QACV,IACA;YAAEW,aAAa;QAAK;IAExB;AACF,EAAE;AAEF;;;;CAIC,GACD,SAASH,eAAeH,GAAW;IACjC,OAAOA,QAAQ,sBAAQ,oBAACV,0CAAwB,oBAACD;AACnD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/BreadcrumbItem/BreadcrumbItem.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { BreadcrumbProps } from '../Breadcrumb';\n\nexport type BreadcrumbItemSlots = {\n root: Slot<'li'>;\n};\n\n/**\n * BreadcrumbItem Props\n */\nexport type BreadcrumbItemProps = ComponentProps<BreadcrumbItemSlots> & Pick<BreadcrumbProps, 'size'>;\n\n/**\n * State used in rendering BreadcrumbItem\n */\nexport type BreadcrumbItemState = ComponentState<BreadcrumbItemSlots> & Required<Pick<BreadcrumbItemProps, 'size'>>;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/components/BreadcrumbItem/BreadcrumbItem.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { BreadcrumbProps } from '../Breadcrumb';\n\nexport type BreadcrumbItemSlots = {\n root: Slot<'li'>;\n};\n\n/**\n * BreadcrumbItem Props\n */\nexport type BreadcrumbItemProps = ComponentProps<BreadcrumbItemSlots> & Pick<BreadcrumbProps, 'size'>;\n\n/**\n * State used in rendering BreadcrumbItem\n */\nexport type BreadcrumbItemState = ComponentState<BreadcrumbItemSlots> & Required<Pick<BreadcrumbItemProps, 'size'>>;\n\n/**\n * BreadcrumbItem base props (same as BreadcrumbItemProps since size is passed through context, not as a design prop)\n */\nexport type BreadcrumbItemBaseProps = Omit<BreadcrumbItemProps, 'size'>;\n\n/**\n * BreadcrumbItem base state (excludes size, which is a design prop injected from context)\n */\nexport type BreadcrumbItemBaseState = Omit<BreadcrumbItemState, 'size'>;\n"],"names":[],"mappings":"AAsBA;;CAEC,GACD,WAAwE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { BreadcrumbItem } from './BreadcrumbItem';
|
|
2
2
|
export { renderBreadcrumbItem_unstable } from './renderBreadcrumbItem';
|
|
3
|
-
export { useBreadcrumbItem_unstable } from './useBreadcrumbItem';
|
|
3
|
+
export { useBreadcrumbItem_unstable, useBreadcrumbItemBase_unstable } from './useBreadcrumbItem';
|
|
4
4
|
export { breadcrumbItemClassNames, useBreadcrumbItemStyles_unstable } from './useBreadcrumbItemStyles.styles';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/BreadcrumbItem/index.ts"],"sourcesContent":["export { BreadcrumbItem } from './BreadcrumbItem';\nexport type {
|
|
1
|
+
{"version":3,"sources":["../src/components/BreadcrumbItem/index.ts"],"sourcesContent":["export { BreadcrumbItem } from './BreadcrumbItem';\nexport type {\n BreadcrumbItemBaseProps,\n BreadcrumbItemBaseState,\n BreadcrumbItemProps,\n BreadcrumbItemSlots,\n BreadcrumbItemState,\n} from './BreadcrumbItem.types';\nexport { renderBreadcrumbItem_unstable } from './renderBreadcrumbItem';\nexport { useBreadcrumbItem_unstable, useBreadcrumbItemBase_unstable } from './useBreadcrumbItem';\nexport { breadcrumbItemClassNames, useBreadcrumbItemStyles_unstable } from './useBreadcrumbItemStyles.styles';\n"],"names":["BreadcrumbItem","renderBreadcrumbItem_unstable","useBreadcrumbItem_unstable","useBreadcrumbItemBase_unstable","breadcrumbItemClassNames","useBreadcrumbItemStyles_unstable"],"mappings":"AAAA,SAASA,cAAc,QAAQ,mBAAmB;AAQlD,SAASC,6BAA6B,QAAQ,yBAAyB;AACvE,SAASC,0BAA0B,EAAEC,8BAA8B,QAAQ,sBAAsB;AACjG,SAASC,wBAAwB,EAAEC,gCAAgC,QAAQ,mCAAmC"}
|
|
@@ -12,6 +12,19 @@ import { useBreadcrumbContext_unstable } from '../Breadcrumb/BreadcrumbContext';
|
|
|
12
12
|
* @param ref - reference to root HTMLElement of BreadcrumbItem
|
|
13
13
|
*/ export const useBreadcrumbItem_unstable = (props, ref)=>{
|
|
14
14
|
const { size } = useBreadcrumbContext_unstable();
|
|
15
|
+
const state = useBreadcrumbItemBase_unstable(props, ref);
|
|
16
|
+
return {
|
|
17
|
+
...state,
|
|
18
|
+
size
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Base hook for BreadcrumbItem component, which manages state related to slots structure
|
|
23
|
+
* without design props. Note: size is provided via BreadcrumbContext in the full hook.
|
|
24
|
+
*
|
|
25
|
+
* @param props - props from this instance of BreadcrumbItem
|
|
26
|
+
* @param ref - reference to root HTMLElement of BreadcrumbItem
|
|
27
|
+
*/ export const useBreadcrumbItemBase_unstable = (props, ref)=>{
|
|
15
28
|
return {
|
|
16
29
|
components: {
|
|
17
30
|
root: 'li'
|
|
@@ -21,7 +34,6 @@ import { useBreadcrumbContext_unstable } from '../Breadcrumb/BreadcrumbContext';
|
|
|
21
34
|
...props
|
|
22
35
|
}), {
|
|
23
36
|
elementType: 'li'
|
|
24
|
-
})
|
|
25
|
-
size
|
|
37
|
+
})
|
|
26
38
|
};
|
|
27
39
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/BreadcrumbItem/useBreadcrumbItem.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { getIntrinsicElementProps, slot } from '@fluentui/react-utilities';\nimport type {
|
|
1
|
+
{"version":3,"sources":["../src/components/BreadcrumbItem/useBreadcrumbItem.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { getIntrinsicElementProps, slot } from '@fluentui/react-utilities';\nimport type {\n BreadcrumbItemBaseProps,\n BreadcrumbItemBaseState,\n BreadcrumbItemProps,\n BreadcrumbItemState,\n} from './BreadcrumbItem.types';\nimport { useBreadcrumbContext_unstable } from '../Breadcrumb/BreadcrumbContext';\n\n/**\n * Create the state required to render BreadcrumbItem.\n *\n * The returned state can be modified with hooks such as useBreadcrumbItemStyles_unstable,\n * before being passed to renderBreadcrumbItem_unstable.\n *\n * @param props - props from this instance of BreadcrumbItem\n * @param ref - reference to root HTMLElement of BreadcrumbItem\n */\nexport const useBreadcrumbItem_unstable = (\n props: BreadcrumbItemProps,\n ref: React.Ref<HTMLLIElement>,\n): BreadcrumbItemState => {\n const { size } = useBreadcrumbContext_unstable();\n const state = useBreadcrumbItemBase_unstable(props, ref);\n\n return {\n ...state,\n size,\n };\n};\n\n/**\n * Base hook for BreadcrumbItem component, which manages state related to slots structure\n * without design props. Note: size is provided via BreadcrumbContext in the full hook.\n *\n * @param props - props from this instance of BreadcrumbItem\n * @param ref - reference to root HTMLElement of BreadcrumbItem\n */\nexport const useBreadcrumbItemBase_unstable = (\n props: BreadcrumbItemBaseProps,\n ref: React.Ref<HTMLLIElement>,\n): BreadcrumbItemBaseState => {\n return {\n components: { root: 'li' },\n root: slot.always(\n getIntrinsicElementProps('li', {\n ref,\n ...props,\n }),\n { elementType: 'li' },\n ),\n };\n};\n"],"names":["React","getIntrinsicElementProps","slot","useBreadcrumbContext_unstable","useBreadcrumbItem_unstable","props","ref","size","state","useBreadcrumbItemBase_unstable","components","root","always","elementType"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,wBAAwB,EAAEC,IAAI,QAAQ,4BAA4B;AAO3E,SAASC,6BAA6B,QAAQ,kCAAkC;AAEhF;;;;;;;;CAQC,GACD,OAAO,MAAMC,6BAA6B,CACxCC,OACAC;IAEA,MAAM,EAAEC,IAAI,EAAE,GAAGJ;IACjB,MAAMK,QAAQC,+BAA+BJ,OAAOC;IAEpD,OAAO;QACL,GAAGE,KAAK;QACRD;IACF;AACF,EAAE;AAEF;;;;;;CAMC,GACD,OAAO,MAAME,iCAAiC,CAC5CJ,OACAC;IAEA,OAAO;QACLI,YAAY;YAAEC,MAAM;QAAK;QACzBA,MAAMT,KAAKU,MAAM,CACfX,yBAAyB,MAAM;YAC7BK;YACA,GAAGD,KAAK;QACV,IACA;YAAEQ,aAAa;QAAK;IAExB;AACF,EAAE"}
|