@accelint/design-toolkit 5.1.0 → 6.0.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 (159) hide show
  1. package/catalog-info.yaml +44 -0
  2. package/dist/components/accordion/index.js +1 -1
  3. package/dist/components/accordion/index.js.map +1 -1
  4. package/dist/components/accordion/styles.d.ts +3 -3
  5. package/dist/components/accordion/styles.js +1 -1
  6. package/dist/components/accordion/styles.js.map +1 -1
  7. package/dist/components/action-bar/index.d.ts +11 -0
  8. package/dist/components/action-bar/index.js.map +1 -1
  9. package/dist/components/breadcrumbs/index.d.ts +27 -0
  10. package/dist/components/breadcrumbs/index.js +4 -0
  11. package/dist/components/breadcrumbs/index.js.map +1 -0
  12. package/dist/components/breadcrumbs/styles.d.ts +48 -0
  13. package/dist/components/breadcrumbs/styles.js +2 -0
  14. package/dist/components/breadcrumbs/styles.js.map +1 -0
  15. package/dist/components/breadcrumbs/types.d.ts +20 -0
  16. package/dist/components/breadcrumbs/types.js +2 -0
  17. package/dist/components/breadcrumbs/types.js.map +1 -0
  18. package/dist/components/button/index.d.ts +2 -2
  19. package/dist/components/button/index.js +1 -1
  20. package/dist/components/button/index.js.map +1 -1
  21. package/dist/components/button/styles.d.ts +15 -15
  22. package/dist/components/button/styles.js +1 -1
  23. package/dist/components/button/styles.js.map +1 -1
  24. package/dist/components/button/types.d.ts +7 -5
  25. package/dist/components/clock/index.d.ts +39 -0
  26. package/dist/components/clock/index.js +4 -0
  27. package/dist/components/clock/index.js.map +1 -0
  28. package/dist/components/clock/types.d.ts +7 -0
  29. package/dist/components/clock/types.js +2 -0
  30. package/dist/components/clock/types.js.map +1 -0
  31. package/dist/components/color-picker/styles.d.ts +3 -3
  32. package/dist/components/combobox-field/index.d.ts +11 -0
  33. package/dist/components/combobox-field/index.js.map +1 -1
  34. package/dist/components/combobox-field/styles.js +1 -1
  35. package/dist/components/combobox-field/styles.js.map +1 -1
  36. package/dist/components/dialog/index.js +1 -1
  37. package/dist/components/dialog/index.js.map +1 -1
  38. package/dist/components/divider/index.d.ts +32 -0
  39. package/dist/components/divider/index.js +4 -0
  40. package/dist/components/divider/index.js.map +1 -0
  41. package/dist/components/divider/styles.d.ts +5 -0
  42. package/dist/components/divider/styles.js +2 -0
  43. package/dist/components/divider/styles.js.map +1 -0
  44. package/dist/components/divider/types.d.ts +11 -0
  45. package/dist/components/divider/types.js +2 -0
  46. package/dist/components/divider/types.js.map +1 -0
  47. package/dist/components/drawer/index.d.ts +48 -3
  48. package/dist/components/drawer/index.js +1 -1
  49. package/dist/components/drawer/index.js.map +1 -1
  50. package/dist/components/drawer/styles.js +1 -1
  51. package/dist/components/drawer/styles.js.map +1 -1
  52. package/dist/components/drawer/types.d.ts +13 -7
  53. package/dist/components/input/styles.js +1 -1
  54. package/dist/components/input/styles.js.map +1 -1
  55. package/dist/components/lines/index.d.ts +9 -0
  56. package/dist/components/lines/index.js.map +1 -1
  57. package/dist/components/link/index.d.ts +9 -0
  58. package/dist/components/link/index.js.map +1 -1
  59. package/dist/components/link/styles.js +1 -1
  60. package/dist/components/link/styles.js.map +1 -1
  61. package/dist/components/menu/styles.js +1 -1
  62. package/dist/components/menu/styles.js.map +1 -1
  63. package/dist/components/notice/events.d.ts +10 -0
  64. package/dist/components/notice/events.js +2 -0
  65. package/dist/components/notice/events.js.map +1 -0
  66. package/dist/components/notice/index.d.ts +20 -0
  67. package/dist/components/notice/index.js +4 -0
  68. package/dist/components/notice/index.js.map +1 -0
  69. package/dist/components/notice/styles.d.ts +60 -0
  70. package/dist/components/notice/styles.js +2 -0
  71. package/dist/components/notice/styles.js.map +1 -0
  72. package/dist/components/notice/types.d.ts +75 -0
  73. package/dist/components/notice/types.js +2 -0
  74. package/dist/components/notice/types.js.map +1 -0
  75. package/dist/components/query-builder/index.js +1 -1
  76. package/dist/components/query-builder/index.js.map +1 -1
  77. package/dist/components/search-field/styles.js +1 -1
  78. package/dist/components/search-field/styles.js.map +1 -1
  79. package/dist/components/select-field/types.d.ts +0 -1
  80. package/dist/components/sidenav/index.d.ts +57 -6
  81. package/dist/components/sidenav/index.js +1 -1
  82. package/dist/components/sidenav/index.js.map +1 -1
  83. package/dist/components/sidenav/styles.js +1 -1
  84. package/dist/components/sidenav/styles.js.map +1 -1
  85. package/dist/components/slider/index.js +1 -1
  86. package/dist/components/slider/index.js.map +1 -1
  87. package/dist/components/slider/styles.js +1 -1
  88. package/dist/components/slider/styles.js.map +1 -1
  89. package/dist/components/table/context.d.ts +11 -0
  90. package/dist/components/table/context.js +2 -0
  91. package/dist/components/table/context.js.map +1 -0
  92. package/dist/components/table/index.d.ts +36 -0
  93. package/dist/components/table/index.js +4 -0
  94. package/dist/components/table/index.js.map +1 -0
  95. package/dist/components/table/styles.d.ts +134 -0
  96. package/dist/components/table/styles.js +2 -0
  97. package/dist/components/table/styles.js.map +1 -0
  98. package/dist/components/table/table-body.d.ts +12 -0
  99. package/dist/components/table/table-body.js +2 -0
  100. package/dist/components/table/table-body.js.map +1 -0
  101. package/dist/components/table/table-cell.d.ts +12 -0
  102. package/dist/components/table/table-cell.js +2 -0
  103. package/dist/components/table/table-cell.js.map +1 -0
  104. package/dist/components/table/table-header-cell.d.ts +12 -0
  105. package/dist/components/table/table-header-cell.js +2 -0
  106. package/dist/components/table/table-header-cell.js.map +1 -0
  107. package/dist/components/table/table-header.d.ts +12 -0
  108. package/dist/components/table/table-header.js +2 -0
  109. package/dist/components/table/table-header.js.map +1 -0
  110. package/dist/components/table/table-row.d.ts +12 -0
  111. package/dist/components/table/table-row.js +2 -0
  112. package/dist/components/table/table-row.js.map +1 -0
  113. package/dist/components/table/types.d.ts +185 -0
  114. package/dist/components/table/types.js +2 -0
  115. package/dist/components/table/types.js.map +1 -0
  116. package/dist/components/tabs/styles.js +1 -1
  117. package/dist/components/tabs/styles.js.map +1 -1
  118. package/dist/components/time-field/index.d.ts +19 -0
  119. package/dist/components/time-field/index.js +4 -0
  120. package/dist/components/time-field/index.js.map +1 -0
  121. package/dist/components/time-field/styles.d.ts +69 -0
  122. package/dist/components/time-field/styles.js +2 -0
  123. package/dist/components/time-field/styles.js.map +1 -0
  124. package/dist/components/time-field/types.d.ts +23 -0
  125. package/dist/components/time-field/types.js +2 -0
  126. package/dist/components/time-field/types.js.map +1 -0
  127. package/dist/components/tooltip/index.d.ts +23 -34
  128. package/dist/components/tooltip/index.js +1 -1
  129. package/dist/components/tooltip/index.js.map +1 -1
  130. package/dist/components/tooltip/types.d.ts +5 -6
  131. package/dist/components/tree/index.d.ts +22 -1
  132. package/dist/components/tree/index.js +1 -1
  133. package/dist/components/tree/index.js.map +1 -1
  134. package/dist/components/tree/styles.js +1 -1
  135. package/dist/components/tree/styles.js.map +1 -1
  136. package/dist/components/view-stack/index.d.ts +42 -2
  137. package/dist/components/view-stack/index.js +1 -1
  138. package/dist/components/view-stack/index.js.map +1 -1
  139. package/dist/foundation/token-data.js +1 -1
  140. package/dist/foundation/token-data.js.map +1 -1
  141. package/dist/index.css +5 -3
  142. package/dist/index.d.ts +32 -6
  143. package/dist/index.js +1 -1
  144. package/dist/metafile-esm.json +1 -1
  145. package/dist/providers/portal.d.ts +9 -0
  146. package/dist/providers/portal.js +2 -0
  147. package/dist/providers/portal.js.map +1 -0
  148. package/dist/providers/theme-provider.d.ts +6 -6
  149. package/dist/providers/theme-provider.js +1 -1
  150. package/dist/providers/theme-provider.js.map +1 -1
  151. package/dist/styles.css +3355 -974
  152. package/dist/tokens/themes.css +56 -24
  153. package/dist/tokens/tokens.css +8 -8
  154. package/dist/tokens/tokens.d.ts +18 -0
  155. package/dist/tokens/tokens.js +1 -1
  156. package/dist/tokens/tokens.js.map +1 -1
  157. package/dist/tokens/types.d.ts +9 -0
  158. package/dist/variants/variants.css +3 -0
  159. package/package.json +39 -17
@@ -0,0 +1,2 @@
1
+ import {jsx}from'react/jsx-runtime';import {TableBodyStyles}from'./styles.js';import {TableRow}from'./table-row.js';function T({children:r,className:y,ref:p,rows:t,...a}){return jsx("tbody",{...a,ref:p,className:TableBodyStyles({className:y}),children:r||t?.map(o=>jsx(TableRow,{row:o},o.id))})}export{T as TableBody};//# sourceMappingURL=table-body.js.map
2
+ //# sourceMappingURL=table-body.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/table/table-body.tsx"],"names":["ref","rows","jsx","e","b","row"],"mappings":"oHAiBO,SACL,CAAA,CAAA,CAAA,QACA,CAAA,CAAA,CAAA,SACAA,CACA,KAAAC,CAAAA,CACA,CAAA,IACF,CAAsB,CACpB,CAAA,GAAA,CAAA,CAAA,CACEC,QAACC,GAAA,CAAA,OAEC,CAAA,CAAA,GACA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,SACE,CAAAC,eAAA,CAAA,CAAA,SAGD,CAAA,CAAA,CAAA,CAAA,CAAA,QAAkB,CAAA,CAAA,EAAKC,CAAAA,EAAQH,GAAC,CAAsB,CAAA,EAAAC,GAAKE,CAAAA,QAAAA,CAAbA,CAAAA,GAAkB,CAAE,CAAA,CACrE,CAEJ,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA","file":"table-body.js","sourcesContent":["// __private-exports\n/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { TableBodyStyles } from './styles';\nimport { TableRow } from './table-row';\nimport type { TableBodyProps } from './types';\n\nexport function TableBody<T>({\n children,\n className,\n ref,\n rows,\n ...rest\n}: TableBodyProps<T>) {\n return (\n <tbody\n {...rest}\n ref={ref}\n className={TableBodyStyles({\n className,\n })}\n >\n {children || rows?.map((row) => <TableRow key={row.id} row={row} />)}\n </tbody>\n );\n}\n"]}
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { TableCellProps } from './types.js';
3
+ import '@react-types/shared';
4
+ import '@tanstack/react-table';
5
+ import 'react';
6
+ import 'tailwind-variants';
7
+ import './styles.js';
8
+ import 'tailwind-merge';
9
+
10
+ declare function TableCell<T>({ children, ref, className, cell, ...rest }: TableCellProps<T>): react_jsx_runtime.JSX.Element;
11
+
12
+ export { TableCell };
@@ -0,0 +1,2 @@
1
+ import {jsx}from'react/jsx-runtime';import {flexRender}from'@tanstack/react-table';import {useContext}from'react';import {TableContext}from'./context.js';import {TableCellStyles}from'./styles.js';function y({children:t,ref:n,className:r,cell:e,...s}){const{columnSelection:l,persistNumerals:m}=useContext(TableContext),a=e?.column.id==="kebab",o=e?.column.id==="numeral",i=e?.column.id===l;return jsx("td",{...s,ref:n,className:TableCellStyles({className:r,narrow:o||a,isNumeral:o,notPersistNums:o&&!m}),"data-selected":i||null,children:t||e&&flexRender(e.column.columnDef.cell,e.getContext())})}export{y as TableCell};//# sourceMappingURL=table-cell.js.map
2
+ //# sourceMappingURL=table-cell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/table/table-cell.tsx"],"names":["ref","cell","isKebab","p","isNumeral","jsx","d","b","flexRender","u"],"mappings":"oMAmBO,SACL,CAAA,CAAA,CAAA,QACAA,CACA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,SACAC,CAAAA,CACA,KACF,CAAsB,CACpB,CAAA,GAAA,CAAM,CAAE,uBAAiB,CAAA,CAAA,CAAA,eAA2C,CAC9DC,CAAAA,CAAUD,CAAAA,UAAAA,CAAME,YAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,MAAO,CAAA,EAAA,GAC9BC,OAAkB,CAAA,CAAA,CAAA,CAAA,QAAc,CAAA,EAAA,GAAA,SACb,CAAA,CAAA,CAAA,CAAA,EAAO,MAIhC,CAAA,EAAA,GAAA,CACEC,CAAAA,OACGC,GAAA,CAAA,SAED,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,SACE,CAAAC,eAAA,CAAA,CAAA,SACA,CAAA,CATSH,CAAAA,qBAWT,CAAA,CAAA,CAAA,cACD,CACD,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,eAA6B,CAE5B,CAAA,EAAA,IAAA,CAAA,QACUI,CAAWP,GAAK,CAAA,EAAAQ,UAAA,CAAA,CAAO,CAAA,MAAA,CAAA,SAAqB,CAAA,IAAA,CAAA,CAAA,CAAA,UAG7D,EAAA,CAAA,CAAA,CAAA","file":"table-cell.js","sourcesContent":["// __private-exports\n/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { flexRender } from '@tanstack/react-table';\nimport { useContext } from 'react';\nimport { TableContext } from './context';\nimport { TableCellStyles } from './styles';\nimport type { TableCellProps } from './types';\n\nexport function TableCell<T>({\n children,\n ref,\n className,\n cell,\n ...rest\n}: TableCellProps<T>) {\n const { columnSelection, persistNumerals } = useContext(TableContext);\n const isKebab = cell?.column.id === 'kebab';\n const isNumeral = cell?.column.id === 'numeral';\n const isSelected = cell?.column.id === columnSelection;\n const narrow = isNumeral || isKebab;\n const notPersistNums = isNumeral && !persistNumerals;\n\n return (\n <td\n {...rest}\n ref={ref}\n className={TableCellStyles({\n className,\n narrow,\n isNumeral,\n notPersistNums,\n })}\n data-selected={isSelected || null}\n >\n {children ||\n (cell && flexRender(cell.column.columnDef.cell, cell.getContext()))}\n </td>\n );\n}\n"]}
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { TableHeaderCellProps } from './types.js';
3
+ import '@react-types/shared';
4
+ import '@tanstack/react-table';
5
+ import 'react';
6
+ import 'tailwind-variants';
7
+ import './styles.js';
8
+ import 'tailwind-merge';
9
+
10
+ declare function HeaderCell<T>({ ref, children, className, header, ...rest }: TableHeaderCellProps<T>): react_jsx_runtime.JSX.Element;
11
+
12
+ export { HeaderCell };
@@ -0,0 +1,2 @@
1
+ import {jsx,jsxs,Fragment}from'react/jsx-runtime';import {Kebab,ArrowDown,ArrowUp}from'@accelint/icons';import {flexRender}from'@tanstack/react-table';import {useContext,useState}from'react';import {Button}from'../button/index.js';import {Icon}from'../icon/index.js';import {Menu}from'../menu/index.js';import {TableContext}from'./context.js';import {TableStyles,TableHeaderCellStyles}from'./styles.js';const{menuItem:d}=TableStyles();function x({header:n}){const{enableColumnReordering:m,enableSorting:s,moveColumnLeft:o,moveColumnRight:u,persistHeaderKebabMenu:c,setColumnSelection:a}=useContext(TableContext),[i,b]=useState(false);if(["numeral","kebab","selection"].includes(n.column.id)||!(s||m))return null;const t=n.column.getIsSorted();return jsxs(Menu.Trigger,{onOpenChange:g=>a(g?n.column.id:null),children:[jsx(Button,{variant:"icon","aria-label":"Menu",onHoverChange:b,className:TableHeaderCellStyles({notPersistHeaderKebab:!c}),children:jsxs(Icon,{children:[(!t||i)&&jsx(Kebab,{}),!i&&t==="desc"&&jsx(ArrowDown,{}),!i&&t==="asc"&&jsx(ArrowUp,{})]})}),jsxs(Menu,{children:[m&&jsxs(Fragment,{children:[jsx(Menu.Item,{classNames:{item:d()},onAction:()=>o(n.column.getIndex()),isDisabled:n.column.getIsFirstColumn("center"),children:"Move Column Left"}),jsx(Menu.Item,{classNames:{item:d()},onAction:()=>u(n.column.getIndex()),isDisabled:n.column.getIsLastColumn("center"),children:"Move Column Right"})]}),m&&s&&jsx(Menu.Separator,{}),s&&jsxs(Fragment,{children:[jsx(Menu.Item,{classNames:{item:d()},onAction:()=>n.column.toggleSorting(false),isDisabled:t==="asc",children:"Sort Ascending"}),jsx(Menu.Item,{onAction:()=>n.column.toggleSorting(true),isDisabled:t==="desc",children:"Sort Descending"}),jsx(Menu.Item,{onAction:n.column.clearSorting,isDisabled:!t,children:"Clear Sort"})]})]})]})}function E({ref:n,children:m,className:s,header:o,...u}){const{columnSelection:c,enableColumnReordering:a,enableSorting:i}=useContext(TableContext),b=a||i,t=o?.getContext(),g=o?.column.id==="numeral"||o?.column.id==="kebab";return jsx("th",{...u,ref:n,children:jsx("div",{className:TableHeaderCellStyles({narrow:g,className:s,isKebabEnabled:b}),"data-selected":o?.column.id===c||null,children:m||o&&jsxs(Fragment,{children:[o.column.id!=="kebab"&&t&&flexRender(o.column.columnDef.header,t),jsx(x,{header:o})]})})})}export{E as HeaderCell};//# sourceMappingURL=table-header-cell.js.map
2
+ //# sourceMappingURL=table-header-cell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/table/table-header-cell.tsx"],"names":["D","C","enableSorting","sort","jsxs","isOpen","r","l","Button","e","A","persistHeaderKebabMenu","Icon","hoveredArrow","jsx","Kebab","w","H","ArrowUp","Menu","S","enableColumnReordering","M","menuItem","header","moveColumnRight","p","children","rest","columnSelection","ref","narrow","I","showKebab","renderProps","flexRender","HeaderCellMenu"],"mappings":"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","file":"table-header-cell.js","sourcesContent":["// __private-exports\n/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { ArrowDown, ArrowUp, Kebab } from '@accelint/icons';\nimport { flexRender, type Header } from '@tanstack/react-table';\nimport { useContext, useState } from 'react';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Menu } from '../menu';\nimport { TableContext } from './context';\nimport { TableHeaderCellStyles, TableStyles } from './styles';\nimport type { TableHeaderCellProps } from './types';\n\nconst { menuItem } = TableStyles();\n\nfunction HeaderCellMenu<T>({ header }: { header: Header<T, unknown> }) {\n const {\n enableColumnReordering,\n enableSorting,\n moveColumnLeft,\n moveColumnRight,\n persistHeaderKebabMenu,\n setColumnSelection,\n } = useContext(TableContext);\n\n const [hoveredArrow, setHoveredArrow] = useState(false);\n\n if (\n ['numeral', 'kebab', 'selection'].includes(header.column.id) ||\n !(enableSorting || enableColumnReordering)\n ) {\n return null;\n }\n\n const sort = header.column.getIsSorted();\n\n return (\n <Menu.Trigger\n onOpenChange={(isOpen) =>\n setColumnSelection(isOpen ? header.column.id : null)\n }\n >\n <Button\n variant='icon'\n aria-label='Menu'\n onHoverChange={setHoveredArrow}\n className={TableHeaderCellStyles({\n notPersistHeaderKebab: !persistHeaderKebabMenu,\n })}\n >\n <Icon>\n {(!sort || hoveredArrow) && <Kebab />}\n {!hoveredArrow && sort === 'desc' && <ArrowDown />}\n {!hoveredArrow && sort === 'asc' && <ArrowUp />}\n </Icon>\n </Button>\n <Menu>\n {enableColumnReordering && (\n <>\n <Menu.Item\n classNames={{ item: menuItem() }}\n onAction={() => moveColumnLeft(header.column.getIndex())}\n isDisabled={header.column.getIsFirstColumn('center')}\n >\n Move Column Left\n </Menu.Item>\n <Menu.Item\n classNames={{ item: menuItem() }}\n onAction={() => moveColumnRight(header.column.getIndex())}\n isDisabled={header.column.getIsLastColumn('center')}\n >\n Move Column Right\n </Menu.Item>\n </>\n )}\n {enableColumnReordering && enableSorting && <Menu.Separator />}\n {enableSorting && (\n <>\n <Menu.Item\n classNames={{ item: menuItem() }}\n onAction={() => header.column.toggleSorting(false)}\n isDisabled={sort === 'asc'}\n >\n Sort Ascending\n </Menu.Item>\n <Menu.Item\n onAction={() => header.column.toggleSorting(true)}\n isDisabled={sort === 'desc'}\n >\n Sort Descending\n </Menu.Item>\n <Menu.Item onAction={header.column.clearSorting} isDisabled={!sort}>\n Clear Sort\n </Menu.Item>\n </>\n )}\n </Menu>\n </Menu.Trigger>\n );\n}\n\nexport function HeaderCell<T>({\n ref,\n children,\n className,\n header,\n ...rest\n}: TableHeaderCellProps<T>) {\n const { columnSelection, enableColumnReordering, enableSorting } =\n useContext(TableContext);\n const showKebab = enableColumnReordering || enableSorting;\n const renderProps = header?.getContext();\n const narrow =\n header?.column.id === 'numeral' || header?.column.id === 'kebab';\n\n return (\n <th {...rest} ref={ref}>\n <div\n className={TableHeaderCellStyles({\n narrow,\n className,\n isKebabEnabled: showKebab,\n })}\n data-selected={header?.column.id === columnSelection || null}\n >\n {children ||\n (header && (\n <>\n {header.column.id !== 'kebab' &&\n renderProps &&\n flexRender(header.column.columnDef.header, renderProps)}\n <HeaderCellMenu header={header} />\n </>\n ))}\n </div>\n </th>\n );\n}\n"]}
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { TableHeaderProps } from './types.js';
3
+ import '@react-types/shared';
4
+ import '@tanstack/react-table';
5
+ import 'react';
6
+ import 'tailwind-variants';
7
+ import './styles.js';
8
+ import 'tailwind-merge';
9
+
10
+ declare function TableHeader<T>({ ref, children, className, headerGroups, columnSelection, ...rest }: TableHeaderProps<T>): react_jsx_runtime.JSX.Element;
11
+
12
+ export { TableHeader };
@@ -0,0 +1,2 @@
1
+ import {jsx}from'react/jsx-runtime';import {TableHeaderStyles}from'./styles.js';import {HeaderCell}from'./table-header-cell.js';function y({ref:t,children:o,className:l,headerGroups:d,columnSelection:s,...m}){return jsx("thead",{...m,ref:t,className:TableHeaderStyles(l),children:o||d?.map(r=>jsx("tr",{children:r.headers.map(a=>jsx(HeaderCell,{header:a},a.id))},r.id))})}export{y as TableHeader};//# sourceMappingURL=table-header.js.map
2
+ //# sourceMappingURL=table-header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/table/table-header.tsx"],"names":["ref","jsx","e","p","headerGroup","i","header"],"mappings":"gIAiBO,SACLA,CACA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,QACA,CAAA,CAAA,CAAA,SACA,CAAA,CAAA,CAAA,YACA,CAAA,CAAA,CAAA,eAEF,CAAwB,CACtB,CAAA,GAAA,CAAA,CAAA,CACEC,QAACC,GAAA,CAAA,OAAgB,CAAA,CAAA,GAAU,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,SACxB,CAAAC,iBAAA,CAAA,CAAA,CAAA,CAAA,QACe,CAAA,CAAA,EAAKC,CAAAA,EACjBH,GAAC,CAAA,CAAA,EACEC,kBAAY,CAAA,CAAA,CAAQ,OACnBD,CAAAA,GAAC,CAA2B,CAAA,EAAAC,GAAA,CAAAG,UAAA,CAAQC,CAAAA,MAAQ,CAC7C,CAAA,CAAA,CAHMF,CAAAA,CAAY,EAIrB,CACD,EACL,CAEJ,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA","file":"table-header.js","sourcesContent":["// __private-exports\n/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { TableHeaderStyles } from './styles';\nimport { HeaderCell } from './table-header-cell';\nimport type { TableHeaderProps } from './types';\n\nexport function TableHeader<T>({\n ref,\n children,\n className,\n headerGroups,\n columnSelection,\n ...rest\n}: TableHeaderProps<T>) {\n return (\n <thead {...rest} ref={ref} className={TableHeaderStyles(className)}>\n {children ||\n headerGroups?.map((headerGroup) => (\n <tr key={headerGroup.id}>\n {headerGroup.headers.map((header) => (\n <HeaderCell key={header.id} header={header} />\n ))}\n </tr>\n ))}\n </thead>\n );\n}\n"]}
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { TableRowProps } from './types.js';
3
+ import '@react-types/shared';
4
+ import '@tanstack/react-table';
5
+ import 'react';
6
+ import 'tailwind-variants';
7
+ import './styles.js';
8
+ import 'tailwind-merge';
9
+
10
+ declare function TableRow<T>({ ref, children, className, row, ...rest }: TableRowProps<T>): react_jsx_runtime.JSX.Element;
11
+
12
+ export { TableRow };
@@ -0,0 +1,2 @@
1
+ import {jsx}from'react/jsx-runtime';import {TableRowStyles}from'./styles.js';import {TableCell}from'./table-cell.js';function i({ref:o,children:a,className:s,row:e,...p}){const r=e?.getAllCells();return jsx("tr",{...p,ref:o,className:TableRowStyles({className:s}),"data-pinned":e?.getIsPinned()||null,"data-selected":e?.getIsSelected()||null,children:a||r?.map(l=>jsx(TableCell,{cell:l},l.id))})}export{i as TableRow};//# sourceMappingURL=table-row.js.map
2
+ //# sourceMappingURL=table-row.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/table/table-row.tsx"],"names":["ref","row","cells","jsx","t","cell"],"mappings":"qHAiBO,SACLA,CACA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,QACA,CAAA,CAAA,CAAA,SACAC,CACA,CAAA,CAAA,GACF,CAAqB,CACnB,CAAA,GAAA,CAAA,CAAMC,CAAAA,CAAQD,MAAK,CAAA,CAAA,CAAA,EAAA,WAEnB,EACEE,QACGC,GAAA,CAAA,IACD,CAAA,CAAA,GACA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,mCACA,CAAA,CAAA,CAAA,CAAA,CAAA,aAAkB,CAAA,CAAA,EAAA,WAAiB,wBACf,CAAA,CAAA,EAAA,aAAmB,EAEtC,EAAA,IAAA,CAAA,QACQ,CAAA,CAAA,KAAcD,GAAC,CAAwB,CAAA,EAAAC,GAAA,CAAMC,SAAAA,CAAAA,CAAfA,IAAqB,CAAE,EAChE,CAEJ,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA","file":"table-row.js","sourcesContent":["// __private-exports\n/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { TableRowStyles } from './styles';\nimport { TableCell } from './table-cell';\nimport type { TableRowProps } from './types';\n\nexport function TableRow<T>({\n ref,\n children,\n className,\n row,\n ...rest\n}: TableRowProps<T>) {\n const cells = row?.getAllCells();\n\n return (\n <tr\n {...rest}\n ref={ref}\n className={TableRowStyles({ className })}\n data-pinned={row?.getIsPinned() || null}\n data-selected={row?.getIsSelected() || null}\n >\n {children ||\n cells?.map((cell) => <TableCell key={cell.id} cell={cell} />)}\n </tr>\n );\n}\n"]}
@@ -0,0 +1,185 @@
1
+ import { Key } from '@react-types/shared';
2
+ import { ColumnDef, Row, Cell, HeaderGroup, Header } from '@tanstack/react-table';
3
+ import { Dispatch, SetStateAction, ComponentPropsWithRef, PropsWithChildren } from 'react';
4
+ import { VariantProps } from 'tailwind-variants';
5
+ import { TableCellStyles, TableHeaderCellStyles } from './styles.js';
6
+ import 'tailwind-merge';
7
+
8
+ type BaseTableProps = Omit<ComponentPropsWithRef<'table'>, 'children'>;
9
+ type ExtendedTableProps<T extends {
10
+ id: Key;
11
+ }> = {
12
+ /**
13
+ * An array of column definitions, one for each key in `T`.
14
+ */
15
+ columns: {
16
+ [K in keyof Required<T>]: ColumnDef<T, T[K]>;
17
+ }[keyof T][];
18
+ /**
19
+ * An array of data objects of type `T`.
20
+ * Each object must have a unique `id` property.
21
+ */
22
+ data: T[];
23
+ /**
24
+ * Whether to display a checkbox column.
25
+ */
26
+ showCheckbox?: boolean;
27
+ /**
28
+ * Position of the kebab menu, either 'left' or 'right'.
29
+ */
30
+ kebabPosition?: 'left' | 'right';
31
+ /**
32
+ * Whether to persist the header kebab menu.
33
+ * If true, the header kebab menu is always visible.
34
+ * If false, it is only visible on hover or when the row is hovered.
35
+ */
36
+ persistHeaderKebabMenu?: boolean;
37
+ /**
38
+ * Whether to persist the kebab menu.
39
+ * If true, the kebab menu is always visible.
40
+ * If false, it is only visible on hover or when the row is hovered.
41
+ */
42
+ persistRowKebabMenu?: boolean;
43
+ /**
44
+ * Whether to persist numeral columns.
45
+ * If true, numeral columns are always visible.
46
+ * If false, they are only visible on hover or when the row is hovered.
47
+ */
48
+ persistNumerals?: boolean;
49
+ /**
50
+ * Whether to enable sorting.
51
+ * If true, the table will support sorting.
52
+ * If false, the table will not support sorting.
53
+ */
54
+ enableSorting?: boolean;
55
+ /**
56
+ * Whether to enable column ordering.
57
+ * If true, the table will support column ordering.
58
+ * If false, the table will not support column ordering.
59
+ */
60
+ enableColumnOrdering?: boolean;
61
+ /**
62
+ * Whether to enable actions for rows.
63
+ * If true, the table will support ability to take action on row.
64
+ * If false, the table will not support ability to take action on row.
65
+ */
66
+ enableRowActions?: boolean;
67
+ };
68
+ /**
69
+ * Props for the Table component.
70
+ *
71
+ * @template T - The type of data objects, which must include an `id` property of type `string` or `number`.
72
+ *
73
+ * This type extends `BaseTableProps` and supports two mutually exclusive prop sets:
74
+ *
75
+ * 1. **Data Table Mode**:
76
+ * - `columns`: An array of column definitions, one for each key in `T`.
77
+ * - `data`: An array of data objects of type `T`.
78
+ * - `showCheckbox` (optional): Whether to display a checkbox column.
79
+ * - `kebabPosition` (optional): Position of the kebab menu, either `'left'` or `'right'`.
80
+ * - `persistRowActionMenu` (optional): Whether to persist the kebab menu.
81
+ * - `persistNumerals` (optional): Whether to persist numeral columns.
82
+ * - `children`: Must not be provided in this mode.
83
+ *
84
+ * 2. **Custom Content Mode**:
85
+ * - All table-related props (`data`, `columns`, etc.) must not be provided.
86
+ * - Allows for custom children content.
87
+ *
88
+ * @see {@link BaseTableProps}
89
+ */
90
+ type TableProps<T extends {
91
+ id: Key;
92
+ }> = BaseTableProps & ((ExtendedTableProps<T> & {
93
+ children?: never;
94
+ }) | PropsWithChildren<{
95
+ [K in keyof ExtendedTableProps<T>]?: never;
96
+ }>);
97
+ /**
98
+ * Props for the `<tbody>` section of a table component.
99
+ *
100
+ * Extends standard HTML attributes and ref attributes for the `<tbody>` element,
101
+ * allowing you to pass any valid HTML properties or refs to the table body.
102
+ *
103
+ * @see {@link HTMLAttributes}
104
+ * @see {@link RefAttributes}
105
+ */
106
+ type TableBodyProps<T> = ComponentPropsWithRef<'tbody'> & {
107
+ rows?: Row<T>[];
108
+ };
109
+ /**
110
+ * Props for a table row (`<tr>`) component.
111
+ *
112
+ * Extends standard HTML attributes and ref attributes for an HTMLTableRowElement,
113
+ * allowing you to pass any valid `<tr>` properties and a ref.
114
+ *
115
+ * @see {@link HTMLAttributes}
116
+ * @see {@link RefAttributes}
117
+ */
118
+ type TableRowProps<T> = ComponentPropsWithRef<'tr'> & {
119
+ row?: Row<T>;
120
+ };
121
+ /**
122
+ * Props for a table cell component.
123
+ *
124
+ * Extends the standard HTML `<td>` element attributes and includes variant styling props.
125
+ *
126
+ * @remarks
127
+ * - Inherits all properties from `TdHTMLAttributes<HTMLTableCellElement>`.
128
+ * - Includes variant properties from `cellStyles`.
129
+ * - Optionally accepts a `ref` to the underlying `<td>` element.
130
+ *
131
+ * @property ref - Optional React ref for the table cell element.
132
+ * @property className - Optional class name for custom styling.
133
+ * @property narrow - Optional boolean to apply narrow styling.
134
+ * @property numeral - Optional boolean to apply numeral styling.
135
+ * @property persistent - Optional boolean to control visibility behavior.
136
+ * If true, the cell is always visible.
137
+ * If false, the cell content is only visible on hover or when the row is hovered.
138
+ */
139
+ type TableCellProps<T> = ComponentPropsWithRef<'td'> & VariantProps<typeof TableCellStyles> & {
140
+ cell?: Cell<T, unknown>;
141
+ };
142
+ /**
143
+ * Props for a table header cell component.
144
+ *
145
+ * This type combines standard HTML `<th>` element attributes, style variant props,
146
+ * and ref attributes for a table header cell.
147
+ *
148
+ * @see {@link VariantProps}
149
+ * @see {@link RefAttributes}
150
+ */
151
+ type TableHeaderCellProps<T> = ComponentPropsWithRef<'th'> & VariantProps<typeof TableHeaderCellStyles> & {
152
+ header?: Header<T, unknown>;
153
+ };
154
+ /**
155
+ * Props for the table header (`<thead>`) component.
156
+ *
157
+ * Extends standard HTML attributes and ref attributes for an HTMLTableSectionElement.
158
+ *
159
+ * @see {@link HTMLAttributes}
160
+ * @see {@link RefAttributes}
161
+ */
162
+ type TableHeaderProps<T> = ComponentPropsWithRef<'thead'> & {
163
+ /**
164
+ * Array of header groups of the table
165
+ */
166
+ headerGroups?: HeaderGroup<T>[];
167
+ /**
168
+ * The currently selected column ID
169
+ */
170
+ columnSelection?: string | null;
171
+ };
172
+ type TableContextValue = {
173
+ columnSelection: string | null;
174
+ enableColumnReordering: boolean;
175
+ enableSorting: boolean;
176
+ enableRowActions: boolean;
177
+ persistHeaderKebabMenu: boolean;
178
+ persistRowKebabMenu: boolean;
179
+ persistNumerals: boolean;
180
+ moveColumnLeft: (index: number) => void;
181
+ moveColumnRight: (index: number) => void;
182
+ setColumnSelection: Dispatch<SetStateAction<string | null>>;
183
+ };
184
+
185
+ export type { TableBodyProps, TableCellProps, TableContextValue, TableHeaderCellProps, TableHeaderProps, TableProps, TableRowProps };
@@ -0,0 +1,2 @@
1
+ //# sourceMappingURL=types.js.map
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"types.js"}
@@ -1,2 +1,2 @@
1
- import {tv}from'./../../lib/utils.js';const e=tv({slots:{tabs:["group/tabs flex w-content","orientation-horizontal:flex-col","orientation-vertical:flex-row"],list:["flex","orientation-horizontal:flex-row","orientation-vertical:flex-col"],tab:["fg-primary-muted relative cursor-pointer rounded-small p-s","group-orientation-horizontal/tabs:rounded-b-none","group-orientation-horizontal/tabs:after:absolute group-orientation-horizontal/tabs:after:bottom-0 group-orientation-horizontal/tabs:after:left-0 group-orientation-horizontal/tabs:after:block group-orientation-horizontal/tabs:after:h-[1px] group-orientation-horizontal/tabs:after:w-full group-orientation-horizontal/tabs:after:bg-[color:var(--outline-static)]","enabled:hover:fg-primary-bold","enabled:hover:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]","enabled:focus:fg-primary-bold","enabled:focus:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]","enabled:selected:fg-accent-primary-bold selected:bg-accent-primary-muted","enabled:selected:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]","enabled:selected:hover:fg-accent-primary-bold","enabled:selected:hover:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]","enabled:selected:focus:fg-accent-primary-bold","enabled:selected:focus:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]","disabled:fg-disabled disabled:cursor-not-allowed disabled:bg-interactive-disabled","disabled:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-interactive-disabled)]"],panel:"fg-primary-bold p-s"}});export{e as TabStyles};//# sourceMappingURL=styles.js.map
1
+ import {tv}from'./../../lib/utils.js';const r=tv({slots:{tabs:["group/tabs flex w-content","orientation-horizontal:flex-col","orientation-vertical:flex-row"],list:["flex","orientation-horizontal:flex-row","orientation-vertical:flex-col"],tab:["fg-primary-muted relative cursor-pointer rounded-small p-s","group-orientation-horizontal/tabs:rounded-b-none","group-orientation-horizontal/tabs:after:absolute group-orientation-horizontal/tabs:after:bottom-0 group-orientation-horizontal/tabs:after:left-0 group-orientation-horizontal/tabs:after:block group-orientation-horizontal/tabs:after:h-[1px] group-orientation-horizontal/tabs:after:w-full group-orientation-horizontal/tabs:after:bg-[color:var(--outline-static)]","enabled:hover:fg-primary-bold","enabled:hover:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-interactive-hover)]","enabled:focus:fg-primary-bold","enabled:focus:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]","enabled:pressed:fg-pressed","enabled:pressed:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-interactive-pressed)]","enabled:selected:fg-accent-primary-bold enabled:selected:bg-accent-primary-muted","enabled:selected:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]","enabled:selected:hover:fg-accent-primary-hover enabled:selected:hover:bg-accent-primary-hover","enabled:selected:hover:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-hover)]","enabled:selected:focus-visible:fg-accent-primary-hover enabled:selected:focus-visible:bg-accent-primary-hover","enabled:selected:focus-visible:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-hover)]","enabled:selected:pressed:fg-accent-primary-pressed enabled:selected:pressed:bg-interactive-muted-pressed","enabled:selected:pressed:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-pressed)]","disabled:fg-disabled disabled:cursor-not-allowed","disabled:selected:bg-interactive-disabled","disabled:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-interactive-disabled)]"],panel:"fg-primary-bold p-s"}});export{r as TabStyles};//# sourceMappingURL=styles.js.map
2
2
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/tabs/styles.ts"],"names":["o"],"mappings":"sCAeE,MAAA,CAAO,CACLA,SACE,CAAA,CAAA,IAAA,CAAA,CAAA,6DAEA,CAAA,+BAGA,CAAA,CAAA,8CAEA,CAAA,kGAIA,CAAA,kDACA,CAAA,wYAGA,CAAA,qGAEA,CAAA,qIAGA,CAAA,0EACA,CAAA,wJAGA,CAAA,8GAEA,CAAA,8JAGA,CAAA,mFACA,CAAA,iGAEK,CAAA,CAAA,KAAA,CAAA,qBAEV,CAAA,CAAA","file":"styles.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { tv } from '@/lib/utils';\n\nexport const TabStyles = tv({\n slots: {\n tabs: [\n 'group/tabs flex w-content',\n 'orientation-horizontal:flex-col',\n 'orientation-vertical:flex-row',\n ],\n list: [\n 'flex',\n 'orientation-horizontal:flex-row',\n 'orientation-vertical:flex-col',\n ],\n tab: [\n 'fg-primary-muted relative cursor-pointer rounded-small p-s',\n 'group-orientation-horizontal/tabs:rounded-b-none',\n 'group-orientation-horizontal/tabs:after:absolute group-orientation-horizontal/tabs:after:bottom-0 group-orientation-horizontal/tabs:after:left-0 group-orientation-horizontal/tabs:after:block group-orientation-horizontal/tabs:after:h-[1px] group-orientation-horizontal/tabs:after:w-full group-orientation-horizontal/tabs:after:bg-[color:var(--outline-static)]',\n\n 'enabled:hover:fg-primary-bold',\n 'enabled:hover:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]',\n\n 'enabled:focus:fg-primary-bold',\n 'enabled:focus:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]',\n\n 'enabled:selected:fg-accent-primary-bold selected:bg-accent-primary-muted',\n 'enabled:selected:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]',\n\n 'enabled:selected:hover:fg-accent-primary-bold',\n 'enabled:selected:hover:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]',\n\n 'enabled:selected:focus:fg-accent-primary-bold',\n 'enabled:selected:focus:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]',\n\n 'disabled:fg-disabled disabled:cursor-not-allowed disabled:bg-interactive-disabled',\n 'disabled:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-interactive-disabled)]',\n ],\n panel: 'fg-primary-bold p-s',\n },\n});\n"]}
1
+ {"version":3,"sources":["../../../src/components/tabs/styles.ts"],"names":["e"],"mappings":"6CAeS,CACLA,EAAA,CAAA,CAAA,KACE,CAAA,CAAA,IAAA,CAAA,CAAA,2BACA,CAAA,iEAIA,CAAA,CAAA,IACA,CAAA,CAAA,MAAA,CAAA,iCACA,CAAA,kGAIA,CAAA,kDACA,CAAA,wYAGA,CAAA,mGAEA,CAAA,qIAGA,CAAA,4BACA,CAAA,uGAEA,CAAA,kFACA,CAAA,wGAEA,CAAA,+FACA,CAAA,+NAGA,CAAA,uHAEA,CAAA,8NAGA,CAAA,kDACA,CAAA,6IAGK,CAAA,CAAA,KAAA,CAAA,qBAEV,CAAA,CAAA","file":"styles.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { tv } from '@/lib/utils';\n\nexport const TabStyles = tv({\n slots: {\n tabs: [\n 'group/tabs flex w-content',\n 'orientation-horizontal:flex-col',\n 'orientation-vertical:flex-row',\n ],\n list: [\n 'flex',\n 'orientation-horizontal:flex-row',\n 'orientation-vertical:flex-col',\n ],\n tab: [\n 'fg-primary-muted relative cursor-pointer rounded-small p-s',\n 'group-orientation-horizontal/tabs:rounded-b-none',\n 'group-orientation-horizontal/tabs:after:absolute group-orientation-horizontal/tabs:after:bottom-0 group-orientation-horizontal/tabs:after:left-0 group-orientation-horizontal/tabs:after:block group-orientation-horizontal/tabs:after:h-[1px] group-orientation-horizontal/tabs:after:w-full group-orientation-horizontal/tabs:after:bg-[color:var(--outline-static)]',\n\n 'enabled:hover:fg-primary-bold',\n 'enabled:hover:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-interactive-hover)]',\n\n 'enabled:focus:fg-primary-bold',\n 'enabled:focus:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]',\n\n 'enabled:pressed:fg-pressed',\n 'enabled:pressed:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-interactive-pressed)]',\n\n 'enabled:selected:fg-accent-primary-bold enabled:selected:bg-accent-primary-muted',\n 'enabled:selected:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-bold)]',\n\n 'enabled:selected:hover:fg-accent-primary-hover enabled:selected:hover:bg-accent-primary-hover',\n 'enabled:selected:hover:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-hover)]',\n\n 'enabled:selected:focus-visible:fg-accent-primary-hover enabled:selected:focus-visible:bg-accent-primary-hover',\n 'enabled:selected:focus-visible:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-hover)]',\n\n 'enabled:selected:pressed:fg-accent-primary-pressed enabled:selected:pressed:bg-interactive-muted-pressed',\n 'enabled:selected:pressed:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-accent-primary-pressed)]',\n\n 'disabled:fg-disabled disabled:cursor-not-allowed',\n 'disabled:selected:bg-interactive-disabled',\n 'disabled:group-orientation-horizontal/tabs:after:bg-[color:var(--outline-interactive-disabled)]',\n ],\n panel: 'fg-primary-bold p-s',\n },\n});\n"]}
@@ -0,0 +1,19 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { TimeValue } from 'react-aria-components';
3
+ import { TimeFieldProps } from './types.js';
4
+ import 'tailwind-variants';
5
+ import './styles.js';
6
+ import 'tailwind-merge';
7
+
8
+ /**
9
+ * TimeField - Form input for time values
10
+ *
11
+ * A time input field with configurable granularity and size, built on React
12
+ * Aria components and suitable for forms requiring time entry.
13
+ *
14
+ * @example
15
+ * <TimeField label="Time" granularity="second" />
16
+ */
17
+ declare function TimeField<T extends TimeValue>({ classNames, description: descriptionProp, errorMessage: errorMessageProp, granularity, hourCycle, inputProps, label: labelProp, shouldForceLeadingZeros, size, isDisabled, isInvalid: isInvalidProp, isRequired, ...rest }: TimeFieldProps<T>): react_jsx_runtime.JSX.Element;
18
+
19
+ export { TimeField };
@@ -0,0 +1,4 @@
1
+ 'use client';
2
+
3
+ import {jsx,jsxs,Fragment}from'react/jsx-runtime';import'client-only';import {Time}from'@accelint/icons';import {TimeField,composeRenderProps,DateInput,DateSegment,Text,FieldError}from'react-aria-components';import {Icon}from'../icon/index.js';import {Label}from'../label/index.js';import {TimeFieldStyles}from'./styles.js';const{field:R,label:c,control:V,input:Z,description:k,error:q,segment:C}=TimeFieldStyles();function P({classNames:i,description:s,errorMessage:T,granularity:f="second",hourCycle:F=24,inputProps:b,label:m,shouldForceLeadingZeros:g=true,size:t="medium",isDisabled:y,isInvalid:n,isRequired:d,...A}){const l=T||null,p=t==="small";return jsx(TimeField,{...A,className:composeRenderProps(i?.field,o=>R({className:o})),granularity:f,hourCycle:F,shouldForceLeadingZeros:g,isDisabled:y,isInvalid:n||(l?true:void 0),isRequired:d,"aria-label":m,"data-size":t,children:({isDisabled:o})=>jsxs(Fragment,{children:[!p&&c&&jsx(Label,{className:c({className:i?.label}),isDisabled:o,isRequired:d,children:m}),jsxs("div",{className:V({className:i?.control}),children:[t==="medium"&&jsx(Icon,{children:jsx(Time,{})}),jsx(DateInput,{...b,className:composeRenderProps(i?.input,r=>Z({className:r})),children:r=>jsx(DateSegment,{segment:r,className:composeRenderProps(i?.segment,D=>C({className:D}))})}),jsx("span",{children:"Z"})]}),s&&!(p||n)&&!l&&jsx(Text,{className:k({className:i?.description}),slot:"description",children:s}),jsx(FieldError,{className:composeRenderProps(i?.error,r=>q({className:r})),children:l})]})})}export{P as TimeField};//# sourceMappingURL=index.js.map
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/time-field/index.tsx"],"names":["control","input","description","error","TimeField","M","classNames","labelProp","shouldForceLeadingZeros","isDisabled","isInvalidProp","isRequired","isSmall","AriaTimeField","rest","L","className","field","a","hourCycle","label","Label","w","e","E","u","size","jsx","AriaDateInput","composeRenderProps","v","segmentProp","AriaText","x","descriptionProp","errorMessage"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport 'client-only';\nimport { Time } from '@accelint/icons';\nimport {\n DateInput as AriaDateInput,\n Text as AriaText,\n TimeField as AriaTimeField,\n composeRenderProps,\n DateSegment,\n FieldError,\n type TimeValue,\n} from 'react-aria-components';\nimport { Icon } from '../icon';\nimport { Label } from '../label';\nimport { TimeFieldStyles } from './styles';\nimport type { TimeFieldProps } from './types';\n\nconst { field, label, control, input, description, error, segment } =\n TimeFieldStyles();\n\n/**\n * TimeField - Form input for time values\n *\n * A time input field with configurable granularity and size, built on React\n * Aria components and suitable for forms requiring time entry.\n *\n * @example\n * <TimeField label=\"Time\" granularity=\"second\" />\n */\nexport function TimeField<T extends TimeValue>({\n classNames,\n description: descriptionProp,\n errorMessage: errorMessageProp,\n granularity = 'second',\n hourCycle = 24,\n inputProps,\n label: labelProp,\n shouldForceLeadingZeros = true,\n size = 'medium',\n isDisabled,\n isInvalid: isInvalidProp,\n isRequired,\n ...rest\n}: TimeFieldProps<T>) {\n const errorMessage = errorMessageProp || null; // Protect against empty string\n const isSmall = size === 'small';\n\n return (\n <AriaTimeField<T>\n {...rest}\n className={composeRenderProps(classNames?.field, (className) =>\n field({ className }),\n )}\n granularity={granularity}\n hourCycle={hourCycle}\n shouldForceLeadingZeros={shouldForceLeadingZeros}\n isDisabled={isDisabled}\n isInvalid={isInvalidProp || (errorMessage ? true : undefined)} // Leave uncontrolled if possible to fallback to validation state\n isRequired={isRequired}\n aria-label={labelProp}\n data-size={size}\n >\n {(\n { isDisabled }, // Rely on internal state, not props, since state could differ from props\n ) => (\n <>\n {!isSmall && label && (\n <Label\n className={label({ className: classNames?.label })}\n isDisabled={isDisabled}\n isRequired={isRequired}\n >\n {labelProp}\n </Label>\n )}\n <div className={control({ className: classNames?.control })}>\n {size === 'medium' && (\n <Icon>\n <Time />\n </Icon>\n )}\n <AriaDateInput\n {...inputProps}\n className={composeRenderProps(classNames?.input, (className) =>\n input({\n className,\n }),\n )}\n >\n {(segmentProp) => (\n <DateSegment\n segment={segmentProp}\n className={composeRenderProps(\n classNames?.segment,\n (className) => segment({ className }),\n )}\n />\n )}\n </AriaDateInput>\n <span>Z</span>\n </div>\n {descriptionProp && !(isSmall || isInvalidProp) && !errorMessage && (\n <AriaText\n className={description({\n className: classNames?.description,\n })}\n slot='description'\n >\n {descriptionProp}\n </AriaText>\n )}\n <FieldError\n className={composeRenderProps(classNames?.error, (className) =>\n error({ className }),\n )}\n >\n {errorMessage}\n </FieldError>\n </>\n )}\n </AriaTimeField>\n );\n}\n"]}
@@ -0,0 +1,69 @@
1
+ import * as tailwind_variants from 'tailwind-variants';
2
+ import * as tailwind_merge from 'tailwind-merge';
3
+
4
+ declare const TimeFieldSylesDefaults: {
5
+ readonly isDisabled: false;
6
+ };
7
+ declare const TimeFieldStyles: tailwind_variants.TVReturnType<{
8
+ [key: string]: {
9
+ [key: string]: tailwind_merge.ClassNameValue | {
10
+ description?: tailwind_merge.ClassNameValue;
11
+ input?: tailwind_merge.ClassNameValue;
12
+ label?: tailwind_merge.ClassNameValue;
13
+ control?: tailwind_merge.ClassNameValue;
14
+ field?: tailwind_merge.ClassNameValue;
15
+ error?: tailwind_merge.ClassNameValue;
16
+ segment?: tailwind_merge.ClassNameValue;
17
+ };
18
+ };
19
+ } | {
20
+ [x: string]: {
21
+ [x: string]: tailwind_merge.ClassNameValue | {
22
+ description?: tailwind_merge.ClassNameValue;
23
+ input?: tailwind_merge.ClassNameValue;
24
+ label?: tailwind_merge.ClassNameValue;
25
+ control?: tailwind_merge.ClassNameValue;
26
+ field?: tailwind_merge.ClassNameValue;
27
+ error?: tailwind_merge.ClassNameValue;
28
+ segment?: tailwind_merge.ClassNameValue;
29
+ };
30
+ };
31
+ } | {}, {
32
+ field: string;
33
+ label: string;
34
+ control: string[];
35
+ input: string;
36
+ segment: string[];
37
+ description: string[];
38
+ error: string;
39
+ }, undefined, {
40
+ [key: string]: {
41
+ [key: string]: tailwind_merge.ClassNameValue | {
42
+ description?: tailwind_merge.ClassNameValue;
43
+ input?: tailwind_merge.ClassNameValue;
44
+ label?: tailwind_merge.ClassNameValue;
45
+ control?: tailwind_merge.ClassNameValue;
46
+ field?: tailwind_merge.ClassNameValue;
47
+ error?: tailwind_merge.ClassNameValue;
48
+ segment?: tailwind_merge.ClassNameValue;
49
+ };
50
+ };
51
+ } | {}, {
52
+ field: string;
53
+ label: string;
54
+ control: string[];
55
+ input: string;
56
+ segment: string[];
57
+ description: string[];
58
+ error: string;
59
+ }, tailwind_variants.TVReturnType<unknown, {
60
+ field: string;
61
+ label: string;
62
+ control: string[];
63
+ input: string;
64
+ segment: string[];
65
+ description: string[];
66
+ error: string;
67
+ }, undefined, unknown, unknown>>;
68
+
69
+ export { TimeFieldStyles, TimeFieldSylesDefaults };
@@ -0,0 +1,2 @@
1
+ import {tv}from'./../../lib/utils.js';const i={isDisabled:false},t=tv({slots:{field:"group/time-field flex flex-col gap-xs",label:"",control:["flex w-full items-center gap-xs rounded-medium px-s py-xs font-display outline outline-interactive","group-size-medium/time-field:text-body-s","group-size-small/time-field:text-body-xs","fg-primary-bold","hover:outline-interactive-hover","focus-visible-within:outline-accent-primary-bold","group-invalid/time-field:outline-serious-bold","group-disabled/time-field:placeholder:fg-disabled group-disabled/time-field:fg-disabled group-disabled/time-field:outline-interactive-disabled"],input:"flex",segment:["text-right","placeholder-shown:fg-primary-muted","focus-visible:fg-a11y-on-accent focus-visible:bg-accent-primary-bold focus-visible:outline-none"],description:["fg-primary-muted text-body-xs","group-disabled/time-field:fg-disabled"],error:"fg-serious-bold text-body-xs"},defaultVariants:i});export{t as TimeFieldStyles,i as TimeFieldSylesDefaults};//# sourceMappingURL=styles.js.map
2
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/time-field/styles.ts"],"names":["e"],"mappings":"sCAcE,MAAA,CAAA,CAAA,CAAA,UAIA,CAAA,KAAA,CAAA,CAAA,CAAO,CACLA,EAAA,CAAA,CAAA,KAAO,CAAA,CAAA,KAAA,CAAA,uCAEP,CAAA,KAAA,CAAA,EACE,CAAA,OAAA,CAAA,CAAA,oGACA,CAAA,0CACA,CAAA,4DAEA,CAAA,iCACA,CAAA,kGAEA,CAAA,gJAEK,CAAA,CAAA,KACP,CAAA,MACE,CAAA,OAAA,CAAA,CAAA,YACA,CAAA,oCACA,CAAA,iGAEF,CAAA,CAAA,4CAEE,CAAA,uCAEK,CAAA,CAAA,KAAA,CAAA,8BAET,CAAA,CAAA,eACD,CAAA,CAAA,CAAA","file":"styles.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nimport { tv } from '@/lib/utils';\n\nexport const TimeFieldSylesDefaults = {\n isDisabled: false,\n} as const;\n\nexport const TimeFieldStyles = tv({\n slots: {\n field: 'group/time-field flex flex-col gap-xs',\n label: '',\n control: [\n 'flex w-full items-center gap-xs rounded-medium px-s py-xs font-display outline outline-interactive',\n 'group-size-medium/time-field:text-body-s',\n 'group-size-small/time-field:text-body-xs',\n 'fg-primary-bold',\n 'hover:outline-interactive-hover',\n 'focus-visible-within:outline-accent-primary-bold',\n 'group-invalid/time-field:outline-serious-bold',\n 'group-disabled/time-field:placeholder:fg-disabled group-disabled/time-field:fg-disabled group-disabled/time-field:outline-interactive-disabled',\n ],\n input: 'flex',\n segment: [\n 'text-right',\n 'placeholder-shown:fg-primary-muted',\n 'focus-visible:fg-a11y-on-accent focus-visible:bg-accent-primary-bold focus-visible:outline-none',\n ],\n description: [\n 'fg-primary-muted text-body-xs',\n 'group-disabled/time-field:fg-disabled',\n ],\n error: 'fg-serious-bold text-body-xs',\n },\n defaultVariants: TimeFieldSylesDefaults,\n});\n"]}
@@ -0,0 +1,23 @@
1
+ import { TimeValue, TimeFieldProps as TimeFieldProps$1, LabelProps, DateInputProps, DateSegmentProps, FieldErrorProps } from 'react-aria-components';
2
+ import { VariantProps } from 'tailwind-variants';
3
+ import { TimeFieldStyles } from './styles.js';
4
+ import 'tailwind-merge';
5
+
6
+ type TimeFieldProps<T extends TimeValue> = Omit<TimeFieldProps$1<T>, 'children' | 'className' | 'placeholder'> & VariantProps<typeof TimeFieldStyles> & {
7
+ classNames?: {
8
+ field?: TimeFieldProps$1<T>['className'];
9
+ label?: LabelProps['className'];
10
+ control?: string;
11
+ input?: DateInputProps['className'];
12
+ segment?: DateSegmentProps['className'];
13
+ description?: string;
14
+ error?: FieldErrorProps['className'];
15
+ };
16
+ label?: string;
17
+ description?: string;
18
+ errorMessage?: string;
19
+ size?: 'small' | 'medium';
20
+ inputProps?: Omit<DateInputProps, 'children' | 'className'>;
21
+ };
22
+
23
+ export type { TimeFieldProps };
@@ -0,0 +1,2 @@
1
+ //# sourceMappingURL=types.js.map
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"types.js"}
@@ -1,9 +1,9 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as react from 'react';
3
3
  import { ContextValue } from 'react-aria-components';
4
- import { TooltipProps, TooltipTriggerProps, TooltipBodyProps } from './types.js';
4
+ import { TooltipProps, TooltipTriggerProps } from './types.js';
5
5
 
6
- declare const TooltipContext: react.Context<ContextValue<TooltipProps, HTMLDivElement>>;
6
+ declare const TooltipContext: react.Context<ContextValue<TooltipTriggerProps, HTMLDivElement>>;
7
7
  /**
8
8
  * Tooltip - A contextual popup component for providing additional information
9
9
  *
@@ -13,52 +13,41 @@ declare const TooltipContext: react.Context<ContextValue<TooltipProps, HTMLDivEl
13
13
  *
14
14
  * @example
15
15
  * // Basic tooltip
16
- * <Tooltip>
17
- * <Tooltip.Trigger>
18
- * <Button>Hover me</Button>
19
- * </Tooltip.Trigger>
20
- * <Tooltip.Body>
16
+ * <Tooltip.Trigger>
17
+ * <Button>Hover me</Button>
18
+ * <Tooltip>
21
19
  * This is helpful information
22
- * </Tooltip.Body>
23
- * </Tooltip>
20
+ * </Tooltip>
21
+ * </Tooltip.Trigger>
24
22
  *
25
23
  * @example
26
24
  * // Tooltip with custom positioning
27
- * <Tooltip>
28
- * <Tooltip.Trigger>
29
- * <Button>Hover for info</Button>
30
- * </Tooltip.Trigger>
31
- * <Tooltip.Body placement="top" offset={10}>
25
+ * <Tooltip.Trigger>
26
+ * <Button>Hover for info</Button>
27
+ * <Tooltip placement="top" offset={10}>
32
28
  * Positioned above with custom offset
33
- * </Tooltip.Body>
34
- * </Tooltip>
29
+ * </Tooltip>
30
+ * </Tooltip.Trigger>
35
31
  *
36
32
  * @example
37
33
  * // Icon with tooltip
38
- * <Tooltip>
39
- * <Tooltip.Trigger>
40
- * <Button variant="icon">
41
- * <Icon><Info /></Icon>
42
- * </Button>
43
- * </Tooltip.Trigger>
44
- * <Tooltip.Body>
34
+ * <Tooltip.Trigger>
35
+ * <Button variant="icon">
36
+ * <Icon><Info /></Icon>
37
+ * </Button>
38
+ * <Tooltip>
45
39
  * Additional context for this action
46
- * </Tooltip.Body>
47
- * </Tooltip>
40
+ * </Tooltip>
41
+ * </Tooltip.Trigger>
48
42
  */
49
- declare function Tooltip({ ref, ...props }: TooltipProps): react_jsx_runtime.JSX.Element;
50
- declare namespace Tooltip {
51
- var displayName: string;
52
- var Trigger: typeof TooltipTrigger;
53
- var Body: typeof TooltipBody;
54
- }
55
- declare function TooltipTrigger({ children, ...props }: TooltipTriggerProps): react_jsx_runtime.JSX.Element;
43
+ declare function TooltipTrigger({ ref, ...props }: TooltipTriggerProps): react_jsx_runtime.JSX.Element;
56
44
  declare namespace TooltipTrigger {
57
45
  var displayName: string;
58
46
  }
59
- declare function TooltipBody({ children, parentRef, className, offset, placement, ...props }: TooltipBodyProps): react_jsx_runtime.JSX.Element;
60
- declare namespace TooltipBody {
47
+ declare function Tooltip({ children, parentRef, className, offset, placement, ...props }: TooltipProps): react_jsx_runtime.JSX.Element;
48
+ declare namespace Tooltip {
61
49
  var displayName: string;
50
+ var Trigger: typeof TooltipTrigger;
62
51
  }
63
52
 
64
53
  export { Tooltip, TooltipContext };