@salt-ds/lab 1.0.0-alpha.94 → 1.0.0-alpha.96

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 (191) hide show
  1. package/CHANGELOG.md +157 -0
  2. package/css/salt-lab.css +76 -49
  3. package/dist-cjs/index.js +12 -52
  4. package/dist-cjs/index.js.map +1 -1
  5. package/dist-cjs/mega-menu/MegaMenu.js +8 -14
  6. package/dist-cjs/mega-menu/MegaMenu.js.map +1 -1
  7. package/dist-cjs/mega-menu/MegaMenuActions.css.js +6 -0
  8. package/dist-cjs/mega-menu/MegaMenuActions.css.js.map +1 -0
  9. package/dist-cjs/mega-menu/MegaMenuActions.js +33 -0
  10. package/dist-cjs/mega-menu/MegaMenuActions.js.map +1 -0
  11. package/dist-cjs/mega-menu/MegaMenuAside.css.js +6 -0
  12. package/dist-cjs/mega-menu/MegaMenuAside.css.js.map +1 -0
  13. package/dist-cjs/mega-menu/MegaMenuAside.js +33 -0
  14. package/dist-cjs/mega-menu/MegaMenuAside.js.map +1 -0
  15. package/dist-cjs/mega-menu/MegaMenuContent.css.js +1 -1
  16. package/dist-cjs/mega-menu/MegaMenuContent.js +2 -10
  17. package/dist-cjs/mega-menu/MegaMenuContent.js.map +1 -1
  18. package/dist-cjs/mega-menu/MegaMenuContext.js.map +1 -1
  19. package/dist-cjs/mega-menu/MegaMenuGroup.css.js +1 -1
  20. package/dist-cjs/mega-menu/MegaMenuGroup.js +10 -28
  21. package/dist-cjs/mega-menu/MegaMenuGroup.js.map +1 -1
  22. package/dist-cjs/mega-menu/MegaMenuGroupContext.js +17 -0
  23. package/dist-cjs/mega-menu/MegaMenuGroupContext.js.map +1 -0
  24. package/dist-cjs/mega-menu/MegaMenuGroupHeading.css.js +6 -0
  25. package/dist-cjs/mega-menu/MegaMenuGroupHeading.css.js.map +1 -0
  26. package/dist-cjs/mega-menu/MegaMenuGroupHeading.js +39 -0
  27. package/dist-cjs/mega-menu/MegaMenuGroupHeading.js.map +1 -0
  28. package/dist-cjs/mega-menu/MegaMenuGroups.css.js +6 -0
  29. package/dist-cjs/mega-menu/MegaMenuGroups.css.js.map +1 -0
  30. package/dist-cjs/mega-menu/{MegaMenuSection.js → MegaMenuGroups.js} +8 -8
  31. package/dist-cjs/mega-menu/MegaMenuGroups.js.map +1 -0
  32. package/dist-cjs/mega-menu/MegaMenuList.css.js +6 -0
  33. package/dist-cjs/mega-menu/MegaMenuList.css.js.map +1 -0
  34. package/dist-cjs/mega-menu/MegaMenuList.js +43 -0
  35. package/dist-cjs/mega-menu/MegaMenuList.js.map +1 -0
  36. package/dist-cjs/mega-menu/MegaMenuListItem.css.js +6 -0
  37. package/dist-cjs/mega-menu/MegaMenuListItem.css.js.map +1 -0
  38. package/dist-cjs/mega-menu/MegaMenuListItem.js +45 -0
  39. package/dist-cjs/mega-menu/MegaMenuListItem.js.map +1 -0
  40. package/dist-cjs/mega-menu/MegaMenuPanel.css.js +1 -1
  41. package/dist-cjs/mega-menu/MegaMenuPanel.js +27 -47
  42. package/dist-cjs/mega-menu/MegaMenuPanel.js.map +1 -1
  43. package/dist-cjs/mega-menu/MegaMenuTrigger.js +16 -18
  44. package/dist-cjs/mega-menu/MegaMenuTrigger.js.map +1 -1
  45. package/dist-cjs/mega-menu/useMegaMenuNavigation.js +282 -0
  46. package/dist-cjs/mega-menu/useMegaMenuNavigation.js.map +1 -0
  47. package/dist-cjs/mega-menu/usePageMargin.js +22 -0
  48. package/dist-cjs/mega-menu/usePageMargin.js.map +1 -0
  49. package/dist-cjs/toolbar-next/ToolbarNextOverflow.js +2 -1
  50. package/dist-cjs/toolbar-next/ToolbarNextOverflow.js.map +1 -1
  51. package/dist-cjs/toolbar-next/toolbarNextKeyboardUtils.js +21 -3
  52. package/dist-cjs/toolbar-next/toolbarNextKeyboardUtils.js.map +1 -1
  53. package/dist-cjs/toolbar-next/useToolbarNextKeyboardNavigation.js +3 -25
  54. package/dist-cjs/toolbar-next/useToolbarNextKeyboardNavigation.js.map +1 -1
  55. package/dist-cjs/toolbar-next/useToolbarNextOverflow.js +9 -7
  56. package/dist-cjs/toolbar-next/useToolbarNextOverflow.js.map +1 -1
  57. package/dist-es/index.js +6 -9
  58. package/dist-es/index.js.map +1 -1
  59. package/dist-es/mega-menu/MegaMenu.js +9 -15
  60. package/dist-es/mega-menu/MegaMenu.js.map +1 -1
  61. package/dist-es/mega-menu/MegaMenuActions.css.js +4 -0
  62. package/dist-es/mega-menu/MegaMenuActions.css.js.map +1 -0
  63. package/dist-es/mega-menu/MegaMenuActions.js +31 -0
  64. package/dist-es/mega-menu/MegaMenuActions.js.map +1 -0
  65. package/dist-es/mega-menu/MegaMenuAside.css.js +4 -0
  66. package/dist-es/mega-menu/MegaMenuAside.css.js.map +1 -0
  67. package/dist-es/mega-menu/MegaMenuAside.js +31 -0
  68. package/dist-es/mega-menu/MegaMenuAside.js.map +1 -0
  69. package/dist-es/mega-menu/MegaMenuContent.css.js +1 -1
  70. package/dist-es/mega-menu/MegaMenuContent.js +2 -10
  71. package/dist-es/mega-menu/MegaMenuContent.js.map +1 -1
  72. package/dist-es/mega-menu/MegaMenuContext.js.map +1 -1
  73. package/dist-es/mega-menu/MegaMenuGroup.css.js +1 -1
  74. package/dist-es/mega-menu/MegaMenuGroup.js +13 -31
  75. package/dist-es/mega-menu/MegaMenuGroup.js.map +1 -1
  76. package/dist-es/mega-menu/MegaMenuGroupContext.js +14 -0
  77. package/dist-es/mega-menu/MegaMenuGroupContext.js.map +1 -0
  78. package/dist-es/mega-menu/MegaMenuGroupHeading.css.js +4 -0
  79. package/dist-es/mega-menu/MegaMenuGroupHeading.css.js.map +1 -0
  80. package/dist-es/mega-menu/MegaMenuGroupHeading.js +37 -0
  81. package/dist-es/mega-menu/MegaMenuGroupHeading.js.map +1 -0
  82. package/dist-es/mega-menu/MegaMenuGroups.css.js +4 -0
  83. package/dist-es/mega-menu/MegaMenuGroups.css.js.map +1 -0
  84. package/dist-es/mega-menu/{MegaMenuSection.js → MegaMenuGroups.js} +7 -7
  85. package/dist-es/mega-menu/MegaMenuGroups.js.map +1 -0
  86. package/dist-es/mega-menu/MegaMenuList.css.js +4 -0
  87. package/dist-es/mega-menu/MegaMenuList.css.js.map +1 -0
  88. package/dist-es/mega-menu/MegaMenuList.js +41 -0
  89. package/dist-es/mega-menu/MegaMenuList.js.map +1 -0
  90. package/dist-es/mega-menu/MegaMenuListItem.css.js +4 -0
  91. package/dist-es/mega-menu/MegaMenuListItem.css.js.map +1 -0
  92. package/dist-es/mega-menu/MegaMenuListItem.js +43 -0
  93. package/dist-es/mega-menu/MegaMenuListItem.js.map +1 -0
  94. package/dist-es/mega-menu/MegaMenuPanel.css.js +1 -1
  95. package/dist-es/mega-menu/MegaMenuPanel.js +30 -50
  96. package/dist-es/mega-menu/MegaMenuPanel.js.map +1 -1
  97. package/dist-es/mega-menu/MegaMenuTrigger.js +14 -16
  98. package/dist-es/mega-menu/MegaMenuTrigger.js.map +1 -1
  99. package/dist-es/mega-menu/useMegaMenuNavigation.js +278 -0
  100. package/dist-es/mega-menu/useMegaMenuNavigation.js.map +1 -0
  101. package/dist-es/mega-menu/usePageMargin.js +20 -0
  102. package/dist-es/mega-menu/usePageMargin.js.map +1 -0
  103. package/dist-es/toolbar-next/ToolbarNextOverflow.js +2 -1
  104. package/dist-es/toolbar-next/ToolbarNextOverflow.js.map +1 -1
  105. package/dist-es/toolbar-next/toolbarNextKeyboardUtils.js +21 -3
  106. package/dist-es/toolbar-next/toolbarNextKeyboardUtils.js.map +1 -1
  107. package/dist-es/toolbar-next/useToolbarNextKeyboardNavigation.js +4 -26
  108. package/dist-es/toolbar-next/useToolbarNextKeyboardNavigation.js.map +1 -1
  109. package/dist-es/toolbar-next/useToolbarNextOverflow.js +9 -7
  110. package/dist-es/toolbar-next/useToolbarNextOverflow.js.map +1 -1
  111. package/dist-types/index.d.ts +0 -4
  112. package/dist-types/mega-menu/MegaMenu.d.ts +11 -2
  113. package/dist-types/mega-menu/MegaMenuActions.d.ts +10 -0
  114. package/dist-types/mega-menu/MegaMenuAside.d.ts +9 -0
  115. package/dist-types/mega-menu/MegaMenuContent.d.ts +2 -1
  116. package/dist-types/mega-menu/MegaMenuContext.d.ts +6 -7
  117. package/dist-types/mega-menu/MegaMenuGroup.d.ts +4 -3
  118. package/dist-types/mega-menu/MegaMenuGroupContext.d.ts +12 -0
  119. package/dist-types/mega-menu/MegaMenuGroupHeading.d.ts +13 -0
  120. package/dist-types/mega-menu/MegaMenuGroups.d.ts +8 -0
  121. package/dist-types/mega-menu/MegaMenuList.d.ts +16 -0
  122. package/dist-types/mega-menu/MegaMenuListItem.d.ts +25 -0
  123. package/dist-types/mega-menu/MegaMenuPanel.d.ts +2 -2
  124. package/dist-types/mega-menu/MegaMenuTrigger.d.ts +1 -0
  125. package/dist-types/mega-menu/index.d.ts +6 -4
  126. package/dist-types/mega-menu/useMegaMenuNavigation.d.ts +16 -0
  127. package/dist-types/mega-menu/usePageMargin.d.ts +6 -0
  128. package/dist-types/toolbar-next/useToolbarNextKeyboardNavigation.d.ts +1 -0
  129. package/package.json +2 -4
  130. package/dist-cjs/calendar/index.js +0 -61
  131. package/dist-cjs/calendar/index.js.map +0 -1
  132. package/dist-cjs/date-input/index.js +0 -23
  133. package/dist-cjs/date-input/index.js.map +0 -1
  134. package/dist-cjs/date-picker/index.js +0 -106
  135. package/dist-cjs/date-picker/index.js.map +0 -1
  136. package/dist-cjs/localization-provider/index.js +0 -26
  137. package/dist-cjs/localization-provider/index.js.map +0 -1
  138. package/dist-cjs/mega-menu/MegaMenuHeader.css.js +0 -6
  139. package/dist-cjs/mega-menu/MegaMenuHeader.css.js.map +0 -1
  140. package/dist-cjs/mega-menu/MegaMenuHeader.js +0 -26
  141. package/dist-cjs/mega-menu/MegaMenuHeader.js.map +0 -1
  142. package/dist-cjs/mega-menu/MegaMenuItem.css.js +0 -6
  143. package/dist-cjs/mega-menu/MegaMenuItem.css.js.map +0 -1
  144. package/dist-cjs/mega-menu/MegaMenuItem.js +0 -52
  145. package/dist-cjs/mega-menu/MegaMenuItem.js.map +0 -1
  146. package/dist-cjs/mega-menu/MegaMenuItemContent.css.js +0 -6
  147. package/dist-cjs/mega-menu/MegaMenuItemContent.css.js.map +0 -1
  148. package/dist-cjs/mega-menu/MegaMenuItemContent.js +0 -23
  149. package/dist-cjs/mega-menu/MegaMenuItemContent.js.map +0 -1
  150. package/dist-cjs/mega-menu/MegaMenuSection.css.js +0 -6
  151. package/dist-cjs/mega-menu/MegaMenuSection.css.js.map +0 -1
  152. package/dist-cjs/mega-menu/MegaMenuSection.js.map +0 -1
  153. package/dist-cjs/mega-menu/useMegaMenuKeyboard.js +0 -209
  154. package/dist-cjs/mega-menu/useMegaMenuKeyboard.js.map +0 -1
  155. package/dist-cjs/utils/deprecatedExport.js +0 -30
  156. package/dist-cjs/utils/deprecatedExport.js.map +0 -1
  157. package/dist-es/calendar/index.js +0 -50
  158. package/dist-es/calendar/index.js.map +0 -1
  159. package/dist-es/date-input/index.js +0 -20
  160. package/dist-es/date-input/index.js.map +0 -1
  161. package/dist-es/date-picker/index.js +0 -85
  162. package/dist-es/date-picker/index.js.map +0 -1
  163. package/dist-es/localization-provider/index.js +0 -20
  164. package/dist-es/localization-provider/index.js.map +0 -1
  165. package/dist-es/mega-menu/MegaMenuHeader.css.js +0 -4
  166. package/dist-es/mega-menu/MegaMenuHeader.css.js.map +0 -1
  167. package/dist-es/mega-menu/MegaMenuHeader.js +0 -24
  168. package/dist-es/mega-menu/MegaMenuHeader.js.map +0 -1
  169. package/dist-es/mega-menu/MegaMenuItem.css.js +0 -4
  170. package/dist-es/mega-menu/MegaMenuItem.css.js.map +0 -1
  171. package/dist-es/mega-menu/MegaMenuItem.js +0 -50
  172. package/dist-es/mega-menu/MegaMenuItem.js.map +0 -1
  173. package/dist-es/mega-menu/MegaMenuItemContent.css.js +0 -4
  174. package/dist-es/mega-menu/MegaMenuItemContent.css.js.map +0 -1
  175. package/dist-es/mega-menu/MegaMenuItemContent.js +0 -21
  176. package/dist-es/mega-menu/MegaMenuItemContent.js.map +0 -1
  177. package/dist-es/mega-menu/MegaMenuSection.css.js +0 -4
  178. package/dist-es/mega-menu/MegaMenuSection.css.js.map +0 -1
  179. package/dist-es/mega-menu/MegaMenuSection.js.map +0 -1
  180. package/dist-es/mega-menu/useMegaMenuKeyboard.js +0 -205
  181. package/dist-es/mega-menu/useMegaMenuKeyboard.js.map +0 -1
  182. package/dist-es/utils/deprecatedExport.js +0 -27
  183. package/dist-es/utils/deprecatedExport.js.map +0 -1
  184. package/dist-types/calendar/index.d.ts +0 -13
  185. package/dist-types/date-input/index.d.ts +0 -3
  186. package/dist-types/localization-provider/index.d.ts +0 -9
  187. package/dist-types/mega-menu/MegaMenuHeader.d.ts +0 -8
  188. package/dist-types/mega-menu/MegaMenuItem.d.ts +0 -12
  189. package/dist-types/mega-menu/MegaMenuItemContent.d.ts +0 -8
  190. package/dist-types/mega-menu/MegaMenuSection.d.ts +0 -8
  191. package/dist-types/mega-menu/useMegaMenuKeyboard.d.ts +0 -30
@@ -1 +0,0 @@
1
- {"version":3,"file":"useMegaMenuKeyboard.js","sources":["../src/mega-menu/useMegaMenuKeyboard.ts"],"sourcesContent":["import type { ElementProps, FloatingRootContext } from \"@floating-ui/react\";\nimport { useMemo } from \"react\";\n\nconst COLUMN_SELECTOR = \"[data-mega-menu-column]\";\nconst ITEM_SELECTOR = \"[data-mega-menu-item]\";\nexport const FOCUSABLE_SELECTOR =\n 'a[href], button:not([disabled]), [tabindex]:not([tabindex=\"-1\"])';\n\n/**\n * Get navigable items within a column.\n * Prefers explicitly marked items (`data-mega-menu-item`), falling back\n * to all focusable elements when no marked items are found.\n */\nfunction getColumnItems(column: HTMLElement): HTMLElement[] {\n const marked = Array.from(\n column.querySelectorAll<HTMLElement>(ITEM_SELECTOR),\n );\n if (marked.length > 0) return marked;\n return Array.from(column.querySelectorAll<HTMLElement>(FOCUSABLE_SELECTOR));\n}\n\n/**\n * Build a 2D grid of navigable items from the panel DOM.\n * Each column is a `[data-mega-menu-column]` wrapper; items within each\n * column are discovered via `getColumnItems`.\n * Items not inside any column (orphans) are inserted at their DOM position\n * as single-item columns so keyboard navigation follows visual order.\n */\nfunction buildGrid(panel: HTMLElement): HTMLElement[][] {\n const columns = new Set(panel.querySelectorAll<HTMLElement>(COLUMN_SELECTOR));\n const grid: HTMLElement[][] = [];\n const processedColumns = new Set<HTMLElement>();\n\n // Walk columns and items in DOM order so orphans are interleaved correctly.\n const all = panel.querySelectorAll<HTMLElement>(\n `${COLUMN_SELECTOR}, ${ITEM_SELECTOR}`,\n );\n\n for (const el of all) {\n if (columns.has(el) && !processedColumns.has(el)) {\n processedColumns.add(el);\n const items = getColumnItems(el);\n if (items.length > 0) grid.push(items);\n } else if (el.matches(ITEM_SELECTOR)) {\n const parentCol = el.closest(COLUMN_SELECTOR);\n if (!parentCol || !columns.has(parentCol as HTMLElement)) {\n grid.push([el]);\n }\n }\n }\n\n return grid;\n}\n\nfunction findPosition(\n grid: HTMLElement[][],\n el: HTMLElement,\n): { col: number; row: number } | null {\n for (let col = 0; col < grid.length; col++) {\n const row = grid[col].indexOf(el);\n if (row !== -1) return { col, row };\n }\n return null;\n}\n\nfunction focusTrigger(context: FloatingRootContext) {\n const reference = context.elements.reference as HTMLElement | null;\n const focusable =\n reference?.querySelector<HTMLElement>(FOCUSABLE_SELECTOR) ?? reference;\n focusable?.focus();\n}\n\nfunction focusNextAfterPanel(context: FloatingRootContext, panel: HTMLElement) {\n const reference = context.elements.reference as HTMLElement | null;\n const refFocusable =\n reference?.querySelector<HTMLElement>(FOCUSABLE_SELECTOR) ?? reference;\n\n const nextSibling = refFocusable\n ?.closest(\"li\")\n ?.nextElementSibling?.querySelector<HTMLElement>(FOCUSABLE_SELECTOR);\n\n const nextOutside =\n nextSibling ||\n (() => {\n const allFocusable = Array.from(\n panel.ownerDocument.querySelectorAll<HTMLElement>(FOCUSABLE_SELECTOR),\n ).filter((el) => !panel.contains(el));\n const idx = refFocusable ? allFocusable.indexOf(refFocusable) : -1;\n return idx >= 0 ? allFocusable[idx + 1] : undefined;\n })();\n\n if (nextOutside) {\n const view = panel.ownerDocument.defaultView;\n view?.requestAnimationFrame(() => {\n view?.requestAnimationFrame(() => {\n nextOutside.focus();\n });\n });\n }\n}\n\nexport interface UseMegaMenuKeyboardProps {\n /**\n * Whether the interaction is enabled.\n * @default true\n */\n enabled?: boolean;\n}\n\n/**\n * Floating-ui custom interaction hook for mega menu grid keyboard navigation.\n *\n * Returns `ElementProps` that get merged via `useInteractions`, handling\n * keyboard events on both the reference (trigger) and floating (panel) elements.\n *\n * - **↑ / ↓** move within the current column.\n * - **← / →** jump to the top of the previous / next column.\n * - **Tab / Shift+Tab** move linearly through every item.\n * - **Home / End** jump to the first / last item in the column.\n * - **↑ from the first item** or **← from the first column** returns\n * focus to the trigger.\n * - **→ from the last column** closes the panel and moves focus to the\n * next sibling trigger.\n */\nexport function useMegaMenuKeyboard(\n context: FloatingRootContext,\n props: UseMegaMenuKeyboardProps = {},\n): ElementProps {\n const { enabled = true } = props;\n const { open, onOpenChange } = context;\n\n return useMemo(() => {\n if (!enabled) {\n return {};\n }\n\n return {\n reference: {\n onKeyDown(event: React.KeyboardEvent) {\n if (event.key === \"ArrowDown\" && open) {\n event.preventDefault();\n const floating = context.elements.floating;\n if (floating instanceof HTMLElement) {\n focusFirstItem(floating);\n }\n }\n },\n },\n floating: {\n onKeyDown(event: React.KeyboardEvent) {\n if (!open) return;\n\n const panel = event.currentTarget as HTMLElement;\n const target = event.target as HTMLElement;\n\n const focusedItem =\n target.closest<HTMLElement>(ITEM_SELECTOR) ??\n target.closest<HTMLElement>(FOCUSABLE_SELECTOR);\n if (!focusedItem) return;\n\n const grid = buildGrid(panel);\n const pos = findPosition(grid, focusedItem);\n if (!pos) return;\n\n const allItems = grid.flat();\n const linearIndex = allItems.indexOf(focusedItem);\n\n switch (event.key) {\n case \"ArrowDown\": {\n event.preventDefault();\n const next = pos.row + 1;\n if (next < grid[pos.col].length) {\n grid[pos.col][next].focus();\n } else {\n const nextCol = pos.col + 1;\n if (nextCol < grid.length) {\n grid[nextCol][0].focus();\n }\n }\n break;\n }\n\n case \"ArrowUp\": {\n event.preventDefault();\n if (pos.row > 0) {\n grid[pos.col][pos.row - 1].focus();\n } else {\n const prevCol = pos.col - 1;\n if (prevCol >= 0) {\n grid[prevCol][grid[prevCol].length - 1].focus();\n } else {\n focusTrigger(context);\n }\n }\n break;\n }\n\n case \"ArrowRight\": {\n event.preventDefault();\n const nextCol = pos.col + 1;\n if (nextCol < grid.length) {\n grid[nextCol][0].focus();\n } else {\n // On the last column — close panel and move to next trigger\n const reference = context.elements\n .reference as HTMLElement | null;\n const trigger =\n reference?.querySelector<HTMLElement>(FOCUSABLE_SELECTOR) ??\n reference;\n const li = trigger?.closest(\"li\");\n const nextSibling =\n li?.nextElementSibling instanceof HTMLElement\n ? li.nextElementSibling.querySelector<HTMLElement>(\n FOCUSABLE_SELECTOR,\n )\n : null;\n if (nextSibling) {\n onOpenChange(false);\n nextSibling.focus();\n }\n }\n break;\n }\n\n case \"ArrowLeft\": {\n event.preventDefault();\n const prevCol = pos.col - 1;\n if (prevCol >= 0) {\n grid[prevCol][0].focus();\n } else {\n focusTrigger(context);\n }\n break;\n }\n\n case \"Tab\": {\n event.preventDefault();\n if (event.shiftKey) {\n if (linearIndex === 0) {\n focusTrigger(context);\n } else {\n allItems[linearIndex - 1]?.focus();\n }\n } else {\n if (linearIndex === allItems.length - 1) {\n onOpenChange(false);\n focusNextAfterPanel(context, panel);\n } else {\n allItems[linearIndex + 1]?.focus();\n }\n }\n break;\n }\n\n case \"Home\": {\n event.preventDefault();\n grid[pos.col][0]?.focus();\n break;\n }\n\n case \"End\": {\n event.preventDefault();\n grid[pos.col][grid[pos.col].length - 1]?.focus();\n break;\n }\n\n default:\n break;\n }\n },\n },\n };\n }, [enabled, open, context, onOpenChange]);\n}\n\n/**\n * Focus the first navigable item inside a mega menu panel.\n * Retries with `requestAnimationFrame` if content has not yet rendered.\n */\nexport function focusFirstItem(panel: HTMLElement, attempt = 0): void {\n const grid = buildGrid(panel);\n const firstItem = grid[0]?.[0];\n\n if (firstItem) {\n firstItem.focus();\n return;\n }\n\n const view = panel.ownerDocument.defaultView;\n if (attempt < 3 && view) {\n view.requestAnimationFrame(() => focusFirstItem(panel, attempt + 1));\n }\n}\n"],"names":["useMemo"],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- 'use strict';
2
-
3
- var react = require('react');
4
-
5
- const warnedKeys = /* @__PURE__ */ new Set();
6
- const warnOnce = (key, message) => {
7
- if (process.env.NODE_ENV === "production") return;
8
- if (warnedKeys.has(key)) return;
9
- warnedKeys.add(key);
10
- console.warn(message);
11
- };
12
- function deprecatedComponent(Component, displayName, deprecationKey, message) {
13
- const Wrapped = react.forwardRef((props, ref) => {
14
- warnOnce(deprecationKey, message);
15
- return react.createElement(Component, { ...props, ref });
16
- });
17
- Wrapped.displayName = displayName;
18
- return Wrapped;
19
- }
20
- function deprecatedFunction(hook, deprecationKey, message) {
21
- const wrapped = (...args) => {
22
- warnOnce(deprecationKey, message);
23
- return hook(...args);
24
- };
25
- return wrapped;
26
- }
27
-
28
- exports.deprecatedComponent = deprecatedComponent;
29
- exports.deprecatedFunction = deprecatedFunction;
30
- //# sourceMappingURL=deprecatedExport.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deprecatedExport.js","sources":["../src/utils/deprecatedExport.ts"],"sourcesContent":["import { type ComponentType, createElement, forwardRef } from \"react\";\n\nconst warnedKeys = new Set<string>();\n\nconst warnOnce = (key: string, message: string) => {\n if (process.env.NODE_ENV === \"production\") return;\n if (warnedKeys.has(key)) return;\n warnedKeys.add(key);\n // eslint-disable-next-line no-console\n console.warn(message);\n};\n\n/**\n * Wrap a component so that a deprecation warning is logged on first render\n * instead of at import time.\n */\nexport function deprecatedComponent<P extends object>(\n Component: ComponentType<P>,\n displayName: string,\n deprecationKey: string,\n message: string,\n) {\n const Wrapped = forwardRef<unknown, P>((props, ref) => {\n warnOnce(deprecationKey, message);\n return createElement(Component, { ...props, ref } as P);\n });\n Wrapped.displayName = displayName;\n return Wrapped as unknown as typeof Component;\n}\n\n/**\n * Wrap a hook or plain function so that a deprecation warning is logged on\n * first call instead of at import time.\n */\nexport function deprecatedFunction<T extends (...args: any[]) => any>(\n hook: T,\n deprecationKey: string,\n message: string,\n): T {\n const wrapped = (...args: any[]) => {\n warnOnce(deprecationKey, message);\n return hook(...args);\n };\n return wrapped as T;\n}\n"],"names":["forwardRef","createElement"],"mappings":";;;;AAEA,MAAM,UAAA,uBAAiB,GAAA,EAAY;AAEnC,MAAM,QAAA,GAAW,CAAC,GAAA,EAAa,OAAA,KAAoB;AACjD,EAAA,IAAI,OAAA,CAAQ,GAAA,CAAI,QAAA,KAAa,YAAA,EAAc;AAC3C,EAAA,IAAI,UAAA,CAAW,GAAA,CAAI,GAAG,CAAA,EAAG;AACzB,EAAA,UAAA,CAAW,IAAI,GAAG,CAAA;AAElB,EAAA,OAAA,CAAQ,KAAK,OAAO,CAAA;AACtB,CAAA;AAMO,SAAS,mBAAA,CACd,SAAA,EACA,WAAA,EACA,cAAA,EACA,OAAA,EACA;AACA,EAAA,MAAM,OAAA,GAAUA,gBAAA,CAAuB,CAAC,KAAA,EAAO,GAAA,KAAQ;AACrD,IAAA,QAAA,CAAS,gBAAgB,OAAO,CAAA;AAChC,IAAA,OAAOC,oBAAc,SAAA,EAAW,EAAE,GAAG,KAAA,EAAO,KAAU,CAAA;AAAA,EACxD,CAAC,CAAA;AACD,EAAA,OAAA,CAAQ,WAAA,GAAc,WAAA;AACtB,EAAA,OAAO,OAAA;AACT;AAMO,SAAS,kBAAA,CACd,IAAA,EACA,cAAA,EACA,OAAA,EACG;AACH,EAAA,MAAM,OAAA,GAAU,IAAI,IAAA,KAAgB;AAClC,IAAA,QAAA,CAAS,gBAAgB,OAAO,CAAA;AAChC,IAAA,OAAO,IAAA,CAAK,GAAG,IAAI,CAAA;AAAA,EACrB,CAAA;AACA,EAAA,OAAO,OAAA;AACT;;;;;"}
@@ -1,50 +0,0 @@
1
- import { Calendar as Calendar$1, CalendarGrid as CalendarGrid$1, CalendarNavigation as CalendarNavigation$1, CalendarWeekHeader as CalendarWeekHeader$1, isDateRangeSelection as isDateRangeSelection$1, useCalendar as useCalendar$1, useCalendarDay as useCalendarDay$1, useCalendarSelection as useCalendarSelection$1, useCalendarSelectionDay as useCalendarSelectionDay$1, useDateSelectionAnnouncer as useDateSelectionAnnouncer$1 } from '@salt-ds/date-components';
2
- import { deprecatedComponent, deprecatedFunction } from '../utils/deprecatedExport.js';
3
-
4
- const KEY = "@salt-ds/lab/calendar";
5
- const MSG = "@salt-ds/lab 'calendar' exports are deprecated and will be removed in a future release. Import from @salt-ds/date-components instead.";
6
- const _warnOnce = deprecatedFunction(() => {
7
- }, KEY, MSG);
8
- const Calendar = deprecatedComponent(Calendar$1, "Calendar", KEY, MSG);
9
- const CalendarGrid = deprecatedComponent(
10
- CalendarGrid$1,
11
- "CalendarGrid",
12
- KEY,
13
- MSG
14
- );
15
- const CalendarNavigation = deprecatedComponent(
16
- CalendarNavigation$1,
17
- "CalendarNavigation",
18
- KEY,
19
- MSG
20
- );
21
- const CalendarWeekHeader = deprecatedComponent(
22
- CalendarWeekHeader$1,
23
- "CalendarWeekHeader",
24
- KEY,
25
- MSG
26
- );
27
- const useCalendar = deprecatedFunction(useCalendar$1, KEY, MSG);
28
- const useCalendarDay = deprecatedFunction(useCalendarDay$1, KEY, MSG);
29
- const useCalendarSelection = deprecatedFunction(
30
- useCalendarSelection$1,
31
- KEY,
32
- MSG
33
- );
34
- const useCalendarSelectionDay = deprecatedFunction(
35
- useCalendarSelectionDay$1,
36
- KEY,
37
- MSG
38
- );
39
- const useDateSelectionAnnouncer = deprecatedFunction(
40
- useDateSelectionAnnouncer$1,
41
- KEY,
42
- MSG
43
- );
44
- function isDateRangeSelection(value) {
45
- _warnOnce();
46
- return isDateRangeSelection$1(value);
47
- }
48
-
49
- export { Calendar, CalendarGrid, CalendarNavigation, CalendarWeekHeader, isDateRangeSelection, useCalendar, useCalendarDay, useCalendarSelection, useCalendarSelectionDay, useDateSelectionAnnouncer };
50
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../src/calendar/index.ts"],"sourcesContent":["import type { DateFrameworkType } from \"@salt-ds/date-adapters\";\nimport {\n Calendar as _Calendar,\n CalendarGrid as _CalendarGrid,\n CalendarNavigation as _CalendarNavigation,\n CalendarWeekHeader as _CalendarWeekHeader,\n isDateRangeSelection as _isDateRangeSelection,\n useCalendar as _useCalendar,\n useCalendarDay as _useCalendarDay,\n useCalendarSelection as _useCalendarSelection,\n useCalendarSelectionDay as _useCalendarSelectionDay,\n useDateSelectionAnnouncer as _useDateSelectionAnnouncer,\n type DateRangeSelection,\n} from \"@salt-ds/date-components\";\nimport {\n deprecatedComponent,\n deprecatedFunction,\n} from \"../utils/deprecatedExport\";\n\nconst KEY = \"@salt-ds/lab/calendar\";\nconst MSG =\n \"@salt-ds/lab 'calendar' exports are deprecated and will be removed in a future release. Import from @salt-ds/date-components instead.\";\n\nconst _warnOnce = deprecatedFunction(() => {}, KEY, MSG);\n\n// Components\nexport const Calendar = deprecatedComponent(_Calendar, \"Calendar\", KEY, MSG);\nexport const CalendarGrid = deprecatedComponent(\n _CalendarGrid,\n \"CalendarGrid\",\n KEY,\n MSG,\n);\nexport const CalendarNavigation = deprecatedComponent(\n _CalendarNavigation,\n \"CalendarNavigation\",\n KEY,\n MSG,\n);\nexport const CalendarWeekHeader = deprecatedComponent(\n _CalendarWeekHeader,\n \"CalendarWeekHeader\",\n KEY,\n MSG,\n);\n\n// Hooks\nexport const useCalendar = deprecatedFunction(_useCalendar, KEY, MSG);\nexport const useCalendarDay = deprecatedFunction(_useCalendarDay, KEY, MSG);\nexport const useCalendarSelection = deprecatedFunction(\n _useCalendarSelection,\n KEY,\n MSG,\n);\nexport const useCalendarSelectionDay = deprecatedFunction(\n _useCalendarSelectionDay,\n KEY,\n MSG,\n);\nexport const useDateSelectionAnnouncer = deprecatedFunction(\n _useDateSelectionAnnouncer,\n KEY,\n MSG,\n);\n\n// Generic function — explicit wrapper to preserve type parameters\nexport function isDateRangeSelection<\n TDate extends DateFrameworkType = DateFrameworkType,\n>(value: unknown): value is DateRangeSelection<TDate> {\n _warnOnce();\n return _isDateRangeSelection<TDate>(value);\n}\n\n// Types\nexport type {\n CalendarBaseProps,\n CalendarDayProps,\n CalendarGridProps,\n CalendarMultiselectOffsetProps,\n CalendarMultiselectRangeProps,\n CalendarMultiselectSingleProps,\n CalendarNavigationProps,\n CalendarOffsetProps,\n CalendarProps,\n CalendarRangeProps,\n CalendarSingleProps,\n CalendarWeekHeaderProps,\n CreateAnnouncement,\n DateRangeSelection,\n DayStatus,\n renderCalendarDayProps,\n SelectionVariant,\n SingleDateSelection,\n UseCalendarMultiselectOffsetProps,\n UseCalendarMultiselectRangeProps,\n UseCalendarMultiselectSingleProps,\n UseCalendarOffsetProps,\n UseCalendarProps,\n UseCalendarRangeProps,\n UseCalendarReturn,\n UseCalendarSelectionBaseProps,\n UseCalendarSelectionMultiselectOffsetProps,\n UseCalendarSelectionMultiselectRangeProps,\n UseCalendarSelectionMultiselectSingleProps,\n UseCalendarSelectionOffsetProps,\n UseCalendarSelectionProps,\n UseCalendarSelectionRangeProps,\n UseCalendarSelectionSingleProps,\n UseCalendarSingleProps,\n useCalendarDayProps,\n} from \"@salt-ds/date-components\";\n"],"names":["_Calendar","_CalendarGrid","_CalendarNavigation","_CalendarWeekHeader","_useCalendar","_useCalendarDay","_useCalendarSelection","_useCalendarSelectionDay","_useDateSelectionAnnouncer","_isDateRangeSelection"],"mappings":";;;AAmBA,MAAM,GAAA,GAAM,uBAAA;AACZ,MAAM,GAAA,GACJ,uIAAA;AAEF,MAAM,SAAA,GAAY,mBAAmB,MAAM;AAAC,CAAA,EAAG,KAAK,GAAG,CAAA;AAGhD,MAAM,QAAA,GAAW,mBAAA,CAAoBA,UAAA,EAAW,UAAA,EAAY,KAAK,GAAG;AACpE,MAAM,YAAA,GAAe,mBAAA;AAAA,EAC1BC,cAAA;AAAA,EACA,cAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,kBAAA,GAAqB,mBAAA;AAAA,EAChCC,oBAAA;AAAA,EACA,oBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,kBAAA,GAAqB,mBAAA;AAAA,EAChCC,oBAAA;AAAA,EACA,oBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AAGO,MAAM,WAAA,GAAc,kBAAA,CAAmBC,aAAA,EAAc,GAAA,EAAK,GAAG;AAC7D,MAAM,cAAA,GAAiB,kBAAA,CAAmBC,gBAAA,EAAiB,GAAA,EAAK,GAAG;AACnE,MAAM,oBAAA,GAAuB,kBAAA;AAAA,EAClCC,sBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,uBAAA,GAA0B,kBAAA;AAAA,EACrCC,yBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,yBAAA,GAA4B,kBAAA;AAAA,EACvCC,2BAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AAGO,SAAS,qBAEd,KAAA,EAAoD;AACpD,EAAA,SAAA,EAAU;AACV,EAAA,OAAOC,uBAA6B,KAAK,CAAA;AAC3C;;;;"}
@@ -1,20 +0,0 @@
1
- import { DateInputRange as DateInputRange$1, DateInputSingle as DateInputSingle$1 } from '@salt-ds/date-components';
2
- import { deprecatedComponent } from '../utils/deprecatedExport.js';
3
-
4
- const KEY = "@salt-ds/lab/date-input";
5
- const MSG = "@salt-ds/lab 'date-input' exports are deprecated and will be removed in a future release. Import from @salt-ds/date-components instead.";
6
- const DateInputRange = deprecatedComponent(
7
- DateInputRange$1,
8
- "DateInputRange",
9
- KEY,
10
- MSG
11
- );
12
- const DateInputSingle = deprecatedComponent(
13
- DateInputSingle$1,
14
- "DateInputSingle",
15
- KEY,
16
- MSG
17
- );
18
-
19
- export { DateInputRange, DateInputSingle };
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../src/date-input/index.ts"],"sourcesContent":["import {\n DateInputRange as _DateInputRange,\n DateInputSingle as _DateInputSingle,\n} from \"@salt-ds/date-components\";\nimport { deprecatedComponent } from \"../utils/deprecatedExport\";\n\nconst KEY = \"@salt-ds/lab/date-input\";\nconst MSG =\n \"@salt-ds/lab 'date-input' exports are deprecated and will be removed in a future release. Import from @salt-ds/date-components instead.\";\n\nexport const DateInputRange = deprecatedComponent(\n _DateInputRange,\n \"DateInputRange\",\n KEY,\n MSG,\n);\nexport const DateInputSingle = deprecatedComponent(\n _DateInputSingle,\n \"DateInputSingle\",\n KEY,\n MSG,\n);\n\nexport type {\n DateInputRangeDetails,\n DateInputRangeProps,\n DateInputRangeValue,\n DateInputSingleDetails,\n DateInputSingleProps,\n DateParserField,\n} from \"@salt-ds/date-components\";\n"],"names":["_DateInputRange","_DateInputSingle"],"mappings":";;;AAMA,MAAM,GAAA,GAAM,yBAAA;AACZ,MAAM,GAAA,GACJ,yIAAA;AAEK,MAAM,cAAA,GAAiB,mBAAA;AAAA,EAC5BA,gBAAA;AAAA,EACA,gBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,eAAA,GAAkB,mBAAA;AAAA,EAC7BC,iBAAA;AAAA,EACA,iBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;;;;"}
@@ -1,85 +0,0 @@
1
- import { DatePicker as DatePicker$1, DatePickerActions as DatePickerActions$1, DatePickerHelperText as DatePickerHelperText$1, DatePickerOverlay as DatePickerOverlay$1, DatePickerOverlayProvider as DatePickerOverlayProvider$1, DatePickerRangeGridPanel as DatePickerRangeGridPanel$1, DatePickerRangeInput as DatePickerRangeInput$1, DatePickerRangePanel as DatePickerRangePanel$1, DatePickerSingleGridPanel as DatePickerSingleGridPanel$1, DatePickerSingleInput as DatePickerSingleInput$1, DatePickerTrigger as DatePickerTrigger$1, useDatePickerContext as useDatePickerContext$1, useDatePickerOverlay as useDatePickerOverlay$1 } from '@salt-ds/date-components';
2
- export { DateRangeSelectionContext, SingleDateSelectionContext } from '@salt-ds/date-components';
3
- import { deprecatedComponent, deprecatedFunction } from '../utils/deprecatedExport.js';
4
-
5
- const KEY = "@salt-ds/lab/date-picker";
6
- const MSG = "@salt-ds/lab 'date-picker' exports are deprecated and will be removed in a future release. Import from @salt-ds/date-components instead.";
7
- const DatePicker = deprecatedComponent(
8
- DatePicker$1,
9
- "DatePicker",
10
- KEY,
11
- MSG
12
- );
13
- const DatePickerActions = deprecatedComponent(
14
- DatePickerActions$1,
15
- "DatePickerActions",
16
- KEY,
17
- MSG
18
- );
19
- const DatePickerHelperText = deprecatedComponent(
20
- DatePickerHelperText$1,
21
- "DatePickerHelperText",
22
- KEY,
23
- MSG
24
- );
25
- const DatePickerOverlay = deprecatedComponent(
26
- DatePickerOverlay$1,
27
- "DatePickerOverlay",
28
- KEY,
29
- MSG
30
- );
31
- const DatePickerOverlayProvider = deprecatedComponent(
32
- DatePickerOverlayProvider$1,
33
- "DatePickerOverlayProvider",
34
- KEY,
35
- MSG
36
- );
37
- const DatePickerRangeGridPanel = deprecatedComponent(
38
- DatePickerRangeGridPanel$1,
39
- "DatePickerRangeGridPanel",
40
- KEY,
41
- MSG
42
- );
43
- const DatePickerRangeInput = deprecatedComponent(
44
- DatePickerRangeInput$1,
45
- "DatePickerRangeInput",
46
- KEY,
47
- MSG
48
- );
49
- const DatePickerRangePanel = deprecatedComponent(
50
- DatePickerRangePanel$1,
51
- "DatePickerRangePanel",
52
- KEY,
53
- MSG
54
- );
55
- const DatePickerSingleGridPanel = deprecatedComponent(
56
- DatePickerSingleGridPanel$1,
57
- "DatePickerSingleGridPanel",
58
- KEY,
59
- MSG
60
- );
61
- const DatePickerSingleInput = deprecatedComponent(
62
- DatePickerSingleInput$1,
63
- "DatePickerSingleInput",
64
- KEY,
65
- MSG
66
- );
67
- const DatePickerTrigger = deprecatedComponent(
68
- DatePickerTrigger$1,
69
- "DatePickerTrigger",
70
- KEY,
71
- MSG
72
- );
73
- const useDatePickerContext = deprecatedFunction(
74
- useDatePickerContext$1,
75
- KEY,
76
- MSG
77
- );
78
- const useDatePickerOverlay = deprecatedFunction(
79
- useDatePickerOverlay$1,
80
- KEY,
81
- MSG
82
- );
83
-
84
- export { DatePicker, DatePickerActions, DatePickerHelperText, DatePickerOverlay, DatePickerOverlayProvider, DatePickerRangeGridPanel, DatePickerRangeInput, DatePickerRangePanel, DatePickerSingleGridPanel, DatePickerSingleInput, DatePickerTrigger, useDatePickerContext, useDatePickerOverlay };
85
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../src/date-picker/index.ts"],"sourcesContent":["import {\n DatePicker as _DatePicker,\n DatePickerActions as _DatePickerActions,\n DatePickerHelperText as _DatePickerHelperText,\n DatePickerOverlay as _DatePickerOverlay,\n DatePickerOverlayProvider as _DatePickerOverlayProvider,\n DatePickerRangeGridPanel as _DatePickerRangeGridPanel,\n DatePickerRangeInput as _DatePickerRangeInput,\n DatePickerRangePanel as _DatePickerRangePanel,\n DatePickerSingleGridPanel as _DatePickerSingleGridPanel,\n DatePickerSingleInput as _DatePickerSingleInput,\n DatePickerTrigger as _DatePickerTrigger,\n useDatePickerContext as _useDatePickerContext,\n useDatePickerOverlay as _useDatePickerOverlay,\n} from \"@salt-ds/date-components\";\nimport {\n deprecatedComponent,\n deprecatedFunction,\n} from \"../utils/deprecatedExport\";\n\nconst KEY = \"@salt-ds/lab/date-picker\";\nconst MSG =\n \"@salt-ds/lab 'date-picker' exports are deprecated and will be removed in a future release. Import from @salt-ds/date-components instead.\";\n\n// Components\nexport const DatePicker = deprecatedComponent(\n _DatePicker,\n \"DatePicker\",\n KEY,\n MSG,\n);\nexport const DatePickerActions = deprecatedComponent(\n _DatePickerActions,\n \"DatePickerActions\",\n KEY,\n MSG,\n);\nexport const DatePickerHelperText = deprecatedComponent(\n _DatePickerHelperText,\n \"DatePickerHelperText\",\n KEY,\n MSG,\n);\nexport const DatePickerOverlay = deprecatedComponent(\n _DatePickerOverlay,\n \"DatePickerOverlay\",\n KEY,\n MSG,\n);\nexport const DatePickerOverlayProvider = deprecatedComponent(\n _DatePickerOverlayProvider,\n \"DatePickerOverlayProvider\",\n KEY,\n MSG,\n);\nexport const DatePickerRangeGridPanel = deprecatedComponent(\n _DatePickerRangeGridPanel,\n \"DatePickerRangeGridPanel\",\n KEY,\n MSG,\n);\nexport const DatePickerRangeInput = deprecatedComponent(\n _DatePickerRangeInput,\n \"DatePickerRangeInput\",\n KEY,\n MSG,\n);\nexport const DatePickerRangePanel = deprecatedComponent(\n _DatePickerRangePanel,\n \"DatePickerRangePanel\",\n KEY,\n MSG,\n);\nexport const DatePickerSingleGridPanel = deprecatedComponent(\n _DatePickerSingleGridPanel,\n \"DatePickerSingleGridPanel\",\n KEY,\n MSG,\n);\nexport const DatePickerSingleInput = deprecatedComponent(\n _DatePickerSingleInput,\n \"DatePickerSingleInput\",\n KEY,\n MSG,\n);\nexport const DatePickerTrigger = deprecatedComponent(\n _DatePickerTrigger,\n \"DatePickerTrigger\",\n KEY,\n MSG,\n);\n\n// Hooks\nexport const useDatePickerContext = deprecatedFunction(\n _useDatePickerContext,\n KEY,\n MSG,\n);\nexport const useDatePickerOverlay = deprecatedFunction(\n _useDatePickerOverlay,\n KEY,\n MSG,\n);\n\n// Types — no side effects\nexport type {\n DatePickerActionsProps,\n DatePickerOpenChangeReason,\n DatePickerProps,\n DatePickerRangeGridPanelProps,\n DatePickerSingleGridPanelProps,\n DatePickerState,\n RangeDatePickerState,\n SingleDatePickerState,\n UseDatePickerContextProps,\n} from \"@salt-ds/date-components\";\n// Context objects — re-export directly (no runtime cost)\nexport {\n DateRangeSelectionContext,\n SingleDateSelectionContext,\n} from \"@salt-ds/date-components\";\n"],"names":["_DatePicker","_DatePickerActions","_DatePickerHelperText","_DatePickerOverlay","_DatePickerOverlayProvider","_DatePickerRangeGridPanel","_DatePickerRangeInput","_DatePickerRangePanel","_DatePickerSingleGridPanel","_DatePickerSingleInput","_DatePickerTrigger","_useDatePickerContext","_useDatePickerOverlay"],"mappings":";;;;AAoBA,MAAM,GAAA,GAAM,0BAAA;AACZ,MAAM,GAAA,GACJ,0IAAA;AAGK,MAAM,UAAA,GAAa,mBAAA;AAAA,EACxBA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,iBAAA,GAAoB,mBAAA;AAAA,EAC/BC,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,oBAAA,GAAuB,mBAAA;AAAA,EAClCC,sBAAA;AAAA,EACA,sBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,iBAAA,GAAoB,mBAAA;AAAA,EAC/BC,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,yBAAA,GAA4B,mBAAA;AAAA,EACvCC,2BAAA;AAAA,EACA,2BAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,wBAAA,GAA2B,mBAAA;AAAA,EACtCC,0BAAA;AAAA,EACA,0BAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,oBAAA,GAAuB,mBAAA;AAAA,EAClCC,sBAAA;AAAA,EACA,sBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,oBAAA,GAAuB,mBAAA;AAAA,EAClCC,sBAAA;AAAA,EACA,sBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,yBAAA,GAA4B,mBAAA;AAAA,EACvCC,2BAAA;AAAA,EACA,2BAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,qBAAA,GAAwB,mBAAA;AAAA,EACnCC,uBAAA;AAAA,EACA,uBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,iBAAA,GAAoB,mBAAA;AAAA,EAC/BC,mBAAA;AAAA,EACA,mBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AAGO,MAAM,oBAAA,GAAuB,kBAAA;AAAA,EAClCC,sBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;AACO,MAAM,oBAAA,GAAuB,kBAAA;AAAA,EAClCC,sBAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;;;;"}
@@ -1,20 +0,0 @@
1
- import { LocalizationProvider as LocalizationProvider$1, useLocalization as useLocalization$1 } from '@salt-ds/date-components';
2
- export { LocalizationProviderContext } from '@salt-ds/date-components';
3
- import { deprecatedFunction } from '../utils/deprecatedExport.js';
4
-
5
- const KEY = "@salt-ds/lab/localization-provider";
6
- const MSG = "@salt-ds/lab 'localization-provider' exports are deprecated and will be removed in a future release. Import from @salt-ds/date-components instead.";
7
- const _warnOnce = deprecatedFunction(() => {
8
- }, KEY, MSG);
9
- function LocalizationProvider(props) {
10
- _warnOnce();
11
- return LocalizationProvider$1(props);
12
- }
13
- LocalizationProvider.displayName = "LocalizationProvider";
14
- function useLocalization() {
15
- _warnOnce();
16
- return useLocalization$1();
17
- }
18
-
19
- export { LocalizationProvider, useLocalization };
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../src/localization-provider/index.ts"],"sourcesContent":["import type { DateFrameworkType } from \"@salt-ds/date-adapters\";\nimport {\n LocalizationProvider as _LocalizationProvider,\n useLocalization as _useLocalization,\n type LocalizationProviderProps,\n type LocalizationProviderValue,\n} from \"@salt-ds/date-components\";\nimport { deprecatedFunction } from \"../utils/deprecatedExport\";\n\nconst KEY = \"@salt-ds/lab/localization-provider\";\nconst MSG =\n \"@salt-ds/lab 'localization-provider' exports are deprecated and will be removed in a future release. Import from @salt-ds/date-components instead.\";\n\nconst _warnOnce = deprecatedFunction(() => {}, KEY, MSG);\n\nexport function LocalizationProvider<\n TDate extends DateFrameworkType = DateFrameworkType,\n TLocale = undefined,\n>(props: LocalizationProviderProps<TDate, TLocale>) {\n _warnOnce();\n return _LocalizationProvider(props);\n}\nLocalizationProvider.displayName = \"LocalizationProvider\";\n\nexport function useLocalization<\n TDate extends DateFrameworkType = DateFrameworkType,\n>(): LocalizationProviderValue<TDate> {\n _warnOnce();\n return _useLocalization<TDate>();\n}\n\nexport type {\n LocalizationProviderContext as LocalizationProviderContextType,\n LocalizationProviderProps,\n LocalizationProviderValue,\n} from \"@salt-ds/date-components\";\n// Context object — re-export directly\nexport { LocalizationProviderContext } from \"@salt-ds/date-components\";\n"],"names":["_LocalizationProvider","_useLocalization"],"mappings":";;;;AASA,MAAM,GAAA,GAAM,oCAAA;AACZ,MAAM,GAAA,GACJ,oJAAA;AAEF,MAAM,SAAA,GAAY,mBAAmB,MAAM;AAAC,CAAA,EAAG,KAAK,GAAG,CAAA;AAEhD,SAAS,qBAGd,KAAA,EAAkD;AAClD,EAAA,SAAA,EAAU;AACV,EAAA,OAAOA,uBAAsB,KAAK,CAAA;AACpC;AACA,oBAAA,CAAqB,WAAA,GAAc,sBAAA;AAE5B,SAAS,eAAA,GAEsB;AACpC,EAAA,SAAA,EAAU;AACV,EAAA,OAAOC,iBAAA,EAAwB;AACjC;;;;"}
@@ -1,4 +0,0 @@
1
- var css_248z = ".saltMegaMenuHeader-content {\n display: flex;\n align-items: center;\n padding: var(--salt-spacing-50) var(--salt-spacing-100);\n font-family: var(--salt-text-label-fontFamily);\n font-size: var(--salt-text-label-fontSize);\n font-weight: var(--salt-text-fontWeight-strong);\n line-height: var(--salt-text-label-lineHeight);\n min-height: var(--salt-size-base);\n color: var(--salt-content-secondary-foreground);\n}\n.saltMegaMenuHeader {\n margin-bottom: var(--salt-spacing-50);\n border-bottom: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--salt-separable-tertiary-borderColor);\n}\n";
2
-
3
- export { css_248z as default };
4
- //# sourceMappingURL=MegaMenuHeader.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MegaMenuHeader.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,24 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { makePrefixer } from '@salt-ds/core';
3
- import { useComponentCssInjection } from '@salt-ds/styles';
4
- import { useWindow } from '@salt-ds/window';
5
- import { clsx } from 'clsx';
6
- import { forwardRef } from 'react';
7
- import css_248z from './MegaMenuHeader.css.js';
8
-
9
- const withBaseName = makePrefixer("saltMegaMenuHeader");
10
- const MegaMenuHeader = forwardRef(
11
- function MegaMenuHeader2({ children, className, ...rest }, ref) {
12
- const targetWindow = useWindow();
13
- useComponentCssInjection({
14
- testId: "salt-mega-menu-header",
15
- css: css_248z,
16
- window: targetWindow
17
- });
18
- return /* @__PURE__ */ jsx("div", { className: clsx(withBaseName(), className), ref, ...rest, children: /* @__PURE__ */ jsx("div", { className: clsx(withBaseName("content")), children }) });
19
- }
20
- );
21
- MegaMenuHeader.__isMegaMenuHeader = true;
22
-
23
- export { MegaMenuHeader };
24
- //# sourceMappingURL=MegaMenuHeader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MegaMenuHeader.js","sources":["../src/mega-menu/MegaMenuHeader.tsx"],"sourcesContent":["import { makePrefixer } from \"@salt-ds/core\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { clsx } from \"clsx\";\nimport {\n type ComponentPropsWithoutRef,\n forwardRef,\n type ReactNode,\n} from \"react\";\nimport megaMenuHeaderCss from \"./MegaMenuHeader.css\";\n\nconst withBaseName = makePrefixer(\"saltMegaMenuHeader\");\n\nexport interface MegaMenuHeaderProps extends ComponentPropsWithoutRef<\"div\"> {\n /**\n * The content of the mega menu header.\n */\n children?: ReactNode;\n}\n\nexport const MegaMenuHeader = forwardRef<HTMLDivElement, MegaMenuHeaderProps>(\n function MegaMenuHeader({ children, className, ...rest }, ref) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-mega-menu-header\",\n css: megaMenuHeaderCss,\n window: targetWindow,\n });\n\n return (\n <div className={clsx(withBaseName(), className)} ref={ref} {...rest}>\n <div className={clsx(withBaseName(\"content\"))}>{children}</div>\n </div>\n );\n },\n);\n\n/** @internal Marker used by MegaMenuGroup to identify header children. */\n(MegaMenuHeader as any).__isMegaMenuHeader = true;\n"],"names":["MegaMenuHeader","megaMenuHeaderCss"],"mappings":";;;;;;;;AAWA,MAAM,YAAA,GAAe,aAAa,oBAAoB,CAAA;AAS/C,MAAM,cAAA,GAAiB,UAAA;AAAA,EAC5B,SAASA,gBAAe,EAAE,QAAA,EAAU,WAAW,GAAG,IAAA,IAAQ,GAAA,EAAK;AAC7D,IAAA,MAAM,eAAe,SAAA,EAAU;AAC/B,IAAA,wBAAA,CAAyB;AAAA,MACvB,MAAA,EAAQ,uBAAA;AAAA,MACR,GAAA,EAAKC,QAAA;AAAA,MACL,MAAA,EAAQ;AAAA,KACT,CAAA;AAED,IAAA,uBACE,GAAA,CAAC,SAAI,SAAA,EAAW,IAAA,CAAK,cAAa,EAAG,SAAS,GAAG,GAAA,EAAW,GAAG,MAC7D,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,WAAW,IAAA,CAAK,YAAA,CAAa,SAAS,CAAC,CAAA,EAAI,UAAS,CAAA,EAC3D,CAAA;AAAA,EAEJ;AACF;AAGC,cAAA,CAAuB,kBAAA,GAAqB,IAAA;;;;"}
@@ -1,4 +0,0 @@
1
- var css_248z = ".saltMegaMenuItem {\n list-style: none;\n}\n\n.saltMegaMenuItem > a {\n display: flex;\n padding: var(--salt-spacing-50) var(--salt-spacing-100);\n align-items: flex-start;\n color: var(--salt-content-primary-foreground);\n background: var(--salt-selectable-background);\n cursor: var(--salt-cursor-hover);\n min-height: calc(var(--salt-size-base) + var(--salt-spacing-100));\n box-sizing: border-box;\n gap: var(--salt-spacing-100);\n position: relative;\n border-radius: var(--salt-palette-corner-weak);\n text-decoration: none;\n}\n\n.saltMegaMenuItem > a > .saltIcon {\n display: flex;\n height: var(--salt-size-base);\n align-items: center;\n}\n\n.saltMegaMenuItem > a:focus-visible {\n outline: var(--salt-focused-outline);\n outline-offset: calc(var(--salt-size-fixed-100) * -2);\n}\n\n.saltMegaMenuItem > a:hover {\n outline: none;\n background: var(--salt-navigable-background-hover);\n}\n\n.saltMegaMenuItem > a:active {\n background: var(--salt-navigable-accent-background-active);\n}\n\n.saltMegaMenuItem > a:active::before {\n content: \"\";\n position: absolute;\n inset: 0;\n box-sizing: border-box;\n border-radius: inherit;\n border: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--salt-navigable-accent-borderColor-active);\n pointer-events: none;\n}\n";
2
-
3
- export { css_248z as default };
4
- //# sourceMappingURL=MegaMenuItem.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MegaMenuItem.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,50 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { makePrefixer, renderProps } from '@salt-ds/core';
3
- import { useComponentCssInjection } from '@salt-ds/styles';
4
- import { useWindow } from '@salt-ds/window';
5
- import { clsx } from 'clsx';
6
- import { forwardRef } from 'react';
7
- import css_248z from './MegaMenuItem.css.js';
8
- import { useMegaMenu } from './useMegaMenu.js';
9
-
10
- const withBaseName = makePrefixer("saltMegaMenuItem");
11
- function ItemAction(props) {
12
- return renderProps("a", props);
13
- }
14
- const MegaMenuItem = forwardRef(
15
- function MegaMenuItem2({ children, className, href = "#", onClick, onKeyDown, ...rest }, ref) {
16
- const targetWindow = useWindow();
17
- const megaMenu = useMegaMenu();
18
- useComponentCssInjection({
19
- testId: "salt-mega-menu-item",
20
- css: css_248z,
21
- window: targetWindow
22
- });
23
- const handleClick = (event) => {
24
- onClick == null ? void 0 : onClick(event);
25
- megaMenu.setOpen(false);
26
- };
27
- const handleKeyDown = (event) => {
28
- onKeyDown == null ? void 0 : onKeyDown(event);
29
- if (!event.defaultPrevented && event.key === " ") {
30
- event.preventDefault();
31
- event.currentTarget.click();
32
- }
33
- };
34
- return /* @__PURE__ */ jsx("li", { className: withBaseName(), ref, children: /* @__PURE__ */ jsx(
35
- ItemAction,
36
- {
37
- className: clsx(withBaseName(), className),
38
- "data-mega-menu-item": "",
39
- href,
40
- onClick: handleClick,
41
- onKeyDown: handleKeyDown,
42
- ...rest,
43
- children
44
- }
45
- ) });
46
- }
47
- );
48
-
49
- export { MegaMenuItem };
50
- //# sourceMappingURL=MegaMenuItem.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MegaMenuItem.js","sources":["../src/mega-menu/MegaMenuItem.tsx"],"sourcesContent":["import { makePrefixer, renderProps } from \"@salt-ds/core\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { clsx } from \"clsx\";\nimport {\n type AnchorHTMLAttributes,\n type ComponentPropsWithoutRef,\n forwardRef,\n type KeyboardEvent,\n type MouseEvent,\n type ReactNode,\n} from \"react\";\nimport megaMenuItemCss from \"./MegaMenuItem.css\";\nimport { useMegaMenu } from \"./useMegaMenu\";\n\nconst withBaseName = makePrefixer(\"saltMegaMenuItem\");\n\n// biome-ignore lint/suspicious/noExplicitAny: We don't know the exact type here\nfunction ItemAction(props: ComponentPropsWithoutRef<any>) {\n return renderProps(\"a\", props);\n}\n\nexport interface MegaMenuItemProps\n extends AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * The content of the mega menu item.\n */\n children?: ReactNode;\n /**\n * Href to be passed to the Link element.\n */\n href?: string;\n}\n\nexport const MegaMenuItem = forwardRef<HTMLLIElement, MegaMenuItemProps>(\n function MegaMenuItem(\n { children, className, href = \"#\", onClick, onKeyDown, ...rest },\n ref,\n ) {\n const targetWindow = useWindow();\n const megaMenu = useMegaMenu();\n\n useComponentCssInjection({\n testId: \"salt-mega-menu-item\",\n css: megaMenuItemCss,\n window: targetWindow,\n });\n\n const handleClick = (event: MouseEvent<HTMLAnchorElement>) => {\n onClick?.(event);\n megaMenu.setOpen(false);\n };\n\n // Native `<a>` activates on Enter but not Space — handle Space here for parity.\n const handleKeyDown = (event: KeyboardEvent<HTMLAnchorElement>) => {\n onKeyDown?.(event);\n if (!event.defaultPrevented && event.key === \" \") {\n event.preventDefault();\n event.currentTarget.click();\n }\n };\n\n return (\n <li className={withBaseName()} ref={ref}>\n <ItemAction\n className={clsx(withBaseName(), className)}\n data-mega-menu-item=\"\"\n href={href}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n {...rest}\n >\n {children}\n </ItemAction>\n </li>\n );\n },\n);\n"],"names":["MegaMenuItem","megaMenuItemCss"],"mappings":";;;;;;;;;AAeA,MAAM,YAAA,GAAe,aAAa,kBAAkB,CAAA;AAGpD,SAAS,WAAW,KAAA,EAAsC;AACxD,EAAA,OAAO,WAAA,CAAY,KAAK,KAAK,CAAA;AAC/B;AAcO,MAAM,YAAA,GAAe,UAAA;AAAA,EAC1B,SAASA,aAAAA,CACP,EAAE,QAAA,EAAU,SAAA,EAAW,IAAA,GAAO,GAAA,EAAK,OAAA,EAAS,SAAA,EAAW,GAAG,IAAA,EAAK,EAC/D,GAAA,EACA;AACA,IAAA,MAAM,eAAe,SAAA,EAAU;AAC/B,IAAA,MAAM,WAAW,WAAA,EAAY;AAE7B,IAAA,wBAAA,CAAyB;AAAA,MACvB,MAAA,EAAQ,qBAAA;AAAA,MACR,GAAA,EAAKC,QAAA;AAAA,MACL,MAAA,EAAQ;AAAA,KACT,CAAA;AAED,IAAA,MAAM,WAAA,GAAc,CAAC,KAAA,KAAyC;AAC5D,MAAA,OAAA,IAAA,IAAA,GAAA,MAAA,GAAA,OAAA,CAAU,KAAA,CAAA;AACV,MAAA,QAAA,CAAS,QAAQ,KAAK,CAAA;AAAA,IACxB,CAAA;AAGA,IAAA,MAAM,aAAA,GAAgB,CAAC,KAAA,KAA4C;AACjE,MAAA,SAAA,IAAA,IAAA,GAAA,MAAA,GAAA,SAAA,CAAY,KAAA,CAAA;AACZ,MAAA,IAAI,CAAC,KAAA,CAAM,gBAAA,IAAoB,KAAA,CAAM,QAAQ,GAAA,EAAK;AAChD,QAAA,KAAA,CAAM,cAAA,EAAe;AACrB,QAAA,KAAA,CAAM,cAAc,KAAA,EAAM;AAAA,MAC5B;AAAA,IACF,CAAA;AAEA,IAAA,uBACE,GAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAW,YAAA,IAAgB,GAAA,EAC7B,QAAA,kBAAA,GAAA;AAAA,MAAC,UAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,IAAA,CAAK,YAAA,EAAa,EAAG,SAAS,CAAA;AAAA,QACzC,qBAAA,EAAoB,EAAA;AAAA,QACpB,IAAA;AAAA,QACA,OAAA,EAAS,WAAA;AAAA,QACT,SAAA,EAAW,aAAA;AAAA,QACV,GAAG,IAAA;AAAA,QAEH;AAAA;AAAA,KACH,EACF,CAAA;AAAA,EAEJ;AACF;;;;"}
@@ -1,4 +0,0 @@
1
- var css_248z = ".saltMegaMenuItemContent {\n flex: 1 0;\n margin: var(--salt-spacing-75) 0;\n font-family: var(--salt-text-fontFamily);\n font-size: var(--salt-text-fontSize);\n font-weight: var(--salt-text-fontWeight);\n line-height: var(--salt-text-lineHeight);\n}\n";
2
-
3
- export { css_248z as default };
4
- //# sourceMappingURL=MegaMenuItemContent.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MegaMenuItemContent.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1,21 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { makePrefixer } from '@salt-ds/core';
3
- import { useComponentCssInjection } from '@salt-ds/styles';
4
- import { useWindow } from '@salt-ds/window';
5
- import { clsx } from 'clsx';
6
- import { forwardRef } from 'react';
7
- import css_248z from './MegaMenuItemContent.css.js';
8
-
9
- const withBaseName = makePrefixer("saltMegaMenuItemContent");
10
- const MegaMenuItemContent = forwardRef(function MegaMenuItemContent2({ children, className, ...restProps }, ref) {
11
- const targetWindow = useWindow();
12
- useComponentCssInjection({
13
- testId: "salt-mega-menu-item-content",
14
- css: css_248z,
15
- window: targetWindow
16
- });
17
- return /* @__PURE__ */ jsx("div", { className: clsx(withBaseName(), className), ...restProps, ref, children });
18
- });
19
-
20
- export { MegaMenuItemContent };
21
- //# sourceMappingURL=MegaMenuItemContent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MegaMenuItemContent.js","sources":["../src/mega-menu/MegaMenuItemContent.tsx"],"sourcesContent":["import { makePrefixer } from \"@salt-ds/core\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { clsx } from \"clsx\";\nimport {\n type ComponentPropsWithoutRef,\n forwardRef,\n type ReactNode,\n} from \"react\";\nimport megaMenuItemContent from \"./MegaMenuItemContent.css\";\n\nconst withBaseName = makePrefixer(\"saltMegaMenuItemContent\");\n\nexport interface MegaMenuItemContentProps\n extends ComponentPropsWithoutRef<\"div\"> {\n /**\n * The content of Mega Menu Item.\n */\n children?: ReactNode;\n}\n\nexport const MegaMenuItemContent = forwardRef<\n HTMLDivElement,\n MegaMenuItemContentProps\n>(function MegaMenuItemContent({ children, className, ...restProps }, ref) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-mega-menu-item-content\",\n css: megaMenuItemContent,\n window: targetWindow,\n });\n\n return (\n <div className={clsx(withBaseName(), className)} {...restProps} ref={ref}>\n {children}\n </div>\n );\n});\n"],"names":["MegaMenuItemContent","megaMenuItemContent"],"mappings":";;;;;;;;AAWA,MAAM,YAAA,GAAe,aAAa,yBAAyB,CAAA;AAUpD,MAAM,mBAAA,GAAsB,UAAA,CAGjC,SAASA,oBAAAA,CAAoB,EAAE,UAAU,SAAA,EAAW,GAAG,SAAA,EAAU,EAAG,GAAA,EAAK;AACzE,EAAA,MAAM,eAAe,SAAA,EAAU;AAC/B,EAAA,wBAAA,CAAyB;AAAA,IACvB,MAAA,EAAQ,6BAAA;AAAA,IACR,GAAA,EAAKC,QAAA;AAAA,IACL,MAAA,EAAQ;AAAA,GACT,CAAA;AAED,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,IAAA,CAAK,YAAA,EAAa,EAAG,SAAS,CAAA,EAAI,GAAG,SAAA,EAAW,GAAA,EAC7D,QAAA,EACH,CAAA;AAEJ,CAAC;;;;"}
@@ -1,4 +0,0 @@
1
- var css_248z = ".saltMegaMenuSection {\n display: grid;\n grid-template-columns: repeat(auto-fit, var(--saltMegaMenuSection-columnWidth, 12rem));\n gap: var(--salt-spacing-300);\n padding: var(--salt-spacing-300);\n max-inline-size: var(--saltMegaMenuPanel-availableWidth, calc(100vw - var(--salt-spacing-600)));\n}\n";
2
-
3
- export { css_248z as default };
4
- //# sourceMappingURL=MegaMenuSection.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MegaMenuSection.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"MegaMenuSection.js","sources":["../src/mega-menu/MegaMenuSection.tsx"],"sourcesContent":["import { makePrefixer } from \"@salt-ds/core\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { clsx } from \"clsx\";\nimport { forwardRef, type HTMLAttributes, type ReactNode } from \"react\";\nimport megaMenuSectionCss from \"./MegaMenuSection.css\";\n\nconst withBaseName = makePrefixer(\"saltMegaMenuSection\");\n\nexport interface MegaMenuSectionProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * The content of the mega menu section.\n */\n children?: ReactNode;\n}\n\nexport const MegaMenuSection = forwardRef<HTMLDivElement, MegaMenuSectionProps>(\n function MegaMenuSection({ children, className, ...rest }, ref) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-mega-menu-section\",\n css: megaMenuSectionCss,\n window: targetWindow,\n });\n\n return (\n <div className={clsx(withBaseName(), className)} ref={ref} {...rest}>\n {children}\n </div>\n );\n },\n);\n"],"names":["MegaMenuSection","megaMenuSectionCss"],"mappings":";;;;;;;;AAOA,MAAM,YAAA,GAAe,aAAa,qBAAqB,CAAA;AAShD,MAAM,eAAA,GAAkB,UAAA;AAAA,EAC7B,SAASA,iBAAgB,EAAE,QAAA,EAAU,WAAW,GAAG,IAAA,IAAQ,GAAA,EAAK;AAC9D,IAAA,MAAM,eAAe,SAAA,EAAU;AAC/B,IAAA,wBAAA,CAAyB;AAAA,MACvB,MAAA,EAAQ,wBAAA;AAAA,MACR,GAAA,EAAKC,QAAA;AAAA,MACL,MAAA,EAAQ;AAAA,KACT,CAAA;AAED,IAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,IAAA,CAAK,YAAA,EAAa,EAAG,SAAS,CAAA,EAAG,GAAA,EAAW,GAAG,IAAA,EAC5D,QAAA,EACH,CAAA;AAAA,EAEJ;AACF;;;;"}