twico-ui 1.47.0 → 1.48.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.
- package/CHANGELOG.md +7 -0
- package/dist/icons.d.cts +2 -1
- package/dist/icons.d.ts +2 -1
- package/dist/index.cjs +16 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +41 -1
- package/dist/index.d.ts +41 -1
- package/dist/index.mjs +16 -1
- package/dist/index.mjs.map +1 -1
- package/llms.txt +3 -0
- package/package.json +2 -2
package/dist/index.d.cts
CHANGED
|
@@ -2150,6 +2150,31 @@ interface DatatableProps<T = any> extends Omit<React.HTMLAttributes<HTMLDivEleme
|
|
|
2150
2150
|
* `tr.twc-dt__row.my-row .twc-dt__td`. You are then choosing to cover the hover cue on those rows.
|
|
2151
2151
|
*/
|
|
2152
2152
|
getRowClassName?: (row: T, index: number) => string | undefined;
|
|
2153
|
+
/**
|
|
2154
|
+
* Default vertical alignment for every body cell, as `data-valign`. Only visible once rows vary
|
|
2155
|
+
* in height - a `wrapText` column, a multi-line `renderCell`, or a drag-resized row; with
|
|
2156
|
+
* single-line rows every value looks the same.
|
|
2157
|
+
*
|
|
2158
|
+
* **Precedence, lowest first: this → {@link getRowVerticalAlign} → the column's
|
|
2159
|
+
* `verticalAlign`.** It is resolved in one place and emitted as a single `data-valign` on the
|
|
2160
|
+
* cell, rather than as three competing CSS rules, so the order is readable in the code and an
|
|
2161
|
+
* unrelated stylesheet edit cannot reorder it.
|
|
2162
|
+
*
|
|
2163
|
+
* @default unset — cells keep the browser's `middle`, except `wrapText` cells, which sit `top`
|
|
2164
|
+
*/
|
|
2165
|
+
verticalAlign?: "top" | "middle" | "bottom";
|
|
2166
|
+
/**
|
|
2167
|
+
* Vertical alignment for one row's cells, called `(row, index)` like {@link getRowStyle}. Return
|
|
2168
|
+
* `undefined` to leave a row on the table default.
|
|
2169
|
+
*
|
|
2170
|
+
* Overrides {@link verticalAlign} but **not** a column's own `verticalAlign`: an explicit column
|
|
2171
|
+
* value is a property of that column's content type and is almost always a deliberate exemption
|
|
2172
|
+
* (the actions column stays centred while the rest of the row moves). If you need a row to move
|
|
2173
|
+
* every cell, leave the columns' values unset.
|
|
2174
|
+
*
|
|
2175
|
+
* `index` is page-relative, the same as {@link getRowStyle}.
|
|
2176
|
+
*/
|
|
2177
|
+
getRowVerticalAlign?: (row: T, index: number) => "top" | "middle" | "bottom" | undefined;
|
|
2153
2178
|
/** Restrict the toolbar quick-search to these column `field`s (client mode); defaults to every
|
|
2154
2179
|
* visible column. Mirrors `runDatatableQuery`'s `options.searchFields`. */
|
|
2155
2180
|
searchFields?: string[];
|
|
@@ -2669,6 +2694,20 @@ interface DatatableColumn<T = any> {
|
|
|
2669
2694
|
align?: "left" | "center" | "right";
|
|
2670
2695
|
/** Header-cell alignment, when it should differ from the body `align`. @default the column's `align` */
|
|
2671
2696
|
headerAlign?: "left" | "center" | "right";
|
|
2697
|
+
/**
|
|
2698
|
+
* Vertical alignment of this column's body cells, as `data-valign`. The transpose of `align`:
|
|
2699
|
+
* `align` decides where content sits across the column's width, this decides where it sits down
|
|
2700
|
+
* the row's height. Only visible once rows vary in height - a `wrapText` column, a multi-line
|
|
2701
|
+
* `renderCell`, or a drag-resized row.
|
|
2702
|
+
*
|
|
2703
|
+
* **Wins over the row and table values.** A per-column setting is a statement about this column's
|
|
2704
|
+
* content type - an actions column or a status badge that should stay centred however tall the
|
|
2705
|
+
* row gets - so it survives a row-level or table-wide sweep. To move a whole row including this
|
|
2706
|
+
* column, leave the column's value unset.
|
|
2707
|
+
*
|
|
2708
|
+
* @default `"top"` for `wrapText` columns, otherwise the table's `verticalAlign`
|
|
2709
|
+
*/
|
|
2710
|
+
verticalAlign?: "top" | "middle" | "bottom";
|
|
2672
2711
|
/** Allow sorting this column. @default true */
|
|
2673
2712
|
sortable?: boolean;
|
|
2674
2713
|
/** Allow filtering this column. @default true */
|
|
@@ -5643,4 +5682,5 @@ declare function useFilePicker(options?: UseFilePickerOptions): {
|
|
|
5643
5682
|
getInputProps: () => React.InputHTMLAttributes<HTMLInputElement> & { ref: React.RefObject<HTMLInputElement | null> };
|
|
5644
5683
|
};
|
|
5645
5684
|
|
|
5646
|
-
export { Accordion,
|
|
5685
|
+
export { Accordion, Alert, Anchor, AppShell, Avatar, AvatarMenu, Badge, Box, Boxplot, Breadcrumb, BubbleChart, Button, Candlestick, Card, CardGrid, Carousel, Chart, Checkbox, Code, ColorPicker, ColorSchemeScript, Combobox, CommandPalette, Container, Currency, CurrencyField, Datatable, DatePicker, DateRangePicker, DateTimePicker, Dialog, DiffTable, Divider, DonutChart, Drawer, EmptyState, Field, FileUpload, FilterBar, Form, FunnelChart, Gauge, Grid, Heading, Heatmap, IconButton, Image, ImageViewer, Input, Kanban, Kbd, Label, List, Menu, MultiSelect, Navbar, Pagination, PieChart, PolarAreaChart, Popover, Portal, Pre, Progress, RadarChart, Radio, RadioGroup, RangeChart, Rating, ScatterChart, Select, Sidebar, Skeleton, Slider, Sparkline, Spinner, Stack, Stat, Stepper, Switch, Table, Tabs, Tag, Text, Textarea, ThemeProvider, TimePicker, Timeline, Toast, ToastProvider, ToastViewport, ToggleGroup, Tooltip, TreeView, Treemap, TwicoProvider, VisuallyHidden, createTheme, getColorSchemeScript, runDatatableQuery, useClickOutside, useColorScheme, useControllableState, useCopyToClipboard, useDebouncedCallback, useDebouncedValue, useDisclosure, useEventListener, useFilePicker, useFocusTrap, useHover, useId, useIntersectionObserver, useInterval, useIsomorphicLayoutEffect, useKeyPress, useLocalStorage, useMediaQuery, useMounted, usePortal, usePrefersReducedMotion, usePrevious, useScrollLock, useTimeout, useToast, useToggle, useWindowSize };
|
|
5686
|
+
export type { AccordionItem, AccordionProps, ActionTone, AlertProps, AnchorProps, AppShellProps, AvatarMenuProps, AvatarProps, BadgeProps, BarTone, BoxOwnProps, BoxProps, BoxplotDatum, BoxplotProps, BreadcrumbItem, BreadcrumbProps, BubbleChartProps, ButtonProps, CandlestickDatum, CandlestickProps, CardGridBatchAction, CardGridBatchActionContext, CardGridFilter, CardGridProps, CardGridQuery, CardGridSort, CardGridSortOption, CardProps, CarouselProps, ChartDatum, ChartProps, CheckboxProps, CodeProps, ColorPickerProps, ColorSchemeScriptOptions, ColorSchemeScriptProps, ComboboxGroup, ComboboxOption, ComboboxProps, Command, CommandPaletteProps, ContainerOwnProps, ContainerProps, CurrencyFieldProps, CurrencyOption, CurrencyProps, DatatableBatchAction, DatatableBatchActionContext, DatatableBatchUpdateDetail, DatatableColumn, DatatableFilter, DatatableFilterOp, DatatableNumberOp, DatatableProps, DatatableQuery, DatatableRowAction, DatatableState, DatatableStringOp, DatePickerProps, DateRange, DateRangePickerProps, DateTimePickerProps, DialogProps, DiffOp, DiffTableColumn, DiffTableProps, DividerProps, DonutChartDatum, DonutChartProps, DrawerProps, EmptyStateProps, FieldProps, FileUploadProps, FilterBarProps, FilterClause, FilterField, FilterFieldType, FilterValues, FormProps, FunnelChartProps, FunnelDatum, GaugeProps, GaugeSeries, GridOwnProps, GridProps, HeadingOwnProps, HeadingProps, HeadingSize, HeatmapDatum, HeatmapProps, IconButtonProps, ImageProps, ImageViewerControlsApi, ImageViewerProps, ImageViewerState, InputProps, KanbanCard, KanbanColumn, KanbanProps, KbdProps, LabelProps, ListItemData, ListProps, MenuItemDef, MenuProps, MultiSelectGroup, MultiSelectOption, MultiSelectProps, NavbarLink, NavbarProps, Option, OptionGroup, PaginationProps, PieChartDatum, PieChartProps, PolarAreaChartProps, PolarAreaDatum, PolymorphicAs, PolymorphicComponent, PolymorphicProps, PolymorphicPropsWithRef, PolymorphicRef, PopoverProps, PortalProps, PreProps, ProgressProps, RadarChartProps, RadarDatum, RadioGroupOption, RadioGroupProps, RadioProps, RangeChartProps, RangeDatum, RatingProps, ResponsiveColumns, ScatterChartProps, ScatterPoint, ScatterSeries, SelectGroup, SelectOption, SelectProps, SidebarItem, SidebarProps, SkeletonProps, SliderProps, SparklineDatum, SparklineProps, SpinnerProps, StackOwnProps, StackProps, StatProps, Step, StepperProps, SwitchProps, Sx, TabItem, TableColumn, TableProps, TabsProps, TagProps, TextOwnProps, TextProps, TextTone, TextareaProps, Theme, ThemeProviderProps, ThemeTokens, TimePickerProps, TimelineItem, TimelineProps, ToastApi, ToastOptions, ToastProps, ToastProviderProps, ToastTone, ToastViewportProps, ToggleGroupItem, ToggleGroupProps, Tone, TooltipProps, TreeNode, TreeViewProps, TreemapDatum, TreemapProps, TwicoProviderProps, UseColorSchemeOptions, UseFilePickerOptions, UseFocusTrapOptions, UseKeyPressOptions, UseLocalStorageOptions, UseMediaQueryOptions, UseWindowSizeOptions, VisuallyHiddenProps, WithSx };
|
package/dist/index.d.ts
CHANGED
|
@@ -2150,6 +2150,31 @@ interface DatatableProps<T = any> extends Omit<React.HTMLAttributes<HTMLDivEleme
|
|
|
2150
2150
|
* `tr.twc-dt__row.my-row .twc-dt__td`. You are then choosing to cover the hover cue on those rows.
|
|
2151
2151
|
*/
|
|
2152
2152
|
getRowClassName?: (row: T, index: number) => string | undefined;
|
|
2153
|
+
/**
|
|
2154
|
+
* Default vertical alignment for every body cell, as `data-valign`. Only visible once rows vary
|
|
2155
|
+
* in height - a `wrapText` column, a multi-line `renderCell`, or a drag-resized row; with
|
|
2156
|
+
* single-line rows every value looks the same.
|
|
2157
|
+
*
|
|
2158
|
+
* **Precedence, lowest first: this → {@link getRowVerticalAlign} → the column's
|
|
2159
|
+
* `verticalAlign`.** It is resolved in one place and emitted as a single `data-valign` on the
|
|
2160
|
+
* cell, rather than as three competing CSS rules, so the order is readable in the code and an
|
|
2161
|
+
* unrelated stylesheet edit cannot reorder it.
|
|
2162
|
+
*
|
|
2163
|
+
* @default unset — cells keep the browser's `middle`, except `wrapText` cells, which sit `top`
|
|
2164
|
+
*/
|
|
2165
|
+
verticalAlign?: "top" | "middle" | "bottom";
|
|
2166
|
+
/**
|
|
2167
|
+
* Vertical alignment for one row's cells, called `(row, index)` like {@link getRowStyle}. Return
|
|
2168
|
+
* `undefined` to leave a row on the table default.
|
|
2169
|
+
*
|
|
2170
|
+
* Overrides {@link verticalAlign} but **not** a column's own `verticalAlign`: an explicit column
|
|
2171
|
+
* value is a property of that column's content type and is almost always a deliberate exemption
|
|
2172
|
+
* (the actions column stays centred while the rest of the row moves). If you need a row to move
|
|
2173
|
+
* every cell, leave the columns' values unset.
|
|
2174
|
+
*
|
|
2175
|
+
* `index` is page-relative, the same as {@link getRowStyle}.
|
|
2176
|
+
*/
|
|
2177
|
+
getRowVerticalAlign?: (row: T, index: number) => "top" | "middle" | "bottom" | undefined;
|
|
2153
2178
|
/** Restrict the toolbar quick-search to these column `field`s (client mode); defaults to every
|
|
2154
2179
|
* visible column. Mirrors `runDatatableQuery`'s `options.searchFields`. */
|
|
2155
2180
|
searchFields?: string[];
|
|
@@ -2669,6 +2694,20 @@ interface DatatableColumn<T = any> {
|
|
|
2669
2694
|
align?: "left" | "center" | "right";
|
|
2670
2695
|
/** Header-cell alignment, when it should differ from the body `align`. @default the column's `align` */
|
|
2671
2696
|
headerAlign?: "left" | "center" | "right";
|
|
2697
|
+
/**
|
|
2698
|
+
* Vertical alignment of this column's body cells, as `data-valign`. The transpose of `align`:
|
|
2699
|
+
* `align` decides where content sits across the column's width, this decides where it sits down
|
|
2700
|
+
* the row's height. Only visible once rows vary in height - a `wrapText` column, a multi-line
|
|
2701
|
+
* `renderCell`, or a drag-resized row.
|
|
2702
|
+
*
|
|
2703
|
+
* **Wins over the row and table values.** A per-column setting is a statement about this column's
|
|
2704
|
+
* content type - an actions column or a status badge that should stay centred however tall the
|
|
2705
|
+
* row gets - so it survives a row-level or table-wide sweep. To move a whole row including this
|
|
2706
|
+
* column, leave the column's value unset.
|
|
2707
|
+
*
|
|
2708
|
+
* @default `"top"` for `wrapText` columns, otherwise the table's `verticalAlign`
|
|
2709
|
+
*/
|
|
2710
|
+
verticalAlign?: "top" | "middle" | "bottom";
|
|
2672
2711
|
/** Allow sorting this column. @default true */
|
|
2673
2712
|
sortable?: boolean;
|
|
2674
2713
|
/** Allow filtering this column. @default true */
|
|
@@ -5643,4 +5682,5 @@ declare function useFilePicker(options?: UseFilePickerOptions): {
|
|
|
5643
5682
|
getInputProps: () => React.InputHTMLAttributes<HTMLInputElement> & { ref: React.RefObject<HTMLInputElement | null> };
|
|
5644
5683
|
};
|
|
5645
5684
|
|
|
5646
|
-
export { Accordion,
|
|
5685
|
+
export { Accordion, Alert, Anchor, AppShell, Avatar, AvatarMenu, Badge, Box, Boxplot, Breadcrumb, BubbleChart, Button, Candlestick, Card, CardGrid, Carousel, Chart, Checkbox, Code, ColorPicker, ColorSchemeScript, Combobox, CommandPalette, Container, Currency, CurrencyField, Datatable, DatePicker, DateRangePicker, DateTimePicker, Dialog, DiffTable, Divider, DonutChart, Drawer, EmptyState, Field, FileUpload, FilterBar, Form, FunnelChart, Gauge, Grid, Heading, Heatmap, IconButton, Image, ImageViewer, Input, Kanban, Kbd, Label, List, Menu, MultiSelect, Navbar, Pagination, PieChart, PolarAreaChart, Popover, Portal, Pre, Progress, RadarChart, Radio, RadioGroup, RangeChart, Rating, ScatterChart, Select, Sidebar, Skeleton, Slider, Sparkline, Spinner, Stack, Stat, Stepper, Switch, Table, Tabs, Tag, Text, Textarea, ThemeProvider, TimePicker, Timeline, Toast, ToastProvider, ToastViewport, ToggleGroup, Tooltip, TreeView, Treemap, TwicoProvider, VisuallyHidden, createTheme, getColorSchemeScript, runDatatableQuery, useClickOutside, useColorScheme, useControllableState, useCopyToClipboard, useDebouncedCallback, useDebouncedValue, useDisclosure, useEventListener, useFilePicker, useFocusTrap, useHover, useId, useIntersectionObserver, useInterval, useIsomorphicLayoutEffect, useKeyPress, useLocalStorage, useMediaQuery, useMounted, usePortal, usePrefersReducedMotion, usePrevious, useScrollLock, useTimeout, useToast, useToggle, useWindowSize };
|
|
5686
|
+
export type { AccordionItem, AccordionProps, ActionTone, AlertProps, AnchorProps, AppShellProps, AvatarMenuProps, AvatarProps, BadgeProps, BarTone, BoxOwnProps, BoxProps, BoxplotDatum, BoxplotProps, BreadcrumbItem, BreadcrumbProps, BubbleChartProps, ButtonProps, CandlestickDatum, CandlestickProps, CardGridBatchAction, CardGridBatchActionContext, CardGridFilter, CardGridProps, CardGridQuery, CardGridSort, CardGridSortOption, CardProps, CarouselProps, ChartDatum, ChartProps, CheckboxProps, CodeProps, ColorPickerProps, ColorSchemeScriptOptions, ColorSchemeScriptProps, ComboboxGroup, ComboboxOption, ComboboxProps, Command, CommandPaletteProps, ContainerOwnProps, ContainerProps, CurrencyFieldProps, CurrencyOption, CurrencyProps, DatatableBatchAction, DatatableBatchActionContext, DatatableBatchUpdateDetail, DatatableColumn, DatatableFilter, DatatableFilterOp, DatatableNumberOp, DatatableProps, DatatableQuery, DatatableRowAction, DatatableState, DatatableStringOp, DatePickerProps, DateRange, DateRangePickerProps, DateTimePickerProps, DialogProps, DiffOp, DiffTableColumn, DiffTableProps, DividerProps, DonutChartDatum, DonutChartProps, DrawerProps, EmptyStateProps, FieldProps, FileUploadProps, FilterBarProps, FilterClause, FilterField, FilterFieldType, FilterValues, FormProps, FunnelChartProps, FunnelDatum, GaugeProps, GaugeSeries, GridOwnProps, GridProps, HeadingOwnProps, HeadingProps, HeadingSize, HeatmapDatum, HeatmapProps, IconButtonProps, ImageProps, ImageViewerControlsApi, ImageViewerProps, ImageViewerState, InputProps, KanbanCard, KanbanColumn, KanbanProps, KbdProps, LabelProps, ListItemData, ListProps, MenuItemDef, MenuProps, MultiSelectGroup, MultiSelectOption, MultiSelectProps, NavbarLink, NavbarProps, Option, OptionGroup, PaginationProps, PieChartDatum, PieChartProps, PolarAreaChartProps, PolarAreaDatum, PolymorphicAs, PolymorphicComponent, PolymorphicProps, PolymorphicPropsWithRef, PolymorphicRef, PopoverProps, PortalProps, PreProps, ProgressProps, RadarChartProps, RadarDatum, RadioGroupOption, RadioGroupProps, RadioProps, RangeChartProps, RangeDatum, RatingProps, ResponsiveColumns, ScatterChartProps, ScatterPoint, ScatterSeries, SelectGroup, SelectOption, SelectProps, SidebarItem, SidebarProps, SkeletonProps, SliderProps, SparklineDatum, SparklineProps, SpinnerProps, StackOwnProps, StackProps, StatProps, Step, StepperProps, SwitchProps, Sx, TabItem, TableColumn, TableProps, TabsProps, TagProps, TextOwnProps, TextProps, TextTone, TextareaProps, Theme, ThemeProviderProps, ThemeTokens, TimePickerProps, TimelineItem, TimelineProps, ToastApi, ToastOptions, ToastProps, ToastProviderProps, ToastTone, ToastViewportProps, ToggleGroupItem, ToggleGroupProps, Tone, TooltipProps, TreeNode, TreeViewProps, TreemapDatum, TreemapProps, TwicoProviderProps, UseColorSchemeOptions, UseFilePickerOptions, UseFocusTrapOptions, UseKeyPressOptions, UseLocalStorageOptions, UseMediaQueryOptions, UseWindowSizeOptions, VisuallyHiddenProps, WithSx };
|
package/dist/index.mjs
CHANGED
|
@@ -9357,9 +9357,20 @@ var DT_CSS = `
|
|
|
9357
9357
|
font-size: var(--text-sm); color: var(--color-text); background: var(--twc-dt-row-bg, var(--color-surface));
|
|
9358
9358
|
white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 0; }
|
|
9359
9359
|
/* Wrap-text columns: content flows onto multiple lines (the row grows down) instead of
|
|
9360
|
-
clipping to one line. height stays a per-row minimum, so single-line cells are unchanged.
|
|
9360
|
+
clipping to one line. height stays a per-row minimum, so single-line cells are unchanged.
|
|
9361
|
+
The top alignment here is only a DEFAULT for wrapped cells - an explicit verticalAlign at any
|
|
9362
|
+
level resolves to data-valign below, which is more specific and wins. Before that existed, a row
|
|
9363
|
+
mixing a wrapped column with normal ones was silently inconsistent: the wrapped cell sat top and
|
|
9364
|
+
its neighbours sat middle, with no way to say otherwise. */
|
|
9361
9365
|
.twc-dt__td[data-wrap="true"] { white-space: normal; overflow: hidden; text-overflow: clip;
|
|
9362
9366
|
word-break: break-word; overflow-wrap: anywhere; vertical-align: top; padding-block: 10px; line-height: 1.45; }
|
|
9367
|
+
/* Vertical alignment. One attribute, already resolved: column > row > table default, computed in
|
|
9368
|
+
renderLeaf rather than left to three competing selectors, so the precedence is readable in the
|
|
9369
|
+
code and cannot be reordered by an unrelated CSS edit. Matters whenever rows vary in height -
|
|
9370
|
+
wrapText, a multi-line renderCell, or a drag-resized row. */
|
|
9371
|
+
.twc-dt__td[data-valign="top"] { vertical-align: top; }
|
|
9372
|
+
.twc-dt__td[data-valign="middle"] { vertical-align: middle; }
|
|
9373
|
+
.twc-dt__td[data-valign="bottom"] { vertical-align: bottom; }
|
|
9363
9374
|
/* #338: "combined" column cell \u2014 one column showing several source columns' values. */
|
|
9364
9375
|
.twc-dt__combine--stack { display: flex; flex-direction: column; gap: 1px; }
|
|
9365
9376
|
.twc-dt__combine-sep { color: var(--color-text-subtle); padding-inline: 3px; }
|
|
@@ -10128,6 +10139,8 @@ function Datatable({
|
|
|
10128
10139
|
batchActions = [],
|
|
10129
10140
|
onRowSelectionChange,
|
|
10130
10141
|
selectionSummary,
|
|
10142
|
+
verticalAlign,
|
|
10143
|
+
getRowVerticalAlign,
|
|
10131
10144
|
getRowStyle,
|
|
10132
10145
|
getRowClassName,
|
|
10133
10146
|
showExport = false,
|
|
@@ -12707,6 +12720,7 @@ function Datatable({
|
|
|
12707
12720
|
const h = rowHeights[k];
|
|
12708
12721
|
const userRowStyle = getRowStyle ? getRowStyle(row, ri) : void 0;
|
|
12709
12722
|
const userRowClass = getRowClassName ? getRowClassName(row, ri) : void 0;
|
|
12723
|
+
const rowValign = getRowVerticalAlign ? getRowVerticalAlign(row, ri) : void 0;
|
|
12710
12724
|
const { background: _rowBgShorthand, backgroundColor: _rowBgColor, ...restRowStyle } = userRowStyle || {};
|
|
12711
12725
|
const usable = (v) => typeof v === "string" && v.trim() !== "" ? v : void 0;
|
|
12712
12726
|
const rowBg = usable(_rowBgShorthand) ?? usable(_rowBgColor);
|
|
@@ -12817,6 +12831,7 @@ function Datatable({
|
|
|
12817
12831
|
"data-num": c.type === "number" || void 0,
|
|
12818
12832
|
"data-actions": isActions || void 0,
|
|
12819
12833
|
"data-align": c.align !== dtNaturalAlign(c) ? c.align : void 0,
|
|
12834
|
+
"data-valign": c.verticalAlign ?? rowValign ?? verticalAlign,
|
|
12820
12835
|
"data-editable": editable && !isEditing || void 0,
|
|
12821
12836
|
"data-editing": isEditing || void 0,
|
|
12822
12837
|
"data-cell-active": cellActive || void 0,
|