@epilot/volt-ui-experimental-griffel 0.2.3 → 0.3.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 (169) hide show
  1. package/ADOPTING.md +416 -0
  2. package/README.md +32 -31
  3. package/dist/_virtual/jsx-dev-runtime.js +5 -0
  4. package/dist/_virtual/jsx-dev-runtime.js.map +1 -0
  5. package/dist/_virtual/react-jsx-dev-runtime.development.js +5 -0
  6. package/dist/_virtual/react-jsx-dev-runtime.development.js.map +1 -0
  7. package/dist/_virtual/react-jsx-dev-runtime.production.js +5 -0
  8. package/dist/_virtual/react-jsx-dev-runtime.production.js.map +1 -0
  9. package/dist/components/accordion/accordion.js +126 -66
  10. package/dist/components/accordion/accordion.js.map +1 -1
  11. package/dist/components/alert-dialog/alert-dialog.js +239 -137
  12. package/dist/components/alert-dialog/alert-dialog.js.map +1 -1
  13. package/dist/components/avatar/avatar-group.js +102 -47
  14. package/dist/components/avatar/avatar-group.js.map +1 -1
  15. package/dist/components/avatar/avatar.js +97 -73
  16. package/dist/components/avatar/avatar.js.map +1 -1
  17. package/dist/components/badge/badge.js +53 -37
  18. package/dist/components/badge/badge.js.map +1 -1
  19. package/dist/components/breadcrumb/breadcrumb.js +97 -49
  20. package/dist/components/breadcrumb/breadcrumb.js.map +1 -1
  21. package/dist/components/button/button.js +88 -77
  22. package/dist/components/button/button.js.map +1 -1
  23. package/dist/components/button-group/button-group.js +55 -31
  24. package/dist/components/button-group/button-group.js.map +1 -1
  25. package/dist/components/callout/callout.js +288 -164
  26. package/dist/components/callout/callout.js.map +1 -1
  27. package/dist/components/card/card.js +137 -81
  28. package/dist/components/card/card.js.map +1 -1
  29. package/dist/components/checkbox/checkbox.js +100 -49
  30. package/dist/components/checkbox/checkbox.js.map +1 -1
  31. package/dist/components/collapsible-sidebar/collapsible-sidebar.js +155 -107
  32. package/dist/components/collapsible-sidebar/collapsible-sidebar.js.map +1 -1
  33. package/dist/components/command/command.js +297 -158
  34. package/dist/components/command/command.js.map +1 -1
  35. package/dist/components/data-table/data-table-body.js +114 -54
  36. package/dist/components/data-table/data-table-body.js.map +1 -1
  37. package/dist/components/data-table/data-table-column-header.js +117 -45
  38. package/dist/components/data-table/data-table-column-header.js.map +1 -1
  39. package/dist/components/data-table/data-table-column-visibility.js +98 -39
  40. package/dist/components/data-table/data-table-column-visibility.js.map +1 -1
  41. package/dist/components/data-table/data-table-content.js +90 -58
  42. package/dist/components/data-table/data-table-content.js.map +1 -1
  43. package/dist/components/data-table/data-table-error.js +83 -39
  44. package/dist/components/data-table/data-table-error.js.map +1 -1
  45. package/dist/components/data-table/data-table-header.js +88 -54
  46. package/dist/components/data-table/data-table-header.js.map +1 -1
  47. package/dist/components/data-table/data-table-loading.js +27 -15
  48. package/dist/components/data-table/data-table-loading.js.map +1 -1
  49. package/dist/components/data-table/data-table-pagination.js +27 -19
  50. package/dist/components/data-table/data-table-pagination.js.map +1 -1
  51. package/dist/components/data-table/data-table-row.js +87 -64
  52. package/dist/components/data-table/data-table-row.js.map +1 -1
  53. package/dist/components/data-table/data-table-toolbar.js +24 -16
  54. package/dist/components/data-table/data-table-toolbar.js.map +1 -1
  55. package/dist/components/data-table/data-table.js +182 -145
  56. package/dist/components/data-table/data-table.js.map +1 -1
  57. package/dist/components/date-range-picker/date-range-picker.js +342 -214
  58. package/dist/components/date-range-picker/date-range-picker.js.map +1 -1
  59. package/dist/components/date-range-picker/range-calendar.js +132 -92
  60. package/dist/components/date-range-picker/range-calendar.js.map +1 -1
  61. package/dist/components/date-time-picker/calendar.js +501 -317
  62. package/dist/components/date-time-picker/calendar.js.map +1 -1
  63. package/dist/components/date-time-picker/date-time-picker-context.js +64 -60
  64. package/dist/components/date-time-picker/date-time-picker-context.js.map +1 -1
  65. package/dist/components/date-time-picker/date-time-picker-input.js +249 -149
  66. package/dist/components/date-time-picker/date-time-picker-input.js.map +1 -1
  67. package/dist/components/date-time-picker/date-time-picker-panel.js +273 -165
  68. package/dist/components/date-time-picker/date-time-picker-panel.js.map +1 -1
  69. package/dist/components/date-time-picker/date-time-picker-popover.js +22 -14
  70. package/dist/components/date-time-picker/date-time-picker-popover.js.map +1 -1
  71. package/dist/components/date-time-picker/date-time-picker.js +134 -90
  72. package/dist/components/date-time-picker/date-time-picker.js.map +1 -1
  73. package/dist/components/date-time-picker/time-picker.js +198 -132
  74. package/dist/components/date-time-picker/time-picker.js.map +1 -1
  75. package/dist/components/density-provider/density-provider.js +48 -0
  76. package/dist/components/density-provider/density-provider.js.map +1 -0
  77. package/dist/components/dialog/dialog.js +280 -150
  78. package/dist/components/dialog/dialog.js.map +1 -1
  79. package/dist/components/drawer/drawer.js +273 -163
  80. package/dist/components/drawer/drawer.js.map +1 -1
  81. package/dist/components/dropdown-menu/dropdown-menu.js +378 -195
  82. package/dist/components/dropdown-menu/dropdown-menu.js.map +1 -1
  83. package/dist/components/field/field-combobox.js +447 -240
  84. package/dist/components/field/field-combobox.js.map +1 -1
  85. package/dist/components/field/field-select.js +23 -19
  86. package/dist/components/field/field-select.js.map +1 -1
  87. package/dist/components/field/field.js +318 -209
  88. package/dist/components/field/field.js.map +1 -1
  89. package/dist/components/label/label.js +27 -19
  90. package/dist/components/label/label.js.map +1 -1
  91. package/dist/components/list/list.js +623 -369
  92. package/dist/components/list/list.js.map +1 -1
  93. package/dist/components/option-card/option-card.js +323 -159
  94. package/dist/components/option-card/option-card.js.map +1 -1
  95. package/dist/components/pill/pill.js +82 -64
  96. package/dist/components/pill/pill.js.map +1 -1
  97. package/dist/components/popover/popover.js +101 -56
  98. package/dist/components/popover/popover.js.map +1 -1
  99. package/dist/components/radio/radio.js +94 -51
  100. package/dist/components/radio/radio.js.map +1 -1
  101. package/dist/components/scroll-overflow/scroll-overflow.js +350 -198
  102. package/dist/components/scroll-overflow/scroll-overflow.js.map +1 -1
  103. package/dist/components/segmented-control/segmented-control.js +141 -97
  104. package/dist/components/segmented-control/segmented-control.js.map +1 -1
  105. package/dist/components/select/select.js +452 -227
  106. package/dist/components/select/select.js.map +1 -1
  107. package/dist/components/separator/separator.js +24 -16
  108. package/dist/components/separator/separator.js.map +1 -1
  109. package/dist/components/skeleton/skeleton.js +83 -43
  110. package/dist/components/skeleton/skeleton.js.map +1 -1
  111. package/dist/components/spinner/spinner.js +44 -20
  112. package/dist/components/spinner/spinner.js.map +1 -1
  113. package/dist/components/switch/switch.js +163 -86
  114. package/dist/components/switch/switch.js.map +1 -1
  115. package/dist/components/table/table-pagination.js +465 -205
  116. package/dist/components/table/table-pagination.js.map +1 -1
  117. package/dist/components/table/table.js +212 -144
  118. package/dist/components/table/table.js.map +1 -1
  119. package/dist/components/tabs/tabs.js +94 -58
  120. package/dist/components/tabs/tabs.js.map +1 -1
  121. package/dist/components/text/text.js +40 -32
  122. package/dist/components/text/text.js.map +1 -1
  123. package/dist/components/toast/toast.js +187 -111
  124. package/dist/components/toast/toast.js.map +1 -1
  125. package/dist/components/toggle/toggle-group.js +40 -24
  126. package/dist/components/toggle/toggle-group.js.map +1 -1
  127. package/dist/components/toggle/toggle.js +48 -40
  128. package/dist/components/toggle/toggle.js.map +1 -1
  129. package/dist/components/tooltip/tooltip.js +101 -55
  130. package/dist/components/tooltip/tooltip.js.map +1 -1
  131. package/dist/index.d.ts +600 -427
  132. package/dist/index.js +215 -212
  133. package/dist/index.js.map +1 -1
  134. package/dist/lib/clear-button.js +27 -15
  135. package/dist/lib/clear-button.js.map +1 -1
  136. package/dist/lib/icons.js +18 -6
  137. package/dist/lib/icons.js.map +1 -1
  138. package/dist/packages/volt-runtime/dist/sheet.js +27 -10
  139. package/dist/packages/volt-runtime/dist/sheet.js.map +1 -1
  140. package/dist/packages/volt-runtime/dist/styles/recipe.js +76 -0
  141. package/dist/packages/volt-runtime/dist/styles/recipe.js.map +1 -0
  142. package/dist/styles/document-context.js +12 -0
  143. package/dist/styles/document-context.js.map +1 -0
  144. package/dist/styles/make-styles.js +18 -10
  145. package/dist/styles/make-styles.js.map +1 -1
  146. package/dist/tokens/core.generated.js +1238 -1166
  147. package/dist/tokens/core.generated.js.map +1 -1
  148. package/dist/tokens/index.d.ts +442 -415
  149. package/dist/tokens/index.js +1105 -1078
  150. package/dist/tokens/index.js.map +1 -1
  151. package/dist/tokens/install.js +9 -5
  152. package/dist/tokens/install.js.map +1 -1
  153. package/dist/tokens/use-palette-tokens.js +20 -0
  154. package/dist/tokens/use-palette-tokens.js.map +1 -0
  155. package/dist/tokens.json +83 -2
  156. package/dist/vendor/react/cjs/react-jsx-dev-runtime.development.js +236 -0
  157. package/dist/vendor/react/cjs/react-jsx-dev-runtime.development.js.map +1 -0
  158. package/dist/vendor/react/cjs/react-jsx-dev-runtime.production.js +21 -0
  159. package/dist/vendor/react/cjs/react-jsx-dev-runtime.production.js.map +1 -0
  160. package/dist/vendor/react/jsx-dev-runtime.js +9 -0
  161. package/dist/vendor/react/jsx-dev-runtime.js.map +1 -0
  162. package/package.json +13 -5
  163. package/scripts/migration-diagnostics-core.mjs +859 -0
  164. package/scripts/migration-diagnostics.mjs +353 -0
  165. package/scripts/migration-sweep.mjs +179 -0
  166. package/AGENTS.md +0 -153
  167. package/AUTHORING.md +0 -292
  168. package/dist/packages/volt-runtime/dist/styles/make-styles.js +0 -22
  169. package/dist/packages/volt-runtime/dist/styles/make-styles.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sources":["../../../src/components/command/command.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { Command as CommandPrimitive } from \"cmdk\"\nimport { mergeClasses, shorthands } from \"@epilot/volt-ui-runtime\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeVoltStyles } from \"../../styles/make-styles\"\nimport * as tokens from \"../../tokens\"\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from \"../dialog/dialog\"\n\nconst SearchIcon = (props: React.SVGProps<SVGSVGElement>) => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"24px\"\n viewBox=\"0 -960 960 960\"\n width=\"24px\"\n fill=\"currentColor\"\n {...props}\n >\n <path d=\"M380-320q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l224 224q11 11 11 28t-11 28q-11 11-28 11t-28-11L532-372q-30 24-69 38t-83 14Zm0-80q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z\" />\n </svg>\n)\n\nconst useStyles = makeVoltStyles({\n root: {\n backgroundColor: tokens.body,\n color: tokens.grayA12,\n display: \"flex\",\n height: \"100%\",\n width: \"100%\",\n flexDirection: \"column\",\n overflowX: \"hidden\",\n overflowY: \"hidden\",\n ...shorthands.borderRadius(tokens.radiusMd),\n },\n inputWrapper: {\n display: \"flex\",\n alignItems: \"center\",\n ...shorthands.gap(tokens.spacingElement2),\n ...shorthands.borderBottom(\"1px\", \"solid\", tokens.grayA3),\n paddingLeft: tokens.spacingElement3,\n paddingRight: tokens.spacingElement3,\n },\n searchIcon: {\n width: \"1.25rem\",\n height: \"1.25rem\",\n flexShrink: 0,\n opacity: 0.5,\n },\n input: {\n height: \"3rem\",\n display: \"flex\",\n width: \"100%\",\n ...shorthands.borderRadius(tokens.radiusMd),\n backgroundColor: \"transparent\",\n paddingTop: tokens.spacingElement3,\n paddingBottom: tokens.spacingElement3,\n fontSize: tokens.textSm,\n lineHeight: tokens.leadingSm,\n outlineStyle: \"none\",\n \"::placeholder\": {\n color: tokens.grayA11,\n },\n \":disabled\": {\n cursor: \"not-allowed\",\n opacity: 0.5,\n },\n },\n list: {\n overflowX: \"hidden\",\n overflowY: \"auto\",\n scrollPaddingTop: tokens.spacingElement1,\n scrollPaddingBottom: tokens.spacingElement1,\n },\n empty: {\n paddingTop: \"1.5rem\",\n paddingBottom: \"1.5rem\",\n textAlign: \"center\",\n fontSize: tokens.textSm,\n lineHeight: tokens.leadingSm,\n color: tokens.grayA11,\n },\n group: {\n color: tokens.grayA12,\n overflowX: \"hidden\",\n overflowY: \"hidden\",\n ...shorthands.padding(tokens.spacingElement1),\n \"& [cmdk-group-heading]\": {\n color: tokens.grayA11,\n paddingLeft: tokens.spacingElement2,\n paddingRight: tokens.spacingElement2,\n paddingTop: \"0.375rem\",\n paddingBottom: \"0.375rem\",\n fontSize: tokens.textXs,\n lineHeight: tokens.leadingXs,\n fontWeight: tokens.fontWeightMedium,\n },\n },\n separator: {\n backgroundColor: tokens.semGraySoft,\n marginLeft: `calc(-1 * ${tokens.spacingElement1})`,\n marginRight: `calc(-1 * ${tokens.spacingElement1})`,\n height: \"1px\",\n },\n item: {\n position: \"relative\",\n display: \"flex\",\n cursor: \"default\",\n alignItems: \"center\",\n ...shorthands.gap(tokens.spacingElement2),\n ...shorthands.borderRadius(tokens.radiusSm),\n paddingLeft: tokens.spacingElement2,\n paddingRight: tokens.spacingElement2,\n paddingTop: \"0.375rem\",\n paddingBottom: \"0.375rem\",\n fontSize: tokens.textSm,\n lineHeight: tokens.leadingSm,\n outlineStyle: \"none\",\n userSelect: \"none\",\n color: tokens.grayA12,\n \"&[data-selected='true'], &[aria-selected='true']\": {\n backgroundColor: tokens.accentA3,\n },\n \":hover\": {\n backgroundColor: tokens.accentA3,\n },\n \"&[data-disabled='true'], &[aria-disabled='true']\": {\n pointerEvents: \"none\",\n opacity: 0.5,\n },\n \"& svg\": {\n pointerEvents: \"none\",\n flexShrink: 0,\n width: \"1rem\",\n height: \"1rem\",\n },\n \"& svg:not([class*='text-'])\": {\n color: tokens.grayA11,\n },\n },\n shortcut: {\n color: tokens.grayA11,\n marginLeft: \"auto\",\n fontSize: tokens.textXs,\n lineHeight: tokens.leadingXs,\n letterSpacing: \"0.1em\",\n },\n loading: {\n color: tokens.grayA11,\n },\n dialogContent: {\n overflowX: \"hidden\",\n overflowY: \"hidden\",\n ...shorthands.padding(0),\n },\n dialogCommand: {\n \"& [cmdk-group-heading]\": {\n color: tokens.grayA11,\n paddingLeft: tokens.spacingElement2,\n paddingRight: tokens.spacingElement2,\n fontWeight: tokens.fontWeightMedium,\n },\n [`& [${SLOT_ATTR}=\"command-input-wrapper\"]`]: {\n height: \"3rem\",\n },\n \"& [cmdk-group]\": {\n paddingLeft: tokens.spacingElement2,\n paddingRight: tokens.spacingElement2,\n },\n \"& [cmdk-item]\": {\n paddingLeft: tokens.spacingElement2,\n paddingRight: tokens.spacingElement2,\n paddingTop: tokens.spacingElement3,\n paddingBottom: tokens.spacingElement3,\n },\n \"& [cmdk-item] svg\": {\n width: \"1.25rem\",\n height: \"1.25rem\",\n },\n \"& [cmdk-input-wrapper] svg\": {\n width: \"1.25rem\",\n height: \"1.25rem\",\n },\n \"& [cmdk-input]\": {\n height: \"3rem\",\n },\n },\n srOnly: {\n position: \"absolute\",\n width: \"1px\",\n height: \"1px\",\n paddingTop: 0,\n paddingBottom: 0,\n paddingLeft: 0,\n paddingRight: 0,\n marginTop: \"-1px\",\n marginBottom: \"-1px\",\n marginLeft: \"-1px\",\n marginRight: \"-1px\",\n overflowX: \"hidden\",\n overflowY: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n whiteSpace: \"nowrap\",\n ...shorthands.borderWidth(0),\n },\n})\n\nexport type CommandProps = React.ComponentProps<typeof CommandPrimitive> & {\n \"data-slot\"?: string\n}\n\nexport const Command = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive>,\n CommandProps\n>(function Command(\n { className, \"data-slot\": dataSlot = \"command\", ...props },\n ref\n) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive\n ref={ref}\n data-slot={dataSlot}\n {...{ [SLOT_ATTR]: dataSlot }}\n className={mergeClasses(styles.root, className)}\n {...props}\n />\n )\n})\n\nexport type CommandDialogProps = Omit<\n React.ComponentProps<typeof Dialog>,\n \"children\"\n> & {\n children?: React.ReactNode\n title?: string\n description?: string\n className?: string\n showCloseButton?: boolean\n}\n\nexport const CommandDialog = React.forwardRef<HTMLElement, CommandDialogProps>(\n function CommandDialog(\n {\n title = \"Command Palette\",\n description = \"Search for a command to run...\",\n children,\n className,\n showCloseButton = true,\n ...props\n },\n _ref\n ) {\n const styles = useStyles()\n\n return (\n <Dialog {...props}>\n <DialogHeader className={styles.srOnly}>\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent\n className={mergeClasses(styles.dialogContent, className)}\n showCloseButton={showCloseButton}\n >\n <Command className={styles.dialogCommand}>{children}</Command>\n </DialogContent>\n </Dialog>\n )\n }\n)\n\nexport type CommandInputProps = React.ComponentProps<\n typeof CommandPrimitive.Input\n> & {\n wrapperClassName?: string\n}\n\nexport const CommandInput = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n CommandInputProps\n>(function CommandInput({ className, wrapperClassName, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <div\n data-slot=\"command-input-wrapper\"\n {...{ [SLOT_ATTR]: \"command-input-wrapper\" }}\n className={mergeClasses(styles.inputWrapper, wrapperClassName)}\n >\n <SearchIcon className={styles.searchIcon} />\n <CommandPrimitive.Input\n ref={ref}\n data-slot=\"command-input\"\n {...{ [SLOT_ATTR]: \"command-input\" }}\n className={mergeClasses(styles.input, className)}\n {...props}\n />\n </div>\n )\n})\n\nexport type CommandListProps = React.ComponentProps<\n typeof CommandPrimitive.List\n>\n\nexport const CommandList = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n CommandListProps\n>(function CommandList({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.List\n ref={ref}\n data-slot=\"command-list\"\n {...{ [SLOT_ATTR]: \"command-list\" }}\n className={mergeClasses(styles.list, className)}\n {...props}\n />\n )\n})\n\nexport type CommandEmptyProps = React.ComponentProps<\n typeof CommandPrimitive.Empty\n>\n\nexport const CommandEmpty = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Empty>,\n CommandEmptyProps\n>(function CommandEmpty({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.Empty\n ref={ref}\n data-slot=\"command-empty\"\n {...{ [SLOT_ATTR]: \"command-empty\" }}\n className={mergeClasses(styles.empty, className)}\n {...props}\n />\n )\n})\n\nexport type CommandGroupProps = React.ComponentProps<\n typeof CommandPrimitive.Group\n>\n\nexport const CommandGroup = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Group>,\n CommandGroupProps\n>(function CommandGroup({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.Group\n ref={ref}\n data-slot=\"command-group\"\n {...{ [SLOT_ATTR]: \"command-group\" }}\n className={mergeClasses(styles.group, className)}\n {...props}\n />\n )\n})\n\nexport type CommandSeparatorProps = React.ComponentProps<\n typeof CommandPrimitive.Separator\n>\n\nexport const CommandSeparator = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Separator>,\n CommandSeparatorProps\n>(function CommandSeparator({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.Separator\n ref={ref}\n data-slot=\"command-separator\"\n {...{ [SLOT_ATTR]: \"command-separator\" }}\n className={mergeClasses(styles.separator, className)}\n {...props}\n />\n )\n})\n\nexport type CommandItemProps = React.ComponentProps<\n typeof CommandPrimitive.Item\n>\n\nexport const CommandItem = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n CommandItemProps\n>(function CommandItem({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.Item\n ref={ref}\n data-slot=\"command-item\"\n {...{ [SLOT_ATTR]: \"command-item\" }}\n className={mergeClasses(styles.item, className)}\n {...props}\n />\n )\n})\n\nexport type CommandShortcutProps = React.ComponentProps<\"span\">\n\nexport const CommandShortcut = React.forwardRef<\n HTMLSpanElement,\n CommandShortcutProps\n>(function CommandShortcut({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <span\n ref={ref}\n data-slot=\"command-shortcut\"\n {...{ [SLOT_ATTR]: \"command-shortcut\" }}\n className={mergeClasses(styles.shortcut, className)}\n {...props}\n />\n )\n})\n\nexport type CommandLoadingProps = React.ComponentProps<\n typeof CommandPrimitive.Loading\n>\n\nexport const CommandLoading = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Loading>,\n CommandLoadingProps\n>(function CommandLoading({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.Loading\n ref={ref}\n data-slot=\"command-loading\"\n {...{ [SLOT_ATTR]: \"command-loading\" }}\n className={mergeClasses(styles.loading, className)}\n {...props}\n />\n )\n})\n\nexport { Command as CommandRoot }\n"],"names":["SearchIcon","props","jsx","useStyles","makeVoltStyles","tokens.body","tokens.grayA12","shorthands","tokens.radiusMd","tokens.spacingElement2","tokens.grayA3","tokens.spacingElement3","tokens.textSm","tokens.leadingSm","tokens.grayA11","tokens.spacingElement1","tokens.textXs","tokens.leadingXs","tokens.fontWeightMedium","tokens.semGraySoft","tokens.radiusSm","tokens.accentA3","SLOT_ATTR","Command","React","className","dataSlot","ref","styles","CommandPrimitive","mergeClasses","title","description","children","showCloseButton","_ref","jsxs","Dialog","DialogHeader","DialogTitle","DialogDescription","DialogContent","CommandInput","wrapperClassName","CommandList","CommandEmpty","CommandGroup","CommandSeparator","CommandItem","CommandLoading"],"mappings":"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"}
1
+ {"version":3,"file":"command.js","sources":["../../../src/components/command/command.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { Command as CommandPrimitive } from \"cmdk\"\nimport { mergeClasses, shorthands } from \"@epilot/volt-ui-runtime\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeVoltStyles } from \"../../styles/make-styles\"\nimport * as tokens from \"../../tokens\"\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from \"../dialog/dialog\"\n\nconst SearchIcon = (props: React.SVGProps<SVGSVGElement>) => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"24px\"\n viewBox=\"0 -960 960 960\"\n width=\"24px\"\n fill=\"currentColor\"\n {...props}\n >\n <path d=\"M380-320q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l224 224q11 11 11 28t-11 28q-11 11-28 11t-28-11L532-372q-30 24-69 38t-83 14Zm0-80q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z\" />\n </svg>\n)\n\nconst useStyles = makeVoltStyles({\n root: {\n backgroundColor: tokens.body,\n color: tokens.grayA12,\n display: \"flex\",\n height: \"100%\",\n width: \"100%\",\n flexDirection: \"column\",\n overflowX: \"hidden\",\n overflowY: \"hidden\",\n ...shorthands.borderRadius(tokens.radiusMd),\n },\n inputWrapper: {\n display: \"flex\",\n alignItems: \"center\",\n ...shorthands.gap(tokens.spacingElement2),\n ...shorthands.borderBottom(\"1px\", \"solid\", tokens.grayA3),\n paddingLeft: tokens.spacingElement3,\n paddingRight: tokens.spacingElement3,\n },\n searchIcon: {\n width: \"1.25rem\",\n height: \"1.25rem\",\n flexShrink: 0,\n opacity: 0.5,\n },\n input: {\n height: \"3rem\",\n display: \"flex\",\n width: \"100%\",\n ...shorthands.borderRadius(tokens.radiusMd),\n backgroundColor: \"transparent\",\n paddingTop: tokens.spacingElement3,\n paddingBottom: tokens.spacingElement3,\n fontSize: tokens.textSm,\n lineHeight: tokens.leadingSm,\n outlineStyle: \"none\",\n \":focus-visible\": {\n outlineWidth: \"2px\",\n outlineStyle: \"solid\",\n // Inset (negative), not the outward +2px every other audited control uses: this input sits\n // flush against the top edge of the Command root, which clips overflow for its rounded\n // corners. An outward ring's top 4px (width + offset) render outside that clip box and are\n // cut off — confirmed by measuring the rendered outline rect against the clipping ancestor's\n // rect (COBALT-REVIEW-2.md §2). Insetting keeps the ring's outer edge at the input's own\n // border edge, so it doesn't extend past this ancestor's clip box in this layout (it is not\n // a universal guarantee against every possible ancestor — an ancestor that clips the input's\n // OWN box, not just what extends beyond it, would still hide it). No layout change either\n // way: outline never affects box model regardless of sign.\n outlineOffset: \"-2px\",\n outlineColor: tokens.semFocusRing,\n },\n \"::placeholder\": {\n color: tokens.grayA11,\n },\n \":disabled\": {\n cursor: \"not-allowed\",\n opacity: 0.5,\n },\n },\n list: {\n overflowX: \"hidden\",\n overflowY: \"auto\",\n scrollPaddingTop: tokens.spacingElement1,\n scrollPaddingBottom: tokens.spacingElement1,\n },\n empty: {\n paddingTop: \"1.5rem\",\n paddingBottom: \"1.5rem\",\n textAlign: \"center\",\n fontSize: tokens.textSm,\n lineHeight: tokens.leadingSm,\n color: tokens.grayA11,\n },\n group: {\n color: tokens.grayA12,\n overflowX: \"hidden\",\n overflowY: \"hidden\",\n ...shorthands.padding(tokens.spacingElement1),\n \"& [cmdk-group-heading]\": {\n color: tokens.grayA11,\n paddingLeft: tokens.spacingElement2,\n paddingRight: tokens.spacingElement2,\n paddingTop: \"0.375rem\",\n paddingBottom: \"0.375rem\",\n fontSize: tokens.textXs,\n lineHeight: tokens.leadingXs,\n fontWeight: tokens.fontWeightMedium,\n },\n },\n separator: {\n backgroundColor: tokens.semGraySoft,\n marginLeft: `calc(-1 * ${tokens.spacingElement1})`,\n marginRight: `calc(-1 * ${tokens.spacingElement1})`,\n height: \"1px\",\n },\n item: {\n position: \"relative\",\n display: \"flex\",\n cursor: \"default\",\n alignItems: \"center\",\n ...shorthands.gap(tokens.spacingElement2),\n ...shorthands.borderRadius(tokens.radiusSm),\n paddingLeft: tokens.spacingElement2,\n paddingRight: tokens.spacingElement2,\n paddingTop: \"0.375rem\",\n paddingBottom: \"0.375rem\",\n fontSize: tokens.textSm,\n lineHeight: tokens.leadingSm,\n outlineStyle: \"none\",\n userSelect: \"none\",\n color: tokens.grayA12,\n \"&[data-selected='true'], &[aria-selected='true']\": {\n backgroundColor: tokens.accentA3,\n },\n \":hover\": {\n backgroundColor: tokens.accentA3,\n },\n \"&[data-disabled='true'], &[aria-disabled='true']\": {\n pointerEvents: \"none\",\n opacity: 0.5,\n },\n \"& svg\": {\n pointerEvents: \"none\",\n flexShrink: 0,\n width: \"1rem\",\n height: \"1rem\",\n },\n \"& svg:not([class*='text-'])\": {\n color: tokens.grayA11,\n },\n },\n shortcut: {\n color: tokens.grayA11,\n marginLeft: \"auto\",\n fontSize: tokens.textXs,\n lineHeight: tokens.leadingXs,\n letterSpacing: \"0.1em\",\n },\n loading: {\n color: tokens.grayA11,\n },\n dialogContent: {\n overflowX: \"hidden\",\n overflowY: \"hidden\",\n ...shorthands.padding(0),\n },\n dialogCommand: {\n \"& [cmdk-group-heading]\": {\n color: tokens.grayA11,\n paddingLeft: tokens.spacingElement2,\n paddingRight: tokens.spacingElement2,\n fontWeight: tokens.fontWeightMedium,\n },\n [`& [${SLOT_ATTR}=\"command-input-wrapper\"]`]: {\n height: \"3rem\",\n },\n \"& [cmdk-group]\": {\n paddingLeft: tokens.spacingElement2,\n paddingRight: tokens.spacingElement2,\n },\n \"& [cmdk-item]\": {\n paddingLeft: tokens.spacingElement2,\n paddingRight: tokens.spacingElement2,\n paddingTop: tokens.spacingElement3,\n paddingBottom: tokens.spacingElement3,\n },\n \"& [cmdk-item] svg\": {\n width: \"1.25rem\",\n height: \"1.25rem\",\n },\n \"& [cmdk-input-wrapper] svg\": {\n width: \"1.25rem\",\n height: \"1.25rem\",\n },\n \"& [cmdk-input]\": {\n height: \"3rem\",\n },\n },\n srOnly: {\n position: \"absolute\",\n width: \"1px\",\n height: \"1px\",\n paddingTop: 0,\n paddingBottom: 0,\n paddingLeft: 0,\n paddingRight: 0,\n marginTop: \"-1px\",\n marginBottom: \"-1px\",\n marginLeft: \"-1px\",\n marginRight: \"-1px\",\n overflowX: \"hidden\",\n overflowY: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n whiteSpace: \"nowrap\",\n ...shorthands.borderWidth(0),\n },\n})\n\nexport type CommandProps = React.ComponentProps<typeof CommandPrimitive> & {\n \"data-slot\"?: string\n}\n\nexport const Command = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive>,\n CommandProps\n>(function Command(\n { className, \"data-slot\": dataSlot = \"command\", ...props },\n ref\n) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive\n ref={ref}\n data-slot={dataSlot}\n {...{ [SLOT_ATTR]: dataSlot }}\n className={mergeClasses(styles.root, className)}\n {...props}\n />\n )\n})\n\nexport type CommandDialogProps = Omit<\n React.ComponentProps<typeof Dialog>,\n \"children\"\n> & {\n children?: React.ReactNode\n title?: string\n description?: string\n className?: string\n showCloseButton?: boolean\n}\n\nexport const CommandDialog = React.forwardRef<HTMLElement, CommandDialogProps>(\n function CommandDialog(\n {\n title = \"Command Palette\",\n description = \"Search for a command to run...\",\n children,\n className,\n showCloseButton = true,\n ...props\n },\n _ref\n ) {\n const styles = useStyles()\n\n return (\n <Dialog {...props}>\n <DialogHeader className={styles.srOnly}>\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent\n className={mergeClasses(styles.dialogContent, className)}\n showCloseButton={showCloseButton}\n >\n <Command className={styles.dialogCommand}>{children}</Command>\n </DialogContent>\n </Dialog>\n )\n }\n)\n\nexport type CommandInputProps = React.ComponentProps<\n typeof CommandPrimitive.Input\n> & {\n wrapperClassName?: string\n}\n\nexport const CommandInput = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n CommandInputProps\n>(function CommandInput({ className, wrapperClassName, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <div\n data-slot=\"command-input-wrapper\"\n {...{ [SLOT_ATTR]: \"command-input-wrapper\" }}\n className={mergeClasses(styles.inputWrapper, wrapperClassName)}\n >\n <SearchIcon className={styles.searchIcon} />\n <CommandPrimitive.Input\n ref={ref}\n data-slot=\"command-input\"\n {...{ [SLOT_ATTR]: \"command-input\" }}\n className={mergeClasses(styles.input, className)}\n {...props}\n />\n </div>\n )\n})\n\nexport type CommandListProps = React.ComponentProps<\n typeof CommandPrimitive.List\n>\n\nexport const CommandList = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n CommandListProps\n>(function CommandList({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.List\n ref={ref}\n data-slot=\"command-list\"\n {...{ [SLOT_ATTR]: \"command-list\" }}\n className={mergeClasses(styles.list, className)}\n {...props}\n />\n )\n})\n\nexport type CommandEmptyProps = React.ComponentProps<\n typeof CommandPrimitive.Empty\n>\n\nexport const CommandEmpty = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Empty>,\n CommandEmptyProps\n>(function CommandEmpty({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.Empty\n ref={ref}\n data-slot=\"command-empty\"\n {...{ [SLOT_ATTR]: \"command-empty\" }}\n className={mergeClasses(styles.empty, className)}\n {...props}\n />\n )\n})\n\nexport type CommandGroupProps = React.ComponentProps<\n typeof CommandPrimitive.Group\n>\n\nexport const CommandGroup = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Group>,\n CommandGroupProps\n>(function CommandGroup({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.Group\n ref={ref}\n data-slot=\"command-group\"\n {...{ [SLOT_ATTR]: \"command-group\" }}\n className={mergeClasses(styles.group, className)}\n {...props}\n />\n )\n})\n\nexport type CommandSeparatorProps = React.ComponentProps<\n typeof CommandPrimitive.Separator\n>\n\nexport const CommandSeparator = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Separator>,\n CommandSeparatorProps\n>(function CommandSeparator({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.Separator\n ref={ref}\n data-slot=\"command-separator\"\n {...{ [SLOT_ATTR]: \"command-separator\" }}\n className={mergeClasses(styles.separator, className)}\n {...props}\n />\n )\n})\n\nexport type CommandItemProps = React.ComponentProps<\n typeof CommandPrimitive.Item\n>\n\nexport const CommandItem = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n CommandItemProps\n>(function CommandItem({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.Item\n ref={ref}\n data-slot=\"command-item\"\n {...{ [SLOT_ATTR]: \"command-item\" }}\n className={mergeClasses(styles.item, className)}\n {...props}\n />\n )\n})\n\nexport type CommandShortcutProps = React.ComponentProps<\"span\">\n\nexport const CommandShortcut = React.forwardRef<\n HTMLSpanElement,\n CommandShortcutProps\n>(function CommandShortcut({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <span\n ref={ref}\n data-slot=\"command-shortcut\"\n {...{ [SLOT_ATTR]: \"command-shortcut\" }}\n className={mergeClasses(styles.shortcut, className)}\n {...props}\n />\n )\n})\n\nexport type CommandLoadingProps = React.ComponentProps<\n typeof CommandPrimitive.Loading\n>\n\nexport const CommandLoading = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Loading>,\n CommandLoadingProps\n>(function CommandLoading({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <CommandPrimitive.Loading\n ref={ref}\n data-slot=\"command-loading\"\n {...{ [SLOT_ATTR]: \"command-loading\" }}\n className={mergeClasses(styles.loading, className)}\n {...props}\n />\n )\n})\n\nexport { Command as CommandRoot }\n"],"names":["SearchIcon","props","jsxDEV","this","useStyles","makeVoltStyles","tokens.body","tokens.grayA12","shorthands","tokens.radiusMd","tokens.spacingElement2","tokens.grayA3","tokens.spacingElement3","tokens.textSm","tokens.leadingSm","tokens.semFocusRing","tokens.grayA11","tokens.spacingElement1","tokens.textXs","tokens.leadingXs","tokens.fontWeightMedium","tokens.semGraySoft","tokens.radiusSm","tokens.accentA3","SLOT_ATTR","Command","React","className","dataSlot","ref","styles","CommandPrimitive","mergeClasses","title","description","children","showCloseButton","_ref","Dialog","DialogHeader","DialogTitle","DialogDescription","DialogContent","CommandInput","wrapperClassName","CommandList","CommandEmpty","CommandGroup","CommandSeparator","CommandItem","CommandLoading"],"mappings":"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"}
@@ -1,84 +1,144 @@
1
- import { jsx as a } from "react/jsx-runtime";
2
- import * as h from "react";
3
- import { makeVoltStyles as D } from "../../styles/make-styles.js";
4
- import { grayA11 as g } from "../../tokens/index.js";
5
- import { TableBody as o, TableRow as B, TableCell as w } from "../table/table.js";
6
- import { DataTableRow as v } from "./data-table-row.js";
7
- import { DataTableLoading as C } from "./data-table-loading.js";
8
- import { useDataTable as R } from "./hooks/use-data-table.js";
9
- import { useDataTableContent as S } from "./hooks/use-data-table-content.js";
10
- import { SLOT_ATTR as l } from "../../packages/volt-runtime/dist/renderer/contract.js";
11
- const L = D({
1
+ import { j as e } from "../../vendor/react/jsx-dev-runtime.js";
2
+ import * as N from "react";
3
+ import { makeVoltStyles as g } from "../../styles/make-styles.js";
4
+ import { grayA11 as v } from "../../tokens/index.js";
5
+ import { TableBody as t, TableRow as D, TableCell as h } from "../table/table.js";
6
+ import { DataTableRow as w } from "./data-table-row.js";
7
+ import { DataTableLoading as T } from "./data-table-loading.js";
8
+ import { useDataTable as E } from "./hooks/use-data-table.js";
9
+ import { useDataTableContent as V } from "./hooks/use-data-table-content.js";
10
+ import { SLOT_ATTR as o } from "../../packages/volt-runtime/dist/renderer/contract.js";
11
+ const j = g({
12
12
  stateCell: {
13
13
  height: "12rem",
14
- color: g
14
+ color: v
15
15
  }
16
16
  });
17
- function i({
18
- colSpan: b,
19
- children: t
17
+ function m({
18
+ colSpan: d,
19
+ children: a
20
20
  }) {
21
- const r = L();
22
- return /* @__PURE__ */ a(B, { noHover: !0, children: /* @__PURE__ */ a(w, { colSpan: b, align: "center", className: r.stateCell, children: t }) });
21
+ const r = j();
22
+ return /* @__PURE__ */ e.jsxDEV(D, { noHover: !0, children: /* @__PURE__ */ e.jsxDEV(h, { colSpan: d, align: "center", className: r.stateCell, children: a }, void 0, !1, {
23
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-body.tsx",
24
+ lineNumber: 48,
25
+ columnNumber: 7
26
+ }, this) }, void 0, !1, {
27
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-body.tsx",
28
+ lineNumber: 47,
29
+ columnNumber: 5
30
+ }, this);
23
31
  }
24
- const M = h.forwardRef(function({
25
- className: t,
32
+ const _ = N.forwardRef(function({
33
+ className: a,
26
34
  emptyState: r,
27
35
  loadingState: f,
28
- isLoading: u = !1,
29
- errorState: d,
30
- isError: m = !1
31
- }, e) {
32
- const { table: c } = R(), s = S(), T = (s == null ? void 0 : s.spacerWidth) ?? 0, p = c.getRowModel().rows, n = c.getVisibleLeafColumns().length + (T > 0 ? 1 : 0);
33
- return process.env.NODE_ENV !== "production" && m && !d && console.warn(
36
+ isLoading: x = !1,
37
+ errorState: s,
38
+ isError: b = !1
39
+ }, l) {
40
+ const { table: u } = E(), i = V(), y = (i == null ? void 0 : i.spacerWidth) ?? 0, c = u.getRowModel().rows, n = u.getVisibleLeafColumns().length + (y > 0 ? 1 : 0);
41
+ return process.env.NODE_ENV !== "production" && b && !s && console.warn(
34
42
  "DataTableBody: isError is true but no errorState was provided. Please provide an errorState prop to display error content."
35
- ), m && d ? /* @__PURE__ */ a(
36
- o,
43
+ ), b && s ? /* @__PURE__ */ e.jsxDEV(
44
+ t,
37
45
  {
38
- ref: e,
46
+ ref: l,
39
47
  "data-slot": "data-table-body",
40
- [l]: "data-table-body",
48
+ [o]: "data-table-body",
41
49
  "data-fs-element": "DataTable-Body",
42
50
  "data-state": "error",
43
- className: t,
44
- children: /* @__PURE__ */ a(i, { colSpan: n, children: d })
45
- }
46
- ) : u ? /* @__PURE__ */ a(
47
- o,
51
+ className: a,
52
+ children: /* @__PURE__ */ e.jsxDEV(m, { colSpan: n, children: s }, void 0, !1, {
53
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-body.tsx",
54
+ lineNumber: 102,
55
+ columnNumber: 9
56
+ }, this)
57
+ },
58
+ void 0,
59
+ !1,
48
60
  {
49
- ref: e,
61
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-body.tsx",
62
+ lineNumber: 94,
63
+ columnNumber: 7
64
+ },
65
+ this
66
+ ) : x ? /* @__PURE__ */ e.jsxDEV(
67
+ t,
68
+ {
69
+ ref: l,
50
70
  "data-slot": "data-table-body",
51
- [l]: "data-table-body",
71
+ [o]: "data-table-body",
52
72
  "data-fs-element": "DataTable-Body",
53
73
  "data-state": "loading",
54
- className: t,
74
+ className: a,
55
75
  "aria-busy": "true",
56
- children: /* @__PURE__ */ a(i, { colSpan: n, children: f ?? /* @__PURE__ */ a(C, {}) })
57
- }
58
- ) : p.length ? /* @__PURE__ */ a(
59
- o,
76
+ children: /* @__PURE__ */ e.jsxDEV(m, { colSpan: n, children: f ?? /* @__PURE__ */ e.jsxDEV(T, {}, void 0, !1, {
77
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-body.tsx",
78
+ lineNumber: 122,
79
+ columnNumber: 28
80
+ }, this) }, void 0, !1, {
81
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-body.tsx",
82
+ lineNumber: 121,
83
+ columnNumber: 9
84
+ }, this)
85
+ },
86
+ void 0,
87
+ !1,
88
+ {
89
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-body.tsx",
90
+ lineNumber: 112,
91
+ columnNumber: 7
92
+ },
93
+ this
94
+ ) : c.length ? /* @__PURE__ */ e.jsxDEV(
95
+ t,
60
96
  {
61
- ref: e,
97
+ ref: l,
62
98
  "data-slot": "data-table-body",
63
- [l]: "data-table-body",
99
+ [o]: "data-table-body",
64
100
  "data-fs-element": "DataTable-Body",
65
- className: t,
66
- children: p.map((y) => /* @__PURE__ */ a(v, { row: y }, y.id))
67
- }
68
- ) : /* @__PURE__ */ a(
69
- o,
101
+ className: a,
102
+ children: c.map((p) => /* @__PURE__ */ e.jsxDEV(w, { row: p }, p.id, !1, {
103
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-body.tsx",
104
+ lineNumber: 156,
105
+ columnNumber: 9
106
+ }, this))
107
+ },
108
+ void 0,
109
+ !1,
70
110
  {
71
- ref: e,
111
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-body.tsx",
112
+ lineNumber: 148,
113
+ columnNumber: 5
114
+ },
115
+ this
116
+ ) : /* @__PURE__ */ e.jsxDEV(
117
+ t,
118
+ {
119
+ ref: l,
72
120
  "data-slot": "data-table-body",
73
- [l]: "data-table-body",
121
+ [o]: "data-table-body",
74
122
  "data-fs-element": "DataTable-Body",
75
123
  "data-state": "empty",
76
- className: t,
77
- children: /* @__PURE__ */ a(i, { colSpan: n, children: r })
78
- }
124
+ className: a,
125
+ children: /* @__PURE__ */ e.jsxDEV(m, { colSpan: n, children: r }, void 0, !1, {
126
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-body.tsx",
127
+ lineNumber: 139,
128
+ columnNumber: 9
129
+ }, this)
130
+ },
131
+ void 0,
132
+ !1,
133
+ {
134
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-body.tsx",
135
+ lineNumber: 131,
136
+ columnNumber: 7
137
+ },
138
+ this
79
139
  );
80
140
  });
81
141
  export {
82
- M as DataTableBody
142
+ _ as DataTableBody
83
143
  };
84
144
  //# sourceMappingURL=data-table-body.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-table-body.js","sources":["../../../src/components/data-table/data-table-body.tsx"],"sourcesContent":["import * as React from \"react\"\nimport type { ReactNode } from \"react\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeVoltStyles } from \"../../styles/make-styles\"\nimport * as tokens from \"../../tokens\"\nimport { TableBody, TableRow, TableCell } from \"../table/table\"\nimport { useDataTable, useDataTableContent } from \"./hooks\"\nimport { DataTableRow } from \"./data-table-row\"\nimport { DataTableLoading } from \"./data-table-loading\"\n\nconst useStyles = makeVoltStyles({\n stateCell: {\n height: \"12rem\",\n color: tokens.grayA11,\n },\n})\n\nexport type DataTableBodyProps = {\n /** Additional class name */\n className?: string\n /** Custom empty state content */\n emptyState?: ReactNode\n /** Loading state content (shown when isLoading is true) */\n loadingState?: ReactNode\n /** Whether the table is in loading state */\n isLoading?: boolean\n /** Error state content (shown when isError is true) */\n errorState?: ReactNode\n /** Whether the table is in error state */\n isError?: boolean\n}\n\n/**\n * Internal component for state display (loading/error/empty).\n */\nfunction DataTableStateDisplay({\n colSpan,\n children,\n}: {\n colSpan: number\n children?: ReactNode\n}) {\n const styles = useStyles()\n\n return (\n <TableRow noHover>\n <TableCell colSpan={colSpan} align=\"center\" className={styles.stateCell}>\n {children}\n </TableCell>\n </TableRow>\n )\n}\n\n/**\n * Renders the table body with rows.\n * Must be used within a DataTable component.\n */\nexport const DataTableBody = React.forwardRef<\n HTMLTableSectionElement,\n DataTableBodyProps\n>(function DataTableBody(\n {\n className,\n emptyState,\n loadingState,\n isLoading = false,\n errorState,\n isError = false,\n },\n ref\n) {\n const { table } = useDataTable()\n const contentContext = useDataTableContent()\n const spacerWidth = contentContext?.spacerWidth ?? 0\n\n const rows = table.getRowModel().rows\n const visibleColumns = table.getVisibleLeafColumns()\n const colSpan = visibleColumns.length + (spacerWidth > 0 ? 1 : 0)\n\n // Warn if isError is true but no errorState is provided\n if (process.env.NODE_ENV !== \"production\" && isError && !errorState) {\n console.warn(\n \"DataTableBody: isError is true but no errorState was provided. \" +\n \"Please provide an errorState prop to display error content.\"\n )\n }\n\n // Priority: Error > Loading > Empty > Data\n\n // Error state\n if (isError && errorState) {\n return (\n <TableBody\n ref={ref}\n data-slot=\"data-table-body\"\n {...{ [SLOT_ATTR]: \"data-table-body\" }}\n data-fs-element=\"DataTable-Body\"\n data-state=\"error\"\n className={className}\n >\n <DataTableStateDisplay colSpan={colSpan}>\n {errorState}\n </DataTableStateDisplay>\n </TableBody>\n )\n }\n\n // Loading state\n if (isLoading) {\n return (\n <TableBody\n ref={ref}\n data-slot=\"data-table-body\"\n {...{ [SLOT_ATTR]: \"data-table-body\" }}\n data-fs-element=\"DataTable-Body\"\n data-state=\"loading\"\n className={className}\n aria-busy=\"true\"\n >\n <DataTableStateDisplay colSpan={colSpan}>\n {loadingState ?? <DataTableLoading />}\n </DataTableStateDisplay>\n </TableBody>\n )\n }\n\n // Empty state\n if (!rows.length) {\n return (\n <TableBody\n ref={ref}\n data-slot=\"data-table-body\"\n {...{ [SLOT_ATTR]: \"data-table-body\" }}\n data-fs-element=\"DataTable-Body\"\n data-state=\"empty\"\n className={className}\n >\n <DataTableStateDisplay colSpan={colSpan}>\n {emptyState}\n </DataTableStateDisplay>\n </TableBody>\n )\n }\n\n // Standard rendering\n return (\n <TableBody\n ref={ref}\n data-slot=\"data-table-body\"\n {...{ [SLOT_ATTR]: \"data-table-body\" }}\n data-fs-element=\"DataTable-Body\"\n className={className}\n >\n {rows.map((row) => (\n <DataTableRow key={row.id} row={row} />\n ))}\n </TableBody>\n )\n})\n"],"names":["useStyles","makeVoltStyles","tokens.grayA11","DataTableStateDisplay","colSpan","children","styles","jsx","TableRow","TableCell","DataTableBody","React","className","emptyState","loadingState","isLoading","errorState","isError","ref","table","useDataTable","contentContext","useDataTableContent","spacerWidth","rows","TableBody","SLOT_ATTR","DataTableLoading","row","DataTableRow"],"mappings":";;;;;;;;;;AAWA,MAAMA,IAAYC,EAAe;AAAA,EAC/B,WAAW;AAAA,IACT,QAAQ;AAAA,IACR,OAAOC;AAAAA,EAAO;AAElB,CAAC;AAoBD,SAASC,EAAsB;AAAA,EAC7B,SAAAC;AAAA,EACA,UAAAC;AACF,GAGG;AACD,QAAMC,IAASN,EAAA;AAEf,SACE,gBAAAO,EAACC,GAAA,EAAS,SAAO,IACf,UAAA,gBAAAD,EAACE,GAAA,EAAU,SAAAL,GAAkB,OAAM,UAAS,WAAWE,EAAO,WAC3D,UAAAD,GACH,GACF;AAEJ;AAMO,MAAMK,IAAgBC,EAAM,WAGjC,SACA;AAAA,EACE,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,YAAAC;AAAA,EACA,SAAAC,IAAU;AACZ,GACAC,GACA;AACA,QAAM,EAAE,OAAAC,EAAA,IAAUC,EAAA,GACZC,IAAiBC,EAAA,GACjBC,KAAcF,KAAA,gBAAAA,EAAgB,gBAAe,GAE7CG,IAAOL,EAAM,YAAA,EAAc,MAE3Bf,IADiBe,EAAM,sBAAA,EACE,UAAUI,IAAc,IAAI,IAAI;AAa/D,SAVI,QAAQ,IAAI,aAAa,gBAAgBN,KAAW,CAACD,KACvD,QAAQ;AAAA,IACN;AAAA,EAAA,GAQAC,KAAWD,IAEX,gBAAAT;AAAA,IAACkB;AAAA,IAAA;AAAA,MACC,KAAAP;AAAA,MACA,aAAU;AAAA,MACJ,CAACQ,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,cAAW;AAAA,MACX,WAAAd;AAAA,MAEA,UAAA,gBAAAL,EAACJ,GAAA,EAAsB,SAAAC,GACpB,UAAAY,EAAA,CACH;AAAA,IAAA;AAAA,EAAA,IAMFD,IAEA,gBAAAR;AAAA,IAACkB;AAAA,IAAA;AAAA,MACC,KAAAP;AAAA,MACA,aAAU;AAAA,MACJ,CAACQ,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,cAAW;AAAA,MACX,WAAAd;AAAA,MACA,aAAU;AAAA,MAEV,4BAACT,GAAA,EAAsB,SAAAC,GACpB,UAAAU,KAAgB,gBAAAP,EAACoB,KAAiB,EAAA,CACrC;AAAA,IAAA;AAAA,EAAA,IAMDH,EAAK,SAmBR,gBAAAjB;AAAA,IAACkB;AAAA,IAAA;AAAA,MACC,KAAAP;AAAA,MACA,aAAU;AAAA,MACJ,CAACQ,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,WAAAd;AAAA,MAEC,UAAAY,EAAK,IAAI,CAACI,wBACRC,GAAA,EAA0B,KAAAD,EAAA,GAARA,EAAI,EAAc,CACtC;AAAA,IAAA;AAAA,EAAA,IA1BD,gBAAArB;AAAA,IAACkB;AAAA,IAAA;AAAA,MACC,KAAAP;AAAA,MACA,aAAU;AAAA,MACJ,CAACQ,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,cAAW;AAAA,MACX,WAAAd;AAAA,MAEA,UAAA,gBAAAL,EAACJ,GAAA,EAAsB,SAAAC,GACpB,UAAAS,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAmBR,CAAC;"}
1
+ {"version":3,"file":"data-table-body.js","sources":["../../../src/components/data-table/data-table-body.tsx"],"sourcesContent":["import * as React from \"react\"\nimport type { ReactNode } from \"react\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeVoltStyles } from \"../../styles/make-styles\"\nimport * as tokens from \"../../tokens\"\nimport { TableBody, TableRow, TableCell } from \"../table/table\"\nimport { useDataTable, useDataTableContent } from \"./hooks\"\nimport { DataTableRow } from \"./data-table-row\"\nimport { DataTableLoading } from \"./data-table-loading\"\n\nconst useStyles = makeVoltStyles({\n stateCell: {\n height: \"12rem\",\n color: tokens.grayA11,\n },\n})\n\nexport type DataTableBodyProps = {\n /** Additional class name */\n className?: string\n /** Custom empty state content */\n emptyState?: ReactNode\n /** Loading state content (shown when isLoading is true) */\n loadingState?: ReactNode\n /** Whether the table is in loading state */\n isLoading?: boolean\n /** Error state content (shown when isError is true) */\n errorState?: ReactNode\n /** Whether the table is in error state */\n isError?: boolean\n}\n\n/**\n * Internal component for state display (loading/error/empty).\n */\nfunction DataTableStateDisplay({\n colSpan,\n children,\n}: {\n colSpan: number\n children?: ReactNode\n}) {\n const styles = useStyles()\n\n return (\n <TableRow noHover>\n <TableCell colSpan={colSpan} align=\"center\" className={styles.stateCell}>\n {children}\n </TableCell>\n </TableRow>\n )\n}\n\n/**\n * Renders the table body with rows.\n * Must be used within a DataTable component.\n */\nexport const DataTableBody = React.forwardRef<\n HTMLTableSectionElement,\n DataTableBodyProps\n>(function DataTableBody(\n {\n className,\n emptyState,\n loadingState,\n isLoading = false,\n errorState,\n isError = false,\n },\n ref\n) {\n const { table } = useDataTable()\n const contentContext = useDataTableContent()\n const spacerWidth = contentContext?.spacerWidth ?? 0\n\n const rows = table.getRowModel().rows\n const visibleColumns = table.getVisibleLeafColumns()\n const colSpan = visibleColumns.length + (spacerWidth > 0 ? 1 : 0)\n\n // Warn if isError is true but no errorState is provided\n if (process.env.NODE_ENV !== \"production\" && isError && !errorState) {\n console.warn(\n \"DataTableBody: isError is true but no errorState was provided. \" +\n \"Please provide an errorState prop to display error content.\"\n )\n }\n\n // Priority: Error > Loading > Empty > Data\n\n // Error state\n if (isError && errorState) {\n return (\n <TableBody\n ref={ref}\n data-slot=\"data-table-body\"\n {...{ [SLOT_ATTR]: \"data-table-body\" }}\n data-fs-element=\"DataTable-Body\"\n data-state=\"error\"\n className={className}\n >\n <DataTableStateDisplay colSpan={colSpan}>\n {errorState}\n </DataTableStateDisplay>\n </TableBody>\n )\n }\n\n // Loading state\n if (isLoading) {\n return (\n <TableBody\n ref={ref}\n data-slot=\"data-table-body\"\n {...{ [SLOT_ATTR]: \"data-table-body\" }}\n data-fs-element=\"DataTable-Body\"\n data-state=\"loading\"\n className={className}\n aria-busy=\"true\"\n >\n <DataTableStateDisplay colSpan={colSpan}>\n {loadingState ?? <DataTableLoading />}\n </DataTableStateDisplay>\n </TableBody>\n )\n }\n\n // Empty state\n if (!rows.length) {\n return (\n <TableBody\n ref={ref}\n data-slot=\"data-table-body\"\n {...{ [SLOT_ATTR]: \"data-table-body\" }}\n data-fs-element=\"DataTable-Body\"\n data-state=\"empty\"\n className={className}\n >\n <DataTableStateDisplay colSpan={colSpan}>\n {emptyState}\n </DataTableStateDisplay>\n </TableBody>\n )\n }\n\n // Standard rendering\n return (\n <TableBody\n ref={ref}\n data-slot=\"data-table-body\"\n {...{ [SLOT_ATTR]: \"data-table-body\" }}\n data-fs-element=\"DataTable-Body\"\n className={className}\n >\n {rows.map((row) => (\n <DataTableRow key={row.id} row={row} />\n ))}\n </TableBody>\n )\n})\n"],"names":["useStyles","makeVoltStyles","tokens.grayA11","DataTableStateDisplay","colSpan","children","styles","jsxDEV","TableRow","TableCell","DataTableBody","React","className","emptyState","loadingState","isLoading","errorState","isError","ref","table","useDataTable","contentContext","useDataTableContent","spacerWidth","rows","TableBody","SLOT_ATTR","DataTableLoading","row","DataTableRow"],"mappings":";;;;;;;;;;AAWA,MAAMA,IAAYC,EAAe;AAAA,EAC/B,WAAW;AAAA,IACT,QAAQ;AAAA,IACR,OAAOC;AAAAA,EAAO;AAElB,CAAC;AAoBD,SAASC,EAAsB;AAAA,EAC7B,SAAAC;AAAA,EACA,UAAAC;AACF,GAGG;AACD,QAAMC,IAASN,EAAA;AAEf,SACEO,gBAAAA,EAAAA,OAACC,GAAA,EAAS,SAAO,IACf,UAAAD,gBAAAA,EAAAA,OAACE,GAAA,EAAU,SAAAL,GAAkB,OAAM,UAAS,WAAWE,EAAO,WAC3D,UAAAD,EAAA,GADH,QAAA,IAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAA,IAEA,EAAA,GAHF,QAAA,IAAA;AAAA,IAAA,UAAA;AAAA,IAAA,YAAA;AAAA,IAAA,cAAA;AAAA,EAAA,GAAA,IAIA;AAEJ;AAMO,MAAMK,IAAgBC,EAAM,WAGjC,SACA;AAAA,EACE,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,YAAAC;AAAA,EACA,SAAAC,IAAU;AACZ,GACAC,GACA;AACA,QAAM,EAAE,OAAAC,EAAA,IAAUC,EAAA,GACZC,IAAiBC,EAAA,GACjBC,KAAcF,KAAA,gBAAAA,EAAgB,gBAAe,GAE7CG,IAAOL,EAAM,YAAA,EAAc,MAE3Bf,IADiBe,EAAM,sBAAA,EACE,UAAUI,IAAc,IAAI,IAAI;AAa/D,SAVI,QAAQ,IAAI,aAAa,gBAAgBN,KAAW,CAACD,KACvD,QAAQ;AAAA,IACN;AAAA,EAAA,GAQAC,KAAWD,IAEXT,gBAAAA,EAAAA;AAAAA,IAACkB;AAAA,IAAA;AAAA,MACC,KAAAP;AAAA,MACA,aAAU;AAAA,MACJ,CAACQ,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,cAAW;AAAA,MACX,WAAAd;AAAA,MAEA,UAAAL,gBAAAA,EAAAA,OAACJ,GAAA,EAAsB,SAAAC,GACpB,UAAAY,EAAA,GADH,QAAA,IAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA,GAAA,IAEA;AAAA,IAAA;AAAA,IAVF;AAAA,IAAA;AAAA,IAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA;AAAA,IAAA;AAAA,EAAA,IAgBAD,IAEAR,gBAAAA,EAAAA;AAAAA,IAACkB;AAAA,IAAA;AAAA,MACC,KAAAP;AAAA,MACA,aAAU;AAAA,MACJ,CAACQ,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,cAAW;AAAA,MACX,WAAAd;AAAA,MACA,aAAU;AAAA,MAEV,UAAAL,gBAAAA,EAAAA,OAACJ,GAAA,EAAsB,SAAAC,GACpB,UAAAU,8BAAiBa,GAAA,IAAD,QAAA,IAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA,GAAA,IAAkB,EAAA,GADrC,QAAA,IAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA,GAAA,IAEA;AAAA,IAAA;AAAA,IAXF;AAAA,IAAA;AAAA,IAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA;AAAA,IAAA;AAAA,EAAA,IAiBCH,EAAK,SAmBRjB,gBAAAA,EAAAA;AAAAA,IAACkB;AAAA,IAAA;AAAA,MACC,KAAAP;AAAA,MACA,aAAU;AAAA,MACJ,CAACQ,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,WAAAd;AAAA,MAEC,UAAAY,EAAK,IAAI,CAACI,+BACRC,GAAA,EAA0B,KAAAD,EAAA,GAARA,EAAI,IAAvB,IAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA,GAAA,IAAqC,CACtC;AAAA,IAAA;AAAA,IATH;AAAA,IAAA;AAAA,IAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA;AAAA,IAAA;AAAA,EAAA,IAjBErB,gBAAAA,EAAAA;AAAAA,IAACkB;AAAA,IAAA;AAAA,MACC,KAAAP;AAAA,MACA,aAAU;AAAA,MACJ,CAACQ,CAAS,GAAG;AAAA,MACnB,mBAAgB;AAAA,MAChB,cAAW;AAAA,MACX,WAAAd;AAAA,MAEA,UAAAL,gBAAAA,EAAAA,OAACJ,GAAA,EAAsB,SAAAC,GACpB,UAAAS,EAAA,GADH,QAAA,IAAA;AAAA,QAAA,UAAA;AAAA,QAAA,YAAA;AAAA,QAAA,cAAA;AAAA,MAAA,GAAA,IAEA;AAAA,IAAA;AAAA,IAVF;AAAA,IAAA;AAAA,IAAA;AAAA,MAAA,UAAA;AAAA,MAAA,YAAA;AAAA,MAAA,cAAA;AAAA,IAAA;AAAA,IAAA;AAAA,EAAA;AA6BN,CAAC;"}
@@ -1,11 +1,11 @@
1
- import { jsx as o, jsxs as n } from "react/jsx-runtime";
2
- import * as l from "react";
3
- import { shorthands as i } from "../../packages/volt-runtime/dist/vendor/@griffel/core/src/index.js";
4
- import { SLOT_ATTR as g } from "../../packages/volt-runtime/dist/renderer/contract.js";
5
- import { mergeClasses as h } from "../../packages/volt-runtime/dist/vendor/@griffel/core/src/mergeClasses.js";
6
- import { makeVoltStyles as m } from "../../styles/make-styles.js";
7
- import { radiusLg as p, spacingElement1 as c, accent11 as u, accentA8 as w, semAccentSoft as k } from "../../tokens/index.js";
8
- const f = (e) => /* @__PURE__ */ n(
1
+ import { j as a } from "../../vendor/react/jsx-dev-runtime.js";
2
+ import * as m from "react";
3
+ import { shorthands as l } from "../../packages/volt-runtime/dist/vendor/@griffel/core/src/index.js";
4
+ import { SLOT_ATTR as d } from "../../packages/volt-runtime/dist/renderer/contract.js";
5
+ import { mergeClasses as c } from "../../packages/volt-runtime/dist/vendor/@griffel/core/src/mergeClasses.js";
6
+ import { makeVoltStyles as u } from "../../styles/make-styles.js";
7
+ import { radiusLg as p, spacingElement1 as s, accent11 as f, accentA8 as b, semAccentSoft as g } from "../../tokens/index.js";
8
+ const h = (e) => /* @__PURE__ */ a.jsxDEV(
9
9
  "svg",
10
10
  {
11
11
  xmlns: "http://www.w3.org/2000/svg",
@@ -19,11 +19,27 @@ const f = (e) => /* @__PURE__ */ n(
19
19
  strokeLinejoin: "round",
20
20
  ...e,
21
21
  children: [
22
- /* @__PURE__ */ o("path", { d: "m5 12 7-7 7 7" }),
23
- /* @__PURE__ */ o("path", { d: "M12 19V5" })
22
+ /* @__PURE__ */ a.jsxDEV("path", { d: "m5 12 7-7 7 7" }, void 0, !1, {
23
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
24
+ lineNumber: 24,
25
+ columnNumber: 5
26
+ }, void 0),
27
+ /* @__PURE__ */ a.jsxDEV("path", { d: "M12 19V5" }, void 0, !1, {
28
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
29
+ lineNumber: 25,
30
+ columnNumber: 5
31
+ }, void 0)
24
32
  ]
25
- }
26
- ), v = (e) => /* @__PURE__ */ n(
33
+ },
34
+ void 0,
35
+ !0,
36
+ {
37
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
38
+ lineNumber: 12,
39
+ columnNumber: 3
40
+ },
41
+ void 0
42
+ ), x = (e) => /* @__PURE__ */ a.jsxDEV(
27
43
  "svg",
28
44
  {
29
45
  xmlns: "http://www.w3.org/2000/svg",
@@ -37,11 +53,27 @@ const f = (e) => /* @__PURE__ */ n(
37
53
  strokeLinejoin: "round",
38
54
  ...e,
39
55
  children: [
40
- /* @__PURE__ */ o("path", { d: "M12 5v14" }),
41
- /* @__PURE__ */ o("path", { d: "m19 12-7 7-7-7" })
56
+ /* @__PURE__ */ a.jsxDEV("path", { d: "M12 5v14" }, void 0, !1, {
57
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
58
+ lineNumber: 42,
59
+ columnNumber: 5
60
+ }, void 0),
61
+ /* @__PURE__ */ a.jsxDEV("path", { d: "m19 12-7 7-7-7" }, void 0, !1, {
62
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
63
+ lineNumber: 43,
64
+ columnNumber: 5
65
+ }, void 0)
42
66
  ]
43
- }
44
- ), S = (e) => /* @__PURE__ */ n(
67
+ },
68
+ void 0,
69
+ !0,
70
+ {
71
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
72
+ lineNumber: 30,
73
+ columnNumber: 3
74
+ },
75
+ void 0
76
+ ), v = (e) => /* @__PURE__ */ a.jsxDEV(
45
77
  "svg",
46
78
  {
47
79
  xmlns: "http://www.w3.org/2000/svg",
@@ -55,35 +87,51 @@ const f = (e) => /* @__PURE__ */ n(
55
87
  strokeLinejoin: "round",
56
88
  ...e,
57
89
  children: [
58
- /* @__PURE__ */ o("path", { d: "m7 15 5 5 5-5" }),
59
- /* @__PURE__ */ o("path", { d: "m7 9 5-5 5 5" })
90
+ /* @__PURE__ */ a.jsxDEV("path", { d: "m7 15 5 5 5-5" }, void 0, !1, {
91
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
92
+ lineNumber: 60,
93
+ columnNumber: 5
94
+ }, void 0),
95
+ /* @__PURE__ */ a.jsxDEV("path", { d: "m7 9 5-5 5 5" }, void 0, !1, {
96
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
97
+ lineNumber: 61,
98
+ columnNumber: 5
99
+ }, void 0)
60
100
  ]
61
- }
62
- ), b = m({
101
+ },
102
+ void 0,
103
+ !0,
104
+ {
105
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
106
+ lineNumber: 48,
107
+ columnNumber: 3
108
+ },
109
+ void 0
110
+ ), N = u({
63
111
  button: {
64
112
  display: "inline-flex",
65
113
  alignItems: "center",
66
- gap: c,
67
- ...i.paddingBlock("0.125rem"),
68
- ...i.paddingInline(c),
69
- ...i.borderRadius(p),
114
+ gap: s,
115
+ ...l.paddingBlock("0.125rem"),
116
+ ...l.paddingInline(s),
117
+ ...l.borderRadius(p),
70
118
  cursor: "pointer",
71
119
  transitionProperty: "color, background-color, border-color",
72
120
  transitionDuration: "150ms",
73
121
  ":hover": {
74
- backgroundColor: k
122
+ backgroundColor: g
75
123
  },
76
124
  ":focus-visible": {
77
125
  outlineWidth: "2px",
78
126
  outlineStyle: "solid",
79
127
  outlineOffset: "2px",
80
- outlineColor: w
128
+ outlineColor: b
81
129
  }
82
130
  },
83
131
  iconActive: {
84
132
  width: "1rem",
85
133
  height: "1rem",
86
- color: u,
134
+ color: f,
87
135
  flexShrink: 0
88
136
  },
89
137
  iconUnsorted: {
@@ -93,36 +141,60 @@ const f = (e) => /* @__PURE__ */ n(
93
141
  flexShrink: 0
94
142
  }
95
143
  });
96
- function x({ column: e, title: t, className: a }, d) {
97
- const r = b();
98
- return e.getCanSort() ? /* @__PURE__ */ n(
144
+ function w({ column: e, title: r, className: i }, n) {
145
+ const o = N();
146
+ return e.getCanSort() ? /* @__PURE__ */ a.jsxDEV(
99
147
  "span",
100
148
  {
101
- ref: d,
149
+ ref: n,
102
150
  role: "button",
103
151
  tabIndex: 0,
104
152
  "data-slot": "data-table-column-header",
105
- [g]: "data-table-column-header",
153
+ [d]: "data-table-column-header",
106
154
  "data-fs-element": "DataTable-SortButton",
107
155
  onClick: () => e.toggleSorting(),
108
- onKeyDown: (s) => {
109
- (s.key === "Enter" || s.key === " ") && (s.preventDefault(), e.toggleSorting());
156
+ onKeyDown: (t) => {
157
+ (t.key === "Enter" || t.key === " ") && (t.preventDefault(), e.toggleSorting());
110
158
  },
111
- "aria-label": e.getIsSorted() === "asc" ? `${t}, sorted ascending. Click to sort descending.` : e.getIsSorted() === "desc" ? `${t}, sorted descending. Click to remove sorting.` : `${t}. Click to sort ascending.`,
112
- className: h(r.button, a),
159
+ "aria-label": e.getIsSorted() === "asc" ? `${r}, sorted ascending. Click to sort descending.` : e.getIsSorted() === "desc" ? `${r}, sorted descending. Click to remove sorting.` : `${r}. Click to sort ascending.`,
160
+ className: c(o.button, i),
113
161
  children: [
114
- t,
115
- e.getIsSorted() === "asc" && /* @__PURE__ */ o(f, { className: r.iconActive }),
116
- e.getIsSorted() === "desc" && /* @__PURE__ */ o(v, { className: r.iconActive }),
117
- !e.getIsSorted() && /* @__PURE__ */ o(S, { className: r.iconUnsorted })
162
+ r,
163
+ e.getIsSorted() === "asc" && /* @__PURE__ */ a.jsxDEV(h, { className: o.iconActive }, void 0, !1, {
164
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
165
+ lineNumber: 149,
166
+ columnNumber: 9
167
+ }, this),
168
+ e.getIsSorted() === "desc" && /* @__PURE__ */ a.jsxDEV(x, { className: o.iconActive }, void 0, !1, {
169
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
170
+ lineNumber: 152,
171
+ columnNumber: 9
172
+ }, this),
173
+ !e.getIsSorted() && /* @__PURE__ */ a.jsxDEV(v, { className: o.iconUnsorted }, void 0, !1, {
174
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
175
+ lineNumber: 155,
176
+ columnNumber: 9
177
+ }, this)
118
178
  ]
119
- }
120
- ) : /* @__PURE__ */ o("span", { ref: d, className: a, children: t });
179
+ },
180
+ void 0,
181
+ !0,
182
+ {
183
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
184
+ lineNumber: 124,
185
+ columnNumber: 5
186
+ },
187
+ this
188
+ ) : /* @__PURE__ */ a.jsxDEV("span", { ref: n, className: i, children: r }, void 0, !1, {
189
+ fileName: "/Users/wilianmolinari/repos/volt-ui-rollout/release/packages/experimental-griffel/src/components/data-table/data-table-column-header.tsx",
190
+ lineNumber: 117,
191
+ columnNumber: 7
192
+ }, this);
121
193
  }
122
- const T = l.forwardRef(
123
- x
194
+ const V = m.forwardRef(
195
+ w
124
196
  );
125
197
  export {
126
- T as DataTableColumnHeader
198
+ V as DataTableColumnHeader
127
199
  };
128
200
  //# sourceMappingURL=data-table-column-header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-table-column-header.js","sources":["../../../src/components/data-table/data-table-column-header.tsx"],"sourcesContent":["import * as React from \"react\"\nimport type { SVGProps } from \"react\"\nimport type { Column } from \"@tanstack/react-table\"\nimport { mergeClasses, shorthands } from \"@epilot/volt-ui-runtime\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeVoltStyles } from \"../../styles/make-styles\"\nimport * as tokens from \"../../tokens\"\n\n// Sort icons\nconst IconArrowUp = (props: SVGProps<SVGSVGElement>) => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n {...props}\n >\n <path d=\"m5 12 7-7 7 7\" />\n <path d=\"M12 19V5\" />\n </svg>\n)\n\nconst IconArrowDown = (props: SVGProps<SVGSVGElement>) => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n {...props}\n >\n <path d=\"M12 5v14\" />\n <path d=\"m19 12-7 7-7-7\" />\n </svg>\n)\n\nconst IconArrowsSort = (props: SVGProps<SVGSVGElement>) => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n {...props}\n >\n <path d=\"m7 15 5 5 5-5\" />\n <path d=\"m7 9 5-5 5 5\" />\n </svg>\n)\n\nconst useStyles = makeVoltStyles({\n button: {\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: tokens.spacingElement1,\n ...shorthands.paddingBlock(\"0.125rem\"),\n ...shorthands.paddingInline(tokens.spacingElement1),\n ...shorthands.borderRadius(tokens.radiusLg),\n cursor: \"pointer\",\n transitionProperty: \"color, background-color, border-color\",\n transitionDuration: \"150ms\",\n \":hover\": {\n backgroundColor: tokens.semAccentSoft,\n },\n \":focus-visible\": {\n outlineWidth: \"2px\",\n outlineStyle: \"solid\",\n outlineOffset: \"2px\",\n outlineColor: tokens.accentA8,\n },\n },\n iconActive: {\n width: \"1rem\",\n height: \"1rem\",\n color: tokens.accent11,\n flexShrink: 0,\n },\n iconUnsorted: {\n width: \"1rem\",\n height: \"1rem\",\n opacity: 0.4,\n flexShrink: 0,\n },\n})\n\nexport type DataTableColumnHeaderProps<TData = unknown, TValue = unknown> = {\n /** The column instance from Tanstack Table */\n column: Column<TData, TValue>\n /** The header title to display */\n title: string\n /** Additional class name */\n className?: string\n}\n\nfunction DataTableColumnHeaderInner<TData, TValue>(\n { column, title, className }: DataTableColumnHeaderProps<TData, TValue>,\n ref: React.ForwardedRef<HTMLSpanElement>\n) {\n const styles = useStyles()\n\n if (!column.getCanSort()) {\n return (\n <span ref={ref} className={className}>\n {title}\n </span>\n )\n }\n\n return (\n <span\n ref={ref}\n role=\"button\"\n tabIndex={0}\n data-slot=\"data-table-column-header\"\n {...{ [SLOT_ATTR]: \"data-table-column-header\" }}\n data-fs-element=\"DataTable-SortButton\"\n onClick={() => column.toggleSorting()}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n column.toggleSorting()\n }\n }}\n aria-label={\n column.getIsSorted() === \"asc\"\n ? `${title}, sorted ascending. Click to sort descending.`\n : column.getIsSorted() === \"desc\"\n ? `${title}, sorted descending. Click to remove sorting.`\n : `${title}. Click to sort ascending.`\n }\n className={mergeClasses(styles.button, className)}\n >\n {title}\n {column.getIsSorted() === \"asc\" && (\n <IconArrowUp className={styles.iconActive} />\n )}\n {column.getIsSorted() === \"desc\" && (\n <IconArrowDown className={styles.iconActive} />\n )}\n {!column.getIsSorted() && (\n <IconArrowsSort className={styles.iconUnsorted} />\n )}\n </span>\n )\n}\n\nexport const DataTableColumnHeader = React.forwardRef(\n DataTableColumnHeaderInner\n) as <TData = unknown, TValue = unknown>(\n props: DataTableColumnHeaderProps<TData, TValue> & {\n ref?: React.Ref<HTMLSpanElement>\n }\n) => React.ReactElement | null\n"],"names":["IconArrowUp","props","jsxs","jsx","IconArrowDown","IconArrowsSort","useStyles","makeVoltStyles","tokens.spacingElement1","shorthands","tokens.radiusLg","tokens.semAccentSoft","tokens.accentA8","tokens.accent11","DataTableColumnHeaderInner","column","title","className","ref","styles","SLOT_ATTR","e","mergeClasses","DataTableColumnHeader","React"],"mappings":"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"}
1
+ {"version":3,"file":"data-table-column-header.js","sources":["../../../src/components/data-table/data-table-column-header.tsx"],"sourcesContent":["import * as React from \"react\"\nimport type { SVGProps } from \"react\"\nimport type { Column } from \"@tanstack/react-table\"\nimport { mergeClasses, shorthands } from \"@epilot/volt-ui-runtime\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeVoltStyles } from \"../../styles/make-styles\"\nimport * as tokens from \"../../tokens\"\n\n// Sort icons\nconst IconArrowUp = (props: SVGProps<SVGSVGElement>) => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n {...props}\n >\n <path d=\"m5 12 7-7 7 7\" />\n <path d=\"M12 19V5\" />\n </svg>\n)\n\nconst IconArrowDown = (props: SVGProps<SVGSVGElement>) => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n {...props}\n >\n <path d=\"M12 5v14\" />\n <path d=\"m19 12-7 7-7-7\" />\n </svg>\n)\n\nconst IconArrowsSort = (props: SVGProps<SVGSVGElement>) => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n {...props}\n >\n <path d=\"m7 15 5 5 5-5\" />\n <path d=\"m7 9 5-5 5 5\" />\n </svg>\n)\n\nconst useStyles = makeVoltStyles({\n button: {\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: tokens.spacingElement1,\n ...shorthands.paddingBlock(\"0.125rem\"),\n ...shorthands.paddingInline(tokens.spacingElement1),\n ...shorthands.borderRadius(tokens.radiusLg),\n cursor: \"pointer\",\n transitionProperty: \"color, background-color, border-color\",\n transitionDuration: \"150ms\",\n \":hover\": {\n backgroundColor: tokens.semAccentSoft,\n },\n \":focus-visible\": {\n outlineWidth: \"2px\",\n outlineStyle: \"solid\",\n outlineOffset: \"2px\",\n outlineColor: tokens.accentA8,\n },\n },\n iconActive: {\n width: \"1rem\",\n height: \"1rem\",\n color: tokens.accent11,\n flexShrink: 0,\n },\n iconUnsorted: {\n width: \"1rem\",\n height: \"1rem\",\n opacity: 0.4,\n flexShrink: 0,\n },\n})\n\nexport type DataTableColumnHeaderProps<TData = unknown, TValue = unknown> = {\n /** The column instance from Tanstack Table */\n column: Column<TData, TValue>\n /** The header title to display */\n title: string\n /** Additional class name */\n className?: string\n}\n\nfunction DataTableColumnHeaderInner<TData, TValue>(\n { column, title, className }: DataTableColumnHeaderProps<TData, TValue>,\n ref: React.ForwardedRef<HTMLSpanElement>\n) {\n const styles = useStyles()\n\n if (!column.getCanSort()) {\n return (\n <span ref={ref} className={className}>\n {title}\n </span>\n )\n }\n\n return (\n <span\n ref={ref}\n role=\"button\"\n tabIndex={0}\n data-slot=\"data-table-column-header\"\n {...{ [SLOT_ATTR]: \"data-table-column-header\" }}\n data-fs-element=\"DataTable-SortButton\"\n onClick={() => column.toggleSorting()}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n column.toggleSorting()\n }\n }}\n aria-label={\n column.getIsSorted() === \"asc\"\n ? `${title}, sorted ascending. Click to sort descending.`\n : column.getIsSorted() === \"desc\"\n ? `${title}, sorted descending. Click to remove sorting.`\n : `${title}. Click to sort ascending.`\n }\n className={mergeClasses(styles.button, className)}\n >\n {title}\n {column.getIsSorted() === \"asc\" && (\n <IconArrowUp className={styles.iconActive} />\n )}\n {column.getIsSorted() === \"desc\" && (\n <IconArrowDown className={styles.iconActive} />\n )}\n {!column.getIsSorted() && (\n <IconArrowsSort className={styles.iconUnsorted} />\n )}\n </span>\n )\n}\n\nexport const DataTableColumnHeader = React.forwardRef(\n DataTableColumnHeaderInner\n) as <TData = unknown, TValue = unknown>(\n props: DataTableColumnHeaderProps<TData, TValue> & {\n ref?: React.Ref<HTMLSpanElement>\n }\n) => React.ReactElement | null\n"],"names":["IconArrowUp","props","jsxDEV","this","IconArrowDown","IconArrowsSort","useStyles","makeVoltStyles","tokens.spacingElement1","shorthands","tokens.radiusLg","tokens.semAccentSoft","tokens.accentA8","tokens.accent11","DataTableColumnHeaderInner","column","title","className","ref","styles","SLOT_ATTR","e","mergeClasses","DataTableColumnHeader","React"],"mappings":"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"}