@danske/sapphire-react-lab 0.106.2 → 0.107.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. package/build/cjs/index.js +2557 -64
  2. package/build/cjs/index.js.map +1 -1
  3. package/build/esm/core/src/BreakpointProvider/useBreakpointContext.js +11 -0
  4. package/build/esm/core/src/BreakpointProvider/useBreakpointContext.js.map +1 -0
  5. package/build/esm/core/src/Flex/src/Flex.js +64 -0
  6. package/build/esm/core/src/Flex/src/Flex.js.map +1 -0
  7. package/build/esm/core/src/Grid/src/Grid.js +55 -0
  8. package/build/esm/core/src/Grid/src/Grid.js.map +1 -0
  9. package/build/esm/core/src/Icon/src/Icon.js +37 -0
  10. package/build/esm/core/src/Icon/src/Icon.js.map +1 -0
  11. package/build/esm/core/src/ListBox/i18n/da-DK.json.js +7 -0
  12. package/build/esm/core/src/ListBox/i18n/de-DE.json.js +7 -0
  13. package/build/esm/core/src/ListBox/i18n/en-US.json.js +7 -0
  14. package/build/esm/core/src/ListBox/i18n/fi-FI.json.js +7 -0
  15. package/build/esm/core/src/ListBox/i18n/index.js.map +1 -0
  16. package/build/esm/core/src/ListBox/i18n/nb-NO.json.js +7 -0
  17. package/build/esm/core/src/ListBox/i18n/pl-PL.json.js +7 -0
  18. package/build/esm/core/src/ListBox/i18n/sv-SE.json.js +7 -0
  19. package/build/esm/core/src/ListBox/src/ListBoxContext.js +8 -0
  20. package/build/esm/core/src/ListBox/src/ListBoxContext.js.map +1 -0
  21. package/build/esm/core/src/ListBox/src/ListBoxEmptyState.js +26 -0
  22. package/build/esm/core/src/ListBox/src/ListBoxEmptyState.js.map +1 -0
  23. package/build/esm/core/src/ListBox/src/ListBoxItemSkeleton.js +37 -0
  24. package/build/esm/core/src/ListBox/src/ListBoxItemSkeleton.js.map +1 -0
  25. package/build/esm/core/src/ListBox/src/ListBoxOption.js +105 -0
  26. package/build/esm/core/src/ListBox/src/ListBoxOption.js.map +1 -0
  27. package/build/esm/core/src/ListBox/src/ListBoxSection.js +86 -0
  28. package/build/esm/core/src/ListBox/src/ListBoxSection.js.map +1 -0
  29. package/build/esm/core/src/ListBox/src/StatelessListBox.js +162 -0
  30. package/build/esm/core/src/ListBox/src/StatelessListBox.js.map +1 -0
  31. package/build/esm/core/src/Pagination/src/usePaginationContext.js +8 -0
  32. package/build/esm/core/src/Pagination/src/usePaginationContext.js.map +1 -0
  33. package/build/esm/core/src/Popover/src/Popover.js +62 -0
  34. package/build/esm/core/src/Popover/src/Popover.js.map +1 -0
  35. package/build/esm/core/src/Radio/src/RadioBox.js +58 -0
  36. package/build/esm/core/src/Radio/src/RadioBox.js.map +1 -0
  37. package/build/esm/core/src/Separator/src/Separator.js +32 -0
  38. package/build/esm/core/src/Separator/src/Separator.js.map +1 -0
  39. package/build/esm/core/src/Skeleton/src/Skeleton.js +19 -0
  40. package/build/esm/core/src/Skeleton/src/Skeleton.js.map +1 -0
  41. package/build/esm/core/src/Skeleton/src/SkeletonCircle.js +39 -0
  42. package/build/esm/core/src/Skeleton/src/SkeletonCircle.js.map +1 -0
  43. package/build/esm/core/src/Skeleton/src/SkeletonText.js +59 -0
  44. package/build/esm/core/src/Skeleton/src/SkeletonText.js.map +1 -0
  45. package/build/esm/core/src/Skeleton/src/animation.js +4 -0
  46. package/build/esm/core/src/Skeleton/src/animation.js.map +1 -0
  47. package/build/esm/core/src/ThemeRoot/src/ThemeRoot.js +42 -0
  48. package/build/esm/core/src/ThemeRoot/src/ThemeRoot.js.map +1 -0
  49. package/build/esm/core/src/View/src/View.js +60 -0
  50. package/build/esm/core/src/View/src/View.js.map +1 -0
  51. package/build/esm/core/src/utils/SapphireStyleProps.js +48 -0
  52. package/build/esm/core/src/utils/SapphireStyleProps.js.map +1 -0
  53. package/build/esm/core/src/utils/useCollectionFocusProxy.js +53 -0
  54. package/build/esm/core/src/utils/useCollectionFocusProxy.js.map +1 -0
  55. package/build/esm/core/src/utils/usePreventTouchEnd.js +16 -0
  56. package/build/esm/core/src/utils/usePreventTouchEnd.js.map +1 -0
  57. package/build/esm/core/src/utils/useSapphireStyleProps.js +179 -0
  58. package/build/esm/core/src/utils/useSapphireStyleProps.js.map +1 -0
  59. package/build/esm/core/src/utils/useSapphireTextStyleProps.js +9 -0
  60. package/build/esm/core/src/utils/useSapphireTextStyleProps.js.map +1 -0
  61. package/build/esm/core/src/utils/useScrollCheck.js +38 -0
  62. package/build/esm/core/src/utils/useScrollCheck.js.map +1 -0
  63. package/build/esm/core/src/utils/useThemeCheck.js +14 -0
  64. package/build/esm/core/src/utils/useThemeCheck.js.map +1 -0
  65. package/build/esm/core/src/utils/virtualization/ListWithLoadingStateLayout.js +158 -0
  66. package/build/esm/core/src/utils/virtualization/ListWithLoadingStateLayout.js.map +1 -0
  67. package/build/esm/core/src/utils/virtualization/VariableWidthListLayout.js +69 -0
  68. package/build/esm/core/src/utils/virtualization/VariableWidthListLayout.js.map +1 -0
  69. package/build/esm/core/src/utils/virtualization/VirtualizerWithLoadingSkeleton.js +40 -0
  70. package/build/esm/core/src/utils/virtualization/VirtualizerWithLoadingSkeleton.js.map +1 -0
  71. package/build/esm/core/src/utils/virtualization/useListWithLoadingStateLayout.js +35 -0
  72. package/build/esm/core/src/utils/virtualization/useListWithLoadingStateLayout.js.map +1 -0
  73. package/build/esm/index.js +23 -20
  74. package/build/esm/index.js.map +1 -1
  75. package/build/esm/lab/src/Accordion/index.js.map +1 -0
  76. package/build/esm/lab/src/Accordion/src/Accordion.js.map +1 -0
  77. package/build/esm/lab/src/Accordion/src/AccordionContext.js.map +1 -0
  78. package/build/esm/lab/src/Accordion/src/AccordionHeading.js.map +1 -0
  79. package/build/esm/lab/src/Accordion/src/AccordionItem.js.map +1 -0
  80. package/build/esm/lab/src/Accordion/src/AccordionPanel.js.map +1 -0
  81. package/build/esm/lab/src/Accordion/src/utils.js.map +1 -0
  82. package/build/esm/lab/src/Alert/src/Alert.js.map +1 -0
  83. package/build/esm/lab/src/Amount/src/Amount.js.map +1 -0
  84. package/build/esm/lab/src/Amount/src/useGroupAmount.js.map +1 -0
  85. package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/da-DK.json.js +2 -2
  86. package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/de-DE.json.js +2 -2
  87. package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/en-US.json.js +2 -2
  88. package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/fi-FI.json.js +2 -2
  89. package/build/esm/lab/src/Autocomplete/i18n/index.js +20 -0
  90. package/build/esm/lab/src/Autocomplete/i18n/index.js.map +1 -0
  91. package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/nb-NO.json.js +2 -2
  92. package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/pl-PL.json.js +2 -2
  93. package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/sv-SE.json.js +2 -2
  94. package/build/esm/lab/src/Autocomplete/src/Autocomplete.js.map +1 -0
  95. package/build/esm/lab/src/Breadcrumbs/src/BreadcrumbItem.js.map +1 -0
  96. package/build/esm/lab/src/Breadcrumbs/src/BreadcrumbItemLink.js.map +1 -0
  97. package/build/esm/lab/src/Breadcrumbs/src/BreadcrumbItemStatic.js.map +1 -0
  98. package/build/esm/lab/src/Breadcrumbs/src/BreadcrumbOverflowMenu.js.map +1 -0
  99. package/build/esm/lab/src/Breadcrumbs/src/Breadcrumbs.js.map +1 -0
  100. package/build/esm/lab/src/Breadcrumbs/src/BreadcrumbsSeparator.js.map +1 -0
  101. package/build/esm/lab/src/Breadcrumbs/src/useBreadcrumbThreshold.js.map +1 -0
  102. package/build/esm/lab/src/DataGrid/index.js +9 -0
  103. package/build/esm/lab/src/DataGrid/index.js.map +1 -0
  104. package/build/esm/lab/src/DataGrid/src/DataGrid.js +463 -0
  105. package/build/esm/lab/src/DataGrid/src/DataGrid.js.map +1 -0
  106. package/build/esm/lab/src/DataGrid/src/DataGridCellContext.js +6 -0
  107. package/build/esm/lab/src/DataGrid/src/DataGridCellContext.js.map +1 -0
  108. package/build/esm/lab/src/DataGrid/src/EditableCellContent.js +125 -0
  109. package/build/esm/lab/src/DataGrid/src/EditableCellContent.js.map +1 -0
  110. package/build/esm/lab/src/DataGrid/src/createDataGridColumnHelper.js +15 -0
  111. package/build/esm/lab/src/DataGrid/src/createDataGridColumnHelper.js.map +1 -0
  112. package/build/esm/lab/src/DataGrid/src/useGridKeyboardNavigation.js +417 -0
  113. package/build/esm/lab/src/DataGrid/src/useGridKeyboardNavigation.js.map +1 -0
  114. package/build/esm/lab/src/DataGrid/src/useMeasureColumnWidths.js +55 -0
  115. package/build/esm/lab/src/DataGrid/src/useMeasureColumnWidths.js.map +1 -0
  116. package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/da-DK.json.js +2 -2
  117. package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/de-DE.json.js +2 -2
  118. package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/en-US.json.js +2 -2
  119. package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/fi-FI.json.js +2 -2
  120. package/build/esm/lab/src/FileDropzone/i18n/index.js.map +1 -0
  121. package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/nb-NO.json.js +2 -2
  122. package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/pl-PL.json.js +2 -2
  123. package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/sv-SE.json.js +2 -2
  124. package/build/esm/lab/src/FileDropzone/src/FileDropzone.js.map +1 -0
  125. package/build/esm/lab/src/FileDropzone/src/FileTrigger.js.map +1 -0
  126. package/build/esm/lab/src/FileDropzone/src/utils.js.map +1 -0
  127. package/build/esm/lab/src/Filtering/src/FilterDropdown.js.map +1 -0
  128. package/build/esm/{Filtering → lab/src/Filtering}/src/SearchableSelectFilter.js +2 -0
  129. package/build/esm/lab/src/Filtering/src/SearchableSelectFilter.js.map +1 -0
  130. package/build/esm/lab/src/Flag/src/Flag.js.map +1 -0
  131. package/build/esm/lab/src/LabeledValue/src/LabeledValue.js.map +1 -0
  132. package/build/esm/{NumberField → lab/src/NumberField}/i18n/da-DK.json.js +2 -2
  133. package/build/esm/{NumberField → lab/src/NumberField}/i18n/de-DE.json.js +2 -2
  134. package/build/esm/{NumberField → lab/src/NumberField}/i18n/en-US.json.js +2 -2
  135. package/build/esm/{NumberField → lab/src/NumberField}/i18n/fi-FI.json.js +2 -2
  136. package/build/esm/lab/src/NumberField/i18n/index.js.map +1 -0
  137. package/build/esm/{NumberField → lab/src/NumberField}/i18n/nb-NO.json.js +2 -2
  138. package/build/esm/{NumberField → lab/src/NumberField}/i18n/pl-PL.json.js +2 -2
  139. package/build/esm/{NumberField → lab/src/NumberField}/i18n/sv-SE.json.js +2 -2
  140. package/build/esm/lab/src/NumberField/src/NumberField.js.map +1 -0
  141. package/build/esm/lab/src/NumberField/src/StepperButton.js.map +1 -0
  142. package/build/esm/lab/src/NumberField/src/cursorHelpers.js.map +1 -0
  143. package/build/esm/lab/src/NumberField/src/formatHelpers.js.map +1 -0
  144. package/build/esm/lab/src/NumberField/src/keyboardHelpers.js.map +1 -0
  145. package/build/esm/lab/src/NumberField/src/useAutofillStyle.js.map +1 -0
  146. package/build/esm/lab/src/NumberField/src/useNumberFieldFormatting.js.map +1 -0
  147. package/build/esm/lab/src/NumberField/src/useSapphireNumberField.js.map +1 -0
  148. package/build/esm/lab/src/ProgressIndicator/src/ProgressIndicator.js.map +1 -0
  149. package/build/esm/lab/src/Sidebar/index.js.map +1 -0
  150. package/build/esm/lab/src/Sidebar/src/Body.js.map +1 -0
  151. package/build/esm/lab/src/Sidebar/src/ExpandableItem.js.map +1 -0
  152. package/build/esm/lab/src/Sidebar/src/Header.js.map +1 -0
  153. package/build/esm/lab/src/Sidebar/src/Item.js.map +1 -0
  154. package/build/esm/lab/src/Sidebar/src/List.js.map +1 -0
  155. package/build/esm/lab/src/Sidebar/src/Panel.js.map +1 -0
  156. package/build/esm/lab/src/Sidebar/src/ResponsiveSidebarContext.js.map +1 -0
  157. package/build/esm/lab/src/Sidebar/src/SecondarySidebarContext.js.map +1 -0
  158. package/build/esm/lab/src/Sidebar/src/Section.js.map +1 -0
  159. package/build/esm/lab/src/Sidebar/src/Sidebar.js.map +1 -0
  160. package/build/esm/lab/src/Sidebar/src/useSidebar.js.map +1 -0
  161. package/build/esm/lab/src/Slider/index.js.map +1 -0
  162. package/build/esm/lab/src/Slider/src/Slider.js.map +1 -0
  163. package/build/esm/lab/src/TagGroup/src/Tag.js.map +1 -0
  164. package/build/esm/lab/src/TagGroup/src/TagGroup.js.map +1 -0
  165. package/build/esm/lab/src/TagGroup/src/TagItem.js.map +1 -0
  166. package/build/esm/{TimeField → lab/src/TimeField}/i18n/da-DK.json.js +2 -2
  167. package/build/esm/lab/src/TimeField/i18n/da-DK.json.js.map +1 -0
  168. package/build/esm/{TimeField → lab/src/TimeField}/i18n/de-DE.json.js +2 -2
  169. package/build/esm/lab/src/TimeField/i18n/de-DE.json.js.map +1 -0
  170. package/build/esm/{TimeField → lab/src/TimeField}/i18n/en-US.json.js +2 -2
  171. package/build/esm/lab/src/TimeField/i18n/en-US.json.js.map +1 -0
  172. package/build/esm/{TimeField → lab/src/TimeField}/i18n/fi-FI.json.js +2 -2
  173. package/build/esm/lab/src/TimeField/i18n/fi-FI.json.js.map +1 -0
  174. package/build/esm/lab/src/TimeField/i18n/index.js.map +1 -0
  175. package/build/esm/{TimeField → lab/src/TimeField}/i18n/nb-NO.json.js +2 -2
  176. package/build/esm/lab/src/TimeField/i18n/nb-NO.json.js.map +1 -0
  177. package/build/esm/{TimeField → lab/src/TimeField}/i18n/pl-PL.json.js +2 -2
  178. package/build/esm/lab/src/TimeField/i18n/pl-PL.json.js.map +1 -0
  179. package/build/esm/{TimeField → lab/src/TimeField}/i18n/sv-SE.json.js +2 -2
  180. package/build/esm/lab/src/TimeField/i18n/sv-SE.json.js.map +1 -0
  181. package/build/esm/lab/src/TimeField/src/TimeField.js.map +1 -0
  182. package/build/esm/lab/src/TimeField/src/TimeFieldSegment.js.map +1 -0
  183. package/build/esm/lab/src/TruncateOverflow/src/TruncateOverflow.js +46 -0
  184. package/build/esm/lab/src/TruncateOverflow/src/TruncateOverflow.js.map +1 -0
  185. package/build/index.d.ts +553 -10
  186. package/package.json +8 -8
  187. package/build/esm/Accordion/index.js.map +0 -1
  188. package/build/esm/Accordion/src/Accordion.js.map +0 -1
  189. package/build/esm/Accordion/src/AccordionContext.js.map +0 -1
  190. package/build/esm/Accordion/src/AccordionHeading.js.map +0 -1
  191. package/build/esm/Accordion/src/AccordionItem.js.map +0 -1
  192. package/build/esm/Accordion/src/AccordionPanel.js.map +0 -1
  193. package/build/esm/Accordion/src/utils.js.map +0 -1
  194. package/build/esm/Alert/src/Alert.js.map +0 -1
  195. package/build/esm/Amount/src/Amount.js.map +0 -1
  196. package/build/esm/Amount/src/useGroupAmount.js.map +0 -1
  197. package/build/esm/Autocomplete/i18n/index.js.map +0 -1
  198. package/build/esm/Autocomplete/src/Autocomplete.js.map +0 -1
  199. package/build/esm/Breadcrumbs/src/BreadcrumbItem.js.map +0 -1
  200. package/build/esm/Breadcrumbs/src/BreadcrumbItemLink.js.map +0 -1
  201. package/build/esm/Breadcrumbs/src/BreadcrumbItemStatic.js.map +0 -1
  202. package/build/esm/Breadcrumbs/src/BreadcrumbOverflowMenu.js.map +0 -1
  203. package/build/esm/Breadcrumbs/src/Breadcrumbs.js.map +0 -1
  204. package/build/esm/Breadcrumbs/src/BreadcrumbsSeparator.js.map +0 -1
  205. package/build/esm/Breadcrumbs/src/useBreadcrumbThreshold.js.map +0 -1
  206. package/build/esm/FileDropzone/i18n/index.js.map +0 -1
  207. package/build/esm/FileDropzone/src/FileDropzone.js.map +0 -1
  208. package/build/esm/FileDropzone/src/FileTrigger.js.map +0 -1
  209. package/build/esm/FileDropzone/src/utils.js.map +0 -1
  210. package/build/esm/Filtering/src/FilterDropdown.js.map +0 -1
  211. package/build/esm/Filtering/src/SearchableSelectFilter.js.map +0 -1
  212. package/build/esm/Flag/src/Flag.js.map +0 -1
  213. package/build/esm/LabeledValue/src/LabeledValue.js.map +0 -1
  214. package/build/esm/NumberField/i18n/index.js.map +0 -1
  215. package/build/esm/NumberField/src/NumberField.js.map +0 -1
  216. package/build/esm/NumberField/src/StepperButton.js.map +0 -1
  217. package/build/esm/NumberField/src/cursorHelpers.js.map +0 -1
  218. package/build/esm/NumberField/src/formatHelpers.js.map +0 -1
  219. package/build/esm/NumberField/src/keyboardHelpers.js.map +0 -1
  220. package/build/esm/NumberField/src/useAutofillStyle.js.map +0 -1
  221. package/build/esm/NumberField/src/useNumberFieldFormatting.js.map +0 -1
  222. package/build/esm/NumberField/src/useSapphireNumberField.js.map +0 -1
  223. package/build/esm/ProgressIndicator/src/ProgressIndicator.js.map +0 -1
  224. package/build/esm/Sidebar/index.js.map +0 -1
  225. package/build/esm/Sidebar/src/Body.js.map +0 -1
  226. package/build/esm/Sidebar/src/ExpandableItem.js.map +0 -1
  227. package/build/esm/Sidebar/src/Header.js.map +0 -1
  228. package/build/esm/Sidebar/src/Item.js.map +0 -1
  229. package/build/esm/Sidebar/src/List.js.map +0 -1
  230. package/build/esm/Sidebar/src/Panel.js.map +0 -1
  231. package/build/esm/Sidebar/src/ResponsiveSidebarContext.js.map +0 -1
  232. package/build/esm/Sidebar/src/SecondarySidebarContext.js.map +0 -1
  233. package/build/esm/Sidebar/src/Section.js.map +0 -1
  234. package/build/esm/Sidebar/src/Sidebar.js.map +0 -1
  235. package/build/esm/Sidebar/src/useSidebar.js.map +0 -1
  236. package/build/esm/Slider/index.js.map +0 -1
  237. package/build/esm/Slider/src/Slider.js.map +0 -1
  238. package/build/esm/TagGroup/src/Tag.js.map +0 -1
  239. package/build/esm/TagGroup/src/TagGroup.js.map +0 -1
  240. package/build/esm/TagGroup/src/TagItem.js.map +0 -1
  241. package/build/esm/TimeField/i18n/index.js.map +0 -1
  242. package/build/esm/TimeField/src/TimeField.js.map +0 -1
  243. package/build/esm/TimeField/src/TimeFieldSegment.js.map +0 -1
  244. /package/build/esm/{TimeField → core/src/ListBox}/i18n/da-DK.json.js.map +0 -0
  245. /package/build/esm/{TimeField → core/src/ListBox}/i18n/de-DE.json.js.map +0 -0
  246. /package/build/esm/{TimeField → core/src/ListBox}/i18n/en-US.json.js.map +0 -0
  247. /package/build/esm/{TimeField → core/src/ListBox}/i18n/fi-FI.json.js.map +0 -0
  248. /package/build/esm/{TimeField → core/src/ListBox}/i18n/index.js +0 -0
  249. /package/build/esm/{TimeField → core/src/ListBox}/i18n/nb-NO.json.js.map +0 -0
  250. /package/build/esm/{TimeField → core/src/ListBox}/i18n/pl-PL.json.js.map +0 -0
  251. /package/build/esm/{TimeField → core/src/ListBox}/i18n/sv-SE.json.js.map +0 -0
  252. /package/build/esm/{Accordion → lab/src/Accordion}/index.js +0 -0
  253. /package/build/esm/{Accordion → lab/src/Accordion}/src/Accordion.js +0 -0
  254. /package/build/esm/{Accordion → lab/src/Accordion}/src/AccordionContext.js +0 -0
  255. /package/build/esm/{Accordion → lab/src/Accordion}/src/AccordionHeading.js +0 -0
  256. /package/build/esm/{Accordion → lab/src/Accordion}/src/AccordionItem.js +0 -0
  257. /package/build/esm/{Accordion → lab/src/Accordion}/src/AccordionPanel.js +0 -0
  258. /package/build/esm/{Accordion → lab/src/Accordion}/src/utils.js +0 -0
  259. /package/build/esm/{Alert → lab/src/Alert}/src/Alert.js +0 -0
  260. /package/build/esm/{Amount → lab/src/Amount}/src/Amount.js +0 -0
  261. /package/build/esm/{Amount → lab/src/Amount}/src/useGroupAmount.js +0 -0
  262. /package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/da-DK.json.js.map +0 -0
  263. /package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/de-DE.json.js.map +0 -0
  264. /package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/en-US.json.js.map +0 -0
  265. /package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/fi-FI.json.js.map +0 -0
  266. /package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/nb-NO.json.js.map +0 -0
  267. /package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/pl-PL.json.js.map +0 -0
  268. /package/build/esm/{Autocomplete → lab/src/Autocomplete}/i18n/sv-SE.json.js.map +0 -0
  269. /package/build/esm/{Autocomplete → lab/src/Autocomplete}/src/Autocomplete.js +0 -0
  270. /package/build/esm/{Breadcrumbs → lab/src/Breadcrumbs}/src/BreadcrumbItem.js +0 -0
  271. /package/build/esm/{Breadcrumbs → lab/src/Breadcrumbs}/src/BreadcrumbItemLink.js +0 -0
  272. /package/build/esm/{Breadcrumbs → lab/src/Breadcrumbs}/src/BreadcrumbItemStatic.js +0 -0
  273. /package/build/esm/{Breadcrumbs → lab/src/Breadcrumbs}/src/BreadcrumbOverflowMenu.js +0 -0
  274. /package/build/esm/{Breadcrumbs → lab/src/Breadcrumbs}/src/Breadcrumbs.js +0 -0
  275. /package/build/esm/{Breadcrumbs → lab/src/Breadcrumbs}/src/BreadcrumbsSeparator.js +0 -0
  276. /package/build/esm/{Breadcrumbs → lab/src/Breadcrumbs}/src/useBreadcrumbThreshold.js +0 -0
  277. /package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/da-DK.json.js.map +0 -0
  278. /package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/de-DE.json.js.map +0 -0
  279. /package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/en-US.json.js.map +0 -0
  280. /package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/fi-FI.json.js.map +0 -0
  281. /package/build/esm/{Autocomplete → lab/src/FileDropzone}/i18n/index.js +0 -0
  282. /package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/nb-NO.json.js.map +0 -0
  283. /package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/pl-PL.json.js.map +0 -0
  284. /package/build/esm/{FileDropzone → lab/src/FileDropzone}/i18n/sv-SE.json.js.map +0 -0
  285. /package/build/esm/{FileDropzone → lab/src/FileDropzone}/src/FileDropzone.js +0 -0
  286. /package/build/esm/{FileDropzone → lab/src/FileDropzone}/src/FileTrigger.js +0 -0
  287. /package/build/esm/{FileDropzone → lab/src/FileDropzone}/src/utils.js +0 -0
  288. /package/build/esm/{Filtering → lab/src/Filtering}/src/FilterDropdown.js +0 -0
  289. /package/build/esm/{Flag → lab/src/Flag}/src/Flag.js +0 -0
  290. /package/build/esm/{LabeledValue → lab/src/LabeledValue}/src/LabeledValue.js +0 -0
  291. /package/build/esm/{NumberField → lab/src/NumberField}/i18n/da-DK.json.js.map +0 -0
  292. /package/build/esm/{NumberField → lab/src/NumberField}/i18n/de-DE.json.js.map +0 -0
  293. /package/build/esm/{NumberField → lab/src/NumberField}/i18n/en-US.json.js.map +0 -0
  294. /package/build/esm/{NumberField → lab/src/NumberField}/i18n/fi-FI.json.js.map +0 -0
  295. /package/build/esm/{FileDropzone → lab/src/NumberField}/i18n/index.js +0 -0
  296. /package/build/esm/{NumberField → lab/src/NumberField}/i18n/nb-NO.json.js.map +0 -0
  297. /package/build/esm/{NumberField → lab/src/NumberField}/i18n/pl-PL.json.js.map +0 -0
  298. /package/build/esm/{NumberField → lab/src/NumberField}/i18n/sv-SE.json.js.map +0 -0
  299. /package/build/esm/{NumberField → lab/src/NumberField}/src/NumberField.js +0 -0
  300. /package/build/esm/{NumberField → lab/src/NumberField}/src/StepperButton.js +0 -0
  301. /package/build/esm/{NumberField → lab/src/NumberField}/src/cursorHelpers.js +0 -0
  302. /package/build/esm/{NumberField → lab/src/NumberField}/src/formatHelpers.js +0 -0
  303. /package/build/esm/{NumberField → lab/src/NumberField}/src/keyboardHelpers.js +0 -0
  304. /package/build/esm/{NumberField → lab/src/NumberField}/src/useAutofillStyle.js +0 -0
  305. /package/build/esm/{NumberField → lab/src/NumberField}/src/useNumberFieldFormatting.js +0 -0
  306. /package/build/esm/{NumberField → lab/src/NumberField}/src/useSapphireNumberField.js +0 -0
  307. /package/build/esm/{ProgressIndicator → lab/src/ProgressIndicator}/src/ProgressIndicator.js +0 -0
  308. /package/build/esm/{Sidebar → lab/src/Sidebar}/index.js +0 -0
  309. /package/build/esm/{Sidebar → lab/src/Sidebar}/src/Body.js +0 -0
  310. /package/build/esm/{Sidebar → lab/src/Sidebar}/src/ExpandableItem.js +0 -0
  311. /package/build/esm/{Sidebar → lab/src/Sidebar}/src/Header.js +0 -0
  312. /package/build/esm/{Sidebar → lab/src/Sidebar}/src/Item.js +0 -0
  313. /package/build/esm/{Sidebar → lab/src/Sidebar}/src/List.js +0 -0
  314. /package/build/esm/{Sidebar → lab/src/Sidebar}/src/Panel.js +0 -0
  315. /package/build/esm/{Sidebar → lab/src/Sidebar}/src/ResponsiveSidebarContext.js +0 -0
  316. /package/build/esm/{Sidebar → lab/src/Sidebar}/src/SecondarySidebarContext.js +0 -0
  317. /package/build/esm/{Sidebar → lab/src/Sidebar}/src/Section.js +0 -0
  318. /package/build/esm/{Sidebar → lab/src/Sidebar}/src/Sidebar.js +0 -0
  319. /package/build/esm/{Sidebar → lab/src/Sidebar}/src/useSidebar.js +0 -0
  320. /package/build/esm/{Slider → lab/src/Slider}/index.js +0 -0
  321. /package/build/esm/{Slider → lab/src/Slider}/src/Slider.js +0 -0
  322. /package/build/esm/{TagGroup → lab/src/TagGroup}/src/Tag.js +0 -0
  323. /package/build/esm/{TagGroup → lab/src/TagGroup}/src/TagGroup.js +0 -0
  324. /package/build/esm/{TagGroup → lab/src/TagGroup}/src/TagItem.js +0 -0
  325. /package/build/esm/{NumberField → lab/src/TimeField}/i18n/index.js +0 -0
  326. /package/build/esm/{TimeField → lab/src/TimeField}/src/TimeField.js +0 -0
  327. /package/build/esm/{TimeField → lab/src/TimeField}/src/TimeFieldSegment.js +0 -0
@@ -0,0 +1,11 @@
1
+ import { BreakpointContext } from '@danske/sapphire-react-context';
2
+ import { useContext } from 'react';
3
+
4
+ function useBreakpointContext() {
5
+ return useContext(
6
+ BreakpointContext
7
+ );
8
+ }
9
+
10
+ export { useBreakpointContext };
11
+ //# sourceMappingURL=useBreakpointContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useBreakpointContext.js","sources":["../../../../../../core/src/BreakpointProvider/useBreakpointContext.ts"],"sourcesContent":["import {\n BreakpointContext,\n BreakpointContextValue,\n} from '@danske/sapphire-react-context';\nimport { Breakpoints } from '../utils/useBreakpointTokens';\nimport { useContext } from 'react';\n\nexport function useBreakpointContext(): BreakpointContextValue<Breakpoints> | null {\n return useContext(\n BreakpointContext\n ) as BreakpointContextValue<Breakpoints> | null;\n}\n"],"names":[],"mappings":";;;AAOO,SAAS,oBAAA,GAAmE;AACjF,EAAA,OAAO,UAAA;AAAA,IACL;AAAA,GACF;AACF;;;;"}
@@ -0,0 +1,64 @@
1
+ import React, { forwardRef } from 'react';
2
+ import { useSapphireStyleProps } from '../../utils/useSapphireStyleProps.js';
3
+ import '../../utils/useSapphireTextStyleProps.js';
4
+ import { commonStyleHandlers } from '../../utils/SapphireStyleProps.js';
5
+ import '../../ListBox/src/StatelessListBox.js';
6
+ import '../../Popover/src/Popover.js';
7
+ import { useThemeCheck } from '../../utils/useThemeCheck.js';
8
+ import 'react-aria/mergeProps';
9
+ import 'react-aria/useButton';
10
+ import { filterDOMProps } from 'react-aria/filterDOMProps';
11
+
12
+ const flexStylePropsHandler = {
13
+ ...commonStyleHandlers,
14
+ flexDirection: "flexDirection",
15
+ flexWrap: "flexWrap",
16
+ flexFlow: "flexFlow",
17
+ justifyContent: { styleProp: "justifyContent", convertValue: flexAlignValue },
18
+ alignItems: { styleProp: "alignItems", convertValue: flexAlignValue },
19
+ alignContent: { styleProp: "alignContent", convertValue: flexAlignValue },
20
+ gap: "gap",
21
+ columnGap: "columnGap",
22
+ rowGap: "rowGap",
23
+ padding: "padding",
24
+ paddingLeft: "paddingLeft",
25
+ paddingRight: "paddingRight",
26
+ paddingTop: "paddingTop",
27
+ paddingBottom: "paddingBottom",
28
+ container: "container",
29
+ containerType: "containerType",
30
+ containerName: "containerName"
31
+ };
32
+ forwardRef(function Flex2(props, ref) {
33
+ useThemeCheck();
34
+ const { children, elementType, ...otherProps } = props;
35
+ const { styleProps, filteredProps } = useSapphireStyleProps(otherProps, flexStylePropsHandler);
36
+ const style = {
37
+ ...styleProps.style,
38
+ display: "flex"
39
+ };
40
+ const ElementType2 = elementType || "div";
41
+ return /* @__PURE__ */ React.createElement(
42
+ ElementType2,
43
+ {
44
+ ...filteredProps,
45
+ ...filterDOMProps(props, { global: true }),
46
+ style,
47
+ ref,
48
+ className: styleProps.className
49
+ },
50
+ children
51
+ );
52
+ });
53
+ function flexAlignValue(value) {
54
+ if (value === "start") {
55
+ return "flex-start";
56
+ }
57
+ if (value === "end") {
58
+ return "flex-end";
59
+ }
60
+ return value;
61
+ }
62
+
63
+ export { flexStylePropsHandler };
64
+ //# sourceMappingURL=Flex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Flex.js","sources":["../../../../../../../core/src/Flex/src/Flex.tsx"],"sourcesContent":["import { DOMAttributes, DOMProps } from '@react-types/shared';\nimport React, { ElementType, ForwardedRef, forwardRef, ReactNode } from 'react';\n\nimport {\n commonStyleHandlers,\n ResponsiveCssProp,\n SapphireCommonStyleProps,\n SapphireStyleProps,\n StyleHandlers,\n useSapphireStyleProps,\n useThemeCheck,\n} from '../../utils';\nimport { GlobalDomAttributes } from '../../utils/types';\nimport { filterDOMProps } from 'react-aria/filterDOMProps';\n\nexport interface FlexStyleProps extends SapphireCommonStyleProps {\n /**\n * The direction in which to layout children. See\n * [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/flex-direction).\n * @default 'row'\n */\n flexDirection?: ResponsiveCssProp<'flexDirection'>;\n /**\n * Whether to wrap items onto multiple lines. See\n * [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/flex-wrap).\n * @default false\n */\n flexWrap?: ResponsiveCssProp<'flexWrap'>;\n /**\n * CSS shorthand property specifies the direction of a flex container, as well as its wrapping\n * behavior. see [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/flex-flow)\n */\n flexFlow?: ResponsiveCssProp<'flexFlow'>;\n\n justifyContent?: ResponsiveCssProp<'justifyContent'>;\n alignItems?: ResponsiveCssProp<'alignItems'>;\n alignContent?: ResponsiveCssProp<'alignContent'>;\n\n /** The space to display between both rows and columns. See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/gap). */\n gap?: ResponsiveCssProp<'gap', 'size'>;\n /** The space to display between columns. See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/column-gap). */\n columnGap?: ResponsiveCssProp<'columnGap', 'size'>;\n /** The space to display between rows. See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/row-gap). */\n rowGap?: ResponsiveCssProp<'rowGap', 'size'>;\n\n padding?: ResponsiveCssProp<'padding', 'size'>;\n paddingLeft?: ResponsiveCssProp<'padding', 'size'>;\n paddingRight?: ResponsiveCssProp<'paddingRight', 'size'>;\n paddingTop?: ResponsiveCssProp<'paddingTop', 'size'>;\n paddingBottom?: ResponsiveCssProp<'paddingBottom', 'size'>;\n\n container?: ResponsiveCssProp<'container'>;\n containerType?: ResponsiveCssProp<'containerType'>;\n containerName?: ResponsiveCssProp<'containerName'>;\n}\nexport interface FlexProps\n extends DOMProps,\n GlobalDomAttributes,\n Omit<\n DOMAttributes,\n 'children' | 'style' | 'className' | 'dangerouslySetInnerHTML'\n >,\n SapphireStyleProps,\n FlexStyleProps {\n /** Children of the flex container. */\n children: ReactNode;\n /**\n * @default 'div'\n */\n elementType?: ElementType;\n}\n\nexport const flexStylePropsHandler: StyleHandlers<FlexStyleProps> = {\n ...commonStyleHandlers,\n flexDirection: 'flexDirection',\n flexWrap: 'flexWrap',\n flexFlow: 'flexFlow',\n justifyContent: { styleProp: 'justifyContent', convertValue: flexAlignValue },\n alignItems: { styleProp: 'alignItems', convertValue: flexAlignValue },\n alignContent: { styleProp: 'alignContent', convertValue: flexAlignValue },\n gap: 'gap',\n columnGap: 'columnGap',\n rowGap: 'rowGap',\n padding: 'padding',\n paddingLeft: 'paddingLeft',\n paddingRight: 'paddingRight',\n paddingTop: 'paddingTop',\n paddingBottom: 'paddingBottom',\n container: 'container',\n containerType: 'containerType',\n containerName: 'containerName',\n};\n\nexport const Flex = forwardRef(function Flex(\n props: FlexProps,\n ref: ForwardedRef<HTMLDivElement>\n) {\n useThemeCheck();\n const { children, elementType, ...otherProps } = props;\n const { styleProps, filteredProps } = useSapphireStyleProps<\n Omit<FlexProps, 'children'>,\n FlexStyleProps\n >(otherProps, flexStylePropsHandler);\n\n const style = {\n ...styleProps.style,\n display: 'flex',\n };\n\n const ElementType = elementType || 'div';\n\n return (\n <ElementType\n {...filteredProps}\n {...filterDOMProps(props, { global: true })}\n style={style}\n ref={ref}\n className={styleProps.className}\n >\n {children}\n </ElementType>\n );\n});\n\n/**\n * Normalize 'start' and 'end' alignment values to 'flex-start' and 'flex-end'\n * in flex containers for browser compatibility.\n */\nfunction flexAlignValue(value: string): string {\n if (value === 'start') {\n return 'flex-start';\n }\n\n if (value === 'end') {\n return 'flex-end';\n }\n\n return value;\n}\n"],"names":["Flex","ElementType"],"mappings":";;;;;;;;;;;AAwEO,MAAM,qBAAA,GAAuD;AAAA,EAClE,GAAG,mBAAA;AAAA,EACH,aAAA,EAAe,eAAA;AAAA,EACf,QAAA,EAAU,UAAA;AAAA,EACV,QAAA,EAAU,UAAA;AAAA,EACV,cAAA,EAAgB,EAAE,SAAA,EAAW,gBAAA,EAAkB,cAAc,cAAA,EAAe;AAAA,EAC5E,UAAA,EAAY,EAAE,SAAA,EAAW,YAAA,EAAc,cAAc,cAAA,EAAe;AAAA,EACpE,YAAA,EAAc,EAAE,SAAA,EAAW,cAAA,EAAgB,cAAc,cAAA,EAAe;AAAA,EACxE,GAAA,EAAK,KAAA;AAAA,EACL,SAAA,EAAW,WAAA;AAAA,EACX,MAAA,EAAQ,QAAA;AAAA,EACR,OAAA,EAAS,SAAA;AAAA,EACT,WAAA,EAAa,aAAA;AAAA,EACb,YAAA,EAAc,cAAA;AAAA,EACd,UAAA,EAAY,YAAA;AAAA,EACZ,aAAA,EAAe,eAAA;AAAA,EACf,SAAA,EAAW,WAAA;AAAA,EACX,aAAA,EAAe,eAAA;AAAA,EACf,aAAA,EAAe;AACjB;AAEoB,UAAA,CAAW,SAASA,KAAAA,CACtC,OACA,GAAA,EACA;AACA,EAAA,aAAA,EAAc;AACd,EAAA,MAAM,EAAE,QAAA,EAAU,WAAA,EAAa,GAAG,YAAW,GAAI,KAAA;AACjD,EAAA,MAAM,EAAE,UAAA,EAAY,aAAA,EAAc,GAAI,qBAAA,CAGpC,YAAY,qBAAqB,CAAA;AAEnC,EAAA,MAAM,KAAA,GAAQ;AAAA,IACZ,GAAG,UAAA,CAAW,KAAA;AAAA,IACd,OAAA,EAAS;AAAA,GACX;AAEA,EAAA,MAAMC,eAAc,WAAA,IAAe,KAAA;AAEnC,EAAA,uBACE,KAAA,CAAA,aAAA;AAAA,IAACA,YAAAA;AAAA,IAAA;AAAA,MACE,GAAG,aAAA;AAAA,MACH,GAAG,cAAA,CAAe,KAAA,EAAO,EAAE,MAAA,EAAQ,MAAM,CAAA;AAAA,MAC1C,KAAA;AAAA,MACA,GAAA;AAAA,MACA,WAAW,UAAA,CAAW;AAAA,KAAA;AAAA,IAErB;AAAA,GACH;AAEJ,CAAC;AAMD,SAAS,eAAe,KAAA,EAAuB;AAC7C,EAAA,IAAI,UAAU,OAAA,EAAS;AACrB,IAAA,OAAO,YAAA;AAAA,EACT;AAEA,EAAA,IAAI,UAAU,KAAA,EAAO;AACnB,IAAA,OAAO,UAAA;AAAA,EACT;AAEA,EAAA,OAAO,KAAA;AACT;;;;"}
@@ -0,0 +1,55 @@
1
+ import React, { forwardRef } from 'react';
2
+ import { useSapphireStyleProps } from '../../utils/useSapphireStyleProps.js';
3
+ import '../../utils/useSapphireTextStyleProps.js';
4
+ import { commonStyleHandlers } from '../../utils/SapphireStyleProps.js';
5
+ import '../../ListBox/src/StatelessListBox.js';
6
+ import '../../Popover/src/Popover.js';
7
+ import { useThemeCheck } from '../../utils/useThemeCheck.js';
8
+ import 'react-aria/mergeProps';
9
+ import 'react-aria/useButton';
10
+ import { filterDOMProps } from 'react-aria/filterDOMProps';
11
+
12
+ const gridStylePropsHandler = {
13
+ ...commonStyleHandlers,
14
+ gridAutoFlow: "gridAutoFlow",
15
+ gridAutoColumns: "gridAutoColumns",
16
+ gridAutoRows: "gridAutoRows",
17
+ gridTemplateAreas: "gridTemplateAreas",
18
+ gridTemplateColumns: "gridTemplateColumns",
19
+ gridTemplateRows: "gridTemplateRows",
20
+ gap: "gap",
21
+ columnGap: "columnGap",
22
+ rowGap: "rowGap",
23
+ justifyItems: "justifyItems",
24
+ justifyContent: "justifyContent",
25
+ alignItems: "alignItems",
26
+ alignContent: "alignContent",
27
+ padding: "padding",
28
+ paddingLeft: "paddingLeft",
29
+ paddingRight: "paddingRight",
30
+ paddingTop: "paddingTop",
31
+ paddingBottom: "paddingBottom"
32
+ };
33
+ forwardRef(function Grid2(props, ref) {
34
+ useThemeCheck();
35
+ const { children, ...otherProps } = props;
36
+ const { styleProps, filteredProps } = useSapphireStyleProps(otherProps, gridStylePropsHandler);
37
+ const style = {
38
+ ...styleProps.style,
39
+ display: "grid"
40
+ };
41
+ return /* @__PURE__ */ React.createElement(
42
+ "div",
43
+ {
44
+ ...filteredProps,
45
+ ...filterDOMProps(props, { global: true }),
46
+ style,
47
+ ref,
48
+ className: styleProps.className
49
+ },
50
+ children
51
+ );
52
+ });
53
+
54
+ export { gridStylePropsHandler };
55
+ //# sourceMappingURL=Grid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Grid.js","sources":["../../../../../../../core/src/Grid/src/Grid.tsx"],"sourcesContent":["import React, { ForwardedRef, forwardRef, ReactNode } from 'react';\nimport { DOMAttributes, DOMProps } from '@react-types/shared';\n\nimport {\n commonStyleHandlers,\n ResponsiveCssProp,\n SapphireCommonStyleProps,\n SapphireStyleProps,\n StyleHandlers,\n useSapphireStyleProps,\n useThemeCheck,\n} from '../../utils';\nimport { GlobalDomAttributes } from '../../utils/types';\nimport { filterDOMProps } from 'react-aria/filterDOMProps';\n\nexport interface GridStyleProps extends SapphireCommonStyleProps {\n /* Controls how the auto-placement algorithm works. Specifies how auto-placed items get flowed into the grid.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-flow).\n */\n gridAutoFlow?: ResponsiveCssProp<'gridAutoFlow'>;\n\n /* Specifies the size of an implicitly-created grid column track or pattern of tracks.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-columns).\n */\n gridAutoColumns?: ResponsiveCssProp<'gridAutoColumns'>;\n\n /* Specifies the size of an implicitly-created grid row track or pattern of tracks.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-rows).\n */\n gridAutoRows?: ResponsiveCssProp<'gridAutoRows'>;\n\n /* Specifies named grid areas, establishing the cells in the grid and assigning them names.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-areas).\n */\n gridTemplateAreas?: ResponsiveCssProp<'gridTemplateAreas'>;\n\n /* Defines the line names and track sizing functions of the grid columns.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-columns).\n */\n gridTemplateColumns?: ResponsiveCssProp<'gridTemplateColumns'>;\n\n /* Defines the line names and track sizing functions of the grid rows.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-rows).\n */\n gridTemplateRows?: ResponsiveCssProp<'gridTemplateRows'>;\n\n /* The space between rows and columns. It is a shorthand for rowGap and columnGap.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/gap).\n */\n gap?: ResponsiveCssProp<'gap', 'size'>;\n\n /* The space to display between a grid's columns.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/column-gap).\n */\n columnGap?: ResponsiveCssProp<'columnGap', 'size'>;\n\n /* The space to display between a grid's rows.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/row-gap).\n */\n rowGap?: ResponsiveCssProp<'rowGap', 'size'>;\n\n /* The space to display between a grid's rows.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/justify-items).\n */\n justifyItems?: ResponsiveCssProp<'justifyItems'>;\n\n /* The space to display between a grid's columns.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/justify-content).\n */\n justifyContent?: ResponsiveCssProp<'justifyContent'>;\n\n /* Sets the align-self value on all direct children as a group\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/align-items).\n */\n alignItems?: ResponsiveCssProp<'alignItems'>;\n\n /* Sets the distribution of space between and around content items along the grid's block axis.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/align-content).\n */\n alignContent?: ResponsiveCssProp<'alignContent'>;\n padding?: ResponsiveCssProp<'padding', 'size'>;\n paddingLeft?: ResponsiveCssProp<'padding', 'size'>;\n paddingRight?: ResponsiveCssProp<'paddingRight', 'size'>;\n paddingTop?: ResponsiveCssProp<'paddingTop', 'size'>;\n paddingBottom?: ResponsiveCssProp<'paddingBottom', 'size'>;\n}\nexport interface GridProps\n extends DOMProps,\n Omit<\n DOMAttributes,\n 'children' | 'style' | 'className' | 'dangerouslySetInnerHTML'\n >,\n SapphireStyleProps,\n GridStyleProps,\n GlobalDomAttributes {\n /** Children of the grid container. */\n children: ReactNode;\n}\n\nexport const gridStylePropsHandler: StyleHandlers<GridStyleProps> = {\n ...commonStyleHandlers,\n gridAutoFlow: 'gridAutoFlow',\n gridAutoColumns: 'gridAutoColumns',\n gridAutoRows: 'gridAutoRows',\n gridTemplateAreas: 'gridTemplateAreas',\n gridTemplateColumns: 'gridTemplateColumns',\n gridTemplateRows: 'gridTemplateRows',\n gap: 'gap',\n columnGap: 'columnGap',\n rowGap: 'rowGap',\n justifyItems: 'justifyItems',\n justifyContent: 'justifyContent',\n alignItems: 'alignItems',\n alignContent: 'alignContent',\n padding: 'padding',\n paddingLeft: 'paddingLeft',\n paddingRight: 'paddingRight',\n paddingTop: 'paddingTop',\n paddingBottom: 'paddingBottom',\n};\n\nexport const Grid = forwardRef(function Grid(\n props: GridProps,\n ref: ForwardedRef<HTMLDivElement>\n) {\n useThemeCheck();\n\n const { children, ...otherProps } = props;\n const { styleProps, filteredProps } = useSapphireStyleProps<\n Omit<GridProps, 'children'>,\n GridStyleProps\n >(otherProps, gridStylePropsHandler);\n\n const style = {\n ...styleProps.style,\n display: 'grid',\n };\n\n return (\n <div\n {...filteredProps}\n {...filterDOMProps(props, { global: true })}\n style={style}\n ref={ref}\n className={styleProps.className}\n >\n {children}\n </div>\n );\n});\n"],"names":["Grid"],"mappings":";;;;;;;;;;;AAmGO,MAAM,qBAAA,GAAuD;AAAA,EAClE,GAAG,mBAAA;AAAA,EACH,YAAA,EAAc,cAAA;AAAA,EACd,eAAA,EAAiB,iBAAA;AAAA,EACjB,YAAA,EAAc,cAAA;AAAA,EACd,iBAAA,EAAmB,mBAAA;AAAA,EACnB,mBAAA,EAAqB,qBAAA;AAAA,EACrB,gBAAA,EAAkB,kBAAA;AAAA,EAClB,GAAA,EAAK,KAAA;AAAA,EACL,SAAA,EAAW,WAAA;AAAA,EACX,MAAA,EAAQ,QAAA;AAAA,EACR,YAAA,EAAc,cAAA;AAAA,EACd,cAAA,EAAgB,gBAAA;AAAA,EAChB,UAAA,EAAY,YAAA;AAAA,EACZ,YAAA,EAAc,cAAA;AAAA,EACd,OAAA,EAAS,SAAA;AAAA,EACT,WAAA,EAAa,aAAA;AAAA,EACb,YAAA,EAAc,cAAA;AAAA,EACd,UAAA,EAAY,YAAA;AAAA,EACZ,aAAA,EAAe;AACjB;AAEoB,UAAA,CAAW,SAASA,KAAAA,CACtC,OACA,GAAA,EACA;AACA,EAAA,aAAA,EAAc;AAEd,EAAA,MAAM,EAAE,QAAA,EAAU,GAAG,UAAA,EAAW,GAAI,KAAA;AACpC,EAAA,MAAM,EAAE,UAAA,EAAY,aAAA,EAAc,GAAI,qBAAA,CAGpC,YAAY,qBAAqB,CAAA;AAEnC,EAAA,MAAM,KAAA,GAAQ;AAAA,IACZ,GAAG,UAAA,CAAW,KAAA;AAAA,IACd,OAAA,EAAS;AAAA,GACX;AAEA,EAAA,uBACE,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACE,GAAG,aAAA;AAAA,MACH,GAAG,cAAA,CAAe,KAAA,EAAO,EAAE,MAAA,EAAQ,MAAM,CAAA;AAAA,MAC1C,KAAA;AAAA,MACA,GAAA;AAAA,MACA,WAAW,UAAA,CAAW;AAAA,KAAA;AAAA,IAErB;AAAA,GACH;AAEJ,CAAC;;;;"}
@@ -0,0 +1,37 @@
1
+ import clsx from 'clsx';
2
+ import React from 'react';
3
+ import { getWrappedElement } from '@react-spectrum/utils';
4
+ import iconStyles from '@danske/sapphire-css/components/icon/icon.module.css';
5
+ import { useSapphireStyleProps } from '../../utils/useSapphireStyleProps.js';
6
+ import '../../utils/useSapphireTextStyleProps.js';
7
+ import '../../ListBox/src/StatelessListBox.js';
8
+ import '../../Popover/src/Popover.js';
9
+ import { useThemeCheck } from '../../utils/useThemeCheck.js';
10
+ import 'react-aria/mergeProps';
11
+ import 'react-aria/useButton';
12
+
13
+ const Icon = React.forwardRef(function Icon2({
14
+ size = "md",
15
+ color = "inherit",
16
+ "aria-label": ariaLabel,
17
+ ...props
18
+ }, ref) {
19
+ useThemeCheck();
20
+ const { styleProps } = useSapphireStyleProps(props);
21
+ const colorClass = color === "inherit" ? void 0 : iconStyles[`sapphire-icon--${color}`];
22
+ return React.cloneElement(getWrappedElement(props.children), {
23
+ ref,
24
+ role: "img",
25
+ ...ariaLabel ? { "aria-label": ariaLabel } : { "aria-hidden": true },
26
+ className: clsx(
27
+ iconStyles["sapphire-icon"],
28
+ styleProps.className,
29
+ iconStyles[`sapphire-icon--${size}`],
30
+ colorClass
31
+ ),
32
+ style: styleProps.style
33
+ });
34
+ });
35
+
36
+ export { Icon };
37
+ //# sourceMappingURL=Icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Icon.js","sources":["../../../../../../../core/src/Icon/src/Icon.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport React from 'react';\nimport { getWrappedElement } from '@react-spectrum/utils';\nimport styles from '@danske/sapphire-css/components/icon/icon.module.css';\n\nimport {\n SapphireStyleProps,\n useSapphireStyleProps,\n useThemeCheck,\n} from '../../utils';\nimport { GlobalDomAttributes } from '../../utils/types';\n\nexport type IconProps = GlobalDomAttributes &\n SapphireStyleProps & {\n 'aria-label'?: string;\n /**\n * The size of the icon.\n * @default 'md'\n */\n size?: 'sm' | 'md' | 'lg' | 'xl';\n /**\n * The semantic color of the icon\n * @default 'inherit'\n */\n color?:\n | 'inherit'\n | 'primary'\n | 'secondary'\n | 'positive'\n | 'negative'\n | 'warning'\n | 'informative';\n children: React.ReactNode;\n };\n\n/**\n * `Icon` should be used to render Sapphire icon or custom SVG with the correct size, semantic color, and\n * accessibility attributes.\n *\n * Provide an `aria-label` when the icon conveys meaning on its own. If the icon is decorative,\n * omit `aria-label` and it will be hidden from assistive technologies.\n */\nexport const Icon = React.forwardRef(function Icon(\n {\n size = 'md',\n color = 'inherit',\n 'aria-label': ariaLabel,\n ...props\n }: IconProps,\n ref: React.Ref<HTMLSpanElement>\n) {\n useThemeCheck();\n\n const { styleProps } = useSapphireStyleProps(props);\n const colorClass =\n color === 'inherit' ? undefined : styles[`sapphire-icon--${color}`];\n\n return React.cloneElement(getWrappedElement(props.children), {\n ref,\n role: 'img',\n ...(ariaLabel ? { 'aria-label': ariaLabel } : { 'aria-hidden': true }),\n className: clsx(\n styles['sapphire-icon'],\n styleProps.className,\n styles[`sapphire-icon--${size}`],\n colorClass\n ),\n style: styleProps.style,\n });\n});\n"],"names":["Icon","styles"],"mappings":";;;;;;;;;;;;AA0CO,MAAM,IAAA,GAAO,KAAA,CAAM,UAAA,CAAW,SAASA,KAAAA,CAC5C;AAAA,EACE,IAAA,GAAO,IAAA;AAAA,EACP,KAAA,GAAQ,SAAA;AAAA,EACR,YAAA,EAAc,SAAA;AAAA,EACd,GAAG;AACL,CAAA,EACA,GAAA,EACA;AACA,EAAA,aAAA,EAAc;AAEd,EAAA,MAAM,EAAE,UAAA,EAAW,GAAI,qBAAA,CAAsB,KAAK,CAAA;AAClD,EAAA,MAAM,aACJ,KAAA,KAAU,SAAA,GAAY,SAAYC,UAAA,CAAO,CAAA,eAAA,EAAkB,KAAK,CAAA,CAAE,CAAA;AAEpE,EAAA,OAAO,KAAA,CAAM,YAAA,CAAa,iBAAA,CAAkB,KAAA,CAAM,QAAQ,CAAA,EAAG;AAAA,IAC3D,GAAA;AAAA,IACA,IAAA,EAAM,KAAA;AAAA,IACN,GAAI,YAAY,EAAE,YAAA,EAAc,WAAU,GAAI,EAAE,eAAe,IAAA,EAAK;AAAA,IACpE,SAAA,EAAW,IAAA;AAAA,MACTA,WAAO,eAAe,CAAA;AAAA,MACtB,UAAA,CAAW,SAAA;AAAA,MACXA,UAAA,CAAO,CAAA,eAAA,EAAkB,IAAI,CAAA,CAAE,CAAA;AAAA,MAC/B;AAAA,KACF;AAAA,IACA,OAAO,UAAA,CAAW;AAAA,GACnB,CAAA;AACH,CAAC;;;;"}
@@ -0,0 +1,7 @@
1
+ var empty$6 = "Ingen resultater";
2
+ var da = {
3
+ empty: empty$6
4
+ };
5
+
6
+ export { da as default, empty$6 as empty };
7
+ //# sourceMappingURL=da-DK.json.js.map
@@ -0,0 +1,7 @@
1
+ var empty$4 = "Keine Ergebnisse";
2
+ var de = {
3
+ empty: empty$4
4
+ };
5
+
6
+ export { de as default, empty$4 as empty };
7
+ //# sourceMappingURL=de-DE.json.js.map
@@ -0,0 +1,7 @@
1
+ var empty$5 = "No results";
2
+ var en = {
3
+ empty: empty$5
4
+ };
5
+
6
+ export { en as default, empty$5 as empty };
7
+ //# sourceMappingURL=en-US.json.js.map
@@ -0,0 +1,7 @@
1
+ var empty$3 = "Ei tuloksia";
2
+ var fi = {
3
+ empty: empty$3
4
+ };
5
+
6
+ export { fi as default, empty$3 as empty };
7
+ //# sourceMappingURL=fi-FI.json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../core/src/ListBox/i18n/index.ts"],"sourcesContent":["import da from './da-DK.json';\nimport en from './en-US.json';\nimport de from './de-DE.json';\nimport fi from './fi-FI.json';\nimport no from './nb-NO.json';\nimport pl from './pl-PL.json';\nimport se from './sv-SE.json';\n\nexport default {\n 'da-DK': da,\n 'en-US': en,\n 'de-DE': de,\n 'fi-FI': fi,\n 'nb-NO': no,\n 'pl-PL': pl,\n 'sv-SE': se,\n};\n"],"names":[],"mappings":";;;;;;;;AAQA,mBAAe;AAAA,EACb,OAAA,EAAS,EAAA;AAAA,EACT,OAAA,EAAS,EAAA;AAAA,EACT,OAAA,EAAS,EAAA;AAAA,EACT,OAAA,EAAS,EAAA;AAAA,EACT,OAAA,EAAS,EAAA;AAAA,EACT,OAAA,EAAS,EAAA;AAAA,EACT,OAAA,EAAS;AACX,CAAA;;;;"}
@@ -0,0 +1,7 @@
1
+ var empty$2 = "Ingen resultater";
2
+ var no = {
3
+ empty: empty$2
4
+ };
5
+
6
+ export { no as default, empty$2 as empty };
7
+ //# sourceMappingURL=nb-NO.json.js.map
@@ -0,0 +1,7 @@
1
+ var empty$1 = "Brak wyników";
2
+ var pl = {
3
+ empty: empty$1
4
+ };
5
+
6
+ export { pl as default, empty$1 as empty };
7
+ //# sourceMappingURL=pl-PL.json.js.map
@@ -0,0 +1,7 @@
1
+ var empty = "Inga resultat";
2
+ var se = {
3
+ empty: empty
4
+ };
5
+
6
+ export { se as default, empty };
7
+ //# sourceMappingURL=sv-SE.json.js.map
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+
3
+ const ListBoxContext = React.createContext(
4
+ null
5
+ );
6
+
7
+ export { ListBoxContext };
8
+ //# sourceMappingURL=ListBoxContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListBoxContext.js","sources":["../../../../../../../core/src/ListBox/src/ListBoxContext.ts"],"sourcesContent":["import { ListState } from 'react-stately/useListState';\nimport React from 'react';\n\ninterface ListBoxContextValue {\n state: ListState<unknown>;\n shouldUseVirtualFocus: boolean;\n disableSelectedStyles: boolean;\n containerMaxWidth?: number;\n}\n\nexport const ListBoxContext = React.createContext<ListBoxContextValue | null>(\n null\n);\n"],"names":[],"mappings":";;AAUO,MAAM,iBAAiB,KAAA,CAAM,aAAA;AAAA,EAClC;AACF;;;;"}
@@ -0,0 +1,26 @@
1
+ import React from 'react';
2
+ import clsx from 'clsx';
3
+ import styles from '@danske/sapphire-css/components/listbox/listbox.module.css';
4
+
5
+ const ListBoxEmptyState = ({
6
+ children
7
+ }) => /* @__PURE__ */ React.createElement(
8
+ "div",
9
+ {
10
+ className: clsx(
11
+ styles["sapphire-listbox__item"],
12
+ styles["sapphire-listbox__item--empty"]
13
+ )
14
+ },
15
+ /* @__PURE__ */ React.createElement("div", { className: clsx(styles["sapphire-listbox__content"]) }, /* @__PURE__ */ React.createElement(
16
+ "div",
17
+ {
18
+ role: "presentation",
19
+ className: styles["sapphire-listbox__primary-text"]
20
+ },
21
+ children
22
+ ))
23
+ );
24
+
25
+ export { ListBoxEmptyState };
26
+ //# sourceMappingURL=ListBoxEmptyState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListBoxEmptyState.js","sources":["../../../../../../../core/src/ListBox/src/ListBoxEmptyState.tsx"],"sourcesContent":["import React from 'react';\nimport clsx from 'clsx';\nimport styles from '@danske/sapphire-css/components/listbox/listbox.module.css';\n\ninterface ListBoxEmptyStateProps {\n children?: React.ReactNode;\n}\n\nexport const ListBoxEmptyState: React.FC<ListBoxEmptyStateProps> = ({\n children,\n}) => (\n <div\n className={clsx(\n styles['sapphire-listbox__item'],\n styles['sapphire-listbox__item--empty']\n )}\n >\n <div className={clsx(styles['sapphire-listbox__content'])}>\n <div\n role=\"presentation\"\n className={styles['sapphire-listbox__primary-text']}\n >\n {children}\n </div>\n </div>\n </div>\n);\n"],"names":[],"mappings":";;;;AAQO,MAAM,oBAAsD,CAAC;AAAA,EAClE;AACF,CAAA,qBACE,KAAA,CAAA,aAAA;AAAA,EAAC,KAAA;AAAA,EAAA;AAAA,IACC,SAAA,EAAW,IAAA;AAAA,MACT,OAAO,wBAAwB,CAAA;AAAA,MAC/B,OAAO,+BAA+B;AAAA;AACxC,GAAA;AAAA,sCAEC,KAAA,EAAA,EAAI,SAAA,EAAW,KAAK,MAAA,CAAO,2BAA2B,CAAC,CAAA,EAAA,kBACtD,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,IAAA,EAAK,cAAA;AAAA,MACL,SAAA,EAAW,OAAO,gCAAgC;AAAA,KAAA;AAAA,IAEjD;AAAA,GAEL;AACF;;;;"}
@@ -0,0 +1,37 @@
1
+ import React from 'react';
2
+ import clsx from 'clsx';
3
+ import iconStyles from '@danske/sapphire-css/components/icon/icon.module.css';
4
+ import styles from '@danske/sapphire-css/components/listbox/listbox.module.css';
5
+ import { Skeleton } from '../../Skeleton/src/Skeleton.js';
6
+
7
+ const ListBoxItemSkeleton = ({
8
+ index,
9
+ primaryText = true,
10
+ secondaryText = false,
11
+ icon = false,
12
+ iconSize = "lg"
13
+ }) => /* @__PURE__ */ React.createElement(
14
+ "div",
15
+ {
16
+ className: clsx(
17
+ styles["sapphire-listbox__item"],
18
+ styles["js-hover"],
19
+ styles["js-focus"]
20
+ )
21
+ },
22
+ /* @__PURE__ */ React.createElement("div", { className: styles["sapphire-listbox__content"] }, icon && /* @__PURE__ */ React.createElement("div", { className: styles["sapphire-listbox__icon"] }, /* @__PURE__ */ React.createElement(
23
+ "div",
24
+ {
25
+ className: clsx(iconStyles["sapphire-icon"], {
26
+ [iconStyles["sapphire-icon--sm"]]: iconSize === "sm",
27
+ [iconStyles["sapphire-icon--md"]]: iconSize === "md",
28
+ [iconStyles["sapphire-icon--lg"]]: iconSize === "lg",
29
+ [iconStyles["sapphire-icon--xl"]]: iconSize === "xl"
30
+ })
31
+ },
32
+ icon === true ? /* @__PURE__ */ React.createElement(Skeleton.Circle, { index }) : icon
33
+ )), /* @__PURE__ */ React.createElement("div", { className: styles["sapphire-listbox__text-container"] }, /* @__PURE__ */ React.createElement("div", { className: styles["sapphire-listbox__primary-text"] }, primaryText === true ? /* @__PURE__ */ React.createElement(Skeleton.Text, { index }) : primaryText), secondaryText && /* @__PURE__ */ React.createElement("div", { className: styles["sapphire-listbox__secondary-text"] }, secondaryText === true ? /* @__PURE__ */ React.createElement(Skeleton.Text, { index }) : secondaryText)))
34
+ );
35
+
36
+ export { ListBoxItemSkeleton };
37
+ //# sourceMappingURL=ListBoxItemSkeleton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListBoxItemSkeleton.js","sources":["../../../../../../../core/src/ListBox/src/ListBoxItemSkeleton.tsx"],"sourcesContent":["import React from 'react';\nimport clsx from 'clsx';\nimport iconStyles from '@danske/sapphire-css/components/icon/icon.module.css';\nimport styles from '@danske/sapphire-css/components/listbox/listbox.module.css';\nimport { Skeleton } from '../../Skeleton';\n\ninterface ListBoxItemSkeletonProps {\n index?: number;\n /**\n * Can be used for rendering custom skeleton (ReactNode) instead of primaryText\n * @default 'true'\n */\n primaryText?: boolean | React.ReactNode;\n secondaryText?: boolean | React.ReactNode;\n icon?: boolean | React.ReactNode;\n /**\n * The size of the skeleton icon.\n * @default 'lg'\n */\n iconSize?: 'sm' | 'md' | 'lg' | 'xl';\n}\n\nexport const ListBoxItemSkeleton: React.FC<ListBoxItemSkeletonProps> = ({\n index,\n primaryText = true,\n secondaryText = false,\n icon = false,\n iconSize = 'lg',\n}) => (\n <div\n className={clsx(\n styles['sapphire-listbox__item'],\n styles['js-hover'],\n styles['js-focus']\n )}\n >\n <div className={styles['sapphire-listbox__content']}>\n {icon && (\n <div className={styles['sapphire-listbox__icon']}>\n <div\n className={clsx(iconStyles['sapphire-icon'], {\n [iconStyles['sapphire-icon--sm']]: iconSize === 'sm',\n [iconStyles['sapphire-icon--md']]: iconSize === 'md',\n [iconStyles['sapphire-icon--lg']]: iconSize === 'lg',\n [iconStyles['sapphire-icon--xl']]: iconSize === 'xl',\n })}\n >\n {icon === true ? <Skeleton.Circle index={index} /> : icon}\n </div>\n </div>\n )}\n <div className={styles['sapphire-listbox__text-container']}>\n <div className={styles['sapphire-listbox__primary-text']}>\n {primaryText === true ? <Skeleton.Text index={index} /> : primaryText}\n </div>\n {secondaryText && (\n <div className={styles['sapphire-listbox__secondary-text']}>\n {secondaryText === true ? (\n <Skeleton.Text index={index} />\n ) : (\n secondaryText\n )}\n </div>\n )}\n </div>\n </div>\n </div>\n);\n"],"names":[],"mappings":";;;;;;AAsBO,MAAM,sBAA0D,CAAC;AAAA,EACtE,KAAA;AAAA,EACA,WAAA,GAAc,IAAA;AAAA,EACd,aAAA,GAAgB,KAAA;AAAA,EAChB,IAAA,GAAO,KAAA;AAAA,EACP,QAAA,GAAW;AACb,CAAA,qBACE,KAAA,CAAA,aAAA;AAAA,EAAC,KAAA;AAAA,EAAA;AAAA,IACC,SAAA,EAAW,IAAA;AAAA,MACT,OAAO,wBAAwB,CAAA;AAAA,MAC/B,OAAO,UAAU,CAAA;AAAA,MACjB,OAAO,UAAU;AAAA;AACnB,GAAA;AAAA,kBAEA,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,2BAA2B,CAAA,EAAA,EAC/C,IAAA,oBACC,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,wBAAwB,CAAA,EAAA,kBAC7C,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,IAAA,CAAK,UAAA,CAAW,eAAe,CAAA,EAAG;AAAA,QAC3C,CAAC,UAAA,CAAW,mBAAmB,CAAC,GAAG,QAAA,KAAa,IAAA;AAAA,QAChD,CAAC,UAAA,CAAW,mBAAmB,CAAC,GAAG,QAAA,KAAa,IAAA;AAAA,QAChD,CAAC,UAAA,CAAW,mBAAmB,CAAC,GAAG,QAAA,KAAa,IAAA;AAAA,QAChD,CAAC,UAAA,CAAW,mBAAmB,CAAC,GAAG,QAAA,KAAa;AAAA,OACjD;AAAA,KAAA;AAAA,IAEA,SAAS,IAAA,mBAAO,KAAA,CAAA,aAAA,CAAC,SAAS,MAAA,EAAT,EAAgB,OAAc,CAAA,GAAK;AAAA,GAEzD,CAAA,kBAEF,KAAA,CAAA,aAAA,CAAC,SAAI,SAAA,EAAW,MAAA,CAAO,kCAAkC,CAAA,EAAA,kBACvD,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,OAAO,gCAAgC,CAAA,EAAA,EACpD,gBAAgB,IAAA,mBAAO,KAAA,CAAA,aAAA,CAAC,SAAS,IAAA,EAAT,EAAc,KAAA,EAAc,CAAA,GAAK,WAC5D,CAAA,EACC,aAAA,wCACE,KAAA,EAAA,EAAI,SAAA,EAAW,OAAO,kCAAkC,CAAA,EAAA,EACtD,kBAAkB,IAAA,mBACjB,KAAA,CAAA,aAAA,CAAC,SAAS,IAAA,EAAT,EAAc,OAAc,CAAA,GAE7B,aAEJ,CAEJ,CACF;AACF;;;;"}
@@ -0,0 +1,105 @@
1
+ import React, { useContext } from 'react';
2
+ import clsx from 'clsx';
3
+ import { useHover } from 'react-aria/useHover';
4
+ import { isFocusVisible } from 'react-aria/private/interactions/useFocusVisible';
5
+ import { useFocusRing } from 'react-aria/useFocusRing';
6
+ import { useOption } from 'react-aria/useListBox';
7
+ import { mergeProps } from 'react-aria/mergeProps';
8
+ import styles from '@danske/sapphire-css/components/listbox/listbox.module.css';
9
+ import avatarStyles from '@danske/sapphire-css/components/avatar/avatar.module.css';
10
+ import { Checkmark } from '@danske/sapphire-icons/react';
11
+ import { Icon } from '../../Icon/src/Icon.js';
12
+ import '@danske/sapphire-react-context';
13
+ import 'react-aria/useId';
14
+ import '../../utils/useSapphireTextStyleProps.js';
15
+ import './StatelessListBox.js';
16
+ import '../../Popover/src/Popover.js';
17
+ import 'react-aria/useButton';
18
+ import { usePreventTouchEnd } from '../../utils/usePreventTouchEnd.js';
19
+ import { ListBoxContext } from './ListBoxContext.js';
20
+ import '@danske/sapphire-css/themes/default';
21
+ import '@danske/sapphire-css/themes/default-dark';
22
+ import '@danske/sapphire-css/themes/realkredit';
23
+ import { tokens } from '@danske/sapphire-css/themes';
24
+ import 'react-dom';
25
+ import 'react-aria/I18nProvider';
26
+ import '../../ThemeRoot/src/ThemeRoot.js';
27
+ import 'react-aria/PortalProvider';
28
+
29
+ const ListBoxOption = ({
30
+ item
31
+ }) => {
32
+ const ref = React.useRef(null);
33
+ const {
34
+ state,
35
+ shouldUseVirtualFocus,
36
+ disableSelectedStyles,
37
+ containerMaxWidth
38
+ } = useContext(ListBoxContext);
39
+ const {
40
+ optionProps,
41
+ isDisabled,
42
+ isFocused: isVirtuallyFocused,
43
+ isPressed
44
+ } = useOption({ key: item.key }, state, ref);
45
+ const { focusProps, isFocusVisible: isFocusRingVisible } = useFocusRing();
46
+ const { hoverProps, isHovered } = useHover({ isDisabled });
47
+ usePreventTouchEnd(ref);
48
+ const rightIcon = item.props.rightIcon || item.props.icon;
49
+ return /* @__PURE__ */ React.createElement(
50
+ "div",
51
+ {
52
+ ...mergeProps(
53
+ optionProps,
54
+ hoverProps,
55
+ shouldUseVirtualFocus ? {} : focusProps
56
+ ),
57
+ ref,
58
+ className: clsx(
59
+ styles["sapphire-listbox__item"],
60
+ styles["js-hover"],
61
+ styles["js-focus"],
62
+ {
63
+ [styles["is-disabled"]]: isDisabled,
64
+ [styles["is-focus"]]: shouldUseVirtualFocus ? isVirtuallyFocused && isFocusVisible() : isFocusRingVisible,
65
+ [styles["is-hover"]]: isHovered,
66
+ [styles["is-active"]]: isPressed
67
+ }
68
+ )
69
+ },
70
+ /* @__PURE__ */ React.createElement(
71
+ "div",
72
+ {
73
+ className: clsx(styles["sapphire-listbox__content"]),
74
+ style: containerMaxWidth !== void 0 ? {
75
+ maxWidth: `calc(${containerMaxWidth}px - 2 * ${tokens.size.iconSm})`
76
+ } : void 0
77
+ },
78
+ !disableSelectedStyles && /* @__PURE__ */ React.createElement(
79
+ "div",
80
+ {
81
+ className: clsx(styles["sapphire-listbox__checkmark"]),
82
+ style: {
83
+ visibility: state.selectionManager.selectedKeys.has(item.key) ? "visible" : "hidden"
84
+ }
85
+ },
86
+ /* @__PURE__ */ React.createElement(Icon, { size: "sm", color: "informative" }, /* @__PURE__ */ React.createElement(Checkmark, null))
87
+ ),
88
+ item.props.leftIcon && /* @__PURE__ */ React.createElement("div", { className: clsx(styles["sapphire-listbox__icon"]) }, /* @__PURE__ */ React.createElement(Icon, { size: "sm" }, item.props.leftIcon)),
89
+ /* @__PURE__ */ React.createElement("div", { className: clsx(styles["sapphire-listbox__text-container"]) }, /* @__PURE__ */ React.createElement("div", { className: clsx(styles["sapphire-listbox__primary-text"]) }, item.rendered), item.props.secondaryText && /* @__PURE__ */ React.createElement("div", { className: clsx(styles["sapphire-listbox__secondary-text"]) }, item.props.secondaryText)),
90
+ rightIcon ? /* @__PURE__ */ React.createElement("div", { className: clsx(styles["sapphire-listbox__icon"]) }, /* @__PURE__ */ React.createElement(Icon, { size: "sm" }, rightIcon)) : item.props.avatar && /* @__PURE__ */ React.createElement("div", { className: clsx(styles["sapphire-listbox__icon"]) }, /* @__PURE__ */ React.createElement(
91
+ "div",
92
+ {
93
+ className: clsx(
94
+ avatarStyles["sapphire-avatar"],
95
+ avatarStyles["sapphire-avatar--sm"]
96
+ )
97
+ },
98
+ item.props.avatar
99
+ ))
100
+ )
101
+ );
102
+ };
103
+
104
+ export { ListBoxOption };
105
+ //# sourceMappingURL=ListBoxOption.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListBoxOption.js","sources":["../../../../../../../core/src/ListBox/src/ListBoxOption.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport clsx from 'clsx';\nimport { useHover } from 'react-aria/useHover';\nimport { isFocusVisible } from 'react-aria/private/interactions/useFocusVisible';\nimport { useFocusRing } from 'react-aria/useFocusRing';\nimport { useOption } from 'react-aria/useListBox';\nimport { mergeProps } from 'react-aria/mergeProps';\nimport { Node } from '@react-types/shared';\n\nimport styles from '@danske/sapphire-css/components/listbox/listbox.module.css';\nimport avatarStyles from '@danske/sapphire-css/components/avatar/avatar.module.css';\nimport { Checkmark } from '@danske/sapphire-icons/react';\n\nimport { Icon } from '../../Icon';\nimport { usePreventTouchEnd } from '../../utils';\nimport { ListBoxContext } from './ListBoxContext';\nimport { tokens } from '../../SapphireProvider';\n\ninterface OptionProps<T> {\n item: Node<T>;\n}\n\nexport const ListBoxOption = <T extends object>({\n item,\n}: OptionProps<T>): JSX.Element => {\n const ref = React.useRef<HTMLDivElement>(null);\n const {\n state,\n shouldUseVirtualFocus,\n disableSelectedStyles,\n containerMaxWidth,\n } = useContext(ListBoxContext)!;\n const {\n optionProps,\n isDisabled,\n isFocused: isVirtuallyFocused,\n isPressed,\n } = useOption({ key: item.key }, state, ref);\n\n const { focusProps, isFocusVisible: isFocusRingVisible } = useFocusRing();\n const { hoverProps, isHovered } = useHover({ isDisabled });\n\n usePreventTouchEnd(ref);\n\n const rightIcon = item.props.rightIcon || item.props.icon;\n\n return (\n <div\n {...mergeProps(\n optionProps,\n hoverProps,\n shouldUseVirtualFocus ? {} : focusProps\n )}\n ref={ref}\n className={clsx(\n styles['sapphire-listbox__item'],\n styles['js-hover'],\n styles['js-focus'],\n {\n [styles['is-disabled']]: isDisabled,\n [styles['is-focus']]: shouldUseVirtualFocus\n ? isVirtuallyFocused && isFocusVisible()\n : isFocusRingVisible,\n [styles['is-hover']]: isHovered,\n [styles['is-active']]: isPressed,\n }\n )}\n >\n <div\n className={clsx(styles['sapphire-listbox__content'])}\n style={\n containerMaxWidth !== undefined\n ? {\n maxWidth: `calc(${containerMaxWidth}px - 2 * ${tokens.size.iconSm})`,\n }\n : undefined\n }\n >\n {!disableSelectedStyles && (\n <div\n className={clsx(styles['sapphire-listbox__checkmark'])}\n style={{\n visibility: state.selectionManager.selectedKeys.has(item.key)\n ? 'visible'\n : 'hidden',\n }}\n >\n <Icon size=\"sm\" color=\"informative\">\n <Checkmark />\n </Icon>\n </div>\n )}\n {item.props.leftIcon && (\n <div className={clsx(styles['sapphire-listbox__icon'])}>\n <Icon size=\"sm\">{item.props.leftIcon}</Icon>\n </div>\n )}\n <div className={clsx(styles['sapphire-listbox__text-container'])}>\n <div className={clsx(styles['sapphire-listbox__primary-text'])}>\n {item.rendered}\n </div>\n {item.props.secondaryText && (\n <div className={clsx(styles['sapphire-listbox__secondary-text'])}>\n {item.props.secondaryText}\n </div>\n )}\n </div>\n {rightIcon ? (\n <div className={clsx(styles['sapphire-listbox__icon'])}>\n <Icon size=\"sm\">{rightIcon}</Icon>\n </div>\n ) : (\n item.props.avatar && (\n <div className={clsx(styles['sapphire-listbox__icon'])}>\n <div\n className={clsx(\n avatarStyles['sapphire-avatar'],\n avatarStyles['sapphire-avatar--sm']\n )}\n >\n {item.props.avatar}\n </div>\n </div>\n )\n )}\n </div>\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBO,MAAM,gBAAgB,CAAmB;AAAA,EAC9C;AACF,CAAA,KAAmC;AACjC,EAAA,MAAM,GAAA,GAAM,KAAA,CAAM,MAAA,CAAuB,IAAI,CAAA;AAC7C,EAAA,MAAM;AAAA,IACJ,KAAA;AAAA,IACA,qBAAA;AAAA,IACA,qBAAA;AAAA,IACA;AAAA,GACF,GAAI,WAAW,cAAc,CAAA;AAC7B,EAAA,MAAM;AAAA,IACJ,WAAA;AAAA,IACA,UAAA;AAAA,IACA,SAAA,EAAW,kBAAA;AAAA,IACX;AAAA,GACF,GAAI,UAAU,EAAE,GAAA,EAAK,KAAK,GAAA,EAAI,EAAG,OAAO,GAAG,CAAA;AAE3C,EAAA,MAAM,EAAE,UAAA,EAAY,cAAA,EAAgB,kBAAA,KAAuB,YAAA,EAAa;AACxE,EAAA,MAAM,EAAE,UAAA,EAAY,SAAA,KAAc,QAAA,CAAS,EAAE,YAAY,CAAA;AAEzD,EAAA,kBAAA,CAAmB,GAAG,CAAA;AAEtB,EAAA,MAAM,SAAA,GAAY,IAAA,CAAK,KAAA,CAAM,SAAA,IAAa,KAAK,KAAA,CAAM,IAAA;AAErD,EAAA,uBACE,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACE,GAAG,UAAA;AAAA,QACF,WAAA;AAAA,QACA,UAAA;AAAA,QACA,qBAAA,GAAwB,EAAC,GAAI;AAAA,OAC/B;AAAA,MACA,GAAA;AAAA,MACA,SAAA,EAAW,IAAA;AAAA,QACT,OAAO,wBAAwB,CAAA;AAAA,QAC/B,OAAO,UAAU,CAAA;AAAA,QACjB,OAAO,UAAU,CAAA;AAAA,QACjB;AAAA,UACE,CAAC,MAAA,CAAO,aAAa,CAAC,GAAG,UAAA;AAAA,UACzB,CAAC,OAAO,UAAU,CAAC,GAAG,qBAAA,GAClB,kBAAA,IAAsB,gBAAe,GACrC,kBAAA;AAAA,UACJ,CAAC,MAAA,CAAO,UAAU,CAAC,GAAG,SAAA;AAAA,UACtB,CAAC,MAAA,CAAO,WAAW,CAAC,GAAG;AAAA;AACzB;AACF,KAAA;AAAA,oBAEA,KAAA,CAAA,aAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,IAAA,CAAK,MAAA,CAAO,2BAA2B,CAAC,CAAA;AAAA,QACnD,KAAA,EACE,sBAAsB,MAAA,GAClB;AAAA,UACE,UAAU,CAAA,KAAA,EAAQ,iBAAiB,CAAA,SAAA,EAAY,MAAA,CAAO,KAAK,MAAM,CAAA,CAAA;AAAA,SACnE,GACA;AAAA,OAAA;AAAA,MAGL,CAAC,qBAAA,oBACA,KAAA,CAAA,aAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACC,SAAA,EAAW,IAAA,CAAK,MAAA,CAAO,6BAA6B,CAAC,CAAA;AAAA,UACrD,KAAA,EAAO;AAAA,YACL,UAAA,EAAY,MAAM,gBAAA,CAAiB,YAAA,CAAa,IAAI,IAAA,CAAK,GAAG,IACxD,SAAA,GACA;AAAA;AACN,SAAA;AAAA,wBAEA,KAAA,CAAA,aAAA,CAAC,QAAK,IAAA,EAAK,IAAA,EAAK,OAAM,aAAA,EAAA,kBACpB,KAAA,CAAA,aAAA,CAAC,eAAU,CACb;AAAA,OACF;AAAA,MAED,KAAK,KAAA,CAAM,QAAA,wCACT,KAAA,EAAA,EAAI,SAAA,EAAW,KAAK,MAAA,CAAO,wBAAwB,CAAC,CAAA,EAAA,sCAClD,IAAA,EAAA,EAAK,IAAA,EAAK,QAAM,IAAA,CAAK,KAAA,CAAM,QAAS,CACvC,CAAA;AAAA,sBAEF,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,IAAA,CAAK,OAAO,kCAAkC,CAAC,CAAA,EAAA,kBAC7D,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,IAAA,CAAK,MAAA,CAAO,gCAAgC,CAAC,CAAA,EAAA,EAC1D,IAAA,CAAK,QACR,CAAA,EACC,IAAA,CAAK,KAAA,CAAM,aAAA,wCACT,KAAA,EAAA,EAAI,SAAA,EAAW,IAAA,CAAK,MAAA,CAAO,kCAAkC,CAAC,CAAA,EAAA,EAC5D,IAAA,CAAK,KAAA,CAAM,aACd,CAEJ,CAAA;AAAA,MACC,SAAA,mBACC,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,IAAA,CAAK,MAAA,CAAO,wBAAwB,CAAC,CAAA,EAAA,kBACnD,KAAA,CAAA,aAAA,CAAC,IAAA,EAAA,EAAK,IAAA,EAAK,IAAA,EAAA,EAAM,SAAU,CAC7B,CAAA,GAEA,IAAA,CAAK,KAAA,CAAM,MAAA,oBACT,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,IAAA,CAAK,MAAA,CAAO,wBAAwB,CAAC,CAAA,EAAA,kBACnD,KAAA,CAAA,aAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACC,SAAA,EAAW,IAAA;AAAA,YACT,aAAa,iBAAiB,CAAA;AAAA,YAC9B,aAAa,qBAAqB;AAAA;AACpC,SAAA;AAAA,QAEC,KAAK,KAAA,CAAM;AAAA,OAEhB;AAAA;AAGN,GACF;AAEJ;;;;"}
@@ -0,0 +1,86 @@
1
+ import React, { useRef } from 'react';
2
+ import { useListBoxSection } from 'react-aria/useListBox';
3
+ import styles from '@danske/sapphire-css/components/listbox/listbox.module.css';
4
+ import { useVirtualizerItem } from 'react-aria/private/virtualizer/useVirtualizerItem';
5
+ import { layoutInfoToStyle } from 'react-aria/private/virtualizer/VirtualizerItem';
6
+ import { useThemeCheck } from '../../utils/useThemeCheck.js';
7
+ import { Separator } from '../../Separator/src/Separator.js';
8
+
9
+ function ListBoxSection({
10
+ item,
11
+ layoutInfo,
12
+ virtualizer,
13
+ childrenViews,
14
+ children
15
+ }) {
16
+ useThemeCheck();
17
+ const { groupProps, headingProps } = useListBoxSection({
18
+ "aria-label": item["aria-label"],
19
+ heading: item.rendered
20
+ });
21
+ const headerLayoutInfo = childrenViews && childrenViews.find((c) => c.viewType === "header")?.layoutInfo;
22
+ const dividerLayoutInfo = childrenViews && childrenViews.find((c) => c.viewType === "divider")?.layoutInfo;
23
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, headerLayoutInfo && /* @__PURE__ */ React.createElement(
24
+ "div",
25
+ {
26
+ role: "presentation",
27
+ style: layoutInfoToStyle(headerLayoutInfo, "ltr")
28
+ },
29
+ item.prevKey && /* @__PURE__ */ React.createElement(
30
+ Separator,
31
+ {
32
+ UNSAFE_className: styles["sapphire-listbox__separator"]
33
+ }
34
+ ),
35
+ item.rendered && /* @__PURE__ */ React.createElement(
36
+ SectionHeader,
37
+ {
38
+ item,
39
+ headerLayoutInfo,
40
+ headingProps,
41
+ virtualizer
42
+ }
43
+ )
44
+ ), layoutInfo && /* @__PURE__ */ React.createElement(
45
+ "div",
46
+ {
47
+ ...groupProps,
48
+ key: layoutInfo.key,
49
+ style: layoutInfoToStyle(layoutInfo, "ltr"),
50
+ className: styles["sapphire-listbox__section"]
51
+ },
52
+ children
53
+ ), dividerLayoutInfo && /* @__PURE__ */ React.createElement(
54
+ "div",
55
+ {
56
+ role: "presentation",
57
+ style: layoutInfoToStyle(dividerLayoutInfo, "ltr")
58
+ },
59
+ /* @__PURE__ */ React.createElement(Separator, { UNSAFE_className: styles["sapphire-listbox__separator"] })
60
+ ));
61
+ }
62
+ const SectionHeader = ({
63
+ item,
64
+ headerLayoutInfo,
65
+ headingProps,
66
+ virtualizer
67
+ }) => {
68
+ const headerRef = useRef(null);
69
+ useVirtualizerItem({
70
+ layoutInfo: headerLayoutInfo,
71
+ virtualizer,
72
+ ref: headerRef
73
+ });
74
+ return /* @__PURE__ */ React.createElement(
75
+ "div",
76
+ {
77
+ ...headingProps,
78
+ ref: headerRef,
79
+ className: styles["sapphire-listbox__section-header"]
80
+ },
81
+ item.rendered
82
+ );
83
+ };
84
+
85
+ export { ListBoxSection };
86
+ //# sourceMappingURL=ListBoxSection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListBoxSection.js","sources":["../../../../../../../core/src/ListBox/src/ListBoxSection.tsx"],"sourcesContent":["import React, { DOMAttributes, ReactNode, useRef } from 'react';\nimport { FocusableElement, Node } from '@react-types/shared';\nimport { useListBoxSection } from 'react-aria/useListBox';\nimport { ReusableView } from 'react-stately/useVirtualizerState';\nimport styles from '@danske/sapphire-css/components/listbox/listbox.module.css';\nimport {\n useVirtualizerItem,\n VirtualizerItemOptions,\n} from 'react-aria/private/virtualizer/useVirtualizerItem';\nimport { layoutInfoToStyle } from 'react-aria/private/virtualizer/VirtualizerItem';\nimport { LayoutInfo } from 'react-stately/useVirtualizerState';\n\nimport { useThemeCheck } from '../../utils/useThemeCheck';\nimport { Separator } from '../../Separator';\n\ntype ListBoxSectionProps<T> = Omit<VirtualizerItemOptions, 'ref'> & {\n item: Node<T>;\n childrenViews?: ReusableView<Node<T>, ReactNode>[];\n children?: ReactNode;\n};\n\nexport function ListBoxSection<T extends object>({\n item,\n layoutInfo,\n virtualizer,\n childrenViews,\n children,\n}: ListBoxSectionProps<T>): JSX.Element {\n useThemeCheck();\n\n const { groupProps, headingProps } = useListBoxSection({\n 'aria-label': item['aria-label'],\n heading: item.rendered,\n });\n\n const headerLayoutInfo =\n childrenViews &&\n childrenViews.find((c) => c.viewType === 'header')?.layoutInfo;\n const dividerLayoutInfo =\n childrenViews &&\n childrenViews.find((c) => c.viewType === 'divider')?.layoutInfo;\n\n return (\n <>\n {headerLayoutInfo && (\n <div\n role=\"presentation\"\n style={layoutInfoToStyle(headerLayoutInfo, 'ltr')}\n >\n {item.prevKey && (\n <Separator\n UNSAFE_className={styles['sapphire-listbox__separator']}\n />\n )}\n {item.rendered && (\n <SectionHeader\n item={item}\n headerLayoutInfo={headerLayoutInfo!}\n headingProps={headingProps}\n virtualizer={virtualizer}\n />\n )}\n </div>\n )}\n {layoutInfo && (\n <div\n {...groupProps}\n key={layoutInfo.key}\n style={layoutInfoToStyle(layoutInfo, 'ltr')}\n className={styles['sapphire-listbox__section']}\n >\n {children}\n </div>\n )}\n {dividerLayoutInfo && (\n <div\n role=\"presentation\"\n style={layoutInfoToStyle(dividerLayoutInfo, 'ltr')}\n >\n <Separator UNSAFE_className={styles['sapphire-listbox__separator']} />\n </div>\n )}\n </>\n );\n}\n\nconst SectionHeader = <T,>({\n item,\n headerLayoutInfo,\n headingProps,\n virtualizer,\n}: {\n item: Node<T>;\n headerLayoutInfo: LayoutInfo;\n headingProps: DOMAttributes<FocusableElement>;\n virtualizer: VirtualizerItemOptions['virtualizer'];\n}) => {\n const headerRef = useRef<HTMLDivElement>(null);\n\n useVirtualizerItem({\n layoutInfo: headerLayoutInfo!,\n virtualizer,\n ref: headerRef,\n });\n\n return (\n <div\n {...headingProps}\n ref={headerRef}\n className={styles['sapphire-listbox__section-header']}\n >\n {item.rendered}\n </div>\n );\n};\n"],"names":[],"mappings":";;;;;;;;AAqBO,SAAS,cAAA,CAAiC;AAAA,EAC/C,IAAA;AAAA,EACA,UAAA;AAAA,EACA,WAAA;AAAA,EACA,aAAA;AAAA,EACA;AACF,CAAA,EAAwC;AACtC,EAAA,aAAA,EAAc;AAEd,EAAA,MAAM,EAAE,UAAA,EAAY,YAAA,EAAa,GAAI,iBAAA,CAAkB;AAAA,IACrD,YAAA,EAAc,KAAK,YAAY,CAAA;AAAA,IAC/B,SAAS,IAAA,CAAK;AAAA,GACf,CAAA;AAED,EAAA,MAAM,gBAAA,GACJ,iBACA,aAAA,CAAc,IAAA,CAAK,CAAC,CAAA,KAAM,CAAA,CAAE,QAAA,KAAa,QAAQ,CAAA,EAAG,UAAA;AACtD,EAAA,MAAM,iBAAA,GACJ,iBACA,aAAA,CAAc,IAAA,CAAK,CAAC,CAAA,KAAM,CAAA,CAAE,QAAA,KAAa,SAAS,CAAA,EAAG,UAAA;AAEvD,EAAA,iEAEK,gBAAA,oBACC,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,IAAA,EAAK,cAAA;AAAA,MACL,KAAA,EAAO,iBAAA,CAAkB,gBAAA,EAAkB,KAAK;AAAA,KAAA;AAAA,IAE/C,KAAK,OAAA,oBACJ,KAAA,CAAA,aAAA;AAAA,MAAC,SAAA;AAAA,MAAA;AAAA,QACC,gBAAA,EAAkB,OAAO,6BAA6B;AAAA;AAAA,KACxD;AAAA,IAED,KAAK,QAAA,oBACJ,KAAA,CAAA,aAAA;AAAA,MAAC,aAAA;AAAA,MAAA;AAAA,QACC,IAAA;AAAA,QACA,gBAAA;AAAA,QACA,YAAA;AAAA,QACA;AAAA;AAAA;AACF,KAIL,UAAA,oBACC,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACE,GAAG,UAAA;AAAA,MACJ,KAAK,UAAA,CAAW,GAAA;AAAA,MAChB,KAAA,EAAO,iBAAA,CAAkB,UAAA,EAAY,KAAK,CAAA;AAAA,MAC1C,SAAA,EAAW,OAAO,2BAA2B;AAAA,KAAA;AAAA,IAE5C;AAAA,KAGJ,iBAAA,oBACC,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,IAAA,EAAK,cAAA;AAAA,MACL,KAAA,EAAO,iBAAA,CAAkB,iBAAA,EAAmB,KAAK;AAAA,KAAA;AAAA,oBAEjD,KAAA,CAAA,aAAA,CAAC,SAAA,EAAA,EAAU,gBAAA,EAAkB,MAAA,CAAO,6BAA6B,CAAA,EAAG;AAAA,GAG1E,CAAA;AAEJ;AAEA,MAAM,gBAAgB,CAAK;AAAA,EACzB,IAAA;AAAA,EACA,gBAAA;AAAA,EACA,YAAA;AAAA,EACA;AACF,CAAA,KAKM;AACJ,EAAA,MAAM,SAAA,GAAY,OAAuB,IAAI,CAAA;AAE7C,EAAA,kBAAA,CAAmB;AAAA,IACjB,UAAA,EAAY,gBAAA;AAAA,IACZ,WAAA;AAAA,IACA,GAAA,EAAK;AAAA,GACN,CAAA;AAED,EAAA,uBACE,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACE,GAAG,YAAA;AAAA,MACJ,GAAA,EAAK,SAAA;AAAA,MACL,SAAA,EAAW,OAAO,kCAAkC;AAAA,KAAA;AAAA,IAEnD,IAAA,CAAK;AAAA,GACR;AAEJ,CAAA;;;;"}