@fluentui-copilot/react-reference 0.15.5 → 0.16.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 (226) hide show
  1. package/CHANGELOG.json +30 -1
  2. package/CHANGELOG.md +16 -2
  3. package/dist/index.d.ts +88 -290
  4. package/lib/Reference.js.map +1 -1
  5. package/lib/ReferenceList.js +1 -1
  6. package/lib/ReferenceList.js.map +1 -1
  7. package/lib/ReferenceOverflowButton.js +1 -1
  8. package/lib/ReferenceOverflowButton.js.map +1 -1
  9. package/lib/components/Citation/useCitationStyles.styles.js +3 -3
  10. package/lib/components/Citation/useCitationStyles.styles.js.map +1 -1
  11. package/lib/components/Reference/Reference.js +0 -3
  12. package/lib/components/Reference/Reference.js.map +1 -1
  13. package/lib/components/Reference/Reference.types.js +1 -1
  14. package/lib/components/Reference/Reference.types.js.map +1 -1
  15. package/lib/components/Reference/index.js.map +1 -1
  16. package/lib/components/Reference/renderReference.js +13 -8
  17. package/lib/components/Reference/renderReference.js.map +1 -1
  18. package/lib/components/Reference/useReference.js +46 -166
  19. package/lib/components/Reference/useReference.js.map +1 -1
  20. package/lib/components/Reference/useReferenceStyles.styles.js +40 -220
  21. package/lib/components/Reference/useReferenceStyles.styles.js.map +1 -1
  22. package/lib/components/ReferenceList/ReferenceList.js +4 -5
  23. package/lib/components/ReferenceList/ReferenceList.js.map +1 -1
  24. package/lib/components/ReferenceList/ReferenceList.types.js +1 -1
  25. package/lib/components/ReferenceList/ReferenceList.types.js.map +1 -1
  26. package/lib/components/ReferenceList/index.js +1 -1
  27. package/lib/components/ReferenceList/index.js.map +1 -1
  28. package/lib/components/ReferenceList/renderReferenceList.js +19 -5
  29. package/lib/components/ReferenceList/renderReferenceList.js.map +1 -1
  30. package/lib/components/ReferenceList/useReferenceList.js +76 -14
  31. package/lib/components/ReferenceList/useReferenceList.js.map +1 -1
  32. package/lib/components/ReferenceList/useReferenceListStyles.styles.js +31 -9
  33. package/lib/components/ReferenceList/useReferenceListStyles.styles.js.map +1 -1
  34. package/lib/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/useReferenceOverflowButton.js +1 -1
  35. package/lib/components/ReferenceOverflowButton/useReferenceOverflowButton.js.map +1 -0
  36. package/lib/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/useReferenceOverflowButtonStyles.styles.js +2 -2
  37. package/lib/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/useReferenceOverflowButtonStyles.styles.js.map +1 -1
  38. package/lib/contexts/referenceListContext.js.map +1 -0
  39. package/lib/index.js +31 -8
  40. package/lib/index.js.map +1 -1
  41. package/lib/utilities/{reference-v2/generateReferenceCitationPreview.js → generateReferenceCitationPreview.js} +2 -2
  42. package/lib/utilities/generateReferenceCitationPreview.js.map +1 -0
  43. package/lib/utilities/index.js +1 -1
  44. package/lib/utilities/index.js.map +1 -1
  45. package/lib/utilities/useReferenceCitationPreview.js +12 -123
  46. package/lib/utilities/useReferenceCitationPreview.js.map +1 -1
  47. package/lib-commonjs/Reference.js.map +1 -1
  48. package/lib-commonjs/ReferenceList.js +0 -3
  49. package/lib-commonjs/ReferenceList.js.map +1 -1
  50. package/lib-commonjs/ReferenceOverflowButton.js +1 -1
  51. package/lib-commonjs/ReferenceOverflowButton.js.map +1 -1
  52. package/lib-commonjs/components/Citation/useCitationStyles.styles.js +7 -7
  53. package/lib-commonjs/components/Citation/useCitationStyles.styles.js.map +1 -1
  54. package/lib-commonjs/components/Reference/Reference.js +0 -2
  55. package/lib-commonjs/components/Reference/Reference.js.map +1 -1
  56. package/lib-commonjs/components/Reference/Reference.types.js +1 -1
  57. package/lib-commonjs/components/Reference/Reference.types.js.map +1 -1
  58. package/lib-commonjs/components/Reference/index.js.map +1 -1
  59. package/lib-commonjs/components/Reference/renderReference.js +11 -18
  60. package/lib-commonjs/components/Reference/renderReference.js.map +1 -1
  61. package/lib-commonjs/components/Reference/useReference.js +42 -167
  62. package/lib-commonjs/components/Reference/useReference.js.map +1 -1
  63. package/lib-commonjs/components/Reference/useReferenceStyles.styles.js +56 -324
  64. package/lib-commonjs/components/Reference/useReferenceStyles.styles.js.map +1 -1
  65. package/lib-commonjs/components/ReferenceList/ReferenceList.js +4 -4
  66. package/lib-commonjs/components/ReferenceList/ReferenceList.js.map +1 -1
  67. package/lib-commonjs/components/ReferenceList/ReferenceList.types.js +1 -1
  68. package/lib-commonjs/components/ReferenceList/ReferenceList.types.js.map +1 -1
  69. package/lib-commonjs/components/ReferenceList/index.js +0 -3
  70. package/lib-commonjs/components/ReferenceList/index.js.map +1 -1
  71. package/lib-commonjs/components/ReferenceList/renderReferenceList.js +16 -2
  72. package/lib-commonjs/components/ReferenceList/renderReferenceList.js.map +1 -1
  73. package/lib-commonjs/components/ReferenceList/useReferenceList.js +67 -11
  74. package/lib-commonjs/components/ReferenceList/useReferenceList.js.map +1 -1
  75. package/lib-commonjs/components/ReferenceList/useReferenceListStyles.styles.js +34 -9
  76. package/lib-commonjs/components/ReferenceList/useReferenceListStyles.styles.js.map +1 -1
  77. package/lib-commonjs/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/useReferenceOverflowButton.js +1 -1
  78. package/lib-commonjs/components/ReferenceOverflowButton/useReferenceOverflowButton.js.map +1 -0
  79. package/lib-commonjs/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/useReferenceOverflowButtonStyles.styles.js.map +1 -1
  80. package/lib-commonjs/contexts/referenceListContext.js.map +1 -0
  81. package/lib-commonjs/index.js +33 -40
  82. package/lib-commonjs/index.js.map +1 -1
  83. package/lib-commonjs/utilities/{reference-v2/generateReferenceCitationPreview.js → generateReferenceCitationPreview.js} +3 -3
  84. package/lib-commonjs/utilities/generateReferenceCitationPreview.js.map +1 -0
  85. package/lib-commonjs/utilities/index.js +4 -4
  86. package/lib-commonjs/utilities/index.js.map +1 -1
  87. package/lib-commonjs/utilities/useReferenceCitationPreview.js +4 -129
  88. package/lib-commonjs/utilities/useReferenceCitationPreview.js.map +1 -1
  89. package/package.json +4 -4
  90. package/lib/ReferenceGroupToggle.js +0 -2
  91. package/lib/ReferenceGroupToggle.js.map +0 -1
  92. package/lib/ReferenceListV2.js +0 -2
  93. package/lib/ReferenceListV2.js.map +0 -1
  94. package/lib/ReferenceV2.js +0 -2
  95. package/lib/ReferenceV2.js.map +0 -1
  96. package/lib/components/ReferenceGroupToggle/ReferenceGroupToggle.js +0 -12
  97. package/lib/components/ReferenceGroupToggle/ReferenceGroupToggle.js.map +0 -1
  98. package/lib/components/ReferenceGroupToggle/ReferenceGroupToggle.types.js +0 -4
  99. package/lib/components/ReferenceGroupToggle/ReferenceGroupToggle.types.js.map +0 -1
  100. package/lib/components/ReferenceGroupToggle/index.js +0 -5
  101. package/lib/components/ReferenceGroupToggle/index.js.map +0 -1
  102. package/lib/components/ReferenceGroupToggle/renderReferenceGroupToggle.js +0 -12
  103. package/lib/components/ReferenceGroupToggle/renderReferenceGroupToggle.js.map +0 -1
  104. package/lib/components/ReferenceGroupToggle/useReferenceGroupToggle.js +0 -43
  105. package/lib/components/ReferenceGroupToggle/useReferenceGroupToggle.js.map +0 -1
  106. package/lib/components/ReferenceGroupToggle/useReferenceGroupToggleStyles.styles.js +0 -43
  107. package/lib/components/ReferenceGroupToggle/useReferenceGroupToggleStyles.styles.js.map +0 -1
  108. package/lib/components/reference-v2/Reference/Reference.js +0 -11
  109. package/lib/components/reference-v2/Reference/Reference.js.map +0 -1
  110. package/lib/components/reference-v2/Reference/Reference.types.js +0 -2
  111. package/lib/components/reference-v2/Reference/Reference.types.js.map +0 -1
  112. package/lib/components/reference-v2/Reference/index.js +0 -5
  113. package/lib/components/reference-v2/Reference/index.js.map +0 -1
  114. package/lib/components/reference-v2/Reference/renderReference.js +0 -19
  115. package/lib/components/reference-v2/Reference/renderReference.js.map +0 -1
  116. package/lib/components/reference-v2/Reference/useReference.js +0 -74
  117. package/lib/components/reference-v2/Reference/useReference.js.map +0 -1
  118. package/lib/components/reference-v2/Reference/useReferenceStyles.styles.js +0 -70
  119. package/lib/components/reference-v2/Reference/useReferenceStyles.styles.js.map +0 -1
  120. package/lib/components/reference-v2/ReferenceList/ReferenceList.js +0 -13
  121. package/lib/components/reference-v2/ReferenceList/ReferenceList.js.map +0 -1
  122. package/lib/components/reference-v2/ReferenceList/ReferenceList.types.js +0 -2
  123. package/lib/components/reference-v2/ReferenceList/ReferenceList.types.js.map +0 -1
  124. package/lib/components/reference-v2/ReferenceList/index.js +0 -5
  125. package/lib/components/reference-v2/ReferenceList/index.js.map +0 -1
  126. package/lib/components/reference-v2/ReferenceList/renderReferenceList.js +0 -22
  127. package/lib/components/reference-v2/ReferenceList/renderReferenceList.js.map +0 -1
  128. package/lib/components/reference-v2/ReferenceList/useReferenceList.js +0 -93
  129. package/lib/components/reference-v2/ReferenceList/useReferenceList.js.map +0 -1
  130. package/lib/components/reference-v2/ReferenceList/useReferenceListStyles.styles.js +0 -46
  131. package/lib/components/reference-v2/ReferenceList/useReferenceListStyles.styles.js.map +0 -1
  132. package/lib/components/reference-v2/ReferenceOverflowButton/useReferenceOverflowButton.js.map +0 -1
  133. package/lib/components/reference-v2/index.js +0 -4
  134. package/lib/components/reference-v2/index.js.map +0 -1
  135. package/lib/contexts/ReferenceGroupContext.js +0 -11
  136. package/lib/contexts/ReferenceGroupContext.js.map +0 -1
  137. package/lib/contexts/reference-v2/referenceListContext.js.map +0 -1
  138. package/lib/utilities/reference-v2/generateReferenceCitationPreview.js.map +0 -1
  139. package/lib/utilities/reference-v2/index.js +0 -3
  140. package/lib/utilities/reference-v2/index.js.map +0 -1
  141. package/lib/utilities/reference-v2/useReferenceCitationPreview.js +0 -18
  142. package/lib/utilities/reference-v2/useReferenceCitationPreview.js.map +0 -1
  143. package/lib/utilities/useReferenceGroup.js +0 -40
  144. package/lib/utilities/useReferenceGroup.js.map +0 -1
  145. package/lib-commonjs/ReferenceGroupToggle.js +0 -29
  146. package/lib-commonjs/ReferenceGroupToggle.js.map +0 -1
  147. package/lib-commonjs/ReferenceListV2.js +0 -29
  148. package/lib-commonjs/ReferenceListV2.js.map +0 -1
  149. package/lib-commonjs/ReferenceV2.js +0 -32
  150. package/lib-commonjs/ReferenceV2.js.map +0 -1
  151. package/lib-commonjs/components/ReferenceGroupToggle/ReferenceGroupToggle.js +0 -21
  152. package/lib-commonjs/components/ReferenceGroupToggle/ReferenceGroupToggle.js.map +0 -1
  153. package/lib-commonjs/components/ReferenceGroupToggle/ReferenceGroupToggle.types.js +0 -7
  154. package/lib-commonjs/components/ReferenceGroupToggle/ReferenceGroupToggle.types.js.map +0 -1
  155. package/lib-commonjs/components/ReferenceGroupToggle/index.js +0 -32
  156. package/lib-commonjs/components/ReferenceGroupToggle/index.js.map +0 -1
  157. package/lib-commonjs/components/ReferenceGroupToggle/renderReferenceGroupToggle.js +0 -21
  158. package/lib-commonjs/components/ReferenceGroupToggle/renderReferenceGroupToggle.js.map +0 -1
  159. package/lib-commonjs/components/ReferenceGroupToggle/useReferenceGroupToggle.js +0 -42
  160. package/lib-commonjs/components/ReferenceGroupToggle/useReferenceGroupToggle.js.map +0 -1
  161. package/lib-commonjs/components/ReferenceGroupToggle/useReferenceGroupToggleStyles.styles.js +0 -64
  162. package/lib-commonjs/components/ReferenceGroupToggle/useReferenceGroupToggleStyles.styles.js.map +0 -1
  163. package/lib-commonjs/components/reference-v2/Reference/Reference.js +0 -21
  164. package/lib-commonjs/components/reference-v2/Reference/Reference.js.map +0 -1
  165. package/lib-commonjs/components/reference-v2/Reference/Reference.types.js +0 -5
  166. package/lib-commonjs/components/reference-v2/Reference/Reference.types.js.map +0 -1
  167. package/lib-commonjs/components/reference-v2/Reference/index.js +0 -35
  168. package/lib-commonjs/components/reference-v2/Reference/index.js.map +0 -1
  169. package/lib-commonjs/components/reference-v2/Reference/renderReference.js +0 -32
  170. package/lib-commonjs/components/reference-v2/Reference/renderReference.js.map +0 -1
  171. package/lib-commonjs/components/reference-v2/Reference/useReference.js +0 -71
  172. package/lib-commonjs/components/reference-v2/Reference/useReference.js.map +0 -1
  173. package/lib-commonjs/components/reference-v2/Reference/useReferenceStyles.styles.js +0 -109
  174. package/lib-commonjs/components/reference-v2/Reference/useReferenceStyles.styles.js.map +0 -1
  175. package/lib-commonjs/components/reference-v2/ReferenceList/ReferenceList.js +0 -23
  176. package/lib-commonjs/components/reference-v2/ReferenceList/ReferenceList.js.map +0 -1
  177. package/lib-commonjs/components/reference-v2/ReferenceList/ReferenceList.types.js +0 -5
  178. package/lib-commonjs/components/reference-v2/ReferenceList/ReferenceList.types.js.map +0 -1
  179. package/lib-commonjs/components/reference-v2/ReferenceList/index.js +0 -32
  180. package/lib-commonjs/components/reference-v2/ReferenceList/index.js.map +0 -1
  181. package/lib-commonjs/components/reference-v2/ReferenceList/renderReferenceList.js +0 -30
  182. package/lib-commonjs/components/reference-v2/ReferenceList/renderReferenceList.js.map +0 -1
  183. package/lib-commonjs/components/reference-v2/ReferenceList/useReferenceList.js +0 -86
  184. package/lib-commonjs/components/reference-v2/ReferenceList/useReferenceList.js.map +0 -1
  185. package/lib-commonjs/components/reference-v2/ReferenceList/useReferenceListStyles.styles.js +0 -62
  186. package/lib-commonjs/components/reference-v2/ReferenceList/useReferenceListStyles.styles.js.map +0 -1
  187. package/lib-commonjs/components/reference-v2/ReferenceOverflowButton/useReferenceOverflowButton.js.map +0 -1
  188. package/lib-commonjs/components/reference-v2/index.js +0 -64
  189. package/lib-commonjs/components/reference-v2/index.js.map +0 -1
  190. package/lib-commonjs/contexts/ReferenceGroupContext.js +0 -29
  191. package/lib-commonjs/contexts/ReferenceGroupContext.js.map +0 -1
  192. package/lib-commonjs/contexts/reference-v2/referenceListContext.js.map +0 -1
  193. package/lib-commonjs/utilities/reference-v2/generateReferenceCitationPreview.js.map +0 -1
  194. package/lib-commonjs/utilities/reference-v2/index.js +0 -21
  195. package/lib-commonjs/utilities/reference-v2/index.js.map +0 -1
  196. package/lib-commonjs/utilities/reference-v2/useReferenceCitationPreview.js +0 -18
  197. package/lib-commonjs/utilities/reference-v2/useReferenceCitationPreview.js.map +0 -1
  198. package/lib-commonjs/utilities/useReferenceGroup.js +0 -49
  199. package/lib-commonjs/utilities/useReferenceGroup.js.map +0 -1
  200. /package/lib/components/{reference-v2/ReferenceList → ReferenceList}/useReferenceListContextValues.js +0 -0
  201. /package/lib/components/{reference-v2/ReferenceList → ReferenceList}/useReferenceListContextValues.js.map +0 -0
  202. /package/lib/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/ReferenceOverflowButton.js +0 -0
  203. /package/lib/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/ReferenceOverflowButton.js.map +0 -0
  204. /package/lib/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/ReferenceOverflowButton.types.js +0 -0
  205. /package/lib/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/ReferenceOverflowButton.types.js.map +0 -0
  206. /package/lib/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/index.js +0 -0
  207. /package/lib/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/index.js.map +0 -0
  208. /package/lib/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/renderReferenceOverflowButton.js +0 -0
  209. /package/lib/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/renderReferenceOverflowButton.js.map +0 -0
  210. /package/lib/contexts/{reference-v2/index.js → index.js} +0 -0
  211. /package/lib/contexts/{reference-v2/index.js.map → index.js.map} +0 -0
  212. /package/lib/contexts/{reference-v2/referenceListContext.js → referenceListContext.js} +0 -0
  213. /package/lib-commonjs/components/{reference-v2/ReferenceList → ReferenceList}/useReferenceListContextValues.js +0 -0
  214. /package/lib-commonjs/components/{reference-v2/ReferenceList → ReferenceList}/useReferenceListContextValues.js.map +0 -0
  215. /package/lib-commonjs/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/ReferenceOverflowButton.js +0 -0
  216. /package/lib-commonjs/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/ReferenceOverflowButton.js.map +0 -0
  217. /package/lib-commonjs/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/ReferenceOverflowButton.types.js +0 -0
  218. /package/lib-commonjs/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/ReferenceOverflowButton.types.js.map +0 -0
  219. /package/lib-commonjs/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/index.js +0 -0
  220. /package/lib-commonjs/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/index.js.map +0 -0
  221. /package/lib-commonjs/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/renderReferenceOverflowButton.js +0 -0
  222. /package/lib-commonjs/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/renderReferenceOverflowButton.js.map +0 -0
  223. /package/lib-commonjs/components/{reference-v2/ReferenceOverflowButton → ReferenceOverflowButton}/useReferenceOverflowButtonStyles.styles.js +0 -0
  224. /package/lib-commonjs/contexts/{reference-v2/index.js → index.js} +0 -0
  225. /package/lib-commonjs/contexts/{reference-v2/index.js.map → index.js.map} +0 -0
  226. /package/lib-commonjs/contexts/{reference-v2/referenceListContext.js → referenceListContext.js} +0 -0
@@ -1,9 +1,9 @@
1
- import { __resetStyles, __styles, mergeClasses, shorthands, typographyStyles } from '@fluentui/react-components';
2
- import { tokens } from '@fluentui-copilot/tokens';
1
+ import { __resetStyles, __styles, mergeClasses, shorthands } from '@fluentui/react-components';
2
+ import { tokens, typographyStyles } from '@fluentui-copilot/tokens';
3
3
  export const citationClassNames = {
4
4
  root: 'fai-Citation'
5
5
  };
6
- const useCitationBaseClassName = __resetStyles("rf7wmfm", "r9ecysy", [".rf7wmfm{display:inline-flex;justify-content:center;box-sizing:border-box;align-items:center;cursor:pointer;font-family:var(--fontFamilyBase);font-size:var(--fontSizeBase100);font-weight:var(--fontWeightSemibold);line-height:var(--lineHeightBase100);background-color:var(--colorNeutralBackground3);border:var(--strokeWidthThin) solid var(--colorNeutralStroke2);color:var(--colorNeutralForeground2);min-width:14px;height:14px;vertical-align:calc((var(--lineHeightBase100) - var(--fontSizeBase100)) / 2);padding-inline:var(--spacingHorizontalXXS);border-radius:var(--borderRadiusMedium);text-decoration:none;margin-left:var(--spacingHorizontalXXS);margin-right:var(--spacingHorizontalXXS);}", ".rf7wmfm:hover{cursor:pointer;color:var(--colorBrandForeground2Hover);border-color:var(--colorBrandStroke2Hover);background-color:var(--colorBrandBackground2Hover);}", ".rf7wmfm:hover:active{cursor:pointer;color:var(--colorBrandForeground2Pressed);border-color:var(--colorBrandStroke2Pressed);background-color:var(--colorBrandBackground2Pressed);}", ".r9ecysy{display:inline-flex;justify-content:center;box-sizing:border-box;align-items:center;cursor:pointer;font-family:var(--fontFamilyBase);font-size:var(--fontSizeBase100);font-weight:var(--fontWeightSemibold);line-height:var(--lineHeightBase100);background-color:var(--colorNeutralBackground3);border:var(--strokeWidthThin) solid var(--colorNeutralStroke2);color:var(--colorNeutralForeground2);min-width:14px;height:14px;vertical-align:calc((var(--lineHeightBase100) - var(--fontSizeBase100)) / 2);padding-inline:var(--spacingHorizontalXXS);border-radius:var(--borderRadiusMedium);text-decoration:none;margin-right:var(--spacingHorizontalXXS);margin-left:var(--spacingHorizontalXXS);}", ".r9ecysy:hover{cursor:pointer;color:var(--colorBrandForeground2Hover);border-color:var(--colorBrandStroke2Hover);background-color:var(--colorBrandBackground2Hover);}", ".r9ecysy:hover:active{cursor:pointer;color:var(--colorBrandForeground2Pressed);border-color:var(--colorBrandStroke2Pressed);background-color:var(--colorBrandBackground2Pressed);}"]);
6
+ const useCitationBaseClassName = __resetStyles("r1jm3di4", "r6zn0t3", [".r1jm3di4{display:inline-flex;justify-content:center;box-sizing:border-box;align-items:center;cursor:pointer;font-family:var(--fontFamilyBase);font-size:var(--fontSizeBase100);font-weight:var(--fontWeightBold);line-height:var(--lineHeightBase200);background-color:var(--colorNeutralBackground3);border:var(--strokeWidthThin) solid var(--colorNeutralStroke2);color:var(--colorNeutralForeground2);min-width:14px;height:14px;vertical-align:calc((var(--lineHeightBase200) - var(--fontSizeBase100)) / 2);padding-inline:var(--spacingHorizontalXXS);border-radius:var(--borderRadiusMedium);text-decoration:none;margin-left:var(--spacingHorizontalXXS);margin-right:var(--spacingHorizontalXXS);}", ".r1jm3di4:hover{cursor:pointer;color:var(--colorBrandForeground2Hover);border-color:var(--colorBrandStroke2Hover);background-color:var(--colorBrandBackground2Hover);}", ".r1jm3di4:hover:active{cursor:pointer;color:var(--colorBrandForeground2Pressed);border-color:var(--colorBrandStroke2Pressed);background-color:var(--colorBrandBackground2Pressed);}", ".r6zn0t3{display:inline-flex;justify-content:center;box-sizing:border-box;align-items:center;cursor:pointer;font-family:var(--fontFamilyBase);font-size:var(--fontSizeBase100);font-weight:var(--fontWeightBold);line-height:var(--lineHeightBase200);background-color:var(--colorNeutralBackground3);border:var(--strokeWidthThin) solid var(--colorNeutralStroke2);color:var(--colorNeutralForeground2);min-width:14px;height:14px;vertical-align:calc((var(--lineHeightBase200) - var(--fontSizeBase100)) / 2);padding-inline:var(--spacingHorizontalXXS);border-radius:var(--borderRadiusMedium);text-decoration:none;margin-right:var(--spacingHorizontalXXS);margin-left:var(--spacingHorizontalXXS);}", ".r6zn0t3:hover{cursor:pointer;color:var(--colorBrandForeground2Hover);border-color:var(--colorBrandStroke2Hover);background-color:var(--colorBrandBackground2Hover);}", ".r6zn0t3:hover:active{cursor:pointer;color:var(--colorBrandForeground2Pressed);border-color:var(--colorBrandStroke2Pressed);background-color:var(--colorBrandBackground2Pressed);}"]);
7
7
  const useCitationRootStyles = __styles({
8
8
  isBlock: {
9
9
  mc9l5x: "f22iagw",
@@ -1 +1 @@
1
- {"version":3,"sources":["useCitationStyles.styles.ts"],"sourcesContent":["import { makeResetStyles, makeStyles, mergeClasses, shorthands, typographyStyles } from '@fluentui/react-components';\nimport { tokens } from '@fluentui-copilot/tokens';\nimport type { CitationSlots, CitationState } from './Citation.types';\nimport type { SlotClassNames } from '@fluentui/react-components';\n\nexport const citationClassNames: SlotClassNames<CitationSlots> = {\n root: 'fai-Citation',\n};\n\nconst useCitationBaseClassName = makeResetStyles({\n display: 'inline-flex',\n justifyContent: 'center',\n boxSizing: 'border-box',\n alignItems: 'center',\n cursor: 'pointer',\n ...typographyStyles.caption2Strong,\n\n backgroundColor: tokens.colorNeutralBackground3,\n border: `${tokens.strokeWidthThin} solid ${tokens.colorNeutralStroke2}`,\n color: tokens.colorNeutralForeground2,\n\n minWidth: '14px',\n height: '14px',\n verticalAlign: `calc((${typographyStyles.caption2Strong.lineHeight} - ${typographyStyles.caption2Strong.fontSize}) / 2)`,\n paddingInline: tokens.spacingHorizontalXXS,\n\n borderRadius: tokens.borderRadiusMedium,\n\n textDecoration: 'none',\n\n marginLeft: tokens.spacingHorizontalXXS,\n marginRight: tokens.spacingHorizontalXXS,\n\n ':hover': {\n cursor: 'pointer',\n color: tokens.colorBrandForeground2Hover,\n borderColor: tokens.colorBrandStroke2Hover,\n backgroundColor: tokens.colorBrandBackground2Hover,\n },\n\n ':hover:active': {\n cursor: 'pointer',\n color: tokens.colorBrandForeground2Pressed,\n borderColor: tokens.colorBrandStroke2Pressed,\n backgroundColor: tokens.colorBrandBackground2Pressed,\n },\n});\n\nconst useCitationRootStyles = makeStyles({\n isBlock: {\n display: 'flex',\n marginLeft: 0,\n marginRight: 0,\n },\n isPopoverLocked: {\n color: tokens.colorBrandForeground2Pressed,\n ...shorthands.borderColor(tokens.colorBrandStroke2Pressed),\n backgroundColor: tokens.colorBrandBackground2,\n ':hover': {\n color: tokens.colorBrandForeground2Pressed,\n ...shorthands.borderColor(tokens.colorBrandStroke2Pressed),\n backgroundColor: tokens.colorBrandBackground2,\n },\n },\n});\n\nconst useNextStyles = makeStyles({ root: { borderRadius: tokens.borderRadiusXLarge } });\n\n/**\n * Apply styling to the Citation slots based on the state\n */\nexport const useCitationStyles_unstable = (state: CitationState): CitationState => {\n 'use no memo';\n\n const { designVersion } = state;\n\n const rootBaseClassName = useCitationBaseClassName();\n const rootStyles = useCitationRootStyles();\n const nextStyles = useNextStyles();\n\n state.root.className = mergeClasses(\n citationClassNames.root,\n state.isPopoverLocked && rootStyles.isPopoverLocked,\n state.block && rootStyles.isBlock,\n rootBaseClassName,\n designVersion === 'next' && nextStyles.root,\n state.root.className,\n );\n\n return state;\n};\n"],"names":["makeResetStyles","makeStyles","mergeClasses","shorthands","typographyStyles","tokens","citationClassNames","root","useCitationBaseClassName","display","justifyContent","boxSizing","alignItems","cursor","caption2Strong","backgroundColor","colorNeutralBackground3","border","strokeWidthThin","colorNeutralStroke2","color","colorNeutralForeground2","minWidth","height","verticalAlign","lineHeight","fontSize","paddingInline","spacingHorizontalXXS","borderRadius","borderRadiusMedium","textDecoration","marginLeft","marginRight","colorBrandForeground2Hover","borderColor","colorBrandStroke2Hover","colorBrandBackground2Hover","colorBrandForeground2Pressed","colorBrandStroke2Pressed","colorBrandBackground2Pressed","useCitationRootStyles","isBlock","isPopoverLocked","colorBrandBackground2","useNextStyles","borderRadiusXLarge","useCitationStyles_unstable","state","designVersion","rootBaseClassName","rootStyles","nextStyles","className","block"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,eAAe,EAAEC,UAAU,EAAEC,YAAY,EAAEC,UAAU,EAAEC,gBAAgB,QAAQ,6BAA6B;AACrH,SAASC,MAAM,QAAQ,2BAA2B;AAIlD,OAAO,MAAMC,qBAAoD;IAC/DC,MAAM;AACR,EAAE;AAEF,MAAMC,2BAA2BR,gBAAgB;IAC/CS,SAAS;IACTC,gBAAgB;IAChBC,WAAW;IACXC,YAAY;IACZC,QAAQ;IACR,GAAGT,iBAAiBU,cAAc;IAElCC,iBAAiBV,OAAOW,uBAAuB;IAC/CC,QAAQ,CAAC,EAAEZ,OAAOa,eAAe,CAAC,OAAO,EAAEb,OAAOc,mBAAmB,CAAC,CAAC;IACvEC,OAAOf,OAAOgB,uBAAuB;IAErCC,UAAU;IACVC,QAAQ;IACRC,eAAe,CAAC,MAAM,EAAEpB,iBAAiBU,cAAc,CAACW,UAAU,CAAC,GAAG,EAAErB,iBAAiBU,cAAc,CAACY,QAAQ,CAAC,MAAM,CAAC;IACxHC,eAAetB,OAAOuB,oBAAoB;IAE1CC,cAAcxB,OAAOyB,kBAAkB;IAEvCC,gBAAgB;IAEhBC,YAAY3B,OAAOuB,oBAAoB;IACvCK,aAAa5B,OAAOuB,oBAAoB;IAExC,UAAU;QACRf,QAAQ;QACRO,OAAOf,OAAO6B,0BAA0B;QACxCC,aAAa9B,OAAO+B,sBAAsB;QAC1CrB,iBAAiBV,OAAOgC,0BAA0B;IACpD;IAEA,iBAAiB;QACfxB,QAAQ;QACRO,OAAOf,OAAOiC,4BAA4B;QAC1CH,aAAa9B,OAAOkC,wBAAwB;QAC5CxB,iBAAiBV,OAAOmC,4BAA4B;IACtD;AACF;AAEA,MAAMC,wBAAwBxC,WAAW;IACvCyC,SAAS;QACPjC,SAAS;QACTuB,YAAY;QACZC,aAAa;IACf;IACAU,iBAAiB;QACfvB,OAAOf,OAAOiC,4BAA4B;QAC1C,GAAGnC,WAAWgC,WAAW,CAAC9B,OAAOkC,wBAAwB,CAAC;QAC1DxB,iBAAiBV,OAAOuC,qBAAqB;QAC7C,UAAU;YACRxB,OAAOf,OAAOiC,4BAA4B;YAC1C,GAAGnC,WAAWgC,WAAW,CAAC9B,OAAOkC,wBAAwB,CAAC;YAC1DxB,iBAAiBV,OAAOuC,qBAAqB;QAC/C;IACF;AACF;AAEA,MAAMC,gBAAgB5C,WAAW;IAAEM,MAAM;QAAEsB,cAAcxB,OAAOyC,kBAAkB;IAAC;AAAE;AAErF;;CAEC,GACD,OAAO,MAAMC,6BAA6B,CAACC;IACzC;IAEA,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAE1B,MAAME,oBAAoB1C;IAC1B,MAAM2C,aAAaV;IACnB,MAAMW,aAAaP;IAEnBG,MAAMzC,IAAI,CAAC8C,SAAS,GAAGnD,aACrBI,mBAAmBC,IAAI,EACvByC,MAAML,eAAe,IAAIQ,WAAWR,eAAe,EACnDK,MAAMM,KAAK,IAAIH,WAAWT,OAAO,EACjCQ,mBACAD,kBAAkB,UAAUG,WAAW7C,IAAI,EAC3CyC,MAAMzC,IAAI,CAAC8C,SAAS;IAGtB,OAAOL;AACT,EAAE"}
1
+ {"version":3,"sources":["useCitationStyles.styles.ts"],"sourcesContent":["import { makeResetStyles, makeStyles, mergeClasses, shorthands } from '@fluentui/react-components';\nimport { tokens, typographyStyles } from '@fluentui-copilot/tokens';\nimport type { CitationSlots, CitationState } from './Citation.types';\nimport type { SlotClassNames } from '@fluentui/react-components';\n\nexport const citationClassNames: SlotClassNames<CitationSlots> = {\n root: 'fai-Citation',\n};\n\nconst useCitationBaseClassName = makeResetStyles({\n display: 'inline-flex',\n justifyContent: 'center',\n boxSizing: 'border-box',\n alignItems: 'center',\n cursor: 'pointer',\n ...typographyStyles.caption2Strong,\n\n backgroundColor: tokens.colorNeutralBackground3,\n border: `${tokens.strokeWidthThin} solid ${tokens.colorNeutralStroke2}`,\n color: tokens.colorNeutralForeground2,\n\n minWidth: '14px',\n height: '14px',\n verticalAlign: `calc((${typographyStyles.caption2Strong.lineHeight} - ${typographyStyles.caption2Strong.fontSize}) / 2)`,\n paddingInline: tokens.spacingHorizontalXXS,\n\n borderRadius: tokens.borderRadiusMedium,\n\n textDecoration: 'none',\n\n marginLeft: tokens.spacingHorizontalXXS,\n marginRight: tokens.spacingHorizontalXXS,\n\n ':hover': {\n cursor: 'pointer',\n color: tokens.colorBrandForeground2Hover,\n borderColor: tokens.colorBrandStroke2Hover,\n backgroundColor: tokens.colorBrandBackground2Hover,\n },\n\n ':hover:active': {\n cursor: 'pointer',\n color: tokens.colorBrandForeground2Pressed,\n borderColor: tokens.colorBrandStroke2Pressed,\n backgroundColor: tokens.colorBrandBackground2Pressed,\n },\n});\n\nconst useCitationRootStyles = makeStyles({\n isBlock: {\n display: 'flex',\n marginLeft: 0,\n marginRight: 0,\n },\n isPopoverLocked: {\n color: tokens.colorBrandForeground2Pressed,\n ...shorthands.borderColor(tokens.colorBrandStroke2Pressed),\n backgroundColor: tokens.colorBrandBackground2,\n ':hover': {\n color: tokens.colorBrandForeground2Pressed,\n ...shorthands.borderColor(tokens.colorBrandStroke2Pressed),\n backgroundColor: tokens.colorBrandBackground2,\n },\n },\n});\n\nconst useNextStyles = makeStyles({ root: { borderRadius: tokens.borderRadiusXLarge } });\n\n/**\n * Apply styling to the Citation slots based on the state\n */\nexport const useCitationStyles_unstable = (state: CitationState): CitationState => {\n 'use no memo';\n\n const { designVersion } = state;\n\n const rootBaseClassName = useCitationBaseClassName();\n const rootStyles = useCitationRootStyles();\n const nextStyles = useNextStyles();\n\n state.root.className = mergeClasses(\n citationClassNames.root,\n state.isPopoverLocked && rootStyles.isPopoverLocked,\n state.block && rootStyles.isBlock,\n rootBaseClassName,\n designVersion === 'next' && nextStyles.root,\n state.root.className,\n );\n\n return state;\n};\n"],"names":["makeResetStyles","makeStyles","mergeClasses","shorthands","tokens","typographyStyles","citationClassNames","root","useCitationBaseClassName","display","justifyContent","boxSizing","alignItems","cursor","caption2Strong","backgroundColor","colorNeutralBackground3","border","strokeWidthThin","colorNeutralStroke2","color","colorNeutralForeground2","minWidth","height","verticalAlign","lineHeight","fontSize","paddingInline","spacingHorizontalXXS","borderRadius","borderRadiusMedium","textDecoration","marginLeft","marginRight","colorBrandForeground2Hover","borderColor","colorBrandStroke2Hover","colorBrandBackground2Hover","colorBrandForeground2Pressed","colorBrandStroke2Pressed","colorBrandBackground2Pressed","useCitationRootStyles","isBlock","isPopoverLocked","colorBrandBackground2","useNextStyles","borderRadiusXLarge","useCitationStyles_unstable","state","designVersion","rootBaseClassName","rootStyles","nextStyles","className","block"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,eAAe,EAAEC,UAAU,EAAEC,YAAY,EAAEC,UAAU,QAAQ,6BAA6B;AACnG,SAASC,MAAM,EAAEC,gBAAgB,QAAQ,2BAA2B;AAIpE,OAAO,MAAMC,qBAAoD;IAC/DC,MAAM;AACR,EAAE;AAEF,MAAMC,2BAA2BR,gBAAgB;IAC/CS,SAAS;IACTC,gBAAgB;IAChBC,WAAW;IACXC,YAAY;IACZC,QAAQ;IACR,GAAGR,iBAAiBS,cAAc;IAElCC,iBAAiBX,OAAOY,uBAAuB;IAC/CC,QAAQ,CAAC,EAAEb,OAAOc,eAAe,CAAC,OAAO,EAAEd,OAAOe,mBAAmB,CAAC,CAAC;IACvEC,OAAOhB,OAAOiB,uBAAuB;IAErCC,UAAU;IACVC,QAAQ;IACRC,eAAe,CAAC,MAAM,EAAEnB,iBAAiBS,cAAc,CAACW,UAAU,CAAC,GAAG,EAAEpB,iBAAiBS,cAAc,CAACY,QAAQ,CAAC,MAAM,CAAC;IACxHC,eAAevB,OAAOwB,oBAAoB;IAE1CC,cAAczB,OAAO0B,kBAAkB;IAEvCC,gBAAgB;IAEhBC,YAAY5B,OAAOwB,oBAAoB;IACvCK,aAAa7B,OAAOwB,oBAAoB;IAExC,UAAU;QACRf,QAAQ;QACRO,OAAOhB,OAAO8B,0BAA0B;QACxCC,aAAa/B,OAAOgC,sBAAsB;QAC1CrB,iBAAiBX,OAAOiC,0BAA0B;IACpD;IAEA,iBAAiB;QACfxB,QAAQ;QACRO,OAAOhB,OAAOkC,4BAA4B;QAC1CH,aAAa/B,OAAOmC,wBAAwB;QAC5CxB,iBAAiBX,OAAOoC,4BAA4B;IACtD;AACF;AAEA,MAAMC,wBAAwBxC,WAAW;IACvCyC,SAAS;QACPjC,SAAS;QACTuB,YAAY;QACZC,aAAa;IACf;IACAU,iBAAiB;QACfvB,OAAOhB,OAAOkC,4BAA4B;QAC1C,GAAGnC,WAAWgC,WAAW,CAAC/B,OAAOmC,wBAAwB,CAAC;QAC1DxB,iBAAiBX,OAAOwC,qBAAqB;QAC7C,UAAU;YACRxB,OAAOhB,OAAOkC,4BAA4B;YAC1C,GAAGnC,WAAWgC,WAAW,CAAC/B,OAAOmC,wBAAwB,CAAC;YAC1DxB,iBAAiBX,OAAOwC,qBAAqB;QAC/C;IACF;AACF;AAEA,MAAMC,gBAAgB5C,WAAW;IAAEM,MAAM;QAAEsB,cAAczB,OAAO0C,kBAAkB;IAAC;AAAE;AAErF;;CAEC,GACD,OAAO,MAAMC,6BAA6B,CAACC;IACzC;IAEA,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAE1B,MAAME,oBAAoB1C;IAC1B,MAAM2C,aAAaV;IACnB,MAAMW,aAAaP;IAEnBG,MAAMzC,IAAI,CAAC8C,SAAS,GAAGnD,aACrBI,mBAAmBC,IAAI,EACvByC,MAAML,eAAe,IAAIQ,WAAWR,eAAe,EACnDK,MAAMM,KAAK,IAAIH,WAAWT,OAAO,EACjCQ,mBACAD,kBAAkB,UAAUG,WAAW7C,IAAI,EAC3CyC,MAAMzC,IAAI,CAAC8C,SAAS;IAGtB,OAAOL;AACT,EAAE"}
@@ -2,12 +2,9 @@ import * as React from 'react';
2
2
  import { useReference_unstable } from './useReference';
3
3
  import { renderReference_unstable } from './renderReference';
4
4
  import { useReferenceStyles_unstable } from './useReferenceStyles.styles';
5
- import { useCustomStyleHook } from '@fluentui-copilot/react-provider';
6
- /** deprecated Use ReferenceV2 component, hooks and types instead. */
7
5
  export const Reference = /*#__PURE__*/React.forwardRef((props, ref) => {
8
6
  const state = useReference_unstable(props, ref);
9
7
  useReferenceStyles_unstable(state);
10
- useCustomStyleHook('useReferenceStyles')(state);
11
8
  return renderReference_unstable(state);
12
9
  });
13
10
  Reference.displayName = 'Reference';
@@ -1 +1 @@
1
- {"version":3,"sources":["Reference.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useReference_unstable } from './useReference';\nimport { renderReference_unstable } from './renderReference';\nimport { useReferenceStyles_unstable } from './useReferenceStyles.styles';\nimport type { ReferenceProps } from './Reference.types';\nimport type { ForwardRefComponent } from '@fluentui/react-components';\nimport { useCustomStyleHook } from '@fluentui-copilot/react-provider';\n\n/** deprecated Use ReferenceV2 component, hooks and types instead. */\nexport const Reference: ForwardRefComponent<ReferenceProps> = React.forwardRef((props, ref) => {\n const state = useReference_unstable(props, ref);\n\n useReferenceStyles_unstable(state);\n useCustomStyleHook('useReferenceStyles')(state);\n\n return renderReference_unstable(state);\n});\n\nReference.displayName = 'Reference';\n"],"names":["React","useReference_unstable","renderReference_unstable","useReferenceStyles_unstable","useCustomStyleHook","Reference","forwardRef","props","ref","state","displayName"],"rangeMappings":";;;;;;;;;;;","mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,qBAAqB,QAAQ,iBAAiB;AACvD,SAASC,wBAAwB,QAAQ,oBAAoB;AAC7D,SAASC,2BAA2B,QAAQ,8BAA8B;AAG1E,SAASC,kBAAkB,QAAQ,mCAAmC;AAEtE,mEAAmE,GACnE,OAAO,MAAMC,0BAAiDL,MAAMM,UAAU,CAAC,CAACC,OAAOC;IACrF,MAAMC,QAAQR,sBAAsBM,OAAOC;IAE3CL,4BAA4BM;IAC5BL,mBAAmB,sBAAsBK;IAEzC,OAAOP,yBAAyBO;AAClC,GAAG;AAEHJ,UAAUK,WAAW,GAAG"}
1
+ {"version":3,"sources":["Reference.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useReference_unstable } from './useReference';\nimport { renderReference_unstable } from './renderReference';\nimport { useReferenceStyles_unstable } from './useReferenceStyles.styles';\nimport type { ReferenceProps } from './Reference.types';\nimport type { ForwardRefComponent } from '@fluentui/react-components';\n\nexport const Reference: ForwardRefComponent<ReferenceProps> = React.forwardRef((props, ref) => {\n const state = useReference_unstable(props, ref);\n\n useReferenceStyles_unstable(state);\n return renderReference_unstable(state);\n});\n\nReference.displayName = 'Reference';\n"],"names":["React","useReference_unstable","renderReference_unstable","useReferenceStyles_unstable","Reference","forwardRef","props","ref","state","displayName"],"rangeMappings":";;;;;;;;;","mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,qBAAqB,QAAQ,iBAAiB;AACvD,SAASC,wBAAwB,QAAQ,oBAAoB;AAC7D,SAASC,2BAA2B,QAAQ,8BAA8B;AAI1E,OAAO,MAAMC,0BAAiDJ,MAAMK,UAAU,CAAC,CAACC,OAAOC;IACrF,MAAMC,QAAQP,sBAAsBK,OAAOC;IAE3CJ,4BAA4BK;IAC5B,OAAON,yBAAyBM;AAClC,GAAG;AAEHJ,UAAUK,WAAW,GAAG"}
@@ -1,2 +1,2 @@
1
- /** deprecated Use ReferenceV2 component, hooks and types instead. */export {};
1
+ export {};
2
2
  //# sourceMappingURL=Reference.types.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["Reference.types.ts"],"sourcesContent":["import type { CopilotMode } from '@fluentui-copilot/react-provider';\nimport type { Button, ComponentProps, ComponentState, Slot } from '@fluentui/react-components';\n\n/** deprecated Use ReferenceV2 component, hooks and types instead. */\nexport type ReferenceSlots = {\n /**\n * The root slot.\n */\n root: NonNullable<Slot<'div'>>;\n\n /**\n * Citation slot. Displays a `Citation`. Set the `null` to hide the citation.\n */\n citation: Slot<'div'>;\n\n /**\n * Media slot. Used to display Avatars, Icons, etc.\n */\n media: Slot<'div'>;\n\n /**\n * Actions slot.\n */\n actions: Slot<'div'>;\n\n /**\n * Label slot. Primary description of the reference.\n */\n label: NonNullable<Slot<'div'>>;\n\n /**\n * Sensitivity slot. Used to display a `SensitivityLabel`.\n */\n sensitivity: Slot<'span'>;\n\n /**\n * Metadata slot. Container for `primaryText`, `secondaryText`, `tertiaryText` and `icon`.\n */\n metadata: NonNullable<Slot<'div'>>;\n\n /**\n * Primary text slot. First displayed metadata text.\n */\n primaryText: Slot<'span'>;\n\n /**\n * Secondary text slot. Second displayed metadata text.\n */\n secondaryText: Slot<'span'>;\n\n /**\n * Tertiary text slot. Third displayed metadata text.\n */\n tertiaryText: Slot<'span'>;\n\n /**\n * Icon slot. Icon displayed in metadata area.\n */\n icon: Slot<'span'>;\n\n /**\n * Content slot.\n */\n content: NonNullable<Slot<'div'>>;\n\n /**\n * Details button slot. Used to expand/collapse the reference.\n */\n detailsButton: Slot<typeof Button>;\n};\n\n/** deprecated Use ReferenceV2 component, hooks and types instead. */\nexport type ReferenceProps = ComponentProps<Partial<ReferenceSlots>> &\n CopilotMode & {\n /**\n * Numeric index associated with `Citation`.\n */\n index: number;\n\n /**\n * HREF back to the `Citation` this `Reference` is associated with.\n */\n citationHref?: string;\n\n /**\n * Unique ID associated with this `Reference`.\n */\n referenceId?: string;\n\n /**\n * Text snippet from the reference source.\n */\n excerpt?: string;\n\n /**\n * @deprecated Inline layout is the only one that is available, use `Preview` component instead for an equivalent to a `Reference` with a popover layout inside of a `Popover`.\n */\n layout?: 'inline' | 'popover';\n };\n\n/** deprecated Use ReferenceV2 component, hooks and types instead. */\nexport type ReferenceState = ComponentState<ReferenceSlots> &\n Required<Pick<ReferenceProps, 'mode' | 'layout' | 'index'>> & {\n /**\n * State used to renderer the `Reference` in an expanded state.\n */\n isExpanded: boolean;\n };\n"],"names":[],"rangeMappings":"","mappings":"AAoGA,mEAAmE,GACnE,WAMI"}
1
+ {"version":3,"sources":["Reference.types.ts"],"sourcesContent":["import type { DesignVersion } from '@fluentui-copilot/react-provider';\nimport type { ComponentProps, ComponentState, Slot } from '@fluentui/react-components';\nimport type { ReferenceListState } from '../ReferenceList';\n\nexport type ReferenceSlots = {\n /** The root of the component that renders the reference as either a button or an anchor element. */\n root: NonNullable<Slot<'button', 'a'>>;\n\n /** The number of the citation this reference corresponds to. */\n citation?: Slot<'span'>;\n\n /** A divider that visually separates the citation from the content of the reference. */\n divider?: Slot<'span'>;\n\n /** A space containing the content of the reference, which goes into an ellipsis if it overflows. */\n content?: Slot<'span'>;\n\n /** A space within the content slot where a graphic such as an icon or an image can be displayed before the rest of the content. */\n graphic?: Slot<'span'>;\n};\n\nexport type ReferenceProps = ComponentProps<Partial<ReferenceSlots>> & DesignVersion & {};\n\nexport type ReferenceState = ComponentState<ReferenceSlots> &\n Required<Pick<ReferenceProps, 'id' | 'designVersion'>> &\n Pick<ReferenceListState, 'shouldUseOverflow'>;\n"],"names":[],"rangeMappings":"","mappings":"AAuBA,WAEgD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"sourcesContent":["export { Reference } from './Reference';\nexport type { ReferenceProps, ReferenceSlots, ReferenceState } from './Reference.types';\nexport { renderReference_unstable } from './renderReference';\nexport { useReference_unstable } from './useReference';\nexport { referenceClassNames, referenceExtraClassNames, useReferenceStyles_unstable } from './useReferenceStyles.styles';\n"],"names":["Reference","renderReference_unstable","useReference_unstable","referenceClassNames","referenceExtraClassNames","useReferenceStyles_unstable"],"rangeMappings":";;;","mappings":"AAAA,SAASA,SAAS,QAAQ,cAAc;AAExC,SAASC,wBAAwB,QAAQ,oBAAoB;AAC7D,SAASC,qBAAqB,QAAQ,iBAAiB;AACvD,SAASC,mBAAmB,EAAEC,wBAAwB,EAAEC,2BAA2B,QAAQ,8BAA8B"}
1
+ {"version":3,"sources":["index.ts"],"sourcesContent":["export { Reference } from './Reference';\nexport type { ReferenceProps, ReferenceSlots, ReferenceState } from './Reference.types';\nexport { renderReference_unstable } from './renderReference';\nexport { useReference_unstable } from './useReference';\nexport {\n referenceClassNames,\n referenceExtraClassNames,\n useReferenceStyles_unstable,\n} from './useReferenceStyles.styles';\n"],"names":["Reference","renderReference_unstable","useReference_unstable","referenceClassNames","referenceExtraClassNames","useReferenceStyles_unstable"],"rangeMappings":";;;","mappings":"AAAA,SAASA,SAAS,QAAQ,cAAc;AAExC,SAASC,wBAAwB,QAAQ,oBAAoB;AAC7D,SAASC,qBAAqB,QAAQ,iBAAiB;AACvD,SACEC,mBAAmB,EACnBC,wBAAwB,EACxBC,2BAA2B,QACtB,8BAA8B"}
@@ -1,14 +1,19 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "@fluentui/react-jsx-runtime/jsx-runtime";
2
- import { assertSlots } from '@fluentui/react-components';
3
- /** deprecated Use ReferenceV2 component, hooks and types instead. */
2
+ import { OverflowItem, assertSlots } from '@fluentui/react-components';
4
3
  export const renderReference_unstable = state => {
5
4
  assertSlots(state);
6
- return /*#__PURE__*/_jsxs(state.root, {
7
- children: [state.citation && /*#__PURE__*/_jsx(state.citation, {}), state.media && /*#__PURE__*/_jsx(state.media, {}), /*#__PURE__*/_jsx(state.label, {}), state.actions && /*#__PURE__*/_jsxs(state.actions, {
8
- children: [state.actions.children, state.detailsButton && /*#__PURE__*/_jsx(state.detailsButton, {})]
9
- }), state.sensitivity && /*#__PURE__*/_jsx(state.sensitivity, {}), /*#__PURE__*/_jsxs(state.metadata, {
10
- children: [state.primaryText && /*#__PURE__*/_jsx(state.primaryText, {}), state.secondaryText && /*#__PURE__*/_jsx(state.secondaryText, {}), state.tertiaryText && /*#__PURE__*/_jsx(state.tertiaryText, {}), state.icon && /*#__PURE__*/_jsx(state.icon, {}), state.metadata.children]
11
- }), /*#__PURE__*/_jsx(state.content, {})]
5
+ const {
6
+ id,
7
+ shouldUseOverflow
8
+ } = state;
9
+ const reference = /*#__PURE__*/_jsxs(state.root, {
10
+ children: [state.citation && /*#__PURE__*/_jsx(state.citation, {}), state.divider && /*#__PURE__*/_jsx(state.divider, {}), state.content && /*#__PURE__*/_jsxs(state.content, {
11
+ children: [state.graphic && /*#__PURE__*/_jsx(state.graphic, {}), state.root.children]
12
+ })]
12
13
  });
14
+ return shouldUseOverflow ? /*#__PURE__*/_jsx(OverflowItem, {
15
+ id: id,
16
+ children: reference
17
+ }, id) : reference;
13
18
  };
14
19
  //# sourceMappingURL=renderReference.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["renderReference.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\n\nimport { assertSlots } from '@fluentui/react-components';\n\nimport type { ReferenceState, ReferenceSlots } from './Reference.types';\n\n/** deprecated Use ReferenceV2 component, hooks and types instead. */\nexport const renderReference_unstable = (state: ReferenceState) => {\n assertSlots<ReferenceSlots>(state);\n\n return (\n <state.root>\n {state.citation && <state.citation />}\n {state.media && <state.media />}\n <state.label />\n {state.actions && (\n <state.actions>\n {state.actions.children}\n {state.detailsButton && <state.detailsButton />}\n </state.actions>\n )}\n {state.sensitivity && <state.sensitivity />}\n <state.metadata>\n {state.primaryText && <state.primaryText />}\n {state.secondaryText && <state.secondaryText />}\n {state.tertiaryText && <state.tertiaryText />}\n {state.icon && <state.icon />}\n {state.metadata.children}\n </state.metadata>\n <state.content />\n </state.root>\n );\n};\n"],"names":["assertSlots","renderReference_unstable","state","root","citation","media","label","actions","children","detailsButton","sensitivity","metadata","primaryText","secondaryText","tertiaryText","icon","content"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,0BAA0B,GAC1B,iDAAiD;AAEjD,SAASA,WAAW,QAAQ,6BAA6B;AAIzD,mEAAmE,GACnE,OAAO,MAAMC,2BAA2B,CAACC;IACvCF,YAA4BE;IAE5B,qBACE,MAACA,MAAMC,IAAI;;YACRD,MAAME,QAAQ,kBAAI,KAACF,MAAME,QAAQ;YACjCF,MAAMG,KAAK,kBAAI,KAACH,MAAMG,KAAK;0BAC5B,KAACH,MAAMI,KAAK;YACXJ,MAAMK,OAAO,kBACZ,MAACL,MAAMK,OAAO;;oBACXL,MAAMK,OAAO,CAACC,QAAQ;oBACtBN,MAAMO,aAAa,kBAAI,KAACP,MAAMO,aAAa;;;YAG/CP,MAAMQ,WAAW,kBAAI,KAACR,MAAMQ,WAAW;0BACxC,MAACR,MAAMS,QAAQ;;oBACZT,MAAMU,WAAW,kBAAI,KAACV,MAAMU,WAAW;oBACvCV,MAAMW,aAAa,kBAAI,KAACX,MAAMW,aAAa;oBAC3CX,MAAMY,YAAY,kBAAI,KAACZ,MAAMY,YAAY;oBACzCZ,MAAMa,IAAI,kBAAI,KAACb,MAAMa,IAAI;oBACzBb,MAAMS,QAAQ,CAACH,QAAQ;;;0BAE1B,KAACN,MAAMc,OAAO;;;AAGpB,EAAE"}
1
+ {"version":3,"sources":["renderReference.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\n\nimport { OverflowItem, assertSlots } from '@fluentui/react-components';\nimport type { ReferenceState, ReferenceSlots } from './Reference.types';\n\nexport const renderReference_unstable = (state: ReferenceState) => {\n assertSlots<ReferenceSlots>(state);\n\n const { id, shouldUseOverflow } = state;\n\n const reference = (\n <state.root>\n {state.citation && <state.citation />}\n {state.divider && <state.divider />}\n {state.content && (\n <state.content>\n {state.graphic && <state.graphic />}\n {state.root.children}\n </state.content>\n )}\n </state.root>\n );\n\n return shouldUseOverflow ? (\n <OverflowItem key={id} id={id}>\n {reference}\n </OverflowItem>\n ) : (\n reference\n );\n};\n"],"names":["OverflowItem","assertSlots","renderReference_unstable","state","id","shouldUseOverflow","reference","root","citation","divider","content","graphic","children"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,0BAA0B,GAC1B,iDAAiD;AAEjD,SAASA,YAAY,EAAEC,WAAW,QAAQ,6BAA6B;AAGvE,OAAO,MAAMC,2BAA2B,CAACC;IACvCF,YAA4BE;IAE5B,MAAM,EAAEC,EAAE,EAAEC,iBAAiB,EAAE,GAAGF;IAElC,MAAMG,0BACJ,MAACH,MAAMI,IAAI;;YACRJ,MAAMK,QAAQ,kBAAI,KAACL,MAAMK,QAAQ;YACjCL,MAAMM,OAAO,kBAAI,KAACN,MAAMM,OAAO;YAC/BN,MAAMO,OAAO,kBACZ,MAACP,MAAMO,OAAO;;oBACXP,MAAMQ,OAAO,kBAAI,KAACR,MAAMQ,OAAO;oBAC/BR,MAAMI,IAAI,CAACK,QAAQ;;;;;IAM5B,OAAOP,kCACL,KAACL;QAAsBI,IAAIA;kBACxBE;OADgBF,MAInBE;AAEJ,EAAE"}
@@ -1,10 +1,8 @@
1
1
  import * as React from 'react';
2
- import { Button, Caption1, getIntrinsicElementProps, mergeCallbacks, mergeClasses, slot, useId, usePopoverContext_unstable as usePopoverContext } from '@fluentui/react-components';
3
- import { ChevronDown24Regular, ChevronUp24Regular, ChevronDown16Regular, ChevronUp16Regular } from '@fluentui/react-icons';
2
+ import { getIntrinsicElementProps, mergeClasses, slot, useId } from '@fluentui/react-components';
3
+ import { useReferenceListContext_unstable } from '../../contexts/referenceListContext';
4
4
  import { referenceExtraClassNames } from './useReferenceStyles.styles';
5
- import { Citation } from '../Citation';
6
- import { useReferenceGroupSetOpen } from '../../contexts/ReferenceGroupContext';
7
- import { useCopilotMode } from '@fluentui-copilot/react-provider';
5
+ import { useDesignVersion } from '@fluentui-copilot/react-provider';
8
6
  /**
9
7
  * Create the state required to render Reference.
10
8
  *
@@ -13,182 +11,64 @@ import { useCopilotMode } from '@fluentui-copilot/react-provider';
13
11
  *
14
12
  * @param props - props from this instance of Reference
15
13
  * @param ref - reference to root HTMLElement of Reference
16
- *
17
- * deprecated Use ReferenceV2 component, hooks and types instead.
18
14
  */
19
15
  export const useReference_unstable = (props, ref) => {
20
16
  const {
21
- index,
22
- referenceId,
23
- citationHref,
24
- excerpt,
25
- layout = 'inline'
17
+ as,
18
+ children,
19
+ id
26
20
  } = props;
27
- const mode = useCopilotMode(props.mode);
28
- const labelId = useId();
29
- const mediaId = useId();
30
- const [isExpanded, setIsExpanded] = React.useState(layout === 'popover' ? true : false);
31
- const setPopoverOpen = usePopoverContext(context => context.setOpen);
32
- const onExpandClick = _e => {
33
- setIsExpanded(!isExpanded);
21
+ const designVersion = useDesignVersion(props.designVersion);
22
+ const shouldUseOverflow = useReferenceListContext_unstable(ctx => ctx.shouldUseOverflow);
23
+ const referenceId = useId('reference-', id);
24
+ const elementType = as || (props.href ? 'a' : 'button');
25
+ const propsWithAssignedAs = {
26
+ type: elementType === 'button' ? 'button' : undefined,
27
+ ...props,
28
+ as: elementType,
29
+ id: referenceId
34
30
  };
35
- const label = slot.always(props.label, {
36
- defaultProps: {
37
- id: labelId
38
- },
39
- elementType: 'div'
31
+ const citation = slot.optional(props.citation, {
32
+ elementType: 'span'
40
33
  });
41
- const media = slot.optional(props.media, {
42
- defaultProps: {
43
- id: mediaId
44
- },
45
- elementType: 'div'
34
+ const graphic = slot.optional(props.graphic, {
35
+ elementType: 'span'
36
+ });
37
+ const content = slot.optional(props.content, {
38
+ elementType: 'span',
39
+ renderByDefault: graphic !== undefined || !!children
40
+ });
41
+ const divider = slot.optional(props.divider, {
42
+ elementType: 'span',
43
+ renderByDefault: citation !== undefined && content !== undefined
46
44
  });
47
- if (media && /*#__PURE__*/React.isValidElement(media.children)) {
48
- media.children = /*#__PURE__*/React.cloneElement(media.children, {
49
- className: mergeClasses(media.children.props.className, referenceExtraClassNames.mediaChild)
50
- });
51
- }
52
- if (media === null || media === void 0 ? void 0 : media.id) {
53
- var _label_ariadescribedby;
54
- var _label_ariadescribedby_concat;
55
- label['aria-describedby'] = (_label_ariadescribedby_concat = (_label_ariadescribedby = label['aria-describedby']) === null || _label_ariadescribedby === void 0 ? void 0 : _label_ariadescribedby.concat(media.id)) !== null && _label_ariadescribedby_concat !== void 0 ? _label_ariadescribedby_concat : media.id;
56
- }
57
- const ariaLabelledByProp = props['aria-labelledby'];
58
- const groupSemantics = React.useMemo(() => {
59
- return layout === 'inline' ? {
60
- role: 'group',
61
- 'aria-labelledby': `${ariaLabelledByProp !== null && ariaLabelledByProp !== void 0 ? ariaLabelledByProp : ''} ${label.id}`,
62
- tabIndex: -1
63
- } : {};
64
- }, [layout, ariaLabelledByProp, label.id]);
65
- // Within a popup, a citation should function as a close button
66
- const citationProps = React.useMemo(() => {
67
- const onPopoverCloseClick = e => {
68
- setPopoverOpen(e, false);
69
- // don't navigate
70
- e.preventDefault();
71
- };
72
- return layout === 'popover' ? {
73
- referenceHref: '#',
74
- tabIndex: -1,
75
- 'aria-label': `Close Reference ${index}`,
76
- onClick: onPopoverCloseClick
77
- } : {
78
- referenceHref: citationHref
79
- };
80
- }, [layout, citationHref, index, setPopoverOpen]);
81
45
  const state = {
82
- isExpanded,
83
- mode: layout === 'popover' ? 'sidecar' : mode,
84
- layout,
85
- index,
46
+ designVersion,
47
+ id: referenceId,
48
+ shouldUseOverflow,
86
49
  components: {
87
- root: 'div',
88
- citation: 'div',
89
- media: 'div',
90
- actions: 'div',
91
- label: 'div',
92
- sensitivity: 'span',
93
- metadata: 'div',
94
- content: 'div',
95
- primaryText: 'span',
96
- secondaryText: 'span',
97
- tertiaryText: 'span',
98
- icon: 'span',
99
- detailsButton: Button
50
+ root: elementType,
51
+ citation: 'span',
52
+ divider: 'span',
53
+ graphic: 'span',
54
+ content: 'span'
100
55
  },
101
- root: slot.always(getIntrinsicElementProps('div', {
56
+ root: slot.always(getIntrinsicElementProps(elementType, {
102
57
  ref,
103
- id: referenceId,
104
- ...groupSemantics,
105
- ...props
58
+ ...propsWithAssignedAs
106
59
  }), {
107
- elementType: 'div'
108
- }),
109
- citation: slot.optional(props.citation, {
110
- defaultProps: {
111
- children: /*#__PURE__*/React.createElement(Citation, {
112
- block: true,
113
- ...citationProps
114
- }, index)
115
- },
116
- renderByDefault: true,
117
- elementType: 'div'
118
- }),
119
- media,
120
- actions: slot.optional(layout === 'inline' ? props.actions : null, {
121
- renderByDefault: true,
122
- elementType: 'div'
123
- }),
124
- label,
125
- sensitivity: slot.optional(props.sensitivity, {
126
- elementType: 'span'
60
+ elementType
127
61
  }),
128
- metadata: slot.always(props.metadata, {
129
- elementType: 'div'
130
- }),
131
- primaryText: slot.optional(props.primaryText, {
132
- defaultProps: {
133
- hidden: !isExpanded
134
- },
135
- elementType: 'span'
136
- }),
137
- secondaryText: slot.optional(props.secondaryText, {
138
- defaultProps: {
139
- hidden: !isExpanded
140
- },
141
- elementType: 'span'
142
- }),
143
- tertiaryText: slot.optional(props.tertiaryText, {
144
- defaultProps: {
145
- hidden: !isExpanded
146
- },
147
- elementType: 'span'
148
- }),
149
- icon: slot.optional(props.icon, {
150
- elementType: 'span'
151
- }),
152
- content: slot.always(props.content, {
153
- defaultProps: {
154
- children: excerpt && /*#__PURE__*/React.createElement(Caption1, null, excerpt)
155
- },
156
- elementType: 'div'
157
- }),
158
- detailsButton: slot.optional(layout === 'inline' ? props.detailsButton : null, {
159
- defaultProps: {
160
- appearance: 'transparent',
161
- 'aria-expanded': isExpanded,
162
- 'aria-label': 'show details',
163
- size: mode === 'sidecar' ? 'small' : 'medium',
164
- icon: {
165
- children: getIcon(isExpanded, mode)
166
- }
167
- },
168
- renderByDefault: true,
169
- elementType: Button
170
- })
62
+ citation,
63
+ divider,
64
+ content,
65
+ graphic
171
66
  };
172
- if (state.detailsButton) {
173
- const onClick = state.detailsButton.onClick;
174
- state.detailsButton.onClick = mergeCallbacks(onClick, onExpandClick);
67
+ if (state.graphic && React.isValidElement(state.graphic.children)) {
68
+ state.graphic.children = React.cloneElement(state.graphic.children, {
69
+ className: mergeClasses(state.graphic.children.props.className, referenceExtraClassNames.graphicChild)
70
+ });
175
71
  }
176
- const referenceGroupSetOpen = useReferenceGroupSetOpen();
177
- const onTargettedByCitation = e => {
178
- var _e_relatedTarget;
179
- const relatedTargetHash = (_e_relatedTarget = e.relatedTarget) === null || _e_relatedTarget === void 0 ? void 0 : _e_relatedTarget.hash;
180
- if (relatedTargetHash && relatedTargetHash.substring(1) === referenceId) {
181
- referenceGroupSetOpen();
182
- setIsExpanded(true);
183
- }
184
- };
185
- state.root.onFocus = mergeCallbacks(state.root.onFocus, onTargettedByCitation);
186
72
  return state;
187
73
  };
188
- const getIcon = (isExpanded, mode) => {
189
- if (mode === 'sidecar') {
190
- return !isExpanded ? /*#__PURE__*/React.createElement(ChevronDown16Regular, null) : /*#__PURE__*/React.createElement(ChevronUp16Regular, null);
191
- }
192
- return !isExpanded ? /*#__PURE__*/React.createElement(ChevronDown24Regular, null) : /*#__PURE__*/React.createElement(ChevronUp24Regular, null);
193
- };
194
74
  //# sourceMappingURL=useReference.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["useReference.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Button,\n Caption1,\n getIntrinsicElementProps,\n mergeCallbacks,\n mergeClasses,\n slot,\n useId,\n usePopoverContext_unstable as usePopoverContext,\n} from '@fluentui/react-components';\nimport {\n ChevronDown24Regular,\n ChevronUp24Regular,\n ChevronDown16Regular,\n ChevronUp16Regular,\n} from '@fluentui/react-icons';\nimport { referenceExtraClassNames } from './useReferenceStyles.styles';\nimport { Citation } from '../Citation';\nimport type { ReferenceProps, ReferenceState } from './Reference.types';\nimport { useReferenceGroupSetOpen } from '../../contexts/ReferenceGroupContext';\nimport { useCopilotMode } from '@fluentui-copilot/react-provider';\n\n/**\n * Create the state required to render Reference.\n *\n * The returned state can be modified with hooks such as useReferenceStyles_unstable,\n * before being passed to renderReference_unstable.\n *\n * @param props - props from this instance of Reference\n * @param ref - reference to root HTMLElement of Reference\n *\n * deprecated Use ReferenceV2 component, hooks and types instead.\n */\nexport const useReference_unstable = (props: ReferenceProps, ref: React.Ref<HTMLDivElement>): ReferenceState => {\n const { index, referenceId, citationHref, excerpt, layout = 'inline' } = props;\n\n const mode = useCopilotMode(props.mode);\n\n const labelId = useId();\n const mediaId = useId();\n const [isExpanded, setIsExpanded] = React.useState(layout === 'popover' ? true : false);\n\n const setPopoverOpen = usePopoverContext(context => context.setOpen);\n\n const onExpandClick: React.MouseEventHandler<HTMLButtonElement> = _e => {\n setIsExpanded(!isExpanded);\n };\n\n const label = slot.always(props.label, {\n defaultProps: { id: labelId },\n elementType: 'div',\n });\n const media = slot.optional(props.media, { defaultProps: { id: mediaId }, elementType: 'div' });\n if (media && React.isValidElement<HTMLElement>(media.children)) {\n media.children = React.cloneElement(media.children, {\n className: mergeClasses(media.children.props.className, referenceExtraClassNames.mediaChild),\n });\n }\n\n if (media?.id) {\n label['aria-describedby'] = label['aria-describedby']?.concat(media.id) ?? media.id;\n }\n\n const ariaLabelledByProp = props['aria-labelledby'];\n const groupSemantics = React.useMemo(() => {\n return layout === 'inline'\n ? {\n role: 'group',\n 'aria-labelledby': `${ariaLabelledByProp ?? ''} ${label.id}`,\n tabIndex: -1,\n }\n : {};\n }, [layout, ariaLabelledByProp, label.id]);\n\n // Within a popup, a citation should function as a close button\n const citationProps = React.useMemo(() => {\n const onPopoverCloseClick = (e: React.MouseEvent<HTMLAnchorElement>) => {\n setPopoverOpen(e, false);\n\n // don't navigate\n e.preventDefault();\n };\n\n return layout === 'popover'\n ? {\n referenceHref: '#',\n tabIndex: -1,\n 'aria-label': `Close Reference ${index}`,\n onClick: onPopoverCloseClick,\n }\n : {\n referenceHref: citationHref,\n };\n }, [layout, citationHref, index, setPopoverOpen]);\n\n const state: ReferenceState = {\n isExpanded,\n mode: layout === 'popover' ? 'sidecar' : mode,\n layout,\n index,\n components: {\n root: 'div',\n citation: 'div',\n media: 'div',\n actions: 'div',\n label: 'div',\n sensitivity: 'span',\n metadata: 'div',\n content: 'div',\n primaryText: 'span',\n secondaryText: 'span',\n tertiaryText: 'span',\n icon: 'span',\n detailsButton: Button,\n },\n root: slot.always(\n getIntrinsicElementProps('div', {\n ref,\n id: referenceId,\n ...groupSemantics,\n ...props,\n }),\n { elementType: 'div' },\n ),\n citation: slot.optional(props.citation, {\n defaultProps: {\n children: (\n <Citation block {...citationProps}>\n {index}\n </Citation>\n ),\n },\n renderByDefault: true,\n elementType: 'div',\n }),\n media,\n actions: slot.optional(layout === 'inline' ? props.actions : null, {\n renderByDefault: true,\n elementType: 'div',\n }),\n label,\n sensitivity: slot.optional(props.sensitivity, { elementType: 'span' }),\n metadata: slot.always(props.metadata, { elementType: 'div' }),\n primaryText: slot.optional(props.primaryText, {\n defaultProps: {\n hidden: !isExpanded,\n },\n elementType: 'span',\n }),\n secondaryText: slot.optional(props.secondaryText, {\n defaultProps: {\n hidden: !isExpanded,\n },\n elementType: 'span',\n }),\n tertiaryText: slot.optional(props.tertiaryText, {\n defaultProps: {\n hidden: !isExpanded,\n },\n elementType: 'span',\n }),\n icon: slot.optional(props.icon, { elementType: 'span' }),\n content: slot.always(props.content, {\n defaultProps: {\n children: excerpt && <Caption1>{excerpt}</Caption1>,\n },\n elementType: 'div',\n }),\n detailsButton: slot.optional(layout === 'inline' ? props.detailsButton : null, {\n defaultProps: {\n appearance: 'transparent',\n 'aria-expanded': isExpanded,\n 'aria-label': 'show details',\n size: mode === 'sidecar' ? 'small' : 'medium',\n icon: {\n children: getIcon(isExpanded, mode),\n },\n },\n renderByDefault: true,\n elementType: Button,\n }),\n };\n\n if (state.detailsButton) {\n const onClick = state.detailsButton.onClick as React.MouseEventHandler<HTMLButtonElement>;\n state.detailsButton.onClick = mergeCallbacks(onClick, onExpandClick);\n }\n\n const referenceGroupSetOpen = useReferenceGroupSetOpen();\n const onTargettedByCitation = (e: React.FocusEvent<HTMLElement>) => {\n const relatedTargetHash: string | undefined = (e.relatedTarget as HTMLAnchorElement)?.hash;\n if (relatedTargetHash && relatedTargetHash.substring(1) === referenceId) {\n referenceGroupSetOpen();\n setIsExpanded(true);\n }\n };\n state.root.onFocus = mergeCallbacks(state.root.onFocus, onTargettedByCitation);\n\n return state;\n};\n\nconst getIcon = (isExpanded: boolean, mode: ReferenceProps['mode']): JSX.Element => {\n if (mode === 'sidecar') {\n return !isExpanded ? <ChevronDown16Regular /> : <ChevronUp16Regular />;\n }\n\n return !isExpanded ? <ChevronDown24Regular /> : <ChevronUp24Regular />;\n};\n"],"names":["React","Button","Caption1","getIntrinsicElementProps","mergeCallbacks","mergeClasses","slot","useId","usePopoverContext_unstable","usePopoverContext","ChevronDown24Regular","ChevronUp24Regular","ChevronDown16Regular","ChevronUp16Regular","referenceExtraClassNames","Citation","useReferenceGroupSetOpen","useCopilotMode","useReference_unstable","props","ref","index","referenceId","citationHref","excerpt","layout","mode","labelId","mediaId","isExpanded","setIsExpanded","useState","setPopoverOpen","context","setOpen","onExpandClick","_e","label","always","defaultProps","id","elementType","media","optional","isValidElement","children","cloneElement","className","mediaChild","concat","ariaLabelledByProp","groupSemantics","useMemo","role","tabIndex","citationProps","onPopoverCloseClick","e","preventDefault","referenceHref","onClick","state","components","root","citation","actions","sensitivity","metadata","content","primaryText","secondaryText","tertiaryText","icon","detailsButton","block","renderByDefault","hidden","appearance","size","getIcon","referenceGroupSetOpen","onTargettedByCitation","relatedTargetHash","relatedTarget","hash","substring","onFocus"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["useReference.ts"],"sourcesContent":["import * as React from 'react';\nimport { getIntrinsicElementProps, mergeClasses, slot, useId } from '@fluentui/react-components';\nimport { useReferenceListContext_unstable } from '../../contexts/referenceListContext';\nimport { referenceExtraClassNames } from './useReferenceStyles.styles';\nimport type { ReferenceProps, ReferenceState } from './Reference.types';\nimport { useDesignVersion } from '@fluentui-copilot/react-provider';\n\n/**\n * Create the state required to render Reference.\n *\n * The returned state can be modified with hooks such as useReferenceStyles_unstable,\n * before being passed to renderReference_unstable.\n *\n * @param props - props from this instance of Reference\n * @param ref - reference to root HTMLElement of Reference\n */\nexport const useReference_unstable = (\n props: ReferenceProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>,\n): ReferenceState => {\n const { as, children, id } = props;\n\n const designVersion = useDesignVersion(props.designVersion);\n\n const shouldUseOverflow = useReferenceListContext_unstable(ctx => ctx.shouldUseOverflow);\n\n const referenceId = useId('reference-', id);\n\n const elementType = as || ((props as JSX.IntrinsicElements['a']).href ? 'a' : 'button');\n const propsWithAssignedAs = {\n type: elementType === 'button' ? 'button' : undefined,\n ...props,\n as: elementType,\n id: referenceId,\n } as ReferenceProps;\n\n const citation = slot.optional(props.citation, { elementType: 'span' });\n const graphic = slot.optional(props.graphic, { elementType: 'span' });\n const content = slot.optional(props.content, {\n elementType: 'span',\n renderByDefault: graphic !== undefined || !!children,\n });\n const divider = slot.optional(props.divider, {\n elementType: 'span',\n renderByDefault: citation !== undefined && content !== undefined,\n });\n\n const state: ReferenceState = {\n designVersion,\n id: referenceId,\n shouldUseOverflow,\n\n components: {\n root: elementType,\n citation: 'span',\n divider: 'span',\n graphic: 'span',\n content: 'span',\n },\n\n root: slot.always(\n getIntrinsicElementProps(elementType, {\n ref,\n ...propsWithAssignedAs,\n }),\n { elementType },\n ),\n citation,\n divider,\n content,\n graphic,\n };\n\n if (state.graphic && React.isValidElement<HTMLElement>(state.graphic.children)) {\n state.graphic.children = React.cloneElement(state.graphic.children, {\n className: mergeClasses(state.graphic.children.props.className, referenceExtraClassNames.graphicChild),\n });\n }\n\n return state;\n};\n"],"names":["React","getIntrinsicElementProps","mergeClasses","slot","useId","useReferenceListContext_unstable","referenceExtraClassNames","useDesignVersion","useReference_unstable","props","ref","as","children","id","designVersion","shouldUseOverflow","ctx","referenceId","elementType","href","propsWithAssignedAs","type","undefined","citation","optional","graphic","content","renderByDefault","divider","state","components","root","always","isValidElement","cloneElement","className","graphicChild"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,wBAAwB,EAAEC,YAAY,EAAEC,IAAI,EAAEC,KAAK,QAAQ,6BAA6B;AACjG,SAASC,gCAAgC,QAAQ,sCAAsC;AACvF,SAASC,wBAAwB,QAAQ,8BAA8B;AAEvE,SAASC,gBAAgB,QAAQ,mCAAmC;AAEpE;;;;;;;;CAQC,GACD,OAAO,MAAMC,wBAAwB,CACnCC,OACAC;IAEA,MAAM,EAAEC,EAAE,EAAEC,QAAQ,EAAEC,EAAE,EAAE,GAAGJ;IAE7B,MAAMK,gBAAgBP,iBAAiBE,MAAMK,aAAa;IAE1D,MAAMC,oBAAoBV,iCAAiCW,CAAAA,MAAOA,IAAID,iBAAiB;IAEvF,MAAME,cAAcb,MAAM,cAAcS;IAExC,MAAMK,cAAcP,MAAO,CAAA,AAACF,MAAqCU,IAAI,GAAG,MAAM,QAAO;IACrF,MAAMC,sBAAsB;QAC1BC,MAAMH,gBAAgB,WAAW,WAAWI;QAC5C,GAAGb,KAAK;QACRE,IAAIO;QACJL,IAAII;IACN;IAEA,MAAMM,WAAWpB,KAAKqB,QAAQ,CAACf,MAAMc,QAAQ,EAAE;QAAEL,aAAa;IAAO;IACrE,MAAMO,UAAUtB,KAAKqB,QAAQ,CAACf,MAAMgB,OAAO,EAAE;QAAEP,aAAa;IAAO;IACnE,MAAMQ,UAAUvB,KAAKqB,QAAQ,CAACf,MAAMiB,OAAO,EAAE;QAC3CR,aAAa;QACbS,iBAAiBF,YAAYH,aAAa,CAAC,CAACV;IAC9C;IACA,MAAMgB,UAAUzB,KAAKqB,QAAQ,CAACf,MAAMmB,OAAO,EAAE;QAC3CV,aAAa;QACbS,iBAAiBJ,aAAaD,aAAaI,YAAYJ;IACzD;IAEA,MAAMO,QAAwB;QAC5Bf;QACAD,IAAII;QACJF;QAEAe,YAAY;YACVC,MAAMb;YACNK,UAAU;YACVK,SAAS;YACTH,SAAS;YACTC,SAAS;QACX;QAEAK,MAAM5B,KAAK6B,MAAM,CACf/B,yBAAyBiB,aAAa;YACpCR;YACA,GAAGU,mBAAmB;QACxB,IACA;YAAEF;QAAY;QAEhBK;QACAK;QACAF;QACAD;IACF;IAEA,IAAII,MAAMJ,OAAO,IAAIzB,MAAMiC,cAAc,CAAcJ,MAAMJ,OAAO,CAACb,QAAQ,GAAG;QAC9EiB,MAAMJ,OAAO,CAACb,QAAQ,GAAGZ,MAAMkC,YAAY,CAACL,MAAMJ,OAAO,CAACb,QAAQ,EAAE;YAClEuB,WAAWjC,aAAa2B,MAAMJ,OAAO,CAACb,QAAQ,CAACH,KAAK,CAAC0B,SAAS,EAAE7B,yBAAyB8B,YAAY;QACvG;IACF;IAEA,OAAOP;AACT,EAAE"}