@fluentui/react-breadcrumb 9.3.17 → 9.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/CHANGELOG.md +29 -2
  2. package/dist/index.d.ts +84 -7
  3. package/lib/Breadcrumb.js +1 -1
  4. package/lib/Breadcrumb.js.map +1 -1
  5. package/lib/BreadcrumbButton.js +1 -1
  6. package/lib/BreadcrumbButton.js.map +1 -1
  7. package/lib/BreadcrumbDivider.js +1 -1
  8. package/lib/BreadcrumbDivider.js.map +1 -1
  9. package/lib/BreadcrumbItem.js +1 -1
  10. package/lib/BreadcrumbItem.js.map +1 -1
  11. package/lib/components/Breadcrumb/Breadcrumb.types.js +1 -3
  12. package/lib/components/Breadcrumb/Breadcrumb.types.js.map +1 -1
  13. package/lib/components/Breadcrumb/BreadcrumbContext.js.map +1 -1
  14. package/lib/components/Breadcrumb/index.js +2 -1
  15. package/lib/components/Breadcrumb/index.js.map +1 -1
  16. package/lib/components/Breadcrumb/renderBreadcrumb.js.map +1 -1
  17. package/lib/components/Breadcrumb/useBreadcrumb.js +37 -9
  18. package/lib/components/Breadcrumb/useBreadcrumb.js.map +1 -1
  19. package/lib/components/BreadcrumbButton/BreadcrumbButton.types.js +1 -3
  20. package/lib/components/BreadcrumbButton/BreadcrumbButton.types.js.map +1 -1
  21. package/lib/components/BreadcrumbButton/index.js +1 -1
  22. package/lib/components/BreadcrumbButton/index.js.map +1 -1
  23. package/lib/components/BreadcrumbButton/renderBreadcrumbButton.js.map +1 -1
  24. package/lib/components/BreadcrumbButton/useBreadcrumbButton.js +27 -14
  25. package/lib/components/BreadcrumbButton/useBreadcrumbButton.js.map +1 -1
  26. package/lib/components/BreadcrumbDivider/BreadcrumbDivider.types.js +1 -1
  27. package/lib/components/BreadcrumbDivider/BreadcrumbDivider.types.js.map +1 -1
  28. package/lib/components/BreadcrumbDivider/index.js +1 -1
  29. package/lib/components/BreadcrumbDivider/index.js.map +1 -1
  30. package/lib/components/BreadcrumbDivider/renderBreadcrumbDivider.js.map +1 -1
  31. package/lib/components/BreadcrumbDivider/useBreadcrumbDivider.js +18 -4
  32. package/lib/components/BreadcrumbDivider/useBreadcrumbDivider.js.map +1 -1
  33. package/lib/components/BreadcrumbItem/BreadcrumbItem.types.js +1 -1
  34. package/lib/components/BreadcrumbItem/BreadcrumbItem.types.js.map +1 -1
  35. package/lib/components/BreadcrumbItem/index.js +1 -1
  36. package/lib/components/BreadcrumbItem/index.js.map +1 -1
  37. package/lib/components/BreadcrumbItem/renderBreadcrumbItem.js.map +1 -1
  38. package/lib/components/BreadcrumbItem/useBreadcrumbItem.js +14 -3
  39. package/lib/components/BreadcrumbItem/useBreadcrumbItem.js.map +1 -1
  40. package/lib/index.js +4 -4
  41. package/lib/index.js.map +1 -1
  42. package/lib-commonjs/Breadcrumb.js +9 -0
  43. package/lib-commonjs/Breadcrumb.js.map +1 -1
  44. package/lib-commonjs/BreadcrumbButton.js +3 -0
  45. package/lib-commonjs/BreadcrumbButton.js.map +1 -1
  46. package/lib-commonjs/BreadcrumbDivider.js +3 -0
  47. package/lib-commonjs/BreadcrumbDivider.js.map +1 -1
  48. package/lib-commonjs/BreadcrumbItem.js +3 -0
  49. package/lib-commonjs/BreadcrumbItem.js.map +1 -1
  50. package/lib-commonjs/components/Breadcrumb/Breadcrumb.types.js +1 -3
  51. package/lib-commonjs/components/Breadcrumb/Breadcrumb.types.js.map +1 -1
  52. package/lib-commonjs/components/Breadcrumb/BreadcrumbContext.js.map +1 -1
  53. package/lib-commonjs/components/Breadcrumb/index.js +10 -0
  54. package/lib-commonjs/components/Breadcrumb/index.js.map +1 -1
  55. package/lib-commonjs/components/Breadcrumb/renderBreadcrumb.js.map +1 -1
  56. package/lib-commonjs/components/Breadcrumb/useBreadcrumb.js +38 -13
  57. package/lib-commonjs/components/Breadcrumb/useBreadcrumb.js.map +1 -1
  58. package/lib-commonjs/components/BreadcrumbButton/BreadcrumbButton.types.js +1 -3
  59. package/lib-commonjs/components/BreadcrumbButton/BreadcrumbButton.types.js.map +1 -1
  60. package/lib-commonjs/components/BreadcrumbButton/index.js +3 -0
  61. package/lib-commonjs/components/BreadcrumbButton/index.js.map +1 -1
  62. package/lib-commonjs/components/BreadcrumbButton/renderBreadcrumbButton.js.map +1 -1
  63. package/lib-commonjs/components/BreadcrumbButton/useBreadcrumbButton.js +31 -17
  64. package/lib-commonjs/components/BreadcrumbButton/useBreadcrumbButton.js.map +1 -1
  65. package/lib-commonjs/components/BreadcrumbDivider/BreadcrumbDivider.types.js +1 -1
  66. package/lib-commonjs/components/BreadcrumbDivider/BreadcrumbDivider.types.js.map +1 -1
  67. package/lib-commonjs/components/BreadcrumbDivider/index.js +3 -0
  68. package/lib-commonjs/components/BreadcrumbDivider/index.js.map +1 -1
  69. package/lib-commonjs/components/BreadcrumbDivider/renderBreadcrumbDivider.js.map +1 -1
  70. package/lib-commonjs/components/BreadcrumbDivider/useBreadcrumbDivider.js +23 -7
  71. package/lib-commonjs/components/BreadcrumbDivider/useBreadcrumbDivider.js.map +1 -1
  72. package/lib-commonjs/components/BreadcrumbItem/BreadcrumbItem.types.js +1 -1
  73. package/lib-commonjs/components/BreadcrumbItem/BreadcrumbItem.types.js.map +1 -1
  74. package/lib-commonjs/components/BreadcrumbItem/index.js +3 -0
  75. package/lib-commonjs/components/BreadcrumbItem/index.js.map +1 -1
  76. package/lib-commonjs/components/BreadcrumbItem/renderBreadcrumbItem.js.map +1 -1
  77. package/lib-commonjs/components/BreadcrumbItem/useBreadcrumbItem.js +19 -7
  78. package/lib-commonjs/components/BreadcrumbItem/useBreadcrumbItem.js.map +1 -1
  79. package/lib-commonjs/index.js +18 -0
  80. package/lib-commonjs/index.js.map +1 -1
  81. package/package.json +7 -7
@@ -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
- const icon = getDividerIcon(dir);
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 { BreadcrumbDividerProps, BreadcrumbDividerState } 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 { dir } = useFluent();\n const icon = getDividerIcon(dir);\n\n return {\n components: {\n root: 'li',\n },\n root: slot.always(\n getIntrinsicElementProps('li', {\n ref,\n 'aria-hidden': true,\n children: icon,\n ...props,\n }),\n { elementType: 'li' },\n ),\n size,\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","dir","icon","getDividerIcon","components","root","always","children","elementType"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,wBAAwB,EAAEC,IAAI,QAAQ,4BAA4B;AAE3E,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,MAAM,EAAEO,GAAG,EAAE,GAAGL;IAChB,MAAMM,OAAOC,eAAeF;IAE5B,OAAO;QACLG,YAAY;YACVC,MAAM;QACR;QACAA,MAAMd,KAAKe,MAAM,CACfhB,yBAAyB,MAAM;YAC7BS;YACA,eAAe;YACfQ,UAAUL;YACV,GAAGJ,KAAK;QACV,IACA;YAAEU,aAAa;QAAK;QAEtBR;IACF;AACF,EAAE;AAEF;;;;CAIC,GACD,SAASG,eAAeF,GAAW;IACjC,OAAOA,QAAQ,sBAAQ,oBAACR,0CAAwB,oBAACD;AACnD"}
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,3 +1,3 @@
1
1
  /**
2
- * State used in rendering BreadcrumbItem
2
+ * BreadcrumbItem base state (excludes size, which is a design prop injected from context)
3
3
  */ export { };
@@ -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":"AAYA;;CAEC,GACD,WAAoH"}
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 { BreadcrumbItemProps, BreadcrumbItemSlots, BreadcrumbItemState } from './BreadcrumbItem.types';\nexport { renderBreadcrumbItem_unstable } from './renderBreadcrumbItem';\nexport { useBreadcrumbItem_unstable } from './useBreadcrumbItem';\nexport { breadcrumbItemClassNames, useBreadcrumbItemStyles_unstable } from './useBreadcrumbItemStyles.styles';\n"],"names":["BreadcrumbItem","renderBreadcrumbItem_unstable","useBreadcrumbItem_unstable","breadcrumbItemClassNames","useBreadcrumbItemStyles_unstable"],"mappings":"AAAA,SAASA,cAAc,QAAQ,mBAAmB;AAElD,SAASC,6BAA6B,QAAQ,yBAAyB;AACvE,SAASC,0BAA0B,QAAQ,sBAAsB;AACjE,SAASC,wBAAwB,EAAEC,gCAAgC,QAAQ,mCAAmC"}
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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/BreadcrumbItem/renderBreadcrumbItem.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\n\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\n\nimport type { BreadcrumbItemState, BreadcrumbItemSlots } from './BreadcrumbItem.types';\n\n/**\n * Render the final JSX of BreadcrumbItem\n */\nexport const renderBreadcrumbItem_unstable = (state: BreadcrumbItemState): JSXElement => {\n assertSlots<BreadcrumbItemSlots>(state);\n\n return <state.root>{state.root.children}</state.root>;\n};\n"],"names":["assertSlots","renderBreadcrumbItem_unstable","state","root","children"],"mappings":"AAAA,0BAA0B,GAC1B,iDAAiD;AAEjD,SAASA,WAAW,QAAQ,4BAA4B;AAKxD;;CAEC,GACD,OAAO,MAAMC,gCAAgC,CAACC;IAC5CF,YAAiCE;IAEjC,qBAAO,KAACA,MAAMC,IAAI;kBAAED,MAAMC,IAAI,CAACC,QAAQ;;AACzC,EAAE"}
1
+ {"version":3,"sources":["../src/components/BreadcrumbItem/renderBreadcrumbItem.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\n\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\n\nimport type { BreadcrumbItemBaseState, BreadcrumbItemSlots } from './BreadcrumbItem.types';\n\n/**\n * Render the final JSX of BreadcrumbItem\n */\nexport const renderBreadcrumbItem_unstable = (state: BreadcrumbItemBaseState): JSXElement => {\n assertSlots<BreadcrumbItemSlots>(state);\n\n return <state.root>{state.root.children}</state.root>;\n};\n"],"names":["assertSlots","renderBreadcrumbItem_unstable","state","root","children"],"mappings":"AAAA,0BAA0B,GAC1B,iDAAiD;AAEjD,SAASA,WAAW,QAAQ,4BAA4B;AAKxD;;CAEC,GACD,OAAO,MAAMC,gCAAgC,CAACC;IAC5CF,YAAiCE;IAEjC,qBAAO,KAACA,MAAMC,IAAI;kBAAED,MAAMC,IAAI,CAACC,QAAQ;;AACzC,EAAE"}
@@ -1,5 +1,4 @@
1
1
  'use client';
2
- import * as React from 'react';
3
2
  import { getIntrinsicElementProps, slot } from '@fluentui/react-utilities';
4
3
  import { useBreadcrumbContext_unstable } from '../Breadcrumb/BreadcrumbContext';
5
4
  /**
@@ -12,6 +11,19 @@ import { useBreadcrumbContext_unstable } from '../Breadcrumb/BreadcrumbContext';
12
11
  * @param ref - reference to root HTMLElement of BreadcrumbItem
13
12
  */ export const useBreadcrumbItem_unstable = (props, ref)=>{
14
13
  const { size } = useBreadcrumbContext_unstable();
14
+ const state = useBreadcrumbItemBase_unstable(props, ref);
15
+ return {
16
+ ...state,
17
+ size
18
+ };
19
+ };
20
+ /**
21
+ * Base hook for BreadcrumbItem component, which manages state related to slots structure
22
+ * without design props. Note: size is provided via BreadcrumbContext in the full hook.
23
+ *
24
+ * @param props - props from this instance of BreadcrumbItem
25
+ * @param ref - reference to root HTMLElement of BreadcrumbItem
26
+ */ export const useBreadcrumbItemBase_unstable = (props, ref)=>{
15
27
  return {
16
28
  components: {
17
29
  root: 'li'
@@ -21,7 +33,6 @@ import { useBreadcrumbContext_unstable } from '../Breadcrumb/BreadcrumbContext';
21
33
  ...props
22
34
  }), {
23
35
  elementType: 'li'
24
- }),
25
- size
36
+ })
26
37
  };
27
38
  };
@@ -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 { BreadcrumbItemProps, BreadcrumbItemState } 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\n return {\n components: { root: 'li' },\n root: slot.always(\n getIntrinsicElementProps('li', {\n ref,\n ...props,\n }),\n { elementType: 'li' },\n ),\n size,\n };\n};\n"],"names":["React","getIntrinsicElementProps","slot","useBreadcrumbContext_unstable","useBreadcrumbItem_unstable","props","ref","size","components","root","always","elementType"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,wBAAwB,EAAEC,IAAI,QAAQ,4BAA4B;AAE3E,SAASC,6BAA6B,QAAQ,kCAAkC;AAEhF;;;;;;;;CAQC,GACD,OAAO,MAAMC,6BAA6B,CACxCC,OACAC;IAEA,MAAM,EAAEC,IAAI,EAAE,GAAGJ;IAEjB,OAAO;QACLK,YAAY;YAAEC,MAAM;QAAK;QACzBA,MAAMP,KAAKQ,MAAM,CACfT,yBAAyB,MAAM;YAC7BK;YACA,GAAGD,KAAK;QACV,IACA;YAAEM,aAAa;QAAK;QAEtBJ;IACF;AACF,EAAE"}
1
+ {"version":3,"sources":["../src/components/BreadcrumbItem/useBreadcrumbItem.ts"],"sourcesContent":["'use client';\n\nimport type * 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":["getIntrinsicElementProps","slot","useBreadcrumbContext_unstable","useBreadcrumbItem_unstable","props","ref","size","state","useBreadcrumbItemBase_unstable","components","root","always","elementType"],"mappings":"AAAA;AAGA,SAASA,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"}
package/lib/index.js CHANGED
@@ -1,6 +1,6 @@
1
- export { Breadcrumb, renderBreadcrumb_unstable, useBreadcrumb_unstable, useBreadcrumbStyles_unstable, breadcrumbClassNames } from './Breadcrumb';
2
- export { BreadcrumbDivider, breadcrumbDividerClassNames, renderBreadcrumbDivider_unstable, useBreadcrumbDividerStyles_unstable, useBreadcrumbDivider_unstable } from './BreadcrumbDivider';
3
- export { BreadcrumbItem, breadcrumbItemClassNames, renderBreadcrumbItem_unstable, useBreadcrumbItemStyles_unstable, useBreadcrumbItem_unstable } from './BreadcrumbItem';
1
+ export { Breadcrumb, renderBreadcrumb_unstable, useBreadcrumb_unstable, useBreadcrumbBase_unstable, useBreadcrumbA11yBehavior_unstable, useBreadcrumbStyles_unstable, useBreadcrumbContextValues_unstable, breadcrumbClassNames } from './Breadcrumb';
2
+ export { BreadcrumbDivider, breadcrumbDividerClassNames, renderBreadcrumbDivider_unstable, useBreadcrumbDividerStyles_unstable, useBreadcrumbDivider_unstable, useBreadcrumbDividerBase_unstable } from './BreadcrumbDivider';
3
+ export { BreadcrumbItem, breadcrumbItemClassNames, renderBreadcrumbItem_unstable, useBreadcrumbItemStyles_unstable, useBreadcrumbItem_unstable, useBreadcrumbItemBase_unstable } from './BreadcrumbItem';
4
4
  export { partitionBreadcrumbItems, truncateBreadcrumbLongName, truncateBreadcrumLongTooltip, isTruncatableBreadcrumbContent } from './utils/index';
5
- export { BreadcrumbButton, breadcrumbButtonClassNames, renderBreadcrumbButton_unstable, useBreadcrumbButtonStyles_unstable, useBreadcrumbButton_unstable } from './BreadcrumbButton';
5
+ export { BreadcrumbButton, breadcrumbButtonClassNames, renderBreadcrumbButton_unstable, useBreadcrumbButtonStyles_unstable, useBreadcrumbButton_unstable, useBreadcrumbButtonBase_unstable } from './BreadcrumbButton';
6
6
  export { BreadcrumbProvider, useBreadcrumbContext_unstable } from './Breadcrumb';
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export {\n Breadcrumb,\n renderBreadcrumb_unstable,\n useBreadcrumb_unstable,\n useBreadcrumbStyles_unstable,\n breadcrumbClassNames,\n} from './Breadcrumb';\nexport type { BreadcrumbSlots, BreadcrumbProps, BreadcrumbState } from './Breadcrumb';\nexport {\n BreadcrumbDivider,\n breadcrumbDividerClassNames,\n renderBreadcrumbDivider_unstable,\n useBreadcrumbDividerStyles_unstable,\n useBreadcrumbDivider_unstable,\n} from './BreadcrumbDivider';\nexport type { BreadcrumbDividerProps, BreadcrumbDividerSlots, BreadcrumbDividerState } from './BreadcrumbDivider';\nexport {\n BreadcrumbItem,\n breadcrumbItemClassNames,\n renderBreadcrumbItem_unstable,\n useBreadcrumbItemStyles_unstable,\n useBreadcrumbItem_unstable,\n} from './BreadcrumbItem';\nexport type { BreadcrumbItemProps, BreadcrumbItemSlots, BreadcrumbItemState } from './BreadcrumbItem';\nexport {\n partitionBreadcrumbItems,\n truncateBreadcrumbLongName,\n truncateBreadcrumLongTooltip,\n isTruncatableBreadcrumbContent,\n} from './utils/index';\nexport type { PartitionBreadcrumbItemsOptions, PartitionBreadcrumbItems } from './utils/index';\nexport {\n BreadcrumbButton,\n breadcrumbButtonClassNames,\n renderBreadcrumbButton_unstable,\n useBreadcrumbButtonStyles_unstable,\n useBreadcrumbButton_unstable,\n} from './BreadcrumbButton';\nexport type { BreadcrumbButtonProps, BreadcrumbButtonSlots, BreadcrumbButtonState } from './BreadcrumbButton';\nexport { BreadcrumbProvider, useBreadcrumbContext_unstable } from './Breadcrumb';\nexport type { BreadcrumbContextValues } from './Breadcrumb';\n"],"names":["Breadcrumb","renderBreadcrumb_unstable","useBreadcrumb_unstable","useBreadcrumbStyles_unstable","breadcrumbClassNames","BreadcrumbDivider","breadcrumbDividerClassNames","renderBreadcrumbDivider_unstable","useBreadcrumbDividerStyles_unstable","useBreadcrumbDivider_unstable","BreadcrumbItem","breadcrumbItemClassNames","renderBreadcrumbItem_unstable","useBreadcrumbItemStyles_unstable","useBreadcrumbItem_unstable","partitionBreadcrumbItems","truncateBreadcrumbLongName","truncateBreadcrumLongTooltip","isTruncatableBreadcrumbContent","BreadcrumbButton","breadcrumbButtonClassNames","renderBreadcrumbButton_unstable","useBreadcrumbButtonStyles_unstable","useBreadcrumbButton_unstable","BreadcrumbProvider","useBreadcrumbContext_unstable"],"mappings":"AAAA,SACEA,UAAU,EACVC,yBAAyB,EACzBC,sBAAsB,EACtBC,4BAA4B,EAC5BC,oBAAoB,QACf,eAAe;AAEtB,SACEC,iBAAiB,EACjBC,2BAA2B,EAC3BC,gCAAgC,EAChCC,mCAAmC,EACnCC,6BAA6B,QACxB,sBAAsB;AAE7B,SACEC,cAAc,EACdC,wBAAwB,EACxBC,6BAA6B,EAC7BC,gCAAgC,EAChCC,0BAA0B,QACrB,mBAAmB;AAE1B,SACEC,wBAAwB,EACxBC,0BAA0B,EAC1BC,4BAA4B,EAC5BC,8BAA8B,QACzB,gBAAgB;AAEvB,SACEC,gBAAgB,EAChBC,0BAA0B,EAC1BC,+BAA+B,EAC/BC,kCAAkC,EAClCC,4BAA4B,QACvB,qBAAqB;AAE5B,SAASC,kBAAkB,EAAEC,6BAA6B,QAAQ,eAAe"}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export {\n Breadcrumb,\n renderBreadcrumb_unstable,\n useBreadcrumb_unstable,\n useBreadcrumbBase_unstable,\n useBreadcrumbA11yBehavior_unstable,\n useBreadcrumbStyles_unstable,\n useBreadcrumbContextValues_unstable,\n breadcrumbClassNames,\n} from './Breadcrumb';\nexport type {\n BreadcrumbSlots,\n BreadcrumbProps,\n BreadcrumbState,\n BreadcrumbBaseProps,\n BreadcrumbBaseState,\n} from './Breadcrumb';\nexport {\n BreadcrumbDivider,\n breadcrumbDividerClassNames,\n renderBreadcrumbDivider_unstable,\n useBreadcrumbDividerStyles_unstable,\n useBreadcrumbDivider_unstable,\n useBreadcrumbDividerBase_unstable,\n} from './BreadcrumbDivider';\nexport type {\n BreadcrumbDividerProps,\n BreadcrumbDividerSlots,\n BreadcrumbDividerState,\n BreadcrumbDividerBaseProps,\n BreadcrumbDividerBaseState,\n} from './BreadcrumbDivider';\nexport {\n BreadcrumbItem,\n breadcrumbItemClassNames,\n renderBreadcrumbItem_unstable,\n useBreadcrumbItemStyles_unstable,\n useBreadcrumbItem_unstable,\n useBreadcrumbItemBase_unstable,\n} from './BreadcrumbItem';\nexport type {\n BreadcrumbItemProps,\n BreadcrumbItemSlots,\n BreadcrumbItemState,\n BreadcrumbItemBaseProps,\n BreadcrumbItemBaseState,\n} from './BreadcrumbItem';\nexport {\n partitionBreadcrumbItems,\n truncateBreadcrumbLongName,\n truncateBreadcrumLongTooltip,\n isTruncatableBreadcrumbContent,\n} from './utils/index';\nexport type { PartitionBreadcrumbItemsOptions, PartitionBreadcrumbItems } from './utils/index';\nexport {\n BreadcrumbButton,\n breadcrumbButtonClassNames,\n renderBreadcrumbButton_unstable,\n useBreadcrumbButtonStyles_unstable,\n useBreadcrumbButton_unstable,\n useBreadcrumbButtonBase_unstable,\n} from './BreadcrumbButton';\nexport type {\n BreadcrumbButtonProps,\n BreadcrumbButtonSlots,\n BreadcrumbButtonState,\n BreadcrumbButtonBaseProps,\n BreadcrumbButtonBaseState,\n} from './BreadcrumbButton';\nexport { BreadcrumbProvider, useBreadcrumbContext_unstable } from './Breadcrumb';\nexport type { BreadcrumbContextValues } from './Breadcrumb';\n"],"names":["Breadcrumb","renderBreadcrumb_unstable","useBreadcrumb_unstable","useBreadcrumbBase_unstable","useBreadcrumbA11yBehavior_unstable","useBreadcrumbStyles_unstable","useBreadcrumbContextValues_unstable","breadcrumbClassNames","BreadcrumbDivider","breadcrumbDividerClassNames","renderBreadcrumbDivider_unstable","useBreadcrumbDividerStyles_unstable","useBreadcrumbDivider_unstable","useBreadcrumbDividerBase_unstable","BreadcrumbItem","breadcrumbItemClassNames","renderBreadcrumbItem_unstable","useBreadcrumbItemStyles_unstable","useBreadcrumbItem_unstable","useBreadcrumbItemBase_unstable","partitionBreadcrumbItems","truncateBreadcrumbLongName","truncateBreadcrumLongTooltip","isTruncatableBreadcrumbContent","BreadcrumbButton","breadcrumbButtonClassNames","renderBreadcrumbButton_unstable","useBreadcrumbButtonStyles_unstable","useBreadcrumbButton_unstable","useBreadcrumbButtonBase_unstable","BreadcrumbProvider","useBreadcrumbContext_unstable"],"mappings":"AAAA,SACEA,UAAU,EACVC,yBAAyB,EACzBC,sBAAsB,EACtBC,0BAA0B,EAC1BC,kCAAkC,EAClCC,4BAA4B,EAC5BC,mCAAmC,EACnCC,oBAAoB,QACf,eAAe;AAQtB,SACEC,iBAAiB,EACjBC,2BAA2B,EAC3BC,gCAAgC,EAChCC,mCAAmC,EACnCC,6BAA6B,EAC7BC,iCAAiC,QAC5B,sBAAsB;AAQ7B,SACEC,cAAc,EACdC,wBAAwB,EACxBC,6BAA6B,EAC7BC,gCAAgC,EAChCC,0BAA0B,EAC1BC,8BAA8B,QACzB,mBAAmB;AAQ1B,SACEC,wBAAwB,EACxBC,0BAA0B,EAC1BC,4BAA4B,EAC5BC,8BAA8B,QACzB,gBAAgB;AAEvB,SACEC,gBAAgB,EAChBC,0BAA0B,EAC1BC,+BAA+B,EAC/BC,kCAAkC,EAClCC,4BAA4B,EAC5BC,gCAAgC,QAC3B,qBAAqB;AAQ5B,SAASC,kBAAkB,EAAEC,6BAA6B,QAAQ,eAAe"}
@@ -24,6 +24,15 @@ _export(exports, {
24
24
  renderBreadcrumb_unstable: function() {
25
25
  return _index.renderBreadcrumb_unstable;
26
26
  },
27
+ useBreadcrumbA11yBehavior_unstable: function() {
28
+ return _index.useBreadcrumbA11yBehavior_unstable;
29
+ },
30
+ useBreadcrumbBase_unstable: function() {
31
+ return _index.useBreadcrumbBase_unstable;
32
+ },
33
+ useBreadcrumbContextValues_unstable: function() {
34
+ return _index.useBreadcrumbContextValues_unstable;
35
+ },
27
36
  useBreadcrumbContext_unstable: function() {
28
37
  return _index.useBreadcrumbContext_unstable;
29
38
  },
@@ -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":";;;;;;;;;;;IAOEA;gCAAU;;;eACVC,yBAAkB;;;eAClBC,2BAAoB;;;eACpBC,6BAAsB;;;eACtBC,gCAAyB;;;eACzBC,oCAA6B;;;eAC7BC,mCAA4B;;;eAC5BC,6BAAsB;;;uBACjB,gCAAgC"}
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 useBreadcrumbContextValues_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","useBreadcrumbContextValues_unstable","useBreadcrumbBase_unstable","useBreadcrumbA11yBehavior_unstable"],"mappings":";;;;;;;;;;;IASEA;gCAAU;;;eACVC,yBAAkB;;;eAClBC,2BAAoB;;;eACpBC,6BAAsB;;;eACtBC,gCAAyB;;sCAMS;eAAlCM;;;eADAD,iCAA0B;;;eAD1BD,0CAAmC;;iCAHN;eAA7BH;;;eACAC,mCAA4B;;;eAC5BC,6BAAsB;;;uBAIjB,gCAAgC"}
@@ -18,6 +18,9 @@ _export(exports, {
18
18
  renderBreadcrumbButton_unstable: function() {
19
19
  return _index.renderBreadcrumbButton_unstable;
20
20
  },
21
+ useBreadcrumbButtonBase_unstable: function() {
22
+ return _index.useBreadcrumbButtonBase_unstable;
23
+ },
21
24
  useBreadcrumbButtonStyles_unstable: function() {
22
25
  return _index.useBreadcrumbButtonStyles_unstable;
23
26
  },
@@ -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":";;;;;;;;;;;;eAMEA,uBAAgB;;;eAChBC,iCAA0B;;;eAC1BC,sCAA+B;;;eAC/BC,yCAAkC;;;eAClCC,mCAA4B;;;uBACvB,sCAAsC"}
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":";;;;;;;;;;;;eAQEA,uBAAgB;;;eAChBC,iCAA0B;;;eAC1BC,sCAA+B;;;eAG/BG,uCAAgC;;;eAFhCF,yCAAkC;;;eAClCC,mCAA4B;;;uBAEvB,sCAAsC"}
@@ -18,6 +18,9 @@ _export(exports, {
18
18
  renderBreadcrumbDivider_unstable: function() {
19
19
  return _index.renderBreadcrumbDivider_unstable;
20
20
  },
21
+ useBreadcrumbDividerBase_unstable: function() {
22
+ return _index.useBreadcrumbDividerBase_unstable;
23
+ },
21
24
  useBreadcrumbDividerStyles_unstable: function() {
22
25
  return _index.useBreadcrumbDividerStyles_unstable;
23
26
  },
@@ -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":";;;;;;;;;;;;eAMEA,wBAAiB;;;eACjBC,kCAA2B;;;eAC3BC,uCAAgC;;;eAChCC,0CAAmC;;;eACnCC,oCAA6B;;;uBACxB,uCAAuC"}
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":";;;;;;;;;;;;eAQEA,wBAAiB;;;eACjBC,kCAA2B;;;eAC3BC,uCAAgC;;;eAGhCG,wCAAiC;;;eAFjCF,0CAAmC;;;eACnCC,oCAA6B;;;uBAExB,uCAAuC"}
@@ -18,6 +18,9 @@ _export(exports, {
18
18
  renderBreadcrumbItem_unstable: function() {
19
19
  return _index.renderBreadcrumbItem_unstable;
20
20
  },
21
+ useBreadcrumbItemBase_unstable: function() {
22
+ return _index.useBreadcrumbItemBase_unstable;
23
+ },
21
24
  useBreadcrumbItemStyles_unstable: function() {
22
25
  return _index.useBreadcrumbItemStyles_unstable;
23
26
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/BreadcrumbItem.ts"],"sourcesContent":["export type { BreadcrumbItemProps, BreadcrumbItemSlots, BreadcrumbItemState } from './components/BreadcrumbItem/index';\nexport {\n BreadcrumbItem,\n breadcrumbItemClassNames,\n renderBreadcrumbItem_unstable,\n useBreadcrumbItemStyles_unstable,\n useBreadcrumbItem_unstable,\n} from './components/BreadcrumbItem/index';\n"],"names":["BreadcrumbItem","breadcrumbItemClassNames","renderBreadcrumbItem_unstable","useBreadcrumbItemStyles_unstable","useBreadcrumbItem_unstable"],"mappings":";;;;;;;;;;;;eAEEA,qBAAc;;;eACdC,+BAAwB;;;eACxBC,oCAA6B;;;eAC7BC,uCAAgC;;;eAChCC,iCAA0B;;;uBACrB,oCAAoC"}
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":";;;;;;;;;;;;eAQEA,qBAAc;;;eACdC,+BAAwB;;;eACxBC,oCAA6B;;;eAG7BG,qCAA8B;;;eAF9BF,uCAAgC;;;eAChCC,iCAA0B;;;uBAErB,oCAAoC"}
@@ -1,6 +1,4 @@
1
- /**
2
- * State used in rendering Breadcrumb
3
- */ "use strict";
1
+ "use strict";
4
2
  Object.defineProperty(exports, "__esModule", {
5
3
  value: true
6
4
  });
@@ -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":"AA4CA;;CAEC,GACD,WAAwG"}
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":""}
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/Breadcrumb/BreadcrumbContext.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { BreadcrumbContextValues } from './Breadcrumb.types';\n\nconst BreadcrumbContext = React.createContext<BreadcrumbContextValues | undefined>(undefined);\n\n/**\n * @internal\n */\nexport const breadcrumbDefaultValue: BreadcrumbContextValues = {\n size: 'medium',\n};\n\n/**\n * @internal\n */\nexport const BreadcrumbProvider = BreadcrumbContext.Provider;\n\n/**\n * @internal\n */\nexport const useBreadcrumbContext_unstable = (): BreadcrumbContextValues =>\n React.useContext(BreadcrumbContext) ?? breadcrumbDefaultValue;\n"],"names":["React","BreadcrumbContext","createContext","undefined","breadcrumbDefaultValue","size","BreadcrumbProvider","Provider","useBreadcrumbContext_unstable","useContext"],"mappings":"AAAA;;;;;;;;;;;;sBAiBaM;eAAAA;;0BAPAF;;;iCAYAI;;;;;iEApBU,QAAQ;AAG/B,MAAMP,kCAAoBD,OAAME,aAAa,CAAsCC;AAK5E,MAAMC,yBAAkD;IAC7DC,MAAM;AACR,EAAE;AAKK,2BAA2BJ,kBAAkBM,QAAQ,CAAC;AAKtD,MAAMC,gCAAgC;QAC3CR;WAAAA,CAAAA,oBAAAA,OAAMS,UAAU,CAACR,kBAAAA,MAAAA,QAAjBD,sBAAAA,KAAAA,IAAAA,oBAAuCI;EAAuB"}
1
+ {"version":3,"sources":["../src/components/Breadcrumb/BreadcrumbContext.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport type { BreadcrumbContextValues } from './Breadcrumb.types';\n\nconst BreadcrumbContext = React.createContext<BreadcrumbContextValues | undefined>(undefined);\n\n/**\n * @internal\n */\nexport const breadcrumbDefaultValue: BreadcrumbContextValues = {\n size: 'medium',\n};\n\n/**\n * @internal\n */\nexport const BreadcrumbProvider = BreadcrumbContext.Provider;\n\n/**\n * @internal\n */\nexport const useBreadcrumbContext_unstable = (): BreadcrumbContextValues =>\n React.useContext(BreadcrumbContext) ?? breadcrumbDefaultValue;\n"],"names":["React","BreadcrumbContext","createContext","undefined","breadcrumbDefaultValue","size","BreadcrumbProvider","Provider","useBreadcrumbContext_unstable","useContext"],"mappings":"AAAA;;;;;;;;;;;;sBAiBaM;eAAAA;;0BAPAF;;;iCAYAI;;;;;iEApBU,QAAQ;AAG/B,MAAMP,kCAAoBD,OAAME,aAAa,CAAsCC;AAK5E,MAAMC,yBAAkD;IAC7DC,MAAM;AACR,EAAE;AAKK,2BAA2BJ,kBAAkBM,QAAQ,CAAC;AAKtD,MAAMC,gCAAgC;QAC3CR;WAAAA,CAAAA,oBAAAA,OAAMS,UAAU,CAACR,kBAAAA,MAAAA,QAAjBD,sBAAAA,KAAAA,IAAAA,oBAAuCI;EAAuB"}
@@ -24,6 +24,15 @@ _export(exports, {
24
24
  renderBreadcrumb_unstable: function() {
25
25
  return _renderBreadcrumb.renderBreadcrumb_unstable;
26
26
  },
27
+ useBreadcrumbA11yBehavior_unstable: function() {
28
+ return _useBreadcrumb.useBreadcrumbA11yBehavior_unstable;
29
+ },
30
+ useBreadcrumbBase_unstable: function() {
31
+ return _useBreadcrumb.useBreadcrumbBase_unstable;
32
+ },
33
+ useBreadcrumbContextValues_unstable: function() {
34
+ return _useBreadcrumbContextValue.useBreadcrumbContextValues_unstable;
35
+ },
27
36
  useBreadcrumbContext_unstable: function() {
28
37
  return _BreadcrumbContext.useBreadcrumbContext_unstable;
29
38
  },
@@ -38,4 +47,5 @@ const _Breadcrumb = require("./Breadcrumb");
38
47
  const _BreadcrumbContext = require("./BreadcrumbContext");
39
48
  const _renderBreadcrumb = require("./renderBreadcrumb");
40
49
  const _useBreadcrumb = require("./useBreadcrumb");
50
+ const _useBreadcrumbContextValue = require("./useBreadcrumbContextValue");
41
51
  const _useBreadcrumbStylesstyles = require("./useBreadcrumbStyles.styles");
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/Breadcrumb/index.ts"],"sourcesContent":["export { Breadcrumb } from './Breadcrumb';\nexport type { BreadcrumbContextValues, BreadcrumbProps, BreadcrumbSlots, BreadcrumbState } from './Breadcrumb.types';\nexport { BreadcrumbProvider, breadcrumbDefaultValue, useBreadcrumbContext_unstable } from './BreadcrumbContext';\nexport { renderBreadcrumb_unstable } from './renderBreadcrumb';\nexport { useBreadcrumb_unstable } from './useBreadcrumb';\nexport { breadcrumbClassNames, useBreadcrumbStyles_unstable } from './useBreadcrumbStyles.styles';\n"],"names":["Breadcrumb","BreadcrumbProvider","breadcrumbDefaultValue","useBreadcrumbContext_unstable","renderBreadcrumb_unstable","useBreadcrumb_unstable","breadcrumbClassNames","useBreadcrumbStyles_unstable"],"mappings":";;;;;;;;;;;IAASA;qCAAU;;;eAEVC,qCAAkB;;IAGlBK;8DAAoB;;;eAHAJ,yCAAsB;;6BACjB;eAAzBE;;;eAD4CD,gDAA6B;;;eAGnDI,uDAA4B;;;eADlDF,qCAAsB;;;4BAJJ,eAAe;mCAEgD,sBAAsB;kCACtE,qBAAqB;+BACxB,kBAAkB;2CACU,+BAA+B"}
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 { useBreadcrumbContextValues_unstable } from './useBreadcrumbContextValue';\nexport { breadcrumbClassNames, useBreadcrumbStyles_unstable } from './useBreadcrumbStyles.styles';\n"],"names":["Breadcrumb","BreadcrumbProvider","breadcrumbDefaultValue","useBreadcrumbContext_unstable","renderBreadcrumb_unstable","useBreadcrumb_unstable","useBreadcrumbBase_unstable","useBreadcrumbA11yBehavior_unstable","useBreadcrumbContextValues_unstable","breadcrumbClassNames","useBreadcrumbStyles_unstable"],"mappings":";;;;;;;;;;;IAASA;qCAAU;;;eASVC,qCAAkB;;;eAQlBQ,+CAAoB;;;eARAP,yCAAsB;;;eAC1CE,2CAAyB;;;eAIhCG,iDAAkC;;;eADlCD,yCAA0B;;;eAGnBE,8DAAmC;;;eAPSL,gDAA6B;;;eAQnDO,uDAA4B;;IALzDL;oDAAsB;;;4BAZG,eAAe;mCASgD,sBAAsB;kCACtE,qBAAqB;+BAKxD,kBAAkB;2CAC2B,8BAA8B;2CACf,+BAA+B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/Breadcrumb/renderBreadcrumb.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\n\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\n\nimport { BreadcrumbProvider } from './BreadcrumbContext';\nimport type { BreadcrumbState, BreadcrumbSlots, BreadcrumbContextValues } from './Breadcrumb.types';\n/**\n * Render the final JSX of Breadcrumb\n */\nexport const renderBreadcrumb_unstable = (\n state: BreadcrumbState,\n contextValues: BreadcrumbContextValues,\n): JSXElement => {\n assertSlots<BreadcrumbSlots>(state);\n return (\n <state.root>\n <BreadcrumbProvider value={contextValues}>\n {state.list && <state.list>{state.root.children}</state.list>}\n </BreadcrumbProvider>\n </state.root>\n );\n};\n"],"names":["assertSlots","BreadcrumbProvider","renderBreadcrumb_unstable","state","contextValues","root","value","list","children"],"mappings":";;;;+BAWaE;;;;;;4BAVb,gDAAiD;gCAErB,4BAA4B;mCAGrB,sBAAsB;AAKlD,kCAAkC,CACvCC,OACAC;QAEAJ,2BAAAA,EAA6BG;IAC7B,OAAA,WAAA,OACE,eAAA,EAACA,MAAME,IAAI,EAAA;kBACT,WAAA,GAAA,mBAAA,EAACJ,qCAAAA,EAAAA;YAAmBK,OAAOF;sBACxBD,MAAMI,IAAI,IAAA,WAAA,OAAI,eAAA,EAACJ,MAAMI,IAAI,EAAA;0BAAEJ,MAAME,IAAI,CAACG,QAAQ;;;;AAIvD,EAAE"}
1
+ {"version":3,"sources":["../src/components/Breadcrumb/renderBreadcrumb.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\n\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\n\nimport { BreadcrumbProvider } from './BreadcrumbContext';\nimport type { BreadcrumbBaseState, BreadcrumbSlots, BreadcrumbContextValues } from './Breadcrumb.types';\n/**\n * Render the final JSX of Breadcrumb\n */\nexport const renderBreadcrumb_unstable = (\n state: BreadcrumbBaseState,\n contextValues: BreadcrumbContextValues,\n): JSXElement => {\n assertSlots<BreadcrumbSlots>(state);\n return (\n <state.root>\n <BreadcrumbProvider value={contextValues}>\n {state.list && <state.list>{state.root.children}</state.list>}\n </BreadcrumbProvider>\n </state.root>\n );\n};\n"],"names":["assertSlots","BreadcrumbProvider","renderBreadcrumb_unstable","state","contextValues","root","value","list","children"],"mappings":";;;;+BAWaE;;;;;;4BAVb,gDAAiD;gCAErB,4BAA4B;mCAGrB,sBAAsB;AAKlD,kCAAkC,CACvCC,OACAC;QAEAJ,2BAAAA,EAA6BG;IAC7B,OAAA,WAAA,OACE,eAAA,EAACA,MAAME,IAAI,EAAA;kBACT,WAAA,GAAA,mBAAA,EAACJ,qCAAAA,EAAAA;YAAmBK,OAAOF;sBACxBD,MAAMI,IAAI,IAAA,WAAA,OAAI,eAAA,EAACJ,MAAMI,IAAI,EAAA;0BAAEJ,MAAME,IAAI,CAACG,QAAQ;;;;AAIvD,EAAE"}
@@ -3,23 +3,42 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- Object.defineProperty(exports, "useBreadcrumb_unstable", {
7
- enumerable: true,
8
- get: function() {
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
13
+ useBreadcrumbA11yBehavior_unstable: function() {
14
+ return useBreadcrumbA11yBehavior_unstable;
15
+ },
16
+ useBreadcrumbBase_unstable: function() {
17
+ return useBreadcrumbBase_unstable;
18
+ },
19
+ useBreadcrumb_unstable: function() {
9
20
  return useBreadcrumb_unstable;
10
21
  }
11
22
  });
12
- const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
13
- const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
14
23
  const _reactutilities = require("@fluentui/react-utilities");
15
24
  const _reacttabster = require("@fluentui/react-tabster");
16
25
  const useBreadcrumb_unstable = (props, ref)=>{
17
- const { focusMode = 'tab', size = 'medium', list, ...rest } = props;
18
- const focusAttributes = (0, _reacttabster.useArrowNavigationGroup)({
19
- circular: true,
20
- axis: 'horizontal',
21
- memorizeCurrent: true
26
+ const { focusMode = 'tab', size = 'medium', ...breadcrumbProps } = props;
27
+ const state = useBreadcrumbBase_unstable(breadcrumbProps, ref);
28
+ const focusAttributes = useBreadcrumbA11yBehavior_unstable({
29
+ focusMode
22
30
  });
31
+ return {
32
+ ...state,
33
+ root: {
34
+ ...focusAttributes,
35
+ ...state.root
36
+ },
37
+ size
38
+ };
39
+ };
40
+ const useBreadcrumbBase_unstable = (props, ref)=>{
41
+ const { focusMode = 'tab', list, ...rest } = props;
23
42
  var _props_arialabel;
24
43
  return {
25
44
  components: {
@@ -29,7 +48,6 @@ const useBreadcrumb_unstable = (props, ref)=>{
29
48
  root: _reactutilities.slot.always((0, _reactutilities.getIntrinsicElementProps)('nav', {
30
49
  ref,
31
50
  'aria-label': (_props_arialabel = props['aria-label']) !== null && _props_arialabel !== void 0 ? _props_arialabel : 'breadcrumb',
32
- ...focusMode === 'arrow' ? focusAttributes : {},
33
51
  ...rest
34
52
  }), {
35
53
  elementType: 'nav'
@@ -40,7 +58,14 @@ const useBreadcrumb_unstable = (props, ref)=>{
40
58
  role: 'list'
41
59
  },
42
60
  elementType: 'ol'
43
- }),
44
- size
61
+ })
45
62
  };
46
63
  };
64
+ const useBreadcrumbA11yBehavior_unstable = ({ focusMode })=>{
65
+ const focusAttributes = (0, _reacttabster.useArrowNavigationGroup)({
66
+ circular: true,
67
+ axis: 'horizontal',
68
+ memorizeCurrent: true
69
+ });
70
+ return focusMode === 'arrow' ? focusAttributes : {};
71
+ };
@@ -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', list, ...rest } = props;\n\n const focusAttributes = useArrowNavigationGroup({\n circular: true,\n axis: 'horizontal',\n memorizeCurrent: true,\n });\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 ...(focusMode === 'arrow' ? focusAttributes : {}),\n ...rest,\n }),\n { elementType: 'nav' },\n ),\n list: slot.optional(list, { renderByDefault: true, defaultProps: { role: 'list' }, elementType: 'ol' }),\n size,\n };\n};\n"],"names":["React","getIntrinsicElementProps","slot","useArrowNavigationGroup","useBreadcrumb_unstable","props","ref","focusMode","size","list","rest","focusAttributes","circular","axis","memorizeCurrent","components","root","always","elementType","optional","renderByDefault","defaultProps","role"],"mappings":"AAAA;;;;;+BAgBaI;;;;;;;iEAdU,QAAQ;gCACgB,4BAA4B;8BAEnC,0BAA0B;AAW3D,+BAA+B,CAACC,OAAwBC;IAC7D,MAAM,EAAEC,YAAY,KAAK,EAAEC,OAAO,QAAQ,EAAEC,IAAI,EAAE,GAAGC,MAAM,GAAGL;IAE9D,MAAMM,sBAAkBR,qCAAAA,EAAwB;QAC9CS,UAAU;QACVC,MAAM;QACNC,iBAAiB;IACnB;QAUoBT;IARpB,OAAO;QACLU,YAAY;YACVC,MAAM;YACNP,MAAM;QACR;QACAO,MAAMd,oBAAAA,CAAKe,MAAM,KACfhB,wCAAAA,EAAyB,OAAO;YAC9BK;YACA,cAAcD,CAAAA,mBAAAA,KAAK,CAAC,aAAA,AAAa,MAAA,QAAnBA,qBAAAA,KAAAA,IAAAA,mBAAuB;YACrC,GAAIE,cAAc,UAAUI,kBAAkB,CAAC,CAAC;YAChD,GAAGD,IAAI;QACT,IACA;YAAEQ,aAAa;QAAM;QAEvBT,MAAMP,oBAAAA,CAAKiB,QAAQ,CAACV,MAAM;YAAEW,iBAAiB;YAAMC,cAAc;gBAAEC,MAAM;YAAO;YAAGJ,aAAa;QAAK;QACrGV;IACF;AACF,EAAE"}
1
+ {"version":3,"sources":["../src/components/Breadcrumb/useBreadcrumb.ts"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { getIntrinsicElementProps, slot } from '@fluentui/react-utilities';\nimport type { BreadcrumbBaseProps, BreadcrumbBaseState, BreadcrumbProps, BreadcrumbState } from './Breadcrumb.types';\nimport type { TabsterDOMAttribute } from '@fluentui/react-tabster';\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', ...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":["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;;;;;;;;;;;;sCAsEaY;eAAAA;;IA9BAF,0BAAAA;;;0BAvBAP;;;;gCAdkC,4BAA4B;8BAGnC,0BAA0B;AAW3D,MAAMA,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;AAUK,mCAAmC,CACxCH,OACAC;IAEA,MAAM,EAAEC,YAAY,KAAK,EAAEQ,IAAI,EAAE,GAAGC,MAAM,GAAGX;QAUzBA;IARpB,OAAO;QACLY,YAAY;YACVH,MAAM;YACNC,MAAM;QACR;QACAD,MAAMZ,oBAAAA,CAAKgB,MAAM,KACfjB,wCAAAA,EAAyB,OAAO;YAC9BK;YACA,cAAcD,CAAAA,mBAAAA,KAAK,CAAC,aAAA,AAAa,MAAA,QAAnBA,qBAAAA,KAAAA,IAAAA,mBAAuB;YACrC,GAAGW,IAAI;QACT,IACA;YAAEG,aAAa;QAAM;QAEvBJ,MAAMb,oBAAAA,CAAKkB,QAAQ,CAACL,MAAM;YAAEM,iBAAiB;YAAMC,cAAc;gBAAEC,MAAM;YAAO;YAAGJ,aAAa;QAAK;IACvG;AACF,EAAE;AASK,2CAA2C,CAAC,EACjDZ,SAAS,EAC8B;IACvC,MAAMK,sBAAkBT,qCAAAA,EAAwB;QAC9CqB,UAAU;QACVC,MAAM;QACNC,iBAAiB;IACnB;IAEA,OAAOnB,cAAc,UAAUK,kBAAkB,CAAC;AACpD,EAAE"}
@@ -1,6 +1,4 @@
1
- /**
2
- * State used in rendering BreadcrumbButton
3
- */ "use strict";
1
+ "use strict";
4
2
  Object.defineProperty(exports, "__esModule", {
5
3
  value: true
6
4
  });
@@ -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":"AAoBA;;CAEC,GACD,WAE4D"}
1
+ {"version":3,"sources":["../src/components/BreadcrumbButton/BreadcrumbButton.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState } from '@fluentui/react-utilities';\nimport type { ButtonProps, ButtonSlots, ButtonState } from '@fluentui/react-button';\nimport type { 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, 'appearance' | 'size' | 'shape'>;\n"],"names":[],"mappings":""}
@@ -18,6 +18,9 @@ _export(exports, {
18
18
  renderBreadcrumbButton_unstable: function() {
19
19
  return _renderBreadcrumbButton.renderBreadcrumbButton_unstable;
20
20
  },
21
+ useBreadcrumbButtonBase_unstable: function() {
22
+ return _useBreadcrumbButton.useBreadcrumbButtonBase_unstable;
23
+ },
21
24
  useBreadcrumbButtonStyles_unstable: function() {
22
25
  return _useBreadcrumbButtonStylesstyles.useBreadcrumbButtonStyles_unstable;
23
26
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/BreadcrumbButton/index.ts"],"sourcesContent":["export { BreadcrumbButton } from './BreadcrumbButton';\nexport type { BreadcrumbButtonProps, BreadcrumbButtonSlots, BreadcrumbButtonState } from './BreadcrumbButton.types';\nexport { renderBreadcrumbButton_unstable } from './renderBreadcrumbButton';\nexport { useBreadcrumbButton_unstable } from './useBreadcrumbButton';\nexport { breadcrumbButtonClassNames, useBreadcrumbButtonStyles_unstable } from './useBreadcrumbButtonStyles.styles';\n"],"names":["BreadcrumbButton","renderBreadcrumbButton_unstable","useBreadcrumbButton_unstable","breadcrumbButtonClassNames","useBreadcrumbButtonStyles_unstable"],"mappings":";;;;;;;;;;;;eAASA,kCAAgB;;;eAIhBG,2DAA0B;;;eAF1BF,uDAA+B;;;eAEHG,mEAAkC;;;eAD9DF,iDAA4B;;;kCAHJ,qBAAqB;wCAEN,2BAA2B;qCAC9B,wBAAwB;iDACU,qCAAqC"}
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":";;;;;;;;;;;;eAASA,kCAAgB;;;eAUhBI,2DAA0B;;;eAF1BH,uDAA+B;;;eACDE,qDAAgC;;;eAClCE,mEAAkC;;;eAD9DH,iDAA4B;;;kCATJ,qBAAqB;wCAQN,2BAA2B;qCACI,wBAAwB;iDACxB,qCAAqC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/BreadcrumbButton/renderBreadcrumbButton.tsx"],"sourcesContent":["import type { BreadcrumbButtonState } from './BreadcrumbButton.types';\nimport type { JSXElement } from '@fluentui/react-utilities';\n\nimport { renderButton_unstable } from '@fluentui/react-button';\n\n/**\n * Render the final JSX of BreadcrumbButton\n */\nexport const renderBreadcrumbButton_unstable = (state: BreadcrumbButtonState): JSXElement => {\n return renderButton_unstable(state);\n};\n"],"names":["renderButton_unstable","renderBreadcrumbButton_unstable","state"],"mappings":";;;;;;;;;;6BAGsC,yBAAyB;AAKxD,MAAMC,kCAAkC,CAACC;IAC9C,WAAOF,kCAAAA,EAAsBE;AAC/B,EAAE"}
1
+ {"version":3,"sources":["../src/components/BreadcrumbButton/renderBreadcrumbButton.tsx"],"sourcesContent":["import type { BreadcrumbButtonBaseState } from './BreadcrumbButton.types';\nimport type { JSXElement } from '@fluentui/react-utilities';\n\nimport { renderButton_unstable } from '@fluentui/react-button';\n\n/**\n * Render the final JSX of BreadcrumbButton\n */\nexport const renderBreadcrumbButton_unstable = (state: BreadcrumbButtonBaseState): JSXElement => {\n return renderButton_unstable(state);\n};\n"],"names":["renderButton_unstable","renderBreadcrumbButton_unstable","state"],"mappings":";;;;;;;;;;6BAGsC,yBAAyB;AAKxD,MAAMC,kCAAkC,CAACC;IAC9C,WAAOF,kCAAAA,EAAsBE;AAC/B,EAAE"}
@@ -3,33 +3,47 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- Object.defineProperty(exports, "useBreadcrumbButton_unstable", {
7
- enumerable: true,
8
- get: function() {
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
13
+ useBreadcrumbButtonBase_unstable: function() {
14
+ return useBreadcrumbButtonBase_unstable;
15
+ },
16
+ useBreadcrumbButton_unstable: function() {
9
17
  return useBreadcrumbButton_unstable;
10
18
  }
11
19
  });
12
- const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
13
- const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
14
20
  const _reactbutton = require("@fluentui/react-button");
15
21
  const _BreadcrumbContext = require("../Breadcrumb/BreadcrumbContext");
16
22
  const useBreadcrumbButton_unstable = (props, ref)=>{
17
23
  const { size } = (0, _BreadcrumbContext.useBreadcrumbContext_unstable)();
24
+ const state = useBreadcrumbButtonBase_unstable(props, ref);
25
+ return {
26
+ appearance: 'subtle',
27
+ size,
28
+ shape: 'rounded',
29
+ ...state
30
+ };
31
+ };
32
+ const useBreadcrumbButtonBase_unstable = (props, ref)=>{
18
33
  const { current = false, as, ...rest } = props;
19
34
  const controlType = (as !== null && as !== void 0 ? as : props.href) ? 'a' : 'button';
20
35
  var _props_ariacurrent, _props_ariadisabled;
36
+ const buttonState = (0, _reactbutton.useButtonBase_unstable)({
37
+ role: undefined,
38
+ type: undefined,
39
+ as: controlType,
40
+ iconPosition: 'before',
41
+ 'aria-current': current ? (_props_ariacurrent = props['aria-current']) !== null && _props_ariacurrent !== void 0 ? _props_ariacurrent : 'page' : undefined,
42
+ 'aria-disabled': current ? (_props_ariadisabled = props['aria-disabled']) !== null && _props_ariadisabled !== void 0 ? _props_ariadisabled : true : undefined,
43
+ ...rest
44
+ }, ref);
21
45
  return {
22
- ...(0, _reactbutton.useButton_unstable)({
23
- appearance: 'subtle',
24
- role: undefined,
25
- type: undefined,
26
- as: controlType,
27
- iconPosition: 'before',
28
- 'aria-current': current ? (_props_ariacurrent = props['aria-current']) !== null && _props_ariacurrent !== void 0 ? _props_ariacurrent : 'page' : undefined,
29
- 'aria-disabled': current ? (_props_ariadisabled = props['aria-disabled']) !== null && _props_ariadisabled !== void 0 ? _props_ariadisabled : true : undefined,
30
- ...rest
31
- }, ref),
32
- current,
33
- size
46
+ ...buttonState,
47
+ current
34
48
  };
35
49
  };
@@ -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 { BreadcrumbButtonProps, BreadcrumbButtonState } 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 { current = false, as, ...rest } = props;\n\n const controlType = as ?? (props as ARIAButtonProps<'a'>).href ? 'a' : 'button';\n\n return {\n ...useButton_unstable(\n {\n appearance: 'subtle',\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 current,\n size,\n };\n};\n"],"names":["React","useButton_unstable","useBreadcrumbContext_unstable","useBreadcrumbButton_unstable","props","ref","size","current","as","rest","controlType","href","appearance","role","undefined","type","iconPosition"],"mappings":"AAAA;;;;;+BAkBaG;;;;;;;iEAhBU,QAAQ;6BAEI,yBAAyB;mCAEd,kCAAkC;AAYzE,qCAAqC,CAC1CC,OACAC;IAEA,MAAM,EAAEC,IAAI,EAAE,OAAGJ,gDAAAA;IACjB,MAAM,EAAEK,UAAU,KAAK,EAAEC,EAAE,EAAE,GAAGC,MAAM,GAAGL;IAEzC,MAAMM,cAAcF,CAAAA,OAAAA,QAAAA,OAAAA,KAAAA,IAAAA,KAAOJ,MAA+BO,IAAAA,AAAG,IAAI,MAAM;QAUvCP,oBACCA;IATjC,OAAO;QACL,OAAGH,+BAAAA,EACD;YACEW,YAAY;YACZC,MAAMC;YACNC,MAAMD;YACNN,IAAIE;YACJM,cAAc;YACd,gBAAgBT,UAAUH,CAAAA,qBAAAA,KAAK,CAAC,eAAA,AAAe,MAAA,QAArBA,uBAAAA,KAAAA,IAAAA,qBAAyB,SAASU;YAC5D,iBAAiBP,UAAUH,CAAAA,sBAAAA,KAAK,CAAC,gBAAA,AAAgB,MAAA,QAAtBA,wBAAAA,KAAAA,IAAAA,sBAA0B,OAAOU;YAC5D,GAAGL,IAAI;QACT,GACAJ,IACD;QACDE;QACAD;IACF;AACF,EAAE"}
1
+ {"version":3,"sources":["../src/components/BreadcrumbButton/useBreadcrumbButton.ts"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport type { ARIAButtonProps } from '@fluentui/react-aria';\nimport { useButtonBase_unstable } from '@fluentui/react-button';\nimport type { ButtonBaseProps } 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 appearance: 'subtle',\n size,\n shape: 'rounded',\n ...state,\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 buttonState = useButtonBase_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 ButtonBaseProps,\n ref,\n );\n\n return {\n ...buttonState,\n current,\n };\n};\n"],"names":["useButtonBase_unstable","useBreadcrumbContext_unstable","useBreadcrumbButton_unstable","props","ref","size","state","useBreadcrumbButtonBase_unstable","appearance","shape","current","as","rest","controlType","href","buttonState","role","undefined","type","iconPosition"],"mappings":"AAAA;;;;;;;;;;;;IA6CaO,gCAAAA;;;gCAtBAL;;;;6BAnB0B,yBAAyB;mCAElB,kCAAkC;AAiBzE,MAAMA,+BAA+B,CAC1CC,OACAC;IAEA,MAAM,EAAEC,IAAI,EAAE,OAAGJ,gDAAAA;IACjB,MAAMK,QAAQC,iCAAiCJ,OAAOC;IAEtD,OAAO;QACLI,YAAY;QACZH;QACAI,OAAO;QACP,GAAGH,KAAK;IACV;AACF,EAAE;AASK,yCAAyC,CAC9CH,OACAC;IAEA,MAAM,EAAEM,UAAU,KAAK,EAAEC,EAAE,EAAE,GAAGC,MAAM,GAAGT;IAEzC,MAAMU,cAAcF,CAAAA,OAAAA,QAAAA,OAAAA,KAAAA,IAAAA,KAAOR,MAA+BW,IAAAA,AAAG,IAAI,MAAM;QAQzCX,oBACCA;IAP/B,MAAMY,kBAAcf,mCAAAA,EAClB;QACEgB,MAAMC;QACNC,MAAMD;QACNN,IAAIE;QACJM,cAAc;QACd,gBAAgBT,UAAUP,CAAAA,qBAAAA,KAAK,CAAC,eAAA,AAAe,MAAA,QAArBA,uBAAAA,KAAAA,IAAAA,qBAAyB,SAASc;QAC5D,iBAAiBP,UAAUP,CAAAA,sBAAAA,KAAK,CAAC,gBAAA,AAAgB,MAAA,QAAtBA,wBAAAA,KAAAA,IAAAA,sBAA0B,OAAOc;QAC5D,GAAGL,IAAI;IACT,GACAR;IAGF,OAAO;QACL,GAAGW,WAAW;QACdL;IACF;AACF,EAAE"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * State used in rendering BreadcrumbDivider
2
+ * BreadcrumbDivider base state (excludes size, which is a design prop injected from context)
3
3
  */ "use strict";
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
@@ -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":"AAYA;;CAEC,GACD,WAA4G"}
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"}