@economic/taco 1.37.0 → 1.38.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. package/dist/components/Checkbox/Checkbox.d.ts +0 -1
  2. package/dist/components/Input/util.d.ts +1 -1
  3. package/dist/components/Table2/hooks/useColumnDefinitions.d.ts +1 -1
  4. package/dist/components/Table2/types.d.ts +1 -1
  5. package/dist/components/Tabs/Tabs.d.ts +0 -1
  6. package/dist/esm/index.css +0 -20
  7. package/dist/esm/packages/taco/src/components/Button/Button.js +0 -2
  8. package/dist/esm/packages/taco/src/components/Button/Button.js.map +1 -1
  9. package/dist/esm/packages/taco/src/components/Button/util.js +7 -7
  10. package/dist/esm/packages/taco/src/components/Button/util.js.map +1 -1
  11. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js +7 -8
  12. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js.map +1 -1
  13. package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js +5 -8
  14. package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js.map +1 -1
  15. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js +6 -5
  16. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js.map +1 -1
  17. package/dist/esm/packages/taco/src/components/Field/Field.js +1 -1
  18. package/dist/esm/packages/taco/src/components/Field/Field.js.map +1 -1
  19. package/dist/esm/packages/taco/src/components/Header/components/Button.js +1 -1
  20. package/dist/esm/packages/taco/src/components/Header/components/Button.js.map +1 -1
  21. package/dist/esm/packages/taco/src/components/Header/components/Link.js +2 -2
  22. package/dist/esm/packages/taco/src/components/Header/components/Link.js.map +1 -1
  23. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js +1 -3
  24. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js.map +1 -1
  25. package/dist/esm/packages/taco/src/components/Input/Input.js +1 -1
  26. package/dist/esm/packages/taco/src/components/Input/Input.js.map +1 -1
  27. package/dist/esm/packages/taco/src/components/Input/util.js +11 -11
  28. package/dist/esm/packages/taco/src/components/Input/util.js.map +1 -1
  29. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js +6 -4
  30. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js.map +1 -1
  31. package/dist/esm/packages/taco/src/components/Select2/components/Option.js +1 -2
  32. package/dist/esm/packages/taco/src/components/Select2/components/Option.js.map +1 -1
  33. package/dist/esm/packages/taco/src/components/Switch/Switch.js +3 -3
  34. package/dist/esm/packages/taco/src/components/Switch/Switch.js.map +1 -1
  35. package/dist/esm/packages/taco/src/components/Table2/components/column/Header.js +4 -2
  36. package/dist/esm/packages/taco/src/components/Table2/components/column/Header.js.map +1 -1
  37. package/dist/esm/packages/taco/src/components/Table2/hooks/useColumnDefinitions.js +4 -3
  38. package/dist/esm/packages/taco/src/components/Table2/hooks/useColumnDefinitions.js.map +1 -1
  39. package/dist/esm/packages/taco/src/components/Table2/hooks/useGridTemplate.js +3 -1
  40. package/dist/esm/packages/taco/src/components/Table2/hooks/useGridTemplate.js.map +1 -1
  41. package/dist/esm/packages/taco/src/components/Table2/types.js.map +1 -1
  42. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js +21 -8
  43. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js.map +1 -1
  44. package/dist/index.css +0 -20
  45. package/dist/taco.cjs.development.js +83 -71
  46. package/dist/taco.cjs.development.js.map +1 -1
  47. package/dist/taco.cjs.production.min.js +1 -1
  48. package/dist/taco.cjs.production.min.js.map +1 -1
  49. package/package.json +2 -2
  50. package/plugins/tailwindcss-aria-attributes.js +20 -36
  51. package/tailwind.config.js +6 -2
  52. package/types.json +7 -4
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../../../../src/components/Table2/types.ts"],"sourcesContent":["import React from 'react';\nimport {\n ColumnFiltersState,\n ColumnOrderState,\n ColumnSizingState,\n OnChangeFn,\n Row,\n SortingState,\n VisibilityState,\n} from '@tanstack/react-table';\nimport { DialogProps } from '../Dialog/Dialog';\nimport { IconName } from '../Icon/Icon';\nimport { MenuProps } from '../Menu/Menu';\n\nexport enum Table2FilterComparator {\n Contains,\n DoesNotContain,\n IsEqualTo,\n IsNotEqualTo,\n IsGreaterThan,\n IsLessThan,\n IsBetween,\n IsOneOf,\n IsNoneOf,\n IsAllOf,\n IsEmpty,\n IsNotEmpty,\n}\n\nexport type Table2Filter<TType = any> = {\n comparator?: Table2FilterComparator;\n value: TType | TType[];\n};\n\nexport type ColumnOffsetState = Record<string, number | undefined>;\nexport type RowDensity = 'compact' | 'normal' | 'comfortable' | 'spacious';\nexport type CellAlignment = 'left' | 'center' | 'right';\n\nexport type SortDirection = 'asc' | 'desc';\nexport type ColumnDataType = 'auto' | 'alphanumeric' | 'alphanumericCaseSensitive' | 'datetime' | 'boolean';\n\nexport type Table2ColumnHeaderRenderer<TType = any> = (value: any, row: TType) => JSX.Element | string | null;\nexport type Table2ColumnHeaderMenu = (props: Partial<MenuProps>) => JSX.Element;\nexport type Table2ColumnFooterRenderer = (values: any[]) => JSX.Element | string | null;\n\nexport type Table2ColumnControlProps = {\n className?: string;\n disabled?: boolean;\n invalid?: boolean;\n onBlur: (newValue?: any) => Promise<void>;\n onFocus: React.FocusEventHandler;\n readOnly?: boolean;\n ref: React.RefObject<HTMLElement>;\n setValue: (value: any) => void;\n value: any;\n // This is a temporary fix to enable up/down arrow key shortcuts on input in quick mode. For some reason,\n // the preventDefault is true on Taco Input, so the keyboard shortcuts doesn't work. By adding this\n // data attribute we make sure the event is coming from a control component, and then we can make sure\n // keyboard shortcut works as expected.\n 'data-inline-editing-component'?: 'true';\n};\nexport type Table2ColumnControlRenderer<TType = any> =\n | ((props: Table2ColumnControlProps, row?: TType) => JSX.Element)\n | 'datepicker'\n | 'input'\n | 'switch';\n\nexport type SortFn<TType = unknown> = (rowA: TType, rowB: TType, columnId: string) => -1 | 0 | 1;\n\nexport type Table2ColumnProps<TType = any> = {\n accessor: string;\n align?: CellAlignment;\n className?: string | ((row: Row<TType>) => string);\n control?: Table2ColumnControlRenderer<TType>;\n dataType?: ColumnDataType;\n defaultActiveColumnIndex?: number;\n defaultActiveRowIndex?: number;\n defaultHidden?: boolean;\n disableFiltering?: boolean;\n disableHiding?: boolean;\n disableReordering?: boolean;\n disableResizing?: boolean;\n disableSorting?: boolean;\n defaultWidth?: number;\n header: string;\n headerClassName?: string;\n footer?: Table2ColumnFooterRenderer;\n renderer?: Table2ColumnHeaderRenderer<TType>;\n menu?: Table2ColumnHeaderMenu;\n minWidth?: number;\n sort?: SortDirection;\n sortFn?: SortFn<TType>;\n tooltip?: string;\n};\n\nexport type Table2ActionProps<TType> = {\n dialog?: (rows: TType[], resetSelectedRows: () => void) => (props: Partial<DialogProps>) => JSX.Element;\n disabled?: boolean | ((rows: TType[]) => boolean);\n icon: IconName | ((rows: TType[]) => IconName);\n onClick?: (rows: TType[], resetSelectedRows: () => void) => void;\n text: string | ((rows: TType[]) => string);\n visible?: boolean | ((rows: TType[]) => boolean);\n};\n\nexport type Table2RowActionRenderer<TType = unknown> = (row: TType) => JSX.Element | null;\n\nexport type Table2Settings = {\n columnFilters?: ColumnFiltersState;\n columnOrder?: ColumnOrderState;\n columnSizing?: ColumnSizingState;\n columnVisibility?: VisibilityState;\n frozenColumnCount?: number;\n globalFilter?: string;\n rowDensity?: RowDensity;\n sorting?: SortingState;\n};\n\nexport type RowClickHandler<TType = any> = (row: TType) => void;\nexport type RowDragHandler<TType = any> = (\n rows: TType[],\n showPlaceholder: (string) => void,\n setDataTransfer: (data: string) => void\n) => void;\nexport type RowDropHandler<TType = any> = (event: React.DragEvent, row: TType) => void;\nexport type RowSelectionHandler<TType = any> = (rows: TType[]) => void;\nexport type RowExpansionRenderer<TType = any> = (row: TType) => (() => JSX.Element) | null;\nexport type SortHandler = OnChangeFn<SortingState>;\nexport type SettingsHandler = OnChangeFn<Table2Settings>;\nexport type SaveHandlerErrorResponse = Record<string, string | undefined | null> | null;\nexport type SaveHandler<TType = any> = (row: TType, accessor: string) => Promise<SaveHandlerErrorResponse | void>;\n\nexport type DataColumnIndexes = {\n dataColumnStartOffset: number;\n dataColumnEndOffset: number;\n};\n\nexport type Table2Children<TType = any> = (React.ReactElement<Table2ColumnProps<TType>> | boolean | null | undefined)[];\n\nexport type Table2Props<TType = any> = Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> & {\n actionsForRow?: Table2RowActionRenderer<TType>[];\n actionsForRowLength?: number;\n children: Table2Children;\n className?: string;\n data: TType[];\n defaultActiveRowIndex?: number;\n disableColumnFiltering?: boolean;\n disableColumnHiding?: boolean;\n disableColumnFreezing?: boolean;\n disableColumnReordering?: boolean;\n disableColumnResizing?: boolean;\n disableRowDensity?: boolean;\n disableRowExpansion?: boolean;\n disableRowSelection?: boolean;\n disableMultipleRowSelection?: boolean;\n disableSearch?: boolean;\n disableSorting?: boolean;\n emptyState?: () => JSX.Element;\n expandedRowRenderer?: RowExpansionRenderer<TType>;\n length?: number;\n loadMore?: () => Promise<void>;\n manualColumnFiltering?: boolean;\n manualSearch?: boolean;\n manualSorting?: boolean;\n onChangeSettings?: SettingsHandler;\n onRowClick?: RowClickHandler<TType>;\n onRowDrag?: RowDragHandler<TType>;\n onRowDrop?: RowDropHandler<TType>;\n onRowSelect?: RowSelectionHandler<TType>;\n onSave?: SaveHandler<TType>;\n toolbarLeft?: JSX.Element;\n toolbarRight?: JSX.Element;\n settings?: Table2Settings;\n _experimentalActionsForTable?: Table2ActionProps<TType>[];\n _experimentalActionsForTableSummary?: (rows: TType[]) => JSX.Element | string;\n};\n"],"names":["Table2FilterComparator"],"mappings":"IAcYA;AAAZ,WAAYA,sBAAsB;EAC9BA,2EAAQ;EACRA,uFAAc;EACdA,6EAAS;EACTA,mFAAY;EACZA,qFAAa;EACbA,+EAAU;EACVA,6EAAS;EACTA,yEAAO;EACPA,2EAAQ;EACRA,yEAAO;EACPA,0EAAO;EACPA,gFAAU;AACd,CAAC,EAbWA,sBAAsB,KAAtBA,sBAAsB;;;;"}
1
+ {"version":3,"file":"types.js","sources":["../../../../../../../src/components/Table2/types.ts"],"sourcesContent":["import React from 'react';\nimport {\n ColumnFiltersState,\n ColumnOrderState,\n ColumnSizingState,\n OnChangeFn,\n Row,\n SortingState,\n VisibilityState,\n} from '@tanstack/react-table';\nimport { DialogProps } from '../Dialog/Dialog';\nimport { IconName } from '../Icon/Icon';\nimport { MenuProps } from '../Menu/Menu';\n\nexport enum Table2FilterComparator {\n Contains,\n DoesNotContain,\n IsEqualTo,\n IsNotEqualTo,\n IsGreaterThan,\n IsLessThan,\n IsBetween,\n IsOneOf,\n IsNoneOf,\n IsAllOf,\n IsEmpty,\n IsNotEmpty,\n}\n\nexport type Table2Filter<TType = any> = {\n comparator?: Table2FilterComparator;\n value: TType | TType[];\n};\n\nexport type ColumnOffsetState = Record<string, number | undefined>;\nexport type RowDensity = 'compact' | 'normal' | 'comfortable' | 'spacious';\nexport type CellAlignment = 'left' | 'center' | 'right';\n\nexport type SortDirection = 'asc' | 'desc';\nexport type ColumnDataType = 'auto' | 'alphanumeric' | 'alphanumericCaseSensitive' | 'datetime' | 'boolean';\n\nexport type Table2ColumnHeaderRenderer<TType = any> = (value: any, row: TType) => JSX.Element | string | null;\nexport type Table2ColumnHeaderMenu = (props: Partial<MenuProps>) => JSX.Element;\nexport type Table2ColumnFooterRenderer = (values: any[]) => JSX.Element | string | null;\n\nexport type Table2ColumnControlProps = {\n className?: string;\n disabled?: boolean;\n invalid?: boolean;\n onBlur: (newValue?: any) => Promise<void>;\n onFocus: React.FocusEventHandler;\n readOnly?: boolean;\n ref: React.RefObject<HTMLElement>;\n setValue: (value: any) => void;\n value: any;\n // This is a temporary fix to enable up/down arrow key shortcuts on input in quick mode. For some reason,\n // the preventDefault is true on Taco Input, so the keyboard shortcuts doesn't work. By adding this\n // data attribute we make sure the event is coming from a control component, and then we can make sure\n // keyboard shortcut works as expected.\n 'data-inline-editing-component'?: 'true';\n};\nexport type Table2ColumnControlRenderer<TType = any> =\n | ((props: Table2ColumnControlProps, row?: TType) => JSX.Element)\n | 'datepicker'\n | 'input'\n | 'switch';\n\nexport type SortFn<TType = unknown> = (rowA: TType, rowB: TType, columnId: string) => -1 | 0 | 1;\n\nexport type Table2ColumnProps<TType = any> = {\n accessor: string;\n align?: CellAlignment;\n className?: string | ((row: Row<TType>) => string);\n control?: Table2ColumnControlRenderer<TType>;\n dataType?: ColumnDataType;\n defaultActiveColumnIndex?: number;\n defaultActiveRowIndex?: number;\n defaultHidden?: boolean;\n disableFiltering?: boolean;\n disableHiding?: boolean;\n disableReordering?: boolean;\n disableResizing?: boolean;\n disableSorting?: boolean;\n defaultWidth?: number | 'grow';\n header: string;\n headerClassName?: string;\n footer?: Table2ColumnFooterRenderer;\n renderer?: Table2ColumnHeaderRenderer<TType>;\n menu?: Table2ColumnHeaderMenu;\n minWidth?: number;\n sort?: SortDirection;\n sortFn?: SortFn<TType>;\n tooltip?: string;\n};\n\nexport type Table2ActionProps<TType> = {\n dialog?: (rows: TType[], resetSelectedRows: () => void) => (props: Partial<DialogProps>) => JSX.Element;\n disabled?: boolean | ((rows: TType[]) => boolean);\n icon: IconName | ((rows: TType[]) => IconName);\n onClick?: (rows: TType[], resetSelectedRows: () => void) => void;\n text: string | ((rows: TType[]) => string);\n visible?: boolean | ((rows: TType[]) => boolean);\n};\n\nexport type Table2RowActionRenderer<TType = unknown> = (row: TType) => JSX.Element | null;\n\nexport type Table2Settings = {\n columnFilters?: ColumnFiltersState;\n columnOrder?: ColumnOrderState;\n columnSizing?: ColumnSizingState;\n columnVisibility?: VisibilityState;\n frozenColumnCount?: number;\n globalFilter?: string;\n rowDensity?: RowDensity;\n sorting?: SortingState;\n};\n\nexport type RowClickHandler<TType = any> = (row: TType) => void;\nexport type RowDragHandler<TType = any> = (\n rows: TType[],\n showPlaceholder: (string) => void,\n setDataTransfer: (data: string) => void\n) => void;\nexport type RowDropHandler<TType = any> = (event: React.DragEvent, row: TType) => void;\nexport type RowSelectionHandler<TType = any> = (rows: TType[]) => void;\nexport type RowExpansionRenderer<TType = any> = (row: TType) => (() => JSX.Element) | null;\nexport type SortHandler = OnChangeFn<SortingState>;\nexport type SettingsHandler = OnChangeFn<Table2Settings>;\nexport type SaveHandlerErrorResponse = Record<string, string | undefined | null> | null;\nexport type SaveHandler<TType = any> = (row: TType, accessor: string) => Promise<SaveHandlerErrorResponse | void>;\n\nexport type DataColumnIndexes = {\n dataColumnStartOffset: number;\n dataColumnEndOffset: number;\n};\n\nexport type Table2Children<TType = any> = (React.ReactElement<Table2ColumnProps<TType>> | boolean | null | undefined)[];\n\nexport type Table2Props<TType = any> = Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> & {\n actionsForRow?: Table2RowActionRenderer<TType>[];\n actionsForRowLength?: number;\n children: Table2Children;\n className?: string;\n data: TType[];\n defaultActiveRowIndex?: number;\n disableColumnFiltering?: boolean;\n disableColumnHiding?: boolean;\n disableColumnFreezing?: boolean;\n disableColumnReordering?: boolean;\n disableColumnResizing?: boolean;\n disableRowDensity?: boolean;\n disableRowExpansion?: boolean;\n disableRowSelection?: boolean;\n disableMultipleRowSelection?: boolean;\n disableSearch?: boolean;\n disableSorting?: boolean;\n emptyState?: () => JSX.Element;\n expandedRowRenderer?: RowExpansionRenderer<TType>;\n length?: number;\n loadMore?: () => Promise<void>;\n manualColumnFiltering?: boolean;\n manualSearch?: boolean;\n manualSorting?: boolean;\n onChangeSettings?: SettingsHandler;\n onRowClick?: RowClickHandler<TType>;\n onRowDrag?: RowDragHandler<TType>;\n onRowDrop?: RowDropHandler<TType>;\n onRowSelect?: RowSelectionHandler<TType>;\n onSave?: SaveHandler<TType>;\n toolbarLeft?: JSX.Element;\n toolbarRight?: JSX.Element;\n settings?: Table2Settings;\n _experimentalActionsForTable?: Table2ActionProps<TType>[];\n _experimentalActionsForTableSummary?: (rows: TType[]) => JSX.Element | string;\n};\n"],"names":["Table2FilterComparator"],"mappings":"IAcYA;AAAZ,WAAYA,sBAAsB;EAC9BA,2EAAQ;EACRA,uFAAc;EACdA,6EAAS;EACTA,mFAAY;EACZA,qFAAa;EACbA,+EAAU;EACVA,6EAAS;EACTA,yEAAO;EACPA,2EAAQ;EACRA,yEAAO;EACPA,0EAAO;EACPA,gFAAU;AACd,CAAC,EAbWA,sBAAsB,KAAtBA,sBAAsB;;;;"}
@@ -1,5 +1,6 @@
1
1
  import { forwardRef, createElement } from 'react';
2
2
  import cn from 'classnames';
3
+ import { getButtonClasses } from '../Button/util.js';
3
4
  import { Root, List, Trigger, Content } from '@radix-ui/react-tabs';
4
5
 
5
6
  const Tabs = /*#__PURE__*/forwardRef(function Tabs(props, ref) {
@@ -11,7 +12,7 @@ const Tabs = /*#__PURE__*/forwardRef(function Tabs(props, ref) {
11
12
  orientation = 'horizontal',
12
13
  ...otherProps
13
14
  } = props;
14
- const className = cn('yt-tabs', `yt-tabs--${orientation}`, {
15
+ const className = cn({
15
16
  'flex w-full': orientation === 'vertical'
16
17
  }, props.className);
17
18
  return /*#__PURE__*/createElement(Root, Object.assign({}, otherProps, {
@@ -26,7 +27,7 @@ const Tabs = /*#__PURE__*/forwardRef(function Tabs(props, ref) {
26
27
  }), children);
27
28
  });
28
29
  const TabList = /*#__PURE__*/forwardRef(function Tab(props, ref) {
29
- const className = cn('yt-tab__list border-b border-grey-300 flex flex-row m-0 mb-4', props.className);
30
+ const className = cn('border-grey-300 flex flex-row m-0 mb-4', 'aria-orientation-horizontal:border-b', 'aria-orientation-vertical:border-r aria-orientation-vertical:m-0 aria-orientation-vertical:mr-4 aria-orientation-vertical:flex-col ', props.className);
30
31
  return /*#__PURE__*/createElement(List, Object.assign({}, props, {
31
32
  className: className,
32
33
  ref: ref
@@ -34,19 +35,31 @@ const TabList = /*#__PURE__*/forwardRef(function Tab(props, ref) {
34
35
  });
35
36
  const TabTrigger = /*#__PURE__*/forwardRef(function Tab(props, ref) {
36
37
  const {
38
+ children,
37
39
  id,
38
40
  disabled,
39
41
  ...otherProps
40
42
  } = props;
41
- const className = cn('yt-tab bg-transparent border-b-2 border-transparent text-grey-700 m-0 py-2 px-4', disabled ? 'cursor-not-allowed !text-grey-500' : 'cursor-pointer rounded-t hover:border-grey-300 aria-selected:border-blue-500 aria-selected:text-black aria-selected:hover:border-blue-300 hover:text-black active:yt-focus active:border-blue-500 focus:yt-focus focus:border-blue-500', props.className);
43
+ const triggerClassName = cn('group relative p-0.5 outline-none disabled:cursor-not-allowed disabled:text-black/50',
44
+ // horizontal
45
+ '[[aria-orientation="horizontal"]_&]:pb-1',
46
+ // horizontal
47
+ '[[aria-orientation="vertical"]_&]:pr-1');
48
+ const buttonClassName = cn(getButtonClasses(), 'group-focus-visible:yt-focus-inset group-enabled:group-hover:wcag-grey-200 pointer-events-none rounded px-3');
49
+ const activeClassName = cn('pointer-events-none absolute hidden bg-blue-500 group-aria-selected:flex',
50
+ // horizontal
51
+ '[[aria-orientation="horizontal"]_&]:rounded-t-sm [[aria-orientation="horizontal"]_&]:bottom-0 [[aria-orientation="horizontal"]_&]:left-0 [[aria-orientation="horizontal"]_&]:right-0 [[aria-orientation="horizontal"]_&]:-mb-px [[aria-orientation="horizontal"]_&]:h-0.5',
52
+ // vertical
53
+ '[[aria-orientation="vertical"]_&]:rounded-l-sm [[aria-orientation="vertical"]_&]:right-0 [[aria-orientation="vertical"]_&]:top-0 [[aria-orientation="vertical"]_&]:bottom-0 [[aria-orientation="vertical"]_&]:-mr-px [[aria-orientation="vertical"]_&]:w-0.5');
42
54
  return /*#__PURE__*/createElement(Trigger, Object.assign({}, otherProps, {
43
- className: className,
55
+ className: triggerClassName,
44
56
  disabled: disabled,
45
57
  ref: ref,
46
- style: {
47
- transition: 'border 0.2s ease-in'
48
- },
49
58
  value: id
59
+ }), /*#__PURE__*/createElement("span", {
60
+ className: buttonClassName
61
+ }, children), /*#__PURE__*/createElement("span", {
62
+ className: activeClassName
50
63
  }));
51
64
  });
52
65
  const TabContent = /*#__PURE__*/forwardRef(function Tab(props, ref) {
@@ -54,7 +67,7 @@ const TabContent = /*#__PURE__*/forwardRef(function Tab(props, ref) {
54
67
  id,
55
68
  ...otherProps
56
69
  } = props;
57
- const className = cn('yt-tab__panel outline-none', props.className);
70
+ const className = cn('[&[data-orientation="vertical"]]:grow outline-none', props.className);
58
71
  return /*#__PURE__*/createElement(Content, Object.assign({}, otherProps, {
59
72
  className: className,
60
73
  ref: ref,
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.js","sources":["../../../../../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import * as React from 'react';\nimport cn from 'classnames';\nimport * as TabsPrimitive from '@radix-ui/react-tabs';\n\nimport { Orientation } from '../../types';\nimport './Tabs.css';\n\nexport type TabsProps = React.HTMLAttributes<HTMLDivElement> & {\n /**\n * The controlled value of the tab to activate. Should be used in conjunction with `onChange`.\n */\n id?: string;\n /**\n * Set which tab is selected on mount.\n * This has to be one of the existing ids provided for tabs\n */\n defaultId?: string;\n /**\n * Content should be one or an array of `Tabs.Trigger` components inside `Tabs.List` and then\n * followed by one or an array of `Tabs.Content`.\n * *Note* that there can also be tabs that are rendered conditionally.\n */\n children: React.ReactNode;\n /**\n * Define orientation of tabs.\n * @defaultValue horizontal\n */\n orientation?: Orientation;\n /**\n * Callback that is called when tab is changed.\n */\n onChange?: (id: string) => void;\n};\n\nexport type TabListProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport type TabTriggerProps = React.HTMLAttributes<HTMLButtonElement> & {\n /**\n * A unique value that associates the trigger with a content.\n */\n id: string;\n /**\n * When true, prevents the user from interacting with the tab.\n */\n disabled?: boolean;\n};\n\nexport type TabContentProps = React.HTMLAttributes<HTMLDivElement> & {\n /**\n * A unique value that associates the content with a trigger.\n */\n id: string;\n};\n\nexport type ForwardedTabsWithStatics = React.ForwardRefExoticComponent<TabsProps & React.RefAttributes<HTMLDivElement>> & {\n /** Tab list component containing all tab triggers, rendered in a `Tabs` group component */\n List: React.ForwardRefExoticComponent<TabListProps & React.RefAttributes<HTMLDivElement>>;\n /** Tab trigger component rendered in a `Tabs.List` component */\n Trigger: React.ForwardRefExoticComponent<TabTriggerProps & React.RefAttributes<HTMLButtonElement>>;\n /** Tab content component rendered in a `Tabs` group component */\n Content: React.ForwardRefExoticComponent<TabContentProps & React.RefAttributes<HTMLDivElement>>;\n};\n\nexport const Tabs = React.forwardRef(function Tabs(props: TabsProps, ref: React.Ref<HTMLDivElement>) {\n const { id, defaultId, children, onChange, orientation = 'horizontal', ...otherProps } = props;\n const className = cn(\n 'yt-tabs',\n `yt-tabs--${orientation}`,\n {\n 'flex w-full': orientation === 'vertical',\n },\n props.className\n );\n\n return (\n <TabsPrimitive.Root\n {...otherProps}\n className={className}\n data-taco=\"tabs\"\n defaultValue={defaultId}\n dir=\"ltr\"\n onValueChange={onChange}\n orientation={orientation}\n ref={ref}\n value={id}>\n {children}\n </TabsPrimitive.Root>\n );\n}) as ForwardedTabsWithStatics;\n\nconst TabList = React.forwardRef(function Tab(props: TabListProps, ref: React.Ref<HTMLDivElement>) {\n const className = cn('yt-tab__list border-b border-grey-300 flex flex-row m-0 mb-4', props.className);\n\n return <TabsPrimitive.List {...props} className={className} ref={ref} />;\n});\n\nconst TabTrigger = React.forwardRef(function Tab(props: TabTriggerProps, ref: React.Ref<HTMLButtonElement>) {\n const { id, disabled, ...otherProps } = props;\n const className = cn(\n 'yt-tab bg-transparent border-b-2 border-transparent text-grey-700 m-0 py-2 px-4',\n disabled\n ? 'cursor-not-allowed !text-grey-500'\n : 'cursor-pointer rounded-t hover:border-grey-300 aria-selected:border-blue-500 aria-selected:text-black aria-selected:hover:border-blue-300 hover:text-black active:yt-focus active:border-blue-500 focus:yt-focus focus:border-blue-500',\n props.className\n );\n\n return (\n <TabsPrimitive.Trigger\n {...otherProps}\n className={className}\n disabled={disabled}\n ref={ref}\n style={{\n transition: 'border 0.2s ease-in',\n }}\n value={id}\n />\n );\n});\n\nconst TabContent = React.forwardRef(function Tab(props: TabContentProps, ref: React.Ref<HTMLDivElement>) {\n const { id, ...otherProps } = props;\n const className = cn('yt-tab__panel outline-none', props.className);\n\n return <TabsPrimitive.Content {...otherProps} className={className} ref={ref} value={id} />;\n});\n\nTabs.List = TabList;\nTabs.Trigger = TabTrigger;\nTabs.Content = TabContent;\n"],"names":["Tabs","React","props","ref","id","defaultId","children","onChange","orientation","otherProps","className","cn","TabsPrimitive","defaultValue","dir","onValueChange","value","TabList","Tab","TabTrigger","disabled","style","transition","TabContent","List","Trigger","Content"],"mappings":";;;;MA+DaA,IAAI,gBAAGC,UAAgB,CAAC,SAASD,IAAI,CAACE,KAAgB,EAAEC,GAA8B;EAC/F,MAAM;IAAEC,EAAE;IAAEC,SAAS;IAAEC,QAAQ;IAAEC,QAAQ;IAAEC,WAAW,GAAG,YAAY;IAAE,GAAGC;GAAY,GAAGP,KAAK;EAC9F,MAAMQ,SAAS,GAAGC,EAAE,CAChB,SAAS,cACGH,aAAa,EACzB;IACI,aAAa,EAAEA,WAAW,KAAK;GAClC,EACDN,KAAK,CAACQ,SAAS,CAClB;EAED,oBACIT,cAACW,IAAkB,oBACXH,UAAU;IACdC,SAAS,EAAEA,SAAS;iBACV,MAAM;IAChBG,YAAY,EAAER,SAAS;IACvBS,GAAG,EAAC,KAAK;IACTC,aAAa,EAAER,QAAQ;IACvBC,WAAW,EAAEA,WAAW;IACxBL,GAAG,EAAEA,GAAG;IACRa,KAAK,EAAEZ;MACNE,QAAQ,CACQ;AAE7B,CAAC;AAED,MAAMW,OAAO,gBAAGhB,UAAgB,CAAC,SAASiB,GAAG,CAAChB,KAAmB,EAAEC,GAA8B;EAC7F,MAAMO,SAAS,GAAGC,EAAE,CAAC,8DAA8D,EAAET,KAAK,CAACQ,SAAS,CAAC;EAErG,oBAAOT,cAACW,IAAkB,oBAAKV,KAAK;IAAEQ,SAAS,EAAEA,SAAS;IAAEP,GAAG,EAAEA;KAAO;AAC5E,CAAC,CAAC;AAEF,MAAMgB,UAAU,gBAAGlB,UAAgB,CAAC,SAASiB,GAAG,CAAChB,KAAsB,EAAEC,GAAiC;EACtG,MAAM;IAAEC,EAAE;IAAEgB,QAAQ;IAAE,GAAGX;GAAY,GAAGP,KAAK;EAC7C,MAAMQ,SAAS,GAAGC,EAAE,CAChB,iFAAiF,EACjFS,QAAQ,GACF,mCAAmC,GACnC,wOAAwO,EAC9OlB,KAAK,CAACQ,SAAS,CAClB;EAED,oBACIT,cAACW,OAAqB,oBACdH,UAAU;IACdC,SAAS,EAAEA,SAAS;IACpBU,QAAQ,EAAEA,QAAQ;IAClBjB,GAAG,EAAEA,GAAG;IACRkB,KAAK,EAAE;MACHC,UAAU,EAAE;KACf;IACDN,KAAK,EAAEZ;KACT;AAEV,CAAC,CAAC;AAEF,MAAMmB,UAAU,gBAAGtB,UAAgB,CAAC,SAASiB,GAAG,CAAChB,KAAsB,EAAEC,GAA8B;EACnG,MAAM;IAAEC,EAAE;IAAE,GAAGK;GAAY,GAAGP,KAAK;EACnC,MAAMQ,SAAS,GAAGC,EAAE,CAAC,4BAA4B,EAAET,KAAK,CAACQ,SAAS,CAAC;EAEnE,oBAAOT,cAACW,OAAqB,oBAAKH,UAAU;IAAEC,SAAS,EAAEA,SAAS;IAAEP,GAAG,EAAEA,GAAG;IAAEa,KAAK,EAAEZ;KAAM;AAC/F,CAAC,CAAC;AAEFJ,IAAI,CAACwB,IAAI,GAAGP,OAAO;AACnBjB,IAAI,CAACyB,OAAO,GAAGN,UAAU;AACzBnB,IAAI,CAAC0B,OAAO,GAAGH,UAAU;;;;"}
1
+ {"version":3,"file":"Tabs.js","sources":["../../../../../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import * as React from 'react';\nimport cn from 'classnames';\nimport * as TabsPrimitive from '@radix-ui/react-tabs';\nimport { Orientation } from '../../types';\nimport { getButtonClasses } from '../Button/util';\n\nexport type TabsProps = React.HTMLAttributes<HTMLDivElement> & {\n /**\n * The controlled value of the tab to activate. Should be used in conjunction with `onChange`.\n */\n id?: string;\n /**\n * Set which tab is selected on mount.\n * This has to be one of the existing ids provided for tabs\n */\n defaultId?: string;\n /**\n * Content should be one or an array of `Tabs.Trigger` components inside `Tabs.List` and then\n * followed by one or an array of `Tabs.Content`.\n * *Note* that there can also be tabs that are rendered conditionally.\n */\n children: React.ReactNode;\n /**\n * Define orientation of tabs.\n * @defaultValue horizontal\n */\n orientation?: Orientation;\n /**\n * Callback that is called when tab is changed.\n */\n onChange?: (id: string) => void;\n};\n\nexport type TabListProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport type TabTriggerProps = React.HTMLAttributes<HTMLButtonElement> & {\n /**\n * A unique value that associates the trigger with a content.\n */\n id: string;\n /**\n * When true, prevents the user from interacting with the tab.\n */\n disabled?: boolean;\n};\n\nexport type TabContentProps = React.HTMLAttributes<HTMLDivElement> & {\n /**\n * A unique value that associates the content with a trigger.\n */\n id: string;\n};\n\nexport type ForwardedTabsWithStatics = React.ForwardRefExoticComponent<TabsProps & React.RefAttributes<HTMLDivElement>> & {\n /** Tab list component containing all tab triggers, rendered in a `Tabs` group component */\n List: React.ForwardRefExoticComponent<TabListProps & React.RefAttributes<HTMLDivElement>>;\n /** Tab trigger component rendered in a `Tabs.List` component */\n Trigger: React.ForwardRefExoticComponent<TabTriggerProps & React.RefAttributes<HTMLButtonElement>>;\n /** Tab content component rendered in a `Tabs` group component */\n Content: React.ForwardRefExoticComponent<TabContentProps & React.RefAttributes<HTMLDivElement>>;\n};\n\nexport const Tabs = React.forwardRef(function Tabs(props: TabsProps, ref: React.Ref<HTMLDivElement>) {\n const { id, defaultId, children, onChange, orientation = 'horizontal', ...otherProps } = props;\n const className = cn(\n {\n 'flex w-full': orientation === 'vertical',\n },\n props.className\n );\n\n return (\n <TabsPrimitive.Root\n {...otherProps}\n className={className}\n data-taco=\"tabs\"\n defaultValue={defaultId}\n dir=\"ltr\"\n onValueChange={onChange}\n orientation={orientation}\n ref={ref}\n value={id}>\n {children}\n </TabsPrimitive.Root>\n );\n}) as ForwardedTabsWithStatics;\n\nconst TabList = React.forwardRef(function Tab(props: TabListProps, ref: React.Ref<HTMLDivElement>) {\n const className = cn(\n 'border-grey-300 flex flex-row m-0 mb-4',\n 'aria-orientation-horizontal:border-b',\n 'aria-orientation-vertical:border-r aria-orientation-vertical:m-0 aria-orientation-vertical:mr-4 aria-orientation-vertical:flex-col ',\n props.className\n );\n\n return <TabsPrimitive.List {...props} className={className} ref={ref} />;\n});\n\nconst TabTrigger = React.forwardRef(function Tab(props: TabTriggerProps, ref: React.Ref<HTMLButtonElement>) {\n const { children, id, disabled, ...otherProps } = props;\n\n const triggerClassName = cn(\n 'group relative p-0.5 outline-none disabled:cursor-not-allowed disabled:text-black/50',\n // horizontal\n '[[aria-orientation=\"horizontal\"]_&]:pb-1',\n // horizontal\n '[[aria-orientation=\"vertical\"]_&]:pr-1'\n );\n const buttonClassName = cn(\n getButtonClasses(),\n 'group-focus-visible:yt-focus-inset group-enabled:group-hover:wcag-grey-200 pointer-events-none rounded px-3'\n );\n const activeClassName = cn(\n 'pointer-events-none absolute hidden bg-blue-500 group-aria-selected:flex',\n // horizontal\n '[[aria-orientation=\"horizontal\"]_&]:rounded-t-sm [[aria-orientation=\"horizontal\"]_&]:bottom-0 [[aria-orientation=\"horizontal\"]_&]:left-0 [[aria-orientation=\"horizontal\"]_&]:right-0 [[aria-orientation=\"horizontal\"]_&]:-mb-px [[aria-orientation=\"horizontal\"]_&]:h-0.5',\n // vertical\n '[[aria-orientation=\"vertical\"]_&]:rounded-l-sm [[aria-orientation=\"vertical\"]_&]:right-0 [[aria-orientation=\"vertical\"]_&]:top-0 [[aria-orientation=\"vertical\"]_&]:bottom-0 [[aria-orientation=\"vertical\"]_&]:-mr-px [[aria-orientation=\"vertical\"]_&]:w-0.5'\n );\n\n return (\n <TabsPrimitive.Trigger {...otherProps} className={triggerClassName} disabled={disabled} ref={ref} value={id}>\n <span className={buttonClassName}>{children}</span>\n <span className={activeClassName} />\n </TabsPrimitive.Trigger>\n );\n});\n\nconst TabContent = React.forwardRef(function Tab(props: TabContentProps, ref: React.Ref<HTMLDivElement>) {\n const { id, ...otherProps } = props;\n const className = cn('[&[data-orientation=\"vertical\"]]:grow outline-none', props.className);\n\n return <TabsPrimitive.Content {...otherProps} className={className} ref={ref} value={id} />;\n});\n\nTabs.List = TabList;\nTabs.Trigger = TabTrigger;\nTabs.Content = TabContent;\n"],"names":["Tabs","React","props","ref","id","defaultId","children","onChange","orientation","otherProps","className","cn","TabsPrimitive","defaultValue","dir","onValueChange","value","TabList","Tab","TabTrigger","disabled","triggerClassName","buttonClassName","getButtonClasses","activeClassName","TabContent","List","Trigger","Content"],"mappings":";;;;;MA8DaA,IAAI,gBAAGC,UAAgB,CAAC,SAASD,IAAI,CAACE,KAAgB,EAAEC,GAA8B;EAC/F,MAAM;IAAEC,EAAE;IAAEC,SAAS;IAAEC,QAAQ;IAAEC,QAAQ;IAAEC,WAAW,GAAG,YAAY;IAAE,GAAGC;GAAY,GAAGP,KAAK;EAC9F,MAAMQ,SAAS,GAAGC,EAAE,CAChB;IACI,aAAa,EAAEH,WAAW,KAAK;GAClC,EACDN,KAAK,CAACQ,SAAS,CAClB;EAED,oBACIT,cAACW,IAAkB,oBACXH,UAAU;IACdC,SAAS,EAAEA,SAAS;iBACV,MAAM;IAChBG,YAAY,EAAER,SAAS;IACvBS,GAAG,EAAC,KAAK;IACTC,aAAa,EAAER,QAAQ;IACvBC,WAAW,EAAEA,WAAW;IACxBL,GAAG,EAAEA,GAAG;IACRa,KAAK,EAAEZ;MACNE,QAAQ,CACQ;AAE7B,CAAC;AAED,MAAMW,OAAO,gBAAGhB,UAAgB,CAAC,SAASiB,GAAG,CAAChB,KAAmB,EAAEC,GAA8B;EAC7F,MAAMO,SAAS,GAAGC,EAAE,CAChB,wCAAwC,EACxC,sCAAsC,EACtC,qIAAqI,EACrIT,KAAK,CAACQ,SAAS,CAClB;EAED,oBAAOT,cAACW,IAAkB,oBAAKV,KAAK;IAAEQ,SAAS,EAAEA,SAAS;IAAEP,GAAG,EAAEA;KAAO;AAC5E,CAAC,CAAC;AAEF,MAAMgB,UAAU,gBAAGlB,UAAgB,CAAC,SAASiB,GAAG,CAAChB,KAAsB,EAAEC,GAAiC;EACtG,MAAM;IAAEG,QAAQ;IAAEF,EAAE;IAAEgB,QAAQ;IAAE,GAAGX;GAAY,GAAGP,KAAK;EAEvD,MAAMmB,gBAAgB,GAAGV,EAAE,CACvB,sFAAsF;;EAEtF,0CAA0C;;EAE1C,wCAAwC,CAC3C;EACD,MAAMW,eAAe,GAAGX,EAAE,CACtBY,gBAAgB,EAAE,EAClB,6GAA6G,CAChH;EACD,MAAMC,eAAe,GAAGb,EAAE,CACtB,0EAA0E;;EAE1E,2QAA2Q;;EAE3Q,8PAA8P,CACjQ;EAED,oBACIV,cAACW,OAAqB,oBAAKH,UAAU;IAAEC,SAAS,EAAEW,gBAAgB;IAAED,QAAQ,EAAEA,QAAQ;IAAEjB,GAAG,EAAEA,GAAG;IAAEa,KAAK,EAAEZ;mBACrGH;IAAMS,SAAS,EAAEY;KAAkBhB,QAAQ,CAAQ,eACnDL;IAAMS,SAAS,EAAEc;IAAmB,CAChB;AAEhC,CAAC,CAAC;AAEF,MAAMC,UAAU,gBAAGxB,UAAgB,CAAC,SAASiB,GAAG,CAAChB,KAAsB,EAAEC,GAA8B;EACnG,MAAM;IAAEC,EAAE;IAAE,GAAGK;GAAY,GAAGP,KAAK;EACnC,MAAMQ,SAAS,GAAGC,EAAE,CAAC,oDAAoD,EAAET,KAAK,CAACQ,SAAS,CAAC;EAE3F,oBAAOT,cAACW,OAAqB,oBAAKH,UAAU;IAAEC,SAAS,EAAEA,SAAS;IAAEP,GAAG,EAAEA,GAAG;IAAEa,KAAK,EAAEZ;KAAM;AAC/F,CAAC,CAAC;AAEFJ,IAAI,CAAC0B,IAAI,GAAGT,OAAO;AACnBjB,IAAI,CAAC2B,OAAO,GAAGR,UAAU;AACzBnB,IAAI,CAAC4B,OAAO,GAAGH,UAAU;;;;"}
package/dist/index.css CHANGED
@@ -638,23 +638,3 @@
638
638
  #yt-table__drag__placeholder {
639
639
  @apply flex w-3/12 rounded bg-blue-500 p-4 font-bold text-white;
640
640
  }
641
-
642
- .yt-tabs .yt-tab__list[aria-orientation='vertical'] {
643
- @apply m-0 mr-4 flex-col border-0 border-r;
644
- }
645
-
646
- .yt-tabs .yt-tab__list[aria-orientation='vertical'] .yt-tab {
647
- @apply h-8 py-0;
648
- }
649
-
650
- .yt-tabs.yt-tabs--vertical .yt-tab__list {
651
- @apply flex-initial;
652
- }
653
-
654
- .yt-tabs.yt-tabs--vertical .yt-tab__panel {
655
- @apply flex-grow;
656
- }
657
-
658
- .yt-tabs .yt-tab__list[aria-orientation='vertical'] .yt-tab {
659
- @apply rounded-none rounded-l border-0 border-r-2;
660
- }
@@ -3786,25 +3786,25 @@ const Tooltip = /*#__PURE__*/React.forwardRef(function Tooltip(props, ref) {
3786
3786
  });
3787
3787
 
3788
3788
  const getButtonClasses = () => {
3789
- return 'flex-shrink-0 min-h-[theme(spacing.8)] min-w-[theme(spacing.8)] gap-1 h-max leading-5 inline-flex items-center justify-center';
3789
+ return 'flex-shrink-0 min-h-[theme(spacing.8)] min-w-[theme(spacing.8)] gap-1 h-max leading-5 inline-flex items-center justify-center focus-visible:yt-focus disabled:cursor-not-allowed';
3790
3790
  };
3791
3791
  const getAppearanceClasses = (value, icon = false) => {
3792
3792
  switch (value) {
3793
3793
  case 'primary':
3794
- return `wcag-blue-500 focus:bg-blue-500 focus:text-white focus:yt-focus active:bg-blue-700 active:text-white hover:bg-blue-300 hover:text-white hover:focus:bg-blue-300 hover:focus:border-blue-300 hover:focus:text-white disabled:hover:wcag-blue-500 disabled:hover:hover:border-blue-500`;
3794
+ return `wcag-blue-500 enabled:hover:wcag-blue-700 enabled:hover:active:wcag-blue-500 disabled:bg-blue-500/50`;
3795
3795
  case 'danger':
3796
- return `wcag-red-500 focus:bg-red-500 focus:text-white focus:yt-focus-red active:bg-red-700 active:text-white hover:bg-red-300 hover:text-white hover:focus:bg-red-300 hover:focus:text-white disabled:hover:wcag-red-500`;
3796
+ return `wcag-red-500 enabled:hover:wcag-red-700 enabled:hover:active:wcag-red-500 disabled:bg-red-500/50`;
3797
3797
  case 'ghost':
3798
- return `bg-white shadow-[inset_0_0_0_1px_theme(colors.blue.500)] text-blue-500 focus:bg-transparent focus:text-blue-500 active:bg-blue-100 focus:!shadow-[inset_0_0_0_1px_theme(colors.blue.500),0_0_0_2px_rgba(0,99,255,0.25)] active:text-blue-700 hover:bg-blue-100 hover:shadow-[inset_0_0_0_1px_theme(colors.blue.300)] hover:text-blue-300 hover:focus:bg-blue-100 hover:focus:!shadow-[inset_0_0_0_1px_theme(colors.blue.300),0_0_0_2px_rgba(0,99,255,0.25)] hover:focus:text-blue-300`;
3798
+ return `bg-white border border-blue-500 text-blue-500 enabled:hover:bg-blue-100 enabled:hover:text-blue-700 disabled:border-blue-500/50 disabled:text-blue-500/50`;
3799
3799
  case 'discrete':
3800
3800
  {
3801
3801
  if (icon) {
3802
- return `bg-transparent text-black border-transparent focus:text-black focus:yt-focus active:text-black hover:text-grey-700 hover:focus:text-grey-700 disabled:hover:text-black `;
3802
+ return `bg-transparent text-black enabled:hover:bg-grey-200/80 disabled:text-black/30`;
3803
3803
  }
3804
- return `yt-transparent focus:text-blue-500 focus:yt-focus active:text-blue-700 hover:text-blue-300 hover:focus:text-blue-300 disabled:hover:yt-transparent`;
3804
+ return `bg-transparent text-blue-500 enabled:hover:text-blue-700 disabled:text-blue-500/50`;
3805
3805
  }
3806
3806
  default:
3807
- return `wcag-grey-200 focus:bg-grey-200 focus:yt-focus active:bg-grey-300 active:text-black hover:bg-grey-100 hover:text-grey-700 hover:focus:bg-grey-100 hover:focus:text-grey-700 disabled:hover:wcag-grey-200`;
3807
+ return `wcag-grey-200 enabled:hover:wcag-grey-300 disabled:bg-grey-200/50 disabled:text-black/30`;
3808
3808
  }
3809
3809
  };
3810
3810
  const createButtonWithTooltip = (props, className, ref) => {
@@ -3865,9 +3865,7 @@ const Base = /*#__PURE__*/React.forwardRef(function IconButtonBase(props, ref) {
3865
3865
  } = props;
3866
3866
  const className = cn('w-8', getButtonClasses(), getAppearanceClasses(otherProps.appearance, true), {
3867
3867
  'rounded-full': rounded,
3868
- rounded: !rounded,
3869
- 'cursor-not-allowed opacity-50': props.disabled,
3870
- 'focus:yt-focus active:focus:yt-focus': !props.disabled
3868
+ rounded: !rounded
3871
3869
  }, props.className);
3872
3870
  if (!icon) {
3873
3871
  return null;
@@ -4146,8 +4144,6 @@ const Base$1 = /*#__PURE__*/React.forwardRef(function ButtonBase(props, ref) {
4146
4144
  ...otherProps
4147
4145
  } = props;
4148
4146
  const className = cn(getButtonClasses(), getAppearanceClasses(appearance), 'rounded px-3', {
4149
- 'cursor-not-allowed opacity-50': props.disabled,
4150
- 'focus:yt-focus active:focus:yt-focus': !props.disabled,
4151
4147
  'w-full': fluid
4152
4148
  }, props.className);
4153
4149
  return createButtonWithTooltip({
@@ -4355,7 +4351,6 @@ const useId = nativeId => {
4355
4351
  const Checkbox = /*#__PURE__*/React.forwardRef(function Checkbox(props, ref) {
4356
4352
  const {
4357
4353
  checked,
4358
- highlighted,
4359
4354
  indeterminate,
4360
4355
  invalid,
4361
4356
  label,
@@ -4363,14 +4358,14 @@ const Checkbox = /*#__PURE__*/React.forwardRef(function Checkbox(props, ref) {
4363
4358
  ...otherProps
4364
4359
  } = props;
4365
4360
  const id = useId(props.id);
4366
- const className = cn('bg-white h-5 w-5 border rounded text-sm flex-shrink-0 mt-[0.1rem] focus:yt-focus',
4367
- //hover:shadow-[0_0_0_1px_rgba(235,235,235,1)]
4368
- {
4369
- 'border-grey-300 text-blue-500 hover:text-blue-300 focus:border-blue-500 focus:hover:border-blue-300': !props.disabled && !invalid,
4370
- 'border-grey-200 text-blue-300 cursor-not-allowed': props.disabled,
4371
- 'bg-[rgba(255,255,0,0.2)] disabled:bg-[rgba(255,255,0,0.075)]': highlighted,
4372
- 'border-red-500 text-red-500 hover:text-red-300 hover:border-red-300 focus:border-red-500 focus:hover:border-red-300': invalid && !props.disabled,
4361
+ const className = cn('bg-white h-5 w-5 border rounded text-sm flex-shrink-0 mt-[0.1rem] focus-visible:yt-focus disabled:cursor-not-allowed text-white', {
4373
4362
  'self-start': !!label
4363
+ }, invalid ? {
4364
+ 'border-red-500 hover:border-red-700 aria-checked:border-red-500 aria-checked-mixed:border-red-500 aria-checked:bg-red-500 aria-checked-mixed:bg-red-500 aria-checked:hover:border-red-700 aria-checked-mixed:hover:border-red-700 aria-checked:hover:bg-red-700 aria-checked-mixed:hover:bg-red-700': !props.disabled,
4365
+ 'border-red-500/50 aria-checked:wcag-red-500/50 aria-checked-mixed:wcag-red-500/50': props.disabled
4366
+ } : {
4367
+ 'border-grey-500 hover:border-grey-700 aria-checked:border-blue-500 aria-checked-mixed:border-blue-500 aria-checked:bg-blue-500 aria-checked-mixed:bg-blue-500 aria-checked:hover:border-blue-700 aria-checked-mixed:hover:border-blue-700 aria-checked:hover:bg-blue-700 aria-checked-mixed:hover:bg-blue-700': !props.disabled,
4368
+ 'border-grey-500/50 aria-checked:bg-blue-500/50 aria-checked-mixed:bg-blue-500/50': props.disabled
4374
4369
  }, props.className);
4375
4370
  let handleChange;
4376
4371
  if (onChange) {
@@ -4421,28 +4416,28 @@ const getInputClasses = props => {
4421
4416
  const disabled = props.disabled || !!props['aria-disabled'];
4422
4417
  const readOnly = props.readOnly || !!props['aria-readonly'];
4423
4418
  const invalid = props.invalid || !!props['aria-invalid'];
4424
- return cn('peer text-black text-sm border font-normal not-italic no-underline rounded flex items-center leading-6 px-2 relative w-full text-ellipsis transition-colors transition-opacity ease-in min-h-[theme(spacing.8)]', {
4419
+ return cn('peer text-black text-sm border font-normal not-italic no-underline rounded flex items-center leading-6 px-2 relative w-full text-ellipsis transition-colors transition-opacity ease-in min-h-[theme(spacing.8)] focus-visible:yt-focus', {
4425
4420
  'bg-white': !props.highlighted && !readOnly,
4426
4421
  // default
4427
- 'border-grey-300 focus:border-blue-300 focus:yt-focus': !invalid,
4428
- 'hover:shadow-[0_0_0.1rem_theme(colors.grey.500)] active:border-blue-700': !invalid && !disabled,
4422
+ 'border-grey-300 enabled:hover:border-grey-500 disabled:border-grey-200': !invalid,
4429
4423
  // disabled
4430
- 'border-grey-200 text-opacity-25 cursor-not-allowed placeholder:text-grey-700': disabled,
4424
+ 'text-opacity-25 cursor-not-allowed placeholder:text-grey-700': disabled,
4431
4425
  // highlighted
4432
- 'bg-[rgba(255,255,0,0.075)]': props.highlighted && disabled,
4433
- 'bg-[rgba(255,255,0,0.2)]': props.highlighted && !disabled,
4426
+ 'bg-yellow-100/50': props.highlighted && disabled,
4427
+ 'bg-yellow-100': props.highlighted && !disabled,
4434
4428
  // invalid
4435
- 'border-red focus:border-red-300 focus:yt-focus-red active:border-red-700': invalid,
4436
- 'hover:shadow-[0_0_0.15rem_theme(colors.red.500)]': invalid && !disabled,
4429
+ 'border-red-500 enabled:hover:border-red-700 disabled:border-red-500/50': invalid,
4437
4430
  // readOnly
4438
4431
  'cursor-not-allowed text-black bg-grey-200': readOnly
4439
4432
  });
4440
4433
  };
4441
- const getButtonStateClasses = invalid => {
4434
+ const getButtonStateClasses = (invalid, disabled = false) => {
4442
4435
  if (invalid) {
4443
- return 'border !border-red-500 group-peer-focus:!border-red-300 focus:yt-focus-red group-focus:group-active:!border-red-300 transition-colors ease-in';
4436
+ return cn('border border-red-500 group-peer-hover:enabled:border-red-700 transition-colors ease-in', {
4437
+ 'border-red-500/30': disabled
4438
+ });
4444
4439
  }
4445
- return 'border border-grey-300 focus:!border-blue-300 group-peer-focus:!border-blue-300 group-peer-focus:group-peer-active:!border-blue-700 transition-colors transition-opacity ease-in';
4440
+ return 'border border-grey-300 group-peer-hover:enabled:border-grey-500 transition-colors transition-opacity ease-in';
4446
4441
  };
4447
4442
 
4448
4443
  const debounce = (fn, delay) => {
@@ -4587,7 +4582,7 @@ const Input = /*#__PURE__*/React.forwardRef(function LegacyInput(props, ref) {
4587
4582
  let postfix;
4588
4583
  if (button) {
4589
4584
  const disabled = button.props.disabled || attributes.disabled;
4590
- const buttonClassName = cn('items-center focus:z-10 flex justify-center rounded-l-none rounded-r h-full focus:rounded focus:outline-none', getButtonStateClasses(attributes.invalid), button.props.className);
4585
+ const buttonClassName = cn('items-center focus:z-10 flex justify-center rounded-l-none rounded-r h-full focus:rounded focus:outline-none', getButtonStateClasses(attributes.invalid, disabled), button.props.className);
4591
4586
  postfix = /*#__PURE__*/React.cloneElement(button, {
4592
4587
  className: buttonClassName,
4593
4588
  disabled
@@ -5611,14 +5606,11 @@ const Datepicker = /*#__PURE__*/React.forwardRef(function Datepicker(props, ref)
5611
5606
  "data-taco": "datepicker",
5612
5607
  style: style
5613
5608
  }, /*#__PURE__*/React.createElement(Input, Object.assign({}, input, {
5614
- button: /*#__PURE__*/React.createElement(Tooltip, {
5615
- title: texts.datepicker.calendar
5616
- }, /*#__PURE__*/React.createElement(IconButton, {
5609
+ button: /*#__PURE__*/React.createElement(IconButton, {
5617
5610
  "aria-label": texts.datepicker.expand,
5618
5611
  disabled: input.disabled || input.readOnly,
5619
5612
  icon: "calendar",
5620
5613
  tabIndex: -1,
5621
- className: " border-grey-300 group-peer-focus:!border-blue-300 group-peer-focus:group-peer-active:!border-blue-700 flex h-full items-center justify-center rounded-l-none rounded-r border transition-colors transition-opacity ease-in focus:z-10 focus:rounded focus:!border-blue-300 focus:outline-none",
5622
5614
  popover: props => /*#__PURE__*/React.createElement(Popover, Object.assign({}, props), /*#__PURE__*/React.createElement(Popover.Content, null, ({
5623
5615
  close
5624
5616
  }) => /*#__PURE__*/React.createElement("div", {
@@ -5644,14 +5636,15 @@ const Datepicker = /*#__PURE__*/React.forwardRef(function Datepicker(props, ref)
5644
5636
  }
5645
5637
  }, shortcut.text)))), handleReset && /*#__PURE__*/React.createElement("button", {
5646
5638
  type: "button",
5647
- className: "my-4 mx-auto mt-auto inline-flex cursor-pointer border-none bg-transparent text-xs text-blue-500 hover:text-blue-300",
5639
+ className: "mx-auto my-4 mt-auto inline-flex cursor-pointer border-none bg-transparent text-xs text-blue-500 hover:text-blue-300",
5648
5640
  onClick: event => {
5649
5641
  event.persist();
5650
5642
  handleReset(event);
5651
5643
  close();
5652
5644
  }
5653
- }, texts.datepicker.clear)))))
5654
- }))
5645
+ }, texts.datepicker.clear))))),
5646
+ tooltip: texts.datepicker.calendar
5647
+ })
5655
5648
  })));
5656
5649
  });
5657
5650
  Datepicker.displayName = 'Datepicker';
@@ -6146,15 +6139,16 @@ const InnerContent = /*#__PURE__*/React__default.forwardRef(function InnerConten
6146
6139
  children,
6147
6140
  ...otherProps
6148
6141
  } = props;
6149
- const cName = cn('grow-1 p-4', className);
6142
+ const cName = cn('grow flex flex-col', {
6143
+ 'overflow-y-hidden': isScrollable,
6144
+ 'p-4': !isScrollable
6145
+ }, className);
6150
6146
  return /*#__PURE__*/React__default.createElement("div", Object.assign({}, otherProps, {
6151
6147
  className: cName,
6152
6148
  ref: ref
6153
6149
  }), isScrollable ? /*#__PURE__*/React__default.createElement(ScrollArea, {
6154
- className: "w-full gap-y-0.5"
6155
- }, children) : {
6156
- children
6157
- });
6150
+ className: "w-full gap-y-0.5 p-4"
6151
+ }, children) : children);
6158
6152
  });
6159
6153
  const Portal = props => {
6160
6154
  const {
@@ -6447,7 +6441,7 @@ const Field = /*#__PURE__*/React.forwardRef(function Field(props, ref) {
6447
6441
  'text-grey-700': !invalid,
6448
6442
  'text-red-500': invalid,
6449
6443
  'opacity-50': disabled
6450
- }, props.className);
6444
+ });
6451
6445
  return /*#__PURE__*/React.createElement("label", Object.assign({}, otherProps, {
6452
6446
  className: className,
6453
6447
  "data-taco": "label",
@@ -7245,10 +7239,12 @@ const RadioGroupItem = /*#__PURE__*/React.forwardRef(function RadioGroupItem(pro
7245
7239
  ...otherProps
7246
7240
  } = props;
7247
7241
  const isDisabled = context.disabled || props.disabled;
7248
- const className = cn('flex flex-shrink-0 self-start items-center justify-center h-4 w-4 mt-[0.2rem] rounded-full bg-white border-2', {
7249
- 'border-grey-300 hover:border-4 focus:yt-focus aria-checked:bg-blue-500 aria-checked:border-blue-500 hover:aria-checked:border-blue-300': !isDisabled && !context.invalid,
7250
- 'border-grey-200 cursor-not-allowed aria-checked:bg-blue-300 aria-checked:border-blue-300 ': isDisabled,
7251
- 'border-red-500 hover:border-4 text-red-500 focus:border-red-500 focus:yt-focus-red aria-checked:bg-red-500 aria-checked:border-red': context.invalid && !isDisabled
7242
+ const className = cn('flex flex-shrink-0 self-start items-center justify-center h-4 w-4 mt-[0.2rem] rounded-full bg-white border-2 focus-visible:yt-focus disabled:cursor-not-allowed hover:border-4', context.invalid ? {
7243
+ 'border-red-500 hover:border-red-700 aria-checked:bg-red-500 aria-checked:border-red-500 hover:aria-checked:border-red-700': !isDisabled,
7244
+ 'border-red-500/50 aria-checked:bg-red-500/50 aria-checked:border-red-500/50': isDisabled
7245
+ } : {
7246
+ 'border-grey-500 hover:border-grey-700 aria-checked:bg-blue-500 aria-checked:border-blue-500 hover:aria-checked:border-blue-700': !isDisabled,
7247
+ 'border-grey-500/50 aria-checked:bg-blue-500/50 aria-checked:border-blue-500/50': isDisabled
7252
7248
  });
7253
7249
  const labelClassName = cn('flex items-center gap-2', {
7254
7250
  'cursor-pointer': !isDisabled,
@@ -9170,10 +9166,9 @@ const Option$1 = /*#__PURE__*/React__default.forwardRef(function Select2Option(p
9170
9166
  }, /*#__PURE__*/React__default.createElement("span", null, children), description ? /*#__PURE__*/React__default.createElement("span", {
9171
9167
  className: "text-grey-700 -mt-1.5 mb-1.5 text-xs"
9172
9168
  }, description) : null)), popover ? /*#__PURE__*/React__default.createElement(IconButton, {
9173
- rounded: true,
9174
9169
  icon: "ellipsis-vertical",
9175
9170
  appearance: "discrete",
9176
- className: cn('group-aria-current:visible invisible ml-auto -mr-2 focus:!shadow-none group-hover:visible', {
9171
+ className: cn('group-aria-current:visible invisible -mr-1 ml-auto !h-5 min-h-[theme(spacing.6)] !w-5 min-w-[theme(spacing.6)] hover:!bg-black/[.08] focus:!shadow-none group-hover:visible', {
9177
9172
  '!visible': isMobileDevice((_window = window) === null || _window === void 0 ? void 0 : _window.navigator)
9178
9173
  }),
9179
9174
  onClick: event => {
@@ -9977,10 +9972,10 @@ const Switch = /*#__PURE__*/React.forwardRef(function Switch(props, ref) {
9977
9972
  ...otherProps
9978
9973
  } = props;
9979
9974
  const id = useId(props.id);
9980
- const className = cn('group h-5 w-9 flex flex-shrink-0 rounded-full inline-flex', {
9975
+ const className = cn('group h-5 w-9 flex flex-shrink-0 rounded-full inline-flex focus-visible:yt-focus', {
9981
9976
  'mr-2': !!label,
9982
- 'bg-grey-500 hover:bg-grey-300 aria-checked:bg-blue-500 aria-checked:hover:bg-blue-300 focus:yt-focus': !props.disabled,
9983
- 'bg-grey-100 cursor-not-allowed aria-checked:bg-blue-300': props.disabled
9977
+ 'bg-grey-500 hover:bg-grey-700 aria-checked:bg-blue-500 aria-checked:hover:bg-blue-700': !props.disabled,
9978
+ 'bg-grey-500/50 aria-checked:bg-blue-500/50 cursor-not-allowed': props.disabled
9984
9979
  }, props.className);
9985
9980
  let labelledByProps = null;
9986
9981
  if (label) {
@@ -12959,7 +12954,9 @@ const Header$1 = function Header(props) {
12959
12954
  const nextSizes = {
12960
12955
  ...sizes
12961
12956
  };
12962
- if (size) {
12957
+ if (size === 'grow') {
12958
+ nextSizes[header.id] = '1fr';
12959
+ } else if (typeof size === 'number') {
12963
12960
  nextSizes[header.id] = !isInternalFrozenColumn(header.id) && size < MIN_COLUMN_SIZE ? MIN_COLUMN_SIZE : size;
12964
12961
  } else {
12965
12962
  delete nextSizes[header.id];
@@ -13063,7 +13060,7 @@ const HeaderMenu = ({
13063
13060
  '!flex': open
13064
13061
  });
13065
13062
  const menuItems = [];
13066
- if (table.options.enableHiding) {
13063
+ if (table.options.enableHiding && header.column.getCanHide()) {
13067
13064
  // we do this in the next tick, otherwise the menu closes and react throws a "state update on unmounted component" error
13068
13065
  const handleClick = () => setTimeout(() => header.column.toggleVisibility(), 1);
13069
13066
  menuItems.push( /*#__PURE__*/React__default.createElement(Menu$1.Item, {
@@ -13174,8 +13171,9 @@ function useColumnDefinitions(children, options, tableRef) {
13174
13171
  React__default.Children.toArray(children).filter(child => !!child).forEach(child => {
13175
13172
  if ( /*#__PURE__*/React__default.isValidElement(child)) {
13176
13173
  var _child$props$minWidth;
13177
- if (child.props.defaultWidth) {
13178
- defaultColumnSizing[child.props.accessor] = child.props.defaultWidth;
13174
+ const defaultWidth = child.props.defaultWidth === 'grow' ? '1fr' : child.props.defaultWidth;
13175
+ if (defaultWidth) {
13176
+ defaultColumnSizing[child.props.accessor] = defaultWidth;
13179
13177
  }
13180
13178
  if (child.props.defaultHidden && options.enableColumnHiding) {
13181
13179
  defaultColumnVisibility[child.props.accessor] = false;
@@ -13211,7 +13209,7 @@ function useColumnDefinitions(children, options, tableRef) {
13211
13209
  className: child.props.className,
13212
13210
  control: child.props.control,
13213
13211
  dataType: child.props.dataType,
13214
- defaultWidth: child.props.defaultWidth,
13212
+ defaultWidth,
13215
13213
  disableReordering: child.props.disableReordering,
13216
13214
  menu: child.props.menu,
13217
13215
  tooltip: child.props.tooltip
@@ -13632,7 +13630,9 @@ const useGridTemplate = table => {
13632
13630
  } else if (isInternalColumn(column.id)) {
13633
13631
  size = `${column.getSize()}px`;
13634
13632
  } else if (width) {
13635
- if (isLastColumn) {
13633
+ if (width === '1fr') {
13634
+ size = 'minmax(max-content, 1fr)';
13635
+ } else if (isLastColumn) {
13636
13636
  size = `minmax(${width}px, auto)`;
13637
13637
  } else if (column.columnDef.minSize && width < column.columnDef.minSize) {
13638
13638
  // react-table is supposed to handle minSize itself but it is really buggy
@@ -14965,7 +14965,7 @@ const Tabs = /*#__PURE__*/React.forwardRef(function Tabs(props, ref) {
14965
14965
  orientation = 'horizontal',
14966
14966
  ...otherProps
14967
14967
  } = props;
14968
- const className = cn('yt-tabs', `yt-tabs--${orientation}`, {
14968
+ const className = cn({
14969
14969
  'flex w-full': orientation === 'vertical'
14970
14970
  }, props.className);
14971
14971
  return /*#__PURE__*/React.createElement(TabsPrimitive.Root, Object.assign({}, otherProps, {
@@ -14980,7 +14980,7 @@ const Tabs = /*#__PURE__*/React.forwardRef(function Tabs(props, ref) {
14980
14980
  }), children);
14981
14981
  });
14982
14982
  const TabList = /*#__PURE__*/React.forwardRef(function Tab(props, ref) {
14983
- const className = cn('yt-tab__list border-b border-grey-300 flex flex-row m-0 mb-4', props.className);
14983
+ const className = cn('border-grey-300 flex flex-row m-0 mb-4', 'aria-orientation-horizontal:border-b', 'aria-orientation-vertical:border-r aria-orientation-vertical:m-0 aria-orientation-vertical:mr-4 aria-orientation-vertical:flex-col ', props.className);
14984
14984
  return /*#__PURE__*/React.createElement(TabsPrimitive.List, Object.assign({}, props, {
14985
14985
  className: className,
14986
14986
  ref: ref
@@ -14988,19 +14988,31 @@ const TabList = /*#__PURE__*/React.forwardRef(function Tab(props, ref) {
14988
14988
  });
14989
14989
  const TabTrigger = /*#__PURE__*/React.forwardRef(function Tab(props, ref) {
14990
14990
  const {
14991
+ children,
14991
14992
  id,
14992
14993
  disabled,
14993
14994
  ...otherProps
14994
14995
  } = props;
14995
- const className = cn('yt-tab bg-transparent border-b-2 border-transparent text-grey-700 m-0 py-2 px-4', disabled ? 'cursor-not-allowed !text-grey-500' : 'cursor-pointer rounded-t hover:border-grey-300 aria-selected:border-blue-500 aria-selected:text-black aria-selected:hover:border-blue-300 hover:text-black active:yt-focus active:border-blue-500 focus:yt-focus focus:border-blue-500', props.className);
14996
+ const triggerClassName = cn('group relative p-0.5 outline-none disabled:cursor-not-allowed disabled:text-black/50',
14997
+ // horizontal
14998
+ '[[aria-orientation="horizontal"]_&]:pb-1',
14999
+ // horizontal
15000
+ '[[aria-orientation="vertical"]_&]:pr-1');
15001
+ const buttonClassName = cn(getButtonClasses(), 'group-focus-visible:yt-focus-inset group-enabled:group-hover:wcag-grey-200 pointer-events-none rounded px-3');
15002
+ const activeClassName = cn('pointer-events-none absolute hidden bg-blue-500 group-aria-selected:flex',
15003
+ // horizontal
15004
+ '[[aria-orientation="horizontal"]_&]:rounded-t-sm [[aria-orientation="horizontal"]_&]:bottom-0 [[aria-orientation="horizontal"]_&]:left-0 [[aria-orientation="horizontal"]_&]:right-0 [[aria-orientation="horizontal"]_&]:-mb-px [[aria-orientation="horizontal"]_&]:h-0.5',
15005
+ // vertical
15006
+ '[[aria-orientation="vertical"]_&]:rounded-l-sm [[aria-orientation="vertical"]_&]:right-0 [[aria-orientation="vertical"]_&]:top-0 [[aria-orientation="vertical"]_&]:bottom-0 [[aria-orientation="vertical"]_&]:-mr-px [[aria-orientation="vertical"]_&]:w-0.5');
14996
15007
  return /*#__PURE__*/React.createElement(TabsPrimitive.Trigger, Object.assign({}, otherProps, {
14997
- className: className,
15008
+ className: triggerClassName,
14998
15009
  disabled: disabled,
14999
15010
  ref: ref,
15000
- style: {
15001
- transition: 'border 0.2s ease-in'
15002
- },
15003
15011
  value: id
15012
+ }), /*#__PURE__*/React.createElement("span", {
15013
+ className: buttonClassName
15014
+ }, children), /*#__PURE__*/React.createElement("span", {
15015
+ className: activeClassName
15004
15016
  }));
15005
15017
  });
15006
15018
  const TabContent = /*#__PURE__*/React.forwardRef(function Tab(props, ref) {
@@ -15008,7 +15020,7 @@ const TabContent = /*#__PURE__*/React.forwardRef(function Tab(props, ref) {
15008
15020
  id,
15009
15021
  ...otherProps
15010
15022
  } = props;
15011
- const className = cn('yt-tab__panel outline-none', props.className);
15023
+ const className = cn('[&[data-orientation="vertical"]]:grow outline-none', props.className);
15012
15024
  return /*#__PURE__*/React.createElement(TabsPrimitive.Content, Object.assign({}, otherProps, {
15013
15025
  className: className,
15014
15026
  ref: ref,
@@ -15189,7 +15201,7 @@ const Button$3 = /*#__PURE__*/React__default.forwardRef(function Button(props, r
15189
15201
  ref: ref
15190
15202
  }));
15191
15203
  });
15192
- const getButtonClasses$1 = (rounded = true) => cn('!h-9 !w-9 flex-shrink-0 flex-grow-0 cursor-pointer relative', 'focus:!outline-none focus:!shadow-none focus-visible:!yt-focus-dark ', 'bg-transparent hover:bg-white/[.08] focus:bg-white/[.08] aria-current-page:bg-white/[.08]', '!text-white hover:text-white focus:text-white', {
15204
+ const getButtonClasses$1 = (rounded = true) => cn('!h-9 !w-9 flex-shrink-0 flex-grow-0 cursor-pointer relative', 'focus:!outline-none focus:!shadow-none focus-visible:!yt-focus-dark ', 'bg-transparent enabled:hover:bg-white/[.08] focus:bg-white/[.08] aria-current-page:bg-white/[.08]', 'text-white', {
15193
15205
  '!rounded-full': rounded
15194
15206
  });
15195
15207
 
@@ -15215,7 +15227,7 @@ const Link$1 = /*#__PURE__*/React__default.forwardRef(function Link(props, ref)
15215
15227
  }) : null, children, isNew ? /*#__PURE__*/React__default.createElement(Badge, {
15216
15228
  color: "blue",
15217
15229
  small: true,
15218
- className: "absolute top-0 right-0 -mt-1.5 -mr-2.5 !h-3 !px-0.5 text-[0.55rem] font-normal"
15230
+ className: "absolute right-0 top-0 -mr-2.5 -mt-1.5 !h-3 !px-0.5 text-[0.55rem] font-normal"
15219
15231
  }, texts.header.new) : null);
15220
15232
  if (tooltip) {
15221
15233
  return /*#__PURE__*/React__default.createElement(Tooltip, {
@@ -15224,7 +15236,7 @@ const Link$1 = /*#__PURE__*/React__default.forwardRef(function Link(props, ref)
15224
15236
  }
15225
15237
  return link;
15226
15238
  });
15227
- const getLinkClasses = (icon = undefined) => cn('flex h-8 flex-shrink-0 flex-grow-0 cursor-pointer items-center justify-center ', 'focus:!shadow-none focus:!outline-none focus-visible:!yt-focus-dark', 'bg-transparent hover:bg-white/[.08] focus:bg-white/[.08] aria-current-page:bg-white/[.08]', '!text-white hover:text-white focus:text-white', {
15239
+ const getLinkClasses = (icon = undefined) => cn('flex h-8 flex-shrink-0 flex-grow-0 cursor-pointer items-center justify-center ', 'focus:!shadow-none focus:!outline-none focus-visible:!yt-focus-dark', 'bg-transparent hover:bg-white/[.08] focus:bg-white/[.08] aria-current-page:bg-white/[.08]', 'text-white hover:text-white focus:text-white', {
15228
15240
  '!rounded-full !h-9 !w-9': icon,
15229
15241
  'whitespace-nowrap px-3 rounded text-sm hidden lg:flex': !icon
15230
15242
  });